@font-face{font-family:Geist;src:url(/alleyloop/fonts/Geist-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/alleyloop/fonts/GeistMono-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fbfefe;--panel:#fff;--panel-alt:#eef6f7;--ink:#0d1d22;--muted:#56686e;--line:#dfeced;--soft:#244047;--accent:#0f7f87;--tint:#dff3f2;--success:#17704b;--success-bg:#ddf3e8;--danger:#b0392f;--danger-bg:#fbe5e2;--shadow:0 1px 2px #0f4f550d, 0 8px 24px #0f4f550d;--shadow-hover:0 2px 4px #0f4f5514, 0 14px 32px #0f4f551a;--bg-pattern:radial-gradient(1000px 520px at 95% 0%, #d6f1f0 0, transparent 62%), radial-gradient(800px 540px at 0% 45%, #dce9fb 0, transparent 62%), radial-gradient(900px 560px at 100% 90%, #d9f3ee 0, transparent 62%);--title-grad:linear-gradient(90deg, #0f8f8a, #2a7fd4 55%, #4b54c9);--font:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, Menlo, monospace;color:var(--ink);background:var(--bg);font:16px/1.65 var(--font);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#061417;--panel:#0c1f23;--panel-alt:#112a30;--ink:#e6f4f4;--muted:#93aeb1;--line:#1b3439;--soft:#c6e0e2;--accent:#5fe0d0;--tint:#133236;--success:#93dcb7;--success-bg:#16332a;--danger:#f2a49a;--danger-bg:#3a1f1d;--shadow:none;--shadow-hover:0 14px 32px #0005;--bg-pattern:radial-gradient(1000px 520px at 95% 0%, #0d3a3c 0, transparent 62%), radial-gradient(800px 540px at 0% 45%, #0e2a4d 0, transparent 62%), radial-gradient(900px 560px at 100% 90%, #0b3433 0, transparent 62%);--title-grad:linear-gradient(90deg, #5fe0d0, #6fb2ff 55%, #9a9cff)}*{box-sizing:border-box}body{background:var(--bg);background-image:var(--bg-pattern);min-height:100vh;color:var(--ink);margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}:is(a,button,input,summary):focus-visible{outline:2px solid var(--accent);outline-offset:4px}::selection{background:var(--tint);color:var(--ink)}.al-header{z-index:40;border-bottom:1px solid;border-image:linear-gradient(var(--line), var(--line)) 1 / 0 0 1px / 0 100vw;justify-content:space-between;align-items:center;gap:20px;min-height:102px;display:flex;position:relative}.al-brand-group,.al-brand,.al-header-actions{align-items:center;display:flex}.al-brand-group{gap:15px}.al-brand{letter-spacing:-.025em;white-space:nowrap;gap:11px;font-size:18px;font-weight:650;text-decoration:none}.al-brand-mark{border:1px solid var(--line);width:34px;height:34px;color:var(--accent);background:var(--panel);border-radius:10px;place-items:center;font-size:27px;font-weight:500;line-height:1;display:grid}.al-section{border-left:1px solid var(--line);color:var(--muted);font:11px/1.5 var(--mono);padding-left:15px}.al-header-actions{gap:22px;margin-left:auto}.al-website-link{background:var(--ink);min-height:38px;color:var(--bg);white-space:nowrap;border-radius:999px;align-items:center;gap:9px;padding:8px 17px;font-size:13px;font-weight:500;line-height:1.3;text-decoration:none;transition:transform .2s;display:inline-flex}.al-website-link:hover{transform:translateY(-2px)}.al-language{border:1px solid var(--line);border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.al-language button{min-width:38px;min-height:30px;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:4px 8px;font-size:12px}.al-language button[aria-pressed=true]{color:var(--bg);background:var(--ink)}.al-theme-toggle{border:0;border-left:1px solid var(--line);min-width:36px;min-height:36px;color:var(--ink);background:0 0;place-items:center;padding:6px 0 6px 16px;font-size:25px;line-height:1;display:grid}.rules-popover{color:var(--muted);font-size:13px;position:relative}.rules-popover summary{cursor:pointer;padding:8px 0;list-style:none}.rules-popover summary::-webkit-details-marker{display:none}.rules-popover summary:hover,.rules-popover[open] summary{color:var(--accent)}.rules-popover>ol{z-index:50;border:1px solid var(--line);background:var(--panel);width:min(340px,100vw - 40px);box-shadow:var(--shadow);color:var(--ink);border-radius:12px;gap:10px;margin:0;padding:20px 22px 20px 40px;font-size:14px;line-height:1.55;display:grid;position:absolute;top:calc(100% + 14px);right:0}.rules-popover li::marker{color:var(--accent);font:12px var(--mono)}.stats-panel{z-index:50;border:1px solid var(--line);background:var(--panel);width:min(300px,100vw - 40px);box-shadow:var(--shadow);color:var(--ink);border-radius:12px;grid-template-columns:repeat(2,1fr);gap:20px 16px;margin:0;padding:22px;display:grid;position:absolute;top:calc(100% + 14px);right:0}.stats-panel>div{flex-direction:column-reverse;justify-content:flex-end;gap:4px;display:flex}.stats-panel dt{color:var(--muted);font:11px/1.4 var(--mono)}.stats-panel dd{letter-spacing:-.03em;margin:0;font-size:26px;font-weight:600;line-height:1}.al-author{width:fit-content;color:var(--muted);text-align:center;margin-inline:auto;font-size:13px;text-decoration:none;display:block}.al-author span{color:var(--ink);text-decoration:underline;-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);text-underline-offset:4px}.al-author:hover span{color:var(--accent)}@media (width<=720px){.al-header{flex-wrap:wrap;gap:12px;min-height:79px;padding-block:16px}.al-header-actions{flex:1 0 100%;order:3;justify-content:flex-end;gap:14px;margin-left:0}.al-header-actions>.rules-popover{margin-right:6px}.al-header-actions>.rules-popover:last-of-type{margin-right:auto}.al-website-link{min-height:34px;padding:6px 14px}.al-brand{gap:8px;font-size:16px}.al-brand-mark{width:30px;height:30px;font-size:24px}.al-brand-group{gap:10px}.al-section{padding-left:10px}.al-theme-toggle{min-width:30px;padding-left:10px;font-size:23px}.al-header .rules-popover{position:static}.rules-popover>ol,.stats-panel{width:auto;top:calc(100% + 8px);left:0;right:0}}@media (width<=480px){.al-section{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
