:root{--bg:#FCFBF8;--text:#1A1917;--muted:#6B6862;--accent:#0F6B5C;--accent-soft:rgba(15,107,92,0.08);--rule:#E5E2DA;--card:#FFFFFF;--danger:#A03D2E;--danger-soft:rgba(160,61,46,0.08);--shadow:0 1px 2px rgba(26,25,23,0.04),0 4px 16px rgba(26,25,23,0.05);--serif:Charter,Georgia,"Times New Roman",serif;--mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;--radius:10px;--radius-lg:14px;--measure:42rem}@media (prefers-color-scheme:dark){:root{--bg:#141312;--text:#E8E6E1;--muted:#A5A19A;--accent:#4DB6A5;--accent-soft:rgba(77,182,165,0.1);--rule:#2E2C29;--card:#1C1B19;--danger:#D07B6B;--danger-soft:rgba(208,123,107,0.1);--shadow:0 1px 2px rgba(0,0,0,0.25),0 4px 16px rgba(0,0,0,0.2)}}:root[data-theme=light]{--bg:#FCFBF8;--text:#1A1917;--muted:#6B6862;--accent:#0F6B5C;--accent-soft:rgba(15,107,92,0.08);--rule:#E5E2DA;--card:#FFFFFF;--danger:#A03D2E;--danger-soft:rgba(160,61,46,0.08);--shadow:0 1px 2px rgba(26,25,23,0.04),0 4px 16px rgba(26,25,23,0.05)}:root[data-theme=dark]{--bg:#141312;--text:#E8E6E1;--muted:#A5A19A;--accent:#4DB6A5;--accent-soft:rgba(77,182,165,0.1);--rule:#2E2C29;--card:#1C1B19;--danger:#D07B6B;--danger-soft:rgba(208,123,107,0.1);--shadow:0 1px 2px rgba(0,0,0,0.25),0 4px 16px rgba(0,0,0,0.2)}*,:after,:before{box-sizing:border-box}html{font-size:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--serif);font-size:1.125rem;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background-color .2s ease,color .2s ease}::selection{background:var(--accent);color:var(--bg)}a{color:var(--accent);text-decoration:none;transition:color .2s ease}a:hover{text-decoration:underline;text-underline-offset:.15em}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{transition:none!important;animation:none!important;scroll-behavior:auto!important}}h1,h2,h3{font-weight:600;line-height:1.22;text-wrap:balance;letter-spacing:-.012em}h1{font-size:1.75rem;margin:0 0 1rem}h2{font-size:1.25rem;margin:2.25rem 0 .75rem}h3{font-size:1.05rem;margin:1.5rem 0 .5rem}ol,p,ul{margin:0 0 1.1em}hr{border:0;border-top:1px solid var(--rule);margin:2.5rem 0}strong{font-weight:600}.eyebrow{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin:2.75rem 0 .9rem}.eyebrow,.muted{color:var(--muted)}.mono{font-family:var(--mono);font-size:.8rem}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.container{max-width:var(--measure);margin-inline:auto;padding-inline:1.1rem}main{padding-block:2rem 4.5rem;min-height:60vh}.skip-link{position:absolute;left:-9999px;top:0;background:var(--accent);color:var(--bg);padding:.5rem 1rem;z-index:20}.skip-link:focus{left:0}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.rise{animation:rise-in .4s cubic-bezier(.2,.7,.3,1) both}.mark .cell{fill:currentColor}.mark .seed{fill:var(--accent)}.hero-mark{display:block;color:var(--text);margin-bottom:1.25rem}@keyframes cell-in{0%{opacity:0;transform:translateY(10px) scale(.8)}to{opacity:1;transform:none}}.mark--animated .cell{transform-origin:center;transform-box:fill-box;animation:cell-in .55s cubic-bezier(.2,.7,.3,1) both}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--rule);background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.site-header .container{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.1rem;padding-block:.85rem}.wordmark{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--serif);font-weight:700;font-size:1.02rem;color:var(--text);margin-right:auto}.wordmark:hover{text-decoration:none;color:var(--accent)}.nav-list{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1rem;list-style:none;margin:0;padding:0}.header-btn,.lang-toggle,.nav-list a{font-family:var(--mono);font-size:.78rem;color:var(--muted);background:none;border:none;padding:0;cursor:pointer;transition:color .2s ease}.header-btn:hover,.lang-toggle:hover,.nav-list a:hover{color:var(--accent);text-decoration:none}.nav-list a[aria-current=page]{color:var(--text)}.card{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.4rem 1.5rem;margin-bottom:1rem;box-shadow:var(--shadow)}.card h3{margin-top:0}.task-text{font-size:1.3rem;line-height:1.45;text-wrap:pretty;margin:.4rem 0 0}.mode-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:.9rem;gap:.9rem}@media (max-width:34rem){.mode-grid{grid-template-columns:1fr}}.mode-card{display:block;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);padding:1.2rem 1.3rem;color:var(--text);box-shadow:var(--shadow);transition:border-color .2s ease,transform .2s ease}.mode-card:hover{border-color:var(--accent);transform:translateY(-2px);text-decoration:none}.mode-card .mode-name{font-weight:700;font-size:1.2rem;display:block;margin-bottom:.3rem}.mode-card .mode-name .so{color:var(--accent)}.mode-card p{margin:0;color:var(--muted);font-size:.95rem;line-height:1.5}.chip-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.chip{font-family:var(--mono);font-size:.66rem;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:.28rem .7rem}.chip-plain{color:var(--muted);background:transparent;border:1px solid var(--rule)}.stats{display:flex;flex-wrap:wrap;gap:1rem;margin:1.9rem 0}.stat{flex:1 1 8.5rem;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:.9rem 1.1rem}.stat .n{font-size:1.9rem;font-weight:700;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;display:block;line-height:1.15}.stat .label{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.steps{display:flex;gap:.5rem;margin:1.5rem 0 2rem}.step{flex:1 1}.step .bar{height:3px;border-radius:2px;background:var(--rule);margin-bottom:.45rem;transition:background-color .2s ease}.step.is-active .bar,.step.is-done .bar{background:var(--accent)}.step .name{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.step.is-active .name{color:var(--text)}.form{display:flex;flex-direction:column;gap:1rem;max-width:27rem}.form-wide{max-width:100%}.form label{font-family:var(--mono);font-size:.72rem;letter-spacing:.06em;color:var(--muted);display:block;margin-bottom:.35rem}.form input,.form select,.form textarea{width:100%;font-family:var(--serif);font-size:1.05rem;color:var(--text);background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:.65rem .8rem;transition:border-color .2s ease,box-shadow .2s ease}.form textarea{min-height:9.5rem;line-height:1.55;resize:vertical}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.hint{font-size:.85rem;margin:.35rem 0 0}.counter,.hint{color:var(--muted)}.counter{font-family:var(--mono);font-size:.72rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;display:block;margin-top:.35rem}.choice-list{display:flex;flex-direction:column;gap:.5rem}.choice{display:flex;align-items:baseline;gap:.6rem;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:.7rem .9rem;cursor:pointer;transition:border-color .2s ease,background-color .2s ease}.choice:hover{border-color:var(--accent)}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.choice input{accent-color:var(--accent)}.choice .label-text{font-family:var(--serif);font-size:1rem;color:var(--text)}.checkline{display:flex;align-items:baseline;gap:.6rem;font-size:.98rem}.checkline input{accent-color:var(--accent)}.btn{display:inline-block;font-family:var(--mono);font-size:.9rem;color:var(--bg);background:var(--accent);border:1px solid var(--accent);border-radius:var(--radius);padding:.7rem 1.4rem;cursor:pointer;text-align:center;transition:opacity .2s ease,transform .1s ease}.btn:hover{opacity:.92;text-decoration:none;color:var(--bg)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:default}.btn-quiet{background:transparent;color:var(--accent)}.btn-quiet:hover{color:var(--accent);background:var(--accent-soft)}.btn-danger{background:transparent;color:var(--danger);border-color:var(--danger)}.btn-danger:hover{color:var(--danger);background:var(--danger-soft)}.btn-row{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.btn-row .btn{flex:1 1 10rem}.badge{font-family:var(--mono);font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.2rem .55rem;border:1px solid var(--rule);color:var(--muted)}.badge-accepted{color:var(--accent);border-color:transparent;background:var(--accent-soft)}.badge-rejected{color:var(--danger);border-color:transparent;background:var(--danger-soft)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.98rem}.table th{font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;font-weight:400;padding:.55rem .6rem}.table td,.table th{border-bottom:1px solid var(--rule)}.table td{padding:.6rem}.table .num{text-align:right;font-family:var(--mono);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.notice{border:1px solid var(--rule);border-left:3px solid var(--accent);background:var(--card);border-radius:var(--radius);padding:.8rem 1rem;margin-bottom:1.25rem}.notice-error{border-left-color:var(--danger);color:var(--danger)}.shell{display:flex;min-height:100vh}.sidebar{display:none}.shell-main{flex:1 1;min-width:0;display:flex;flex-direction:column}.shell-content{flex:1 1;padding-block:1.75rem 5.5rem}.mobile-top{position:-webkit-sticky;position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:.8rem 1.1rem;border-bottom:1px solid var(--rule);background:color-mix(in srgb,var(--bg) 85%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.mobile-top-actions{display:flex;align-items:center;gap:.9rem}.tabbar{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;border-top:1px solid var(--rule);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);padding-bottom:env(safe-area-inset-bottom)}.tab{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.55rem 0 .5rem;color:var(--muted)}.tab:hover{text-decoration:none}.tab.is-current,.tab:hover{color:var(--accent)}.tab-icon{display:block;line-height:0}.tab-label{font-family:var(--mono);font-size:.6rem;letter-spacing:.06em}@media (min-width:60rem){.sidebar{display:flex;flex-direction:column;width:15rem;flex-shrink:0;border-right:1px solid var(--rule);padding:1.25rem 1rem;position:-webkit-sticky;position:sticky;top:0;height:100vh}.mobile-top,.tabbar{display:none}.shell-content{padding-block:2.5rem 4rem}}.sidebar-brand{font-size:1.05rem;padding:.25rem .6rem 1.1rem}.sidebar-nav{display:flex;flex-direction:column;gap:.15rem}.side-link{display:flex;align-items:center;gap:.65rem;font-family:var(--mono);font-size:.82rem;color:var(--muted);padding:.55rem .6rem;border-radius:var(--radius);transition:color .2s ease,background-color .2s ease}.side-link:hover{color:var(--text);background:var(--accent-soft);text-decoration:none}.side-link.is-current{color:var(--accent);background:var(--accent-soft)}.side-icon{display:block;line-height:0}.sidebar-user{margin-top:auto;border-top:1px solid var(--rule);padding-top:.9rem;display:flex;flex-direction:column;gap:.7rem}.user-line{display:flex;align-items:center;gap:.6rem;color:var(--text);padding:.3rem .6rem;border-radius:var(--radius)}.user-line:hover{background:var(--accent-soft);text-decoration:none}.user-meta{display:flex;flex-direction:column;line-height:1.25}.user-name{font-size:.92rem;font-weight:600}.user-rep{font-family:var(--mono);font-size:.68rem;color:var(--muted)}.sidebar-actions{display:flex;align-items:center;justify-content:space-between;padding:0 .6rem}.avatar{color:var(--text);flex-shrink:0;display:block;border-radius:6px}.avatar .a-cell{fill:currentColor;opacity:.82}.avatar .a-seed{fill:var(--accent)}.row-user{display:inline-flex;align-items:center;gap:.55rem}.profile-head{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.greeting{font-size:clamp(1.6rem,5vw,2rem);margin-bottom:.4rem}.landing-hero{padding-block:1.5rem 1rem}.landing-title{font-size:clamp(2.2rem,8vw,3.1rem);font-weight:700;margin-bottom:.6rem}.landing-sub{font-size:1.18rem;line-height:1.55;max-width:34rem;text-wrap:pretty;margin-bottom:1.5rem}.progress-card{margin-top:1.5rem}.progress-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.progress-track{height:10px;border-radius:999px;background:var(--rule);overflow:hidden}.progress-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .6s cubic-bezier(.2,.7,.3,1)}.sparkline{display:block}.sparkline .spark-bar{fill:var(--accent)}.sparkline .spark-empty{fill:var(--rule)}.podium{display:flex;align-items:flex-end;justify-content:center;gap:1rem;margin:2rem 0 2.25rem}.podium-spot{display:flex;flex-direction:column;align-items:center;gap:.35rem;background:var(--card);border:1px solid var(--rule);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.1rem 1.2rem .9rem;min-width:7.5rem}.podium-spot.rank-1{border-color:var(--accent);padding-block:1.5rem 1.1rem}.podium-rank{font-size:.7rem;color:var(--muted)}.rank-1 .podium-rank{color:var(--accent)}.podium-name{font-weight:600;font-size:.95rem;text-align:center;max-width:9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium-rep{font-size:.75rem;color:var(--muted)}@media (max-width:34rem){.podium{gap:.5rem}.podium-spot{min-width:0;flex:1 1;padding:.9rem .5rem .75rem}}.editor{display:flex;flex-direction:column;gap:.5rem}.editor-full{position:fixed;inset:0;z-index:30;background:var(--bg);padding:1.25rem;gap:.75rem}.editor-full .editor-area{flex:1 1;min-height:0}.editor-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.editor-tools{display:flex;gap:.25rem}.tool{font-family:var(--serif);font-size:.95rem;color:var(--muted);background:var(--card);border:1px solid var(--rule);border-radius:7px;min-width:2.1rem;padding:.35rem .55rem;cursor:pointer;transition:color .2s ease,border-color .2s ease,background-color .2s ease}.tool:hover{color:var(--accent);border-color:var(--accent)}.tool-text{font-family:var(--mono);font-size:.72rem}.tool.is-on{color:var(--accent);background:var(--accent-soft);border-color:var(--accent)}.editor-area{width:100%;min-height:14rem;font-family:var(--serif);font-size:1.12rem;line-height:1.65;color:var(--text);background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:1rem 1.1rem;resize:vertical;transition:border-color .2s ease,box-shadow .2s ease}.editor-area:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.editor-preview{min-height:14rem;background:var(--card);border:1px dashed var(--rule);border-radius:var(--radius);padding:1rem 1.1rem;overflow-y:auto}.editor-preview h3{margin-top:.5rem}.editor-preview blockquote{margin:1rem 0;padding-left:1rem;border-left:2px solid var(--rule);color:var(--muted);font-style:italic}.editor-status{font-size:.72rem;color:var(--muted);text-align:right}.editor-restored{margin:0}.review-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.review-card{gap:1rem}.review-card,.review-pick{display:flex;align-items:flex-start}.review-pick{gap:.75rem;flex:1 1;cursor:pointer}.review-pick input{margin-top:.35rem;accent-color:var(--accent);width:1.05rem;height:1.05rem}.review-body{flex:1 1}.review-overturn{flex-shrink:0;font-size:.72rem;padding:.4rem .8rem}.badge-verified{color:var(--accent);border-color:transparent;background:var(--accent-soft)}.site-footer{border-top:1px solid var(--rule);margin-top:2rem}.site-footer .container{padding-block:1.5rem 2rem;font-family:var(--mono);font-size:.74rem;color:var(--muted)}.site-footer p{margin:0 0 .4em}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--accent)}