hyparquet/demo/demo.css
2024-06-14 00:02:57 -07:00

218 lines
3.4 KiB
CSS

* {
box-sizing: border-box;
font-family: 'Mulish', 'Helvetica Neue', Helvetica, Arial, sans-serif;
margin: 0;
padding: 0;
}
body {
display: flex;
font-family: sans-serif;
height: 100vh;
width: 100vw;
}
nav {
border-right: 1px solid #ddd;
min-width: 320px;
overflow-x: hidden;
overflow-y: auto;
padding: 10px;
min-width: 0;
max-width: 40%;
width: 320px;
}
h1 {
font-size: 20pt;
}
h2 {
font-size: 12pt;
}
p {
margin: 10px 0;
}
.error {
color: #c11;
font-family: monospace;
white-space: pre-wrap;
}
#overlay {
align-items: center;
font-size: 125%;
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
background-color: rgba(240, 240, 240, 0.6);
backdrop-filter: blur(4px);
display: none;
padding: 12px;
z-index: 40;
}
#dropzone {
display: flex;
flex: 1;
max-width: 100vw;
}
#content {
display: flex;
flex-direction: column;
flex: 1;
min-width: 0;
overflow: auto;
}
#welcome {
border: 2px dashed #08e;
border-radius: 10px;
color: #444;
margin: 10px;
padding: 10px;
align-items: center;
cursor: pointer;
display: flex;
flex: 1;
font-size: 20px;
justify-content: center;
}
input[type="file"] {
display: none;
}
#overlay {
font-size: 125%;
justify-content: center;
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
background-color: rgba(240, 240, 240, 0.6);
backdrop-filter: blur(4px);
display: none;
padding: 12px;
z-index: 40;
}
.over #overlay {
display: flex;
}
/* table */
table {
border-collapse: separate;
border-spacing: 0;
}
table:focus-visible {
outline: none;
}
th {
background-color: #f8f8f8;
border: 1px solid #ddd;
padding: 8px;
text-align: left;
background-color: #eaeaeb;
border: none;
border-top: 4px solid #706fb1;
border-bottom: 2px solid #c9c9c9;
box-sizing: content-box;
color: #444;
position: sticky;
top: -1px; /* fix 1px gap above thead */
user-select: none;
}
th, td {
border-bottom: 1px solid #ddd;
border-right: 1px solid #ddd;
height: 32px;
max-width: 1000px; /* prevent columns expanding */
padding: 4px 12px;
text-align: left;
text-overflow: ellipsis;
overflow: hidden;
white-space: pre-wrap;
}
/* row numbers */
td:first-child {
background-color: #eaeaeb;
border-right: 1px solid #ddd;
color: #888;
font-size: 10px;
padding: 0 2px;
position: sticky;
left: 0;
text-align: center;
user-select: none;
min-width: 32px;
max-width: none;
width: 32px;
}
#filename {
font-size: 10pt;
margin-top: 20px;
}
.sidebar {
word-break: break-all;
}
.sidebar a {
color: #445;
text-decoration: none;
}
.sidebar a:hover {
text-decoration: underline;
}
.layout,
.layout div {
background-color: rgba(100, 80, 180, 0.05);
border: 1px solid #ccc;
border-radius: 4px;
font-size: 12px;
margin-top: 4px;
padding: 4px;
word-break: break-all;
}
.cell {
display: flex;
}
.cell label {
flex: 1;
font-size: 12px;
font-weight: normal;
justify-content: flex-start;
}
nav ul,
.layout div ul {
list-style: none;
}
.layout div li {
font-size: 10px;
padding: 2px 4px;
text-align: right;
}
.collapsed > :not(:first-child) {
display: none;
}
.layout h2 {
cursor: pointer;
user-select: none;
}
.layout h2::before {
content: "▼";
display: inline-block;
font-size: 10px;
margin: 0 4px;
vertical-align: middle;
}
.layout.collapsed h2::before {
content: "▶";
}
.layout pre {
white-space: pre-wrap;
word-break: break-all;
}