*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #10151b;--panel: #0a0e13;--border: #2a3340;--text: #cdd6e0;--muted: #8fa1b3;--accent: #2f81f7}html,body{height:100%;background:var(--bg);color:var(--text);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px}#nav{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;gap:20px;align-items:center;padding:8px 14px;background:#10151be6;border-bottom:1px solid var(--border)}#nav .brand{font-weight:700;font-size:15px;color:var(--accent);text-decoration:none}#nav nav{display:flex;gap:14px}#nav nav a{color:var(--muted);text-decoration:none}#nav nav a:hover{color:var(--text)}#nav nav a.active{color:var(--text);border-bottom:1px solid var(--accent)}#loading{margin-left:auto;color:var(--muted)}#loading[hidden]{display:none}#board{display:block;width:100vw;height:100vh;cursor:grab;touch-action:none}#board.dragging{cursor:grabbing}#compare-modal[hidden],#compare-modal [hidden]{display:none!important}#compare-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#000000b3}.compare-dialog{display:flex;flex-direction:column;gap:12px;max-width:94vw;max-height:90vh;padding:16px;background:var(--bg);border:1px solid var(--border);border-radius:6px}.compare-header{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.compare-title{font-weight:700}.compare-btn,.compare-copy{padding:3px 10px;background:none;border:1px solid var(--border);border-radius:4px;color:var(--muted);font:inherit;font-size:11px;cursor:pointer}.compare-btn:hover{color:var(--text);border-color:var(--muted)}.compare-toggle{display:flex;gap:6px;align-items:center;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none}.compare-hint{color:var(--muted);font-size:11px}.compare-close{margin-left:auto;background:none;border:none;color:var(--muted);font:inherit;font-size:20px;line-height:1;cursor:pointer}.compare-close:hover{color:var(--text)}.compare-panels{display:flex;gap:16px}.compare-panel{display:flex;flex-direction:column;gap:8px;align-items:center}.compare-panel h3{font-size:13px;color:var(--muted)}.compare-viewport{position:relative;width:min(42vw,64vh);aspect-ratio:1;overflow:hidden;border:1px solid var(--border);cursor:grab;touch-action:none}.compare-viewport.dragging{cursor:grabbing}.compare-zoom{width:100%;height:100%;transform-origin:0 0}.compare-zoom img,.compare-zoom canvas{display:block;width:100%;height:100%;image-rendering:pixelated;-webkit-user-select:none;user-select:none}.compare-slider{width:min(80vw,70vh)}.compare-layer{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.compare-layer-after{clip-path:inset(0 50% 0 0)}.compare-handle{position:absolute;top:0;bottom:0;left:50%;width:18px;margin-left:-9px;cursor:ew-resize;touch-action:none;z-index:2}.compare-handle:before{content:"";position:absolute;top:0;bottom:0;left:8px;width:2px;background:var(--accent)}.compare-handle:after{content:"⇆";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;border-radius:50%;font-size:14px}.page{overflow-y:auto;height:100vh}.page main{max-width:760px;margin:0 auto;padding:80px 20px;line-height:1.65}.page h1{font-size:26px;margin-bottom:8px}.page h2{font-size:17px;margin:28px 0 8px;color:var(--accent)}.page p,.page li{color:var(--text);margin-bottom:10px}.page ul,.page ol{padding-left:22px;margin-bottom:10px}.page .lead{color:var(--muted);font-size:15px}.page .tag{display:inline-block;margin-right:6px;padding:1px 8px;border:1px solid var(--border);border-radius:999px;font-size:11px;color:var(--muted)}
