:root{--bg:var(--gray-050);--bg-soft:var(--bg-inset);--surface:var(--white);--card-from:var(--white);--card-to:var(--white);--ink:var(--fg);--ink-soft:var(--fg-muted);--ink-faint:var(--fg-muted);--line:var(--border);--line-soft:var(--code-line);--accent-deep:var(--accent-strong);--code-ink:var(--code-fg);--surface-alt:var(--accent-soft);--surface-raised:var(--bg-soft);--surface-2:var(--bg-inset);--hover:var(--accent-soft);--input-bg:var(--bg-subtle);--shadow-md:var(--shadow);--shadow-lg:var(--shadow);--tier-newbie:var(--fg-muted);--tier-pupil:var(--easy);--tier-specialist:var(--accent);--tier-expert:var(--medium);--tier-info:var(--accent);--font:var(--font-body);--mono:var(--font-code);font-family:var(--font);font-size:100%;line-height:var(--leading-normal);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root[data-theme=dark]{--bg:var(--near-black);--surface:var(--gray-900);--card-from:var(--gray-900);--card-to:var(--gray-900)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0;padding:0}body{background:var(--bg)}button{cursor:pointer;font-family:inherit}.app{min-height:100vh;display:flex;flex-direction:column;min-height:100dvh}.topbar{position:sticky;z-index:30;display:flex;background:color-mix(in srgb,var(--surface)86%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);flex:none;align-items: center;gap:24px;height:58px;padding:0 28px;top:0}.topbar-actions{display:flex;align-items: center;gap:14px;min-width:0;margin-left:auto}.nav-menu{position:relative}.nav-menu-trigger{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font-size:var(--text-base);cursor:pointer;justify-content:center;align-items: center;width:34px;height:34px;padding:0;transition:color .12s,border-color .12s,background .12s;line-height:1}.nav-menu-trigger:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.nav-menu-pop{position:absolute;z-index:40;display:flex;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:menu-in .14s ease;flex-direction:column;gap:2px;min-width:210px;padding:8px;top:calc(100% + 10px);right:0}.nav-menu-item{text-align:left;border-radius:var(--radius-sm);color:var(--ink);font-size:var(--text-base);cursor:pointer;background:0 0;border:none;width:100%;padding:9px 12px;font-weight:600}.nav-menu-item:hover{background:var(--accent-soft);color:var(--accent)}.nav-menu-theme{border-bottom:1px solid var(--line);margin-bottom:4px;padding-bottom:6px}.settings-menu{width:100%;margin-top:auto}.settings-pop{position:fixed;z-index:200;display:flex;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:menu-in .14s ease;flex-direction:column;gap:2px;min-width:220px;padding:8px}.brand{display:inline-flex;font-family:var(--font-head);font-size:var(--text-lg);letter-spacing:.01em;color:var(--ink);background:0 0;border:none;align-items: center;gap:8px;font-weight:700}.brand-mark{display:inline-flex;color:var(--brand);align-items: center}h1,h2,h3,h4{font-family:var(--font-head)}.env-badge{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--invert-fg);user-select:none;border-radius:999px;align-self: center;margin-left:2px;padding:2px 8px;font-weight:800;line-height:1.4}.env-badge-dev{background:var(--bg-inset);color:var(--ink-soft)}.env-badge-stage{background:var(--warn-bg);color:var(--warn)}.env-badge-prod{background:var(--err-bg);color:var(--err)}.auth-btn{display:inline-flex;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:var(--text-sm);border-radius:9px;align-items: center;gap:7px;padding:7px 13px;transition:border-color .13s,color .13s;font-weight:600}.auth-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.auth-btn:disabled{opacity:.6;cursor:default}.auth-menu{position:relative;display:inline-flex}.auth-trigger{display:inline-flex;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;align-items: center;gap:5px;padding:5px 8px;transition:border-color .13s}.auth-trigger:hover{border-color:color-mix(in srgb,var(--accent)45%,var(--line))}.auth-caret{font-size:var(--text-xs);color:var(--ink-faint)}.auth-dropdown{position:absolute;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);animation:menu-in .14s ease;z-index:50;min-width:220px;padding:8px;top:calc(100% + 10px);right:0}.auth-identity{display:flex;align-items: center;gap:10px;padding:6px 8px}.auth-identity-text{display:flex;flex-direction:column;min-width:0}.auth-identity-name{font-size:var(--text-sm);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.auth-identity-email{font-size:var(--text-sm);color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-divider{background:var(--line-soft);height:1px;margin:6px 0}.auth-menu-item{display:flex;text-align:left;border-radius:var(--radius-sm);color:var(--ink);font-size:var(--text-sm);cursor:pointer;background:0 0;border:1px solid #0000;align-items: center;gap:9px;width:100%;padding:8px 10px;transition:background .13s,color .13s;font-weight:600}.auth-menu-item:hover{background:var(--bg-soft);color:var(--accent)}.auth-menu-icon{display:inline-flex;color:var(--ink-faint)}.auth-menu-item:hover .auth-menu-icon{color:var(--accent)}.share-btn{display:inline-flex;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:var(--text-sm);cursor:pointer;border-radius:9px;align-items: center;gap:7px;padding:7px 13px;transition:border-color .13s,color .13s,background .13s;font-weight:600}.share-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.share-btn-ic{display:inline-flex}.share-btn.is-ok{border-color:var(--accent);color:var(--accent)}.share-btn.is-err{border-color:var(--danger);color:var(--danger)}.pro-badge{display:inline-flex;background:var(--accent);color:var(--invert-fg);font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:999px;align-items: center;gap:5px;padding:6px 11px;transition:filter .13s,box-shadow .13s;font-weight:700}.pro-badge:hover{filter:brightness(1.06);box-shadow:0 1px 8px color-mix(in srgb,var(--accent)45%,transparent)}.pro-badge-mark{display:inline-flex;align-items: center}.pro-badge-mark svg{fill:currentColor;stroke:none}.pro-badge-free{color:var(--ink-soft);border-color:var(--line);background:0 0}.pro-badge-free:hover{filter:none;background:var(--surface-alt);color:var(--ink);box-shadow:none}.pro-badge-loading{color:var(--ink-faint);border-color:var(--line);cursor:default;background:0 0}.pro-badge-loading:hover{filter:none;box-shadow:none}.pro-badge-dot{animation:sync-pulse .9s ease-in-out infinite;background:currentColor;border-radius:50%;width:7px;height:7px}@media (max-width:640px){.share-btn{padding:7px 9px}.share-btn-label{display:none}.pro-badge{padding:6px 8px}.pro-badge-label{display:none}.pro-badge-free .pro-badge-label,.pro-badge-loading .pro-badge-label{display:inline}}.auth-avatar{object-fit:cover;border-radius:50%;width:20px;height:20px}.auth-avatar-fallback{display:inline-flex;background:var(--accent);color:var(--invert-fg);font-size:var(--text-xs);justify-content:center;align-items: center;font-weight:700}.sync-pill{display:inline-flex;font-size:var(--text-sm);color:var(--ink-soft);border:1px solid var(--line);background:var(--bg-soft);white-space:nowrap;border-radius:999px;align-items: center;gap:6px;padding:5px 10px;font-weight:600}.sync-dot{display:inline-flex;align-items: center}.sync-dot svg{width:11px;height:11px}.save-sync-btn{display:inline-flex;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;border-radius:9px;align-items: center;gap:7px;padding:7px 13px;transition:border-color .13s,color .13s,background .13s;font-weight:600}.save-sync-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.save-sync-btn:disabled{cursor:default}.save-sync-ic{display:inline-flex;font-size:var(--text-base);align-items: center;line-height:1}.save-sync-btn.is-ok{color:var(--ok);border-color:color-mix(in srgb,var(--ok)35%,transparent)}.save-sync-btn.is-err{color:var(--err);border-color:color-mix(in srgb,var(--err)35%,transparent)}.save-sync-btn.is-busy{color:var(--accent);border-color:color-mix(in srgb,var(--accent)35%,transparent)}.save-sync-btn.is-busy .save-sync-ic{animation:sync-pulse .9s ease-in-out infinite}.auth-error{font-size:var(--text-sm);color:var(--err);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px;font-weight:500}@media (max-width:900px){.auth-error{display:none}}.sync-signedout{color:var(--ink-faint)}.sync-syncing{color:var(--accent)}.sync-syncing .sync-dot{animation:sync-pulse .9s ease-in-out infinite}.sync-synced{color:var(--ink-soft);border-color:var(--line)}.sync-synced .sync-dot{color:var(--ok)}.sync-error{color:var(--err);border-color:color-mix(in srgb,var(--err)35%,transparent)}@keyframes sync-pulse{0%,to{opacity:1}50%{opacity:.3}}.appearance{display:flex;gap:var(--space-4);padding:var(--space-2)var(--space-1);flex-direction:column;min-width:220px}.appearance-row{display:flex;gap:var(--space-2);flex-direction:column}.appearance-label{font-size:var(--text-xs);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted)}.appearance-switch{display:inline-flex;cursor:pointer;font-family:var(--font-body);color:var(--ink-soft);background:0 0;border:0;align-items: center;gap:10px;padding:0}.appearance-switch-side{font-size:var(--text-sm);font-weight:var(--weight-medium);transition:color .13s}.appearance-switch:not(.is-dark) .appearance-switch-side:first-child,.appearance-switch.is-dark .appearance-switch-side:last-child{color:var(--ink);font-weight:var(--weight-bold)}.appearance-switch-track{position:relative;background:var(--bg-inset);border:var(--border-w)solid var(--border);border-radius:999px;flex:none;width:40px;height:22px;transition:background .15s,border-color .15s}.appearance-switch.is-dark .appearance-switch-track{background:var(--accent);border-color:var(--accent)}.appearance-switch-thumb{position:absolute;box-shadow:var(--shadow-sm);background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;top:2px;left:2px}.appearance-switch.is-dark .appearance-switch-thumb{transform:translate(18px)}.appearance-switch:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-sm)}.appearance-select{appearance:none;-webkit-appearance:none;font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink);background-color:var(--bg-subtle);border:var(--border-w)solid var(--border);border-radius:var(--radius);cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888888' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'><path d='M6 9l6 6 6-6'/></svg>");background-position:right 10px center;background-repeat:no-repeat;width:100%;padding:8px 32px 8px 11px;transition:border-color .13s}.appearance-select:hover{border-color:var(--border-strong)}.appearance-select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.appearance-select option{background:var(--surface);color:var(--ink)}@keyframes menu-in{0%{opacity:0;transform:translateY(-6px)}}.shell-body{display:flex;flex:auto;min-height:0}.shell-content{display:flex;flex-direction:column;flex:auto;min-width:0;min-height:0}.shell-lower{display:flex;flex:auto;min-width:0;min-height:0}.nav-badge{display:grid;color:inherit;font-size:var(--text-xl);flex:none;place-items: center;width:26px;height:26px;font-weight:700;line-height:1}.nav-badge-mono{font-family:var(--mono);font-size:var(--text-lg)}.nav-badge-mark{display:inline-flex}.activity-bar{display:flex;background:var(--bg);border-right:1px solid var(--line);overflow-y:auto;scrollbar-width:none;flex-direction:column;flex:none;gap:0;width:48px;padding:4px 0}.activity-bar::-webkit-scrollbar{display:none}body.klyroni-is-pro .nav-hide-pro,body:not(.klyroni-authed) .nav-auth-only{display:none!important}.act-item{position:relative;display:flex;color:var(--ink-faint);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:100%;height:38px;padding:0;transition:color .14s,background .14s}.act-item .nav-badge{width:26px;height:26px}.act-item:hover{color:var(--ink);background:color-mix(in srgb,var(--ink)7%,transparent)}.act-item.is-active{color:var(--accent);background:color-mix(in srgb,var(--accent)12%,transparent)}.act-item.is-active:before{content:"";position:absolute;background:var(--accent);border-radius:0 3px 3px 0;width:3px;top:5px;bottom:5px;left:0}.nav-hamburger{display:none;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font-size:var(--text-lg);cursor:pointer;justify-content:center;align-items: center;width:34px;height:34px;padding:0;transition:color .12s,border-color .12s,background .12s;line-height:1}.nav-hamburger:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.nav-drawer{display:none}@media (max-width:920px){.activity-bar{display:none}.nav-hamburger{display:inline-flex}.nav-drawer{display:block;position:fixed;z-index:60;visibility:hidden;pointer-events:none;inset:0}.nav-drawer.is-open{visibility:visible;pointer-events:auto}.nav-drawer-backdrop{position:absolute;background:var(--scrim);opacity:0;transition:opacity .2s;inset:0}.nav-drawer.is-open .nav-drawer-backdrop{opacity:1}.nav-drawer-panel{position:absolute;display:flex;background:color-mix(in srgb,var(--surface)88%,var(--ink)9%);border-right:1px solid var(--line);box-shadow:var(--shadow-lg);overflow-y:auto;flex-direction:column;gap:4px;width:min(82vw,300px);padding:16px 12px;transition:transform .22s;top:0;bottom:0;left:0;transform:translate(-100%)}.nav-drawer.is-open .nav-drawer-panel{transform:translate(0)}.nav-drawer-head{display:flex;border-bottom:1px solid var(--line);align-items: center;gap:11px;margin-bottom:8px;padding:4px 8px 16px}.nav-drawer-mark{display:inline-flex;color:var(--accent)}.nav-drawer-brand{display:flex;flex-direction:column;line-height:1.2}.nav-drawer-name{font-size:var(--text-lg);letter-spacing:-.01em;color:var(--ink);font-weight:800}.nav-drawer-tag{font-size:var(--text-xs);color:var(--ink-faint);font-weight:600}.drawer-item{display:flex;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:13px;align-items: center;gap:13px;width:100%;padding:11px 12px;transition:background .14s}.drawer-item:hover{background:color-mix(in srgb,var(--ink)5%,transparent)}.drawer-item.is-active{background:color-mix(in srgb,var(--nav-accent,var(--accent))12%,transparent)}.drawer-text{display:flex;flex-direction:column;gap:1px;min-width:0}.drawer-kicker{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--nav-accent,var(--accent));font-weight:700}.drawer-name{font-size:var(--text-base);letter-spacing:-.01em;color:var(--ink);font-weight:700}.nav-drawer-settings{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:2px;margin-top:auto;padding-top:10px}}.page{flex:1;width:100%;padding:18px max(16px,50% - 600px) 24px}html,body{overflow:hidden;height:100%}.app{height:100vh;height:100dvh}.page{overflow-y:auto;min-height:0}@media (min-width:901px){.page:has(.fill-page){overflow:hidden;display:flex;flex-direction:column;padding-bottom:24px}.fill-page{display:flex;flex-direction:column;flex:auto;min-height:0}.fill-page>:not(.fill-scroll){flex:none}.fill-scroll{overflow-y:auto;scrollbar-width:thin;flex:auto;min-height:0;padding:2px 4px 10px 2px}}.eyebrow{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin:0 0 6px;font-weight:700}.section-title-lg{font-size:var(--text-2xl);letter-spacing:-.02em;color:var(--ink);margin:0 0 8px;font-weight:800;line-height:1.12}.section-lead{color:var(--ink-soft);font-size:var(--text-base);max-width:560px;margin:0 0 18px}.loading,.error,.empty{color:var(--ink-soft);padding:24px 0}.error{color:var(--err)}.login-gate{display:flex;text-align:center;flex-direction:column;align-items: center;max-width:420px;margin:80px auto 0;padding:0 20px}.login-gate-lock{background:var(--accent-soft);display:flex;color:var(--accent);border-radius:50%;justify-content:center;align-items: center;width:56px;height:56px;margin-bottom:20px}.login-gate-lock svg{width:26px;height:26px}.login-gate-title{font-size:var(--text-2xl);letter-spacing:-.02em;margin:0 0 12px;font-weight:800}.login-gate-desc{font-size:var(--text-base);color:var(--ink-soft);margin:0 0 32px;line-height:1.6}.login-gate-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.home{padding-top:24px}.home-title{font-size:var(--text-3xl);letter-spacing:-.03em;margin:0 0 10px;font-weight:800}.home-sub{font-size:var(--text-lg);color:var(--ink-soft);margin:0 0 44px}@media (min-width:901px) and (max-height:760px){.home{padding-top:12px}.home .eyebrow{margin-bottom:6px}.home-title{font-size:var(--text-3xl);margin:0 0 6px}.home-sub{font-size:var(--text-base);margin:0 0 20px}}@media (min-width:901px) and (max-height:620px){.home{padding-top:8px}.home-title{font-size:var(--text-3xl);margin:0 0 4px}.home-sub{margin:0 0 12px}}.tile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-auto-rows:max-content;align-content: start;align-items:stretch;gap:22px}@media (max-width:360px){.tile-grid{grid-template-columns:1fr}}.scratch-tile .velocity-kicker,.scratch-tile .velocity-name,.scratch-tile .velocity-cta{color:var(--tier-specialist)}.scratch-tile:hover{border-color:color-mix(in srgb,var(--tier-specialist)45%,var(--line))}.scratch-tile .velocity-glow{background:radial-gradient(circle,color-mix(in srgb,var(--tier-specialist)24%,transparent),transparent 70%)}.scratch-icon{background:var(--tier-specialist);font-family:var(--mono);font-size:var(--text-lg);box-shadow:0 6px 16px color-mix(in srgb,var(--tier-specialist)38%,transparent);font-weight:700}.howto-tile .velocity-kicker,.howto-tile .velocity-name,.howto-tile .velocity-cta{color:var(--tier-newbie)}.howto-tile:hover{border-color:color-mix(in srgb,var(--tier-newbie)45%,var(--line))}.howto-tile .velocity-glow{background:radial-gradient(circle,color-mix(in srgb,var(--tier-newbie)22%,transparent),transparent 70%)}.howto-icon{background:var(--tier-newbie);font-size:var(--text-xl);box-shadow:0 6px 16px color-mix(in srgb,var(--tier-newbie)38%,transparent);font-weight:800}.velocity-tile{position:relative;overflow:hidden;text-align:left;display:flex;border:1px solid var(--line);background:linear-gradient(160deg,var(--card-from)0%,var(--card-to)100%);box-shadow:var(--shadow-md);border-radius:22px;flex-direction:column;padding:30px 30px 28px;transition:transform .18s,box-shadow .18s,border-color .18s}.velocity-tile:hover{box-shadow:var(--shadow-lg);border-color:color-mix(in srgb,var(--accent)40%,var(--line));transform:translateY(-4px)}.velocity-head{display:flex;align-items: center;gap:12px;margin-bottom:18px}.velocity-icon{display:grid;background:var(--accent);color:var(--invert-fg);font-size:var(--text-xl);border-radius:12px;place-items: center;width:44px;height:44px}.velocity-kicker{font-size:var(--text-sm);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:700}.velocity-name{font-size:var(--text-3xl);letter-spacing:-.02em;margin:0 0 10px;font-weight:800}.velocity-desc{color:var(--ink-soft);font-size:var(--text-base);margin:0 0 22px}.velocity-cta{display:inline-flex;color:var(--accent);align-self: flex-start;align-items: center;gap:8px;margin-top:auto;font-weight:700}.velocity-tile:hover .arrow{transform:translate(4px)}.arrow{transition:transform .18s}.rating-grid,.problem-grid,.tag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-content: start;gap:14px}.rating-card,.problem-card,.tag-card{position:relative;display:flex;text-align:left;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(165deg,var(--card-from)0%,var(--card-to)100%);box-shadow:var(--shadow-sm);flex-direction:column;align-items: flex-start;gap:5px;padding:16px 18px;transition:transform .16s,box-shadow .16s,border-color .16s}.rating-card:hover,.problem-card:hover,.tag-card:hover{box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--accent)35%,var(--line));transform:translateY(-2px)}.rating-tier,.problem-card-name,.tag-name{font-size:var(--text-base);color:var(--accent);text-align:left;margin:0;font-weight:700;line-height:1.25}.tag-name{text-transform:capitalize}.rating-big,.problem-num,.tag-count{position:static;font-size:var(--text-sm);color:var(--ink-faint);font-weight:600;line-height:1}.tier-badge{display:inline-block;font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:color-mix(in srgb,currentColor 14%,transparent);border-radius:999px;padding:4px 10px;font-weight:700}.tier-badge.tier-newbie,.tier-text.tier-newbie{color:var(--tier-newbie)}.tier-badge.tier-pupil,.tier-text.tier-pupil{color:var(--tier-pupil)}.tier-badge.tier-specialist,.tier-text.tier-specialist{color:var(--tier-specialist)}.tier-badge.tier-expert,.tier-text.tier-expert{color:var(--tier-expert)}.tier-text{font-weight:700}.list-head{display:flex;justify-content:space-between;align-items: flex-start;gap:24px;margin-bottom:20px}.list-head .section-lead{margin-bottom:0}.search{border:1px solid var(--line);background:var(--surface);font-size:var(--text-base);color:var(--ink);box-shadow:var(--shadow-sm);outline:none;border-radius:999px;flex-shrink:0;width:240px;padding:10px 14px;transition:border-color .16s,box-shadow .16s}.search::placeholder{color:var(--ink-faint)}.search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}@media (max-width:900px){.rating-grid,.problem-grid,.tag-grid{grid-template-columns:repeat(2,1fr);gap:12px}.rating-tier,.problem-card-name,.tag-name{font-size:var(--text-base)}}.detail{display:grid;grid-template-columns:340px minmax(0,1fr);align-items:stretch;gap:26px;height:calc(100vh - 100px);min-height:420px}.detail-speed,.detail-acceleration,.detail-velocity{display:flex;justify-content:center;align-items: center}.detail-speed .meta-card,.detail-acceleration .meta-card,.detail-velocity .meta-card{width:100%;max-width:420px}.detail-rail{display:flex;flex-direction:column;gap:20px;height:100%;min-height:0}.meta-card,.examples-card,.statement-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);min-width:0}.meta-card{flex:none;padding:22px}.meta-title{font-size:var(--text-2xl);letter-spacing:-.02em;margin:0 0 20px;font-weight:800}.speed-facts{display:grid;grid-template-columns:auto 1fr;font-size:var(--text-base);align-items:baseline;gap:8px 14px;margin:0 0 20px}.speed-facts dt{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em;font-weight:700;font-size:var(--text-xs);margin:0}.speed-facts dd{word-break:break-word;min-width:0;margin:0}.speed-facts code{font-family:var(--mono,ui-monospace,monospace);font-weight:700}.speed-url{color:var(--accent);text-decoration:none}.speed-url:hover{text-decoration:underline}.meta-actions{display:flex;flex-direction:column;gap:10px}.btn{display:inline-flex;border-radius:var(--radius-sm);font-size:var(--text-base);text-decoration:none;border:1px solid #0000;justify-content:center;align-items: center;gap:8px;padding:12px 16px;transition:transform .14s,box-shadow .14s,background .14s;font-weight:700}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(180deg,var(--accent)0%,var(--accent-deep)100%);color:var(--invert-fg);box-shadow:0 6px 16px color-mix(in srgb,var(--accent)36%,transparent)}.btn-primary:hover{box-shadow:0 8px 20px color-mix(in srgb,var(--accent)46%,transparent)}.btn-solve{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn-solve:hover{border-color:var(--accent);color:var(--accent)}.solve-icon{font-size:var(--text-xs)}.ext{font-size:var(--text-sm);opacity:.85}.solve-note{font-size:var(--text-sm);color:var(--ink-soft);background:var(--bg-soft);border:1px dashed var(--line);border-radius:var(--radius-sm);margin:14px 0 0;padding:10px 12px}.examples-card{display:flex;flex-direction:column;flex:auto;min-height:0;padding:20px}.examples-scroll{overflow-y:auto;scrollbar-width:thin;flex:auto;min-height:0}.examples-title{font-size:var(--text-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex:none;margin:0 0 14px;font-weight:700}.sample+.sample{border-top:1px solid var(--line-soft);margin-top:18px;padding-top:18px}.sample-label{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 10px;font-weight:700}.io-block+.io-block{margin-top:12px}.io-head{display:flex;justify-content:space-between;align-items: center;margin-bottom:6px}.io-head span{font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-weight:700}.copy-btn{border:1px solid var(--line);background:var(--bg-soft);font-size:var(--text-xs);color:var(--ink-soft);border-radius:7px;padding:3px 9px;transition:all .14s;font-weight:600}.copy-btn:hover{border-color:var(--accent);color:var(--accent)}.io-pre{background:var(--bg-soft);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-sm);font-family:var(--mono);font-size:var(--text-sm);white-space:pre;overflow:auto;scrollbar-width:thin;max-height:230px;margin:0;padding:12px 14px;line-height:1.6}.statement-card{overflow:auto;scrollbar-width:thin;min-height:0;max-height:100%;padding:30px 34px 38px}.statement-card::-webkit-scrollbar{width:10px;height:10px}.statement-card::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--ink)28%,transparent);border-radius:5px}.statement-card::-webkit-scrollbar-track{background:0 0}.cf-body .katex-display,.cf-header .katex-display{overflow-x:auto;overflow-y:hidden}.cf-body,.cf-header{color:var(--ink);font-size:var(--text-base);line-height:1.7}.cf-body p{margin:0 0 14px}.cf-body ul,.cf-body ol{margin:0 0 14px;padding-left:22px}.cf-body li{margin-bottom:6px}.cf-body a{color:var(--accent);text-decoration:none}.cf-body a:hover{text-decoration:underline}.cf-header .header{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:22px}.cf-header .title{font-size:var(--text-xl);letter-spacing:-.02em;color:var(--ink);margin-bottom:18px;font-weight:800}.cf-header .header>div:not(.title){display:inline-block;font-size:var(--text-base);color:var(--ink);margin-bottom:4px;margin-right:36px}.cf-header .property-title{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:2px;font-weight:700}.cf-spec,.cf-note-block{margin-top:26px}.section-title{font-size:var(--text-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-weight:700}.cf-note-block .section-title{color:var(--ink-soft)}.tex-font-style-bf{font-weight:700}.tex-font-style-it{font-style:italic}.tex-font-style-tt{font-family:var(--mono);background:var(--bg-soft);border:1px solid var(--line-soft);border-radius:5px;padding:1px 5px;font-size:.9em}.cf-body .sample-tests{display:none}.katex{font-size:1.02em}@media (max-width:900px){.detail{grid-template-columns:1fr;height:auto;min-height:0}.detail-rail{display:contents}.examples-card{overflow:visible;max-height:none}.statement-card{overflow:auto;max-height:72vh}.examples-scroll{overflow:visible}.meta-card{order:1}.statement-card{order:2}.examples-card{order:3}.section-title-lg{font-size:var(--text-xl)}.list-head{flex-direction:column}.search{width:100%}.list-controls{gap:10px;width:100%}.search-wrap{flex:auto;min-width:0}.list-controls .search-wrap .search{width:100%}}@media (max-width:640px){.topbar{gap:8px;padding:0 12px}.topbar-actions{gap:8px}.sync-text,.save-sync-text{display:none}.sync-pill{padding:6px}.save-sync-btn{padding:7px 9px}.page{padding:14px 14px 24px}.statement-card{padding:22px 18px 26px}.home-title{font-size:var(--text-3xl)}.section-title-lg{font-size:var(--text-xl)}}@media (max-width:360px){.topbar{padding:0 8px}.topbar-actions{gap:6px}}.topbar-howto{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font-size:var(--text-sm);cursor:pointer;padding:7px 12px;transition:color .12s,border-color .12s,background .12s;font-weight:600}.topbar-howto:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.topbar-icon-btn{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font-size:var(--text-lg);cursor:pointer;justify-content:center;align-items: center;width:34px;height:34px;padding:0;transition:color .12s,border-color .12s,background .12s;line-height:1}.topbar-icon-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.theme-toggle-wrap{display:inline-flex}.theme-toggle-icon{display:inline-flex;justify-content:center;align-items: center}.kpal-backdrop,.ksheet-backdrop{position:fixed;z-index:200;display:flex;background:color-mix(in srgb,var(--ink)38%,transparent);backdrop-filter:blur(3px);justify-content:center;inset:0}.kpal-backdrop{align-items: flex-start;padding-top:12vh}.ksheet-backdrop{overflow-y:auto;align-items: flex-start;padding:7vh 20px 20px}.kpal-dialog{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);overflow:hidden;flex-direction:column;width:min(620px,92vw);max-height:70vh}.kpal-search{display:flex;border-bottom:1px solid var(--line);align-items: center;gap:10px;padding:14px 16px}.kpal-search-icon{font-size:var(--text-lg);color:var(--ink-faint)}.kpal-input{outline:none;font-size:var(--text-base);color:var(--ink);font-family:var(--font);background:0 0;border:none;flex:1}.kpal-input::placeholder{color:var(--ink-faint)}.kpal-results{overflow-y:auto;flex:1;padding:6px}.kpal-row{display:flex;border-radius:var(--radius-sm);text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none;justify-content:space-between;align-items: center;gap:14px;width:100%;padding:9px 12px}.kpal-row.is-active{background:var(--accent-soft)}.kpal-row-name{font-weight:600;font-size:var(--text-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpal-row-meta{display:inline-flex;flex-shrink:0;align-items: center;gap:10px}.kpal-row-id{font-family:var(--mono);font-size:var(--text-sm);color:var(--ink-faint)}.kpal-row-hint{font-size:var(--text-sm);color:var(--ink-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kpal-row-tier{font-size:var(--text-xs);font-weight:700}.kpal-row-tier.tier-newbie{color:var(--tier-newbie)}.kpal-row-tier.tier-pupil{color:var(--tier-pupil)}.kpal-row-tier.tier-specialist{color:var(--tier-specialist)}.kpal-row-tier.tier-expert{color:var(--tier-expert)}.kpal-empty{text-align:center;color:var(--ink-faint);padding:28px 16px}.kpal-foot{display:flex;border-top:1px solid var(--line);font-size:var(--text-sm);color:var(--ink-faint);gap:18px;padding:9px 16px}.kpal-hint kbd{font-size:var(--text-xs)}.ksheet-dialog{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;width:min(760px,94vw);max-height:90vh;padding:20px 22px 18px}.ksheet-head{display:flex;flex:none;justify-content:space-between;align-items: center;margin-bottom:16px}.ksheet-title{font-size:var(--text-lg);letter-spacing:-.01em;margin:0;font-weight:800}.ksheet-head-actions{display:inline-flex;align-items: center;gap:8px}.ksheet-reset{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font-size:var(--text-sm);cursor:pointer;padding:5px 10px}.ksheet-reset:hover{color:var(--accent);border-color:var(--accent)}.ksheet-close{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);font-size:var(--text-base);cursor:pointer;width:30px;height:30px}.ksheet-close:hover{color:var(--accent);border-color:var(--accent)}.ksheet-body{display:grid;grid-template-columns:1fr 1fr;overflow-y:auto;scrollbar-width:thin;flex:auto;gap:12px 28px;min-height:0}.kgroup{break-inside:avoid}.kgroup-title{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin:6px 0 8px;font-weight:800}.kgroup-rows{display:flex;flex-direction:column}.krow{display:flex;border-radius:var(--radius-sm);text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:1px solid #0000;justify-content:space-between;align-items: center;gap:12px;width:100%;padding:7px 10px}.krow:hover{background:var(--bg-soft);border-color:var(--line)}.krow.is-capturing{background:var(--accent-soft);border-color:var(--accent)}.krow-label{font-size:var(--text-sm)}.krow-keys,.krow-capturing{display:inline-flex;flex-shrink:0;align-items: center;gap:6px}.krow-capturing{font-size:var(--text-sm);color:var(--accent-deep);font-weight:600}.krow-binding{display:inline-flex;align-items: center;gap:5px}.krow-or,.kbd-then{font-size:var(--text-xs);color:var(--ink-faint)}.krow-unset{font-size:var(--text-sm);color:var(--ink-faint);font-style:italic}.krow-resetone{font-size:var(--text-sm);color:var(--ink-faint);cursor:pointer;margin-left:2px}.krow-resetone:hover{color:var(--accent)}.kbd-chord{display:inline-flex;align-items: center;gap:5px}.ksheet-note{font-size:var(--text-sm);color:var(--ink-faint);flex:none;margin:16px 2px 0}.kpal-foot kbd,.kpal-hint kbd,.krow kbd,.ksheet-note kbd{display:inline-flex;border:1px solid var(--line);background:var(--bg-soft);font-family:var(--mono);font-size:var(--text-xs);color:var(--ink-soft);border-bottom-width:2px;border-radius:6px;align-items: center;min-width:18px;height:20px;padding:0 6px;font-weight:600}@media (max-width:640px){.ksheet-body{grid-template-columns:1fr}.krow{flex-direction:column;align-items: flex-start;gap:6px}.krow-keys,.krow-capturing{flex-wrap:wrap;justify-content:flex-start}}.how{max-width:1180px}.how-inline-link,.how-row kbd{font:inherit}.how-inline-link{color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:600}.how-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;margin-top:26px}.how-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);padding:18px 20px 20px}.how-card-title{font-size:var(--text-base);letter-spacing:-.01em;margin:0 0 12px;font-weight:800}.how-dl{margin:0}.how-row{display:grid;grid-template-columns:minmax(110px,30%)1fr;border-top:1px solid var(--line-soft);gap:10px 14px;padding:7px 0}.how-row:first-child{border-top:0}.how-row dt{font-weight:700;font-size:var(--text-sm);color:var(--accent);margin:0}.how-row dd{font-size:var(--text-sm);color:var(--ink-soft);margin:0;line-height:1.5}.how-row kbd{display:inline-flex;border:1px solid var(--line);background:var(--bg-soft);font-family:var(--mono);font-size:var(--text-xs);color:var(--ink-soft);border-bottom-width:2px;border-radius:5px;align-items: center;min-width:16px;height:19px;margin:0 1px;padding:0 5px;font-weight:600}.how-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.btn-ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.auth-backdrop{position:fixed;z-index:210;display:flex;background:color-mix(in srgb,var(--ink)38%,transparent);backdrop-filter:blur(3px);justify-content:center;align-items: flex-start;padding-top:12vh;inset:0}.auth-modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:min(380px,92vw);padding:20px 22px 22px}.auth-head{display:flex;justify-content:space-between;align-items: center}.auth-title{font-size:var(--text-lg);letter-spacing:-.01em;margin:0;font-weight:800}.auth-close{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-soft);cursor:pointer;width:30px;height:30px}.auth-close:hover{color:var(--accent);border-color:var(--accent)}.upgrade-modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:min(360px,92vw);padding:20px 22px 22px}.upgrade-modal-top{display:flex;justify-content:space-between;align-items: flex-start;margin-bottom:14px}.upgrade-modal-icon{background:var(--accent-soft);display:flex;color:var(--accent);border-radius:50%;justify-content:center;align-items: center;width:44px;height:44px}.upgrade-modal-icon svg{width:22px;height:22px}.upgrade-modal-title{font-size:var(--text-lg);letter-spacing:-.01em;margin:0 0 8px;font-weight:800}.upgrade-modal-desc{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 20px;line-height:1.55}.upgrade-modal-actions{display:flex;flex-direction:column;gap:8px}.upgrade-modal-later{color:var(--ink-faint);font-size:var(--text-sm);cursor:pointer;text-align:center;background:0 0;border:none;padding:4px 0}.upgrade-modal-later:hover{color:var(--ink-soft)}.auth-sub{font-size:var(--text-sm);color:var(--ink-soft);margin:6px 0 16px}.auth-google{display:flex;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-base);color:var(--ink);cursor:pointer;justify-content:center;align-items: center;gap:10px;width:100%;padding:10px 14px;font-weight:600}.auth-google:hover:not([disabled]){border-color:var(--accent);background:var(--bg-soft)}.auth-google[disabled]{opacity:.6;cursor:default}.auth-g{display:inline-flex}.auth-or{display:flex;color:var(--ink-faint);font-size:var(--text-sm);align-items: center;gap:10px;margin:16px 0 12px}.auth-or:before,.auth-or:after{content:"";background:var(--line);flex:1;height:1px}.auth-label{display:block;font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 4px;font-weight:600}.auth-input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg-soft);color:var(--ink);font-size:var(--text-base);font-family:var(--font);outline:none;width:100%;margin-bottom:12px;padding:9px 11px}.auth-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.auth-err{font-size:var(--text-sm);color:var(--err);margin:0 0 10px}.auth-submit{border-radius:var(--radius-sm);background:var(--accent);color:var(--invert-fg);font-size:var(--text-base);cursor:pointer;border:0;width:100%;padding:10px 14px;font-weight:700}.auth-submit[disabled]{opacity:.6;cursor:default}.auth-toggle{text-align:center;font-size:var(--text-sm);color:var(--ink-soft);margin:14px 0 0}.auth-toggle-link{color:var(--accent);cursor:pointer;text-decoration:underline;text-underline-offset:2px;background:0 0;border:0;padding:0;font-weight:600}.dl-modal-backdrop{position:fixed;z-index:320;display:flex;background:color-mix(in srgb,var(--ink)38%,transparent);justify-content:center;align-items: center;padding:16px;inset:0}.dl-modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:min(420px,92vw);padding:22px 24px 20px}.dl-modal-head{display:flex;align-items: center;gap:12px}.dl-modal-icon{display:inline-flex;border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);flex-shrink:0;justify-content:center;align-items: center;width:38px;height:38px}.dl-modal-icon-danger{background:color-mix(in srgb,var(--err)16%,transparent);color:var(--err)}.dl-modal-title{font-size:var(--text-lg);letter-spacing:-.01em;margin:0;font-weight:800}.dl-modal-sub{font-size:var(--text-sm);color:var(--ink);margin:14px 0 0;line-height:1.5}.dl-modal-note{font-size:var(--text-sm);color:var(--ink-soft);margin:8px 0 0;line-height:1.5}.dl-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.dl-modal-btn{border-radius:var(--radius-sm);font-size:var(--text-base);cursor:pointer;padding:9px 18px;font-weight:700}.dl-modal-primary{background:var(--accent);color:var(--invert-fg);border:0}.dl-modal-primary:hover{background:color-mix(in srgb,var(--accent)88%,var(--ink))}.dl-modal-ghost{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft)}.dl-modal-ghost:hover{border-color:var(--accent);color:var(--accent)}.dl-modal-danger{background:var(--err);color:var(--invert-fg);border:0}.dl-modal-danger:hover{background:color-mix(in srgb,var(--err)88%,var(--black))}.problemset-tile .velocity-kicker,.problemset-tile .velocity-name,.problemset-tile .velocity-cta{color:var(--tier-pupil)}.problemset-tile:hover{border-color:color-mix(in srgb,var(--tier-pupil)45%,var(--line))}.problemset-tile .velocity-glow{background:radial-gradient(circle,color-mix(in srgb,var(--tier-pupil)24%,transparent),transparent 70%)}.problemset-icon{background:var(--tier-pupil);font-family:var(--mono);font-size:var(--text-xl);box-shadow:0 6px 16px color-mix(in srgb,var(--tier-pupil)38%,transparent);font-weight:700}.list-controls{display:flex;flex-shrink:0;align-items: center;gap:12px}.btn-tags-browse{border:1px solid var(--line);background:var(--surface);font-size:var(--text-base);color:var(--accent);cursor:pointer;white-space:nowrap;border-radius:999px;padding:10px 16px;transition:background .15s,border-color .15s;font-weight:600}.btn-tags-browse:hover{background:var(--accent-soft);border-color:var(--accent)}.sort-select{border:1px solid var(--line);background:var(--surface);font-size:var(--text-base);color:var(--ink);box-shadow:var(--shadow-sm);outline:none;cursor:pointer;border-radius:999px;padding:10px 14px;transition:border-color .16s,box-shadow .16s}.sort-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search-wrap{position:relative;display:inline-block}.search-wrap .search{width:240px;padding-right:36px}.search-clear{position:absolute;display:grid;color:var(--ink-faint);font-size:var(--text-lg);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items: center;width:22px;height:22px;transition:background .14s,color .14s;line-height:1;top:50%;right:8px;transform:translateY(-50%)}.search-clear:hover{background:var(--accent-soft);color:var(--accent)}.pager{display:flex;flex-wrap:wrap;justify-content:center;align-items: center;gap:10px;padding-top:16px}.pager:empty{display:none}@media (max-width:900px){.page:has(.section.fill-page){overflow:hidden;display:flex;flex-direction:column;padding-bottom:16px}.section.fill-page{display:flex;flex-direction:column;flex:auto;min-height:0}.section.fill-page>:not(.fill-scroll){flex:none}.section.fill-page .fill-scroll{overflow-y:auto;scrollbar-width:thin;flex:auto;min-height:0}.pager:not(:empty){border-top:1px solid var(--line);padding-top:14px}}.pager-btn{border:1px solid var(--line);background:var(--surface);font-size:var(--text-sm);color:var(--ink);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:999px;padding:7px 14px;transition:border-color .14s,color .14s,background .14s;font-weight:600}.pager-btn:hover:not([disabled]){border-color:var(--accent);color:var(--accent)}.pager-btn[disabled]{opacity:.4;cursor:default}.pager-info{display:inline-flex;font-size:var(--text-sm);color:var(--ink-soft);align-items: center;gap:6px;margin:0 6px;font-weight:600}.pager-jump{border:1px solid var(--line);background:var(--surface);font-size:var(--text-sm);color:var(--ink);text-align:center;outline:none;border-radius:8px;width:58px;padding:5px 8px}.pager-jump:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.ws-bar{position:relative;display:flex;background:var(--bg);border-right:1px solid var(--line);overflow:hidden;flex-direction:column;flex:none;width:144px;transition:width .18s}.ws-bar.is-collapsed{width:28px}.ws-bar.is-resizing{user-select:none;transition:none}.ws-inner{display:flex;overflow:hidden;flex-direction:column;flex:auto;min-height:0}.ws-resizer{position:absolute;cursor:col-resize;z-index:2;touch-action:none;background:0 0;width:6px;height:100%;transition:background .12s;top:0;right:0}.ws-resizer:hover,.ws-bar.is-resizing .ws-resizer{background:color-mix(in srgb,var(--accent)45%,transparent)}.ws-header{display:flex;flex:none;align-items: center;gap:4px;padding:8px 6px 4px}.ws-toggle{display:flex;cursor:pointer;font-size:var(--text-base);color:var(--ink-soft);background:0 0;border:none;border-radius:4px;flex:none;justify-content:center;align-items: center;width:22px;height:22px;padding:0;transition:color .12s,background .12s;line-height:1}.ws-toggle:hover{color:var(--ink);background:color-mix(in srgb,var(--ink)8%,transparent)}.ws-title{font-size:var(--text-xs);letter-spacing:.06em;color:var(--ink-faint);white-space:nowrap;overflow:hidden;font-weight:700}.ws-list{overflow-y:auto;display:flex;scrollbar-width:thin;scrollbar-color:var(--line)transparent;flex-direction:column;flex:auto;gap:1px;padding:4px 0 8px}.ws-empty{font-size:var(--text-xs);color:var(--ink-faint);margin:0;padding:8px 10px}.ws-item{display:block;text-align:left;cursor:pointer;font-size:var(--text-sm);color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:0 0;border:none;border-radius:4px;width:calc(100% - 8px);margin:0 4px;padding:5px 10px;transition:background .1s,color .1s}.ws-item:hover{background:color-mix(in srgb,var(--ink)7%,transparent);color:var(--ink)}.ws-item-label{pointer-events:none}@media (max-width:920px){.ws-bar{display:none}}.meta-tags{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.tag-chip{display:inline-block;font-size:var(--text-sm);text-transform:capitalize;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent)22%,transparent);border-radius:999px;padding:4px 11px;font-weight:600}.pro-page{max-width:760px;margin:0 auto;padding:32px 20px 64px}.pro-hero{text-align:center;padding:40px 0 36px}.pro-hero-title{color:var(--ink);margin:0 0 10px;font-size:2rem;font-weight:800}.pro-hero-sub{color:var(--ink-soft);max-width:520px;margin:0 auto 24px;font-size:1rem;line-height:1.6}.pro-cta{display:inline-block;border-radius:var(--radius-sm);padding:12px 28px;font-size:1rem}.pro-plans{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:8px 0 12px}.pro-plan{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);text-align:center;flex:180px;max-width:220px;padding:18px 16px}.pro-plan-hero{border-color:var(--accent-deep);box-shadow:var(--shadow-sm)}.pro-plan-name{color:var(--ink);margin-bottom:6px;font-weight:700}.pro-plan-price{color:var(--ink);font-size:1.4rem;font-weight:800}.pro-plan-usd{color:var(--ink-faint);font-size:.85rem;font-weight:600}.pro-plan-note{color:var(--ink-soft);margin:4px 0 14px;font-size:.8rem}.pro-plan-cta{width:100%}.pro-plans-fine{text-align:center;color:var(--ink-faint);margin:0 0 4px;font-size:.8rem}.pro-checkout-err,.upgrade-modal-err{color:var(--danger);text-align:center;margin:8px 0 0;font-size:.85rem}.pro-table-wrap{overflow-x:auto;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);border:1px solid var(--line)}.pro-table{border-collapse:collapse;width:100%;font-size:.9rem}.pro-table thead{background:color-mix(in srgb,var(--surface)60%,var(--ink)4%)}.pro-table th,.pro-table td{text-align:center;border-bottom:1px solid var(--line-soft);padding:10px 14px}.pro-feature-col,.pro-feature-name{text-align:left}.pro-feature-name{color:var(--ink);font-weight:500}.pro-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);font-size:.78rem;font-weight:700}.pro-th-pro,.pro-col-pro{background:color-mix(in srgb,var(--accent)6%,transparent);color:var(--accent-deep)!important}.pro-th-pro{font-weight:800;color:var(--accent-deep)!important}.pro-cell{color:var(--ink-faint);font-size:.85rem}.pro-yes{color:var(--ok);font-weight:700}.pro-no{color:var(--ink-faint)}.pro-partial{color:var(--ink-soft);font-weight:600}.pro-table tr:last-child td{border-bottom:none}.pro-table tbody tr:hover td{background:color-mix(in srgb,var(--ink)3%,transparent)}.billing-page{max-width:560px;margin:0 auto;padding:32px 20px 64px}.billing-head{text-align:center;padding:24px 0 28px}.billing-title{color:var(--ink);margin:0 0 8px;font-size:1.8rem;font-weight:800}.billing-sub{color:var(--ink-soft);margin:0;font-size:.95rem;line-height:1.6}.billing-card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-sm);padding:22px 22px 20px}.billing-plan-head{display:flex;justify-content:space-between;align-items: center;gap:12px;margin-bottom:16px}.billing-plan-name{color:var(--ink);font-size:1.05rem;font-weight:700}.billing-status{text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background:color-mix(in srgb,var(--ink)8%,transparent);color:var(--ink-soft);border-radius:999px;padding:3px 9px;font-size:.72rem;font-weight:700}.billing-status-active{background:color-mix(in srgb,var(--ok)16%,transparent);color:var(--ok)}.billing-status-cancel,.billing-status-past_due{background:color-mix(in srgb,var(--danger)14%,transparent);color:var(--danger)}.billing-rows{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.billing-row{display:flex;border-bottom:1px solid var(--line-soft);justify-content:space-between;gap:12px;padding:9px 0;font-size:.9rem}.billing-rows .billing-row:last-child{border-bottom:none}.billing-row-label{color:var(--ink-soft)}.billing-row-value{color:var(--ink);font-weight:600}.billing-note{color:var(--ink-soft);margin:10px 0 0;font-size:.85rem}.billing-note-warn{color:var(--danger)}.billing-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}.billing-actions .btn{flex:auto}.btn-danger-ghost{border:1px solid color-mix(in srgb,var(--danger)40%,var(--line));color:var(--danger);background:0 0}.btn-danger-ghost:hover{background:color-mix(in srgb,var(--danger)10%,transparent)}.billing-fine{color:var(--ink-faint);margin:14px 0 0;font-size:.78rem;line-height:1.55}.billing-empty{color:var(--ink-soft);text-align:center;margin:0 0 16px;font-size:.95rem}.billing-err{color:var(--danger);text-align:center;margin:12px 0 0;font-size:.85rem}.page:has(>.editorial-page){padding:0}.editorial-page{display:grid;grid-template-columns:minmax(280px,340px)minmax(0,1fr);grid-template-rows:minmax(0,1fr);overflow:hidden;gap:52px;max-width:none;height:100%;margin:0;padding:32px 40px}.editorial-header{align-self: start}.editorial-main{overflow-y:auto;min-width:0;max-width:820px;min-height:0;padding-bottom:40px;padding-right:14px}@media (max-width:1080px){.editorial-page{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:14px;padding:24px 20px 0;transition:padding-top .22s}.editorial-header{border-bottom:1px solid var(--line);padding-bottom:18px}.editorial-main{max-width:none}.editorial-page:not(.is-scrolled) .editorial-main{overflow:hidden}.editorial-sub,.editorial-tags,.editorial-eyebrow{overflow:hidden;max-height:280px;transition:max-height .26s,opacity .2s,margin .26s}.editorial-page.is-scrolled .editorial-sub,.editorial-page.is-scrolled .editorial-tags,.editorial-page.is-scrolled .editorial-eyebrow{opacity:0;max-height:0;margin:0}.editorial-title,.editorial-header-actions{transition:font-size .22s,margin .22s}.editorial-page.is-scrolled{gap:8px;padding-top:8px}.editorial-page.is-scrolled .editorial-title{margin:0;font-size:1.05rem}.editorial-page.is-scrolled .editorial-header-actions{gap:8px;margin-top:8px}.editorial-page.is-scrolled .editorial-header-actions .btn{font-size:var(--text-xs);border-radius:var(--radius-sm);padding:5px 11px}.editorial-page.is-scrolled .editorial-header{padding-bottom:8px}}.editorial-eyebrow{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:.72rem}.editorial-title{color:var(--ink);margin:0 0 10px;font-size:clamp(1.75rem,5vw,2.6rem);font-weight:700;line-height:1.1}.editorial-sub{color:var(--ink-soft);margin:0 0 16px;font-size:1.05rem;line-height:1.55}.editorial-tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px}.editorial-tags-sm{margin:6px 0 0}.editorial-tag{font-family:var(--mono);letter-spacing:.04em;background:var(--accent-soft);color:var(--accent-deep);border-radius:20px;padding:3px 9px;font-size:.72rem;font-weight:600}.editorial-header-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.editorial-sections{margin-bottom:8px}.editorial-section{border-top:1px solid var(--line-soft);margin:0 0 8px;padding:28px 0 20px}.editorial-section:first-child{border-top:none}.editorial-solution-section{border-top:2px solid var(--accent);padding-top:30px}.editorial-h2{color:var(--ink);display:flex;align-items:baseline;gap:10px;margin:0 0 18px;font-size:1.35rem;font-weight:700;line-height:1.2}.editorial-num{font-family:var(--mono);letter-spacing:.18em;color:var(--accent);text-transform:uppercase;flex:none;font-size:.75rem}.editorial-body{color:var(--ink);line-height:1.7}.editorial-body p{margin:0 0 14px;font-size:1.02rem}.editorial-body h3{margin:22px 0 6px;font-size:1.05rem;font-weight:700}.editorial-body a{color:var(--accent)}.editorial-body code{font-family:var(--mono);background:var(--accent-soft);color:var(--accent-deep);border-radius:5px;padding:1px 6px;font-size:.875em}.editorial-body pre{background:var(--code-bg);color:var(--code-ink);border-radius:var(--radius-sm);overflow-x:auto;font-family:var(--mono);margin:16px 0;padding:16px 18px;font-size:.84rem;line-height:1.52}.editorial-body pre code{color:inherit;font-size:inherit;background:0 0;border-radius:0;padding:0}.editorial-body em{font-style:italic}.editorial-body strong{font-weight:700}.editorial-body .note{background:var(--accent-soft);border-left:3px solid var(--accent);border-radius:0 var(--radius-sm)var(--radius-sm)0;margin:18px 0;padding:14px 18px;font-size:.98rem;line-height:1.6}.editorial-body .note strong{color:var(--accent-deep)}.editorial-body .takeaway{border:1.5px dashed var(--accent);border-radius:var(--radius-sm);margin:20px 0;padding:16px 20px;font-size:.98rem;line-height:1.6}.editorial-body .takeaway:before{content:"Takeaway";display:block;font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:.68rem;font-weight:700}.editorial-body .step{display:flex;align-items:baseline;gap:12px;margin:10px 0}.editorial-body .step .b{font-family:var(--mono);color:var(--accent);flex:none;min-width:28px;font-weight:700}.editorial-body .good{color:var(--ok);font-weight:700}.editorial-body .diagram{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);text-align:center;margin:20px 0;padding:20px}.editorial-body .diagram .caption{color:var(--ink-soft);margin-top:10px;font-size:.88rem;font-style:italic}.editorial-body table{border-collapse:collapse;width:100%;margin:18px 0;font-size:.96rem}.editorial-body th,.editorial-body td{text-align:left;border-bottom:1px solid var(--line);padding:8px 12px}.editorial-body th{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:.72rem}.editorial-code-wrap{border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;background:var(--code-bg);margin:18px 0}.editorial-code-hd{display:flex;background:color-mix(in srgb,var(--code-bg)80%,transparent);border-bottom:1px solid var(--code-border);align-items: center;gap:10px;padding:8px 14px}.editorial-lang-badge{font-family:var(--mono);letter-spacing:.1em;color:var(--accent);background:var(--accent-soft);border-radius:12px;padding:2px 8px;font-size:.68rem;font-weight:700}.editorial-code-label{color:var(--ink-faint);flex:1;font-size:.85rem}.editorial-try-btn{white-space:nowrap;gap:4px;margin-left:auto;padding:4px 14px;font-size:.8rem}.editorial-code{background:var(--code-bg);color:var(--code-ink);font-family:var(--mono);overflow-x:auto;border-radius:0;margin:0;padding:16px 18px;font-size:.84rem;line-height:1.52}.editorial-code code{font-family:inherit;font-size:inherit;color:inherit;background:0 0;padding:0}.elc-dbg-bar{display:flex;align-items: center;gap:2px;margin-left:auto}.elc-dbg-sep{background:var(--code-border);align-self:stretch;width:1px;margin:2px 6px}.elc-dbg-btn{display:inline-flex;border-radius:var(--radius-sm);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;justify-content:center;align-items: center;width:28px;height:28px;padding:0;transition:background .12s,color .12s}.elc-dbg-btn:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.elc-dbg-btn:disabled{opacity:.35;cursor:default}.elc-dbg-ico{display:inline-flex}.elc-dbg-ico svg{display:block;width:16px;height:16px}.editorial-code.is-debugging{padding:8px 0}.elc-line{display:flex;white-space:pre;align-items:baseline;padding:0 18px 0 0}.elc-gutter{text-align:right;color:var(--ink-faint);opacity:.6;user-select:none;flex:none;width:3ch;margin-right:16px;padding-left:14px}.elc-code{flex:auto}.elc-line.is-current{background:color-mix(in srgb,var(--accent)16%,transparent);box-shadow:inset 3px 0 0 var(--accent)}.elc-line.is-current .elc-gutter{color:var(--accent);opacity:1}.elc-dbg-status{font-family:var(--mono);letter-spacing:.02em;color:var(--ink-soft);background:color-mix(in srgb,var(--code-bg)80%,transparent);border-top:1px solid var(--code-border);padding:7px 18px;font-size:.74rem}.elc-dbg-status.is-note{color:var(--accent)}.elc-dbg-status.is-error{color:var(--bad,#e5534b)}.editorial-solve-cta{display:flex;justify-content:center;margin-top:22px}.editorial-solve-cta .btn{padding:12px 28px;font-size:1rem}.editorial-tests-grid{display:grid;gap:14px}.editorial-test-card{border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.editorial-test-num{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);background:var(--bg-soft);border-bottom:1px solid var(--line-soft);padding:6px 14px;font-size:.72rem}.editorial-test-io{display:grid;grid-template-columns:1fr 1fr}.editorial-test-pane{padding:0}.editorial-test-pane+.editorial-test-pane{border-left:1px solid var(--line)}.editorial-test-pane-hd{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);padding:6px 12px 4px;font-size:.68rem}.editorial-test-pre{font-family:var(--mono);white-space:pre-wrap;word-break:break-all;color:var(--ink);background:0 0;margin:0;padding:6px 12px 12px;font-size:.82rem}.editorial-footer{border-top:1px solid var(--line-soft);display:flex;justify-content:center;margin-top:32px;padding:32px 0 0}.editorial-share-btn{min-width:100px}.editorial-share-backdrop{position:fixed;background:var(--scrim);z-index:900;display:flex;justify-content:center;align-items: center;padding:20px;inset:0}.editorial-share-dialog{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:460px;padding:28px 28px 24px}.editorial-share-hd{display:flex;justify-content:space-between;align-items: center;margin-bottom:16px}.editorial-share-hd h3{color:var(--ink);margin:0;font-size:1.05rem;font-weight:700}.editorial-share-close{cursor:pointer;color:var(--ink-soft);border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 8px;font-size:1.1rem;line-height:1}.editorial-share-close:hover{background:var(--bg)}.editorial-share-desc{color:var(--ink-soft);margin:0 0 20px;font-size:.92rem;line-height:1.55}.editorial-exp-row{display:flex;color:var(--ink-soft);cursor:pointer;flex-wrap:wrap;align-items: center;gap:8px;margin-bottom:22px;font-size:.9rem}.editorial-exp-sep{color:var(--ink-faint)}.editorial-exp-input{font-family:var(--mono);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);width:90px;padding:4px 8px;font-size:.9rem}.editorial-exp-input:disabled{opacity:.4;cursor:not-allowed}.editorial-share-actions{display:flex;gap:10px}.editorial-share-actions .btn{flex:1;justify-content:center}.editorial-expired-page{display:flex;justify-content:center;align-items: center;min-height:60vh}.editorial-expired{text-align:center;max-width:400px;padding:40px 24px}.editorial-expired-icon{opacity:.6;margin-bottom:16px;font-size:3rem}.editorial-expired h2{margin:0 0 10px;font-size:1.4rem}.editorial-expired p{color:var(--ink-soft);margin:0 0 24px}.share-dlg-backdrop{position:fixed;background:var(--scrim);z-index:950;display:flex;overflow-y:auto;backdrop-filter:blur(2px);justify-content:center;align-items: flex-start;padding:max(6vh,24px) 20px 24px;inset:0}.share-dlg{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-lg);width:100%;max-width:380px;padding:22px 22px 18px}.share-dlg-hd{display:flex;justify-content:space-between;align-items: center;margin-bottom:6px}.share-dlg-title{color:var(--ink);margin:0;font-size:1.05rem;font-weight:700}.share-dlg-close{cursor:pointer;color:var(--ink-soft);border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 7px;font-size:1rem;line-height:1}.share-dlg-close:hover{background:var(--bg);color:var(--ink)}.share-dlg-desc{color:var(--ink-soft);margin:0 0 16px;font-size:.86rem;line-height:1.5}.share-dlg-seg-row{display:flex;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);gap:4px;margin-bottom:14px;padding:3px}.share-dlg-seg{cursor:pointer;border-radius:calc(var(--radius-sm) - 1px);color:var(--ink-soft);background:0 0;border:none;flex:1;padding:7px 10px;transition:background .12s,color .12s;font-size:.85rem;font-weight:600}.share-dlg-seg:hover{color:var(--ink)}.share-dlg-seg.is-on{background:var(--accent);color:var(--invert-fg)}.share-dlg-pane{display:flex;flex-direction:column;gap:12px}.share-dlg-foreverline{color:var(--ink-soft);margin:4px 0 2px;font-size:.9rem;line-height:1.6}.share-dlg-field-lbl{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-size:.7rem;font-weight:600}.share-dlg-dur{display:flex;align-items:stretch;gap:10px}.share-dlg-amt{display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);overflow:hidden;align-items:stretch;width:76px}.share-dlg-amt-input{grid-row:1/3;text-align:center;font-family:var(--mono);color:var(--ink);outline:none;-moz-appearance:textfield;background:0 0;border:none;width:100%;padding:0 4px;font-size:1.25rem;font-weight:700}.share-dlg-amt-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.share-dlg-amt-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.share-dlg-amt-btn{border:none;border-left:1px solid var(--line);background:var(--surface);color:var(--ink-soft);cursor:pointer;display:flex;justify-content:center;align-items: center;width:26px;transition:background .12s,color .12s;font-size:.55rem;line-height:1}.share-dlg-amt-btn:first-of-type{border-bottom:1px solid var(--line)}.share-dlg-amt-btn:hover{background:var(--accent-soft);color:var(--accent)}.share-dlg-units{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);flex:1;gap:3px;padding:3px}.share-dlg-unit{cursor:pointer;border-radius:calc(var(--radius-sm) - 2px);color:var(--ink-soft);white-space:nowrap;background:0 0;border:none;padding:6px 1px;transition:background .12s,color .12s;font-size:.72rem;font-weight:600}.share-dlg-unit:hover{color:var(--ink)}.share-dlg-unit.is-on{background:var(--accent);color:var(--invert-fg)}.share-dlg-presets{display:flex;flex-wrap:wrap;gap:6px}.share-dlg-chip{border:1px solid var(--line);background:var(--bg);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:4px 11px;transition:border-color .12s,color .12s,background .12s;font-size:.78rem}.share-dlg-chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.share-dlg-chip.is-on{border-color:var(--accent);background:var(--accent);color:var(--invert-fg)}.share-dlg-summary{background:var(--bg);border-radius:var(--radius-sm);margin:0;padding:9px 11px;font-size:.82rem;line-height:1.4}.share-dlg-summary-lbl{color:var(--ink-soft)}.share-dlg-summary-val{color:var(--ink);font-weight:700}.share-dlg-summary-sep{color:var(--ink-faint)}.share-dlg-summary-when{color:var(--ink-soft)}.share-dlg-short{border-top:1px solid var(--line);display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px}.share-dlg-short-toggle{display:flex;color:var(--ink);cursor:pointer;align-items: center;gap:8px;font-size:.88rem}.share-dlg-short-check{cursor:pointer}.share-dlg-short-name{display:flex;flex-wrap:wrap;align-items: center;gap:8px}.share-dlg-short-input{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);flex:180px;min-width:140px;padding:6px 8px;font-size:.85rem}.share-dlg-short-input:focus{outline:1px solid var(--accent)}.share-dlg-short-hint{color:var(--ink-faint);font-size:.78rem}.share-dlg-short-hint.is-err{color:var(--danger)}.share-dlg-cal{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px}.share-dlg-cal-hd{display:flex;justify-content:space-between;align-items: center;margin-bottom:8px}.share-dlg-cal-title{color:var(--ink);font-size:.88rem;font-weight:600}.share-dlg-nav-grp{display:flex;gap:4px}.share-dlg-nav{border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:var(--radius-sm);display:flex;justify-content:center;align-items: center;width:24px;height:24px;font-size:.9rem;line-height:1}.share-dlg-nav:hover{border-color:var(--accent);color:var(--accent)}.share-dlg-wk{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.share-dlg-wk-c{text-align:center;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.04em;padding:2px 0;font-size:.68rem;font-weight:600}.share-dlg-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.share-dlg-day{aspect-ratio:1;cursor:pointer;color:var(--ink);border-radius:var(--radius-sm);display:flex;background:0 0;border:none;justify-content:center;align-items: center;transition:background .1s,color .1s;font-size:.8rem}.share-dlg-day:hover:not(.is-past):not(.is-blank){background:var(--accent-soft)}.share-dlg-day.is-blank{cursor:default}.share-dlg-day.is-past{color:var(--ink-faint);opacity:.4;cursor:not-allowed}.share-dlg-day.is-sel{background:var(--accent);color:var(--invert-fg);font-weight:700}.share-dlg-time{display:flex;justify-content:space-between;align-items: center}.share-dlg-time-lbl{color:var(--ink-soft);font-size:.85rem;font-weight:600}.share-dlg-time-fields{display:flex;align-items: center;gap:8px}.share-dlg-colon{color:var(--ink-soft);font-weight:700}.share-dlg-step{display:flex;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden;flex-direction:column;align-items: center}.share-dlg-step-btn{background:var(--bg);color:var(--ink-soft);cursor:pointer;display:flex;border:none;justify-content:center;align-items: center;width:40px;height:18px;font-size:.6rem;line-height:1}.share-dlg-step-btn:hover{background:var(--accent-soft);color:var(--accent)}.share-dlg-step-val{font-family:var(--mono);color:var(--ink);text-align:center;width:40px;padding:3px 0;font-size:.95rem;font-weight:600}.share-dlg-actions{display:flex;gap:10px;margin-top:16px}.share-dlg-actions .btn{flex:1;justify-content:center}.share-dlg-copy.is-ok{background:var(--accent)}.share-dlg-copy.is-err{background:var(--danger);border-color:var(--danger)}.editorial-list-page{max-width:860px;margin:0 auto;padding:40px 22px 80px}.editorial-list-hd{margin-bottom:32px}.editorial-list-grid{display:grid;gap:14px}.editorial-list-card{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);justify-content:space-between;align-items: flex-start;gap:16px;padding:20px 22px;transition:box-shadow .15s}.editorial-list-card:hover{box-shadow:var(--shadow-md)}.editorial-list-body{flex:1;min-width:0}.editorial-list-meta{font-family:var(--mono);letter-spacing:.1em;color:var(--accent);text-transform:uppercase;margin:0 0 6px;font-size:.72rem}.editorial-list-title{color:var(--ink);cursor:pointer;margin:0 0 8px;font-size:1.1rem;font-weight:700;line-height:1.3}.editorial-list-title:hover{color:var(--accent);text-decoration:underline}.editorial-list-actions{display:flex;flex-direction:column;flex-shrink:0;gap:8px}.editorial-read-btn{white-space:nowrap}@media (max-width:600px){.editorial-list-card{flex-direction:column}.editorial-list-actions{flex-direction:row}.editorial-test-io{grid-template-columns:1fr}.editorial-test-pane+.editorial-test-pane{border-left:none;border-top:1px solid var(--line)}.editorial-code-hd{flex-wrap:wrap}.editorial-try-btn{margin-left:0}}
