@import "https://fonts.googleapis.com/css2?family=Inter:wght@400..700&display=swap";:root{--cb-ink:#0f172a;--cb-ink-soft:#334155;--cb-white:#fff;--cb-paper:#fff;--cb-paper-2:#f8fafc;--cb-paper-3:#f1f5f9;--cb-paper-4:#e2e8f0;--cb-gray:#475569;--cb-gray-soft:#64748b;--cb-purple:#4f46e5;--cb-purple-dim:#4338ca;--cb-purple-deep:#4338ca;--cb-purple-container:#eef2ff;--cb-purple-container-2:#f5f7ff;--cb-tag-purple:#4f46e5;--cb-tag-purple-deep:#4338ca;--cb-purple-light:#c7d2fe;--cb-marker-red:#ef4444;--cb-marker-red-deep:#b91c1c;--cb-marker-red-soft:#fef2f2;--cb-marker-red-light:#fca5a5;--cb-mint:#10b981;--cb-mint-deep:#047857;--cb-mint-soft:#ecfdf5;--cb-mint-light:#6ee7b7;--cb-hi-vis:#f59e0b;--cb-hi-vis-deep:#b45309;--cb-hi-vis-soft:#fffbeb;--cb-hi-vis-light:#fde68a;--cb-sky:#0ea5e9;--cb-color-bg:var(--cb-paper);--cb-color-surface:var(--cb-paper);--cb-color-surface-sunken:var(--cb-paper-2);--cb-color-surface-raised:var(--cb-paper);--cb-color-border:var(--cb-paper-4);--cb-color-divider:var(--cb-paper-3);--cb-color-border-strong:#cbd5e1;--cb-color-ink:var(--cb-ink);--cb-color-text:var(--cb-ink);--cb-color-text-muted:var(--cb-gray);--cb-color-text-subtle:var(--cb-gray-soft);--cb-color-text-inverse:var(--cb-paper);--cb-color-card:var(--cb-paper);--cb-color-border-control:#cbd5e1;--cb-color-primary:var(--cb-tag-purple);--cb-color-primary-hover:var(--cb-tag-purple-deep);--cb-color-primary-strong:var(--cb-purple-deep);--cb-color-primary-soft:var(--cb-purple-container);--cb-color-primary-soft-2:var(--cb-purple-container-2);--cb-color-brand:var(--cb-purple);--cb-color-primary-soft-border:var(--cb-purple-light);--cb-color-on-primary:#fff;--cb-color-accent:var(--cb-purple);--cb-color-info:var(--cb-sky);--cb-color-highlight:var(--cb-hi-vis-light);--cb-color-highlight-strong:#fbbf24;--cb-color-on-highlight:var(--cb-ink);--cb-color-success:var(--cb-mint-deep);--cb-color-success-soft:var(--cb-mint-soft);--cb-color-success-border:var(--cb-mint);--cb-color-danger:var(--cb-marker-red-deep);--cb-color-danger-soft:var(--cb-marker-red-soft);--cb-color-danger-border:var(--cb-marker-red);--cb-color-warning:var(--cb-hi-vis-deep);--cb-color-warning-soft:var(--cb-hi-vis-soft);--cb-color-warning-border:var(--cb-hi-vis);--cb-color-focus:var(--cb-purple);--cb-color-focus-halo:#4f46e538;--cb-xw-cell-bg:var(--cb-white);--cb-xw-cell-radius:4px;--cb-xw-cell-border:#cbd5e1;--cb-xw-block-bg:transparent;--cb-xw-word-bg:#e0e7ff;--cb-xw-word-text:var(--cb-ink);--cb-xw-active-bg:var(--cb-purple);--cb-xw-active-text:#fff;--cb-xw-number:var(--cb-gray-soft);--cb-xw-grid-line:#0f172a0d;--cb-font-display:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--cb-weight-display-font:600;--cb-font-body:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--cb-font-mono:var(--cb-font-body);--cb-font-code:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--cb-font-stencil:var(--cb-font-body);--cb-text-2xs:.6875rem;--cb-text-xs:.75rem;--cb-text-sm:.875rem;--cb-text-md:1rem;--cb-text-lg:1.0625rem;--cb-text-xl:1.25rem;--cb-text-2xl:1.5rem;--cb-text-3xl:1.875rem;--cb-text-4xl:2.25rem;--cb-weight-regular:400;--cb-weight-medium:500;--cb-weight-semibold:600;--cb-weight-bold:700;--cb-weight-display:700;--cb-weight-black:700;--cb-leading-tight:1.2;--cb-leading-snug:1.35;--cb-leading-body:1.6;--cb-leading-prose:1.85;--cb-tracking-tight:-.01em;--cb-tracking-caps:0;--cb-tracking-stencil:0;--cb-tracking-kicker:0;--cb-text-transform-caps:none;--cb-space-0:0;--cb-space-1:.25rem;--cb-space-2:.5rem;--cb-space-3:.75rem;--cb-space-4:1rem;--cb-space-5:1.25rem;--cb-space-6:1.5rem;--cb-space-8:2rem;--cb-space-10:2.5rem;--cb-space-12:3rem;--cb-space-16:4rem;--cb-radius-xs:4px;--cb-radius-sm:6px;--cb-radius-md:8px;--cb-radius-lg:12px;--cb-radius-xl:10px;--cb-radius-pill:999px;--cb-border-width:1px;--cb-border-width-hair:1px;--cb-border-width-strong:1px;--cb-shadow-xs:none;--cb-shadow-sm:none;--cb-shadow-md:none;--cb-shadow-lg:0 12px 32px -4px #0f172a24, 0 2px 6px #0f172a0f;--cb-shadow-hover:none;--cb-shadow-press:none;--cb-shadow-focus:0 0 0 3px var(--cb-color-focus-halo);--cb-shadow-btn:none;--cb-shadow-btn-hover:none;--cb-shadow-card:none;--cb-shadow-pop:0 12px 32px -4px #0f172a24, 0 2px 6px #0f172a0f;--cb-duration-instant:80ms;--cb-duration-fast:.12s;--cb-duration-base:.2s;--cb-duration-slow:.32s;--cb-ease-standard:cubic-bezier(.2, 0, 0, 1);--cb-ease-emphasis:cubic-bezier(.3, 1.4, .5, 1);--cb-ease-exit:cubic-bezier(.4, 0, 1, 1);--cb-content-max:46rem;--cb-page-gutter:clamp(1rem, 4vw, 2rem);--cb-xw-cell:clamp(2.25rem, calc((100vw - 6rem) / 7), 3.25rem);--cb-control-height:2.5rem;--cb-control-height-sm:2rem;--cb-z-sticky:20;--cb-z-overlay:40;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--cb-color-bg:#0b1120;--cb-color-surface:#0f172a;--cb-color-surface-sunken:#0b1120;--cb-color-surface-raised:#1e293b;--cb-color-border:#1e293b;--cb-color-divider:#1e293b;--cb-color-border-strong:#334155;--cb-color-border-control:#334155;--cb-color-card:#1e293b;--cb-color-text:#f1f5f9;--cb-color-text-muted:#94a3b8;--cb-color-text-subtle:#94a3b8;--cb-color-text-inverse:var(--cb-ink);--cb-color-primary:#818cf8;--cb-color-primary-hover:#a5b4fc;--cb-color-primary-strong:#a5b4fc;--cb-color-primary-soft:#818cf824;--cb-color-primary-soft-border:#818cf866;--cb-color-brand:#818cf8;--cb-color-on-primary:var(--cb-ink);--cb-color-highlight:#fbbf244d;--cb-color-on-highlight:#f1f5f9;--cb-color-success:var(--cb-mint-light);--cb-color-success-soft:#10b98124;--cb-color-success-border:#10b98173;--cb-color-danger:var(--cb-marker-red-light);--cb-color-danger-soft:#ef444429;--cb-color-danger-border:#ef444480;--cb-color-warning:var(--cb-hi-vis-light);--cb-color-warning-soft:#f59e0b1f;--cb-color-warning-border:#f59e0b73;--cb-color-focus:#a5b4fc;--cb-color-focus-halo:#a5b4fc4d;--cb-xw-cell-bg:#1e293b;--cb-xw-cell-border:#334155;--cb-xw-word-bg:#818cf840;--cb-xw-word-text:#f1f5f9;--cb-xw-active-bg:#818cf8;--cb-xw-active-text:var(--cb-ink);--cb-xw-number:#94a3b8;--cb-xw-grid-line:#f1f5f90d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-reduced-motion:reduce){:root{--cb-duration-instant:0s;--cb-duration-fast:0s;--cb-duration-base:0s;--cb-duration-slow:0s}}.cb-view{font-family:var(--cb-font-body);font-size:var(--cb-player-font-size,var(--cb-text-lg));color:var(--cb-color-text);max-width:var(--cb-content-max)}.cb-view>:first-child{margin-top:0}.cb-view h1,.cb-view h2,.cb-view h3{font-family:var(--cb-font-display);font-weight:var(--cb-weight-display-font);letter-spacing:var(--cb-tracking-tight);line-height:var(--cb-leading-tight);margin:var(--cb-space-8) 0 var(--cb-space-3)}.cb-view h2{font-size:var(--cb-text-2xl)}.cb-view h3{font-size:var(--cb-text-xl)}.cb-view p,.cb-view li{margin:0 0 var(--cb-space-4);line-height:2.2}.cb-view strong,.cb-view b{font-weight:var(--cb-weight-bold)}.cb-view p:has(+:is(cb-choice,cb-arrange,cb-match,cb-true-false,cb-categorize,cb-memory,cb-word-search,cb-hotspot,cb-image-drop,cb-image-label,cb-crossword)){font-weight:var(--cb-weight-semibold);line-height:var(--cb-leading-snug);margin-bottom:var(--cb-space-3)}.cb-view img{border-radius:var(--cb-radius-md);border:var(--cb-border-width) solid var(--cb-color-border);max-width:100%;height:auto;display:block}.cb-view figure{margin:var(--cb-space-6) 4px var(--cb-space-6) 0}.cb-view figcaption{margin-top:var(--cb-space-3);font-size:var(--cb-text-sm);color:var(--cb-color-text-muted)}.cb-view a{color:var(--cb-color-primary-strong);text-underline-offset:.15em}.cb-view mark{background:var(--cb-color-highlight);color:var(--cb-color-on-highlight);padding:0 .15em}.cb-view code{font-family:var(--cb-font-code);background:var(--cb-color-surface-sunken);border-radius:var(--cb-radius-xs);padding:0 .3em;font-size:.9em}.cb-view cb-crossword{margin:var(--cb-space-8) 0}.cb-view cb-callout>*{margin:0 0 var(--cb-space-2);line-height:var(--cb-leading-body)}.cb-view cb-callout>:last-child{margin-bottom:0}.cb-view .cb-step:focus{outline:none}.cb-view .cb-step>:first-child{margin-top:0}.cb-view .cb-step[hidden]{display:none}.cb-steps-nav{align-items:center;gap:var(--cb-space-3) var(--cb-space-4);margin-top:var(--cb-space-8);padding-top:var(--cb-space-4);border-top:var(--cb-border-width) solid var(--cb-color-border);font-family:var(--cb-font-body);grid-template-columns:1fr auto;display:grid}.cb-steps-dots{grid-column:1/-1;gap:4px;margin:0;padding:0;list-style:none;display:flex}.cb-steps-dots li{border-radius:var(--cb-radius-pill);background:var(--cb-color-border);flex:1;height:.375rem}.cb-steps-dots li[data-state=done]{background:var(--cb-color-primary)}.cb-steps-dots li[data-state=now]{background:var(--cb-color-primary-soft-border)}.cb-steps-count{font-size:var(--cb-text-sm);color:var(--cb-color-text-muted)}.cb-steps-buttons{gap:var(--cb-space-3);display:flex}.cb-step-btn{min-height:2.5rem;padding:0 var(--cb-space-4);border:var(--cb-border-width) solid var(--cb-color-border-strong);border-radius:var(--cb-radius-md);background:var(--cb-color-surface);color:var(--cb-color-text);font-family:var(--cb-font-body);font-size:var(--cb-text-sm);font-weight:var(--cb-weight-semibold);cursor:pointer;transition:background var(--cb-duration-fast) var(--cb-ease-standard)}.cb-step-btn:hover{background:var(--cb-color-surface-sunken)}.cb-step-btn:focus-visible{outline:2px solid var(--cb-color-focus);outline-offset:2px}.cb-step-btn[hidden]{display:none}.cb-step-next{border-color:var(--cb-color-primary);background:var(--cb-color-primary);color:var(--cb-color-on-primary)}.cb-step-next:hover{background:var(--cb-color-primary-hover)}@media (width<=34rem){.cb-view{--cb-player-font-size:var(--cb-text-md)}.cb-view p,.cb-view li{line-height:2.4}}:root{--app-bg:#f8fafc;--app-topbar:56px;--app-max:1200px;--app-gutter:32px;--app-target:36px}:root[data-theme=dark]{--app-bg:#0b1120}@media (width<=640px),(pointer:coarse){:root{--app-target:44px;--app-gutter:16px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--app-bg);color:var(--cb-color-text);font-family:var(--cb-font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5;overflow-x:hidden}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--cb-color-primary-strong);text-underline-offset:.15em}::selection{background:var(--cb-color-primary-soft)}:focus-visible{outline:2px solid var(--cb-color-focus);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.icon{flex:none;width:16px;height:16px;display:inline-block}.muted{color:var(--cb-color-text-muted)}.btn{min-height:var(--app-target);border:1px solid var(--cb-color-border-strong);border-radius:var(--cb-radius-md);background:var(--cb-color-surface);color:var(--cb-color-text);white-space:nowrap;cursor:pointer;transition:background-color var(--cb-duration-fast) ease, border-color var(--cb-duration-fast) ease;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--cb-color-surface-sunken)}.btn:disabled{opacity:.55;cursor:default}.btn-primary{border-color:var(--cb-color-primary);background:var(--cb-color-primary);color:var(--cb-color-on-primary)}.btn-primary:hover:not(:disabled){border-color:var(--cb-color-primary-hover);background:var(--cb-color-primary-hover)}.btn-danger{border-color:var(--cb-color-danger);background:var(--cb-color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#991b1b;border-color:#991b1b}.btn-ghost{color:var(--cb-color-text-muted);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--cb-paper-3);color:var(--cb-color-text)}.btn-sm{gap:6px;min-height:32px;padding:0 10px;font-size:13px}@media (width<=640px),(pointer:coarse){.btn-sm{min-height:44px}}.btn-block{width:100%}.icon-btn{width:var(--app-target);height:var(--app-target);border-radius:var(--cb-radius-md);color:var(--cb-color-text-muted);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;padding:0;text-decoration:none;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--cb-paper-3);color:var(--cb-color-text)}.icon-btn .icon{width:18px;height:18px}.field{gap:6px;display:grid}.field-label{color:var(--cb-ink-soft);font-size:13px;font-weight:500}.field-hint{color:var(--cb-color-text-subtle);font-size:12px}.input{width:100%;min-height:var(--app-target);border:1px solid var(--cb-color-border-control);border-radius:var(--cb-radius-md);background:var(--cb-color-surface);color:var(--cb-color-text);transition:border-color var(--cb-duration-fast) ease, box-shadow var(--cb-duration-fast) ease;padding:0 12px;font-size:14px}.input::placeholder{color:var(--cb-color-text-subtle)}.input:hover{border-color:#94a3b8}.input:focus,.input:focus-visible{border-color:var(--cb-color-primary);box-shadow:var(--cb-shadow-focus);outline:none}select.input{appearance:none;background:var(--cb-color-surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' fill='none' stroke='%2364748b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center / 16px;padding-right:32px}@media (width<=640px){.input{font-size:16px}}.form-error{border-radius:var(--cb-radius-md);background:var(--cb-color-danger-soft);color:var(--cb-color-danger);padding:10px 12px;font-size:13px}.form-ok{border-radius:var(--cb-radius-md);background:var(--cb-color-success-soft);color:var(--cb-color-success);padding:10px 12px;font-size:13px}.error{color:var(--cb-color-danger)}.seg{border-radius:var(--cb-radius-xl);background:var(--cb-paper-3);gap:2px;padding:3px;display:inline-flex}.seg-btn{min-height:calc(var(--app-target) - 6px);color:var(--cb-color-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.seg-btn:hover:not([aria-pressed=true]){color:var(--cb-color-text)}.seg-btn[aria-pressed=true]{background:var(--cb-color-surface);color:var(--cb-color-text);box-shadow:0 0 0 1px var(--cb-color-border)}.pills{flex-wrap:wrap;gap:6px;display:flex}.pill{border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-pill);background:var(--cb-color-surface);min-height:32px;color:var(--cb-color-text-muted);white-space:nowrap;cursor:pointer;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.pill:hover:not([aria-selected=true]){border-color:var(--cb-color-border-strong);color:var(--cb-color-text)}.pill[aria-selected=true]{border-color:var(--cb-color-primary-soft-border);background:var(--cb-color-primary-soft);color:var(--cb-color-primary-strong)}@media (width<=640px),(pointer:coarse){.pill{min-height:44px;padding:0 14px}}.badge{border-radius:var(--cb-radius-pill);background:var(--cb-paper-3);height:22px;color:var(--cb-color-text-muted);white-space:nowrap;flex:none;align-items:center;gap:4px;padding:0 8px;font-size:12px;font-weight:500;display:inline-flex}.badge .icon{width:12px;height:12px}.badge-accent{background:var(--cb-color-primary-soft);color:var(--cb-color-primary-strong)}.badge-success{background:var(--cb-color-success-soft);color:var(--cb-color-success)}.badge-warn{background:var(--cb-color-warning-soft);color:var(--cb-color-warning)}.card{background:var(--cb-color-surface);border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-lg)}.topbar{z-index:30;height:var(--app-topbar);padding:0 var(--app-gutter);background:var(--cb-color-surface);border-bottom:1px solid var(--cb-color-border);align-items:center;gap:24px;display:flex;position:sticky;top:0}.wordmark{color:var(--cb-color-text);letter-spacing:-.01em;flex:none;font-size:16px;font-weight:700;text-decoration:none}.topnav{align-items:center;gap:4px;min-width:0;display:flex}.topnav a{min-height:var(--app-target);border-radius:var(--cb-radius-md);color:var(--cb-color-text-muted);white-space:nowrap;align-items:center;gap:8px;padding:0 12px;font-weight:500;text-decoration:none;display:inline-flex}.topnav a:hover{background:var(--cb-paper-3);color:var(--cb-color-text)}.topnav a[aria-current=page]{background:var(--cb-color-primary-soft);color:var(--cb-color-primary-strong)}.topbar-end{align-items:center;gap:8px;margin-left:auto;display:flex}@media (width<=640px){.topbar{gap:12px}.topnav a{padding:0 10px}.topnav a .icon{display:none}}.pop{position:relative}.pop>summary{cursor:pointer;list-style:none}.pop>summary::-webkit-details-marker{display:none}.pop-panel{z-index:50;background:var(--cb-color-surface-raised);border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-lg);min-width:220px;box-shadow:var(--cb-shadow-pop);padding:6px;position:absolute;top:calc(100% + 6px);right:0}.menu-item{width:100%;min-height:var(--app-target);border-radius:var(--cb-radius-sm);color:var(--cb-color-text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0 10px;font-size:14px;text-decoration:none;display:flex}.menu-item:hover{background:var(--cb-paper-3)}.menu-item .icon{color:var(--cb-color-text-muted)}.menu-item.is-danger,.menu-item.is-danger .icon{color:var(--cb-color-danger)}.menu-sep{background:var(--cb-color-border);height:1px;margin:6px -6px}.menu-label{color:var(--cb-color-text-subtle);padding:6px 10px 4px;font-size:12px}.avatar{background:var(--cb-color-primary);width:32px;height:32px;color:var(--cb-color-on-primary);-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:600;display:inline-grid}.avatar-btn{width:var(--app-target);height:var(--app-target);border-radius:50%;place-items:center;display:grid}.pop-who{padding:8px 10px 10px}.pop-name{font-weight:600}.pop-handle{color:var(--cb-color-text-muted);font-size:13px}.pop-langs{gap:6px;padding:0 10px 6px;display:flex}.pop-langs .seg{width:100%}.pop-langs .seg-btn{flex:1}.dialog{border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-lg);background:var(--cb-color-surface);width:min(440px,100vw - 32px);color:var(--cb-color-text);box-shadow:var(--cb-shadow-pop);padding:0}.dialog::backdrop{background:#0f172a66}.dialog-head{justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 0;display:flex}.dialog-title{padding-top:6px;font-size:16px;font-weight:600;line-height:1.4}.dialog-head .icon-btn{margin:-2px -8px 0 0}.dialog-body{color:var(--cb-color-text-muted);padding:8px 20px 20px}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.dialog-warn{border-radius:var(--cb-radius-md);background:var(--cb-color-warning-soft);color:var(--cb-color-warning);gap:8px;margin-top:12px;padding:10px 12px;display:flex}.dialog-warn .icon{margin-top:2px}.page{max-width:var(--app-max);padding:32px var(--app-gutter) 64px;margin:0 auto}.page-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.page-title{letter-spacing:-.01em;font-size:24px;font-weight:600;line-height:1.25}.empty-state{text-align:center;color:var(--cb-color-text-muted);justify-items:center;gap:6px;padding:56px 16px;display:grid}.empty-state>.icon{width:28px;height:28px;color:var(--cb-color-text-subtle);margin-bottom:6px}.empty-state .btn{margin-top:10px}.empty-title{color:var(--cb-color-text);font-size:15px;font-weight:600}@media (width<=640px){.page{padding-top:20px}.page-title{font-size:20px}}.center-page{place-items:center;min-height:100dvh;padding:40px 16px;display:grid}.center-col{justify-items:center;gap:20px;width:100%;max-width:400px;display:grid}.center-col>.card{width:100%}.auth-card{gap:6px;padding:28px;display:grid}.auth-title{letter-spacing:-.01em;font-size:20px;font-weight:600}.auth-lede{color:var(--cb-color-text-muted);margin-bottom:14px}.auth-form{gap:16px;display:grid}.auth-form .btn{margin-top:4px}.auth-switch{color:var(--cb-color-text-muted);text-align:center}.auth-switch a{font-weight:500}@media (width<=640px){.auth-card{padding:20px}}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:16px;display:flex}.search{flex:0 320px;min-width:0;position:relative}.search>.icon{color:var(--cb-color-text-subtle);pointer-events:none;position:absolute;top:50%;left:12px;translate:0 -50%}.search .input{padding-left:36px}.results-count{color:var(--cb-color-text-muted);margin-bottom:12px;font-size:13px}.ex-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.ex-card{min-width:0;transition:border-color var(--cb-duration-fast) ease;flex-direction:column;gap:8px;padding:16px 16px 12px;display:flex;position:relative}.ex-card:hover{border-color:var(--cb-color-border-strong)}.ex-title{font-size:15px;font-weight:600;line-height:1.35}.ex-open{color:inherit;font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;padding:0}.ex-open:disabled{cursor:default}.ex-open:after{content:"";border-radius:inherit;position:absolute;inset:0}.ex-open:focus-visible{outline:none}.ex-card:has(.ex-open:focus-visible){outline:2px solid var(--cb-color-focus);outline-offset:2px}.ex-desc{color:var(--cb-color-text-muted);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ex-desc.is-empty{color:var(--cb-color-text-subtle)}.ex-tags{flex-wrap:wrap;gap:6px;display:flex}.tag{border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-sm);height:22px;color:var(--cb-color-text-muted);align-items:center;padding:0 8px;font-size:12px;display:inline-flex}.ex-badges{flex-wrap:wrap;gap:6px;display:flex}.ex-foot{align-items:center;gap:8px;margin-top:auto;margin-bottom:-4px;display:flex}.ex-author{color:var(--cb-color-text-subtle);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.ex-actions{z-index:1;align-items:center;gap:2px;margin-left:auto;display:flex;position:relative}.star-btn{min-height:var(--app-target);border-radius:var(--cb-radius-md);color:var(--cb-color-text-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:500;display:inline-flex}.star-btn:hover{background:var(--cb-paper-3);color:var(--cb-color-text)}.star-btn.is-on,.star-btn.is-on:hover{color:#d97706}.more{justify-content:center;margin-top:24px;display:flex}@media (width<=640px){.toolbar{flex-direction:column-reverse;align-items:stretch}.search{flex-basis:auto}.ex-grid{grid-template-columns:minmax(0,1fr);gap:12px}}.player{flex-direction:column;min-height:100vh;display:flex}.ptop{z-index:30;min-height:var(--app-topbar);padding:8px var(--app-gutter);background:var(--cb-color-surface);border-bottom:1px solid var(--cb-color-border);align-items:center;gap:12px;display:flex;position:sticky;top:0}.ptop .icon-btn{margin-left:-8px}.ptop-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;font-weight:600;overflow:hidden}.ptop-end{flex:none;align-items:center;gap:8px;display:flex}.pprogress{max-width:calc(var(--cb-content-max) + 2 * var(--app-gutter) + 64px);width:100%;padding:16px var(--app-gutter) 0;align-items:center;gap:12px;margin:0 auto;display:flex}.psteps{flex:1;gap:4px;display:flex}.pstep{cursor:pointer;background:0 0;border:0;flex:1;height:20px;padding:0;position:relative}.pstep:before{content:"";border-radius:var(--cb-radius-pill);background:var(--cb-color-border);height:6px;position:absolute;top:50%;left:0;right:0;translate:0 -50%}.pstep.is-done:before{background:var(--cb-color-primary)}.pstep.is-now:before{background:var(--cb-color-primary-soft-border)}.pstep.is-wrong:before{background:var(--cb-color-danger-border)}.pprogress-label{color:var(--cb-color-text-muted);flex:none;font-size:13px}.pbar-track{border-radius:var(--cb-radius-pill);background:var(--cb-color-border);flex:1;height:6px;overflow:hidden}.pbar-track>span{border-radius:inherit;background:var(--cb-color-primary);height:100%;transition:width var(--cb-duration-base) ease;display:block}.pbody{width:100%;max-width:calc(var(--cb-content-max) + 2 * var(--app-gutter) + 64px);padding:16px var(--app-gutter) 48px;align-content:start;gap:16px;margin:0 auto;display:grid}.plede{color:var(--cb-color-text-muted)}.pcard{min-width:0;padding:32px}.pcard .cb-view{max-width:none}.psummary{flex-wrap:wrap;gap:8px;display:flex}.badge-danger{background:var(--cb-color-danger-soft);color:var(--cb-color-danger)}.pactions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.pactions-main{gap:8px;display:flex}.pactions-meta{color:var(--cb-color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.result{flex-wrap:wrap;align-items:center;gap:16px 20px;padding:20px 24px;display:flex}.result-pct{letter-spacing:-.02em;min-width:80px;font-size:32px;font-weight:700;line-height:1}.result-pct.is-good{color:var(--cb-color-success)}.result-pct.is-mid{color:var(--cb-color-warning)}.result-pct.is-low{color:var(--cb-color-danger)}.result-text{flex:220px;gap:2px;display:grid}.result-title{font-size:16px;font-weight:600}.result-actions{flex-wrap:wrap;gap:8px;display:flex}@media (width<=640px){.ptop{flex-wrap:wrap}.pcard{padding:20px 16px}.pactions-main{width:100%}.pactions-main .btn{flex:1}.result-actions{width:100%}.result-actions .btn{flex:1}}.editor-page .cb-editor{--cb-editor-top:var(--app-topbar)}.editor-page cb-editor{display:block}.ws{grid-template-columns:280px minmax(0,1fr);align-items:start;display:grid}.ws-nav{top:var(--app-topbar);z-index:25;height:calc(100vh - var(--app-topbar));height:calc(100dvh - var(--app-topbar));background:var(--cb-color-surface);border-right:1px solid var(--cb-color-border);flex-direction:column;gap:12px;padding:16px 12px 12px;display:flex;position:sticky}.ws-nav-head{align-items:center;gap:8px;padding:0 4px;display:flex}.ws-nav-title{flex:1;font-size:14px;font-weight:600}.ws-nav-close{display:none}.ws-search{flex:none}.ws-list-wrap{flex:1;min-height:0;margin:0 -4px;padding:0 4px;overflow-y:auto}.ws-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.ws-item{border-radius:var(--cb-radius-md);color:var(--cb-color-text);gap:2px;padding:8px 10px;text-decoration:none;display:grid}.ws-item:hover{background:var(--cb-paper-3)}.ws-item[aria-current=page]{background:var(--cb-color-primary-soft)}.ws-item[aria-current=page] .ws-item-title{color:var(--cb-color-primary-strong)}.ws-item-title{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.ws-item-meta{color:var(--cb-color-text-subtle);align-items:center;gap:6px;font-size:12px;display:flex}.dot{border-radius:50%;flex:none;width:6px;height:6px}.dot.is-private{background:#94a3b8}.dot.is-public{background:var(--cb-mint)}.ws-note{color:var(--cb-color-text-subtle);padding:8px 10px;font-size:13px}.ws-meter{border-top:1px solid var(--cb-color-border);color:var(--cb-color-text-muted);gap:6px;padding:12px 4px 0;font-size:12px;display:grid}.ws-meter-text{align-items:center;gap:6px;display:inline-flex}.ws-meter-text .icon{width:14px;height:14px}.meter{border-radius:var(--cb-radius-pill);background:var(--cb-color-border);height:4px;display:block;overflow:hidden}.meter>i{border-radius:inherit;background:var(--cb-color-primary);height:100%;display:block}.meter.is-full>i{background:var(--cb-color-danger-border)}.ws-backdrop{display:none}.ws-pane{min-width:0;min-height:calc(100vh - var(--app-topbar));background:var(--app-bg)}.ws-bar{background:var(--cb-color-surface);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 24px 8px;display:flex}.ws-toggle{display:none}.ws-title{border-radius:var(--cb-radius-md);letter-spacing:-.01em;background:0 0;border:1px solid #0000;flex:200px;min-width:0;height:40px;margin-left:-8px;padding:0 8px;font-size:18px;font-weight:600}.ws-title:hover{border-color:var(--cb-color-border)}.ws-title:focus{border-color:var(--cb-color-primary);box-shadow:var(--cb-shadow-focus);outline:none}.ws-saved{color:var(--cb-color-text-subtle);white-space:nowrap;flex:none;align-items:center;gap:6px;font-size:13px;display:inline-flex}.ws-saved.is-dirty:before{content:"";background:var(--cb-hi-vis);border-radius:50%;width:6px;height:6px}.ws-saved.is-error{color:var(--cb-color-danger);font-weight:500}.ws-actions{flex:none;align-items:center;gap:8px;display:flex}.ws-actions .seg-btn .icon{width:14px;height:14px}.ws-desc{background:var(--cb-color-surface);border-bottom:1px solid var(--cb-color-border);align-items:center;gap:12px;padding:0 24px 12px;display:flex}.ws-desc-label{color:var(--cb-color-text-muted);flex:none;font-size:13px}.ws-desc .input{min-height:32px;font-size:13px}.ws-bar-empty{background:0 0;padding-bottom:0;display:none}.ws-empty{padding-top:96px}@media (width<=1199px){.ws{grid-template-columns:minmax(0,1fr)}.ws-nav{z-index:60;width:min(320px,86vw);height:auto;box-shadow:var(--cb-shadow-pop);visibility:hidden;transition:transform var(--cb-duration-base) var(--cb-ease-standard), visibility 0s linear var(--cb-duration-base);padding-top:12px;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.ws-nav.is-open{visibility:visible;transition:transform var(--cb-duration-base) var(--cb-ease-standard);transform:none}.ws-nav-close{margin-right:-6px;display:inline-grid}.ws-backdrop{z-index:55;background:#0f172a66;display:block;position:fixed;inset:0}.ws-toggle{display:inline-flex}.ws-bar-empty{display:flex}}@media (width<=640px){.ws-bar{padding:12px 16px 8px}.ws-title{flex-basis:100%;order:3;margin-left:-8px}.ws-saved{margin-left:auto}.ws-actions{flex-wrap:wrap;order:4;width:100%}.ws-actions .seg{width:100%}.ws-actions .seg-btn,.ws-actions .btn{flex:1}.ws-desc{flex-direction:column;align-items:stretch;gap:4px;padding:0 16px 12px}.ws-empty{padding-top:48px}}.page-narrow{max-width:760px}.acc-stack{gap:16px;display:grid}.acc-card{gap:16px;min-width:0;padding:24px;display:grid}.acc-title{align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.acc-lede{color:var(--cb-color-text-muted);margin-top:-8px}.acc-form{gap:16px;max-width:400px;display:grid}.acc-who{align-items:center;gap:14px;display:flex}.acc-avatar{width:44px;height:44px;font-size:15px}.acc-who-text{gap:2px;min-width:0;display:grid}.acc-handle{overflow-wrap:anywhere;align-items:center;gap:8px;font-weight:600;display:flex}.acc-row{border-top:1px solid var(--cb-color-border);justify-content:space-between;align-items:center;gap:16px;padding-top:16px;display:flex}.empty{color:var(--cb-color-text-subtle)}.invite-new{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.invite-new .field{flex:0 200px}.invite-new .invite-max{flex:0 120px}.token-new .field:first-child{flex:240px}.invites,.tokens{border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-md);margin:0;padding:0;list-style:none;display:grid}.invite,.token{flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0;padding:10px 12px;display:flex}.invite+.invite,.token+.token{border-top:1px solid var(--cb-color-border)}.invite-code,.token-prefix{font-family:var(--cb-font-code);font-size:13px}.invite-meta,.token-meta{color:var(--cb-color-text-subtle);font-size:12px}.invite-actions,.token-actions{gap:4px;margin-left:auto;display:flex}.invite-uses{overflow-wrap:anywhere;flex-basis:100%}.token-main{align-items:center;gap:8px;min-width:0;display:flex}.token-name{overflow-wrap:anywhere;font-weight:500}.token .token-actions{order:1}.token .token-prefix{flex-basis:100%;order:2}.token .token-meta{flex-basis:100%;order:3}.btn.is-danger{color:var(--cb-color-danger)}.token-reveal{border:1px solid var(--cb-color-primary-soft-border);border-radius:var(--cb-radius-md);background:var(--cb-color-primary-soft-2);gap:12px;padding:16px;display:grid}.token-reveal-title{font-size:14px;font-weight:600}.token-reveal-warn{color:var(--cb-color-warning);align-items:center;gap:8px;font-size:13px;display:flex}.copyable{gap:6px;min-width:0;display:grid}.copyable-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.copyable-value{border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-sm);background:var(--cb-color-surface);font-family:var(--cb-font-code);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:8px 10px;font-size:12px;line-height:1.5;display:block;overflow-x:auto}.copyable-inline{grid-template-columns:minmax(0,1fr) auto;align-items:center}.mcp-help{border-radius:var(--cb-radius-md);background:var(--cb-color-surface-sunken);gap:8px;padding:14px 16px;display:grid}.mcp-title{font-size:14px;font-weight:600}@media (width<=640px){.acc-card{padding:16px}.acc-row{flex-direction:column;align-items:flex-start}.copyable-inline{grid-template-columns:minmax(0,1fr)}.copyable-inline .btn{justify-self:start}}.center-col-wide{max-width:520px}.consent{width:100%}.consent-card{gap:20px;padding:28px;display:grid}.consent-head{gap:6px;display:grid}.consent-title{letter-spacing:-.01em;font-size:20px;font-weight:600}.consent-lede{color:var(--cb-color-text-muted)}.consent-facts{border:1px solid var(--cb-color-border);border-radius:var(--cb-radius-md);margin:0;display:grid}.consent-fact{gap:4px;padding:12px 14px;display:grid}.consent-fact+.consent-fact{border-top:1px solid var(--cb-color-border)}.consent-fact dt{color:var(--cb-color-text-subtle);font-size:12px}.consent-fact dd{gap:2px;margin:0;display:grid}.consent-client{overflow-wrap:anywhere;font-weight:600}.consent-host{font-family:var(--cb-font-code);overflow-wrap:anywhere;font-size:13px}.consent-note{color:var(--cb-color-text-subtle);font-size:12px}.consent-can{gap:8px;display:grid}.consent-h{font-size:14px;font-weight:600}.consent-can ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.consent-can li{align-items:flex-start;gap:8px;display:flex}.consent-can li .icon{color:var(--cb-color-success);margin-top:2px}.consent-foot{border-top:1px solid var(--cb-color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;display:flex}.consent-who{color:var(--cb-color-text-muted);font-size:13px}.consent-actions{gap:8px;display:flex}.consent-leaving{color:var(--cb-color-text-muted)}@media (width<=640px){.consent-card{padding:20px}.consent-actions{width:100%}.consent-actions .btn{flex:1}}
