*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font-mono: "JetBrains Mono", "Courier New", monospace;--bg-black: #000000;--text-main: #ffffff;--text-muted: #666666;--text-dim: #333333}html,body{width:100%;height:100%;overflow:hidden;background-color:var(--bg-black);color:var(--text-main);font-family:var(--font-mono);user-select:none;-webkit-user-select:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}#board{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;height:100dvh;display:block;background:var(--bg-black);cursor:grab;touch-action:none}#board.dragging{cursor:grabbing}.status{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:20;font-size:.72rem;letter-spacing:.06em;color:var(--text-muted);text-align:center;pointer-events:none}.timeline{position:fixed;left:0;right:0;bottom:0;z-index:10;padding:2.2rem max(1rem,env(safe-area-inset-right)) max(.9rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:linear-gradient(to top,#000000f2 55%,#0000);pointer-events:none}.timeline>*{max-width:56rem;margin:0 auto;pointer-events:auto}.tl-head{display:flex;align-items:baseline;gap:.9rem;font-size:.75rem;margin-bottom:.45rem}.tl-label{color:var(--text-main);letter-spacing:.05em}.tl-meta{color:var(--text-muted)}.tl-spacer{flex:1}.tl-btn{background:none;border:none;outline:none;font:inherit;color:var(--text-muted);letter-spacing:.06em;padding:.35rem .2rem;cursor:pointer;transition:color .15s ease}.tl-btn:hover,.tl-btn:focus-visible{color:var(--text-main)}.tl-btn[hidden]{display:none}.tl-back{color:var(--text-main);padding-right:.4rem}.tl-track{position:relative;height:2.5rem;touch-action:none;outline:none;cursor:pointer}.tl-track:focus-visible{box-shadow:0 1px #555}.tl-slots{display:flex;align-items:flex-end;height:100%;border-bottom:1px solid #222}.tl-slot{flex:1;height:100%;padding:0 1px;display:flex;align-items:flex-end}.tl-bar{width:100%;background:#2a2a2a;border-radius:1px 1px 0 0;transition:background-color .15s ease}.tl-slot.in-range .tl-bar{background:#e6e6e6}.timeline.is-full .tl-slot .tl-bar{background:#8c8c8c}.tl-slot.is-archive .tl-bar,.timeline.is-full .tl-slot.is-archive .tl-bar{background:repeating-linear-gradient(-45deg,#555 0 2px,transparent 2px 4px)}.tl-slot.is-archive.in-range .tl-bar{background:repeating-linear-gradient(-45deg,#e6e6e6 0 2px,transparent 2px 4px)}.tl-slot.is-partial .tl-bar{background:#9a9a9a}.tl-slot.is-hover .tl-bar,.timeline.is-full .tl-slot.is-hover .tl-bar{background:var(--text-main)}.tl-band{position:absolute;top:-.3rem;bottom:-1px;background:#ffffff0d;pointer-events:none;transition:left .08s ease-out,width .08s ease-out}.tl-handle{position:absolute;top:0;bottom:0;width:2px;background:var(--text-main)}.tl-handle:first-child{left:0;transform:translate(-50%)}.tl-handle:last-child{right:0;transform:translate(50%)}.tl-handle:after{content:"";position:absolute;left:50%;top:50%;width:6px;height:14px;border-radius:2px;background:inherit;transform:translate(-50%,-50%)}.tl-band[hidden],.tl-handle[hidden]{display:none}.timeline.is-full .tl-band{background:none}.timeline.is-full .tl-handle{background:#555}.tl-years{position:relative;height:1rem;margin-top:.35rem;font-size:.65rem;color:#555}.tl-years span{position:absolute;top:0;padding-left:.3rem;border-left:1px solid #333;line-height:1}.home-link{position:fixed;top:calc(env(safe-area-inset-top,0px) + 14px);left:calc(env(safe-area-inset-left,0px) + 2.25rem - 22px);z-index:20;display:block;padding:10px;opacity:.75;transition:opacity .15s ease}.home-link:hover,.home-link:focus-visible{opacity:1;outline:none}.home-link img{display:block;width:24px;height:24px;image-rendering:pixelated}.mode-btn{position:fixed;top:calc(env(safe-area-inset-top,0px) + 22px);right:calc(env(safe-area-inset-right,0px) + var(--scrollbar, 0px));width:4.5rem;text-align:center;z-index:20;font:inherit;font-size:.72rem;letter-spacing:.06em;color:var(--text-muted);background:none;border:none;outline:none;padding:.4rem 0;cursor:pointer;transition:color .15s ease}.mode-btn:hover,.mode-btn:focus-visible{color:var(--text-main)}.mode-btn[hidden],.fallback[hidden]{display:none}.fallback{position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto;padding:calc(env(safe-area-inset-top,0px) + 28px) max(4.5rem,env(safe-area-inset-right)) 2rem max(4.5rem,env(safe-area-inset-left));-webkit-overflow-scrolling:touch}.fallback section{margin-bottom:1.6rem}.fallback h2{font-size:.75rem;font-weight:400;letter-spacing:.05em;margin:0 0 .6rem}.fallback h2 span{color:var(--text-muted);margin-left:.5rem}.fallback-grid{display:flex;flex-wrap:wrap;gap:6px}.fallback-tile{height:90px;padding:0;border:none;background:#111;cursor:pointer}.fallback-tile img{width:100%;height:100%;object-fit:cover;display:block}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.modal-overlay.active{opacity:1;visibility:visible}.modal-overlay{touch-action:none}.modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--bg-black);cursor:pointer}.modal-close-btn{position:absolute;top:1.5rem;right:1.8rem;z-index:50;background:transparent;border:none;outline:none;color:var(--text-muted);font-size:1.2rem;cursor:pointer;transition:color .15s ease;padding:.5rem;line-height:1}.modal-close-btn:hover{color:var(--text-main)}.modal-original{position:absolute;top:1.95rem;right:4.4rem;z-index:50;font-size:.72rem;letter-spacing:.05em;color:var(--text-muted);text-decoration:none;transition:color .15s ease}.modal-original:hover{color:var(--text-main)}.modal-original[hidden]{display:none}.modal-counter{position:absolute;top:1.7rem;left:1.8rem;z-index:50;font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);-webkit-user-select:none;user-select:none;letter-spacing:.05em}.modal-nav-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:50;background:transparent;border:none;outline:none;color:var(--text-muted);font-size:2.5rem;cursor:pointer;transition:color .15s ease;padding:1.5rem;-webkit-user-select:none;user-select:none;line-height:1}.modal-nav-btn:hover{color:var(--text-main)}.modal-nav-btn.prev{left:.5rem}.modal-nav-btn.next{right:.5rem}.modal-stage{position:relative;z-index:10;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;padding:2.5rem;pointer-events:none}.modal-img{max-width:92vw;max-height:92vh;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:auto;transform-origin:center center;will-change:transform}.modal-img.animating{transition:transform .22s ease-out}.modal-overlay.zoomed .modal-img{cursor:grab}.modal-overlay.zoomed .modal-nav-btn,.modal-overlay.zoomed .modal-counter{opacity:.25}.dev-panel{position:fixed;top:calc(max(.35rem,env(safe-area-inset-top)) + 3rem);left:max(.75rem,env(safe-area-inset-left));z-index:100;width:15.5rem;max-height:calc(100dvh - 11rem);overflow-y:auto;padding:.6rem .75rem .75rem;background:#0a0a0ae6;border:1px solid rgba(255,255,255,.1);border-radius:10px;font-size:.68rem;color:#aaa}.dev-panel.collapsed{width:auto;padding:0;border-radius:999px}.dev-panel.collapsed .dev-body{display:none}.dev-toggle{display:block;background:none;border:none;color:#777;font:inherit;letter-spacing:.08em;cursor:pointer;padding:0 0 .45rem}.dev-panel.collapsed .dev-toggle{padding:.55rem .9rem}.dev-body{display:flex;flex-direction:column;gap:.5rem}.dev-stats{margin:0 0 .2rem;font:inherit;line-height:1.55;color:#e5e5e5;white-space:pre-wrap}.dev-body label{display:flex;flex-direction:column;gap:.25rem;color:#777}.dev-body label.dev-check{flex-direction:row;align-items:center;gap:.45rem;color:#bbb}.dev-body b{font-weight:400;color:#ddd}.dev-body select{font:inherit;color:#ddd;background:#161616;border:1px solid #2a2a2a;border-radius:6px;padding:.3rem .4rem}.dev-body input[type=range],.dev-body input[type=checkbox]{accent-color:#ddd}.dev-body input[type=range]{width:100%}@media(max-width:640px){.timeline{padding-top:1.8rem}.tl-head{gap:.7rem;font-size:.72rem}.tl-btn{padding:.5rem .35rem}.tl-track{height:2.75rem}.modal-close-btn{top:max(.85rem,env(safe-area-inset-top,.85rem));right:.85rem;font-size:1.4rem;padding:.6rem;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.modal-original{top:max(1.45rem,calc(env(safe-area-inset-top,0px) + .6rem));right:4.2rem}.modal-counter{top:max(1.15rem,env(safe-area-inset-top,1.15rem));left:1.15rem;font-size:.72rem}.modal-nav-btn{font-size:2.2rem;padding:1rem .6rem}.modal-stage{padding:.5rem}.modal-img{max-width:96vw;max-height:86vh}}
