:root{--fg: #eaeaea;--bg: #0b0b0d;--muted: #7a7a82;--accent: #7a7a82;--font: "Inter", system-ui, sans-serif;--time-weight: 200}*{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--fg);font-family:var(--font);font-feature-settings:"tnum" 1,"cv11" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}body{display:grid;grid-template-columns:1fr 0;grid-template-rows:100vh;transition:grid-template-columns .25s ease}body[data-panel-open="1"]{grid-template-columns:1fr min(440px,100vw)}a{color:inherit}.stage{position:relative;width:100%;height:100%;display:grid;place-items:center;padding:4vmin;overflow:hidden}.clocks{display:grid;gap:6vmin;width:100%;height:100%;place-items:center}.clocks[data-layout=row]{grid-auto-flow:column}.clocks[data-layout=column]{grid-auto-flow:row}.clocks[data-layout=grid]{grid-template-columns:repeat(auto-fit,minmax(min(40vw,600px),1fr))}.clock{display:grid;grid-template-columns:1fr;justify-items:center;gap:.5em;line-height:1}.clock .label{font-size:calc(clamp(.85rem,2.4vmin,1.6rem) * var(--global-scale, 1));letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.clock .time{display:inline-flex;align-items:baseline;gap:.05em;font-weight:var(--time-weight);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.clock .time .colon{display:inline-block;padding:0 .05em;color:var(--accent);transform:translateY(-.08em)}.clocks[data-blink="1"] .clock .time .colon{animation:blink 1s ease-in-out infinite}@keyframes blink{0%,45%,to{opacity:1}60%,95%{opacity:.25}}.clock .time .seconds{color:var(--accent);font-size:.45em;align-self:baseline;margin-left:.15em}.clock .time .ampm{color:var(--accent);font-size:.3em;margin-left:.4em;letter-spacing:.1em}.clock .time{font-size:calc(var(--tsize, 16vmin) * var(--global-scale, 1))}.clock .analog{display:block;width:calc(var(--tsize, 16vmin) * 2.6 * var(--global-scale, 1));height:calc(var(--tsize, 16vmin) * 2.6 * var(--global-scale, 1));color:var(--fg)}.clock .analog svg{width:100%;height:100%;display:block;overflow:visible}.clock .analog .marker{stroke:var(--accent)}.clock .analog .face{stroke:var(--accent);opacity:.4}.clock .analog .numeral{fill:var(--accent);font-family:var(--font);font-size:6px;font-weight:500}.clock .analog .hand-hour,.clock .analog .hand-minute{stroke:var(--fg);stroke-linecap:round;fill:var(--fg)}.clock .analog .hand-second{stroke:var(--accent);stroke-linecap:round}.clock .analog .pivot{fill:var(--fg)}.clock .analog[data-dial="0"] .face,.clock .analog[data-numerals="0"] .numeral{display:none}.clock .analog .hand-second.sweep{animation:hand-sweep 60s linear infinite;transform-origin:0 0}@keyframes hand-sweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.clock .linear{display:block;width:calc(var(--tsize, 16vmin) * 3 * var(--global-scale, 1));aspect-ratio:100 / 40;max-width:100%;color:var(--fg)}.clock .linear[data-numerals="1"]{aspect-ratio:100 / 56}.clock .linear svg{width:100%;height:100%;display:block;overflow:visible}.clock .linear .lin-bg{stroke:var(--accent);opacity:.28}.clock .linear .lin-fill{stroke:var(--accent)}.clock .linear .lin-tick{stroke:var(--accent);opacity:.55}.clock .linear .lin-num{fill:var(--accent);font-family:var(--font);font-size:3.2px;font-weight:400;opacity:.7}.clock .linear .lin-dot{fill:var(--fg);stroke:var(--fg)}.clock .linear .lin-track-second .lin-dot{fill:var(--accent);stroke:var(--accent)}.clock .linear[data-ticks="0"] .lin-tick,.clock .linear[data-numerals="0"] .lin-num{display:none}.clock .linear[data-dot=circle] .lin-dot:not(.lin-dot-circle){display:none}.clock .linear[data-dot=line] .lin-dot:not(.lin-dot-line){display:none}.clock .linear[data-dot=triangle] .lin-dot:not(.lin-dot-triangle){display:none}.clock .linear[data-dot=diamond] .lin-dot:not(.lin-dot-diamond){display:none}.clock .linear[data-dot=none] .lin-dot{display:none}.clock:has(.linear[data-full="1"]){width:100%;max-width:100%;justify-items:center}.clock .linear[data-full="1"]{width:95%;max-width:95%}.date-corner{position:absolute;font-size:calc(clamp(1rem,2.6vmin,1.9rem) * var(--date-scale, 1) * var(--global-scale, 1));letter-spacing:.04em;color:var(--accent);font-variant-numeric:tabular-nums;pointer-events:none}.clock .date-inline{color:var(--accent);font-size:calc(clamp(1rem,2.6vmin,1.9rem) * var(--date-scale, 1) * var(--global-scale, 1));letter-spacing:.04em;font-variant-numeric:tabular-nums}.clock[data-datepos=right]{grid-template-columns:auto auto;align-items:baseline;justify-items:start;gap:.5em 1em}.clock[data-datepos=right] .label{grid-column:1 / -1}.date-corner[data-pos=tl]{top:3vmin;left:3vmin}.date-corner[data-pos=tr]{top:3vmin;right:3vmin}.date-corner[data-pos=bl]{bottom:3vmin;left:3vmin}.date-corner[data-pos=br]{bottom:3vmin;right:3vmin}.date-corner[data-pos=bl]{left:calc(3vmin + 2.5rem)}body[data-kiosk="1"] .date-corner[data-pos=bl]{left:3vmin}.weather{position:absolute;display:flex;align-items:center;gap:.6em;font-size:calc(clamp(1rem,2.6vmin,1.9rem) * var(--weather-scale, 1) * var(--global-scale, 1));color:var(--accent)}.weather[data-pos=tl]{top:4vmin;left:4vmin}.weather[data-pos=tr]{top:4vmin;right:4vmin}.weather[data-pos=bl]{bottom:4vmin;left:4vmin}.weather[data-pos=br]{bottom:4vmin;right:4vmin}.weather .glyph{font-size:1.4em;display:inline-flex;align-items:center}.weather .temp{color:var(--fg);font-variant-numeric:tabular-nums}.weather .weather-spinner{width:1.2em;height:1.2em;border-radius:50%;border:.18em solid color-mix(in srgb,currentColor 25%,transparent);border-top-color:currentColor;animation:weather-spin .85s linear infinite;display:none;box-sizing:border-box}@keyframes weather-spin{to{transform:rotate(360deg)}}.weather[data-loading="1"] .weather-spinner{display:inline-block}.weather[data-loading="1"] .glyph{display:none}.weather[data-loading="1"]{flex-direction:row!important;align-items:center!important;gap:.6em!important}.weather[data-loading="1"] .weather-text{flex-direction:row!important;align-items:baseline!important;gap:.4em!important}.weather[data-loading="1"] .temp{font-size:1em!important}.weather .glyph .weather-svg{width:1.2em;height:1.2em;display:block}.weather[data-style=outline] .glyph .weather-svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.weather[data-style=mono] .glyph .weather-svg{fill:currentColor;stroke:none}.weather[data-icon="0"] .glyph,.weather[data-condition="0"] .label,.weather[data-sun="0"] .sun{display:none}.weather .sun{font-size:.7em;color:var(--accent);letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap}.weather .weather-text{display:inline-flex;flex-direction:column;align-items:flex-end;gap:.15em}.weather[data-pos=tl] .weather-text,.weather[data-pos=bl] .weather-text{align-items:flex-start}.weather .weather-primary{display:inline-flex;align-items:baseline;gap:.5em}.weather[data-big-temp="1"] .weather-primary{flex-direction:column;align-items:inherit;gap:0}.weather[data-big-icon="1"],.weather[data-big-temp="1"]{z-index:5}.weather[data-big-icon="1"] .glyph{font-size:5em;line-height:1}.weather[data-big-temp="1"] .temp{font-size:3em;line-height:1}.weather[data-big-icon="1"][data-big-temp="0"]{align-items:center;gap:.6em}.weather[data-pos=tr][data-big-icon="1"][data-big-temp="0"],.weather[data-pos=br][data-big-icon="1"][data-big-temp="0"]{flex-direction:row-reverse}.weather[data-big-icon="1"][data-big-temp="0"] .weather-text{flex-direction:column;align-items:flex-end;gap:.1em}.weather[data-pos=tl][data-big-icon="1"][data-big-temp="0"] .weather-text,.weather[data-pos=bl][data-big-icon="1"][data-big-temp="0"] .weather-text{align-items:flex-start}.weather[data-big-temp="1"][data-big-icon="0"]{flex-direction:column;align-items:flex-end;gap:.15em}.weather[data-pos=tl][data-big-temp="1"][data-big-icon="0"],.weather[data-pos=bl][data-big-temp="1"][data-big-icon="0"]{align-items:flex-start}.weather[data-big-temp="1"][data-big-icon="0"] .glyph{order:1}.weather[data-big-temp="1"][data-big-icon="0"] .weather-text{order:2}.weather[data-big-temp="1"][data-big-icon="0"] .temp{order:0}.weather[data-big-icon="1"][data-big-temp="1"]{flex-direction:column;align-items:flex-end;gap:.2em}.weather[data-pos=tl][data-big-icon="1"][data-big-temp="1"],.weather[data-pos=bl][data-big-icon="1"][data-big-temp="1"]{align-items:flex-start}.weather[data-big-icon="1"][data-big-temp="1"] .weather-text{flex-direction:column;align-items:inherit;gap:.1em}.date-corner[data-big="0"] .big-sec,.date-corner[data-big="0"] .big-num,.clock .date-inline[data-big="0"] .big-sec,.clock .date-inline[data-big="0"] .big-num,.date-corner[data-big="1"] .date-line,.clock .date-inline[data-big="1"] .date-line{display:none}.date-corner[data-big="1"],.clock .date-inline[data-big="1"]{display:inline-flex;flex-direction:column;line-height:1;gap:.15em}.date-corner[data-big="1"] .big-sec,.clock .date-inline[data-big="1"] .big-sec{font-size:calc(clamp(1rem,2.6vmin,1.9rem) * var(--date-scale, 1) * var(--global-scale, 1));letter-spacing:.04em}.date-corner[data-big="1"] .big-num,.clock .date-inline[data-big="1"] .big-num{font-size:calc(clamp(1rem,2.6vmin,1.9rem) * var(--date-scale, 1) * var(--global-scale, 1) * 3.2);font-weight:300;letter-spacing:-.02em;color:var(--fg)}.date-corner[data-pos=tr][data-big="1"],.date-corner[data-pos=br][data-big="1"]{align-items:flex-end}.date-corner[data-pos=tl][data-big="1"],.date-corner[data-pos=bl][data-big="1"]{align-items:flex-start}.hint{position:absolute;bottom:3vmin;left:3vmin;background:none;border:0;padding:.5rem;color:var(--accent);opacity:.5;cursor:pointer;transition:opacity .25s,color .25s}.hint:hover,.hint:focus-visible{opacity:1;color:var(--fg);outline:none}.hint svg{width:clamp(1.25rem,2.6vmin,1.75rem);height:clamp(1.25rem,2.6vmin,1.75rem);display:block;transform-origin:50% 50%;animation:gear-spin 5s linear infinite;animation-play-state:paused}.hint:hover svg,.hint:focus-visible svg{animation-play-state:running}@keyframes gear-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.hint svg{animation:none}.hint:hover svg{transform:rotate(30deg);transition:transform .2s}}body[data-kiosk="1"] .hint{display:none}.logo{position:absolute;font-size:clamp(.7rem,1.4vmin,.95rem);letter-spacing:.18em;text-transform:uppercase;color:var(--fg);opacity:.45;text-decoration:none;font-weight:500;transition:opacity .25s;user-select:none;line-height:1}.logo:hover{opacity:.9}.logo .colon{display:inline-block;color:var(--accent);padding:0 .05em;transform:translateY(-.18em)}.logo[data-pos=tl]{top:3vmin;left:3vmin}.logo[data-pos=tr]{top:3vmin;right:3vmin}.logo[data-pos=bl]{bottom:3vmin;left:calc(3vmin + 3rem)}.logo[data-pos=br]{bottom:3vmin;right:3vmin}body[data-kiosk="1"] .logo{display:none}.panel{position:relative;height:100vh;background:var(--bg);border-left:1px solid color-mix(in srgb,var(--muted) 30%,transparent);overflow:hidden;font-size:.95rem}body:not([data-panel-open="1"]) .panel{visibility:hidden}.panel-inner{height:100%;display:flex;flex-direction:column;background:var(--bg)}.panel-main{flex:1 1 auto;min-height:0;padding:1.25rem 1.5rem 1rem;display:flex;flex-direction:column;gap:.85rem;overflow-y:auto}.panel-main .row{display:flex;gap:1.25rem;align-items:flex-end}.panel-main .row>.field{flex:1;min-width:0}.panel-main .row.row-toggles{align-items:center;gap:1.5rem;flex-wrap:wrap}.panel-main .field>.segment:not(.segment-pos){display:flex;width:100%}.panel-main .field>.segment:not(.segment-pos)>button{flex:1}.panel-side{flex:0 0 auto;background:color-mix(in srgb,var(--muted) 8%,transparent);border-top:1px solid color-mix(in srgb,var(--muted) 25%,transparent);padding:.85rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.5rem}.panel-side h3{margin:0;font-weight:500;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.panel-side .keys{margin:0;display:grid;grid-template-columns:max-content 1fr max-content 1fr;gap:.35rem .5rem;align-items:center}.panel-side .keys dt{margin:0}.panel-side .keys dd{margin:0;font-size:.85rem;color:var(--fg)}.panel-side kbd{display:inline-block;min-width:1.6rem;text-align:center;padding:.15rem .4rem;background:color-mix(in srgb,var(--muted) 18%,transparent);border:1px solid color-mix(in srgb,var(--muted) 35%,transparent);border-bottom-width:2px;border-radius:4px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.75rem;color:var(--fg)}.panel-side .side-note{display:none}.panel-head{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.panel h2{margin:0;font-weight:500;font-size:1.1rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.close-x{background:none;border:0;color:var(--muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:.25rem .5rem}.close-x:hover{color:var(--fg)}.field{display:grid;gap:.4rem}.panel-main .section{margin:1rem 0 .25rem;padding:0 0 .5rem;border-bottom:1px solid color-mix(in srgb,var(--muted) 30%,transparent);font-size:.7rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--fg);display:flex;align-items:center;gap:.6rem}.panel-main .section:before{content:"";width:.4rem;height:.4rem;background:var(--accent);border-radius:50%}.panel-main .section:first-of-type{margin-top:0}.field label{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.field input[type=text],.field select{background:color-mix(in srgb,var(--muted) 12%,transparent);border:1px solid color-mix(in srgb,var(--muted) 30%,transparent);color:var(--fg);padding:.5rem .7rem;border-radius:6px;font-family:inherit;font-size:.95rem;width:100%;height:2.4rem;box-sizing:border-box}.field input[type=text]:focus,.field select:focus{outline:2px solid color-mix(in srgb,var(--muted) 60%,transparent);outline-offset:0}.hint-text{margin:0;font-size:.75rem;color:var(--muted)}.hint-text code{background:color-mix(in srgb,var(--muted) 18%,transparent);padding:.1em .35em;border-radius:3px;font-size:.95em}.segment{display:inline-flex;border:1px solid color-mix(in srgb,var(--muted) 30%,transparent);border-radius:6px;overflow:hidden}.segment button{background:transparent;border:0;color:var(--muted);padding:0 .85rem;height:2.4rem;cursor:pointer;font-family:inherit;font-size:.9rem;border-right:1px solid color-mix(in srgb,var(--muted) 30%,transparent)}.segment button:last-child{border-right:0}.segment button.on{background:color-mix(in srgb,var(--fg) 12%,transparent);color:var(--fg)}.segment.segment-pos{display:grid;grid-template-columns:1fr 1fr;width:max-content}.segment.segment-pos button{border-right:1px solid color-mix(in srgb,var(--muted) 30%,transparent);border-bottom:1px solid color-mix(in srgb,var(--muted) 30%,transparent);padding:0 .85rem;height:2.2rem;font-size:.95rem;min-width:4.5rem}.segment.segment-pos button:nth-child(2n){border-right:0}.segment.segment-pos button:nth-child(n+5){border-bottom:0}.toggle{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem;cursor:pointer;text-transform:none;letter-spacing:0;color:var(--fg)}.toggle input{accent-color:var(--fg);width:1rem;height:1rem}.color-row{display:flex;gap:.6rem;align-items:center;height:2.4rem}.color-row input[type=color]{width:2.4rem;height:2.4rem;border:1px solid color-mix(in srgb,var(--muted) 30%,transparent);border-radius:6px;background:none;cursor:pointer;padding:0;flex-shrink:0}.link-btn{background:none;border:0;color:var(--muted);font-family:inherit;font-size:.85rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:0}.link-btn:hover{color:var(--fg)}.preset-chips{display:flex;flex-wrap:wrap;gap:.4rem}.preset-chip{display:inline-flex;align-items:center;gap:.4rem;background:color-mix(in srgb,var(--muted) 12%,transparent);border:1px solid color-mix(in srgb,var(--muted) 30%,transparent);color:var(--fg);padding:.35rem .75rem;border-radius:999px;font-family:inherit;font-size:.85rem;cursor:pointer;transition:background .15s}.preset-chip:hover{background:color-mix(in srgb,var(--fg) 12%,transparent)}.preset-chip[data-builtin="1"]{color:var(--accent)}.preset-chip .del{background:none;border:0;color:var(--muted);cursor:pointer;font-size:1rem;line-height:1;padding:0 0 0 .1rem}.preset-chip .del:hover{color:var(--fg)}.preset-actions{margin-top:.5rem}.url-box{display:flex;gap:.5rem}.url-box input{flex:1;font-family:JetBrains Mono,ui-monospace,monospace;font-size:.8rem}.url-box button{background:color-mix(in srgb,var(--fg) 12%,transparent);border:1px solid color-mix(in srgb,var(--muted) 30%,transparent);color:var(--fg);padding:0 .9rem;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.9rem}.panel-foot{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;margin-top:.5rem;padding-top:1rem;border-top:1px solid color-mix(in srgb,var(--muted) 20%,transparent)}.panel .close{background:var(--fg);border:0;color:var(--bg);padding:.5rem 1.1rem;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.9rem;letter-spacing:.05em}@media (max-width: 640px){body[data-panel-open="1"]{grid-template-columns:0 1fr}.panel-main{padding:1.25rem}.panel-main .row{flex-direction:column;align-items:stretch;gap:.85rem}}.presets-page{overflow:auto;padding:6vmin;max-width:900px;margin:0 auto}.presets-page h1{font-weight:300;font-size:clamp(2rem,5vmin,3rem);margin:0 0 .4em;letter-spacing:-.02em}.presets-page p.lede{color:var(--muted);max-width:60ch;line-height:1.5}.preset-list{list-style:none;padding:0;margin:3rem 0 0;display:grid;gap:1.5rem}.preset-list li{border-top:1px solid color-mix(in srgb,var(--muted) 25%,transparent);padding-top:1.2rem;display:grid;gap:.4rem}.preset-list a{font-size:1.1rem;text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--muted) 50%,transparent);padding-bottom:.1em}.preset-list .desc{color:var(--muted);font-size:.95rem}.schema-table{margin-top:3rem;width:100%;border-collapse:collapse;font-size:.9rem}.schema-table th,.schema-table td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid color-mix(in srgb,var(--muted) 20%,transparent);vertical-align:top}.schema-table th{color:var(--muted);font-weight:500}.schema-table code{font-family:JetBrains Mono,ui-monospace,monospace;font-size:.85em}
