:root{--bg:#f4f5f7;--panel:#fff;--panel-2:#f0f1f4;--border:#e2e4ea;--border-strong:#cfd3dc;--text:#1b1d22;--muted:#6b7080;--accent:#b8553c;--accent-2:#e8957c;--accent-soft:#f7eae5;--on-accent:#fff;--pine:#12332f;--ivory:#f7f5ef;--clay:#b8553c;--clay-light:#e8957c;--ok:#16a34a;--warn:#d97706;--bad:#dc2626;--side-bg:#12332f;--side-panel:#1b423d;--side-border:#265049;--side-text:#d7e3df;--side-muted:#93ada6;--side-active:#285850;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #1012180f, 0 4px 16px #1012180f;--sidebar-w:248px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1114;--panel:#171a1f;--panel-2:#1f2329;--border:#262a31;--border-strong:#343944;--text:#e8eaef;--muted:#8b919f;--accent:#e8957c;--on-accent:#12332f;--accent-soft:#2e2420;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040}}:root[data-theme=dark]{--bg:#0f1114;--panel:#171a1f;--panel-2:#1f2329;--border:#262a31;--border-strong:#343944;--text:#e8eaef;--muted:#8b919f;--accent:#e8957c;--on-accent:#12332f;--accent-soft:#2e2420;--shadow:0 1px 2px #0000004d, 0 4px 16px #00000040;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{touch-action:manipulation;-webkit-text-size-adjust:100%}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:1px solid var(--border-strong);background:var(--panel);border-radius:var(--radius-sm);padding:6px 12px;transition:border-color .12s,background .12s}button:hover{border-color:var(--accent)}button.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}button.primary:hover{background:color-mix(in srgb, var(--accent) 88%, #000)}button.ghost{color:var(--muted);background:0 0;border-color:#0000}button.ghost:hover{color:var(--text);border-color:var(--border-strong)}button.small{padding:3px 9px;font-size:13px}button.link{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px}button.link:hover{text-decoration:underline}button:disabled{opacity:.5;cursor:default}input,textarea,select{background:var(--panel);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;padding:8px 11px}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}textarea{resize:vertical;min-height:90px}code{background:var(--panel-2);border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.muted{color:var(--muted)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spread{justify-content:space-between}.shell{grid-template-columns:var(--sidebar-w) 1fr;min-height:100vh;display:grid}.sidebar{background:var(--side-bg);color:var(--side-text);border-right:1px solid var(--side-border);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-head{border-bottom:1px solid var(--side-border);padding:16px 16px 10px}.brand-lockup{color:inherit;align-items:center;display:flex}.sidebar .brand-lockup{color:var(--ivory);--accent:var(--clay-light)}.brand-mark{background:url(/icon-192.png) 50%/cover no-repeat;border-radius:7px;flex:none;width:22px;height:22px}.sidebar-user{color:var(--side-muted);margin-top:4px;font-size:12px}.theme-switch{border:1px solid var(--side-border);border-radius:8px;margin-top:10px;display:inline-flex;overflow:hidden}.theme-switch button{color:var(--side-muted);background:0 0;border:none;border-radius:0;padding:4px 9px;font-size:12px}.theme-switch button.on{background:var(--side-active);color:#fff}.theme-switch button:hover{color:#fff}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:10px 8px;display:flex}.sidebar-section{letter-spacing:1.2px;text-transform:uppercase;color:var(--side-muted);justify-content:space-between;align-items:center;padding:14px 8px 4px;font-size:11px;font-weight:700;display:flex}.sidebar-empty{color:var(--side-muted);padding:6px 10px;font-size:13px}.channel{color:var(--side-text);border-radius:8px;align-items:center;gap:9px;padding:7px 10px;font-size:14px;line-height:1.2;display:flex}.channel:hover{background:var(--side-panel)}.channel.active{background:var(--side-active);color:#fff;font-weight:600}.channel-icon{text-align:center;flex:none;width:20px;font-size:15px}.channel-icon.svg{color:var(--side-muted);display:inline-flex}.channel.active .channel-icon.svg{color:#fff}.channel-name{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.channel-shared{color:var(--side-muted);display:inline-flex}.channel-count{color:var(--side-muted);background:var(--side-panel);text-align:center;border-radius:999px;min-width:22px;padding:1px 7px;font-size:11px}.channel.active .channel-count{color:#fff;background:#ffffff24}.icon-btn{color:var(--side-muted);background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;display:inline-flex}.icon-btn:hover{background:var(--side-panel);color:#fff}.sidebar-foot{border-top:1px solid var(--side-border);color:var(--side-muted);align-items:center;gap:8px;padding:10px 16px;font-size:12px;display:flex}.content{flex-direction:column;min-width:0;display:flex}.topbar-mobile{display:none}.banner{background:var(--accent-soft);border:1px solid var(--accent);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin:12px 24px 0;padding:10px 14px;display:flex}.page{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:24px}.drawer-backdrop{display:none}@media (width<=860px){.shell{grid-template-columns:1fr}.sidebar{z-index:45;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;width:min(300px,84vw);height:auto;padding-bottom:env(safe-area-inset-bottom);transition:transform .18s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 0 40px #0006}.drawer-open .sidebar{transform:none}.drawer-backdrop{z-index:42;opacity:0;pointer-events:none;background:#00000073;transition:opacity .18s;display:block;position:fixed;inset:0}.drawer-open .drawer-backdrop{opacity:1;pointer-events:auto}.topbar-mobile{z-index:20;background:var(--panel);border-bottom:1px solid var(--border);padding:8px 10px;padding-top:calc(8px + env(safe-area-inset-top));justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.topbar-mobile .icon-btn{color:var(--text)}.topbar-title{font-weight:700}.page{padding:16px}.banner{margin:10px 16px 0}}h1{letter-spacing:-.4px;margin:0 0 14px;font-size:24px;font-weight:800}h2{margin:22px 0 10px;font-size:16px;font-weight:700}h3{color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin:12px 0 6px;font-size:12px;font-weight:700}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}.grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.grid.wide{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.empty{text-align:center;color:var(--muted);border:1px dashed var(--border-strong);border-radius:var(--radius);padding:48px 16px}.chip{background:var(--panel-2);color:var(--muted);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:12px;display:inline-flex}.chip.accent{color:var(--accent);background:var(--accent-soft)}.chip.ok{color:var(--ok)}.chip.warn{color:var(--warn)}.chip.bad{color:var(--bad)}.chip.clickable{cursor:pointer;border-color:var(--border-strong);background:var(--panel);color:var(--text)}.chip.clickable:hover{border-color:var(--accent)}.chip.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.subject-card{cursor:pointer;flex-direction:column;gap:8px;padding:10px;transition:transform .1s,box-shadow .1s;display:flex}.subject-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #1012181f}.subject-card .thumb{aspect-ratio:4/3;border-radius:var(--radius-sm);object-fit:cover;background:var(--panel-2);width:100%;display:block}.subject-card .title{font-size:15px;font-weight:700}.subject-card .count{color:#fff;background:#0000009e;border-radius:999px;padding:2px 8px;font-size:11px;position:absolute;top:8px;right:8px}.thumb-wrap{position:relative}.item{grid-template-columns:92px 1fr;gap:12px;display:grid}.item .thumb{object-fit:cover;border-radius:var(--radius-sm);background:var(--panel-2);width:92px;height:122px;display:block}.item .thumb.placeholder{color:var(--muted);justify-content:center;align-items:center;font-size:26px;display:flex}.item .title{font-weight:600;line-height:1.3}.item .title.clamp{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.item .summary{color:var(--text);margin:4px 0;font-size:14px}.item .meta{color:var(--muted);font-size:12px}.item .actions{margin-top:8px}.item.done{opacity:.62}.inbox-box{gap:8px;display:grid}.status-dot{background:var(--muted);border-radius:50%;width:8px;height:8px;display:inline-block}.status-dot.pending{background:var(--warn);animation:1s infinite pulse}.status-dot.ok{background:var(--ok)}.status-dot.unsorted{background:var(--accent)}.status-dot.error,.status-dot.dead{background:var(--bad)}@keyframes pulse{50%{opacity:.3}}.stat{flex-direction:column;gap:2px;display:flex}.stat b{font-size:22px}.bar{background:var(--panel-2);border-radius:999px;height:8px;display:flex;overflow:hidden}.bar span{height:100%}.modal-bg{z-index:50;background:#0000008c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);gap:10px;width:min(520px,100%);max-height:92vh;padding:18px;display:grid;overflow-y:auto;box-shadow:0 20px 60px #00000059}.modal label{color:var(--muted);gap:4px;font-size:13px;display:grid}.modal label>input,.modal label>select,.modal label>textarea{color:var(--text);font-size:14px}details summary{cursor:pointer;color:var(--muted);font-size:13px}pre{background:var(--panel-2);border-radius:var(--radius-sm);padding:10px;font-size:12px;overflow:auto}.tpl{border-radius:var(--radius);margin:-8px;padding:20px}.tpl-toolbar{gap:8px;margin-bottom:14px;display:grid}.tpl-section{margin-top:20px}.tpl-notes textarea{min-height:120px}.tpl-notes-text{line-height:1.55}.cb-columns{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}@media (width<=700px){.cb-columns{grid-template-columns:1fr}.tpl{margin:-4px;padding:14px}}.tpl-cookbook{--cb-paper:#fbf6ee;--cb-ink:#2b2118;--cb-accent:#c2410c;--cb-line:#eadfcd}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tpl-cookbook{--cb-paper:#1f1b17;--cb-ink:#f3ece2;--cb-accent:#ff8a3d;--cb-line:#3a312a}}:root[data-theme=dark] .tpl-cookbook{--cb-paper:#1f1b17;--cb-ink:#f3ece2;--cb-accent:#ff8a3d;--cb-line:#3a312a}.tpl-cookbook{background:var(--cb-paper);color:var(--cb-ink);border:1px solid var(--cb-line)}.tpl-cookbook .card{background:color-mix(in srgb, var(--cb-paper) 80%, white);border-color:var(--cb-line);box-shadow:none}.tpl-cookbook input,.tpl-cookbook textarea,.tpl-cookbook select{background:color-mix(in srgb, var(--cb-paper) 70%, white);border-color:var(--cb-line);color:var(--cb-ink)}.tpl-cookbook .chip{border-color:var(--cb-line);color:var(--cb-ink);background:0 0}.tpl-cookbook .chip.on,.tpl-cookbook .chip.clickable:hover{background:var(--cb-accent);border-color:var(--cb-accent);color:#fff}.tpl-cookbook h1{letter-spacing:.1px;margin:0 0 4px;font-family:Georgia,Times New Roman,serif;font-size:30px}.tpl-cookbook h2{border-bottom:1px solid var(--cb-line);padding-bottom:4px;font-family:Georgia,serif;font-size:20px}.cb-header{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.cb-kicker{letter-spacing:2px;text-transform:uppercase;color:var(--cb-accent);font-size:11px;font-weight:700}.cb-chapters{flex-wrap:wrap;gap:6px;margin:4px 0 10px;display:flex}.cb-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px;display:grid}.cb-card{border:1px solid var(--cb-line);background:color-mix(in srgb, var(--cb-paper) 80%, white);border-radius:14px;transition:transform .1s,box-shadow .1s;display:block;overflow:hidden}.cb-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000001f}.cb-thumb{aspect-ratio:1;background:#d9cdb8 50%/cover no-repeat;justify-content:center;align-items:center;display:flex;position:relative}.cb-thumb-empty{opacity:.5;font-size:42px}.cb-count{color:#fff;background:#0009;border-radius:999px;padding:2px 8px;font-size:11px;position:absolute;bottom:8px;left:8px}.cb-cooked{color:#fff;background:#16a34a;border-radius:999px;padding:2px 8px;font-size:11px;position:absolute;top:8px;right:8px}.cb-body{padding:10px 12px 12px}.cb-title{font-family:Georgia,serif;font-size:17px;font-weight:700;line-height:1.2}.cb-meta{opacity:.85;text-transform:capitalize;flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;font-size:12px;display:flex}.cb-meta.light{color:#fff;opacity:1}.cb-diff{letter-spacing:2px;color:var(--cb-accent);font-size:11px}.cb-hero{background:#3b2f26 50%/cover no-repeat;border-radius:14px;align-items:flex-end;min-height:220px;margin:8px 0 0;display:flex;position:relative;overflow:hidden}.cb-hero:before{content:"";background:linear-gradient(#0000000d,#000000bf);position:absolute;inset:0}.cb-hero-text{color:#fff;padding:18px 16px;position:relative}.cb-hero-text h1{color:#fff;text-shadow:0 2px 8px #00000080;margin:0 0 6px;font-size:34px}.cb-ingredients{columns:2;column-gap:20px;margin:6px 0 0;padding-left:18px}.cb-ingredients li{break-inside:avoid;text-transform:capitalize}.tpl-skills{--sk-bg:#0e1a14;--sk-panel:#142a20;--sk-line:#244536;--sk-ink:#e8f3ec;--sk-accent:#9ae66e;--sk-warn:#ffd166}@media (prefers-color-scheme:light){:root:not([data-theme=dark]) .tpl-skills{--sk-bg:#eef5f0;--sk-panel:#fff;--sk-line:#cfe0d5;--sk-ink:#11271b;--sk-accent:#2f9e44}}:root[data-theme=light] .tpl-skills{--sk-bg:#eef5f0;--sk-panel:#fff;--sk-line:#cfe0d5;--sk-ink:#11271b;--sk-accent:#2f9e44}.tpl-skills{background:var(--sk-bg);color:var(--sk-ink);border:1px solid var(--sk-line)}.tpl-skills .card{background:var(--sk-panel);border-color:var(--sk-line);box-shadow:none}.tpl-skills input,.tpl-skills textarea,.tpl-skills select,.tpl-skills button{background:var(--sk-panel);border-color:var(--sk-line);color:var(--sk-ink)}.tpl-skills button.primary{background:var(--sk-accent);border-color:var(--sk-accent);color:#0b1a10}.tpl-skills .chip{border-color:var(--sk-line);color:var(--sk-ink);background:0 0}.tpl-skills .chip.faint{opacity:.7}.tpl-skills .chip.on,.tpl-skills .chip.clickable:hover{background:var(--sk-accent);border-color:var(--sk-accent);color:#0b1a10}.tpl-skills .chip.accent{color:var(--sk-accent);border-color:var(--sk-accent);background:0 0}.chip.lvl-intermediate{border-color:var(--sk-warn,#d97706);color:var(--sk-warn,#d97706)}.tpl-skills h1{letter-spacing:-.3px;margin:0 0 4px;font-size:28px;font-weight:800}.tpl-skills h2{text-transform:uppercase;letter-spacing:1px;color:var(--sk-accent);font-size:14px}.sk-header{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.sk-kicker{letter-spacing:2px;text-transform:uppercase;color:var(--sk-accent);font-size:11px;font-weight:700}.sk-focus{background:var(--sk-panel);border:1px dashed var(--sk-accent);border-radius:12px;padding:10px 12px 12px}.sk-focus h2{margin-top:0}.sk-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.sk-board{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px;display:grid}@media (width<=800px){.sk-board{grid-template-columns:1fr}}.sk-column{background:var(--sk-panel);border:1px solid var(--sk-line);border-radius:12px;align-content:start;gap:8px;padding:10px;display:grid}.sk-column-head{border-bottom:1px solid var(--sk-line);padding:2px 4px 6px}.sk-card{border:1px solid var(--sk-line);background:var(--sk-bg);border-radius:10px;grid-template-columns:1fr auto;align-items:start;gap:8px;padding:8px;display:grid}.sk-card.focused{border-color:var(--sk-accent)}.sk-main{grid-template-columns:56px 1fr;gap:10px;display:grid}.sk-thumb{background:var(--sk-line) center/cover no-repeat;border-radius:8px;width:56px;height:74px}.sk-title{font-weight:700;line-height:1.2}.sk-tags{flex-wrap:wrap;gap:4px;margin:4px 0;display:flex}.sk-progress{background:var(--sk-line);border-radius:999px;height:6px;overflow:hidden}.sk-progress span{background:var(--sk-accent);height:100%;display:block}.sk-progress-label{opacity:.7;margin-top:2px;font-size:11px}.sk-sheet{justify-content:space-between;align-items:center;gap:12px;margin:6px 0 12px;display:flex}.sk-ring{border:4px solid var(--sk-accent);text-align:center;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;width:84px;height:84px;display:flex}.sk-ring-val{font-size:20px;font-weight:800}.sk-cues{margin:6px 0 0;padding-left:18px}.sk-cues li{margin-bottom:4px}.tpl-trip{--tb-accent:#0ea5e9;background:var(--panel);border:1px solid var(--border)}.tpl-trip h2{border-bottom:1px solid var(--border);padding-bottom:4px}.tb-card{border:1px solid var(--border);background:var(--panel);border-radius:14px;display:block;overflow:hidden}.tb-card:hover{border-color:var(--tb-accent)}.tb-card.visited{opacity:.75}.tb-thumb{aspect-ratio:4/3;background:var(--panel-2) center/cover no-repeat;position:relative}.tb-visited{color:#fff;background:#16a34a;border-radius:999px;padding:2px 8px;font-size:11px;position:absolute;top:8px;right:8px}.tb-body{padding:10px 12px}.tb-title{font-weight:700}.tpl-list{border:none;margin:0;padding:0}.banner-soft{background:var(--accent-soft);border:1px solid var(--accent);color:var(--text);border-radius:var(--radius-sm);padding:8px 10px;font-size:13px}.back-row{align-items:center;gap:8px;margin-bottom:10px;font-size:13px;display:flex}.back-link{border:1px solid var(--border-strong);background:var(--panel);color:var(--text);border-radius:999px;align-items:center;gap:4px;padding:5px 10px 5px 6px;font-weight:600;display:inline-flex}.back-link:hover{border-color:var(--accent);color:var(--accent)}.tpl-cookbook .back-link{border-color:var(--cb-line);color:var(--cb-ink);background:0 0}.tpl-skills .back-link{border-color:var(--sk-line);color:var(--sk-ink);background:0 0}.ibtn{border:1px solid var(--border-strong);background:var(--panel);width:34px;height:34px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex}.ibtn.sm{width:30px;height:30px}.ibtn:hover{color:var(--text);border-color:var(--accent)}.ibtn.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.ibtn.danger:hover{color:var(--bad);border-color:var(--bad)}.ibtn:disabled{opacity:.4;cursor:default}.icon-btn.on{color:#fff;background:var(--side-panel)}.page-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.page-head h1{margin:0}.modal-head{justify-content:space-between;align-items:center;display:flex}.suggest-bar{border-color:var(--accent);margin-bottom:14px}.chip.emoji{padding:2px 6px;font-size:16px}.theme-switch button{align-items:center;padding:5px 9px;display:inline-flex}.tpl-cookbook .ibtn{border-color:var(--cb-line);color:var(--cb-ink);background:0 0}.tpl-skills .ibtn{border-color:var(--sk-line);color:var(--sk-ink);background:0 0}.tpl-skills .ibtn.active{color:var(--sk-accent);border-color:var(--sk-accent);background:0 0}.ch-list{gap:8px;display:grid}.ch-row{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.ch-main{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.ch-icon{background:var(--panel-2);border-radius:10px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:24px;display:inline-flex}.ch-text{gap:2px;min-width:0;display:grid}.ch-name{font-weight:700}.ch-meta{color:var(--muted);font-size:12px}.ch-desc{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}@media (width<=600px){.ch-desc{display:none}}.auth{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-card{background:var(--panel);border:1px solid var(--border);width:min(420px,100%);box-shadow:var(--shadow);border-radius:16px;gap:10px;padding:24px;display:grid}.auth-card label{color:var(--muted);gap:4px;font-size:13px;display:grid}.auth-card label>input{color:var(--text);font-size:15px}.auth-card .primary{margin-top:4px;padding:10px;font-size:15px}.auth-links{flex-direction:column;gap:4px;margin-top:4px;display:flex}.auth-error{color:var(--bad);font-size:13px}.sidebar-user.on{color:#fff}.sidebar-user:hover{color:#fff;text-decoration:underline}.meta.platform{align-items:center;gap:5px;display:inline-flex}.meta.platform svg{flex:none}.file-btn{align-items:center;gap:6px;display:inline-flex}.thumb.placeholder svg{opacity:.5}.item>div{min-width:0}.item .title,.item .summary,.item .meta{overflow-wrap:anywhere}.item .row.spread>.row:last-child{flex-wrap:wrap;justify-content:flex-end}.menu-wrap{position:relative}.menu{z-index:30;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);min-width:230px;padding:4px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 10px 30px #0000002e}.menu button{text-align:left;color:var(--text);background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;min-height:40px;padding:10px;display:flex}.menu button:hover{background:var(--panel-2)}.menu button.danger,.danger-text{color:var(--bad)}.back-row.spread{justify-content:space-between;align-items:center;display:flex}.form{gap:12px;display:grid}.form label,.field{color:var(--muted);gap:4px;font-size:13px;display:grid}.form label>input,.form label>textarea,.form label>select{color:var(--text);font-size:14px}.field-label{color:var(--muted);margin-right:6px;font-size:12px;font-weight:600}.form-error{color:var(--bad);font-size:13px}.banner-soft{background:var(--accent-soft);border-radius:var(--radius-sm);padding:10px 12px;font-size:13px}.tabs{border-bottom:1px solid var(--border);gap:4px;margin:4px 0 12px;display:flex;overflow-x:auto}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;min-height:44px;padding:10px 12px}.tabs button.on{color:var(--text);border-bottom-color:var(--accent);font-weight:600}.settings-card{max-width:720px}.emoji-grid{flex-wrap:wrap;gap:4px;display:flex}.emoji-pick{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:20px;display:inline-flex}.emoji-pick.on{border-color:var(--accent);background:var(--accent-soft)}.look-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;display:grid}.look-card{text-align:left;border-radius:var(--radius);gap:6px;padding:10px;display:grid}.look-card.on{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 25%, transparent)}.look-card .muted{font-size:12px;font-weight:400}.look-preview{background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;height:auto}.details-preview{background:var(--panel-2);border-radius:var(--radius-sm);gap:6px;padding:10px 12px;font-size:14px;display:grid}.pick-list{gap:4px;max-height:50vh;display:grid;overflow-y:auto}.pick{text-align:left;justify-content:space-between;align-items:center;gap:8px;min-height:44px;display:flex}.pick.on{border-color:var(--accent);background:var(--accent-soft)}.pick.check{border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;color:var(--text);justify-content:flex-start;padding:6px 10px;font-size:14px}.pick.check input{width:auto}.clamp1{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}button.danger-fill{background:var(--bad);border-color:var(--bad)}button.on-soft{border-color:var(--accent);background:var(--accent-soft)}.seg{border:1px solid var(--border-strong);background:var(--panel);border-radius:999px;padding:2px;display:inline-flex}.seg button{color:var(--muted);background:0 0;border:none;border-radius:999px;min-height:32px;padding:6px 12px;font-size:13px}.seg button.on{background:var(--sk-accent,var(--accent));color:#fff;font-weight:600}.seg.compact button{min-height:30px;padding:4px 9px;font-size:12px}.section-toggle{text-align:left;width:100%;color:var(--text);background:0 0;border:none;align-items:baseline;gap:8px;padding:4px 0;display:flex}.section-toggle .chev{color:var(--muted);align-self:center;display:inline-flex}.attention{border:1px solid var(--accent);background:var(--accent-soft);border-radius:var(--radius-sm);color:var(--text);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;padding:10px 12px;text-decoration:none;display:flex}.sk-list{gap:8px;margin-top:8px;display:grid}.sk-row{border:1px solid var(--sk-line,var(--border));background:var(--sk-bg,var(--panel));border-radius:12px;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.sk-row.focused{border-color:var(--sk-accent,var(--accent))}.sk-row-main{color:inherit;grid-template-columns:52px 1fr;align-items:center;gap:10px;min-width:0;text-decoration:none;display:grid}.sk-row .sk-thumb{width:52px;height:68px}.sk-sub{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:12px;display:flex}.sk-row-actions{justify-items:end;gap:6px;display:grid}.sk-row-actions .small{align-items:center;gap:4px;min-height:36px;display:inline-flex}@media (width<=640px){.sk-row{grid-template-columns:1fr}.sk-row-actions{grid-template-columns:1fr auto;place-items:center stretch}}.sk-train{gap:12px;margin-bottom:14px;display:grid}.sk-train-row{flex-wrap:wrap;align-items:flex-end;gap:24px;display:flex}.sk-stat{display:grid}.sk-stat b{font-size:20px}.sk-stat .muted{font-size:12px}.sk-train button{align-items:center;gap:6px;min-height:40px;display:inline-flex}.cb-diff-label{color:var(--muted);margin-left:2px;font-size:11px}.suggest-list{gap:6px;margin-top:8px;display:grid}.suggest-row{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.chip.lvl-beginner{color:#1d4ed8;border-color:#2563eb}:root[data-theme=dark] .chip.lvl-beginner{color:#93c5fd;border-color:#60a5fa}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chip.lvl-beginner{color:#93c5fd;border-color:#60a5fa}}.seg button{white-space:nowrap}.sk-row-actions .row{flex-wrap:nowrap}@media (width<=640px){.seg.compact button{padding:4px 7px}.sk-focus .sk-row-actions{grid-template-columns:1fr}.sk-focus .sk-row-actions .row{justify-content:flex-start}}.ibtn.sm{min-width:36px;min-height:36px}@media (pointer:coarse){.ibtn,.ibtn.sm{min-width:44px;min-height:44px}.item .actions button.small{min-height:44px}}.item .actions{flex-wrap:wrap;align-items:center}.item .actions .verb,.file-btn{align-items:center;gap:6px;display:inline-flex}.menu-link{color:var(--text);border-radius:6px;align-items:center;gap:8px;min-height:40px;padding:10px;text-decoration:none;display:flex}.menu-link:hover{background:var(--panel-2)}.toasts{left:50%;bottom:calc(20px + env(safe-area-inset-bottom));z-index:80;gap:8px;width:min(440px,100% - 32px);display:grid;position:fixed;transform:translate(-50%)}.toast{color:#fff;background:#1b1d22;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;display:flex;box-shadow:0 10px 30px #0000004d}.toast .link{color:var(--accent-2);font-size:14px;font-weight:700}.skeleton{grid-template-columns:92px 1fr;gap:12px;display:grid}.skeleton .sk-box{border-radius:var(--radius-sm);height:122px}.skeleton .sk-lines{align-content:start;gap:8px;padding-top:4px;display:grid}.skeleton .sk-lines span{border-radius:6px;height:12px;display:block}.skeleton .sk-box,.skeleton .sk-lines span{background:linear-gradient(90deg, var(--panel-2) 0%, var(--border) 50%, var(--panel-2) 100%);background-size:200% 100%;animation:1.2s linear infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.search-big{padding:12px 14px;font-size:16px}.onboarding{border-color:var(--accent);gap:12px;margin-bottom:16px;display:grid}.fs-guide{z-index:95}.gd-head{padding:10px 14px;padding-top:calc(10px + env(safe-area-inset-top));border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;display:flex}.gd-dots{gap:5px;display:flex}.gd-dots i{background:var(--border-strong);border-radius:3px;width:6px;height:6px;transition:width .25s}.gd-dots i.on{background:var(--accent);width:18px}.gd-dots i.past{background:var(--accent-2)}.gd-body{-webkit-overflow-scrolling:touch;flex:1;overflow:auto}.gd-screen{gap:12px;max-width:520px;margin:0 auto;padding:22px 18px 28px;animation:.3s both gd-in;display:grid}@keyframes gd-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.gd-screen h2{letter-spacing:-.3px;margin:0;font-size:24px;line-height:1.2}.gd-screen h4{margin:6px 0 -6px;font-size:14px}.gd-screen p{color:var(--text);margin:0;line-height:1.5}.gd-screen p.muted{color:var(--muted)}.gd-hero{text-align:center;padding-top:40px}.gd-hero h2{font-size:26px}.gd-mark{border-radius:24px;margin:0 auto 8px;animation:.5s cubic-bezier(.2,.9,.3,1.2) both splash-in;display:block;box-shadow:0 12px 36px #12332f47}.gd-loop{gap:8px;margin:0;padding:0;list-style:none;display:grid}.gd-loop li,.gd-steps li{background:var(--panel-2);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;display:flex}.gd-loop li>b:first-child,.gd-steps li>b:first-child{background:var(--accent);width:24px;height:24px;color:var(--on-accent);border-radius:12px;flex:none;place-items:center;font-size:12px;display:grid}.gd-steps{gap:6px;margin:0;padding:0;list-style:none;display:grid}.gd-steps li{align-items:flex-start;font-size:14px;line-height:1.4}.gd-steps li>b:first-child{background:var(--border-strong);color:var(--text);margin-top:1px}.gd-sheet{background:var(--panel-2);border:1px solid var(--border);border-radius:14px;padding:10px 12px 12px}.gd-sheet-title{color:var(--muted);margin-bottom:8px;font-size:11px}.gd-sheet-row{gap:10px;display:flex}.gd-app{color:var(--muted);justify-items:center;gap:4px;font-size:10px;display:grid}.gd-app i{background:var(--border-strong);border-radius:11px;width:42px;height:42px}.gd-app small{font-size:10px}.gd-app.stash img{outline:2px solid var(--text);outline-offset:2px;border-radius:11px;width:42px;height:42px;display:block}.gd-app.stash small{color:var(--text);font-weight:600}.gd-tabs{gap:6px;display:flex}.gd-tabs button{background:var(--panel-2);border-color:#0000;border-radius:999px;padding:6px 12px;font-size:13px}.gd-tabs button.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.gd-done{color:#15803d;align-items:center;gap:6px;font-size:14px;font-weight:600;display:inline-flex}.gd-more{border:1px solid var(--border);border-radius:10px;padding:8px 12px}.gd-more summary{cursor:pointer;font-size:14px;font-weight:600}.gd-more>:not(summary){margin-top:8px}.gd-wait{border:1px dashed var(--border-strong);border-radius:12px;gap:4px;padding:14px;font-weight:600;display:grid}.gd-wait small{color:var(--muted);font-weight:400}.gd-pulse{background:var(--accent);border-radius:5px;width:10px;height:10px;margin-right:8px;animation:1.4s ease-in-out infinite gd-pulse;display:inline-block}@keyframes gd-pulse{50%{opacity:.25;transform:scale(.8)}}.gd-celebrate{text-align:center;gap:8px;padding:20px 0;display:grid}.gd-party{font-size:56px;animation:.6s cubic-bezier(.2,.9,.3,1.4) both gd-pop}.gd-celebrate h3{text-transform:none;letter-spacing:-.2px;margin:0;font-size:22px}@keyframes gd-pop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:none}}.gd-foot{padding:12px 16px;padding-bottom:calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--panel);justify-content:space-between;align-items:center;gap:10px;display:flex}.gd-foot .primary{align-items:center;gap:4px;display:inline-flex}.gd-checklist{border-color:var(--accent);gap:10px;margin-bottom:14px;display:grid}.gd-checklist ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.gd-checklist li button{text-align:left;width:100%;color:inherit;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 4px;display:flex}.gd-checklist li button:hover{background:var(--panel-2)}.gd-tick{border:2px solid var(--border-strong);width:24px;height:24px;color:var(--muted);border-radius:12px;flex:none;place-items:center;font-size:12px;display:grid}.gd-checklist li.done .gd-tick{color:#fff;background:#16a34a;border-color:#16a34a}.gd-checklist li.na .gd-tick{border-style:dashed}.gd-text{flex:1;min-width:0;display:grid}.gd-text small{color:var(--muted);font-size:12px}.gd-checklist li.done .gd-text>span{color:var(--muted);text-decoration:line-through}.gd-go{color:var(--muted)}.gd-pill{background:var(--accent-soft);border-radius:999px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding:6px 12px;font-size:13px;display:flex}.gd-pill span{align-items:center;gap:6px;display:inline-flex}@media (prefers-reduced-motion:reduce){.gd-screen,.gd-mark,.gd-party,.gd-pulse{animation:none!important}}.starter-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;display:grid}.starter{gap:6px;display:grid}.starter-btn{text-align:left;border-radius:var(--radius);gap:2px;min-height:92px;padding:12px;display:grid}.starter-btn .muted{font-size:12px;font-weight:400}.starter-icon{font-size:24px}.starter.on .starter-btn{border-color:var(--accent);background:var(--accent-soft)}.tabbar{display:none}@media (width<=768px){.tabbar{z-index:40;background:var(--panel);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{color:var(--muted);justify-items:center;gap:2px;min-height:52px;padding:8px 0 6px;font-size:11px;text-decoration:none;display:grid}.tabbar a.on{color:var(--accent);font-weight:600}.page{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.toasts{bottom:calc(70px + env(safe-area-inset-bottom))}.page-head h1{display:none}.page-head{justify-content:flex-end}}.chip.lvl-intermediate{color:#b45309;border-color:#b45309}.chip.lvl-advanced{color:#b91c1c;border-color:#dc2626}:root[data-theme=dark] .chip.lvl-intermediate{color:#fbbf24;border-color:#f59e0b}:root[data-theme=dark] .chip.lvl-advanced{color:#fca5a5;border-color:#f87171}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .chip.lvl-intermediate{color:#fbbf24;border-color:#f59e0b}:root:not([data-theme=light]) .chip.lvl-advanced{color:#fca5a5;border-color:#f87171}}@media (width<=640px){.starter-grid{grid-template-columns:1fr 1fr}.starter-btn{min-height:0;padding:10px}.starter-icon{font-size:20px}}.tx{--t-bg:var(--panel);--t-panel:var(--panel);--t-ink:var(--text);--t-line:var(--border);--t-accent:var(--accent);--t-muted:var(--muted);background:var(--t-bg);color:var(--t-ink);border:1px solid var(--t-line);--cb-paper:var(--t-panel);--cb-line:var(--t-line);--cb-accent:var(--t-accent);--cb-ink:var(--t-ink);--sk-bg:var(--t-bg);--sk-panel:var(--t-panel);--sk-line:var(--t-line);--sk-ink:var(--t-ink);--sk-accent:var(--t-accent);--tb-accent:var(--t-accent)}.tx-plain{--t-on:var(--on-accent)}.tx-paper{--t-bg:#fbf6ee;--t-panel:#fffdf8;--t-ink:#2b2118;--t-line:#eadfcd;--t-accent:#c2410c;--t-muted:#7a6a58}.tx-field{--t-bg:#eef5f0;--t-panel:#fff;--t-ink:#11271b;--t-line:#cfe0d5;--t-accent:#2f9e44;--t-muted:#4f6b5a}.tx-night{--t-bg:#0f172a;--t-panel:#16213a;--t-ink:#e2e8f0;--t-line:#263352;--t-accent:#60a5fa;--t-muted:#94a3b8}:root[data-theme=dark] .tx-paper{--t-bg:#1f1b17;--t-panel:#29231e;--t-ink:#f3ece2;--t-line:#3a312a;--t-accent:#ff8a3d;--t-muted:#b8a993}:root[data-theme=dark] .tx-field{--t-bg:#0e1a14;--t-panel:#142a20;--t-ink:#e8f3ec;--t-line:#244536;--t-accent:#9ae66e;--t-muted:#9cb8a6}:root[data-theme=dark] .tx-night{--t-bg:#0f172a;--t-panel:#16213a;--t-ink:#e2e8f0;--t-line:#263352;--t-accent:#60a5fa;--t-muted:#94a3b8}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .tx-paper{--t-bg:#1f1b17;--t-panel:#29231e;--t-ink:#f3ece2;--t-line:#3a312a;--t-accent:#ff8a3d;--t-muted:#b8a993}:root:not([data-theme=light]) .tx-field{--t-bg:#0e1a14;--t-panel:#142a20;--t-ink:#e8f3ec;--t-line:#244536;--t-accent:#9ae66e;--t-muted:#9cb8a6}:root:not([data-theme=light]) .tx-night{--t-bg:#0f172a;--t-panel:#16213a;--t-ink:#e2e8f0;--t-line:#263352;--t-accent:#60a5fa;--t-muted:#94a3b8}}.tx .tx-muted,.tx .muted{color:var(--t-muted)}.tx .card{background:var(--t-panel);border-color:var(--t-line);box-shadow:none}.tx input,.tx textarea,.tx select,.tx button{background:var(--t-panel);border-color:var(--t-line);color:var(--t-ink)}.tx button.primary{background:var(--t-accent);border-color:var(--t-accent);color:var(--t-on,#fff)}.tx button.ghost,.tx .section-toggle{background:0 0;border-color:#0000}.tx .chip{border-color:var(--t-line);color:var(--t-ink);background:0 0}.tx .chip.on,.tx .chip.clickable:hover{background:var(--t-accent);border-color:var(--t-accent);color:var(--t-on,#fff)}.tx .chip.accent{color:var(--t-accent);border-color:var(--t-accent)}.tx .seg{background:var(--t-panel);border-color:var(--t-line)}.tx .seg button{background:0 0;border:none}.tx .seg button.on{background:var(--t-accent);color:var(--t-on,#fff)}.tx h1{letter-spacing:-.3px;margin:0 0 4px;font-size:28px;font-weight:800}.tx h2{letter-spacing:.5px;color:var(--t-accent);font-size:15px}.tx-font-serif h1,.tx-font-serif h2,.tx-font-serif .cb-title,.tx-font-serif .sk-title{letter-spacing:0;font-family:Georgia,Times New Roman,serif}.tx-font-serif h2{color:var(--t-ink);border-bottom:1px solid var(--t-line);padding-bottom:4px;font-size:20px}.tx-font-rounded h1,.tx-font-rounded h2,.tx-font-rounded .cb-title,.tx-font-rounded .sk-title{font-family:ui-rounded,SF Pro Rounded,Nunito,Varela Round,system-ui,sans-serif}.tx-header{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px;display:flex}.tx-kicker{letter-spacing:2px;text-transform:uppercase;color:var(--t-accent);font-size:11px;font-weight:700}.tx-text{color:var(--t-muted);margin:10px 0}.tx-focus{background:var(--t-panel);border:1px dashed var(--t-accent);border-radius:12px;padding:10px 12px 12px}.tx-subhead{margin:6px 0 12px}.tx-board{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.tx-column{background:var(--t-panel);border:1px solid var(--t-line);border-radius:12px;align-content:start;gap:8px;padding:10px;display:grid}.tx-column-head{border-bottom:1px solid var(--t-line);padding:2px 4px 6px}.sk-row.compact{grid-template-columns:1fr;padding:6px 8px}.tx .sk-row{background:var(--t-panel);border-color:var(--t-line)}.tx .attention{color:var(--t-ink)}.tx.preview button,.tx.preview a,.tx.preview input,.tx.preview select,.tx.preview textarea{pointer-events:none}.tpl-editor{grid-template-columns:minmax(300px,400px) 1fr;align-items:start;gap:16px;margin-top:10px;display:grid}.tpl-side{gap:12px;display:grid}.tpl-preview{border:1px dashed var(--border-strong);border-radius:var(--radius);max-height:calc(100vh - 24px);padding:10px;position:sticky;top:12px;overflow:auto}.tpl-preview .tpl{margin:0}@media (width<=900px){.tpl-editor{grid-template-columns:1fr}.tpl-preview{max-height:none;position:static}}.block-list{gap:6px;display:grid}.block-list.nested{border-left:2px solid var(--border);margin-left:10px;padding-left:10px}.block-item{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel)}.block-item.open{border-color:var(--accent)}.block-head{justify-content:space-between;align-items:center;gap:4px;padding-right:4px;display:flex}.block-title{text-align:left;min-width:0;color:var(--text);background:0 0;border:none;flex:1;align-items:center;gap:6px;padding:8px 10px;display:flex}.block-title .chev{color:var(--muted);display:inline-flex}.block-body{gap:8px;padding:4px 10px 10px;display:grid}.block-body label{color:var(--muted);gap:4px;font-size:13px;display:grid}.swatch{border-radius:999px;padding:6px 10px;font-size:13px}.swatch-paper{color:#2b2118;background:#fbf6ee}.swatch-field{color:#e8f3ec;background:#0e1a14}.swatch-night{color:#e2e8f0;background:#0f172a}.swatch-plain{color:#1b1d22;background:#fff}.swatch.on{outline:2px solid var(--accent);outline-offset:2px}.look-card{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);align-content:start;gap:6px;padding:10px;display:grid}.look-card .look-pick{text-align:left;color:var(--text);background:0 0;border:none;gap:6px;padding:0;text-decoration:none;display:grid}.button-like{border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--text);background:var(--panel);align-items:center;gap:6px;padding:6px 12px;text-decoration:none;display:inline-flex}.button-like.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.small-link{color:var(--accent);align-items:center;gap:4px;padding:4px 6px;font-size:13px;text-decoration:none;display:inline-flex}.tx .cb-hero .chip{color:#fff;background:#00000040;border-color:#ffffff8c}.tx .cb-hero .cb-diff,.tx .cb-hero .cb-diff-label{color:#fff}.card-wrap{position:relative}.card-menu{z-index:2;color:#fff;background:#0000008c;border-radius:999px;justify-content:center;align-items:center;width:32px;height:32px;text-decoration:none;display:inline-flex;position:absolute;top:6px;left:6px}.card-menu:hover{background:#000000bf}@media (pointer:coarse){.card-menu{width:40px;height:40px}}.calm-note{border-radius:var(--radius-sm);background:var(--panel-2);color:var(--muted);align-items:center;gap:8px;margin-top:8px;padding:10px 12px;font-size:14px;display:flex}.emoji-picker{gap:8px;display:grid}.emoji-suggest{gap:4px;display:grid}.emoji-cats{gap:4px;padding-bottom:2px;display:flex;overflow-x:auto}.emoji-cats button{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.emoji-cats button.on{border-color:var(--accent);background:var(--accent-soft)}.emoji-scroll{border:1px solid var(--border);border-radius:var(--radius-sm);max-height:216px;padding:2px;overflow-y:auto}@media (width<=640px){.emoji-cat-label{display:none}.emoji-cats button{padding:6px 9px;font-size:18px}}.suggest-row>div:first-child{flex:260px}.sg-videos{margin-top:6px}.sg-strip{border-radius:999px;align-items:center;gap:4px;padding:3px 8px 3px 3px;display:inline-flex}.sg-thumb{background:var(--panel-2) center/cover no-repeat;border-radius:5px;flex:none;justify-content:center;align-items:center;width:28px;height:36px;display:inline-flex}.sg-thumb.big{width:44px;height:58px}.sg-more{color:var(--muted);font-size:12px}.sg-show{color:var(--accent);margin-left:4px;font-size:12px}.sg-list{gap:6px;max-height:320px;display:grid;overflow-y:auto}.sg-item{grid-template-columns:44px 1fr auto;align-items:center;gap:8px;display:grid}.sg-title{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:600;text-decoration:none;display:-webkit-box;overflow:hidden}.sg-title:hover{text-decoration:underline}.sg-section{border:1px dashed var(--accent);border-radius:var(--radius);background:color-mix(in srgb, var(--accent-soft) 45%, transparent);padding:12px}.sg-head{border-top:none;padding:0}.sg-kicker{letter-spacing:1.5px;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.thumb-link{display:block;position:relative}.play-badge{color:#fff;pointer-events:none;opacity:.85;background:#0000008c;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;padding-left:2px;font-size:12px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.thumb-link:hover .play-badge{opacity:1;background:#000000bf}.item .thumb-link{align-self:start;width:fit-content}.kind-line{flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:flex}.kind-pick{gap:6px;display:grid}.invite-card{border-color:var(--accent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.share-block{border-top:1px solid var(--border);gap:8px;padding-top:10px;display:grid}.member-row{padding:4px 0}.join-box{margin:10px 0 14px}.open-elsewhere{gap:8px;margin-bottom:10px;display:grid}.open-elsewhere .button-like{justify-content:center;min-height:44px}.or-line{text-align:center;margin:4px 0 10px;font-size:12px}.ad-slot{margin:16px 0 4px}.ad-slot-head{justify-content:space-between;align-items:center;margin-bottom:4px;font-size:11px;display:flex}.ad-slot-head a{text-decoration:none}.ad-tag{border:1px solid var(--border-strong);color:var(--muted);letter-spacing:.4px;text-transform:uppercase;border-radius:4px;padding:0 5px}.ad-preview{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);min-height:90px;color:var(--muted);background:var(--panel);place-items:center;font-size:12px;display:grid}.plan-card{align-content:start;gap:10px;display:grid}.plan-card.featured{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.plan-price{letter-spacing:-.3px;font-size:22px;font-weight:800}.plan-price .muted{font-size:13px;font-weight:400}.plan-list{gap:4px;margin:0;padding-left:18px;font-size:14px;display:grid}.plan-table{border-collapse:collapse;width:100%;font-size:13px}.plan-table th,.plan-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:7px 8px}.plan-table th{color:var(--muted);font-weight:600}.plan-table td:not(:first-child){white-space:nowrap}.cost-bar{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.cost-bar>div{border-radius:3px;height:100%;transition:width .3s}.share-bg{z-index:60;background:#00000073;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.share-card{background:var(--panel);width:min(360px,100%);color:var(--text);text-align:center;border-top:4px solid var(--accent);border-radius:18px;justify-items:center;gap:8px;padding:20px 20px 16px;display:grid;box-shadow:0 24px 70px #00000059}.share-brand{color:var(--text);place-self:start;align-items:center;gap:8px;font-size:15px;font-weight:800;display:inline-flex}.share-brand img{border-radius:6px;width:22px;height:22px}.share-spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;margin-top:6px;animation:.8s linear infinite share-spin}@keyframes share-spin{to{transform:rotate(360deg)}}.share-icon{color:#fff;border-radius:50%;place-items:center;width:40px;height:40px;margin-top:6px;font-size:22px;font-weight:800;display:grid}.share-icon.ok{background:var(--good,#15803d)}.share-icon.dup{background:var(--accent);color:var(--on-accent)}.share-icon.bad{background:var(--bad)}.share-title{font-size:17px;font-weight:700}.share-sub{font-size:14px}.share-actions{justify-content:center;gap:8px;width:100%;margin-top:8px;display:flex}.share-actions .primary,.share-actions .button-like{justify-content:center;min-width:96px}.tx-week{background:var(--t-panel);border:1px solid var(--t-line);border-left:4px solid var(--t-accent);border-radius:12px;padding:12px 14px 14px}.tx-ticks{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.tx-ticks li{grid-template-columns:22px 1fr auto;align-items:center;gap:8px;font-size:15px;display:grid}.tx-ticks li a{color:inherit;font-weight:600;text-decoration:none}.tx-ticks li.done a{opacity:.7;text-decoration:line-through}.tx-ticks .tick{color:var(--t-accent);text-align:center;font-weight:800}.tx-ticks li:not(.done) .tick{color:var(--t-muted)}.tx-ticks .tx-muted{font-size:12px}.tx-nextup{border:1px solid var(--t-line);background:var(--t-bg);color:inherit;border-radius:10px;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:10px;text-decoration:none;display:grid}.tx-nextup:hover{border-color:var(--t-accent)}.tx-nextup .sk-thumb{background-color:var(--t-line);width:52px;height:68px}.tx-cues-inline{margin:4px 0 0;padding-left:18px;font-size:14px;line-height:1.35}.tx-days{grid-template-columns:repeat(28,1fr);gap:3px;margin-top:8px;display:grid}.tx-days span{aspect-ratio:1;background:var(--t-line);border-radius:3px;display:block}.tx-days span.on{background:var(--t-accent)}.tx-sessions{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.tx-sessions li{grid-template-columns:28px 1fr auto;align-items:center;gap:8px;font-size:14px;display:grid}.tx-sessions .feel{text-align:center;font-size:18px}.chip.warn{color:var(--warn);border-color:var(--warn)}.button-like.primary{background:var(--t-accent,var(--accent));border-color:var(--t-accent,var(--accent));color:var(--t-on,var(--on-accent));border-radius:10px;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-weight:600;text-decoration:none;display:inline-flex}@media (width<=640px){.tx-days{grid-template-columns:repeat(14,1fr)}}.tx-cues-big{margin:8px 0 0;padding-left:26px;font-size:20px;font-weight:600;line-height:1.35}.tx-cues-big li{margin-bottom:6px}.tx-cues-big li::marker{color:var(--t-accent)}.tx-sessions.compact{margin-top:4px;font-size:13px}.sk-train .banner-soft{margin:0}body.fs-open{overflow:hidden}.fs{z-index:100;background:var(--bg);color:var(--text);flex-direction:column;display:flex;position:fixed;inset:0}.fs-head{padding:8px 12px 8px 8px;padding-top:calc(8px + env(safe-area-inset-top));border-bottom:1px solid var(--border);grid-template-columns:auto 1fr;align-items:center;gap:8px;min-height:56px;display:grid}.fs-close{border-radius:10px;align-items:center;gap:2px;min-height:40px;padding:0 12px 0 6px;font-weight:600;display:inline-flex}.fs-title{flex-direction:column;min-width:0;display:flex}.fs-title .fs-skill{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (width<=860px){.fs-head{padding-right:100px}}.fs-skill{font-size:22px;font-weight:800;line-height:1.15}.fs-body{box-sizing:border-box;flex:1;width:100%;max-width:760px;margin:0 auto;padding:16px;overflow-y:auto}.fs-foot{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--panel);justify-content:flex-end;gap:10px;display:flex}.fs-foot button{min-height:48px;padding:0 20px;font-size:16px}.fs-cues{margin:0 0 14px;padding-left:34px;font-size:26px;font-weight:700;line-height:1.3}.fs-cues li{margin-bottom:8px}.fs-cues li::marker{color:var(--accent)}.fs-drills{gap:6px;margin-top:14px;display:grid}.fs-drill{text-align:left;border-radius:10px;grid-template-columns:44px 1fr;align-items:center;gap:10px;padding:6px 8px;font-size:14px;display:grid}.fs-drill.on{border-color:var(--accent);background:var(--accent-soft)}.fs-drill-thumb{background:var(--panel-2) center/cover no-repeat;border-radius:6px;width:44px;height:56px}.fs-wrap{gap:14px;display:grid}.fs-wrap label{color:var(--muted);gap:4px;font-size:13px;display:grid}.fs-wrap input{font-size:16px}.fs-feels{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.fs-feels button{justify-items:center;gap:2px;padding:12px 6px;font-size:14px;display:grid}.fs-feels button.on{border-color:var(--accent);background:var(--accent-soft)}.fs-feels .face{font-size:30px}.embed{gap:6px;display:grid}.embed iframe,.embed-poster{background:var(--panel-2) center/cover no-repeat;border:0;border-radius:12px;width:100%;display:block}.embed.portrait iframe,.embed.portrait .embed-poster{aspect-ratio:9/16;max-width:400px;max-height:68vh;margin:0 auto}.embed.landscape iframe,.embed.landscape .embed-poster{aspect-ratio:16/9}.embed-poster{color:#fff;text-shadow:0 1px 6px #0009;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.embed-play{background:#0009;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:26px;display:flex}.embed-hint{background:#00000080;border-radius:999px;padding:4px 10px;font-size:13px;font-weight:600}.embed-open{color:var(--muted);justify-self:center;align-items:center;gap:4px;font-size:13px;display:inline-flex}.tx-match{color:var(--t-accent,var(--accent));white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:12px;overflow:hidden}.tpl-notes-add{place-self:start;align-items:center;gap:6px;display:inline-flex}.map-link{cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.cb-columns>:only-child{grid-column:1/-1}.cb-hero-text .seg{background:#00000059;border-color:#ffffff59}.cb-hero-text .seg button{color:#fff}.cb-steps{gap:6px;margin:8px 0 0;padding-left:22px;display:grid}.cb-steps li label{cursor:pointer;grid-template-columns:20px 1fr;align-items:start;gap:8px;display:grid}.cb-steps li input{width:18px;height:18px;margin:3px 0 0}.cb-steps li.done span{opacity:.55;text-decoration:line-through}.cb-steps.big{gap:14px;padding-left:30px;font-size:22px;line-height:1.4}.cb-steps.big li input{width:24px;height:24px;margin-top:6px}.cb-steps.big li label{grid-template-columns:28px 1fr}.cb-cook{gap:18px;display:grid}.cb-cook-ings summary{cursor:pointer;font-weight:700}.cb-cook .cb-ingredients{font-size:17px}.tx-summary{color:var(--t-ink,var(--text));opacity:.85;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:13px;display:-webkit-box;overflow:hidden}.tx-note{color:var(--t-muted,var(--muted));white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:12px;overflow:hidden}.tx-stars{color:#f59e0b;letter-spacing:1px;font-size:13px}.tx-stars .dim{opacity:.25}.tx-rate{gap:0;display:inline-flex}.tx-rate button{color:var(--t-line,var(--border-strong));cursor:pointer;background:0 0;border:none;min-height:0;padding:0 2px;font-size:20px;line-height:1}.tx-rate button.on,.tx-rate button:hover{color:#f59e0b}.modal.wide{width:min(1100px,100%)}.look-try{border:1px solid var(--border);border-radius:var(--radius);max-height:70vh;padding:8px;overflow-y:auto}.look-try .tpl{margin:0}.prompt-bg{z-index:110}.modal.prompt{text-align:center;gap:8px;width:min(380px,100%)}.prompt-icon{color:var(--muted);justify-content:center;display:flex}.avatar{color:#fff;letter-spacing:.5px;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.profile-head{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;margin-bottom:14px;display:grid}.profile-head h1{margin:0 0 4px;font-size:24px}.profile-id{gap:4px;min-width:0;display:grid}.profile-head .ghost{align-items:center;gap:6px;display:inline-flex}@media (width<=640px){.profile-head{grid-template-columns:auto 1fr}.profile-head .ghost{grid-column:1/-1;justify-self:start}}.stat-row{grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0;display:grid}@media (width<=640px){.stat-row{grid-template-columns:repeat(2,1fr)}}.stat-tile{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);color:inherit;box-shadow:var(--shadow);gap:2px;padding:12px 14px;text-decoration:none;display:grid}.stat-tile b{font-size:24px;line-height:1.1}.stat-tile span{color:var(--muted);font-size:12px}.stat-tile em{color:var(--accent);font-size:12px;font-style:normal;font-weight:600}a.stat-tile:hover{border-color:var(--accent)}.pf-domains{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.pf-domain{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);color:inherit;align-items:center;gap:10px;min-width:0;padding:8px 10px;text-decoration:none;display:flex}.pf-domain:hover{border-color:var(--accent)}.pf-sections{gap:8px;display:grid}.pf-section{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.pf-section>summary{cursor:pointer;box-sizing:border-box;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:12px 14px;list-style:none;display:flex}.pf-section>summary::-webkit-details-marker{display:none}.pf-section>summary svg{color:var(--muted);flex:none;transition:transform .15s}.pf-section[open]>summary svg{transform:rotate(180deg)}.pf-section[open]>summary{border-bottom:1px solid var(--border)}.pf-hint{font-size:13px;font-weight:400}.pf-body{gap:10px;padding:12px 14px 14px;display:grid}.pf-body label{color:var(--muted);gap:4px;font-size:13px;display:grid}.pf-body label>input{color:var(--text);font-size:14px}input[aria-invalid=true],textarea[aria-invalid=true]{border-color:var(--bad)}.error-box{border-color:var(--bad);color:var(--text)}.fs-player{color:#fff;background:#000}.fs-player .fs-head{z-index:3;background:linear-gradient(#000000bf,#0000);border:0;grid-template-columns:auto 1fr auto;padding-bottom:20px;position:absolute;top:0;left:0;right:0}.fs-player .fs-close{color:#fff;background:#00000059}.fs-player .fs-title .fs-skill{text-shadow:0 1px 4px #000c;font-size:14px}.fs-count{opacity:.75;font-size:12px}.fs-nav{gap:2px;display:inline-flex}.fs-nav .ibtn{color:#fff;background:#00000059;border-color:#0000}@media (width<=860px){.fs-player .fs-nav{display:none}}.fs-player .fs-body{flex-direction:column;max-width:none;padding:0;display:flex;overflow:hidden}.fs-stage{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.fs-stage .embed{justify-content:center;align-items:center;gap:0;width:100%;height:100%;display:flex}.fs-stage .embed iframe,.fs-stage .embed .embed-poster,.fs-stage .fb-wrap{background-color:#000;border-radius:0;max-width:none;max-height:none;margin:0}.fs-stage .embed.portrait iframe,.fs-stage .embed.portrait .embed-poster{aspect-ratio:9/16;width:auto;max-width:100%;height:100%}.fs-stage .embed.landscape iframe,.fs-stage .embed.landscape .embed-poster{aspect-ratio:16/9;width:100%;height:auto;max-height:100%}.fs-stage .fb-wrap{justify-content:center;align-items:center;max-height:100%;display:flex;overflow:hidden}.fs-endcard{z-index:2;box-sizing:border-box;background:#000000db;align-content:safe center;gap:14px;padding:84px 16px 16px;display:grid;position:absolute;inset:0;overflow-y:auto}.fs-endcard-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:16px;display:flex}.fs-endcard-head .muted{color:#bbb}.fs-endcard .link{color:var(--accent-2)}.fs-upnext{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}@media (width<=640px){.fs-upnext{grid-template-columns:repeat(3,1fr);gap:8px}.fs-upnext-thumb{max-height:150px}.fs-upnext-title{font-size:12px}}.fs-upnext-item{color:#fff;text-align:left;background:0 0;border:0;gap:6px;padding:0;display:grid}.fs-upnext-item.first .fs-upnext-thumb{outline:2px solid var(--accent)}.fs-upnext-thumb{aspect-ratio:9/16;box-sizing:border-box;background:#222 50%/cover no-repeat;border-radius:10px;justify-content:flex-end;align-items:flex-end;width:100%;max-height:180px;padding:6px;display:flex}.fs-upnext-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.25;display:-webkit-box;overflow:hidden}.fs-upnext-from{color:#9a9a9a;font-size:11px}.fs-from{color:#bbb;font-size:14px;font-weight:400}.fs-endcard button,.fs-endcard .button-like{color:#fff;background:#ffffff1f;border-color:#ffffff40;align-items:center;gap:6px;display:inline-flex}.fs-strip{padding:8px 10px calc(8px + env(safe-area-inset-bottom));scrollbar-width:none;background:#000;border-top:1px solid #222;flex:none;gap:6px;display:flex;overflow-x:auto}.fs-strip::-webkit-scrollbar{display:none}.fs-strip-item{color:#fff;opacity:.7;background:#222 50%/cover no-repeat;border:2px solid #0000;border-radius:8px;flex:none;justify-content:center;align-items:center;width:44px;height:60px;padding:0;display:flex}.fs-strip-item.on{border-color:var(--accent);opacity:1}.progress-bar{z-index:120;pointer-events:none;background:0 0;height:3px;position:fixed;top:0;left:0;right:0;overflow:hidden}.progress-bar span{background:var(--accent);border-radius:3px;width:35%;animation:1.1s ease-in-out infinite slide;position:absolute;top:0;bottom:0}@keyframes slide{0%{left:-35%}to{left:100%}}.offline-bar{left:50%;top:calc(8px + env(safe-area-inset-top));z-index:110;color:#fff;text-align:center;background:#1b1d22;border-radius:999px;max-width:calc(100% - 32px);padding:8px 14px;font-size:13px;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0000004d}.no-results{padding:28px 16px}.fs-endcard .fs-upnext-item{background:0 0;border:0;padding:0;display:grid}
