:root{--bg: #050608;--fg: #e7e9ec;--accent: #ffd27a;--card: #0c0d11;--card-2: #14161c;--hinge: rgba(0, 0, 0, .85);--clock-font: "Bebas Neue", "Arial Narrow", sans-serif;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;background:var(--bg);color:var(--fg);font-family:JetBrains Mono,ui-monospace,monospace;overflow:hidden;-webkit-font-smoothing:antialiased}#stage{position:fixed;inset:0;perspective:1400px;perspective-origin:50% 50%;background:radial-gradient(ellipse at center,#0a0b10,#000)}#ascii-layers{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}.ascii-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;will-change:transform,opacity,filter;transform-style:preserve-3d;mix-blend-mode:screen}.ascii-layer canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.ascii-layer.bg{filter:blur(2.5px) brightness(.55);opacity:.85}.ascii-layer.mid{filter:blur(.6px) brightness(.85);opacity:.95}.ascii-layer.fg{filter:brightness(1.15) drop-shadow(0 0 6px rgba(255,210,122,.18))}.ascii-layer.fg .chroma-r{mix-blend-mode:screen;opacity:.55;filter:drop-shadow(1.5px 0 0 #ff3a4d) brightness(.8)}.ascii-layer.fg .chroma-b{mix-blend-mode:screen;opacity:.55;filter:drop-shadow(-1.5px 0 0 #2a6bff) brightness(.8)}.kb{position:absolute;inset:0;will-change:transform,opacity,filter;transform-origin:50% 50%}#clock-wrap{position:fixed;inset:0;display:grid;place-items:center;pointer-events:none;z-index:10}#clock{display:flex;align-items:center;justify-content:center;gap:.45vw;padding:0;background:transparent;width:auto;max-width:90vw;transition:opacity .35s ease,filter .3s ease;filter:drop-shadow(0 12px 30px rgba(0,0,0,.75))}#clock.hidden{opacity:0}.flap{position:relative;width:7.5vw;height:11vw;perspective:800px;font-family:var(--clock-font);color:#f3f4f6;user-select:none}.flap .half{position:absolute;left:0;right:0;height:50%;overflow:hidden;background:linear-gradient(180deg,#1a1c22,#0c0d11);backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 2px 6px #0000008c;transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}.flap .half.top{top:0;border-radius:.6vw .6vw 0 0;border-bottom:1px solid var(--hinge)}.flap .half.bottom{bottom:0;border-radius:0 0 .6vw .6vw;background:linear-gradient(180deg,#0c0d11,#14161c)}#clock[data-card-style=glass] .flap .half{background:#14182373!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 32px #0000005e}#clock[data-card-style=glass] .flap .half.top{border-bottom:1px solid rgba(255,255,255,.25)}#clock[data-card-style=neon] .flap .half{background:#080a10d9!important;border:1px solid var(--accent);box-shadow:0 0 12px var(--accent),inset 0 0 8px #000c}#clock[data-card-style=neon] .flap .half.top{border-bottom:1px solid var(--accent)}#clock[data-card-style=frameless] .flap .half{background:transparent!important;box-shadow:none!important;border:none!important}#clock[data-card-style=frameless] .flap .half span{text-shadow:0 0 20px var(--accent),0 4px 12px rgba(0,0,0,.9)}.flap .half span{position:absolute;left:50%;width:100%;height:200%;font-size:11vw;line-height:11vw;letter-spacing:-.04em;text-align:center;transform:translate(-50%);pointer-events:none;color:var(--clock-text-color, #f3f4f6)}.flap .half.top span{bottom:0;transform:translate(-50%,50%)}.flap .half.bottom span{top:0;transform:translate(-50%,-50%)}.flap .flipper{position:absolute;left:0;right:0;height:50%;transform-style:preserve-3d;will-change:transform}.flap .flipper.top{top:0;transform-origin:50% 100%}.flap .flipper.bottom{bottom:0;transform-origin:50% 0%}.flap .flipper.top .half{top:0}.flap .flipper.bottom .half{bottom:0}.colon{display:flex;flex-direction:column;justify-content:center;gap:1.6vw;padding:0 .4vw;color:var(--accent);animation:colonPulse 1s ease-in-out infinite;transition:color .3s ease}.colon span{display:block;width:1vw;height:1vw;border-radius:50%;background:currentColor;box-shadow:0 0 16px currentColor}@keyframes colonPulse{0%,to{opacity:1}50%{opacity:.35}}.ampm{font-family:var(--clock-font);font-size:2.6vw;letter-spacing:.18em;color:var(--accent);margin-left:.8vw;align-self:flex-start;padding-top:.6vw;text-shadow:0 0 12px var(--accent);transition:color .3s ease,text-shadow .3s ease}#settings-btn{position:fixed;top:1.2vw;right:1.4vw;z-index:30;background:#12141cb3;border:1px solid rgba(255,255,255,.15);color:#ffffffd9;padding:.6vw;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);transition:all .25s ease}#settings-btn:hover{background:#232838e6;color:var(--accent);transform:rotate(45deg);border-color:var(--accent)}.modal-overlay{position:fixed;inset:0;z-index:100;background:#000000a6;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;opacity:1;transition:opacity .25s ease;pointer-events:auto}.modal-overlay.hidden{opacity:0;pointer-events:none}.modal-card{background:#11131a;border:1px solid rgba(255,255,255,.15);border-radius:16px;width:90%;max-width:480px;box-shadow:0 20px 50px #000c;overflow:hidden;color:#e5e7eb}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.2rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);background:#ffffff05}.modal-header h3{font-size:1.1rem;font-weight:700;letter-spacing:.05em;color:#fff}.close-btn{background:transparent;border:none;color:#9ca3af;font-size:1.5rem;cursor:pointer;line-height:1;transition:color .2s ease}.close-btn:hover{color:#fff}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem;max-height:75vh;overflow-y:auto}.setting-group{display:flex;flex-direction:column;gap:.4rem}.setting-label{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:.95rem;cursor:pointer}.setting-desc{font-size:.8rem;color:#9ca3af}.setting-title{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af}.setting-select{background:#1a1d28;border:1px solid rgba(255,255,255,.15);color:#fff;padding:.6rem .8rem;border-radius:8px;font-size:.9rem;outline:none;cursor:pointer}.setting-select:focus{border-color:var(--accent)}.setting-row{display:flex;gap:1rem}.flex-1{flex:1}.theme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.theme-btn{background:#1a1d28;border:1px solid rgba(255,255,255,.1);color:#d1d5db;padding:.5rem .75rem;border-radius:8px;font-size:.82rem;cursor:pointer;text-align:left;transition:all .2s ease}.theme-btn:hover{background:#242838;border-color:#ffffff4d}.theme-btn.active{background:#ffd27a26;border-color:var(--accent);color:#fff;font-weight:600}input[type=checkbox]{accent-color:var(--accent);width:1.2rem;height:1.2rem;cursor:pointer}#credit{position:fixed;bottom:1.2vw;right:1.4vw;font-size:.8vw;color:#ffffff8c;opacity:0;transition:opacity .6s ease;z-index:5;pointer-events:auto}#credit.show{opacity:1}#credit a{color:var(--accent);text-decoration:none}#status{position:fixed;top:1vw;left:1.2vw;font-size:.85vw;letter-spacing:.15em;text-transform:uppercase;color:#ffffff80;z-index:20;transition:opacity .5s ease}#status.hidden{opacity:0}#hint{position:fixed;bottom:1vw;left:1.2vw;font-size:.7vw;letter-spacing:.18em;text-transform:uppercase;color:#ffffff4d;z-index:5;transition:opacity .6s ease}.idle #hint,.idle #credit,.idle #settings-btn{opacity:0;pointer-events:none}.idle{cursor:none}@media(prefers-reduced-motion:reduce){.kb{animation:none!important;transition:opacity .6s ease!important}.ascii-layer{transform:none!important}.colon{animation:none}}
