:root{--ss-paper:#f4f1ec;--ss-paper-2:#ece7df;--ss-paper-3:#e0d9cb;--ss-card:#fff;--ss-card-hi:#fff;--ss-blush:#f5d8d6;--ss-blush-2:#f8c7c0;--ss-peach:#ffd4bf;--ss-butter:#f7e4a8;--ss-mint:#c8e0c8;--ss-sky:#cdd9ee;--ss-lilac:#d8d2ea;--ss-ink:#15110e;--ss-ink-2:#2e2823;--ss-ink-3:#6b6359;--ss-ink-4:#9c9388;--ss-hairline:#e2dccf;--ss-hairline-2:#cdc6b6;--ss-coral:#ff7a59;--ss-coral-soft:#ffd9cc;--ss-electric:#5b6cff;--ss-lime:#c8ee45;--ss-aubergine:#1f1430;--ss-grad-blush:linear-gradient(135deg, #ffc4b8 0%, #ffe0a8 50%, #c8d8ff 100%);--ss-grad-coral:linear-gradient(135deg, #ff9b7a 0%, #ff7a59 100%);--ss-grad-sunset:linear-gradient(135deg, #ffb88e 0%, #ff7a8a 50%, #b88eff 100%);--ss-grad-mint-sky:linear-gradient(135deg, #c8e0c8 0%, #cdd9ee 100%);--ss-ok:#4f8c5e;--ss-warn:#d4944a;--ss-danger:#c04545;--ss-info:#5b6cff;--ss-src-rss:#b87545;--ss-src-reddit:#c84a2a;--ss-src-hn:#c66a32;--ss-src-google:#4a6bb0;--ss-src-sitemap:#4a8090;--ss-src-keywords:#5e8a55;--ss-ch-linkedin:#2e578e;--ss-ch-instagram:#c34b8c;--ss-ch-reddit:#c84a2a;--ss-ch-text:#5e7559;--ss-font-display:"Inter Tight", "Inter", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, Arial, sans-serif;--ss-font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--ss-font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--ss-font-serif:"Fraunces", Georgia, "Times New Roman", serif;--ss-text-xs:11px;--ss-text-sm:13px;--ss-text-base:15px;--ss-text-md:17px;--ss-text-lg:21px;--ss-text-xl:28px;--ss-text-2xl:42px;--ss-text-3xl:64px;--ss-text-4xl:96px;--ss-text-5xl:140px;--ss-lh-tight:.95;--ss-lh-snug:1.08;--ss-lh-normal:1.45;--ss-lh-prose:1.6;--ss-track-tightest:-.045em;--ss-track-tight:-.03em;--ss-track-snug:-.015em;--ss-track-normal:0;--ss-track-mono:.06em;--ss-w-regular:400;--ss-w-medium:500;--ss-w-semibold:600;--ss-w-bold:700;--ss-w-black:900;--ss-space-1:4px;--ss-space-2:8px;--ss-space-3:12px;--ss-space-4:16px;--ss-space-5:20px;--ss-space-6:24px;--ss-space-8:32px;--ss-space-10:40px;--ss-space-12:48px;--ss-space-16:64px;--ss-space-20:80px;--ss-space-24:96px;--ss-radius-xs:6px;--ss-radius-sm:12px;--ss-radius-md:18px;--ss-radius-lg:24px;--ss-radius-xl:32px;--ss-radius-2xl:48px;--ss-radius-pill:999px;--ss-border-1:1px solid var(--ss-hairline);--ss-border-2:1px solid var(--ss-hairline-2);--ss-border-ink:1.5px solid var(--ss-ink);--ss-shadow-xs:0 1px 0 #15110e0a;--ss-shadow-sm:0 2px 8px #15110e0a, 0 1px 2px #15110e0d;--ss-shadow-md:0 12px 28px #15110e12, 0 2px 6px #15110e0a;--ss-shadow-lg:0 32px 64px #15110e1a, 0 6px 16px #15110e0d;--ss-content-max:1320px;--ss-app-max:1000px;--ss-app-wide-max:1200px;--ss-prose-max:640px;--ss-sidebar:300px;--ss-header-h:72px;--ss-ease:cubic-bezier(.2, .6, .2, 1);--ss-ease-out:cubic-bezier(.16, 1, .3, 1);--ss-dur-fast:.14s;--ss-dur-base:.22s;--ss-dur-slow:.48s;--ss-z-base:1;--ss-z-sticky:10;--ss-z-overlay:100;--ss-z-modal:1000;--ss-z-toast:2000;--ss-sage:#5e8a55;--ss-sage-soft:#d8e6d3;--ss-sage-ink:#2e4f2c;--ss-terracotta:var(--ss-coral);--ss-terracotta-soft:var(--ss-coral-soft);--ss-terracotta-ink:#8a3520;--primary:var(--ss-ink);--primary-fg:var(--ss-paper);--accent:var(--ss-coral);--bg:var(--ss-paper);--surface:var(--ss-card);--text:var(--ss-ink);--muted:var(--ss-ink-3);--border:var(--ss-hairline)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--ss-font-sans);font-size:var(--ss-text-base);line-height:var(--ss-lh-normal);color:var(--ss-ink);background:var(--ss-paper);-webkit-font-smoothing:antialiased}#root{min-height:100vh}.toast-container{z-index:var(--ss-z-toast);gap:var(--ss-space-2);flex-direction:column;display:flex;position:fixed;bottom:20px;right:20px}.toast{padding:var(--ss-space-3) var(--ss-space-5);border-radius:var(--ss-radius-sm);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);color:#fff;animation:toastIn var(--ss-dur-base) var(--ss-ease-out);box-shadow:var(--ss-shadow-md);max-width:360px}.toast-success{background:var(--ss-ok)}.toast-error{background:var(--ss-danger)}.toast-info{background:var(--ss-ink)}@keyframes toastIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{background:var(--ss-card);border-bottom:var(--ss-border-1);height:var(--ss-header-h);align-items:center;gap:24px;padding:10px 20px;display:flex}.topbar-brand{font-family:var(--ss-font-display);font-weight:var(--ss-w-black);letter-spacing:-.04em;color:var(--ss-ink);align-items:baseline;font-size:26px;text-decoration:none;display:inline-flex}.brand-word{color:var(--ss-ink)}.brand-dot{color:var(--ss-coral)}.topbar-nav{gap:4px;display:flex}.topbar-link{border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);color:var(--ss-ink-3);transition:background var(--ss-dur-fast) var(--ss-ease), color var(--ss-dur-fast) var(--ss-ease);padding:6px 16px;text-decoration:none}.topbar-link:hover{background:var(--ss-paper-2);color:var(--ss-ink)}.topbar-link.active{background:var(--ss-ink);color:var(--ss-paper)}.topbar-sep{background:var(--ss-hairline);width:1px;height:20px;margin:0 4px}.topbar-link--subtle{color:var(--ss-ink-4);font-size:var(--ss-text-xs)}.topbar-user{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-weight:var(--ss-w-medium)}.topbar-logout{border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);font-size:var(--ss-text-xs);cursor:pointer;color:var(--ss-ink-3);font-family:var(--ss-font-sans);padding:4px 12px;transition:border-color .2s,color .2s}.topbar-logout:hover{border-color:var(--ss-danger,#dc3545);color:var(--ss-danger,#dc3545)}.main{padding:var(--ss-space-4);background:var(--ss-paper);flex:1}.main--home{background:var(--ss-blush);padding:0}.beta-badge{z-index:9999;pointer-events:none;font-family:var(--ss-font-mono,monospace);letter-spacing:var(--ss-track-mono,.12em);text-transform:uppercase;color:#fff;background:var(--ss-warn,#d4944a);border-radius:var(--ss-radius-pill,999px);-webkit-user-select:none;user-select:none;padding:5px 12px;font-size:10px;font-weight:600;position:fixed;bottom:16px;right:16px;box-shadow:0 2px 8px #15110e2e}@media (width<=640px){.beta-badge{padding:4px 10px;font-size:9px;bottom:12px;right:12px}}.hero{background:var(--ss-blush);justify-content:center;align-items:center;min-height:100vh;padding:64px 48px 80px;display:flex;position:relative;overflow:hidden}.hero-blob{pointer-events:none;border-radius:50%;position:absolute}.hero-blob--sunset{background:var(--ss-grad-sunset);opacity:.85;width:500px;height:500px;top:-140px;right:-100px}.hero-blob--mint{background:var(--ss-grad-mint-sky);opacity:.6;width:300px;height:300px;bottom:-80px;left:-60px}.hero-content{z-index:2;width:100%;max-width:960px;position:relative}.hero-top{justify-content:space-between;align-items:center;margin-bottom:56px;display:flex}.hero-meta{font-family:var(--ss-font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ss-ink-2);font-size:12px}.hero-lockup{font-family:var(--ss-font-display);letter-spacing:-.05em;color:var(--ss-ink);margin-bottom:48px;font-size:clamp(72px,14vw,180px);font-weight:900;line-height:.88}.hero-word{color:var(--ss-ink)}.hero-dot{color:var(--ss-coral)}.hero-tagline{font-family:var(--ss-font-serif);letter-spacing:-.025em;color:var(--ss-ink-2);font-size:.62em;font-style:italic;font-weight:400;line-height:1;display:block}.hero-rotating{transition:opacity .3s var(--ss-ease), transform .3s var(--ss-ease);display:inline-block}.hero-rotating--in{opacity:1;transform:translateY(0)}.hero-rotating--out{opacity:0;transform:translateY(-20px)}.hero-desc{font-size:var(--ss-text-md);line-height:var(--ss-lh-normal);color:var(--ss-ink-2);max-width:48ch;margin-bottom:56px}.hero-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.hero-sub{font-family:var(--ss-font-mono);letter-spacing:.05em;color:var(--ss-ink-3);text-transform:lowercase;font-size:13px}.hero-cta{background:var(--ss-grad-coral);color:#fff;border-radius:var(--ss-radius-pill);font-family:var(--ss-font-sans);font-size:var(--ss-text-base);font-weight:var(--ss-w-semibold);cursor:pointer;transition:transform var(--ss-dur-fast) var(--ss-ease), box-shadow var(--ss-dur-fast) var(--ss-ease);border:none;padding:14px 32px}.hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ff7a594d}.hero-cta-row{align-items:center;gap:var(--ss-space-4);display:flex}.hero-admin-link{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-3);cursor:pointer;letter-spacing:var(--ss-track-mono)}.hero-admin-link:hover{color:var(--ss-ink)}@media (width<=768px){.hero{padding:40px 24px 56px}.hero-top,.hero-desc{margin-bottom:32px}}.prof{max-width:var(--ss-app-max);margin:0 auto}.prof-header{margin-bottom:var(--ss-space-5);justify-content:space-between;align-items:center;display:flex}.prof-title{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight);margin-bottom:0}.prof-new-btn{padding:var(--ss-space-2) var(--ss-space-5);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);cursor:pointer;transition:background var(--ss-dur-fast) var(--ss-ease);border:none}.prof-new-btn:hover{background:var(--ss-ink-2)}.prof-loading,.prof-error,.prof-empty{text-align:center;padding:var(--ss-space-10);color:var(--ss-ink-4);font-size:var(--ss-text-base)}.prof-error{color:var(--ss-danger)}.prof-grid{gap:var(--ss-space-3);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.prof-card{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);cursor:pointer;box-shadow:var(--ss-shadow-xs);transition:box-shadow var(--ss-dur-fast) var(--ss-ease), border-color var(--ss-dur-fast) var(--ss-ease), transform var(--ss-dur-fast) var(--ss-ease)}.prof-card:hover{border-color:var(--ss-ink);box-shadow:var(--ss-shadow-sm);transform:translateY(-2px)}.prof-card-name{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-bold);margin-bottom:var(--ss-space-2)}.prof-card-desc{font-size:var(--ss-text-sm);color:var(--ss-ink-3);line-height:var(--ss-lh-normal);margin-bottom:var(--ss-space-3)}.prof-card-channels{gap:var(--ss-space-1);display:flex}.prof-card-ch{font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);color:#fff;padding:2px var(--ss-space-2);border-radius:var(--ss-radius-xs);text-transform:uppercase;font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono)}.prof-new-form{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);margin-bottom:var(--ss-space-4);box-shadow:var(--ss-shadow-sm)}.prof-new-form label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);margin-bottom:var(--ss-space-1);margin-top:var(--ss-space-3);color:var(--ss-ink-2);display:block}.prof-new-form input,.prof-new-form textarea{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans)}.prof-ch-row{gap:var(--ss-space-2);margin-top:var(--ss-space-1);display:flex}.prof-ch-btn{padding:var(--ss-space-2) var(--ss-space-4);font-size:var(--ss-text-sm);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);text-transform:capitalize;transition:all var(--ss-dur-fast) var(--ss-ease)}.prof-ch-btn.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.prof-create-btn{margin-top:var(--ss-space-4);padding:var(--ss-space-3) var(--ss-space-6);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);cursor:pointer;border:none}.prof-create-btn:hover{background:var(--ss-ink-2)}.prof-create-btn:disabled{opacity:.4}@media (width<=768px){.prof-grid{grid-template-columns:1fr}}.spinner-overlay{z-index:var(--ss-z-modal);background:#15110e73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.spinner-inner{text-align:center}.spinner-ring{width:40px;height:40px;margin:0 auto var(--ss-space-4);border:4px solid #ffffff4d;border-top-color:#fff;border-radius:50%;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spinner-msg{color:#fff;font-size:var(--ss-text-base);font-weight:var(--ss-w-medium)}.ws{gap:var(--ss-space-3);height:calc(100vh - var(--ss-header-h) - 32px);grid-template-columns:1fr 1fr;display:grid}.ws-left,.ws-right{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-md);box-shadow:var(--ss-shadow-xs);flex-direction:column;display:flex;overflow:hidden}.ws-right-header{padding:var(--ss-space-3) var(--ss-space-4);border-bottom:var(--ss-border-1);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.ws-right-title{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin:0}.ws-right-actions{align-items:center;gap:var(--ss-space-2);display:flex}.ws-post-count{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.ws-preselect-banner{padding:var(--ss-space-2) var(--ss-space-4);background:var(--ss-blush);border:1px solid var(--ss-coral-soft);border-radius:var(--ss-radius-md);font-size:var(--ss-text-sm);color:var(--ss-ink-2);grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.ws-preselect-clear{font-size:var(--ss-text-xs);color:var(--ss-coral);cursor:pointer;font-weight:var(--ss-w-medium);background:0 0;border:none}.ws-preselect-clear:hover{text-decoration:underline}@media (width<=900px){.ws{grid-template-columns:1fr;height:auto}.ws-left,.ws-right{max-height:70vh}}.nf{flex-direction:column;height:100%;display:flex}.nf-header{padding:var(--ss-space-3) var(--ss-space-4);border-bottom:var(--ss-border-1);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.nf-header h2{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin:0}.nf-meta-inline{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.nf-scroll{flex:1;overflow-y:auto}.nf-btn{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-2);font-weight:var(--ss-w-medium);transition:all var(--ss-dur-fast) var(--ss-ease)}.nf-btn:hover{background:var(--ss-paper-2)}.nf-btn:disabled{opacity:.4;cursor:default}.nf-btn-primary{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.nf-btn-primary:hover{background:var(--ss-ink-2)}.nf-filters{padding:var(--ss-space-2) var(--ss-space-4);gap:var(--ss-space-1);border-bottom:var(--ss-border-1);flex-wrap:wrap;flex-shrink:0;display:flex}.nf-filter{padding:2px var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3)}.nf-filter.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.nf-link{color:var(--ss-coral);font-weight:var(--ss-w-medium);text-decoration:none}.nf-link:hover{text-decoration:underline}.nf-selected-bar{background:var(--ss-sky);border-bottom:2px solid var(--ss-electric);padding:var(--ss-space-3) var(--ss-space-4);flex-shrink:0}.nf-selected-header{justify-content:space-between;align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-2);flex-wrap:wrap;display:flex}.nf-selected-count{font-size:var(--ss-text-sm);font-weight:var(--ss-w-semibold);color:var(--ss-electric)}.nf-gen-controls{gap:var(--ss-space-1);flex-wrap:wrap;align-items:center;display:flex}.nf-gen-controls select,.nf-gen-controls input{padding:var(--ss-space-1) var(--ss-space-2);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-xs)}.nf-selected-item{padding:var(--ss-space-1) var(--ss-space-2);margin-top:var(--ss-space-1);background:var(--ss-card);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-xs);cursor:pointer;justify-content:space-between;align-items:center;display:flex}.nf-selected-item:hover{background:var(--ss-paper)}.nf-selected-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.nf-selected-remove{color:var(--ss-ink-4);margin-left:var(--ss-space-2)}.nf-article{padding:var(--ss-space-3) var(--ss-space-4);border-bottom:var(--ss-border-1);justify-content:space-between;align-items:flex-start;gap:var(--ss-space-3);cursor:pointer;transition:background var(--ss-dur-fast) var(--ss-ease);display:flex}.nf-article:hover{background:var(--ss-paper-1)}.nf-article-selected{background:var(--ss-sky)!important}.nf-article-body{flex:1;min-width:0}.nf-article-title{font-size:var(--ss-text-sm);font-weight:var(--ss-w-semibold);color:var(--ss-ink);line-height:var(--ss-lh-snug);display:block}.nf-article-summary{font-size:var(--ss-text-xs);color:var(--ss-ink-3);line-height:var(--ss-lh-normal);margin:4px 0 0}.nf-article-footer{gap:var(--ss-space-2);font-size:var(--ss-text-xs);color:var(--ss-ink-4);flex-wrap:wrap;align-items:center;margin-top:6px;display:flex}.nf-article-source{font-weight:var(--ss-w-medium)}.nf-article-date{font-family:var(--ss-font-mono);font-size:10px}.nf-article-sentiment{font-weight:var(--ss-w-semibold);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.nf-article-link{color:var(--ss-coral);font-weight:var(--ss-w-medium);text-decoration:none}.nf-article-link:hover{text-decoration:underline}.nf-article-cats{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.nf-article-cat{border-radius:var(--ss-radius-pill);background:var(--ss-paper-2);color:var(--ss-ink-3);font-size:10px;font-weight:var(--ss-w-medium);padding:1px 8px}.nf-select-btn{border:var(--ss-border-1);border-radius:var(--ss-radius-xs);background:var(--ss-card);cursor:pointer;width:28px;height:28px;font-size:var(--ss-text-base);color:var(--ss-ink-3);transition:all var(--ss-dur-fast) var(--ss-ease);flex-shrink:0;justify-content:center;align-items:center;display:flex}.nf-select-btn:hover{border-color:var(--ss-electric);color:var(--ss-electric);background:var(--ss-sky)}.nf-select-btn-active{background:var(--ss-electric);color:#fff;border-color:var(--ss-electric)}.nf-empty{padding:var(--ss-space-10) var(--ss-space-4);text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm)}.pl{padding:var(--ss-space-1) 0;flex:1;overflow-y:auto}.pl-empty{padding:var(--ss-space-10) var(--ss-space-4);text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm)}.pl-section-head{justify-content:space-between;align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-2) var(--ss-space-4);border-bottom:var(--ss-border-1);font-size:var(--ss-text-xs);color:var(--ss-ink-4);background:var(--ss-card);z-index:2;display:flex;position:sticky;top:0}.pl-card{padding:var(--ss-space-3) var(--ss-space-4);border-bottom:var(--ss-border-1);transition:background var(--ss-dur-fast) var(--ss-ease)}.pl-card:hover{background:var(--ss-paper)}.pl-card-archived{opacity:.82}.pl-card-header{align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-2);display:flex}.pl-channel{font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);color:#fff;padding:2px var(--ss-space-2);border-radius:var(--ss-radius-xs);text-transform:uppercase;font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono)}.pl-date{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-family:var(--ss-font-mono)}.pl-status{font-size:var(--ss-text-xs);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-pill);font-weight:var(--ss-w-semibold)}.pl-del{color:var(--ss-ink-4);cursor:pointer;padding:0 var(--ss-space-1);transition:color var(--ss-dur-fast);background:0 0;border:none;margin-left:auto;font-size:1rem}.pl-del:hover{color:var(--ss-danger)}.pl-origin{margin-bottom:var(--ss-space-2)}.pl-origin a{font-size:var(--ss-text-xs);color:var(--ss-electric);text-decoration:none}.pl-origin a:hover{text-decoration:underline}.pl-text{font-size:var(--ss-text-sm);line-height:var(--ss-lh-prose);color:var(--ss-ink);white-space:pre-wrap;word-break:break-word;padding:var(--ss-space-2);border-radius:var(--ss-radius-xs);cursor:pointer;border:1px solid #0000;max-height:200px;overflow-y:auto}.pl-text:hover{border-color:var(--ss-hairline)}.pl-edit textarea{width:100%;padding:var(--ss-space-2);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans);border:1px solid var(--ss-electric);border-radius:var(--ss-radius-xs);resize:vertical;line-height:var(--ss-lh-prose)}.pl-edit-actions,.pl-actions{gap:var(--ss-space-1);margin-top:var(--ss-space-2);display:flex}.pl-notes{font-size:var(--ss-text-xs);color:var(--ss-ink-3);margin-top:var(--ss-space-2);padding-left:var(--ss-space-2);border-left:2px solid var(--ss-hairline);font-style:italic}.cv{padding:var(--ss-space-2);flex:1;overflow-y:auto}.cv-nav{padding:var(--ss-space-1) var(--ss-space-2);margin-bottom:var(--ss-space-2);justify-content:space-between;align-items:center;display:flex}.cv-nav-btn{font-size:var(--ss-text-lg);cursor:pointer;color:var(--ss-ink-3);padding:var(--ss-space-1) var(--ss-space-2);transition:color var(--ss-dur-fast);background:0 0;border:none}.cv-nav-btn:hover{color:var(--ss-electric)}.cv-month{font-family:var(--ss-font-display);font-weight:var(--ss-w-bold);font-size:var(--ss-text-base)}.cv-filters{gap:var(--ss-space-1);padding:0 var(--ss-space-2) var(--ss-space-2);flex-wrap:wrap;display:flex}.cv-grid{background:var(--ss-hairline);border-radius:var(--ss-radius-sm);grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.cv-dow{background:var(--ss-paper-2);text-align:center;font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-4);padding:var(--ss-space-1);text-transform:uppercase;font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono)}.cv-day{background:var(--ss-card);cursor:pointer;min-height:40px;transition:background var(--ss-dur-fast) var(--ss-ease);flex-direction:column;justify-content:center;align-items:center;padding:2px;display:flex;position:relative}.cv-day:hover{background:var(--ss-paper-2)}.cv-day-empty{background:var(--ss-paper);cursor:default}.cv-day-empty:hover{background:var(--ss-paper)}.cv-day-has{background:#fafdf8}.cv-day-active{outline:2px solid var(--ss-electric);z-index:1;background:var(--ss-sky)!important}.cv-day-over{outline:2px dashed var(--ss-electric);background:var(--ss-sky)!important}.cv-num{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-4)}.cv-day-count{font-size:10px;font-weight:var(--ss-w-bold);color:#fff;background:var(--ss-electric);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;margin-top:1px;display:flex}.ped{flex-direction:column;height:100%;display:flex;overflow:hidden}.ped-cal{padding:var(--ss-space-2);border-bottom:var(--ss-border-1);flex-shrink:0}.ped-list{flex-direction:column;flex:1;display:flex;overflow:hidden}.ped-list-head{padding:var(--ss-space-2) var(--ss-space-4);border-bottom:var(--ss-border-1);font-size:var(--ss-text-xs);color:var(--ss-ink-4);background:var(--ss-card);z-index:2;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.ped-list-scroll{flex:1;overflow-y:auto}.modal-overlay{z-index:var(--ss-z-modal);background:#15110e66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:var(--ss-card);border-radius:var(--ss-radius-lg);width:520px;max-width:92vw;max-height:85vh;box-shadow:var(--ss-shadow-lg);overflow-y:auto}.modal-header{padding:var(--ss-space-4) var(--ss-space-5);border-bottom:var(--ss-border-1);justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin:0}.modal-close{font-size:var(--ss-text-lg);cursor:pointer;color:var(--ss-ink-4);background:0 0;border:none}.modal-close:hover{color:var(--ss-ink)}.modal-tabs{padding:var(--ss-space-3) var(--ss-space-5) 0;gap:0;display:flex}.modal-tab{padding:var(--ss-space-2) var(--ss-space-4);font-size:var(--ss-text-sm);border:var(--ss-border-1);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3)}.modal-tab:first-child{border-radius:var(--ss-radius-xs) 0 0 var(--ss-radius-xs)}.modal-tab:last-child{border-radius:0 var(--ss-radius-xs) var(--ss-radius-xs) 0}.modal-tab.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.modal-body{padding:var(--ss-space-4) var(--ss-space-5)}.modal-row{margin-bottom:var(--ss-space-3)}.modal-row label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);margin-bottom:var(--ss-space-1);color:var(--ss-ink-2);display:block}.modal-row input,.modal-row textarea,.modal-row select{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans);transition:border-color var(--ss-dur-fast)}.modal-row input:focus,.modal-row textarea:focus,.modal-row select:focus{border-color:var(--ss-electric);outline:none}.modal-row textarea{resize:vertical}.modal-footer{justify-content:flex-end;gap:var(--ss-space-2);padding:var(--ss-space-3) var(--ss-space-5);border-top:var(--ss-border-1);display:flex}.ws-sug-banner{align-items:center;gap:var(--ss-space-3);padding:var(--ss-space-3) var(--ss-space-4);background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-md);flex-wrap:wrap;grid-column:1/-1;display:flex}.ws-sug-label{font-size:var(--ss-text-sm);color:var(--ss-ink-3);font-weight:var(--ss-w-medium);white-space:nowrap}.ws-sug-chips{gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.ws-sug-chip{background:var(--ss-paper);border:1px solid var(--ss-coral);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-xs);color:var(--ss-coral);cursor:pointer;font-weight:var(--ss-w-medium);transition:all var(--ss-dur-fast);padding:3px 12px}.ws-sug-chip:hover{background:var(--ss-coral);color:#fff}.ws-sug-dismiss{color:var(--ss-ink-4);font-size:var(--ss-text-xs);cursor:pointer;background:0 0;border:none;margin-left:auto}.ws-sug-dismiss:hover{color:var(--ss-ink-3)}.cal{max-width:var(--ss-app-wide-max);margin:0 auto}.cal-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:center;display:flex}.cal-header h1{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight);margin:0}.cal-header-right{align-items:center;gap:var(--ss-space-3);display:flex}.cal-view-toggle{gap:0;display:flex}.cal-toggle-btn{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-sm);border:var(--ss-border-1);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);transition:all var(--ss-dur-fast) var(--ss-ease)}.cal-toggle-btn:first-child{border-radius:var(--ss-radius-xs) 0 0 var(--ss-radius-xs)}.cal-toggle-btn:last-child{border-radius:0 var(--ss-radius-xs) var(--ss-radius-xs) 0}.cal-toggle-btn.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.cal-filters{gap:var(--ss-space-2);display:flex}.cal-filters select{padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans);background:var(--ss-card)}.cal-nav{justify-content:center;align-items:center;gap:var(--ss-space-4);margin-bottom:var(--ss-space-3);display:flex}.cal-nav-btn{font-size:var(--ss-text-xl);cursor:pointer;color:var(--ss-ink-3);padding:var(--ss-space-1) var(--ss-space-3);transition:color var(--ss-dur-fast);background:0 0;border:none}.cal-nav-btn:hover{color:var(--ss-electric)}.cal-month-label{font-family:var(--ss-font-display);font-weight:var(--ss-w-bold);font-size:var(--ss-text-lg);text-align:center;min-width:200px}.cal-stats{gap:var(--ss-space-4);margin-bottom:var(--ss-space-3);font-size:var(--ss-text-sm);color:var(--ss-ink-3);justify-content:center;display:flex}.cal-stat-draft{color:var(--ss-warn)}.cal-stat-ready{color:var(--ss-ok)}.cal-stat-pub{color:var(--ss-info)}.cal-grid{background:var(--ss-hairline);border-radius:var(--ss-radius-md);box-shadow:var(--ss-shadow-sm);grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.cal-dow{background:var(--ss-paper-2);text-align:center;padding:var(--ss-space-2);font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);color:var(--ss-ink-4);text-transform:uppercase;font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono)}.cal-day{background:var(--ss-card);min-height:90px;padding:var(--ss-space-1);transition:background var(--ss-dur-fast);position:relative}.cal-day-empty{background:var(--ss-paper)}.cal-day-has{background:#fcfcfa}.cal-day-today{outline:2px solid var(--ss-electric);outline-offset:-2px}.cal-day-over{outline:2px dashed var(--ss-electric);background:var(--ss-sky)!important}.cal-num{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-4);padding:2px 4px;display:block}.cal-post{font-size:var(--ss-text-xs);border-radius:var(--ss-radius-xs);cursor:grab;border-left:3px solid var(--ss-ink-4);transition:box-shadow var(--ss-dur-fast);align-items:center;gap:3px;margin-bottom:2px;padding:3px 5px;display:flex}.cal-post:hover{box-shadow:var(--ss-shadow-sm)}.cal-post-ch{font-size:9px;font-weight:var(--ss-w-bold);color:#fff;text-transform:uppercase;font-family:var(--ss-font-mono);border-radius:2px;padding:1px 4px}.cal-post-txt{text-overflow:ellipsis;white-space:nowrap;color:var(--ss-ink-2);flex:1;font-size:11px;overflow:hidden}.cal-detail-overlay{z-index:var(--ss-z-modal);background:#15110e66;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.cal-detail{background:var(--ss-card);border-radius:var(--ss-radius-lg);width:560px;max-width:92vw;max-height:80vh;box-shadow:var(--ss-shadow-lg);padding:var(--ss-space-5);overflow-y:auto}.cal-detail-header{align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-4);display:flex}.cal-detail-ch{font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);color:#fff;padding:3px var(--ss-space-2);border-radius:var(--ss-radius-xs);text-transform:uppercase}.cal-detail-date{font-size:var(--ss-text-sm);color:var(--ss-ink-3);font-family:var(--ss-font-mono)}.cal-detail-status{font-size:var(--ss-text-xs);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-pill);background:var(--ss-paper-2);color:var(--ss-ink-3);font-weight:var(--ss-w-semibold)}.cal-detail-close{font-size:var(--ss-text-lg);cursor:pointer;color:var(--ss-ink-4);background:0 0;border:none;margin-left:auto}.cal-detail-close:hover{color:var(--ss-ink)}.cal-detail-text{font-size:var(--ss-text-sm);line-height:var(--ss-lh-prose);color:var(--ss-ink);white-space:pre-wrap;word-break:break-word;margin-bottom:var(--ss-space-4);padding:var(--ss-space-3);background:var(--ss-paper);border-radius:var(--ss-radius-sm)}.cal-detail-notes{font-size:var(--ss-text-xs);color:var(--ss-ink-3);padding-left:var(--ss-space-3);border-left:2px solid var(--ss-hairline);margin-bottom:var(--ss-space-4);font-style:italic}.cal-detail-actions{gap:var(--ss-space-2);display:flex}.cal-list{margin-top:var(--ss-space-2)}.cal-list-empty{text-align:center;padding:var(--ss-space-10) var(--ss-space-4);color:var(--ss-ink-4);font-size:var(--ss-text-sm)}.cal-list-card{padding:var(--ss-space-3) var(--ss-space-4);border-bottom:var(--ss-border-1);cursor:pointer;transition:background var(--ss-dur-fast) var(--ss-ease)}.cal-list-card:hover{background:var(--ss-paper)}.cal-list-card-head{align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-2);display:flex}.cal-list-date{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-family:var(--ss-font-mono)}.cal-list-status{font-size:var(--ss-text-xs);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-pill);font-weight:var(--ss-w-semibold);color:var(--ss-ink-2);border:1px solid}.cal-list-origin{font-size:var(--ss-text-xs);color:var(--ss-electric);margin-bottom:var(--ss-space-1)}.cal-list-date-sep{padding:var(--ss-space-2) var(--ss-space-4);font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);color:var(--ss-ink-2);font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);background:var(--ss-paper-2);border-top:3px solid var(--ss-ink-4);text-transform:uppercase;z-index:1;position:sticky;top:0}.cal-list-del{color:var(--ss-ink-4);cursor:pointer;padding:0 var(--ss-space-1);transition:color var(--ss-dur-fast);background:0 0;border:none;margin-left:auto;font-size:1rem}.cal-list-del:hover{color:var(--ss-danger)}.cal-list-text{font-size:var(--ss-text-sm);line-height:var(--ss-lh-prose);color:var(--ss-ink)}.cal-detail-origin{margin-bottom:var(--ss-space-3)}.cal-detail-origin a{font-size:var(--ss-text-xs);color:var(--ss-electric);text-decoration:none}.cal-detail-origin a:hover{text-decoration:underline}.cal-detail-textarea{width:100%;padding:var(--ss-space-3);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans);line-height:var(--ss-lh-prose);border:1px solid var(--ss-electric);border-radius:var(--ss-radius-sm);resize:vertical;margin-bottom:var(--ss-space-4);background:var(--ss-paper)}.cal-detail-text{cursor:pointer}.cal-detail-text:hover{outline:1px dashed var(--ss-hairline);outline-offset:4px}.ip{gap:var(--ss-space-4);flex-direction:column;display:flex}.ip-selected-title{font-weight:600;font-size:var(--ss-text-base);color:var(--ss-ink);margin-bottom:var(--ss-space-2);align-items:center;gap:var(--ss-space-2);display:flex}.ip-count{background:var(--ss-ink);color:var(--ss-paper);font-size:var(--ss-text-xs);border-radius:10px;padding:1px 7px;font-weight:500}.ip-empty{color:var(--ss-ink-4);font-size:var(--ss-text-sm);padding:var(--ss-space-2) 0}.ip-chips{gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.ip-chip{align-items:center;gap:var(--ss-space-2);background:var(--ss-paper-2);border:1px solid var(--ss-paper-3);font-size:var(--ss-text-sm);border-radius:8px;padding:6px 10px;display:flex}.ip-chip-info{flex-direction:column;gap:1px;display:flex}.ip-chip-name{color:var(--ss-ink);font-weight:500}.ip-chip-path{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.ip-chip-actions{align-items:center;gap:4px;margin-left:4px;display:flex}.ip-weight{width:36px;font-size:var(--ss-text-xs);border:1px solid var(--ss-paper-3);background:var(--ss-paper);color:var(--ss-ink);text-align:center;border-radius:4px;padding:1px 2px}.ip-chip-remove{color:var(--ss-ink-4);cursor:pointer;font-size:var(--ss-text-sm);background:0 0;border:none;padding:0 2px;line-height:1}.ip-chip-remove:hover{color:var(--ss-danger)}.ip-search-box{position:relative}.ip-search{width:100%;font-size:var(--ss-text-sm);border:1px solid var(--ss-paper-3);background:var(--ss-paper);color:var(--ss-ink);border-radius:8px;padding:8px 12px}.ip-search:focus{border-color:var(--ss-ink-3);outline:none}.ip-search-clear{color:var(--ss-ink-4);cursor:pointer;font-size:var(--ss-text-sm);background:0 0;border:none;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.ip-search-results{border:1px solid var(--ss-paper-3);border-radius:8px;flex-direction:column;max-height:240px;display:flex;overflow:hidden auto}.ip-search-item{align-items:center;gap:var(--ss-space-2);background:var(--ss-paper);cursor:pointer;font-size:var(--ss-text-sm);color:var(--ss-ink);text-align:left;border:none;border-bottom:1px solid var(--ss-paper-2);padding:8px 12px;display:flex}.ip-search-item:last-child{border-bottom:none}.ip-search-item:hover,.ip-search-item--selected{background:var(--ss-paper-2)}.ip-search-item-name{flex:1;font-weight:500}.ip-search-item-path{font-size:var(--ss-text-xs);color:var(--ss-ink-4);flex:1}.ip-search-item-check{font-size:var(--ss-text-sm);color:var(--ss-ink-4);text-align:center;min-width:18px}.ip-search-item--selected .ip-search-item-check{color:var(--ss-ok);font-weight:600}.ip-tree{border:1px solid var(--ss-paper-3);padding:var(--ss-space-3);border-radius:8px;max-height:360px;overflow-y:auto}.ip-tree-title{font-weight:600;font-size:var(--ss-text-sm);color:var(--ss-ink-3);margin-bottom:var(--ss-space-2);text-transform:uppercase;letter-spacing:.5px}.ip-node-row{align-items:center;gap:4px;padding:3px 0;display:flex}.ip-node-toggle{cursor:pointer;color:var(--ss-ink-3);font-size:var(--ss-text-xs);text-align:center;background:0 0;border:none;width:16px;padding:0}.ip-node-leaf{visibility:hidden}.ip-node-name{font-size:var(--ss-text-sm);color:var(--ss-ink);flex:1}.ip-node-action{border:1px solid var(--ss-paper-3);cursor:pointer;color:var(--ss-ink-3);font-size:var(--ss-text-xs);background:0 0;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;padding:0;display:flex}.ip-node-action:hover{background:var(--ss-paper-2);color:var(--ss-ink)}.ip-node-action--remove{background:var(--ss-ok);color:#fff;border-color:var(--ss-ok)}.ip-node-action--remove:hover{background:var(--ss-danger);border-color:var(--ss-danger)}.setup{max-width:var(--ss-app-max);margin:0 auto}.setup-tabs{margin-bottom:var(--ss-space-4);gap:0;display:flex}.setup-tab{padding:var(--ss-space-2) var(--ss-space-5);font-size:var(--ss-text-sm);border:var(--ss-border-1);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);font-weight:var(--ss-w-medium);transition:all var(--ss-dur-fast) var(--ss-ease)}.setup-tab:first-child{border-radius:var(--ss-radius-sm) 0 0 var(--ss-radius-sm)}.setup-tab:last-child{border-radius:0 var(--ss-radius-sm) var(--ss-radius-sm) 0}.setup-tab.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.setup-content{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);box-shadow:var(--ss-shadow-xs)}.setup-section h3{font-family:var(--ss-font-display);font-size:var(--ss-text-md);margin-bottom:var(--ss-space-4)}.setup-section label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);margin-bottom:var(--ss-space-1);margin-top:var(--ss-space-3);color:var(--ss-ink-2);display:block}.setup-section input,.setup-section textarea,.setup-section select{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans)}.setup-section input:focus,.setup-section textarea:focus,.setup-section select:focus{border-color:var(--ss-electric);outline:none}.setup-section textarea{resize:vertical}.setup-section-header{margin-bottom:var(--ss-space-3);justify-content:space-between;align-items:center;display:flex}.setup-channels{gap:var(--ss-space-2);margin-top:var(--ss-space-1);display:flex}.setup-ch-btn{padding:var(--ss-space-2) var(--ss-space-4);font-size:var(--ss-text-sm);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);text-transform:capitalize}.setup-ch-btn.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.setup-save-btn{margin-top:var(--ss-space-5);padding:var(--ss-space-3) var(--ss-space-6);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);cursor:pointer;border:none}.setup-save-btn:hover{background:var(--ss-ink-2)}.setup-save-btn:disabled{opacity:.4}.setup-add-form{background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);padding:var(--ss-space-4);margin-bottom:var(--ss-space-4)}.setup-empty{color:var(--ss-ink-4);font-size:var(--ss-text-sm);text-align:center;padding:var(--ss-space-5)}.setup-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.setup-list-item{padding:var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);transition:background var(--ss-dur-fast);justify-content:space-between;align-items:center;display:flex}.setup-list-item:hover{background:var(--ss-paper)}.setup-list-info{align-items:center;gap:var(--ss-space-2);flex:1;min-width:0;display:flex}.setup-list-type{font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);background:var(--ss-paper-2);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-xs);text-transform:uppercase;color:var(--ss-ink-3);font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);flex-shrink:0}.setup-list-title{font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium)}.setup-list-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.setup-list-inactive{font-size:var(--ss-text-xs);color:var(--ss-danger);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs);background:#fde8e8}.setup-list-preview{font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:var(--ss-space-1);display:block}.setup-list-actions{gap:var(--ss-space-1);flex-shrink:0;display:flex}.setup-source-item{border:var(--ss-border-1);border-radius:var(--ss-radius-sm);margin-bottom:var(--ss-space-2);overflow:hidden}.setup-source-item .setup-list-item{border:none;border-radius:0;margin:0}.setup-source-detail{padding:var(--ss-space-3);background:var(--ss-paper);border-top:var(--ss-border-1);max-height:300px;overflow-y:auto}.setup-source-content{font-family:var(--ss-font-sans);font-size:var(--ss-text-sm);line-height:var(--ss-lh-prose);white-space:pre-wrap;word-break:break-word;color:var(--ss-ink-2);margin:0}.setup-source-edit{gap:var(--ss-space-2);flex-direction:column;display:flex}.setup-source-edit-textarea{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-family:var(--ss-font-sans);font-size:var(--ss-text-sm);line-height:var(--ss-lh-prose);resize:vertical}.setup-source-edit-textarea:focus{border-color:var(--ss-electric);outline:none}.setup-source-edit-actions{gap:var(--ss-space-2);margin-top:var(--ss-space-2);display:flex}.setup-max-edit{align-items:center;gap:var(--ss-space-1);display:inline-flex}.setup-max-input{width:60px;padding:2px var(--ss-space-2);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);text-align:center}.setup-max-input:focus{border-color:var(--ss-electric);outline:none}.setup-max-label{cursor:pointer;border-bottom:1px dashed var(--ss-ink-4)}.setup-max-label:hover{color:var(--ss-ink-2);border-color:var(--ss-ink-2)}.nf-btn-xs{padding:2px var(--ss-space-2);font-size:var(--ss-text-xs)}.master-prompt-template{background:var(--ss-paper);border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-sm);padding:var(--ss-space-4);position:relative}.master-prompt-template-badge{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-4);background:var(--ss-paper-2);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-xs);margin-bottom:var(--ss-space-3);display:inline-block}.master-prompt-template-text{font-family:var(--ss-font-sans);font-size:var(--ss-text-sm);line-height:var(--ss-lh-prose);color:var(--ss-ink-4);white-space:pre-wrap;word-break:break-word;-webkit-user-select:none;user-select:none;pointer-events:none;margin:0}.interests-purpose{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-3) var(--ss-space-4);background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-md);margin-bottom:var(--ss-space-4);display:flex}.interests-purpose-label{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-4)}.interests-purpose-value{font-weight:var(--ss-w-semibold);color:var(--ss-coral)}.interests-suggestions{padding:var(--ss-space-4);background:var(--ss-card);border:1px dashed var(--ss-coral);border-radius:var(--ss-radius-md);margin-bottom:var(--ss-space-4)}.interests-sug-title{margin:0 0 var(--ss-space-2);font-size:var(--ss-text-sm);font-weight:var(--ss-w-semibold);color:var(--ss-ink-2)}.interests-sug-chips{gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.interests-sug-chip{background:var(--ss-paper);border:1px solid var(--ss-coral);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-xs);color:var(--ss-coral);cursor:pointer;font-weight:var(--ss-w-medium);transition:all var(--ss-dur-fast);padding:4px 14px}.interests-sug-chip:hover{background:var(--ss-coral);color:#fff}.interests-sug-count{background:var(--ss-coral-soft,#ff7a5926);border-radius:8px;justify-content:center;align-items:center;min-width:18px;height:16px;margin-left:4px;font-size:10px;display:inline-flex}.interests-save{margin-top:var(--ss-space-4);justify-content:flex-end;display:flex}.nl{max-width:var(--ss-app-wide-max);margin:0 auto}.nl-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:center;gap:var(--ss-space-3);flex-wrap:wrap;display:flex}.nl-title{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight)}.nl-template-picker{gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.nl-template-btn{padding:var(--ss-space-2) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);background:var(--ss-card);cursor:pointer;transition:all var(--ss-dur-fast) var(--ss-ease);flex-direction:column;gap:2px;display:flex}.nl-template-btn:hover{border-color:var(--ss-ink)}.nl-template-btn.active{background:var(--ss-ink);border-color:var(--ss-ink);color:var(--ss-paper)}.nl-template-name{font-size:var(--ss-text-sm);font-weight:var(--ss-w-semibold)}.nl-template-desc{font-size:var(--ss-text-xs);opacity:.6}.nl-composer{gap:var(--ss-space-4);margin-bottom:var(--ss-space-5);grid-template-columns:1fr 1.4fr;display:grid}@media (width<=768px){.nl-composer{grid-template-columns:1fr}}.nl-col-header{margin-bottom:var(--ss-space-3);padding-bottom:var(--ss-space-2);border-bottom:var(--ss-border-1);justify-content:space-between;align-items:center;display:flex}.nl-col-title{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);letter-spacing:var(--ss-track-tight)}.nl-col-count{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);background:var(--ss-paper-2);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-xs);color:var(--ss-ink-3)}.nl-add-slot-btn{background:var(--ss-ink);width:32px;height:32px;color:var(--ss-paper);font-size:18px;font-weight:var(--ss-w-bold);cursor:pointer;transition:transform var(--ss-dur-fast) var(--ss-ease);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.nl-add-slot-btn:hover{transform:scale(1.1)}.nl-articles{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-4);max-height:70vh;overflow-y:auto}.nl-article-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.nl-article-card{padding:var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);cursor:grab;transition:all var(--ss-dur-fast) var(--ss-ease);background:var(--ss-card)}.nl-article-card:hover{border-color:var(--ss-ink);box-shadow:var(--ss-shadow-sm)}.nl-article-card:active{cursor:grabbing;opacity:.7}.nl-article-title{font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);line-height:var(--ss-lh-snug)}.nl-article-meta-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.nl-article-src{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-4);letter-spacing:var(--ss-track-mono)}.nl-article-cat{border-radius:var(--ss-radius-pill);background:var(--ss-paper-2);color:var(--ss-ink-3);margin-top:var(--ss-space-1);padding:1px 6px;font-size:10px;display:inline-block}.nl-slots{gap:var(--ss-space-3);flex-direction:column;display:flex}.nl-slot{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-4);box-shadow:var(--ss-shadow-xs);transition:border-color var(--ss-dur-fast) var(--ss-ease), opacity var(--ss-dur-fast), box-shadow var(--ss-dur-fast)}.nl-slot--auto{background:var(--ss-paper);border-style:dashed}.nl-slot--dragging{opacity:.35;border-color:var(--ss-coral)}.nl-slot-header{align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-2);display:flex}.nl-slot-drag-handle{cursor:grab;color:var(--ss-ink-4);-webkit-user-select:none;user-select:none;transition:color var(--ss-dur-fast), background var(--ss-dur-fast);border-radius:4px;flex-shrink:0;padding:4px;font-size:16px}.nl-slot-drag-handle:hover{color:var(--ss-ink-2);background:var(--ss-paper-2)}.nl-slot-drag-handle:active{cursor:grabbing;color:var(--ss-coral)}.nl-slot-name{font-family:var(--ss-font-display);font-size:var(--ss-text-sm);font-weight:var(--ss-w-bold);flex:1}.nl-slot-name-input{font-family:var(--ss-font-display);font-size:var(--ss-text-sm);font-weight:var(--ss-w-bold);border:none;border-bottom:1px dashed var(--ss-hairline-2);background:0 0;flex:1;padding:2px 0}.nl-slot-name-input:focus{border-color:var(--ss-coral);outline:none}.nl-slot-type{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-4);text-transform:uppercase;letter-spacing:var(--ss-track-mono);flex-shrink:0}.nl-slot-remove-btn{color:var(--ss-ink-4);cursor:pointer;font-size:var(--ss-text-sm);font-weight:var(--ss-w-bold);background:0 0;border:none;flex-shrink:0}.nl-slot-remove-btn:hover{color:var(--ss-danger)}.nl-slot-drop{border:2px dashed var(--ss-hairline);border-radius:var(--ss-radius-sm);min-height:48px;padding:var(--ss-space-2);transition:border-color var(--ss-dur-fast) var(--ss-ease)}.nl-slot:hover .nl-slot-drop{border-color:var(--ss-coral)}.nl-slot-placeholder{text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm);padding:var(--ss-space-3)}.nl-slot-articles{gap:var(--ss-space-1);flex-direction:column;display:flex}.nl-slot-article{padding:var(--ss-space-2) var(--ss-space-3);background:var(--ss-blush);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);justify-content:space-between;align-items:center;display:flex}.nl-slot-article-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.nl-slot-remove{color:var(--ss-ink-3);cursor:pointer;font-size:var(--ss-text-sm);font-weight:var(--ss-w-bold);padding:0 var(--ss-space-1);background:0 0;border:none;flex-shrink:0}.nl-slot-remove:hover{color:var(--ss-danger)}.nl-slot-auto-label{font-size:var(--ss-text-xs);color:var(--ss-ink-4);font-style:italic}.nl-slot-image-area{margin-top:var(--ss-space-2);padding-top:var(--ss-space-2);border-top:1px dashed var(--ss-hairline)}.nl-slot-add-image{font-size:var(--ss-text-xs);color:var(--ss-ink-4);border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-xs);padding:var(--ss-space-1) var(--ss-space-3);cursor:pointer;transition:all var(--ss-dur-fast);background:0 0}.nl-slot-add-image:hover{border-color:var(--ss-coral);color:var(--ss-coral)}.nl-img-block{margin-top:var(--ss-space-2);padding-top:var(--ss-space-2);border-top:1px dashed var(--ss-hairline)}.nl-img-toolbar{align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-2);display:flex}.nl-img-modes{gap:2px;display:flex}.nl-img-mode{border:var(--ss-border-1);background:var(--ss-card);cursor:pointer;width:32px;height:24px;transition:all var(--ss-dur-fast);border-radius:4px;justify-content:center;align-items:center;display:flex}.nl-img-mode:hover{border-color:var(--ss-ink-3)}.nl-img-mode.active{background:var(--ss-ink);border-color:var(--ss-ink)}.nl-img-mode.active .nl-img-mode-icon{background:var(--ss-paper)}.nl-img-mode-icon{background:var(--ss-ink-3);border-radius:2px;display:block}.nl-img-mode-icon--banner{width:22px;height:8px}.nl-img-mode-icon--half{width:10px;height:12px}.nl-img-mode-icon--solo{border-radius:2px;width:12px;height:12px}.nl-img-side-toggle{gap:2px;display:flex}.nl-img-side-toggle button{border:var(--ss-border-1);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);border-radius:4px;padding:2px 8px;font-size:10px}.nl-img-side-toggle button.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.nl-img-remove{color:var(--ss-ink-4);cursor:pointer;font-size:var(--ss-text-sm);background:0 0;border:none;margin-left:auto;font-weight:700}.nl-img-remove:hover{color:var(--ss-danger)}.nl-img-visual{border-radius:var(--ss-radius-sm);display:flex;overflow:hidden}.nl-img-visual--banner{height:80px}.nl-img-visual--banner .nl-img-upload-zone{width:100%}.nl-img-visual--solo{width:140px;height:140px;margin:0 auto}.nl-img-visual--solo .nl-img-upload-zone{width:100%}.nl-img-visual--half{height:120px}.nl-img-visual--half .nl-img-upload-zone{flex-shrink:0;width:50%}.nl-img-visual--half .nl-img-text-placeholder{width:50%}.nl-img-upload-zone{background:var(--ss-paper-2);cursor:pointer;transition:background var(--ss-dur-fast);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.nl-img-upload-zone:hover{background:var(--ss-paper-3)}.nl-img-preview-img{object-fit:cover;width:100%;height:100%}.nl-img-upload-label{color:var(--ss-ink-4);font-size:var(--ss-text-xs);flex-direction:column;align-items:center;gap:4px;display:flex}.nl-img-upload-icon{color:var(--ss-ink-3);font-size:20px;font-weight:700}.nl-img-text-placeholder{font-size:var(--ss-text-xs);color:var(--ss-ink-4);background:var(--ss-paper);border-left:1px dashed var(--ss-hairline);justify-content:center;align-items:center;font-style:italic;display:flex}.nl-img-visual--right .nl-img-text-placeholder{border-left:none;border-right:1px dashed var(--ss-hairline)}.nl-img-url-input{width:100%;margin-top:var(--ss-space-1);padding:3px var(--ss-space-2);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:11px;font-family:var(--ss-font-mono);color:var(--ss-ink-3)}.nl-img-url-input:focus{border-color:var(--ss-electric);color:var(--ss-ink);outline:none}.nl-actions{margin-top:var(--ss-space-2)}.nl-notes{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans);resize:vertical;margin-bottom:var(--ss-space-3)}.nl-notes:focus{border-color:var(--ss-electric);outline:none}.nl-generate-btn{width:100%;padding:var(--ss-space-3) var(--ss-space-6);background:var(--ss-grad-coral);color:#fff;border-radius:var(--ss-radius-pill);font-size:var(--ss-text-base);font-weight:var(--ss-w-semibold);cursor:pointer;transition:transform var(--ss-dur-fast) var(--ss-ease), box-shadow var(--ss-dur-fast) var(--ss-ease);border:none}.nl-generate-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #ff7a594d}.nl-generate-btn:disabled{opacity:.4;cursor:not-allowed}.nl-empty{text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm);padding:var(--ss-space-5);align-items:center;gap:var(--ss-space-2);flex-direction:column;display:flex}.nl-fetch-btn{padding:var(--ss-space-2) var(--ss-space-4);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium);cursor:pointer;border:none}.nl-fetch-btn:hover{background:var(--ss-ink-2)}.nl-preview{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);margin-bottom:var(--ss-space-5)}.nl-preview-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:center;display:flex}.nl-preview-title{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-bold)}.nl-preview-actions{gap:var(--ss-space-2);display:flex}.nl-export-btn{padding:var(--ss-space-2) var(--ss-space-4);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium);cursor:pointer;border:none}.nl-export-btn:hover{background:var(--ss-ink-2)}.nl-preview-subject{margin-bottom:var(--ss-space-4)}.nl-preview-subject label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-2);margin-bottom:var(--ss-space-1);display:block}.nl-preview-subject input{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm)}.nl-preview-slot{margin-bottom:var(--ss-space-6)}.nl-preview-slot-name{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin-bottom:var(--ss-space-3);padding-bottom:var(--ss-space-1);border-bottom:var(--ss-border-1)}.nl-preview-slot-text{font-size:var(--ss-text-base);line-height:var(--ss-lh-prose);color:var(--ss-ink-2);white-space:pre-wrap}.nl-pv-img-banner{border-radius:var(--ss-radius-sm);width:100%;margin-bottom:var(--ss-space-3);max-height:320px;overflow:hidden}.nl-pv-img-banner img{object-fit:cover;width:100%;height:auto;display:block}.nl-pv-img-solo{max-width:400px;margin:0 auto var(--ss-space-3);border-radius:var(--ss-radius-sm);overflow:hidden}.nl-pv-img-solo img{aspect-ratio:1;object-fit:cover;width:100%;height:auto;display:block}.nl-pv-half{gap:var(--ss-space-4);margin-bottom:var(--ss-space-3);grid-template-columns:1fr 1fr;align-items:start;display:grid}.nl-pv-half--reverse{direction:rtl}.nl-pv-half--reverse>*{direction:ltr}.nl-pv-half-img{border-radius:var(--ss-radius-sm);overflow:hidden}.nl-pv-half-img img{aspect-ratio:1;object-fit:cover;width:100%;height:auto;display:block}.nl-pv-half-text{font-size:var(--ss-text-base);line-height:var(--ss-lh-prose);color:var(--ss-ink-2);white-space:pre-wrap}@media (width<=768px){.nl-pv-half{grid-template-columns:1fr}}.nl-history{margin-top:var(--ss-space-5)}.nl-history-title{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin-bottom:var(--ss-space-3)}.nl-history-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.nl-history-item{padding:var(--ss-space-3);background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);justify-content:space-between;align-items:center;display:flex}.nl-history-info{cursor:pointer;flex:1;min-width:0}.nl-history-info:hover .nl-history-subject{color:var(--ss-coral)}.nl-history-subject{font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);transition:color var(--ss-dur-fast)}.nl-history-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:2px;display:block}.nl-history-del{color:var(--ss-ink-4);cursor:pointer;font-size:var(--ss-text-xs);padding:var(--ss-space-1) var(--ss-space-2);background:0 0;border:none}.nl-history-del:hover{color:var(--ss-danger)}.wf{max-width:var(--ss-app-max);margin:0 auto}.wf-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:center;display:flex}.wf-title{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight)}.wf-new-btn{padding:var(--ss-space-2) var(--ss-space-5);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);cursor:pointer;border:none}.wf-new-btn:hover{background:var(--ss-ink-2)}.wf-list{gap:var(--ss-space-3);flex-direction:column;display:flex}.wf-empty{text-align:center;color:var(--ss-ink-4);padding:var(--ss-space-10);font-size:var(--ss-text-sm)}.wf-card{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-4);justify-content:space-between;align-items:center;gap:var(--ss-space-3);box-shadow:var(--ss-shadow-xs);transition:box-shadow var(--ss-dur-fast) var(--ss-ease), border-color var(--ss-dur-fast) var(--ss-ease);display:flex}.wf-card:hover{border-color:var(--ss-hairline-2);box-shadow:var(--ss-shadow-sm)}.wf-card-name{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold)}.wf-card-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-3);margin-top:4px}.wf-card-actions{gap:var(--ss-space-1);flex-shrink:0;display:flex}.wf-action-btn{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-2);font-weight:var(--ss-w-medium)}.wf-action-btn:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.wf-action-run{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.wf-action-run:hover{background:var(--ss-ink-2)}.wf-action-run:disabled{opacity:.5}.wf-action-del:hover{color:var(--ss-danger);border-color:var(--ss-danger)}.wf-editor{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);margin-bottom:var(--ss-space-5)}.wf-editor-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:center;display:flex}.wf-editor-header h2{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-bold);margin:0}.wf-editor-close{color:var(--ss-ink-3);cursor:pointer;font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);background:0 0;border:none}.wf-editor-close:hover{color:var(--ss-ink)}.wf-label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-2);margin:var(--ss-space-3) 0 var(--ss-space-1);display:block}.wf-input{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans)}.wf-input:focus{border-color:var(--ss-electric);outline:none}.wf-schedule{background:var(--ss-paper);border-radius:var(--ss-radius-sm);padding:var(--ss-space-3);gap:var(--ss-space-2);flex-direction:column;display:flex}.wf-schedule-toggle{font-size:var(--ss-text-sm);align-items:center;gap:var(--ss-space-2);display:flex}.wf-schedule-row{gap:var(--ss-space-2);align-items:center;display:flex}.wf-schedule-row select,.wf-schedule-row input{padding:var(--ss-space-1) var(--ss-space-2);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm)}.wf-schedule-days{gap:4px;display:flex}.wf-day-btn{border:var(--ss-border-1);border-radius:var(--ss-radius-xs);background:var(--ss-card);cursor:pointer;width:36px;height:28px;color:var(--ss-ink-3);font-size:11px}.wf-day-btn.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.wf-steps{gap:var(--ss-space-2);flex-direction:column;display:flex}.wf-step{border:var(--ss-border-1);border-radius:var(--ss-radius-sm);padding:var(--ss-space-3);background:var(--ss-paper)}.wf-step-header{align-items:center;gap:var(--ss-space-2);display:flex}.wf-step-num{background:var(--ss-ink);width:24px;height:24px;color:var(--ss-paper);font-size:11px;font-weight:var(--ss-w-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.wf-step-action-select{padding:var(--ss-space-1) var(--ss-space-2);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);flex:1}.wf-step-onerror{padding:var(--ss-space-1) var(--ss-space-2);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);color:var(--ss-ink-3);font-size:11px}.wf-step-remove{color:var(--ss-ink-4);cursor:pointer;font-size:var(--ss-text-sm);background:0 0;border:none;font-weight:700}.wf-step-remove:hover{color:var(--ss-danger)}.wf-step-desc{font-size:var(--ss-text-xs);color:var(--ss-ink-3);margin-top:var(--ss-space-1)}.wf-step-config{margin-top:var(--ss-space-2);padding-top:var(--ss-space-2);border-top:1px dashed var(--ss-hairline);gap:var(--ss-space-3);flex-wrap:wrap;display:flex}.wf-step-field{flex-direction:column;gap:2px;min-width:120px;display:flex}.wf-step-label{font-size:11px;font-weight:var(--ss-w-semibold);color:var(--ss-ink-3);text-transform:capitalize}.wf-step-field select,.wf-step-field input{padding:var(--ss-space-1) var(--ss-space-2);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm)}.wf-step-multi{gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.wf-step-check{font-size:var(--ss-text-xs);align-items:center;gap:4px;display:flex}.wf-add-step{margin-top:var(--ss-space-2);padding:var(--ss-space-2) var(--ss-space-4);border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-sm);cursor:pointer;color:var(--ss-ink-3);font-size:var(--ss-text-sm);text-align:center;background:0 0;width:100%}.wf-add-step:hover{border-color:var(--ss-coral);color:var(--ss-coral)}.wf-editor-actions{margin-top:var(--ss-space-4)}.wf-save-btn{padding:var(--ss-space-3) var(--ss-space-6);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);cursor:pointer;border:none}.wf-save-btn:hover{background:var(--ss-ink-2)}.wf-save-btn:disabled{opacity:.4}.wf-runs{margin-top:var(--ss-space-5)}.wf-runs-title{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin-bottom:var(--ss-space-3)}.wf-run-item{align-items:center;gap:var(--ss-space-3);padding:var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);cursor:pointer;margin-bottom:var(--ss-space-1);background:var(--ss-card);display:flex}.wf-run-item:hover{background:var(--ss-paper)}.wf-run-status{font-size:11px;font-weight:var(--ss-w-bold);border-radius:var(--ss-radius-xs);text-transform:uppercase;font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);padding:2px 8px}.wf-run-status--completed{background:var(--ss-mint);color:#2e4f2c}.wf-run-status--completed_with_errors{background:var(--ss-butter);color:#8a6b20}.wf-run-status--stopped,.wf-run-status--error{background:var(--ss-blush);color:var(--ss-danger)}.wf-run-status--running{background:var(--ss-sky);color:#2e578e}.wf-run-date{font-size:var(--ss-text-xs);color:var(--ss-ink-3)}.wf-run-steps{font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-left:auto}.wf-run-detail{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);margin-top:var(--ss-space-4)}.wf-run-detail-header{margin-bottom:var(--ss-space-3);justify-content:space-between;align-items:center;display:flex}.wf-run-detail-header h3{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin:0}.wf-run-detail-meta{font-size:var(--ss-text-sm);color:var(--ss-ink-2);margin-bottom:var(--ss-space-4)}.wf-run-steps-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.wf-run-step{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-2) var(--ss-space-3);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);display:flex}.wf-run-step--success{background:#f0f8f0}.wf-run-step--error{background:#fef0f0}.wf-run-step--skipped{background:var(--ss-paper)}.wf-run-step-icon{flex-shrink:0}.wf-run-step-action{font-weight:var(--ss-w-medium);min-width:140px}.wf-run-step-result{font-size:var(--ss-text-xs);color:var(--ss-ink-3);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.adm{max-width:var(--ss-app-max);margin:0 auto}.adm-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:center;gap:var(--ss-space-3);flex-wrap:wrap;display:flex}.adm-title{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight)}.adm-tabs{gap:0;display:flex}.adm-tab{padding:var(--ss-space-2) var(--ss-space-5);font-size:var(--ss-text-sm);border:var(--ss-border-1);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);font-weight:var(--ss-w-medium)}.adm-tab:first-child{border-radius:var(--ss-radius-sm) 0 0 var(--ss-radius-sm)}.adm-tab:last-child{border-radius:0 var(--ss-radius-sm) var(--ss-radius-sm) 0}.adm-tab.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.adm-section{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);box-shadow:var(--ss-shadow-xs)}.adm-section h2{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-bold);margin:0 0 var(--ss-space-4)}.adm-section h3{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin:var(--ss-space-4) 0 var(--ss-space-2)}.adm-section-header{margin-bottom:var(--ss-space-3);justify-content:space-between;align-items:center;display:flex}.adm-btn-primary{padding:var(--ss-space-2) var(--ss-space-5);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);cursor:pointer;border:none}.adm-btn-primary:hover{background:var(--ss-ink-2)}.adm-btn-primary:disabled{opacity:.4}.adm-btn{padding:var(--ss-space-2) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);font-size:var(--ss-text-sm);cursor:pointer;color:var(--ss-ink-2)}.adm-btn:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.adm-btn:disabled{opacity:.4}.adm-btn-sm{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3)}.adm-btn-sm:hover{border-color:var(--ss-ink)}.adm-btn-danger:hover{color:var(--ss-danger);border-color:var(--ss-danger)}.adm-form{background:var(--ss-paper);border-radius:var(--ss-radius-sm);padding:var(--ss-space-4);margin-bottom:var(--ss-space-4)}.adm-form label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-2);margin:var(--ss-space-2) 0 var(--ss-space-1);display:block}.adm-form input,.adm-form select,.adm-form textarea,.adm-textarea{width:100%;padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans)}.adm-form input:focus,.adm-form select:focus,.adm-form textarea:focus,.adm-textarea:focus{border-color:var(--ss-electric);outline:none}.adm-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.adm-list-item{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);display:flex}.adm-feed-type{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);background:var(--ss-paper-2);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3)}.adm-feed-name{font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);flex:1}.adm-feed-off{font-size:var(--ss-text-xs);color:var(--ss-danger)}.adm-feed-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.adm-empty{text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm);padding:var(--ss-space-5)}.adm-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:var(--ss-space-3)}.adm-stats{gap:var(--ss-space-5);margin-top:var(--ss-space-4);padding:var(--ss-space-4);background:var(--ss-paper);border-radius:var(--ss-radius-sm);border:var(--ss-border-1);display:flex}.adm-stat{flex-direction:column;display:flex}.adm-stat-num{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black)}.adm-stat-label{font-size:var(--ss-text-xs);color:var(--ss-ink-3)}.adm-trend-block{margin-bottom:var(--ss-space-4)}.adm-trend-card{padding:var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);margin-bottom:var(--ss-space-2);gap:var(--ss-space-2);flex-wrap:wrap;align-items:center;display:flex}.adm-trend-card--weak{border-left:3px solid var(--ss-electric)}.adm-trend-card--gap{border-left:3px solid var(--ss-coral)}.adm-trend-topic{font-size:var(--ss-text-sm);font-weight:var(--ss-w-semibold)}.adm-trend-stats{font-size:var(--ss-text-xs);color:var(--ss-ink-3);gap:var(--ss-space-2);display:flex}.adm-trend-delta{font-family:var(--ss-font-mono);font-weight:var(--ss-w-bold)}.adm-trend-delta.up{color:var(--ss-ok)}.adm-trend-delta.down{color:var(--ss-danger)}.adm-trend-entities{font-size:var(--ss-text-xs);color:var(--ss-ink-4);width:100%}.adm-pipeline{margin-bottom:var(--ss-space-5);align-items:flex-start;gap:0;display:flex}.adm-pipe-step{gap:var(--ss-space-3);padding:var(--ss-space-4);border:2px solid var(--ss-paper-2);border-radius:var(--ss-radius-md);background:var(--ss-paper);flex:1;transition:border-color .2s,background .2s;display:flex}.adm-pipe-step.done{border-color:var(--ss-ok);background:color-mix(in srgb, var(--ss-ok) 5%, var(--ss-paper))}.adm-pipe-step.ready{border-color:var(--ss-electric)}.adm-pipe-step.pending{opacity:.5}.adm-pipe-num{width:28px;height:28px;font-family:var(--ss-font-display);font-weight:var(--ss-w-black);font-size:var(--ss-text-sm);background:var(--ss-paper-2);color:var(--ss-ink-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.adm-pipe-step.done .adm-pipe-num{background:var(--ss-ok);color:var(--ss-paper)}.adm-pipe-step.ready .adm-pipe-num{background:var(--ss-electric);color:var(--ss-paper)}.adm-pipe-body{gap:var(--ss-space-1);flex-direction:column;min-width:0;display:flex}.adm-pipe-title{font-family:var(--ss-font-display);font-weight:var(--ss-w-bold);font-size:var(--ss-text-sm)}.adm-pipe-detail{font-size:var(--ss-text-xs);color:var(--ss-ink-3)}.adm-pipe-actions{gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.adm-pipe-arrow{width:24px;color:var(--ss-ink-4);font-size:var(--ss-text-lg);flex-shrink:0;justify-content:center;align-self:center;align-items:center;display:flex}.adm-pipe-arrow:after{content:"→"}.adm-pipe-progress{margin-top:var(--ss-space-1)}.adm-btn-sm--action{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.adm-btn-sm--action:hover{background:var(--ss-ink-2)}.adm-pipe-bar-wrap{margin:var(--ss-space-1) 0}.adm-pipe-scheduler{margin-top:var(--ss-space-4);padding-top:var(--ss-space-4);border-top:var(--ss-border-1)}.adm-pipe-scheduler h3{font-size:var(--ss-text-sm);margin-top:0}.adm-pipe-sched-row{align-items:center;gap:var(--ss-space-3);flex-wrap:wrap;display:flex}@media (width<=800px){.adm-pipeline{flex-direction:column}.adm-pipe-arrow{width:auto;height:24px;transform:rotate(90deg)}}.adm-backfill-bar{background:var(--ss-paper-2);height:6px;margin-bottom:var(--ss-space-1);border-radius:3px;overflow:hidden}.adm-backfill-fill{background:var(--ss-ink);border-radius:3px;height:100%;transition:width .3s}.adm-trend-card--conv{border-left:3px solid var(--ss-ink-3)}.adm-conv-clusters{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs)}.adm-conv-strength{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono)}.adm-conv-strength--high{background:var(--ss-ok);color:var(--ss-paper)}.adm-conv-strength--medium{background:var(--ss-ink-4);color:var(--ss-paper)}.adm-conv-strength--low{background:var(--ss-paper-2);color:var(--ss-ink-3)}.adm-trend-card--cross{border-left:3px solid var(--ss-ink)}.tmap{margin-top:var(--ss-space-3)}.tmap-controls{gap:var(--ss-space-2);margin-bottom:var(--ss-space-3);flex-direction:column;display:flex}.tmap-axes{align-items:center;gap:var(--ss-space-2);display:flex}.tmap-axes label{align-items:center;gap:var(--ss-space-1);display:flex}.tmap-axes label span{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-weight:var(--ss-w-semibold)}.tmap-axes select{font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-family:var(--ss-font-sans);padding:4px 8px}.tmap-vs{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.tmap-cats{gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.tmap-cat-chip{padding:2px var(--ss-space-2);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);font-weight:var(--ss-w-medium);transition:all .15s}.tmap-cat-chip.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.tmap-cat-chip:not(.active):hover{border-color:var(--ss-ink);color:var(--ss-ink)}.tmap-cat-reset{border-style:dashed}.tmap-svg{border:var(--ss-border-1);border-radius:var(--ss-radius-md);background:var(--ss-paper-2);width:100%;height:auto}.tmap-quad-label{font-family:var(--ss-font-display);fill:var(--ss-ink-4);opacity:.2;font-size:14px;font-weight:var(--ss-w-bold)}.tmap-axis-label{font-family:var(--ss-font-mono);fill:var(--ss-ink-3);letter-spacing:var(--ss-track-mono);font-size:11px}.tmap-tick{font-family:var(--ss-font-mono);fill:var(--ss-ink-4);font-size:9px}.tmap-bubble-label{font-family:var(--ss-font-sans);fill:var(--ss-paper);font-size:9px;font-weight:var(--ss-w-semibold);text-shadow:0 1px 2px #0006}.tmap-tip-title{font-family:var(--ss-font-sans);fill:var(--ss-paper);font-size:11px;font-weight:var(--ss-w-bold)}.tmap-tip-line{font-family:var(--ss-font-mono);fill:var(--ss-paper);opacity:.8;font-size:9px}.tmap-footer{font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:var(--ss-space-2);text-align:center}.tmap-empty{text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm);padding:var(--ss-space-6)}.tmap-view-toggle{gap:0;display:flex}.tmap-view-toggle button{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);font-weight:var(--ss-w-medium)}.tmap-view-toggle button:first-child{border-radius:var(--ss-radius-sm) 0 0 var(--ss-radius-sm)}.tmap-view-toggle button:last-child{border-radius:0 var(--ss-radius-sm) var(--ss-radius-sm) 0}.tmap-view-toggle button.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.ti{margin-top:var(--ss-space-4)}.ti-loading{text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm);padding:var(--ss-space-4)}.ti-header{margin-bottom:var(--ss-space-3);justify-content:space-between;align-items:center;display:flex}.ti-title{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-bold);margin:0}.ti-count{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);background:var(--ss-ink);color:var(--ss-paper);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-pill);margin-left:var(--ss-space-1);vertical-align:middle}.ti-export{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3)}.ti-export:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.ti-summary{gap:var(--ss-space-2) var(--ss-space-4);padding:var(--ss-space-3);background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);font-size:var(--ss-text-xs);color:var(--ss-ink-3);margin-bottom:var(--ss-space-3);flex-wrap:wrap;display:flex}.ti-summary strong{color:var(--ss-ink);font-weight:var(--ss-w-bold)}.ti-summary-period{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);margin-left:auto}.ti-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.ti-card{align-items:flex-start;gap:var(--ss-space-2);padding:var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);border-left:3px solid var(--ss-paper-2);display:flex}.ti-card.ti-p-high{border-left-color:var(--ss-ok)}.ti-card.ti-p-med{border-left-color:var(--ss-electric,var(--ss-ink-3))}.ti-card.ti-p-low{border-left-color:var(--ss-paper-2)}.ti-type{font-size:10px;font-weight:var(--ss-w-semibold);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-4);white-space:nowrap;min-width:70px;padding-top:2px}.ti-text{font-size:var(--ss-text-sm);color:var(--ss-ink-2);flex:1;line-height:1.5}.ti-copy{padding:2px var(--ss-space-2);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-4);white-space:nowrap;flex-shrink:0;font-size:10px}.ti-copy:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.te{margin-top:var(--ss-space-3)}.te-stats{z-index:10;background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);padding:var(--ss-space-3) var(--ss-space-4);margin-bottom:var(--ss-space-3);box-shadow:var(--ss-shadow-sm);transition:border-color var(--ss-dur-fast) var(--ss-ease);height:160px;position:sticky;top:0;overflow:hidden}.te-stats--frozen{border-left:3px solid var(--ss-coral)}.te-stats-top{justify-content:space-between;align-items:flex-start;gap:var(--ss-space-3);margin-bottom:var(--ss-space-2);display:flex}.te-stats-name{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-black)}.te-cat-inline{font-size:var(--ss-text-xs);color:var(--ss-ink-4);background:var(--ss-paper-2);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs);margin-left:var(--ss-space-2);vertical-align:middle}.te-stats-grid{gap:var(--ss-space-4);display:flex}.te-stat-block{flex-direction:column;display:flex}.te-stat-big{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-black);line-height:1.1}.te-stat-sub{color:var(--ss-ink-4);text-transform:uppercase;letter-spacing:var(--ss-track-mono);font-size:10px}.te-stat-pos{color:var(--ss-ok)}.te-stat-neg{color:var(--ss-danger)}.te-sent-bar{height:6px;margin:var(--ss-space-2) 0;border-radius:3px;display:flex;overflow:hidden}.te-sent-pos{background:var(--ss-ok)}.te-sent-neu{background:var(--ss-paper-2)}.te-sent-neg{background:var(--ss-danger)}.te-stats-detail-row{margin-top:var(--ss-space-2);gap:var(--ss-space-1);flex-direction:column;display:flex}.te-detail-line{align-items:center;gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.te-detail-label{font-size:10px;font-weight:var(--ss-w-semibold);color:var(--ss-ink-4);text-transform:uppercase;letter-spacing:var(--ss-track-mono);min-width:44px}.te-detail-chip{font-size:var(--ss-text-xs);padding:1px var(--ss-space-2);background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2)}.te-chip-count{color:var(--ss-ink-4);font-family:var(--ss-font-mono);font-size:10px}.te-detail-titles{flex-wrap:wrap;gap:4px;display:flex}.te-title-chip{font-size:var(--ss-text-xs);color:var(--ss-ink-4);background:var(--ss-paper);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs);text-overflow:ellipsis;white-space:nowrap;max-width:280px;display:inline-block;overflow:hidden}.te-frozen-badge{font-family:var(--ss-font-mono);font-size:9px;font-weight:var(--ss-w-bold);letter-spacing:var(--ss-track-mono);background:var(--ss-coral);color:var(--ss-paper);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs);margin-right:var(--ss-space-2);vertical-align:middle;text-transform:uppercase;display:inline-block}.te-copy-btn{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);white-space:nowrap;flex-shrink:0}.te-copy-btn:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.te-stats-meta{gap:var(--ss-space-1);margin-top:var(--ss-space-1);flex-wrap:wrap;align-items:center;display:flex}.te-meta-period{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-left:auto}.te-filters{gap:var(--ss-space-1);margin-bottom:var(--ss-space-3);flex-wrap:wrap;display:flex}.te-chip{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);transition:all var(--ss-dur-fast) var(--ss-ease)}.te-chip:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.te-chip.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.te-table-wrap{overflow-x:auto}.te-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--ss-text-sm)}.te-th{padding:var(--ss-space-2) var(--ss-space-3);text-align:left;font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-3);border-bottom:2px solid var(--ss-paper-2);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.te-th:hover,.te-th.active{color:var(--ss-ink)}.te-th-rank{text-align:center;cursor:default;width:32px}.te-th-topic{min-width:160px}.te-th-metric{text-align:right;min-width:64px}.te-th-extra{min-width:160px}.te-th-actions{cursor:default;width:36px}.te-row{transition:background var(--ss-dur-fast) var(--ss-ease);cursor:pointer}.te-row:hover,.te-row.hovered{background:color-mix(in srgb, var(--ss-blush) 40%, transparent)}.te-row.frozen{background:var(--ss-blush)}.te-cell{padding:var(--ss-space-2) var(--ss-space-3);border-bottom:var(--ss-border-1)}.te-cell-rank{text-align:center;font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.te-cell-topic{font-weight:var(--ss-w-medium)}.te-cell-metric{text-align:right}.te-cell-value{font-family:var(--ss-font-mono);font-size:var(--ss-text-sm)}.te-val-pos .te-cell-value{color:var(--ss-ok)}.te-val-neg .te-cell-value{color:var(--ss-danger)}.te-cell-entities{font-size:var(--ss-text-xs);color:var(--ss-ink-3)}.te-cell-actions{text-align:center}.te-expand-btn{cursor:pointer;font-size:var(--ss-text-sm);color:var(--ss-ink-4);border-radius:var(--ss-radius-xs);background:0 0;border:none;padding:2px 6px}.te-expand-btn:hover{color:var(--ss-ink);background:var(--ss-paper-2)}.te-footer{font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:var(--ss-space-2);text-align:center}.te-topic-dot{vertical-align:middle;border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-right:6px;display:inline-block}.te-treemap-wrap{margin-bottom:var(--ss-space-3)}.te-treemap{border:var(--ss-border-1);border-radius:var(--ss-radius-md);background:var(--ss-paper-2);width:100%;height:auto;display:block}.te-treemap g{transition:opacity .15s}.te-treemap rect{transition:opacity .15s,stroke .15s}.te-tm-label{font-family:var(--ss-font-sans);fill:#fff;pointer-events:none;text-shadow:0 1px 2px #00000080;font-size:10px;font-weight:600}.te-tm-value{font-family:var(--ss-font-mono);fill:#ffffffd9;pointer-events:none;font-size:11px;font-weight:700}.te-treemap-legend{gap:var(--ss-space-2);margin-top:var(--ss-space-1);padding:0 var(--ss-space-1);flex-wrap:wrap;display:flex}.te-legend-item{font-size:var(--ss-text-xs);color:var(--ss-ink-3);align-items:center;gap:4px;display:flex}.te-legend-dot{border-radius:2px;flex-shrink:0;width:8px;height:8px}@media (width<=600px){.te-stats-grid{gap:var(--ss-space-2);flex-wrap:wrap}}.td-backdrop{z-index:900;background:#00000059;animation:.2s td-fade-in;position:fixed;inset:0}@keyframes td-fade-in{0%{opacity:0}to{opacity:1}}.td-panel{z-index:901;background:var(--ss-card);border-left:var(--ss-border-1);width:min(520px,90vw);box-shadow:var(--ss-shadow-lg,-4px 0 24px #0000001a);padding:var(--ss-space-5);animation:.25s td-slide-in;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}@keyframes td-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.td-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:flex-start;display:flex}.td-header-left{gap:var(--ss-space-1);flex-direction:column;display:flex}.td-topic-name{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight);margin:0}.td-category-badge{padding:2px var(--ss-space-2);font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);background:var(--ss-paper-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-3);width:fit-content;display:inline-block}.td-close{cursor:pointer;color:var(--ss-ink-3);background:0 0;border:none;margin-top:-4px;padding:0;font-size:24px;line-height:1}.td-close:hover{color:var(--ss-ink)}.td-loading{text-align:center;color:var(--ss-ink-4);font-size:var(--ss-text-sm);padding:var(--ss-space-6)}.td-kpis{gap:var(--ss-space-2);margin-bottom:var(--ss-space-4);grid-template-columns:repeat(3,1fr);display:grid}.td-kpi{text-align:center;padding:var(--ss-space-2);background:var(--ss-paper);border-radius:var(--ss-radius-sm);border:var(--ss-border-1)}.td-kpi-value{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-black)}.td-kpi-label{color:var(--ss-ink-4);text-transform:uppercase;letter-spacing:var(--ss-track-mono);margin-top:2px;font-size:10px}@media (width<=400px){.td-kpis{grid-template-columns:repeat(1,1fr)}}.td-section-title{font-family:var(--ss-font-display);font-size:var(--ss-text-sm);font-weight:var(--ss-w-bold);margin:0 0 var(--ss-space-2)}.td-spark-wrap{margin-bottom:var(--ss-space-4)}.td-sparkline{width:100%;height:auto}.td-spark-date{font-family:var(--ss-font-mono);fill:var(--ss-ink-4);font-size:8px}.td-spark-tip{font-family:var(--ss-font-mono);fill:var(--ss-paper);font-size:9px}.td-entities{margin-bottom:var(--ss-space-4)}.td-entity-list{gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.td-entity{font-size:var(--ss-text-xs);padding:2px var(--ss-space-2);background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2)}.td-entity-count{color:var(--ss-ink-4)}.td-articles{margin-bottom:var(--ss-space-4)}.td-article{padding:var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);margin-bottom:var(--ss-space-2)}.td-article-top{justify-content:space-between;align-items:flex-start;gap:var(--ss-space-2);display:flex}.td-article-title{font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);color:var(--ss-ink);flex:1;text-decoration:none}.td-article-title:hover{text-decoration:underline}.td-article-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4);gap:var(--ss-space-2);margin-top:var(--ss-space-1);display:flex}.td-article-snippet{font-size:var(--ss-text-xs);color:var(--ss-ink-3);margin-top:var(--ss-space-1);line-height:1.5}.td-sent{font-family:var(--ss-font-mono);padding:1px var(--ss-space-1);border-radius:var(--ss-radius-xs);white-space:nowrap;font-size:10px}.td-sent--pos{background:color-mix(in srgb, var(--ss-ok) 15%, transparent);color:var(--ss-ok)}.td-sent--neg{background:color-mix(in srgb, var(--ss-danger) 15%, transparent);color:var(--ss-danger)}.td-sent--neu{background:var(--ss-paper-2);color:var(--ss-ink-4)}.td-load-more{width:100%;padding:var(--ss-space-2);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);background:var(--ss-paper);cursor:pointer;color:var(--ss-ink-3);border-style:dashed}.td-load-more:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.td-load-more:disabled{opacity:.5}.adm-history{gap:var(--ss-space-1);flex-direction:column;display:flex}.adm-history-row{align-items:center;gap:var(--ss-space-3);padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-xs);display:flex}.adm-history-week{font-family:var(--ss-font-mono);font-weight:var(--ss-w-bold);min-width:80px}.adm-history-stats{color:var(--ss-ink-3);min-width:180px}.adm-history-topics{color:var(--ss-ink-4);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.adm-groups-list{gap:var(--ss-space-3);flex-direction:column;display:flex}.adm-group-card{border:var(--ss-border-1);border-radius:var(--ss-radius-md);padding:var(--ss-space-4);background:var(--ss-paper);transition:box-shadow var(--ss-dur-fast) var(--ss-ease)}.adm-group-card.expanded{box-shadow:var(--ss-shadow-sm);border-color:var(--ss-ink-5)}.adm-group-card-header{align-items:center;gap:var(--ss-space-3);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex}.adm-group-card.expanded .adm-group-card-header{margin-bottom:var(--ss-space-3);padding-bottom:var(--ss-space-3);border-bottom:var(--ss-border-1)}.adm-group-name{font-family:var(--ss-font-display);font-weight:var(--ss-w-bold);font-size:var(--ss-text-md);cursor:default}.adm-group-name-input{font-family:var(--ss-font-display);font-weight:var(--ss-w-bold);font-size:var(--ss-text-md);border:1px solid var(--ss-border);border-radius:var(--ss-radius-sm);background:var(--ss-bg);color:var(--ss-text);outline:none;width:200px;padding:2px 8px}.adm-group-count{font-size:var(--ss-text-xs);color:var(--ss-ink-3)}.adm-group-sched-badge{font-size:var(--ss-text-xs);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-pill);background:var(--ss-panel-mint);color:var(--ss-ok);font-weight:var(--ss-w-semibold)}.adm-group-pipeline-mini{font-size:var(--ss-text-xs);color:var(--ss-ink-4);font-family:var(--ss-font-mono);margin-left:auto}.adm-group-card-body{gap:var(--ss-space-3);flex-direction:column;display:flex}.adm-group-settings{gap:var(--ss-space-4);flex-wrap:wrap;align-items:end;display:flex}.adm-group-setting{flex-direction:column;gap:4px;display:flex}.adm-group-setting label{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-weight:var(--ss-w-semibold)}.adm-group-setting input,.adm-group-setting select{padding:var(--ss-space-1) var(--ss-space-2);font-size:var(--ss-text-sm);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);background:var(--ss-bg);width:120px}.adm-group-setting input[type=number]{width:80px}.adm-toggle{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-bg);cursor:pointer;color:var(--ss-ink-4);font-weight:var(--ss-w-semibold);transition:all var(--ss-dur-fast) var(--ss-ease)}.adm-toggle.active{background:var(--ss-ok);color:#fff;border-color:var(--ss-ok)}.adm-group-pipeline{margin:var(--ss-space-1) 0}.adm-group-pipeline-bar{background:var(--ss-bg);border-radius:3px;height:6px;margin-bottom:4px;display:flex;overflow:hidden}.adm-group-pipeline-seg{min-width:2px;height:100%}.adm-group-pipeline--norm{background:var(--ss-ok)}.adm-group-pipeline--enr{background:var(--ss-panel-sky)}.adm-group-pipeline-labels{color:var(--ss-ink-4);font-size:10px;font-family:var(--ss-font-mono);justify-content:space-between;display:flex}.adm-group-quick-actions{align-items:center;gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.adm-group-msg{font-size:var(--ss-text-xs);padding:2px var(--ss-space-2);border-radius:var(--ss-radius-xs)}.adm-group-msg--ok{color:var(--ss-ok);background:var(--ss-panel-mint)}.adm-group-msg--err{color:var(--ss-danger);background:var(--ss-panel-blush)}.adm-fetch-table-wrap{margin:var(--ss-space-3) 0;overflow-x:auto}.adm-fetch-table{border-collapse:collapse;width:100%;font-size:var(--ss-text-xs)}.adm-fetch-table th{text-align:left;padding:var(--ss-space-1) var(--ss-space-2);border-bottom:2px solid var(--ss-stroke);color:var(--ss-ink-3);font-weight:var(--ss-w-bold);text-transform:uppercase;letter-spacing:.05em}.adm-fetch-table td{padding:var(--ss-space-1) var(--ss-space-2);border-bottom:1px solid var(--ss-stroke-light,#eee)}.adm-fetch-row--fetching{background:var(--ss-panel-highlight,#fdf8f0)}.adm-fetch-row--done td{color:var(--ss-ink-2)}.adm-fetch-row--error td{color:var(--ss-danger)}.adm-fetch-name{font-weight:var(--ss-w-bold)}.adm-fetch-type{color:var(--ss-ink-3);text-transform:uppercase;letter-spacing:.03em}.adm-fetch-detail{color:var(--ss-ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.adm-fetch-num{text-align:right;font-variant-numeric:tabular-nums;font-weight:var(--ss-w-bold)}.adm-fetch-badge{border-radius:var(--ss-radius-xs);font-size:10px;font-weight:var(--ss-w-bold);text-transform:uppercase;padding:1px 6px;display:inline-block}.adm-fetch-badge.pending{color:var(--ss-ink-3);background:var(--ss-bg);border:1px solid var(--ss-stroke)}.adm-fetch-badge.fetching{color:var(--ss-accent,#4a7c91);background:#e8f4f8;animation:1.2s ease-in-out infinite fetchPulse}.adm-fetch-badge.done{color:var(--ss-ok);background:var(--ss-panel-mint)}.adm-fetch-badge.error{color:var(--ss-danger);background:var(--ss-panel-blush)}@keyframes fetchPulse{0%,to{opacity:1}50%{opacity:.5}}.adm-user-badge{border-radius:var(--ss-radius-xs);font-size:10px;font-weight:var(--ss-w-bold);text-transform:uppercase;letter-spacing:.04em;padding:1px 8px;display:inline-block}.adm-user-badge.pending{color:var(--ss-warn);background:#f8ecd9;border:1px solid #e9d4ae}.adm-user-badge.active{color:var(--ss-ok);background:var(--ss-panel-mint,#e8f5e9)}.adm-user-badge.inactive{color:var(--ss-ink-4);background:var(--ss-bg);border:1px solid var(--ss-stroke)}.adm-fetch-total td{font-weight:var(--ss-w-black);border-top:2px solid var(--ss-stroke);padding-top:var(--ss-space-2)}.adm-group-feed-list{gap:var(--ss-space-1);margin-bottom:var(--ss-space-2);flex-wrap:wrap;display:flex}.adm-group-feed-tag{padding:var(--ss-space-1) var(--ss-space-2);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);background:var(--ss-bg)}.adm-group-actions{gap:var(--ss-space-2);display:flex}.adm-group-profiles{align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-3);padding-top:var(--ss-space-2);border-top:var(--ss-border-1);flex-wrap:wrap;display:flex}.adm-group-profiles-label{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-weight:var(--ss-w-semibold)}.adm-group-profile-chip{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-paper);cursor:pointer;color:var(--ss-ink-3);transition:all var(--ss-dur-fast) var(--ss-ease)}.adm-group-profile-chip:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.adm-group-profile-chip.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.adm-group-feeds{gap:var(--ss-space-1);margin-bottom:var(--ss-space-3);flex-direction:column;display:flex}.adm-group-feed-check{align-items:center;gap:var(--ss-space-3);font-size:var(--ss-text-sm);padding:var(--ss-space-2) var(--ss-space-3);cursor:pointer;border:var(--ss-border-1);border-radius:var(--ss-radius-xs);background:var(--ss-paper);display:flex}.adm-group-feed-check:hover{border-color:var(--ss-ink-3)}.adm-group-feed-check input[type=checkbox]{flex-shrink:0;margin:0}.adm-group-feed-name{font-weight:var(--ss-w-medium);flex:1}.adm-group-feed-type{font-size:var(--ss-text-xs);color:var(--ss-ink-4);text-transform:uppercase;letter-spacing:.05em}.adm-art-filters{gap:var(--ss-space-1);margin-bottom:var(--ss-space-3);display:flex}.adm-art-filter{align-items:center;gap:var(--ss-space-1);padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);transition:all var(--ss-dur-fast) var(--ss-ease);display:flex}.adm-art-filter:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.adm-art-filter.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.adm-art-filter-count{font-family:var(--ss-font-mono);opacity:.7;font-size:10px}.adm-art-list{flex-direction:column;gap:1px;display:flex}.adm-art-row{align-items:center;gap:var(--ss-space-3);padding:var(--ss-space-3);cursor:pointer;border:var(--ss-border-1);border-radius:var(--ss-radius-xs);transition:background var(--ss-dur-fast) var(--ss-ease);display:flex}.adm-art-row:hover{background:var(--ss-paper-2)}.adm-art-row.enriched{border-left:3px solid var(--ss-ok)}.adm-art-row.failed{border-left:3px solid var(--ss-danger)}.adm-art-status{flex-shrink:0;width:52px}.adm-art-badge{padding:1px var(--ss-space-2);font-size:10px;font-family:var(--ss-font-mono);font-weight:var(--ss-w-bold);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border-radius:var(--ss-radius-xs);display:inline-block}.adm-art-badge.ok{background:var(--ss-ok);color:var(--ss-paper)}.adm-art-badge.err{background:var(--ss-danger);color:var(--ss-paper)}.adm-art-badge.pending{background:var(--ss-paper-2);color:var(--ss-ink-4)}.adm-art-info{flex:1;min-width:0}.adm-art-title{font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.adm-art-meta{gap:var(--ss-space-2);font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:2px;display:flex}.adm-art-backdrop{z-index:900;background:#00000059;animation:.2s td-fade-in;position:fixed;inset:0}.adm-art-panel{z-index:901;background:var(--ss-card);border-left:var(--ss-border-1);width:min(600px,92vw);box-shadow:var(--ss-shadow-lg,-4px 0 24px #0000001a);padding:var(--ss-space-5);flex-direction:column;animation:.25s td-slide-in;display:flex;position:fixed;top:0;bottom:0;right:0;overflow-y:auto}.adm-art-panel-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:flex-start;gap:var(--ss-space-3);display:flex}.adm-art-panel-title{font-family:var(--ss-font-display);font-size:var(--ss-text-md);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight);margin:0;line-height:1.3}.adm-art-panel-meta{gap:var(--ss-space-2);font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:var(--ss-space-1);flex-wrap:wrap;display:flex}.adm-art-panel-body{flex:1;overflow-y:auto}.adm-art-summary{margin-bottom:var(--ss-space-4);padding:var(--ss-space-3);background:var(--ss-paper);border-radius:var(--ss-radius-sm);border-left:3px solid var(--ss-electric,var(--ss-ink-3))}.adm-art-summary strong{font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3)}.adm-art-summary p{font-size:var(--ss-text-sm);color:var(--ss-ink-2);margin:var(--ss-space-1) 0 0;line-height:1.6}.adm-art-fulltext{font-size:var(--ss-text-sm);color:var(--ss-ink-2);line-height:1.7}.adm-art-fulltext p{margin:0 0 var(--ss-space-2)}.adm-art-panel-footer{margin-top:var(--ss-space-4);padding-top:var(--ss-space-3);border-top:var(--ss-border-1)}.adm-art-keywords{margin:var(--ss-space-3) 0}.adm-art-keywords strong,.adm-art-angle strong,.adm-art-pains strong,.adm-art-numbers strong{font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);margin-bottom:var(--ss-space-1);display:block}.adm-art-keyword-list{gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.adm-art-keyword-tag{font-size:var(--ss-text-xs);background:var(--ss-paper);border:1px solid var(--ss-stroke);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);padding:2px 8px}.adm-art-angle{margin:var(--ss-space-3) 0}.adm-art-angle p{font-size:var(--ss-text-sm);color:var(--ss-ok);margin:0}.adm-art-pains{margin:var(--ss-space-3) 0}.adm-art-pain{font-size:var(--ss-text-sm);color:var(--ss-ink-2);margin:var(--ss-space-1) 0}.adm-art-pain-title{font-weight:var(--ss-w-bold);color:var(--ss-danger)}.adm-art-numbers{margin:var(--ss-space-3) 0}.adm-art-number{font-size:var(--ss-text-sm);color:var(--ss-ink-2);margin:var(--ss-space-1) 0}.adm-art-number-val{font-weight:var(--ss-w-black);color:var(--ss-ink-1)}.adm-art-error-box{padding:var(--ss-space-3);background:color-mix(in srgb, var(--ss-danger) 8%, var(--ss-paper));border-radius:var(--ss-radius-sm);border-left:3px solid var(--ss-danger)}.adm-art-error-box strong{font-size:var(--ss-text-xs);text-transform:uppercase;color:var(--ss-danger)}.adm-art-error-box p{font-size:var(--ss-text-sm);color:var(--ss-ink-2);margin:var(--ss-space-1) 0 0}.adm-art-panel-link{text-align:center;padding:var(--ss-space-3);margin-top:var(--ss-space-4);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);color:var(--ss-ink-2);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);text-decoration:none;display:block}.adm-art-panel-link:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.adm-feeds-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.adm-feed-card{border:var(--ss-border-1);border-radius:var(--ss-radius-md);background:var(--ss-paper);transition:box-shadow var(--ss-dur-fast) var(--ss-ease)}.adm-feed-card.expanded{box-shadow:var(--ss-shadow-sm)}.adm-feed-card-top{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-3) var(--ss-space-4);cursor:pointer;transition:background var(--ss-dur-fast) var(--ss-ease);display:flex}.adm-feed-card-top:hover{background:var(--ss-paper-2)}.adm-hover-actions{flex-shrink:0;gap:4px;margin-left:auto;display:none}.adm-feed-card-top:hover .adm-hover-actions,.adm-group-card-header:hover .adm-hover-actions{display:flex}.adm-feed-card-top:hover .adm-feed-expand,.adm-group-card-header:hover .adm-feed-expand{display:none}.adm-hover-actions .adm-btn-sm{padding:2px 8px;font-size:11px}.adm-feed-expand{font-size:var(--ss-text-xs);color:var(--ss-ink-4);flex-shrink:0;margin-left:auto}.adm-feed-cron-badge{font-family:var(--ss-font-mono);font-size:10px;font-weight:var(--ss-w-bold);letter-spacing:var(--ss-track-mono);text-transform:uppercase;background:var(--ss-ok);color:var(--ss-paper);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs)}.adm-feed-card-body{padding:0 var(--ss-space-4) var(--ss-space-4);border-top:var(--ss-border-1);gap:var(--ss-space-3);padding-top:var(--ss-space-3);flex-direction:column;display:flex}.adm-feed-tag{padding:1px var(--ss-space-2);background:var(--ss-paper-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-3);font-size:10px;font-weight:var(--ss-w-medium);letter-spacing:.02em}.adm-tag-filters{gap:var(--ss-space-1);margin-bottom:var(--ss-space-3);flex-wrap:wrap;display:flex}.adm-tag-chip{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);transition:all var(--ss-dur-fast) var(--ss-ease);align-items:center;gap:4px;display:flex}.adm-tag-chip:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.adm-tag-chip.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.adm-tag-count{font-family:var(--ss-font-mono);opacity:.6;font-size:10px}.adm-tag-input-wrap{position:relative}.adm-tag-input-box{padding:var(--ss-space-1) var(--ss-space-2);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);background:var(--ss-card);flex-wrap:wrap;align-items:center;gap:4px;min-height:32px;display:flex}.adm-tag-input-box:focus-within{border-color:var(--ss-ink-3)}.adm-tag-pill{padding:1px var(--ss-space-2);font-size:var(--ss-text-xs);background:var(--ss-paper-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);font-weight:var(--ss-w-medium);align-items:center;gap:2px;display:inline-flex}.adm-tag-pill button{cursor:pointer;color:var(--ss-ink-4);background:0 0;border:none;padding:0 2px;font-size:12px;line-height:1}.adm-tag-pill button:hover{color:var(--ss-danger)}.adm-tag-input{font-size:var(--ss-text-xs);font-family:var(--ss-font-sans);min-width:80px;color:var(--ss-ink);background:0 0;border:none;outline:none;flex:1;padding:2px 0}.adm-tag-suggestions{z-index:20;background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);box-shadow:var(--ss-shadow-sm);max-height:160px;margin-top:2px;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.adm-tag-suggestion{text-align:left;width:100%;padding:var(--ss-space-2) var(--ss-space-3);font-size:var(--ss-text-xs);cursor:pointer;color:var(--ss-ink-2);background:0 0;border:none;display:block}.adm-tag-suggestion:hover{background:var(--ss-paper-2)}.adm-feed-edit-fields{gap:var(--ss-space-1);flex-direction:column;display:flex}.adm-feed-edit-fields label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-3);margin-top:var(--ss-space-1)}.adm-feed-edit-fields label:first-child{margin-top:0}.adm-feed-edit-fields input,.adm-feed-edit-fields select{padding:var(--ss-space-2) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-xs);font-size:var(--ss-text-sm);font-family:var(--ss-font-sans);width:100%}.adm-feed-edit-fields input:focus,.adm-feed-edit-fields select:focus{border-color:var(--ss-ink-3);outline:none}.adm-feed-actions{gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.adm-feed-section{padding:var(--ss-space-3);background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-sm)}.adm-feed-section-title{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-3);text-transform:uppercase;letter-spacing:var(--ss-track-mono);margin-bottom:var(--ss-space-2)}.adm-feed-sched-row{align-items:center;gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.adm-feed-toggle{align-items:center;gap:var(--ss-space-1);font-size:var(--ss-text-xs);cursor:pointer;color:var(--ss-ink-2);display:flex}.adm-feed-toggle input[type=checkbox]{margin:0}.fp{margin-bottom:var(--ss-space-2);align-items:flex-start;gap:0;display:flex}.fp-step{gap:var(--ss-space-1);padding:var(--ss-space-3);border:2px solid var(--ss-paper-2);border-radius:var(--ss-radius-md);background:var(--ss-paper);flex-direction:column;flex:1;transition:border-color .2s,background .2s;display:flex}.fp-step.done{border-color:var(--ss-ok);background:color-mix(in srgb, var(--ss-ok) 5%, var(--ss-paper))}.fp-step.partial{border-color:var(--ss-electric,var(--ss-ink-3))}.fp-step.running{border-color:var(--ss-ink)}.fp-step-header{align-items:center;gap:var(--ss-space-2);display:flex}.fp-step-num{width:24px;height:24px;font-family:var(--ss-font-display);font-weight:var(--ss-w-black);font-size:var(--ss-text-xs);background:var(--ss-paper-2);color:var(--ss-ink-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.fp-step.done .fp-step-num{background:var(--ss-ok);color:var(--ss-paper)}.fp-step.running .fp-step-num{background:var(--ss-ink);color:var(--ss-paper)}.fp-step-title{font-family:var(--ss-font-display);font-weight:var(--ss-w-bold);font-size:var(--ss-text-sm)}.fp-step-count{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-3);margin-left:auto}.fp-bar{background:var(--ss-paper-2);border-radius:2px;height:4px;overflow:hidden}.fp-bar-fill{border-radius:2px;height:100%;transition:width .3s}.fp-bar-fill.fp-bar-static{background:color-mix(in srgb, var(--ss-ok) 40%, var(--ss-paper-2))}.fp-bar-fill.fp-bar-pulse{background:var(--ss-ink);animation:1.5s ease-in-out infinite fp-pulse;width:100%!important}@keyframes fp-pulse{0%,to{opacity:.3}50%{opacity:1}}.fp-msg{font-size:var(--ss-text-xs);padding:var(--ss-space-1) var(--ss-space-2);border-radius:var(--ss-radius-xs);line-height:1.4}.fp-msg--ok{background:color-mix(in srgb, var(--ss-ok) 10%, var(--ss-paper));color:var(--ss-ok)}.fp-msg--err{background:color-mix(in srgb, var(--ss-danger) 10%, var(--ss-paper));color:var(--ss-danger)}.fp-btn{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-2);font-weight:var(--ss-w-medium);transition:all var(--ss-dur-fast) var(--ss-ease);align-self:flex-start}.fp-btn:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.fp-btn:disabled{opacity:.4;cursor:default;pointer-events:none}.fp-btn--stop{background:var(--ss-danger);color:var(--ss-paper);border-color:var(--ss-danger)}.fp-btn--stop:hover{background:color-mix(in srgb, var(--ss-danger) 80%, black);border-color:color-mix(in srgb, var(--ss-danger) 80%, black);color:var(--ss-paper)}.fp-btns{gap:var(--ss-space-1);display:flex}.fp-arrow{width:20px;color:var(--ss-ink-4);font-size:var(--ss-text-md);padding-top:var(--ss-space-2);flex-shrink:0;justify-content:center;align-self:center;align-items:center;display:flex}@media (width<=700px){.fp{flex-direction:column}.fp-arrow{width:auto;height:20px;padding:0;transform:rotate(90deg)}}.adm-group-selector{align-items:center;gap:var(--ss-space-2);margin-bottom:var(--ss-space-3);display:flex}.adm-group-selector label{font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-3)}.adm-group-selector select{padding:var(--ss-space-2) var(--ss-space-3);font-size:var(--ss-text-sm);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);font-family:var(--ss-font-sans);background:var(--ss-card)}.pipe-summary{gap:var(--ss-space-3);padding:var(--ss-space-3) var(--ss-space-4);background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);margin-bottom:var(--ss-space-4);font-size:var(--ss-text-xs);flex-wrap:wrap;display:flex}.pipe-summary-item{color:var(--ss-ink-3)}.pipe-summary-item strong{color:var(--ss-ink);font-variant-numeric:tabular-nums;margin-left:2px}.pipe-summary--pending strong{color:var(--ss-ink-3)}.pipe-summary--enriched strong{color:var(--ss-electric,var(--ss-ink))}.pipe-summary--normalized strong{color:var(--ss-ok)}.pipe-summary--error strong{color:var(--ss-danger)}.pipe-feed-select{padding:var(--ss-space-2) var(--ss-space-3);font-size:var(--ss-text-sm);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);font-family:var(--ss-font-sans);background:var(--ss-card);min-width:200px}.pipe-columns{gap:var(--ss-space-4);grid-template-columns:.6fr 1fr 1fr;height:70vh;min-height:400px;max-height:700px;display:grid}.pipe-col{border:var(--ss-border-1);border-radius:var(--ss-radius-md);background:var(--ss-paper);flex-direction:column;display:flex;overflow:hidden}.pipe-col-header{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-3) var(--ss-space-4);border-bottom:var(--ss-border-1);background:var(--ss-paper-2);border-radius:var(--ss-radius-md) var(--ss-radius-md) 0 0;display:flex}.pipe-col-num{background:var(--ss-ink);width:24px;height:24px;color:var(--ss-paper);font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.pipe-col-title{font-weight:var(--ss-w-semibold);font-size:var(--ss-text-sm)}.pipe-col-count{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-variant-numeric:tabular-nums;margin-left:auto}.pipe-col-body{padding:var(--ss-space-3) var(--ss-space-4);gap:var(--ss-space-3);flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.pipe-action-row{gap:var(--ss-space-2);align-items:center;display:flex}.pipe-btn{padding:var(--ss-space-2) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium);cursor:pointer;color:var(--ss-ink-2)}.pipe-btn:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.pipe-btn:disabled{opacity:.4;pointer-events:none}.pipe-btn--stop{background:var(--ss-danger);color:#fff;border-color:var(--ss-danger)}.pipe-btn--stop:hover{opacity:.85}.pipe-btn--reset{padding:var(--ss-space-1) var(--ss-space-3);border:1px dashed var(--ss-danger);border-radius:var(--ss-radius-pill);cursor:pointer;color:var(--ss-danger);opacity:.6;background:0 0;align-self:flex-start;margin-top:auto;font-size:10px;transition:opacity .15s}.pipe-btn--reset:hover{opacity:1}.pipe-select{padding:var(--ss-space-1) var(--ss-space-2);font-size:var(--ss-text-xs);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);background:var(--ss-card);font-family:var(--ss-font-sans)}.pipe-select:disabled{opacity:.4}.pipe-msg{font-size:var(--ss-text-xs);padding:var(--ss-space-2) var(--ss-space-3);border-radius:var(--ss-radius-sm)}.pipe-msg--ok{background:color-mix(in srgb, var(--ss-ok) 12%, var(--ss-paper));color:var(--ss-ok)}.pipe-msg--err{background:color-mix(in srgb, var(--ss-danger) 12%, var(--ss-paper));color:var(--ss-danger)}.pipe-progress-wrap{margin:var(--ss-space-2) 0;align-items:center;gap:var(--ss-space-2);display:flex}.pipe-progress-bar{background:var(--ss-stroke);border-radius:4px;flex:1;height:8px;overflow:hidden}.pipe-progress-fill{background:var(--ss-accent,#4a7c91);border-radius:4px;height:100%;transition:width .4s}.pipe-progress-text{font-size:var(--ss-text-xs);color:var(--ss-ink-3);white-space:nowrap}.pipe-scrape-phase{background:var(--ss-panel-sand,#f5f0e8);border-radius:var(--ss-radius-sm);border-left:3px solid var(--ss-accent,#4a7c91);font-size:var(--ss-text-sm);color:var(--ss-ink-1);align-items:center;gap:8px;margin:6px 0;padding:8px 12px;display:flex}.pipe-scrape-phase-dot{background:var(--ss-accent,#4a7c91);border-radius:50%;flex-shrink:0;width:10px;height:10px;animation:1.2s ease-in-out infinite fetchPulse}.pipe-scrape-phase-text{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.pipe-scrape-table-wrap{max-height:300px;margin-top:var(--ss-space-2);border:1px solid var(--ss-stroke);border-radius:var(--ss-radius-sm);overflow-y:auto}.pipe-scrape-table{border-collapse:collapse;width:100%;font-size:var(--ss-text-xs)}.pipe-scrape-table th{text-align:left;background:var(--ss-bg);border-bottom:1px solid var(--ss-stroke);z-index:1;padding:4px 8px;font-weight:600;position:sticky;top:0}.pipe-scrape-table td{border-bottom:1px solid var(--ss-stroke-light,#eee);padding:3px 8px}.pipe-scrape-row--pending{opacity:.4}.pipe-scrape-row--scraping{background:var(--ss-panel-sand,#f5f0e8)}.pipe-scrape-row--done{background:var(--ss-panel-mint,#e8f5e9)}.pipe-scrape-row--error{background:var(--ss-panel-blush,#fce4ec)}.pipe-scrape-idx{color:var(--ss-ink-3);text-align:center;font-variant-numeric:tabular-nums;width:28px}.pipe-scrape-title{text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:500;overflow:hidden}.pipe-scrape-domain{color:var(--ss-ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.pipe-scrape-time{white-space:nowrap;color:var(--ss-ink-3);text-align:right}.pipe-scrape-total td{background:var(--ss-bg);font-weight:600}.pipe-feed-log{margin-top:var(--ss-space-2);font-size:var(--ss-text-xs);flex-direction:column;gap:2px;max-height:200px;display:flex;overflow-y:auto}.pipe-feed-log-row{border-radius:var(--ss-radius-xs);justify-content:space-between;align-items:center;gap:var(--ss-space-2);padding:4px 8px;display:flex}.pipe-feed-log--pending{opacity:.4}.pipe-feed-log--fetching{background:var(--ss-panel-sand,#f5f0e8)}.pipe-feed-log--done{background:var(--ss-panel-mint,#e8f5e9)}.pipe-feed-log--error{background:var(--ss-panel-blush,#fce4ec)}.pipe-feed-log-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-weight:600;overflow:hidden}.pipe-feed-log-status{color:var(--ss-ink-3);white-space:nowrap}.pipe-feed-log-status--active{color:var(--ss-accent,#4a7c91);font-weight:600}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.pipe-feed-log-status--active:before{content:"● ";animation:1s infinite pulse-dot}.pipe-feed-log-status--done{color:var(--ss-ok,#2e7d32)}.pipe-feed-log-status--err{color:var(--ss-danger,#c62828)}.pipe-filters{gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.pipe-filter{padding:var(--ss-space-1) var(--ss-space-2);border:1px solid var(--ss-stroke);border-radius:var(--ss-radius-sm);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);align-items:center;gap:4px;font-size:11px;display:flex}.pipe-filter.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.pipe-filter span{font-variant-numeric:tabular-nums}.pipe-art-list{border:var(--ss-border-1);border-radius:var(--ss-radius-sm);flex-direction:column;flex:1;gap:1px;min-height:0;display:flex;overflow-y:auto}.pipe-art-row{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-2) var(--ss-space-3);background:var(--ss-card);cursor:pointer;font-size:var(--ss-text-xs);display:flex}.pipe-art-row:hover{background:var(--ss-paper-2)}.pipe-art-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.pipe-art-dot--enriched,.pipe-art-dot--normalized{background:var(--ss-ok)}.pipe-art-dot--error{background:var(--ss-danger)}.pipe-art-dot--pending{background:var(--ss-stroke)}.pipe-art-dot--selected{background:var(--ss-ok)}.pipe-art--selected{background:color-mix(in srgb, var(--ss-ok) 8%, var(--ss-card))}.pipe-art--selected:hover{background:color-mix(in srgb, var(--ss-ok) 12%, var(--ss-card))}.pipe-select-bar{align-items:center;gap:var(--ss-space-2);display:flex}.pipe-btn-xs{padding:2px var(--ss-space-2);border:1px solid var(--ss-stroke);border-radius:var(--ss-radius-sm);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);font-size:10px}.pipe-btn-xs:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.pipe-select-count{color:var(--ss-ok);font-size:10px;font-weight:var(--ss-w-semibold)}.pipe-art-info{flex:1;min-width:0}.pipe-art-title{white-space:nowrap;text-overflow:ellipsis;font-weight:var(--ss-w-medium);color:var(--ss-ink);overflow:hidden}.pipe-art-meta{gap:var(--ss-space-2);color:var(--ss-ink-3);margin-top:1px;font-size:10px;display:flex}.pipe-art-err{color:var(--ss-danger)}.pipe-art-view{cursor:pointer;width:24px;height:24px;color:var(--ss-ink-3);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;display:flex}.pipe-art-view:hover{background:var(--ss-paper-2);color:var(--ss-ink)}.pipe-norm-item{cursor:pointer}.pipe-norm-tag{background:var(--ss-paper-2);border-radius:var(--ss-radius-sm);font-size:9px;font-weight:var(--ss-w-medium);padding:1px 4px}.pipe-pagination{justify-content:center;align-items:center;gap:var(--ss-space-3);padding:var(--ss-space-2) 0;font-size:var(--ss-text-xs);color:var(--ss-ink-3);display:flex}.pipe-pagination button{padding:var(--ss-space-1) var(--ss-space-3);border:var(--ss-border-1);border-radius:var(--ss-radius-sm);background:var(--ss-card);cursor:pointer;font-size:var(--ss-text-xs)}.pipe-pagination button:disabled{opacity:.3;pointer-events:none}.pipe-norm-stats{gap:var(--ss-space-2);flex-direction:column;display:flex}.pipe-norm-row{font-size:var(--ss-text-xs);padding:var(--ss-space-1) 0;border-bottom:1px solid var(--ss-stroke);justify-content:space-between;display:flex}.pipe-norm-row span{color:var(--ss-ink-3)}.pipe-norm-row strong{font-variant-numeric:tabular-nums}.pipe-loading,.pipe-empty{font-size:var(--ss-text-xs);color:var(--ss-ink-3);text-align:center;padding:var(--ss-space-4)}@media (width<=768px){.pipe-columns{grid-template-columns:1fr}}.td-dash{gap:var(--ss-space-4);flex-direction:column;display:flex}.td-kpis-row{gap:var(--ss-space-3);grid-template-columns:repeat(4,1fr);display:grid}.td-kpi-card{padding:var(--ss-space-4);background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-md);flex-direction:column;gap:2px;display:flex}.td-dash .td-kpi-label{text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-4);font-size:10px;font-weight:var(--ss-w-semibold)}.td-dash .td-kpi-value{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);color:var(--ss-ink);line-height:1.1}.td-dash .td-kpi-value--ok{color:var(--ss-ok)}.td-kpi-sub{font-size:var(--ss-text-xs);color:var(--ss-ink-4);font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono)}.td-charts-row{gap:var(--ss-space-4);grid-template-columns:1fr 1fr;display:grid}.td-dash .td-panel{background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-md);width:auto;padding:var(--ss-space-4);box-shadow:none;animation:none;position:static;overflow:visible}.td-dash .td-panel--wide{grid-column:span 1}.td-panel-header{margin-bottom:var(--ss-space-3);padding-bottom:var(--ss-space-2);border-bottom:var(--ss-border-1);justify-content:space-between;align-items:baseline;display:flex}.td-panel-label{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-weight:var(--ss-w-semibold);text-transform:uppercase;letter-spacing:var(--ss-track-mono)}.td-panel-label:first-child{font-family:var(--ss-font-display);font-size:var(--ss-text-sm);font-weight:var(--ss-w-bold);text-transform:none;letter-spacing:normal;color:var(--ss-ink)}.td-hbars{gap:var(--ss-space-2);flex-direction:column;display:flex}.td-hbar-row{gap:var(--ss-space-2);grid-template-columns:100px 1fr 36px;align-items:center;display:grid}.td-hbar-label{font-size:var(--ss-text-xs);color:var(--ss-ink-2);white-space:nowrap;text-overflow:ellipsis;font-weight:var(--ss-w-medium);overflow:hidden}.td-hbar-track{background:var(--ss-paper-2);border-radius:4px;height:8px;overflow:hidden}.td-hbar-fill{background:var(--ss-ink);border-radius:4px;height:100%;transition:width .4s}.td-hbar-fill--muted{background:var(--ss-ink-4)}.td-hbar-fill--accent{background:var(--ss-ok)}.td-hbar-value{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-3);text-align:right;font-variant-numeric:tabular-nums}.td-dash .td-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--ss-text-sm)}.td-dash .td-th{padding:var(--ss-space-2) var(--ss-space-3);text-align:left;font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);color:var(--ss-ink-4);border-bottom:2px solid var(--ss-paper-2);white-space:nowrap}.td-dash .td-th--right{text-align:right}.td-dash .td-row{cursor:pointer;transition:background var(--ss-dur-fast) var(--ss-ease)}.td-dash .td-row:hover{background:color-mix(in srgb, var(--ss-blush) 40%, transparent)}.td-dash .td-row--active{background:var(--ss-blush)}.td-dash .td-td{padding:var(--ss-space-2) var(--ss-space-3);border-bottom:var(--ss-border-1);vertical-align:middle}.td-dash .td-td--right{text-align:right}.td-dash .td-td--mono{font-family:var(--ss-font-mono);font-variant-numeric:tabular-nums}.td-dash .td-td--action{text-align:center;width:36px}.td-dash .td-topic-dot{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.td-dash .td-topic-name{font-weight:var(--ss-w-medium)}.td-sent-badge{font-family:var(--ss-font-mono);font-size:10px;font-weight:var(--ss-w-bold);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs);letter-spacing:var(--ss-track-mono);display:inline-block}.td-sent-badge--pos{background:color-mix(in srgb, var(--ss-ok) 15%, transparent);color:var(--ss-ok)}.td-sent-badge--neg{background:color-mix(in srgb, var(--ss-danger) 15%, transparent);color:var(--ss-danger)}.td-sent-badge--neu{background:var(--ss-paper-2);color:var(--ss-ink-4)}.td-detail-btn{cursor:pointer;font-size:var(--ss-text-sm);color:var(--ss-ink-4);border-radius:var(--ss-radius-xs);background:0 0;border:none;padding:2px 6px}.td-detail-btn:hover{color:var(--ss-ink);background:var(--ss-paper-2)}.td-filters{gap:var(--ss-space-1);padding:var(--ss-space-3) 0;flex-wrap:wrap;display:flex}.td-chip{padding:var(--ss-space-1) var(--ss-space-3);font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);background:var(--ss-card);cursor:pointer;color:var(--ss-ink-3);transition:all var(--ss-dur-fast) var(--ss-ease)}.td-chip:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.td-chip.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.td-kpi-card--sent{position:relative}.td-info-btn{border:1px solid var(--ss-ink-4);width:16px;height:16px;font-size:10px;font-weight:var(--ss-w-bold);font-style:italic;font-family:var(--ss-font-display);color:var(--ss-ink-4);cursor:pointer;margin-left:var(--ss-space-1);vertical-align:middle;transition:all var(--ss-dur-fast) var(--ss-ease);background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.td-info-btn:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.td-info-box{z-index:20;margin-top:var(--ss-space-2);background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-md);padding:var(--ss-space-3) var(--ss-space-4);box-shadow:var(--ss-shadow-sm);font-size:var(--ss-text-xs);color:var(--ss-ink-2);min-width:280px;line-height:1.6;position:absolute;top:100%;left:0;right:0}.td-info-box p{margin:0 0 var(--ss-space-1)}.td-info-box strong{color:var(--ss-ink)}.td-info-box ul{margin:var(--ss-space-1) 0 0;padding-left:var(--ss-space-4);list-style:outside}.td-info-box li{margin-bottom:2px}.td-info-close{top:var(--ss-space-2);right:var(--ss-space-2);cursor:pointer;color:var(--ss-ink-4);background:0 0;border:none;padding:0;font-size:16px;line-height:1;position:absolute}.td-info-close:hover{color:var(--ss-ink)}.td-footer{font-size:var(--ss-text-xs);color:var(--ss-ink-4);text-align:center;padding:var(--ss-space-2) 0;border-top:var(--ss-border-1);font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono)}@media (width<=768px){.td-kpis-row{grid-template-columns:repeat(2,1fr)}.td-charts-row{grid-template-columns:1fr}.td-hbar-row{grid-template-columns:80px 1fr 30px}}.so{gap:var(--ss-space-4);flex-direction:column;display:flex}.so-start{text-align:center;padding:var(--ss-space-6)}.so-start-text{color:var(--ss-ink-3);font-size:var(--ss-text-sm);margin-bottom:var(--ss-space-3)}.so-loading{text-align:center;color:var(--ss-ink-3);font-size:var(--ss-text-sm);padding:var(--ss-space-6);animation:1.5s ease-in-out infinite fp-pulse}.so-headline{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight);padding-bottom:var(--ss-space-3);border-bottom:2px solid var(--ss-ink);line-height:1.3}.so-narrative{font-size:var(--ss-text-sm);color:var(--ss-ink-2);padding:var(--ss-space-4);background:var(--ss-paper);border-radius:var(--ss-radius-md);border:var(--ss-border-1);line-height:1.7}.so-narrative p{margin:0}.so-row{gap:var(--ss-space-4);grid-template-columns:1fr 1fr;display:grid}.so-row--top{grid-template-columns:auto 1fr}.so-card{background:var(--ss-paper);border:var(--ss-border-1);border-radius:var(--ss-radius-md);padding:var(--ss-space-4)}.so-card-title{font-family:var(--ss-font-display);font-size:var(--ss-text-sm);font-weight:var(--ss-w-bold);margin-bottom:var(--ss-space-3);padding-bottom:var(--ss-space-2);border-bottom:var(--ss-border-1)}.so-card--sentiment{flex-direction:column;align-items:center;width:200px;display:flex}.so-sent-ring{width:120px;height:120px;margin-bottom:var(--ss-space-2)}.so-donut{width:100%;height:100%}.so-donut-big{font-family:var(--ss-font-display);fill:var(--ss-ink);font-size:18px;font-weight:900}.so-donut-sub{fill:var(--ss-ink-4);text-transform:uppercase;letter-spacing:.08em;font-size:8px}.so-sent-legend{font-size:var(--ss-text-xs);color:var(--ss-ink-3);flex-direction:column;gap:4px;display:flex}.so-sent-legend i{vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.so-card--kpis{gap:var(--ss-space-3);grid-template-columns:repeat(4,1fr);align-content:center;display:grid}.so-kpi{text-align:center;flex-direction:column;align-items:center;display:flex}.so-kpi-num{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);line-height:1.1}.so-kpi-label{color:var(--ss-ink-4);text-transform:uppercase;letter-spacing:var(--ss-track-mono);font-size:10px}.so-bars{gap:var(--ss-space-2);flex-direction:column;display:flex}.so-bar-row{gap:var(--ss-space-2);grid-template-columns:90px 1fr 30px;align-items:center;display:grid}.so-bar-label{font-size:var(--ss-text-xs);color:var(--ss-ink-2);font-weight:var(--ss-w-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.so-bar-track{background:var(--ss-paper-2);border-radius:4px;height:8px;overflow:hidden}.so-bar-fill{background:var(--ss-ink);border-radius:4px;height:100%;transition:width .4s}.so-bar-fill--accent{background:var(--ss-ok)}.so-bar-fill--muted{background:var(--ss-ink-4)}.so-bar-fill--source{background:#7b6b4f}.so-bar-val{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-3);text-align:right;font-variant-numeric:tabular-nums}.so-hot-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.so-hot-item{align-items:flex-start;gap:var(--ss-space-2);padding:var(--ss-space-2) 0;border-bottom:1px solid var(--ss-paper-2);display:flex}.so-hot-item:last-child{border-bottom:none}.so-hot-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:3px}.so-hot-body{flex:1}.so-hot-name{font-weight:var(--ss-w-semibold);font-size:var(--ss-text-sm);display:block}.so-hot-why{font-size:var(--ss-text-xs);color:var(--ss-ink-3);line-height:1.5}.so-hot-badge{font-size:9px;font-family:var(--ss-font-mono);font-weight:var(--ss-w-bold);text-transform:uppercase;letter-spacing:var(--ss-track-mono);padding:1px var(--ss-space-2);border-radius:var(--ss-radius-xs);white-space:nowrap;flex-shrink:0}.so-hot-badge--high{background:color-mix(in srgb, var(--ss-danger) 12%, transparent);color:var(--ss-danger)}.so-hot-badge--medium{background:var(--ss-paper-2);color:var(--ss-ink-3)}.so-hot-badge--low{background:var(--ss-paper-2);color:var(--ss-ink-4)}.so-players{gap:var(--ss-space-2);flex-direction:column;display:flex}.so-player{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-2) 0;border-bottom:1px solid var(--ss-paper-2);display:flex}.so-player:last-child{border-bottom:none}.so-player-name{font-weight:var(--ss-w-bold);font-size:var(--ss-text-sm);white-space:nowrap}.so-player-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.so-player-role{font-size:var(--ss-text-xs);color:var(--ss-ink-3);line-height:1.4}.so-card--tensions{border-left:3px solid var(--ss-danger)}.so-tension-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.so-tension{font-size:var(--ss-text-sm);color:var(--ss-ink-2);padding-left:var(--ss-space-3);border-left:2px solid var(--ss-paper-2);line-height:1.5}.so-card--signals{border-left:3px solid var(--ss-ok)}.so-signal-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.so-signal{font-size:var(--ss-text-sm);color:var(--ss-ink-2);padding-left:var(--ss-space-3);border-left:2px solid var(--ss-paper-2);line-height:1.5}.so-card--mood .so-mood{align-items:center;gap:var(--ss-space-3);display:flex}.so-mood-emoji{font-size:2rem}.so-mood-body{flex-direction:column;gap:2px;display:flex}.so-mood-label{font-weight:600;font-size:var(--ss-text-base);color:var(--ss-ink)}.so-mood-desc{font-size:var(--ss-text-sm);color:var(--ss-ink-2);line-height:1.5}.adm-select{width:100%;font-size:var(--ss-text-sm);border:1px solid var(--ss-paper-2);background:var(--ss-paper);color:var(--ss-ink);border-radius:6px;padding:8px 10px}.so-footer{text-align:center;padding:var(--ss-space-2) 0}@media (width<=768px){.so-row,.so-row--top{grid-template-columns:1fr}.so-card--sentiment{width:100%}.so-card--kpis{grid-template-columns:repeat(2,1fr)}}.vol-widget{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-3) var(--ss-space-4);margin-bottom:var(--ss-space-4);box-shadow:var(--ss-shadow-xs)}.vol-header{margin-bottom:var(--ss-space-2);justify-content:space-between;align-items:baseline;display:flex}.vol-label{font-family:var(--ss-font-display);font-size:var(--ss-text-xs);font-weight:var(--ss-w-bold);text-transform:uppercase;letter-spacing:.05em;color:var(--ss-ink-3)}.vol-count{font-family:var(--ss-font-display);font-size:var(--ss-text-lg);font-weight:var(--ss-w-black);color:var(--ss-ink)}.vol-bar-container{margin-bottom:var(--ss-space-2);position:relative}.vol-bar{background:var(--ss-paper-2);border-radius:var(--ss-radius-pill);height:8px;overflow:hidden}.vol-bar-fill{border-radius:var(--ss-radius-pill);min-width:2px;height:100%;transition:width .6s,background .3s}.vol-markers{height:20px;margin-top:2px;position:relative}.vol-marker{flex-direction:column;align-items:center;display:flex;position:absolute;transform:translate(-50%)}.vol-marker-line{background:var(--ss-ink-4);width:1px;height:6px}.vol-marker-label{color:var(--ss-ink-4);font-size:10px;font-weight:var(--ss-w-medium)}.vol-meta{gap:var(--ss-space-4);font-size:var(--ss-text-xs);color:var(--ss-ink-3);flex-wrap:wrap;display:flex}.vol-meta strong{color:var(--ss-ink-2)}.vol-msg{margin-left:auto;font-style:italic}.adm-tag-queue{gap:var(--ss-space-2);flex-direction:column;display:flex}.adm-tag-queue-item{justify-content:space-between;align-items:center;gap:var(--ss-space-3);padding:var(--ss-space-3) var(--ss-space-4);background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-md);display:flex}.adm-tag-queue-info{flex-direction:column;gap:2px;display:flex}.adm-tag-queue-name{font-weight:var(--ss-w-semibold);font-size:var(--ss-text-base)}.adm-tag-queue-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.adm-tag-queue-actions{gap:var(--ss-space-2);flex-shrink:0;display:flex}.adm-modal-overlay{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.adm-modal{background:var(--ss-paper);border-radius:var(--ss-radius-lg);padding:var(--ss-space-6);gap:var(--ss-space-3);min-width:360px;max-width:480px;box-shadow:var(--ss-shadow-lg);flex-direction:column;display:flex}.adm-modal h3{font-size:var(--ss-text-lg);margin:0}.adm-modal-actions{gap:var(--ss-space-2);margin-top:var(--ss-space-2);justify-content:flex-end;display:flex}.adm-modal--wide{min-width:480px;max-width:640px}.sub-card{border:var(--ss-border-1);border-radius:var(--ss-radius-sm);padding:var(--ss-space-3);margin-bottom:var(--ss-space-2)}.sub-card-header{justify-content:space-between;align-items:flex-start;gap:var(--ss-space-2);margin-bottom:var(--ss-space-2);flex-wrap:wrap;display:flex}.sub-card-info{align-items:center;gap:var(--ss-space-2);display:flex}.sub-email{font-size:var(--ss-text-sm);font-weight:var(--ss-w-semibold)}.sub-badge{color:#fff;border-radius:var(--ss-radius-pill);font-size:10px;font-weight:var(--ss-w-semibold);text-transform:uppercase;letter-spacing:.05em;padding:2px 8px}.sub-card-meta{gap:var(--ss-space-3);font-size:var(--ss-text-xs);color:var(--ss-ink-4);display:flex}.sub-card-actions{gap:var(--ss-space-2);margin-top:var(--ss-space-2);display:flex}.sub-digest-list{margin:var(--ss-space-2) 0;padding:var(--ss-space-2);background:var(--ss-paper-2);border-radius:var(--ss-radius-xs)}.sub-digest-item{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-1) 0;flex-wrap:wrap;display:flex}.sub-digest-profile{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-xs);padding:2px 8px}.sub-digest-freq{font-size:var(--ss-text-xs);font-weight:var(--ss-w-medium)}.sub-digest-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.sub-digest-err{color:var(--ss-danger);font-size:10px;font-weight:var(--ss-w-bold)}.sub-log-list{gap:var(--ss-space-1);flex-direction:column;max-height:400px;display:flex;overflow-y:auto}.sub-log-item{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-1) 0;border-bottom:1px solid var(--ss-paper-2);font-size:var(--ss-text-xs);display:flex}.sub-log-type{font-family:var(--ss-font-mono);background:var(--ss-paper-2);border-radius:var(--ss-radius-xs);text-transform:uppercase;letter-spacing:.05em;padding:2px 6px}.sub-log-subject{color:var(--ss-ink-2);flex:1}.sub-log-status.ok{color:var(--ss-ok);font-weight:var(--ss-w-bold)}.sub-log-status.err{color:var(--ss-danger);font-weight:var(--ss-w-bold)}.sub-log-date{color:var(--ss-ink-4);font-family:var(--ss-font-mono)}.ed-shell{background:var(--ss-paper);min-height:100vh;color:var(--ss-ink);font-family:var(--ss-font-sans)}.ed-topbar{border-bottom:1px solid var(--ss-hairline);justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.ed-brand{font-family:var(--ss-font-serif);color:var(--ss-ink);letter-spacing:-.01em;font-size:22px;font-weight:500;text-decoration:none}.ed-brand em{color:var(--ss-ink-3);margin-left:8px;font-size:15px;font-style:italic}.ed-topbar-right{align-items:center;gap:16px;display:flex}.ed-user{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:11px}.ed-logout{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast) var(--ss-ease), color var(--ss-dur-fast) var(--ss-ease);background:0 0;padding:6px 14px;font-size:11px}.ed-logout:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.ed-main{max-width:880px;margin:0 auto;padding:56px 32px 96px}.ed-kicker{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 12px;font-size:11px}.ed-title{font-family:var(--ss-font-serif);font-size:40px;font-weight:500;line-height:var(--ss-lh-snug);letter-spacing:-.02em;margin:0 0 8px}.ed-subtitle{color:var(--ss-ink-3);font-size:15px;line-height:var(--ss-lh-normal);margin:0 0 40px}.ed-back{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin-bottom:28px;font-size:11px;text-decoration:none;display:inline-block}.ed-back:hover{color:var(--ss-ink)}.ed-state{text-align:center;color:var(--ss-ink-3);padding:72px 0;font-size:15px}.ed-state--error{color:var(--ss-danger)}.ed-empty{border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);background:var(--ss-card);text-align:center;padding:72px 32px}.ed-empty-title{font-family:var(--ss-font-serif);margin:0 0 10px;font-size:24px;font-weight:500}.ed-empty-text{color:var(--ss-ink-3);font-size:14px;line-height:var(--ss-lh-normal);margin:0}.ed-group-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.ed-group-card{text-align:left;background:var(--ss-card);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);cursor:pointer;width:100%;color:inherit;transition:border-color var(--ss-dur-fast) var(--ss-ease), box-shadow var(--ss-dur-base) var(--ss-ease);padding:28px 24px 24px;font-family:inherit;display:block}.ed-group-card:hover{border-color:var(--ss-ink);box-shadow:var(--ss-shadow-sm)}.ed-group-name{font-family:var(--ss-font-serif);font-size:22px;font-weight:500;line-height:var(--ss-lh-snug);margin:0 0 14px}.ed-group-meta{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0;font-size:11px}.ed-batch-list{border-top:1px solid var(--ss-hairline-2);margin:0;padding:0;list-style:none}.ed-batch-row{text-align:left;border:none;border-bottom:1px solid var(--ss-hairline);cursor:pointer;width:100%;color:inherit;transition:background var(--ss-dur-fast) var(--ss-ease);background:0 0;align-items:baseline;gap:20px;padding:22px 4px;font-family:inherit;display:flex}.ed-batch-row:hover{background:#fff9}.ed-batch-main{flex:1;min-width:0}.ed-batch-label{font-family:var(--ss-font-serif);margin:0 0 4px;font-size:19px;font-weight:500}.ed-batch-headline{color:var(--ss-ink-3);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;overflow:hidden}.ed-batch-date{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);white-space:nowrap;font-size:11px}.ed-status{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border-radius:var(--ss-radius-pill);white-space:nowrap;padding:4px 10px;font-size:10px}.ed-status--sent{background:var(--ss-ink);color:var(--ss-paper)}.ed-status--draft{border:1px solid var(--ss-hairline-2);color:var(--ss-ink-3);background:0 0}.ed-detail-head{margin-bottom:36px}.ed-detail-meta{align-items:center;gap:14px;margin-top:14px;display:flex}.ed-tabs{border-bottom:1px solid var(--ss-hairline-2);gap:28px;margin-bottom:40px;display:flex}.ed-tab{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);cursor:pointer;transition:color var(--ss-dur-fast) var(--ss-ease);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:0 2px 14px;font-size:12px}.ed-tab:hover:not(:disabled){color:var(--ss-ink)}.ed-tab--active{color:var(--ss-ink);border-bottom-color:var(--ss-ink)}.ed-tab:disabled{color:var(--ss-ink-4);cursor:not-allowed}.ed-tab-panel{border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-md);text-align:center;padding:64px 32px}.ed-tab-panel-title{font-family:var(--ss-font-serif);color:var(--ss-ink-2);margin:0 0 8px;font-size:22px;font-style:italic;font-weight:500}.ed-tab-panel-text{color:var(--ss-ink-3);margin:0;font-size:14px}.ed-articles-count{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 18px;font-size:11px}.ed-articles-error{color:var(--ss-danger);margin:0 0 16px;font-size:13px}.ed-article-list{border-top:1px solid var(--ss-hairline-2);margin:0 0 40px;padding:0;list-style:none}.ed-article{border-bottom:1px solid var(--ss-hairline);transition:opacity var(--ss-dur-base) var(--ss-ease);padding:24px 4px}.ed-article-head{margin-bottom:8px}.ed-article-title{font-family:var(--ss-font-serif);font-size:19px;font-weight:500;line-height:var(--ss-lh-snug);margin:0 0 6px}.ed-article-meta{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0;font-size:11px}.ed-article-summary{font-size:14px;line-height:var(--ss-lh-normal);color:var(--ss-ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 12px;display:-webkit-box;overflow:hidden}.ed-article-summary--full{-webkit-line-clamp:unset;display:block;overflow:visible}.ed-article-detail{border-left:2px solid var(--ss-hairline-2);margin:0 0 14px;padding:4px 0 4px 16px}.ed-article-field{font-size:13px;line-height:var(--ss-lh-normal);color:var(--ss-ink-2);margin:0 0 8px}.ed-article-field:last-child{margin-bottom:0}.ed-article-field span{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin-bottom:2px;font-size:10px;display:block}.ed-article-actions{align-items:center;gap:20px;display:flex}.ed-article-action{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-2);cursor:pointer;transition:color var(--ss-dur-fast) var(--ss-ease);background:0 0;border:none;padding:0;font-size:13px;text-decoration:none}.ed-article-action:hover{color:var(--ss-ink)}.ed-article-action--danger{color:color-mix(in srgb, var(--ss-danger) 72%, var(--ss-ink-2))}.ed-article-action--danger:hover{color:var(--ss-danger)}.ed-article--deleted{opacity:.45}.ed-article--deleted .ed-article-title{text-decoration:line-through}.ed-articles-deleted-head{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-2);border-top:1px solid var(--ss-hairline);margin:24px 0 14px;padding-top:18px;font-size:13px;font-weight:400}.ed-article-confirm-skip{color:var(--ss-ink-2);cursor:pointer;align-items:center;gap:8px;margin:0 0 18px;font-size:13px;display:flex}.ed-article-confirm-skip input{cursor:pointer}.ed-snackbar{background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);box-shadow:var(--ss-shadow-sm);z-index:100;align-items:center;gap:18px;padding:12px 22px;font-size:13px;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.ed-snackbar-undo{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-paper);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;font-size:11px;text-decoration:underline}.ed-digest-banner{color:var(--ss-ink-2);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-md);background:#ffffff8c;margin:0 0 20px;padding:12px 18px;font-size:13px}.ed-digest-toolbar{justify-content:space-between;align-items:center;gap:16px;margin:0 0 28px;display:flex}.ed-digest-count{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:11px}.ed-digest-toolbar-actions{gap:10px;display:flex}.ed-ph-btn{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);background:0 0;padding:6px 14px;font-size:11px}.ed-ph-btn:disabled{color:var(--ss-ink-4);cursor:not-allowed}.ed-ph-btn--active{cursor:pointer;transition:color var(--ss-dur-fast) var(--ss-ease), border-color var(--ss-dur-fast) var(--ss-ease)}.ed-ph-btn--active:hover{color:var(--ss-ink);border-color:var(--ss-ink)}.ed-ph-btn--danger:hover{color:var(--ss-danger);border-color:var(--ss-danger)}.ed-dsec--deleted{opacity:.55;background:0 0;border-style:dashed}.ed-dsec-head--deleted{margin-bottom:0}.ed-dsec-title--deleted{color:var(--ss-ink-3);text-decoration:line-through}.ed-dsec-deletednote{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:10px}.ed-save-btn{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;background:var(--ss-ink);border:1px solid var(--ss-ink);border-radius:var(--ss-radius-pill);color:var(--ss-paper);cursor:pointer;padding:6px 18px;font-size:11px}.ed-save-btn:disabled{border-color:var(--ss-hairline-2);color:var(--ss-ink-4);cursor:not-allowed;background:0 0}.ed-savestatus{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);white-space:nowrap;align-self:center;font-size:11px}.ed-savestatus--saving{color:var(--ss-ink-3);font-style:italic}.ed-savestatus--saved{color:var(--ss-ink-2)}.ed-savestatus--error{color:var(--ss-danger)}.ed-dsec{background:var(--ss-card);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);margin:0 0 18px;padding:24px 26px 26px}.ed-dsec--locked{background:0 0;border-style:dashed}.ed-dsec-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.ed-dsec-head-actions{white-space:nowrap;align-items:center;gap:12px;display:flex}.ed-dsec-locknote{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:10px}.ed-dsec-titlewrap{flex:1;min-width:0}.ed-dsec-title{font-family:var(--ss-font-serif);font-size:22px;font-weight:500;line-height:var(--ss-lh-snug);color:var(--ss-ink);margin:0}button.ed-dsec-title--editable{text-align:left;cursor:text;background:0 0;border:none;border-radius:4px;width:100%;padding:0;display:block}button.ed-dsec-title--editable:hover{background:#00000009}.ed-dsec-title-input{font-family:var(--ss-font-serif);font-size:22px;font-weight:500;line-height:var(--ss-lh-snug);width:100%;color:var(--ss-ink);border:1px solid var(--ss-ink);background:#ffffffe6;border-radius:4px;outline:none;padding:2px 8px}.ed-field-group{margin:0 0 14px}.ed-field-group:last-child{margin-bottom:0}.ed-field-group--newitem{border-top:1px solid var(--ss-hairline);padding-top:14px}.ed-field-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 4px;font-size:10px}.ed-field{position:relative}.ed-field--bullet{padding-left:18px}.ed-field--bullet:before{content:"•";color:var(--ss-ink-3);position:absolute;top:4px;left:4px}.ed-field-value{text-align:left;width:100%;font-family:inherit;font-size:14px;line-height:var(--ss-lh-normal);color:var(--ss-ink-2);white-space:pre-wrap;word-break:break-word;background:0 0;border:none;border-radius:4px;margin:0 0 0 -8px;padding:4px 8px;display:block}button.ed-field-value{cursor:text;transition:background var(--ss-dur-fast) var(--ss-ease)}button.ed-field-value:hover{background:#00000009}.ed-field-value--locked{color:var(--ss-ink-3);cursor:default}.ed-field-lock{opacity:.6;font-size:10px;position:absolute;top:5px;left:-4px}.ed-field--locked{padding-left:18px}.ed-field--locked.ed-field--bullet:before{content:none}.ed-field-input{width:100%;font-family:inherit;font-size:14px;line-height:var(--ss-lh-normal);color:var(--ss-ink);border:1px solid var(--ss-ink);resize:none;background:#ffffffe6;border-radius:4px;outline:none;margin-left:-8px;padding:4px 8px;display:block;overflow:hidden}.ed-field-editflag{align-items:center;gap:12px;margin-top:4px;display:flex}.ed-chip-edited{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-paper);background:var(--ss-ink);border-radius:var(--ss-radius-pill);padding:2px 8px;font-size:9px}.ed-field-restore{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);text-underline-offset:2px;cursor:pointer;background:0 0;border:none;padding:0;font-size:10px;text-decoration:underline}.ed-field-restore:hover{color:var(--ss-ink)}@media (width<=640px){.ed-topbar{padding:16px 20px}.ed-main{padding:40px 20px 72px}.ed-title{font-size:30px}.ed-batch-row{flex-wrap:wrap;gap:8px 16px}}.ed-docx-notice{border:1px solid var(--ss-hairline-2);background:var(--ss-paper,#faf6ef);justify-content:space-between;align-items:flex-start;gap:12px;margin:0 0 16px;padding:10px 14px;font-size:13px;display:flex}.ed-docx-notice--ok{color:var(--ss-ok);border-color:var(--ss-ok)}.ed-docx-notice--error{color:var(--ss-danger);border-color:var(--ss-danger)}.ed-docx-notice-body{flex:1;min-width:0}.ed-docx-notice-details{margin:6px 0 0;padding-left:18px}.ed-docx-notice-details li{margin:2px 0}.ed-docx-notice-close{color:inherit;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.ed-topbar-left{align-items:baseline;gap:36px;display:flex}.ed-nav{align-items:baseline;gap:22px;display:flex}.ed-nav-link{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);transition:color var(--ss-dur-fast) var(--ss-ease);border-bottom:1px solid #0000;padding-bottom:2px;font-size:11px;text-decoration:none}.ed-nav-link:hover{color:var(--ss-ink)}.ed-nav-link--active{color:var(--ss-ink);border-bottom-color:var(--ss-ink)}.ed-main--wide{max-width:1180px}.ed-main--embedded{padding:8px 0 64px}.ed-cal-toolbar{justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:18px;display:flex}.ed-cal-month{margin:0}.ed-cal-nav{gap:8px;display:flex}.ed-cal-nav-btn{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast) var(--ss-ease), color var(--ss-dur-fast) var(--ss-ease);background:0 0;padding:6px 14px;font-size:12px}.ed-cal-nav-btn:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.ed-cal-export-btn:disabled{opacity:.45;cursor:not-allowed;border-color:var(--ss-hairline-2);color:var(--ss-ink-2)}.ed-cal-jump{gap:6px;display:inline-flex}.ed-cal-jump-select{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast) var(--ss-ease), color var(--ss-dur-fast) var(--ss-ease);background:0 0;padding:6px 10px;font-size:12px}.ed-cal-jump-select:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.ed-cal-controls{flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0 0 14px;display:flex}.ed-cal-seg{border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);background:var(--ss-card);display:inline-flex;overflow:hidden}.ed-cal-seg-btn{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);cursor:pointer;transition:color var(--ss-dur-fast) var(--ss-ease), background var(--ss-dur-fast) var(--ss-ease);background:0 0;border:none;padding:6px 12px;font-size:11px}.ed-cal-seg-btn+.ed-cal-seg-btn{border-left:1px solid var(--ss-hairline-2)}.ed-cal-seg-btn:hover{color:var(--ss-ink)}.ed-cal-seg-btn--active{background:var(--ss-ink);color:var(--ss-paper)}.ed-cal-seg-btn--active:hover{color:var(--ss-paper)}.ed-cal-group-filter{align-items:center;gap:8px;display:inline-flex}.ed-cal-group-filter-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:11px}.ed-cal-group-select{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;background:var(--ss-card);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);cursor:pointer;max-width:220px;transition:border-color var(--ss-dur-fast) var(--ss-ease), color var(--ss-dur-fast) var(--ss-ease);padding:6px 12px;font-size:11px}.ed-cal-group-select:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.ed-cal-counters{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);flex-wrap:wrap;align-items:center;gap:14px;margin-left:auto;font-size:10px;display:inline-flex}.ed-cal-counter strong{color:var(--ss-ink);margin-right:2px;font-weight:600}.ed-cal-noresults{border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-md);flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;margin:0 0 24px;padding:28px 24px;display:flex}.ed-cal-noresults-text{color:var(--ss-ink-3);margin:0;font-size:14px}.ed-cal-summary{border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);background:var(--ss-card);margin:0 0 24px}.ed-cal-summary-toggle{cursor:pointer;width:100%;font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-2);transition:color var(--ss-dur-fast) var(--ss-ease);background:0 0;border:none;justify-content:space-between;align-items:center;padding:12px 18px;font-size:11px;display:flex}.ed-cal-summary-toggle:hover{color:var(--ss-ink)}.ed-cal-summary-arrow{color:var(--ss-ink-3);font-size:12px}.ed-cal-summary-body{border-top:1px solid var(--ss-hairline);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px 28px;padding:14px 18px 18px;display:grid}.ed-cal-summary-heading{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-4);margin:0 0 10px;font-size:10px;font-weight:500}.ed-cal-summary-rows{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.ed-cal-summary-row{align-items:baseline;gap:12px;font-size:13px;display:flex}.ed-cal-summary-rowname{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ss-ink);flex:1;overflow:hidden}.ed-cal-summary-row--warn .ed-cal-summary-rowname{color:var(--ss-warn)}.ed-cal-summary-rowcount{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);white-space:nowrap;font-size:11px}.ed-cal-summary-rowcount strong{color:var(--ss-ink);font-weight:600}.ed-cal-summary-rowsplit{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-4);white-space:nowrap;font-size:10px}.ed-cal-summary-badge{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-warn);border:1px solid var(--ss-warn);border-radius:var(--ss-radius-pill);white-space:nowrap;padding:1px 8px;font-size:9px}.ed-cal-summary-weeks{flex-wrap:wrap;gap:8px;display:flex}.ed-cal-summary-week{border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-sm);flex-direction:column;gap:2px;min-width:84px;padding:8px 12px;display:flex}.ed-cal-summary-week--warn{border-color:var(--ss-warn);background:#f8ecd9}.ed-cal-summary-week-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:10px}.ed-cal-summary-week-range{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);color:var(--ss-ink-4);font-size:9px}.ed-cal-summary-week-count{color:var(--ss-ink-3);font-size:13px}.ed-cal-summary-week-count strong{color:var(--ss-ink);font-size:15px;font-weight:600}.ed-cal-summary-week--warn .ed-cal-summary-week-count strong{color:var(--ss-warn)}.ed-cal-summary-gaps{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:10px 0 0;font-size:10px}.ed-cal-summary-gaps--warn{color:var(--ss-warn)}.ed-cal-summary-note{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-4);margin:10px 0 0;font-size:10px}.ed-cal-quickadd{border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-md);background:var(--ss-card);flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:10px 12px;display:flex}.ed-cal-quickadd-input{border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);min-width:220px;color:var(--ss-ink);transition:border-color var(--ss-dur-fast) var(--ss-ease);background:0 0;flex:1;padding:7px 16px;font-family:inherit;font-size:14px}.ed-cal-quickadd-input::placeholder{color:var(--ss-ink-4)}.ed-cal-quickadd-input:hover,.ed-cal-quickadd-input:focus{border-color:var(--ss-ink);outline:none}.ed-cal-quickadd-date{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast) var(--ss-ease), color var(--ss-dur-fast) var(--ss-ease);background:0 0;padding:6px 12px;font-size:11px}.ed-cal-quickadd-date:hover,.ed-cal-quickadd-date:focus{border-color:var(--ss-ink);color:var(--ss-ink);outline:none}.ed-cal-quickadd-btn{padding:6px 14px;font-size:15px;line-height:1}.ed-cal-list{flex-direction:column;gap:10px;display:flex}.ed-cal-listcard{text-align:left;width:100%;color:inherit;background:var(--ss-card);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);cursor:pointer;transition:border-color var(--ss-dur-fast) var(--ss-ease), box-shadow var(--ss-dur-base) var(--ss-ease);border-left-width:3px;padding:14px 18px;font-family:inherit;display:block}.ed-cal-listcard:hover{box-shadow:var(--ss-shadow-sm)}.ed-cal-listcard--linkedin{border-left-color:var(--ss-ch-linkedin)}.ed-cal-listcard--instagram{border-left-color:var(--ss-ch-instagram)}.ed-cal-listcard-meta{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);flex-wrap:wrap;align-items:center;gap:6px 16px;margin-bottom:8px;font-size:10px;display:flex}.ed-cal-listcard-date{color:var(--ss-ink)}.ed-cal-listcard-status{align-items:center;gap:6px;display:inline-flex}.ed-cal-listcard-status .ed-cal-dot{margin-top:0}.ed-cal-listcard-theme{font-family:var(--ss-font-serif);margin:0 0 4px;font-size:15px;font-weight:500}.ed-cal-listcard-text{font-size:14px;line-height:var(--ss-lh-normal);color:var(--ss-ink-2);-webkit-line-clamp:3;word-break:break-word;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.ed-cal-listcard-notext{color:var(--ss-ink-4);font-style:italic}.ed-cal-listcard-group{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-4);margin:8px 0 0;font-size:10px}.ed-cal-legend{flex-wrap:wrap;align-items:center;gap:18px;margin:0 0 24px;display:flex}.ed-cal-legend-item{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);align-items:center;gap:7px;font-size:10px;display:inline-flex}.ed-cal-legend-swatch{border-radius:3px;width:10px;height:10px}.ed-cal-legend-swatch--linkedin{background:var(--ss-ch-linkedin)}.ed-cal-legend-swatch--instagram{background:var(--ss-ch-instagram)}.ed-cal-legend-sep{background:var(--ss-hairline-2);width:1px;height:14px}.ed-cal-grid{border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);background:var(--ss-hairline);grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.ed-cal-dow{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);background:var(--ss-paper-2);text-align:left;padding:10px 10px 9px;font-size:10px}.ed-cal-cell{background:var(--ss-card);flex-direction:column;gap:4px;min-height:112px;padding:8px 8px 10px;display:flex}.ed-cal-cell--outside{background:var(--ss-paper)}.ed-cal-cell--outside .ed-cal-daynum{color:var(--ss-ink-4)}.ed-cal-daynum{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);align-self:flex-start;margin-bottom:2px;padding:4px 0;font-size:11px;line-height:1}.ed-cal-cell--empty{cursor:pointer;transition:background var(--ss-dur-fast) var(--ss-ease)}.ed-cal-cell--empty:hover,.ed-cal-cell--empty:focus-visible{background:var(--ss-paper-2);outline:none}.ed-cal-cell--empty:focus-visible{box-shadow:inset 0 0 0 1.5px var(--ss-ink-3)}.ed-cal-cell-add{color:var(--ss-ink-4);opacity:0;transition:opacity var(--ss-dur-fast) var(--ss-ease);pointer-events:none;align-self:center;margin:auto 0;font-size:18px;line-height:1}.ed-cal-cell--empty:hover .ed-cal-cell-add,.ed-cal-cell--empty:focus-visible .ed-cal-cell-add{opacity:1}.ed-cal-new-btn{margin-left:8px}.ed-cal-cell--today{box-shadow:inset 0 0 0 1.5px var(--ss-ink)}.ed-cal-cell--today .ed-cal-daynum{background:var(--ss-ink);color:var(--ss-paper);border-radius:var(--ss-radius-pill);padding:4px 8px}.ed-cal-chip{text-align:left;width:100%;color:var(--ss-ink-2);background:var(--ss-paper);border:none;border-left:3px solid var(--ss-hairline-2);cursor:pointer;transition:box-shadow var(--ss-dur-fast) var(--ss-ease);border-radius:3px;align-items:flex-start;gap:6px;padding:4px 6px;font-family:inherit;font-size:11px;line-height:1.35;display:flex}.ed-cal-chip:hover{box-shadow:inset 0 0 0 1px var(--ss-ink-3)}.ed-cal-chip--linkedin{border-left-color:var(--ss-ch-linkedin);background:color-mix(in srgb, var(--ss-ch-linkedin) 8%, var(--ss-card))}.ed-cal-chip--instagram{border-left-color:var(--ss-ch-instagram);background:color-mix(in srgb, var(--ss-ch-instagram) 8%, var(--ss-card))}.ed-cal-chip-body{flex-direction:column;gap:1px;min-width:0;display:flex}.ed-cal-chip-text{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ed-cal-chip--draggable{cursor:grab}.ed-cal-chip--draggable:active{cursor:grabbing}.ed-cal-chip--dragging{opacity:.4}.ed-cal-cell--dragover{background:color-mix(in srgb, var(--ss-ink) 7%, var(--ss-card));box-shadow:inset 0 0 0 1.5px var(--ss-ink-2)}.ed-cal-chip-group{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);border:1px solid var(--ss-hairline-2);white-space:nowrap;border-radius:3px;align-self:flex-start;padding:0 4px;font-size:9px;line-height:1.5}.ed-cal-chip-gone{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-4);font-size:9px;font-style:italic}.ed-cal-chip--pastpub,.ed-cal-listcard--pastpub{filter:saturate(.35);opacity:.72}.ed-cal-chip--pastpub:hover,.ed-cal-listcard--pastpub:hover{filter:none;opacity:1}.ed-cal-dot{border-radius:50%;flex:none;width:8px;height:8px;margin-top:3px}.ed-cal-dot--draft{border:1px dashed var(--ss-ink-3);background:0 0}.ed-cal-dot--ready{border:2px solid var(--ss-ink);background:0 0}.ed-cal-dot--published{background:var(--ss-ok)}.ed-cal-empty{margin-bottom:24px}.ed-cal-empty-cta{margin-top:20px}.ed-cal-gridwrap{align-items:flex-start;gap:14px;display:flex}.ed-cal-gridwrap .ed-cal-grid{flex:1;min-width:0}.ed-cal-jolly{border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-md);background:var(--ss-paper-2);width:190px;min-height:180px;transition:background var(--ss-dur-fast) var(--ss-ease), box-shadow var(--ss-dur-fast) var(--ss-ease);flex-direction:column;flex:none;gap:6px;padding:12px 10px;display:flex}.ed-cal-jolly--dragover{background:color-mix(in srgb, var(--ss-ink) 7%, var(--ss-paper-2));box-shadow:inset 0 0 0 1.5px var(--ss-ink-2)}.ed-cal-jolly-title{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);justify-content:space-between;align-items:center;margin:0 0 2px;font-size:10px;display:flex}.ed-cal-jolly-count{color:var(--ss-ink);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);background:var(--ss-card);padding:1px 7px;font-weight:600}.ed-cal-jolly-hint{color:var(--ss-ink-4);margin:0 0 6px;font-size:10.5px;line-height:1.45}.ed-cal-jolly-empty{color:var(--ss-ink-4);text-align:center;margin:auto 0;font-size:11px;font-style:italic}.ed-panel-jolly{color:var(--ss-ink-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin:2px 0 6px;font-size:12.5px;display:flex}.ed-panel-jolly input{accent-color:var(--ss-ink)}@media (width<=900px){.ed-topbar-left{gap:20px}.ed-cal-cell{min-height:84px}.ed-cal-chip-text{-webkit-line-clamp:1}.ed-cal-gridwrap{flex-direction:column}.ed-cal-jolly{width:100%;min-height:0}}.ed-panel-backdrop{z-index:90;background:#1e1a1447;position:fixed;inset:0}.ed-panel{background:var(--ss-paper);border-left:1px solid var(--ss-hairline);width:min(480px,94vw);height:100vh;animation:ed-panel-in var(--ss-dur-base,.25s) var(--ss-ease,ease) both;padding:24px 28px 40px;position:fixed;top:0;right:0;overflow-y:auto;box-shadow:-12px 0 40px #0000001f}@keyframes ed-panel-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.ed-panel-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.ed-panel-kicker{margin:0}.ed-panel-close{color:var(--ss-ink-3);cursor:pointer;transition:color var(--ss-dur-fast) var(--ss-ease);background:0 0;border:none;padding:2px 6px;font-size:26px;line-height:1}.ed-panel-close:hover{color:var(--ss-ink)}.ed-panel-meta{align-items:center;gap:16px;margin-bottom:6px;display:flex}.ed-panel-channel{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border-left:3px solid var(--ss-hairline-2);color:var(--ss-ink);padding-left:8px;font-size:11px}.ed-panel-channel--linkedin{border-left-color:var(--ss-ch-linkedin)}.ed-panel-channel--instagram{border-left-color:var(--ss-ch-instagram)}.ed-panel-status{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-2);align-items:center;gap:7px;font-size:11px;display:inline-flex}.ed-panel-status .ed-cal-dot{margin-top:0}.ed-panel-date{font-family:var(--ss-font-serif);margin:0 0 6px;font-size:19px;font-weight:500}.ed-panel-origin{color:var(--ss-ink-3);margin:0 0 16px;font-size:13px}.ed-panel-origin-gone{color:var(--ss-ink-4);font-style:italic}.ed-panel-statusrow{border-top:1px solid var(--ss-hairline);border-bottom:1px solid var(--ss-hairline);gap:10px;margin-bottom:20px;padding:14px 0 18px;display:flex}.ed-panel-field{margin-bottom:16px}.ed-panel-field--row{gap:14px;margin-bottom:16px;display:flex}.ed-panel-field--row .ed-panel-label{flex:1}.ed-panel-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:10px;display:block}.ed-panel-input{width:100%;font-family:inherit;font-size:14px;line-height:var(--ss-lh-normal);color:var(--ss-ink);border:1px solid var(--ss-hairline-2);transition:border-color var(--ss-dur-fast) var(--ss-ease);background:#ffffffe6;border-radius:4px;outline:none;margin-top:5px;padding:7px 10px;display:block}.ed-panel-input:focus{border-color:var(--ss-ink)}.ed-panel-textarea{resize:vertical;min-height:70px}.ed-panel-hint{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;margin:6px 0 0;font-size:10px}.ed-panel-hint--warn{color:var(--ss-danger)}.ed-panel-hint--cta{color:var(--ss-ink-2);background:var(--ss-paper-2);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);padding:3px 10px;display:inline-block}.ed-panel-actions{border-top:1px solid var(--ss-hairline);align-items:center;gap:14px;padding-top:18px;display:flex}.ed-panel-dirty{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:10px;font-style:italic}.ed-panel-delete{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-2);cursor:pointer;transition:color var(--ss-dur-fast) var(--ss-ease), border-color var(--ss-dur-fast) var(--ss-ease);background:0 0;margin-left:auto;padding:6px 14px;font-size:11px}.ed-panel-delete:hover:not(:disabled){color:var(--ss-danger);border-color:var(--ss-danger)}.ed-panel-delete:disabled{color:var(--ss-ink-4);cursor:not-allowed}.ed-panel-confirm{z-index:95;background:#1e1a1459;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ed-panel-confirm-box{background:var(--ss-paper);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);box-shadow:var(--ss-shadow-sm);max-width:360px;margin:0 20px;padding:24px 26px}.ed-panel-confirm-text{font-size:14px;line-height:var(--ss-lh-normal);color:var(--ss-ink);margin:0 0 18px}.ed-panel-confirm-actions{justify-content:flex-end;gap:10px;display:flex}.ed-panel-confirm-danger{background:var(--ss-danger);border-color:var(--ss-danger)}.ed-copy{flex-wrap:wrap;align-items:center;gap:8px 12px;display:inline-flex}.ed-panel-copyrow{margin-bottom:20px}.ed-copy-btn--compact{padding:3px 10px;font-size:10px}.ed-copy-btn:disabled{opacity:.45;cursor:not-allowed;border-color:var(--ss-hairline-2);color:var(--ss-ink-2)}.ed-cal-listcard-copy{margin-left:auto}.ed-copy-hint{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);align-items:center;gap:8px;font-size:10px;display:inline-flex}.ed-copy-hint-btn{font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--ss-ink);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.ed-copy-hint-btn:hover:not(:disabled){color:var(--ss-ink-2)}.ed-copy-hint-btn:disabled{color:var(--ss-ink-4);cursor:not-allowed}.ed-copy-fallback-box{width:100%;max-width:440px}.ed-copy-fallback-area{width:100%;margin-bottom:16px;display:block}.ed-cal-objective{border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);background:var(--ss-card);flex-wrap:wrap;align-items:baseline;gap:14px;margin:0 0 20px;padding:12px 16px;display:flex}.ed-cal-objective-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);white-space:nowrap;font-size:11px}.ed-cal-objective-text{font-family:var(--ss-font-serif);color:var(--ss-ink);flex:1;min-width:200px;margin:0;font-size:16px}.ed-cal-import-input{display:none}.ed-imp-backdrop{z-index:60;background:#14120e73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.ed-imp-modal{background:var(--ss-paper,#faf7f2);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);flex-direction:column;gap:14px;width:100%;max-width:560px;max-height:88vh;padding:20px 24px;display:flex;overflow-y:auto;box-shadow:0 18px 48px #14120e40}.ed-imp-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ed-imp-kicker{margin:0 0 4px}.ed-imp-file{font-family:var(--ss-font-mono);color:var(--ss-ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:380px;margin:0;font-size:12px;overflow:hidden}.ed-imp-loading,.ed-imp-intro{color:var(--ss-ink-2,var(--ss-ink));margin:0;font-size:14px}.ed-imp-error{color:var(--ss-danger,#a33);margin:0;font-size:14px}.ed-imp-counts{flex-wrap:wrap;gap:18px;margin:0;padding:0;list-style:none;display:flex}.ed-imp-count{color:var(--ss-ink);font-size:14px}.ed-imp-count strong{font-family:var(--ss-font-serif);margin-right:4px;font-size:20px;font-weight:500}.ed-imp-jolly-note{color:var(--ss-ink);background:var(--ss-warn-bg,#fdf3e3);border:1px solid var(--ss-warn-border,#e5c988);border-radius:var(--ss-radius-md,10px);margin:0;padding:10px 14px;font-size:13px;line-height:1.5}.ed-imp-skipped{border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);background:var(--ss-card,#fff);padding:10px 14px}.ed-imp-skipped-title{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 8px;font-size:11px}.ed-imp-skipped-list{flex-direction:column;gap:6px;max-height:32vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.ed-imp-skipped-item{color:var(--ss-ink);border-bottom:1px solid var(--ss-hairline);padding-bottom:6px;font-size:13px;line-height:1.45}.ed-imp-skipped-item:last-child{border-bottom:none;padding-bottom:0}.ed-imp-skipped-row{font-family:var(--ss-font-mono);color:var(--ss-ink-3);white-space:nowrap;margin-right:8px;font-size:11px}.ed-imp-nothing{color:var(--ss-ink-3);margin:0;font-size:13px;font-style:italic}.ed-imp-actions{border-top:1px solid var(--ss-hairline);align-items:center;gap:10px;padding-top:6px;display:flex}.ed-imp-actions-spacer{flex:1}.ed-dsec{border-radius:10px;transition:background-color .15s}.ed-dsec:hover{background-color:#f3ead9}.ed-digest-toolbar-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ed-dsec--meta{background:var(--ss-paper-2,#f3efe8);border:1px solid var(--ss-hairline,#e5e0d8);border-radius:var(--ss-radius-sm,12px);align-items:baseline;gap:8px;margin-bottom:6px;padding:8px 14px;display:flex}.ed-dsec--meta:hover{background:#f3ead9}.ed-dsec-meta-lock{opacity:.4;font-size:9px}.ed-dsec-meta-title{font-family:var(--ss-font-mono,monospace);text-transform:uppercase;letter-spacing:var(--ss-track-mono,.08em);color:var(--ss-ink-3,#56554f);white-space:nowrap;font-size:10px}.ed-dsec-meta-value{color:var(--ss-ink-3,#56554f);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;overflow:hidden}.ed-dsec-meta-remove{cursor:pointer;color:var(--ss-ink-4,#8a887f);background:0 0;border:none;flex-shrink:0;font-size:11px}.ed-dsec-meta-remove:hover{color:var(--ss-danger,#993c1d)}.ed-dsec-context{font-family:var(--ss-font-mono,monospace);text-transform:uppercase;letter-spacing:var(--ss-track-mono,.08em);color:var(--ss-ink-3,#56554f);font-size:10px}.ed-dsec-context-link{cursor:pointer;font:inherit;color:var(--ss-ink,#1a1a1a);background:0 0;border:none;margin-left:6px;text-decoration:underline}.ed-dsec-actions-sep{background:var(--ss-hairline-2,#e0ddd6);align-self:center;width:1px;height:14px;margin:0 4px;display:inline-block}.ed-digest-banner-close{cursor:pointer;color:var(--ss-ink-3,#56554f);float:right;background:0 0;border:none;font-size:14px;line-height:1}.ed-tone-select{font-family:var(--ss-font-sans,inherit);border:1px solid var(--ss-hairline-2,#e0ddd6);border-radius:var(--ss-radius-sm,8px);color:var(--ss-ink-2,#333);background:var(--ss-card,#fff);padding:4px 10px;font-size:13px}.sl-modal{max-width:620px}.sl-resource{font-family:var(--ss-font-serif);color:var(--ss-ink);text-overflow:ellipsis;white-space:nowrap;max-width:420px;margin:0;font-size:16px;overflow:hidden}.sl-form{flex-direction:column;gap:10px;display:flex}.sl-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:11px}.sl-password-row{align-items:stretch;gap:8px;display:flex}.sl-password-input{flex:1}.sl-eye-btn{flex:none;justify-content:center;align-items:center;padding:6px 10px;display:inline-flex}.sl-expiry{border:none;flex-direction:column;gap:6px;margin:0;padding:0;display:flex}.sl-expiry legend{margin-bottom:6px;padding:0}.sl-radio{color:var(--ss-ink);align-items:center;gap:8px;font-size:14px;display:flex}.sl-date-input{width:auto;padding:6px 10px}.sl-note{color:var(--ss-ink-3);margin:0;font-size:13px;font-style:italic;line-height:1.5}.sl-warn{color:var(--ss-ink);background:var(--ss-warn-bg,#fdf3e3);border:1px solid var(--ss-warn-border,#e5c988);border-radius:var(--ss-radius-md,10px);margin:0;padding:10px 14px;font-size:13px;line-height:1.5}.sl-created{flex-direction:column;gap:10px;display:flex}.sl-created-title{font-family:var(--ss-font-serif);margin:0;font-size:18px;font-weight:500}.sl-created-row{border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);background:var(--ss-card,#fff);align-items:center;gap:10px;padding:10px 14px;display:flex}.sl-created-url{font-family:var(--ss-font-mono);color:var(--ss-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;overflow:hidden}.sl-copy-btn{flex:none}.sl-again-btn{align-self:flex-start}.sl-list{border-top:1px solid var(--ss-hairline);flex-direction:column;gap:8px;padding-top:10px;display:flex}.sl-list-title{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0;font-size:11px}.sl-empty{color:var(--ss-ink-3);margin:0;font-size:13px;font-style:italic}.sl-items{flex-direction:column;gap:8px;max-height:34vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.sl-item{border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);background:var(--ss-card,#fff);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.sl-item--active{border-color:var(--ss-ink-3)}.sl-item-main{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.sl-item-meta{color:var(--ss-ink-3);white-space:nowrap;font-size:12px}.sl-status{font-family:var(--ss-font-mono);letter-spacing:.02em;text-transform:uppercase;border:1px solid var(--ss-hairline);color:var(--ss-ink-3);border-radius:999px;padding:2px 10px;font-size:11px}.sl-status--active{color:var(--ss-ink);border-color:var(--ss-ink-3)}.sl-status--revoked{color:var(--ss-danger,#a33);border-color:var(--ss-danger,#a33)}.sl-item-actions{align-items:center;gap:8px;display:flex}.sl-revoke-btn:hover:not(:disabled){color:var(--ss-danger,#a33);border-color:var(--ss-danger,#a33)}.sl-fallback-box{width:min(480px,100vw - 40px);max-width:none}.sl-fallback-area{width:100%;font-family:var(--ss-font-mono);resize:none;margin-bottom:14px;font-size:12px}.itpl{border-top:1px solid var(--ss-hairline);flex-direction:column;gap:18px;margin-top:28px;padding-top:20px;display:flex}.itpl-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.itpl-title{font-family:var(--ss-font-serif);letter-spacing:-.01em;margin:4px 0 0;font-size:22px;font-weight:500}.itpl-badge{font-family:var(--ss-font-mono);letter-spacing:.02em;text-transform:uppercase;border:1px solid var(--ss-hairline);border-radius:999px;padding:3px 12px;font-size:11px}.itpl-badge--on{color:var(--ss-ok,#2e7d32);background:var(--ss-paper-2)}.itpl-badge--off,.itpl-badge--empty{color:var(--ss-ink-3);background:var(--ss-paper-2);font-style:italic}.itpl-hint{color:var(--ss-ink-3);margin:0;font-size:13px}.itpl-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}@media (width<=900px){.itpl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.itpl-day{background:var(--ss-paper,#faf7f2);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);flex-direction:column;gap:8px;min-height:120px;padding:10px;display:flex}.itpl-day-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.itpl-day-label{font-family:var(--ss-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ss-ink-2,var(--ss-ink));font-size:11px}.itpl-add-btn{font-family:var(--ss-font-mono);color:var(--ss-ink-2,var(--ss-ink));border:1px dashed var(--ss-hairline);cursor:pointer;background:0 0;border-radius:6px;padding:2px 8px;font-size:11px}.itpl-add-btn:hover{background:var(--ss-paper-2)}.itpl-day-empty{color:var(--ss-ink-3);margin:2px 0;font-size:12px;font-style:italic}.itpl-slot{background:var(--ss-white,#fff);border:1px solid var(--ss-hairline);border-radius:8px;flex-direction:column;gap:6px;padding:8px;display:flex}.itpl-slot-type{font-family:var(--ss-font-sans);color:var(--ss-ink);background:var(--ss-white,#fff);border:1px solid var(--ss-hairline);border-radius:6px;width:100%;padding:5px 8px;font-size:13px}.itpl-slot-row{align-items:center;gap:6px;display:flex}.itpl-slot-time{min-width:0;font-family:var(--ss-font-sans);color:var(--ss-ink);background:var(--ss-white,#fff);border:1px solid var(--ss-hairline);border-radius:6px;flex:auto;padding:4px 6px;font-size:13px}.itpl-slot-qty{width:56px;font-family:var(--ss-font-sans);color:var(--ss-ink);background:var(--ss-white,#fff);border:1px solid var(--ss-hairline);border-radius:6px;flex:none;padding:4px 6px;font-size:13px}.itpl-slot-del{width:26px;height:26px;color:var(--ss-ink-3);border:1px solid var(--ss-hairline);cursor:pointer;background:0 0;border-radius:6px;flex:none;font-size:18px;line-height:1}.itpl-slot-del:hover{color:var(--ss-danger,#b3261e);border-color:var(--ss-danger,#b3261e)}.itpl-volumes{background:var(--ss-paper-2);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);padding:14px 16px}.itpl-volumes-title{font-family:var(--ss-font-serif);margin:0 0 4px;font-size:16px;font-weight:500}.itpl-volumes-note{color:var(--ss-ink-3);margin:0 0 10px;font-size:12px}.itpl-vol-table{border-collapse:collapse;width:100%;font-size:13px}.itpl-vol-table th{text-align:left;font-family:var(--ss-font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ss-ink-3);border-bottom:1px solid var(--ss-hairline);padding:4px 8px;font-size:10px}.itpl-vol-table td{border-bottom:1px solid var(--ss-hairline);color:var(--ss-ink);padding:5px 8px}.itpl-vol-table th:not(:first-child),.itpl-vol-table td:not(:first-child){text-align:right}.itpl-vol-over{color:var(--ss-ok,#2e7d32);font-weight:600}.itpl-vol-under{color:var(--ss-ink-3)}.itpl-vol-ok{color:var(--ss-ink)}.itpl-generate{border:1px solid var(--ss-line,#e6e0d6);background:var(--ss-paper-2);border-radius:8px;padding:14px 16px}.itpl-generate-title{margin:0 0 4px;font-size:14px}.itpl-generate-note{color:var(--ss-ink-3);margin:0 0 12px;font-size:13px}.itpl-generate-row{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.itpl-generate-field{flex-direction:column;gap:4px;display:flex}.itpl-generate-label{color:var(--ss-ink-3);font-size:12px}.itpl-generate-month{font-family:var(--ss-font-sans);border:1px solid var(--ss-line,#e6e0d6);background:var(--ss-paper);border-radius:6px;padding:6px 10px;font-size:14px}.itpl-generate-result{color:var(--ss-ink);background:var(--ss-paper);border:1px solid var(--ss-line,#e6e0d6);border-radius:6px;margin-top:12px;padding:8px 12px;font-size:13px}.itpl-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.itpl-dirty{color:var(--ss-ink-3);font-size:12px;font-style:italic}.itpl-danger{align-items:center;gap:8px;margin-left:auto;display:flex}.itpl-deactivate-btn{color:var(--ss-ink-2,var(--ss-ink))}.itpl-delete-btn{font-family:var(--ss-font-sans);color:var(--ss-danger,#b3261e);border:1px solid var(--ss-danger,#b3261e);cursor:pointer;background:0 0;border-radius:6px;padding:6px 14px;font-size:13px}.itpl-delete-btn:hover:not(:disabled){background:var(--ss-danger,#b3261e);color:#fff}.itpl-delete-btn:disabled,.itpl-deactivate-btn:disabled{opacity:.5;cursor:not-allowed}.ap-page{max-width:1180px;margin:0 auto;padding:24px 0 32px}.ap-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:16px;display:flex}.ap-title{font-family:var(--ss-font-serif);letter-spacing:-.01em;margin:0;font-size:28px;font-weight:500}.ap-editor-pick{align-items:center;gap:10px;display:flex}.ap-editor-pick-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:11px}.ap-editor-select{font-family:var(--ss-font-sans);color:var(--ss-ink);background:var(--ss-white,#fff);border:1px solid var(--ss-hairline);border-radius:6px;min-width:260px;padding:8px 12px;font-size:14px}.ap-editor-groups{border-bottom:1px solid var(--ss-hairline);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 20px;padding-bottom:16px;display:flex}.ap-editor-groups-label{color:var(--ss-ink-2,var(--ss-ink));font-size:13px}.ap-editor-groups-none{color:var(--ss-ink-3);font-size:13px;font-style:italic}.ap-group-chip{font-family:var(--ss-font-mono);letter-spacing:.02em;color:var(--ss-ink);background:var(--ss-paper-2);border:1px solid var(--ss-hairline);border-radius:999px;padding:3px 10px;font-size:11px}.pw-backdrop{z-index:60;background:#14120e73;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.pw-modal{background:var(--ss-paper,#faf7f2);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);flex-direction:column;gap:16px;width:100%;max-width:620px;max-height:90vh;padding:20px 24px;display:flex;overflow-y:auto;box-shadow:0 18px 48px #14120e40}.pw-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pw-kicker{margin:0 0 4px}.pw-step-indicator{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0;font-size:11px}.pw-body{flex-direction:column;gap:10px;display:flex}.pw-title{font-family:var(--ss-font-serif);margin:0;font-size:22px;font-weight:500}.pw-hint{color:var(--ss-ink-2,var(--ss-ink));margin:0;font-size:13px;line-height:1.5}.pw-objective{width:100%}.pw-themes{flex-direction:column;gap:8px;max-height:44vh;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.pw-theme-row{align-items:center;gap:8px;display:flex}.pw-theme-name{flex:1}.pw-theme-weight{flex:none;width:64px}.pw-theme-remove{flex:none;padding:6px 10px;line-height:1}.pw-themes-foot{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.pw-total{color:var(--ss-ink);font-size:14px}.pw-summary-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin-bottom:4px;font-size:11px;display:block}.pw-summary-objective{font-family:var(--ss-font-serif);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,10px);background:var(--ss-card,#fff);margin:0;padding:10px 14px;font-size:16px}.pw-summary-themes{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.pw-summary-theme{border-bottom:1px solid var(--ss-hairline);justify-content:space-between;align-items:baseline;gap:12px;padding:4px 2px;font-size:14px;display:flex}.pw-summary-theme-weight{font-family:var(--ss-font-mono);color:var(--ss-ink-3);white-space:nowrap;font-size:12px}.pw-summary-total{margin:4px 0 0;font-size:15px}.pw-warning{color:var(--ss-ink);background:var(--ss-warn-bg,#fdf3e3);border:1px solid var(--ss-warn-border,#e5c988);border-radius:var(--ss-radius-md,10px);padding:10px 14px;font-size:13px;line-height:1.5}.pw-actions{border-top:1px solid var(--ss-hairline);align-items:center;gap:10px;padding-top:4px;display:flex}.pw-actions-spacer{flex:1}.pt{max-width:var(--ss-app-max);margin:0 auto}.pt-header{margin-bottom:var(--ss-space-4);justify-content:space-between;align-items:center;display:flex}.pt-title{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight)}.pt-controls{gap:var(--ss-space-2);align-items:center;display:flex}.pt-select{font-size:var(--ss-text-xs);border-radius:var(--ss-radius-sm);border:var(--ss-border-1);padding:4px 8px}.pt-section{background:var(--ss-card);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);padding:var(--ss-space-5);box-shadow:var(--ss-shadow-xs)}.pt-loading{text-align:center;padding:var(--ss-space-8);color:var(--ss-ink-3);font-size:var(--ss-text-sm)}.pt-empty{text-align:center;padding:var(--ss-space-8);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);color:var(--ss-ink-3);border-style:dashed}.pt-empty p{margin:0 0 var(--ss-space-2);font-size:var(--ss-text-sm)}.pt-empty-hint{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.dg{max-width:960px;padding:var(--ss-space-8) var(--ss-space-4);margin:0 auto}.dg-group-bar{margin-bottom:var(--ss-space-5);padding:var(--ss-space-3) var(--ss-space-4);background:var(--ss-card);border-radius:var(--ss-radius-lg);box-shadow:var(--ss-shadow-sm);justify-content:space-between;align-items:center;display:flex}.dg-group-bar--single{justify-content:flex-start;gap:var(--ss-space-3)}.dg-group-pills{gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.dg-group-pill{padding:var(--ss-space-2) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);color:var(--ss-ink-3);cursor:pointer;transition:all var(--ss-dur-fast) var(--ss-ease);background:0 0}.dg-group-pill:hover{border-color:var(--ss-ink-4);background:var(--ss-paper-2)}.dg-group-pill.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.dg-group-pill-count{font-family:var(--ss-font-mono);opacity:.7;margin-left:4px;font-size:10px}.dg-group-single{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3)}.dg-group-add{font-size:var(--ss-text-xs);color:var(--ss-coral);cursor:pointer;font-weight:var(--ss-w-medium);background:0 0;border:none}.dg-group-add:hover{text-decoration:underline}.dg-loading{text-align:center;padding:var(--ss-space-16);color:var(--ss-ink-4);font-size:var(--ss-text-sm)}.dg-empty{text-align:center;padding:var(--ss-space-16) var(--ss-space-6);max-width:520px;margin:var(--ss-space-8) auto;background:var(--ss-card);border-radius:var(--ss-radius-xl);box-shadow:var(--ss-shadow-md)}.dg-empty-title{font-family:var(--ss-font-display);font-size:var(--ss-text-2xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight);margin:0 0 var(--ss-space-3)}.dg-empty-text{font-size:var(--ss-text-base);color:var(--ss-ink-3);margin:0 0 var(--ss-space-6);line-height:var(--ss-lh-prose)}.dg-btn-generate{padding:var(--ss-space-3) var(--ss-space-8);background:var(--ss-coral);color:#fff;border-radius:var(--ss-radius-pill);font-size:var(--ss-text-base);font-weight:var(--ss-w-semibold);cursor:pointer;transition:all var(--ss-dur-fast) var(--ss-ease);border:none;box-shadow:0 4px 12px #ff7a594d}.dg-btn-generate:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ff7a5966}.dg-btn-generate:disabled{opacity:.5;cursor:wait;transform:none}.dg-header{margin-bottom:var(--ss-space-5);justify-content:space-between;align-items:flex-start;display:flex}.dg-header-left{flex-direction:column;gap:2px;display:flex}.dg-date{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3)}.dg-period{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.dg-btn-regen{padding:var(--ss-space-2) var(--ss-space-5);color:var(--ss-ink);border:var(--ss-border-ink);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-xs);font-weight:var(--ss-w-semibold);cursor:pointer;transition:all var(--ss-dur-fast) var(--ss-ease);background:0 0}.dg-btn-regen:hover{background:var(--ss-ink);color:var(--ss-paper)}.dg-btn-regen:disabled{opacity:.5;cursor:wait}.dg-headline{font-family:var(--ss-font-display);font-size:clamp(1.4rem, 3vw, var(--ss-text-xl));font-weight:var(--ss-w-black);line-height:var(--ss-lh-tight);letter-spacing:var(--ss-track-tightest);margin:0 0 var(--ss-space-6);color:var(--ss-ink)}.dg-narrative{background:var(--ss-card);border-radius:var(--ss-radius-lg);padding:var(--ss-space-6);margin-bottom:var(--ss-space-6);box-shadow:var(--ss-shadow-sm);columns:2;column-gap:var(--ss-space-8)}.dg-narrative p{font-size:var(--ss-text-base);line-height:var(--ss-lh-prose);color:var(--ss-ink-2);margin:0}@media (width<=640px){.dg-narrative{columns:1;padding:var(--ss-space-4)}}.dg-kpis{gap:var(--ss-space-3);margin-bottom:var(--ss-space-6);grid-template-columns:repeat(4,1fr);display:grid}.dg-kpi{text-align:center;background:var(--ss-card);border-radius:var(--ss-radius-md);padding:var(--ss-space-4) var(--ss-space-2);box-shadow:var(--ss-shadow-xs)}.dg-kpi:first-child{background:var(--ss-blush)}.dg-kpi:nth-child(2){background:var(--ss-sky)}.dg-kpi:nth-child(3){background:var(--ss-mint)}.dg-kpi:nth-child(4){background:var(--ss-butter)}.dg-kpi-num{font-family:var(--ss-font-display);font-size:var(--ss-text-2xl);font-weight:var(--ss-w-black);color:var(--ss-ink);letter-spacing:var(--ss-track-tight);display:block}.dg-kpi-label{font-size:var(--ss-text-xs);color:var(--ss-ink-3);text-transform:uppercase;letter-spacing:var(--ss-track-mono);font-weight:var(--ss-w-medium);margin-top:4px;display:block}.dg-section{margin-bottom:var(--ss-space-6)}.dg-section-title{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);margin:0 0 var(--ss-space-3);font-weight:var(--ss-w-semibold)}.dg-topics{gap:var(--ss-space-3);flex-direction:column;display:flex}.dg-topic{gap:4px var(--ss-space-3);padding:var(--ss-space-3) var(--ss-space-4);background:var(--ss-card);border-radius:var(--ss-radius-md);border-left:4px solid var(--ss-ink-4);box-shadow:var(--ss-shadow-xs);grid-template-rows:auto auto;grid-template-columns:20px 1fr auto;align-items:center;display:grid}.dg-topic--high{border-left-color:var(--ss-coral);background:linear-gradient(135deg, var(--ss-card) 85%, var(--ss-coral-soft))}.dg-topic--medium{border-left-color:var(--ss-electric)}.dg-topic--low{border-left-color:var(--ss-ink-4)}.dg-topic-name{font-weight:var(--ss-w-bold);font-size:var(--ss-text-sm);cursor:pointer;grid-area:1/2}.dg-topic-name:hover{color:var(--ss-coral)}.dg-topic-why{font-size:var(--ss-text-xs);color:var(--ss-ink-3);line-height:var(--ss-lh-normal);grid-area:2/2/auto/-1}.dg-topic-badge{font-family:var(--ss-font-mono);text-transform:uppercase;letter-spacing:.08em;border-radius:var(--ss-radius-pill);white-space:nowrap;font-size:10px;font-weight:var(--ss-w-semibold);grid-area:1/3;padding:3px 10px}.dg-topic-badge--high{background:var(--ss-coral);color:#fff}.dg-topic-badge--medium{background:var(--ss-electric);color:#fff}.dg-topic-badge--low{background:var(--ss-paper-3);color:var(--ss-ink-3)}.dg-players{gap:var(--ss-space-3);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.dg-player{padding:var(--ss-space-4);background:var(--ss-card);border-radius:var(--ss-radius-md);box-shadow:var(--ss-shadow-xs)}.dg-player-name{font-weight:var(--ss-w-bold);font-size:var(--ss-text-sm);display:block}.dg-player-role{font-size:var(--ss-text-xs);color:var(--ss-ink-3);line-height:var(--ss-lh-normal);margin-top:4px;display:block}.dg-row{gap:var(--ss-space-5);margin-bottom:var(--ss-space-6);grid-template-columns:1fr 1fr;display:grid}@media (width<=640px){.dg-row{grid-template-columns:1fr}}.dg-section--half{background:var(--ss-card);border-radius:var(--ss-radius-lg);padding:var(--ss-space-4);box-shadow:var(--ss-shadow-xs);margin-bottom:0}.dg-bars{gap:var(--ss-space-2);flex-direction:column;display:flex}.dg-bar-row{gap:var(--ss-space-2);grid-template-columns:100px 1fr 32px;align-items:center;padding:2px 0;display:grid}.dg-bar-label{font-size:var(--ss-text-xs);color:var(--ss-ink-2);text-overflow:ellipsis;white-space:nowrap;font-weight:var(--ss-w-medium);overflow:hidden}.dg-bar-track{background:var(--ss-paper-2);border-radius:var(--ss-radius-pill);height:8px;overflow:hidden}.dg-bar-fill{background:var(--ss-ink);border-radius:var(--ss-radius-pill);height:100%;transition:width .4s var(--ss-ease)}.dg-bar-fill--accent{background:var(--ss-coral)}.dg-bar-val{font-family:var(--ss-font-mono);color:var(--ss-ink-3);text-align:right;font-size:11px}.dg-tension-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.dg-tension{padding:var(--ss-space-3) var(--ss-space-4);border-left:4px solid var(--ss-coral);background:var(--ss-card);border-radius:0 var(--ss-radius-sm) var(--ss-radius-sm) 0;font-size:var(--ss-text-sm);color:var(--ss-ink-2);line-height:var(--ss-lh-normal);box-shadow:var(--ss-shadow-xs)}.dg-signal-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.dg-signal{padding:var(--ss-space-3) var(--ss-space-4);border-left:4px solid var(--ss-ok);background:var(--ss-card);border-radius:0 var(--ss-radius-sm) var(--ss-radius-sm) 0;font-size:var(--ss-text-sm);color:var(--ss-ink-2);line-height:var(--ss-lh-normal);box-shadow:var(--ss-shadow-xs)}.dg-topic-check{width:18px;height:18px;accent-color:var(--ss-coral);cursor:pointer;grid-area:1/1}.dg-topic-actions{align-items:center;gap:var(--ss-space-3);padding:var(--ss-space-3) var(--ss-space-4);margin-top:var(--ss-space-3);background:var(--ss-blush);border-radius:var(--ss-radius-md);display:flex}.dg-topic-actions-count{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-3);flex:1}.dg-topic--clickable{cursor:pointer;transition:all var(--ss-dur-fast) var(--ss-ease)}.dg-topic--clickable:hover{transform:translate(4px)}.dg-bar-row--clickable{cursor:pointer;border-radius:var(--ss-radius-xs);transition:background var(--ss-dur-fast);margin:-4px;padding:4px}.dg-bar-row--clickable:hover{background:var(--ss-paper-2)}.dg-timeline{margin-top:var(--ss-space-8);padding-top:var(--ss-space-6)}.dg-timeline-title{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);margin:0 0 var(--ss-space-3);font-weight:var(--ss-w-semibold)}.dg-timeline-strip{gap:var(--ss-space-3);padding-bottom:var(--ss-space-3);-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.dg-timeline-card{min-width:140px;max-width:200px;padding:var(--ss-space-3) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-md);background:var(--ss-card);cursor:pointer;text-align:left;transition:all var(--ss-dur-fast) var(--ss-ease);box-shadow:var(--ss-shadow-xs);flex:none}.dg-timeline-card:hover{border-color:var(--ss-ink-4);box-shadow:var(--ss-shadow-sm);transform:translateY(-2px)}.dg-timeline-card.active{border-color:var(--ss-ink);background:var(--ss-ink);color:var(--ss-paper);box-shadow:var(--ss-shadow-md)}.dg-timeline-card.active .dg-timeline-date,.dg-timeline-card.active .dg-timeline-liner{color:var(--ss-paper)}.dg-timeline-date{font-family:var(--ss-font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ss-ink-4);margin-bottom:4px;font-size:10px;display:block}.dg-timeline-liner{font-size:var(--ss-text-xs);color:var(--ss-ink-2);line-height:1.4;display:block}.dd-backdrop{z-index:var(--ss-z-modal);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#15110e40;position:fixed;inset:0}.dd-panel{background:var(--ss-paper);width:min(500px,90vw);z-index:calc(var(--ss-z-modal) + 1);padding:var(--ss-space-6);box-shadow:var(--ss-shadow-lg);animation:dd-slide-in .25s var(--ss-ease-out);position:fixed;top:0;bottom:0;right:0;overflow-y:auto}@keyframes dd-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.dd-header{margin-bottom:var(--ss-space-5);padding-bottom:var(--ss-space-3);border-bottom:var(--ss-border-ink);justify-content:space-between;align-items:center;display:flex}.dd-title{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tight);margin:0}.dd-close{cursor:pointer;color:var(--ss-ink-3);transition:color var(--ss-dur-fast);background:0 0;border:none;padding:4px 8px;font-size:28px;line-height:1}.dd-close:hover{color:var(--ss-ink)}.dd-loading{padding:var(--ss-space-6);gap:var(--ss-space-3);flex-direction:column;display:flex}.dd-skeleton{background:var(--ss-paper-2);border-radius:var(--ss-radius-sm);height:14px;animation:1.2s ease-in-out infinite dd-shimmer}.dd-skeleton--short{width:60%}@keyframes dd-shimmer{0%,to{opacity:.5}50%{opacity:1}}.dd-error{padding:var(--ss-space-8);text-align:center;color:var(--ss-ink-3);font-size:var(--ss-text-sm)}.dd-kpis{gap:var(--ss-space-3);margin-bottom:var(--ss-space-5);grid-template-columns:repeat(3,1fr);display:grid}.dd-kpi{text-align:center;background:var(--ss-card);padding:var(--ss-space-3);border-radius:var(--ss-radius-md)}.dd-kpi-num{font-family:var(--ss-font-display);font-size:var(--ss-text-xl);font-weight:var(--ss-w-black);display:block}.dd-kpi-label{font-size:var(--ss-text-xs);color:var(--ss-ink-4);text-transform:uppercase;letter-spacing:var(--ss-track-mono);margin-top:2px;display:block}.dd-section-title{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);margin:0 0 var(--ss-space-2);font-weight:var(--ss-w-semibold)}.dd-timeline-mini{margin-bottom:var(--ss-space-5)}.dd-timeline-bars{height:60px;padding-top:var(--ss-space-2);align-items:flex-end;gap:3px;display:flex}.dd-tbar{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;height:100%;display:flex;position:relative}.dd-tbar-fill{background:var(--ss-ink);border-radius:3px 3px 0 0;width:100%;min-height:2px}.dd-tbar-label{color:var(--ss-ink-4);white-space:nowrap;font-size:9px;position:absolute;bottom:-16px}.dd-articles{margin-top:var(--ss-space-5)}.dd-article{padding:var(--ss-space-3) 0;border-bottom:var(--ss-border-1)}.dd-article-title{font-size:var(--ss-text-sm);font-weight:var(--ss-w-semibold);color:var(--ss-ink);line-height:var(--ss-lh-normal);text-decoration:none}.dd-article-title:hover{color:var(--ss-coral)}.dd-article-meta{gap:var(--ss-space-3);font-size:var(--ss-text-xs);color:var(--ss-ink-4);margin-top:4px;display:flex}@media (width<=640px){.dg-kpis{grid-template-columns:repeat(2,1fr)}}.mem{max-width:800px;padding:var(--ss-space-6) var(--ss-space-4);margin:0 auto}.mem-title{font-family:var(--ss-font-display);font-size:var(--ss-text-2xl);margin:0 0 var(--ss-space-1);font-weight:900}.mem-subtitle{font-size:var(--ss-text-sm);color:var(--ss-ink-3);margin:0 0 var(--ss-space-6)}.mem-loading{text-align:center;padding:var(--ss-space-8);color:var(--ss-ink-4)}.mem-section{margin-bottom:var(--ss-space-4);background:var(--ss-card);border-radius:var(--ss-radius-lg);box-shadow:var(--ss-shadow-sm);overflow:hidden}.mem-section-header{width:100%;padding:var(--ss-space-4) var(--ss-space-5);background:var(--ss-card);cursor:pointer;text-align:left;transition:background var(--ss-dur-fast);border:none;justify-content:space-between;align-items:center;display:flex}.mem-section-header:hover{background:var(--ss-paper-1)}.mem-section:first-child .mem-section-header{border-left:4px solid var(--ss-coral)}.mem-section:nth-child(2) .mem-section-header{border-left:4px solid var(--ss-electric)}.mem-section:nth-child(3) .mem-section-header{border-left:4px solid var(--ss-ok)}.mem-section:nth-child(4) .mem-section-header{border-left:4px solid var(--ss-butter)}.mem-section-title{font-family:var(--ss-font-mono);font-size:var(--ss-text-sm);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--ss-w-semibold);margin:0}.mem-section-arrow{color:var(--ss-ink-4);font-size:10px}.mem-section-body{padding:var(--ss-space-4) var(--ss-space-5)}.mem-card{gap:var(--ss-space-3);flex-direction:column;display:flex}.mem-card-meta{gap:var(--ss-space-3);font-size:var(--ss-text-xs);color:var(--ss-ink-4);display:flex}.mem-card-content{font-size:var(--ss-text-sm);color:var(--ss-ink-2);white-space:pre-wrap;line-height:1.7}.mem-card-actions{gap:var(--ss-space-2);padding-top:var(--ss-space-2);border-top:1px solid var(--ss-paper-2);display:flex}.mem-sources{gap:var(--ss-space-1);flex-wrap:wrap;align-items:center;display:flex}.mem-sources-label{font-size:var(--ss-text-xs);color:var(--ss-ink-4);font-weight:var(--ss-w-medium)}.mem-source-tag{font-size:var(--ss-text-xs);background:var(--ss-paper-2);border-radius:var(--ss-radius-pill);color:var(--ss-ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:200px;padding:2px 8px;overflow:hidden}.mem-questionnaire{gap:var(--ss-space-1);margin-top:var(--ss-space-2);flex-direction:column;display:flex}.mem-qa{gap:var(--ss-space-2);font-size:var(--ss-text-xs);display:flex}.mem-qa-k{color:var(--ss-ink-4);font-weight:var(--ss-w-medium);flex-shrink:0;min-width:140px}.mem-qa-v{color:var(--ss-ink-2)}.mem-pref-list{gap:var(--ss-space-2);flex-direction:column;display:flex}.mem-pref{padding:var(--ss-space-2) var(--ss-space-3);background:var(--ss-paper-1);border-radius:var(--ss-radius-sm);justify-content:space-between;align-items:center;display:flex}.mem-pref-content{gap:var(--ss-space-2);flex:1;align-items:baseline;display:flex}.mem-pref-key{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);color:var(--ss-ink-3);text-transform:uppercase;letter-spacing:.04em}.mem-pref-val{font-size:var(--ss-text-sm);color:var(--ss-ink-2)}.mem-btn-x{cursor:pointer;color:var(--ss-ink-4);background:0 0;border:none;padding:2px 6px;font-size:16px}.mem-btn-x:hover{color:var(--ss-danger)}.mem-signals-header{justify-content:space-between;align-items:flex-start;gap:var(--ss-space-3);margin-bottom:var(--ss-space-3);flex-wrap:wrap;display:flex}.mem-signal-filters{gap:var(--ss-space-1);flex-wrap:wrap;display:flex}.mem-signal-filter{border:1px solid var(--ss-paper-3);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-xs);color:var(--ss-ink-3);cursor:pointer;background:0 0;padding:3px 10px}.mem-signal-filter.active{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.mem-signal-list{flex-direction:column;gap:2px;max-height:400px;display:flex;overflow-y:auto}.mem-signal{gap:var(--ss-space-2);padding:var(--ss-space-1) var(--ss-space-2);font-size:var(--ss-text-xs);border-bottom:1px solid var(--ss-paper-2);grid-template-columns:140px 1fr 100px;display:grid}.mem-signal-type{font-family:var(--ss-font-mono);color:var(--ss-ink-3);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.mem-signal-detail{color:var(--ss-ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mem-signal-date{color:var(--ss-ink-4);text-align:right}.mem-btn-danger{padding:var(--ss-space-1) var(--ss-space-3);color:var(--ss-danger);border:1px solid var(--ss-danger);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-xs);cursor:pointer;background:0 0;transition:all .15s}.mem-btn-danger:hover{background:var(--ss-danger);color:#fff}.mem-empty{text-align:center;padding:var(--ss-space-4);color:var(--ss-ink-4);font-size:var(--ss-text-sm)}.ic{gap:var(--ss-space-3);flex-direction:column;height:100%;display:flex}.ic-messages{gap:var(--ss-space-2);padding:var(--ss-space-3);border:1px solid var(--ss-paper-3);background:var(--ss-paper);border-radius:8px;flex-direction:column;flex:1;max-height:400px;display:flex;overflow-y:auto}.ic-msg{max-width:85%;font-size:var(--ss-text-sm);border-radius:12px;padding:10px 14px;line-height:1.5}.ic-msg--assistant{background:var(--ss-paper-2);color:var(--ss-ink);border-bottom-left-radius:4px;align-self:flex-start}.ic-msg--user{background:var(--ss-ink);color:var(--ss-paper);border-bottom-right-radius:4px;align-self:flex-end}.ic-msg--error .ic-msg-text{color:var(--ss-danger)}.ic-typing{color:var(--ss-ink-4);font-style:italic}.ic-chips{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ic-chip{background:var(--ss-paper);border:1px solid var(--ss-paper-3);font-size:var(--ss-text-xs);cursor:pointer;color:var(--ss-ink);border-radius:16px;padding:4px 12px;transition:all .15s}.ic-chip:hover{border-color:var(--ss-ink-3)}.ic-chip--on{background:var(--ss-ink);color:var(--ss-paper);border-color:var(--ss-ink)}.ic-chip-conf{opacity:.6;margin-left:4px}.ic-confirmed{background:var(--ss-paper-2);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 12px;display:flex}.ic-confirmed-label{font-size:var(--ss-text-xs);color:var(--ss-ink-3);font-weight:600}.ic-confirmed-tag{background:var(--ss-ink);color:var(--ss-paper);font-size:var(--ss-text-xs);border-radius:12px;align-items:center;gap:4px;padding:2px 10px;display:flex}.ic-confirmed-x{color:var(--ss-paper);cursor:pointer;opacity:.6;font-size:var(--ss-text-xs);background:0 0;border:none;padding:0}.ic-confirmed-x:hover{opacity:1}.ic-confirm-btn{background:var(--ss-ok);color:#fff;font-size:var(--ss-text-xs);cursor:pointer;border:none;border-radius:6px;margin-left:auto;padding:4px 14px;font-weight:600}.ic-confirm-btn:hover{opacity:.9}.ic-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.ic-input-row{gap:var(--ss-space-2);display:flex}.ic-input{font-size:var(--ss-text-sm);border:1px solid var(--ss-paper-3);background:var(--ss-paper);color:var(--ss-ink);border-radius:8px;flex:1;padding:10px 14px}.ic-input:focus{border-color:var(--ss-ink-3);outline:none}.ic-send{background:var(--ss-ink);color:var(--ss-paper);font-size:var(--ss-text-sm);cursor:pointer;border:none;border-radius:8px;padding:10px 18px;font-weight:500}.ic-send:hover{opacity:.9}.ic-send:disabled{opacity:.4;cursor:not-allowed}.ic-footer{text-align:center}.ic-skip{color:var(--ss-ink-4);cursor:pointer;font-size:var(--ss-text-sm);background:0 0;border:none;text-decoration:underline}.ic-skip:hover{color:var(--ss-ink-3)}.wiz{background:var(--ss-paper);flex-direction:column;align-items:center;min-height:100vh;display:flex}.wiz-topbar{justify-content:flex-end;width:100%;padding:14px 24px 0;display:flex}.wiz-logout{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill,999px);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast,.15s) var(--ss-ease,ease), color var(--ss-dur-fast,.15s) var(--ss-ease,ease);background:0 0;padding:8px 18px;font-size:11px}.wiz-logout:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.wiz-progress{background:var(--ss-paper-2);width:100%;height:5px;position:relative}.wiz-progress-bar{background:var(--ss-coral);height:100%;transition:width .5s var(--ss-ease-out);border-radius:0 3px 3px 0}.wiz-progress-label{right:var(--ss-space-4);font-family:var(--ss-font-mono);color:var(--ss-ink-4);letter-spacing:var(--ss-track-mono);font-size:11px;position:absolute;top:14px}.wiz-container{width:100%;max-width:580px;padding:var(--ss-space-12) var(--ss-space-5);position:relative}.wiz-back{font-size:var(--ss-text-sm);color:var(--ss-ink-3);cursor:pointer;margin-bottom:var(--ss-space-5);font-weight:var(--ss-w-medium);transition:color var(--ss-dur-fast);background:0 0;border:none;padding:0}.wiz-back:hover{color:var(--ss-ink)}.wiz-step{gap:var(--ss-space-4);flex-direction:column;display:flex}.wiz-step-title{font-family:var(--ss-font-display);font-size:clamp(1.8rem, 5vw, var(--ss-text-2xl));font-weight:var(--ss-w-black);letter-spacing:var(--ss-track-tightest);line-height:var(--ss-lh-tight);color:var(--ss-ink);margin:0}.wiz-step-sub{font-size:var(--ss-text-base);color:var(--ss-ink-3);margin:0 0 var(--ss-space-2);line-height:var(--ss-lh-prose)}.wiz-label{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);margin-top:var(--ss-space-1);font-weight:var(--ss-w-medium)}.wiz-input,.wiz-select{width:100%;padding:var(--ss-space-3) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-md);font-size:var(--ss-text-base);background:var(--ss-card);transition:border-color var(--ss-dur-fast), box-shadow var(--ss-dur-fast);font-family:inherit}.wiz-input:focus,.wiz-select:focus{border-color:var(--ss-coral);box-shadow:0 0 0 3px var(--ss-coral-soft);outline:none}.wiz-textarea{width:100%;padding:var(--ss-space-3) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-md);font-size:var(--ss-text-base);background:var(--ss-card);resize:vertical;transition:border-color var(--ss-dur-fast), box-shadow var(--ss-dur-fast);font-family:inherit}.wiz-textarea:focus{border-color:var(--ss-coral);box-shadow:0 0 0 3px var(--ss-coral-soft);outline:none}.wiz-result{padding:var(--ss-space-5);background:var(--ss-card);border-radius:var(--ss-radius-lg);border-left:4px solid var(--ss-coral);font-size:var(--ss-text-sm);line-height:var(--ss-lh-prose);color:var(--ss-ink-2);white-space:pre-wrap;max-height:300px;box-shadow:var(--ss-shadow-sm);overflow-y:auto}.wiz-actions{align-items:center;gap:var(--ss-space-3);margin-top:var(--ss-space-5);display:flex}.wiz-btn-primary{padding:var(--ss-space-3) var(--ss-space-8);background:var(--ss-coral);color:#fff;border-radius:var(--ss-radius-pill);font-size:var(--ss-text-base);font-weight:var(--ss-w-semibold);cursor:pointer;transition:all var(--ss-dur-fast) var(--ss-ease);border:none;box-shadow:0 4px 12px #ff7a5940}.wiz-btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #ff7a5959}.wiz-btn-primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.wiz-btn-big{font-size:var(--ss-text-lg);padding:var(--ss-space-4) var(--ss-space-10)}.wiz-btn-secondary{padding:var(--ss-space-2) var(--ss-space-5);color:var(--ss-ink);border:var(--ss-border-ink);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);cursor:pointer;transition:all var(--ss-dur-fast);background:0 0}.wiz-btn-secondary:hover{background:var(--ss-ink);color:var(--ss-paper)}.wiz-btn-skip{color:var(--ss-ink-4);font-size:var(--ss-text-sm);cursor:pointer;background:0 0;border:none}.wiz-btn-skip:hover{color:var(--ss-ink-3);text-decoration:underline}.wiz-group-list{gap:var(--ss-space-3);flex-direction:column;display:flex}.wiz-group-card{align-items:center;gap:var(--ss-space-4);padding:var(--ss-space-4) var(--ss-space-5);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);cursor:pointer;transition:all var(--ss-dur-fast) var(--ss-ease);background:var(--ss-card);display:flex}.wiz-group-card:hover{border-color:var(--ss-ink-4);box-shadow:var(--ss-shadow-sm)}.wiz-group-card.active{border-color:var(--ss-ink);box-shadow:var(--ss-shadow-md)}.wiz-group-card input[type=checkbox]{accent-color:var(--ss-coral);width:20px;height:20px}.wiz-group-info{flex-direction:column;gap:2px;display:flex}.wiz-group-name{font-weight:var(--ss-w-bold);font-size:var(--ss-text-base)}.wiz-group-meta{font-size:var(--ss-text-xs);color:var(--ss-ink-4)}.wiz-empty{text-align:center;padding:var(--ss-space-8);color:var(--ss-ink-3);line-height:var(--ss-lh-prose)}.wiz-empty a{color:var(--ss-coral);font-weight:var(--ss-w-medium)}.wiz-purpose-grid{gap:var(--ss-space-3);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.wiz-purpose-grid{grid-template-columns:1fr}}.wiz-purpose-card{gap:var(--ss-space-2);padding:var(--ss-space-5);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);background:var(--ss-card);cursor:pointer;text-align:left;transition:all var(--ss-dur-fast) var(--ss-ease);flex-direction:column;display:flex}.wiz-purpose-card:hover{border-color:var(--ss-ink-4);box-shadow:var(--ss-shadow-sm)}.wiz-purpose-card.active{border-color:var(--ss-coral);box-shadow:0 0 0 3px var(--ss-coral-soft)}.wiz-purpose-title{font-weight:var(--ss-w-bold);font-size:var(--ss-text-base);color:var(--ss-ink)}.wiz-purpose-desc{font-size:var(--ss-text-sm);color:var(--ss-ink-3);line-height:var(--ss-lh-prose)}.wiz-optional-hint{color:var(--ss-coral);font-weight:var(--ss-w-medium);display:inline}.wiz-chat-wrapper{min-height:420px}.sage-area-grid{gap:var(--ss-space-3);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.sage-area-grid{grid-template-columns:1fr}}.sage-area-card{align-items:center;gap:var(--ss-space-2);padding:var(--ss-space-5) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-lg);background:var(--ss-card);cursor:pointer;text-align:center;transition:all var(--ss-dur-fast) var(--ss-ease);flex-direction:column;display:flex}.sage-area-card:hover{border-color:var(--ss-ink-4);box-shadow:var(--ss-shadow-sm)}.sage-area-card.active{border-color:var(--ss-coral);box-shadow:0 0 0 3px var(--ss-coral-soft)}.sage-area-icon{font-size:2rem;line-height:1}.sage-area-label{font-weight:var(--ss-w-bold);font-size:var(--ss-text-base);color:var(--ss-ink)}.sage-area-desc{font-size:var(--ss-text-xs);color:var(--ss-ink-3);line-height:var(--ss-lh-prose)}.sage-area-badge{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-coral);font-weight:var(--ss-w-semibold);margin-bottom:var(--ss-space-1);display:inline-block}.sage-choice-grid{gap:var(--ss-space-4);margin-top:var(--ss-space-2);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.sage-choice-grid{grid-template-columns:1fr}}.sage-choice-card{gap:var(--ss-space-3);padding:var(--ss-space-6) var(--ss-space-5);border:2px solid var(--ss-line);border-radius:var(--ss-radius-lg);background:var(--ss-card);cursor:pointer;text-align:left;transition:all .25s var(--ss-ease);flex-direction:column;display:flex}.sage-choice-card:hover{border-color:var(--ss-ink-4);box-shadow:var(--ss-shadow-md);transform:translateY(-2px)}.sage-choice-card.active{border-color:var(--ss-coral);background:var(--ss-coral-soft);box-shadow:0 0 0 3px var(--ss-coral-soft)}.sage-choice-card:disabled{cursor:default;opacity:.7}.sage-choice-card:disabled:not(.active){opacity:.4;box-shadow:none;transform:none}.sage-choice-label{font-weight:var(--ss-w-bold);font-size:var(--ss-text-lg);color:var(--ss-ink);line-height:var(--ss-lh-tight)}.sage-choice-keywords{font-size:var(--ss-text-xs);color:var(--ss-ink-4);font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono)}.sage-tier{gap:var(--ss-space-2);flex-direction:column;display:flex}.sage-tier-label{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);font-weight:var(--ss-w-semibold)}.sage-tag-cloud{gap:var(--ss-space-2);flex-wrap:wrap;display:flex}.sage-tag{padding:var(--ss-space-1) var(--ss-space-3);border-radius:var(--ss-radius-pill);font-size:var(--ss-text-sm);font-weight:var(--ss-w-medium);line-height:1.4;display:inline-block}.sage-tag.t1{background:var(--ss-coral);color:#fff}.sage-tag.t2{background:var(--ss-coral-soft);color:var(--ss-ink)}.sage-tag.t3{background:var(--ss-paper-2);color:var(--ss-ink-3)}.sage-label{font-family:var(--ss-font-mono);font-size:var(--ss-text-xs);text-transform:uppercase;letter-spacing:var(--ss-track-mono);color:var(--ss-ink-3);font-weight:var(--ss-w-medium);margin-bottom:var(--ss-space-1);display:block}.sage-input{width:100%;padding:var(--ss-space-3) var(--ss-space-4);border:var(--ss-border-1);border-radius:var(--ss-radius-md);font-size:var(--ss-text-base);background:var(--ss-card);color:var(--ss-ink);transition:border-color var(--ss-dur-fast), box-shadow var(--ss-dur-fast);font-family:inherit}.sage-input:focus{border-color:var(--ss-coral);box-shadow:0 0 0 3px var(--ss-coral-soft);outline:none}.sub-page{background:var(--ss-blush,#f4f1ec);justify-content:center;align-items:center;min-height:100vh;padding:40px 16px;display:flex;position:relative;overflow:hidden}.sub-blob{pointer-events:none;border-radius:50%;position:absolute}.sub-blob--sunset{background:var(--ss-grad-sunset,linear-gradient(135deg, #ff7a59, #ff4f81));opacity:.7;width:400px;height:400px;top:-120px;right:-80px}.sub-blob--mint{background:var(--ss-grad-mint-sky,linear-gradient(135deg, #d4ebd0, #a8d5e2));opacity:.5;width:250px;height:250px;bottom:-60px;left:-40px}.sub-login-link{z-index:3;color:var(--ss-ink-1,#1a1a1a);border:1px solid var(--ss-ink-1,#1a1a1a);background:#fff9;border-radius:999px;padding:8px 18px;font-size:14px;font-weight:600;text-decoration:none;transition:background .15s;position:absolute;top:24px;right:28px}.sub-login-link:hover{background:var(--ss-ink-1,#1a1a1a);color:#fff}.sub-container{z-index:2;text-align:center;width:100%;max-width:520px;position:relative}.sub-brand{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);margin-bottom:4px;font-size:36px;font-weight:900}.sub-dot{color:var(--ss-coral,#ff7a59)}.sub-tagline{font-family:var(--ss-font-serif,Georgia, serif);color:var(--ss-ink-3,#6b6359);margin:0 0 48px;font-size:14px;font-style:italic}.sub-headline{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);letter-spacing:-.02em;margin:0 0 16px;font-size:clamp(28px,5vw,40px);font-weight:900;line-height:1.15}.sub-headline em{color:var(--ss-ink-2,#2e2823);font-style:italic}.sub-desc{color:var(--ss-ink-2,#2e2823);margin:0 0 32px;font-size:16px;line-height:1.6}.sub-form{margin-bottom:40px}.sub-input-row{gap:0;margin-bottom:16px;display:flex}.sub-input{border:2px solid var(--ss-ink,#15110e);font-size:16px;font-family:var(--ss-font-sans,"Helvetica Neue", sans-serif);background:#fff;border-right:none;border-radius:40px 0 0 40px;outline:none;flex:1;padding:14px 20px}.sub-input:focus{border-color:var(--ss-coral,#ff7a59)}.sub-submit{background:var(--ss-ink,#15110e);color:#fff;border:2px solid var(--ss-ink,#15110e);font-size:16px;font-weight:600;font-family:var(--ss-font-sans,"Helvetica Neue", sans-serif);cursor:pointer;white-space:nowrap;border-radius:0 40px 40px 0;padding:14px 28px;transition:background .2s,transform .1s}.sub-submit:hover:not(:disabled){background:var(--ss-coral,#ff7a59);border-color:var(--ss-coral,#ff7a59)}.sub-submit:disabled{opacity:.4;cursor:not-allowed}.sub-gdpr{text-align:left;color:var(--ss-ink-3,#6b6359);cursor:pointer;align-items:flex-start;gap:8px;font-size:12px;display:flex}.sub-gdpr input[type=checkbox]{flex-shrink:0;margin-top:2px}.sub-gdpr-link{color:var(--ss-coral,#ff7a59);text-decoration:underline}.sub-gdpr-link:hover{color:var(--ss-ink,#15110e)}.sub-error{color:var(--ss-danger,#dc3545);margin-top:12px;font-size:14px}.sub-success{background:#fff;border-radius:16px;margin:24px 0;padding:40px}.sub-success-icon{color:var(--ss-ok,#4caf50);margin-bottom:16px;font-size:48px}.sub-success h2{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);margin:0 0 8px;font-size:24px}.sub-success p{color:var(--ss-ink-2,#2e2823);margin:0;font-size:16px}.sub-features{flex-wrap:wrap;justify-content:center;gap:24px;display:flex}.sub-feature{color:var(--ss-ink-3,#6b6359);align-items:center;gap:6px;font-size:13px;display:flex}.sub-feature-icon{color:var(--ss-coral,#ff7a59);font-size:8px}.sub-footer{font-family:var(--ss-font-mono,"Courier New", monospace);color:var(--ss-ink-4,#9c9388);letter-spacing:.05em;margin-top:48px;font-size:11px}.ua-page{background:var(--ss-blush,#f4f1ec);min-height:100vh;padding:40px 16px}.ua-container{max-width:560px;margin:0 auto}.ua-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.ua-brand{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);font-size:28px;font-weight:900}.ua-dot{color:var(--ss-coral,#ff7a59)}.ua-logout{border:1px solid var(--ss-ink,#15110e);cursor:pointer;color:var(--ss-ink-2,#2e2823);background:0 0;border-radius:20px;padding:8px 20px;font-size:13px}.ua-logout:hover{background:var(--ss-ink,#15110e);color:#fff}.ua-welcome{text-align:center;border-left:4px solid var(--ss-coral,#ff7a59);background:#fff;border-radius:12px;margin-bottom:24px;padding:32px}.ua-welcome h1{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);margin:0 0 8px;font-size:24px;font-weight:900}.ua-welcome p{color:var(--ss-ink-2,#2e2823);margin:0;font-size:15px;line-height:1.6}.ua-card{background:#fff;border-radius:12px;margin-bottom:20px;padding:24px}.ua-card-header{margin-bottom:16px}.ua-card-header h2{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);margin:0;font-size:18px;font-weight:700}.ua-info-row{border-bottom:1px solid var(--ss-paper-2,#eee);justify-content:space-between;padding:10px 0;font-size:14px;display:flex}.ua-info-row:last-child{border-bottom:none}.ua-info-label{color:var(--ss-ink-3,#6b6359)}.ua-info-value{color:var(--ss-ink,#15110e);font-weight:500}.ua-empty{text-align:center;padding:16px 0}.ua-empty p{color:var(--ss-ink-2,#2e2823);margin:0;font-size:15px}.ua-empty-sub{color:var(--ss-ink-3,#6b6359)!important;margin-top:8px!important;font-size:13px!important}.ua-digest-list{flex-direction:column;gap:12px;display:flex}.ua-digest-item{background:var(--ss-blush,#f4f1ec);border-radius:8px;align-items:center;gap:16px;padding:12px;display:flex}.ua-digest-profile{font-family:var(--ss-font-mono,"Courier New", monospace);background:var(--ss-ink,#15110e);color:#fff;letter-spacing:.03em;border-radius:4px;padding:4px 10px;font-size:12px}.ua-digest-details{flex-direction:column;gap:2px;display:flex}.ua-digest-freq{color:var(--ss-ink,#15110e);font-size:14px;font-weight:500}.ua-digest-last{color:var(--ss-ink-4,#9c9388);font-size:12px}.ua-footer{text-align:center;font-family:var(--ss-font-mono,"Courier New", monospace);color:var(--ss-ink-4,#9c9388);margin-top:40px;font-size:11px}.ua-loading,.ua-error{text-align:center;color:var(--ss-ink-3,#6b6359);padding:80px 0;font-size:16px}.ob-shell{background:var(--ss-paper);min-height:100vh;color:var(--ss-ink);font-family:var(--ss-font-sans);flex-direction:column;display:flex}.ob-topbar{border-bottom:1px solid var(--ss-hairline);justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.ob-logout{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill,999px);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast,.15s) var(--ss-ease,ease), color var(--ss-dur-fast,.15s) var(--ss-ease,ease);background:0 0;padding:8px 18px;font-size:11px}.ob-logout:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.ob-brand{font-family:var(--ss-font-serif);letter-spacing:-.01em;font-size:22px;font-weight:500}.ob-brand em{color:var(--ss-ink-3);margin-left:8px;font-size:15px;font-style:italic}.ob-main{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:640px;margin:0 auto;padding:56px 32px 96px;display:flex}.ob-step{animation:ob-fade .35s var(--ss-ease,ease) both}@keyframes ob-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ob-kicker{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 12px;font-size:11px}.ob-title{font-family:var(--ss-font-serif);font-size:36px;font-weight:500;line-height:var(--ss-lh-snug,1.15);letter-spacing:-.02em;margin:0 0 14px}.ob-subtitle{color:var(--ss-ink-3);font-size:15px;line-height:var(--ss-lh-normal,1.5);margin:0 0 32px}.ob-topic-form{gap:12px;display:flex}.ob-topic-input{font-family:var(--ss-font-serif);color:var(--ss-ink);background:var(--ss-card);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-md,12px);transition:border-color var(--ss-dur-fast,.15s) var(--ss-ease,ease);outline:none;flex:1;padding:14px 18px;font-size:18px}.ob-topic-input::placeholder{color:var(--ss-ink-4);font-style:italic}.ob-topic-input:focus{border-color:var(--ss-ink)}.ob-topic-input:disabled{opacity:.6}.ob-cta{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;background:var(--ss-ink);color:var(--ss-paper);border:1px solid var(--ss-ink);border-radius:var(--ss-radius-pill,999px);cursor:pointer;white-space:nowrap;transition:opacity var(--ss-dur-fast,.15s) var(--ss-ease,ease);padding:14px 28px;font-size:12px}.ob-cta:hover:not(:disabled){opacity:.85}.ob-cta:disabled{opacity:.4;cursor:not-allowed}.ob-progress{margin-bottom:28px}.ob-progress-track{background:var(--ss-hairline);border-radius:2px;height:2px;overflow:hidden}.ob-progress-fill{background:var(--ss-ink);height:100%;transition:width var(--ss-dur-base,.3s) var(--ss-ease,ease)}.ob-question{font-family:var(--ss-font-serif);font-size:30px;font-weight:500;line-height:var(--ss-lh-snug,1.2);letter-spacing:-.02em;margin:0 0 36px}.ob-options{flex-direction:column;gap:14px;display:flex}.ob-option{text-align:left;width:100%;font-family:var(--ss-font-serif);font-size:20px;font-weight:500;line-height:var(--ss-lh-snug,1.3);color:var(--ss-ink);background:var(--ss-card);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md,12px);cursor:pointer;transition:border-color var(--ss-dur-fast,.15s) var(--ss-ease,ease), box-shadow var(--ss-dur-base,.3s) var(--ss-ease,ease);padding:24px 28px;display:block}.ob-option:hover:not(:disabled){border-color:var(--ss-ink);box-shadow:var(--ss-shadow-sm,0 2px 8px #0000000f)}.ob-option:disabled{opacity:.5;cursor:wait}.ob-thinking{font-family:var(--ss-font-serif);color:var(--ss-ink-3);margin:24px 0 0;font-size:17px;font-style:italic;animation:1.6s ease-in-out infinite ob-pulse}@keyframes ob-pulse{0%,to{opacity:.55}50%{opacity:1}}.ob-dots:after{content:"...";vertical-align:bottom;width:0;animation:1.2s steps(4,end) infinite ob-dots;display:inline-block;overflow:hidden}@keyframes ob-dots{to{width:1.2em}}.ob-step--result .ob-title{margin-bottom:20px}.ob-interest{font-family:var(--ss-font-serif);font-size:30px;font-style:italic;font-weight:500;line-height:var(--ss-lh-snug,1.2);color:var(--ss-ink);border-left:2px solid var(--ss-ink);margin:0 0 24px;padding-left:20px}.ob-error{border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-md,12px);background:var(--ss-card);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:32px;padding:18px 22px;display:flex}.ob-error-text{min-width:200px;color:var(--ss-danger);font-size:14px;line-height:var(--ss-lh-normal,1.5);flex:1;margin:0}.ob-retry{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill,999px);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast,.15s) var(--ss-ease,ease), color var(--ss-dur-fast,.15s) var(--ss-ease,ease);background:0 0;padding:8px 18px;font-size:11px}.ob-retry:hover{border-color:var(--ss-ink);color:var(--ss-ink)}@media (width<=640px){.ob-topbar{padding:16px 20px}.ob-main{justify-content:flex-start;padding:40px 20px 72px}.ob-title{font-size:28px}.ob-question{font-size:24px}.ob-topic-form{flex-direction:column}.ob-option{padding:20px 22px;font-size:17px}}.ul-shell{background:var(--ss-paper);min-height:100vh;color:var(--ss-ink);font-family:var(--ss-font-sans);flex-direction:column;display:flex}.ul-topbar{border-bottom:1px solid var(--ss-hairline);justify-content:space-between;align-items:center;padding:20px 32px;display:flex}.ul-brand{font-family:var(--ss-font-serif);letter-spacing:-.01em;font-size:22px;font-weight:500}.ul-brand em{color:var(--ss-ink-3);margin-left:8px;font-size:15px;font-style:italic}.ul-logout{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill,999px);color:var(--ss-ink-2);cursor:pointer;transition:border-color var(--ss-dur-fast,.15s) var(--ss-ease,ease), color var(--ss-dur-fast,.15s) var(--ss-ease,ease);background:0 0;padding:8px 18px;font-size:11px}.ul-logout:hover{border-color:var(--ss-ink);color:var(--ss-ink)}.ul-main{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:640px;margin:0 auto;padding:56px 32px 96px;display:flex}.ul-step{animation:ul-fade .35s var(--ss-ease,ease) both}@keyframes ul-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.ul-kicker{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 12px;font-size:11px}.ul-title{font-family:var(--ss-font-serif);font-size:36px;font-weight:500;line-height:var(--ss-lh-snug,1.15);letter-spacing:-.02em;margin:0 0 24px}.ul-lead{font-family:var(--ss-font-serif);color:var(--ss-ink-2);font-size:18px;line-height:var(--ss-lh-normal,1.5);margin:0 0 16px}.ul-interest{font-family:var(--ss-font-serif);font-size:30px;font-style:italic;font-weight:500;line-height:var(--ss-lh-snug,1.2);color:var(--ss-ink);border-left:2px solid var(--ss-ink);margin:0 0 28px;padding-left:20px}.ul-subtitle{color:var(--ss-ink-3);font-size:15px;line-height:var(--ss-lh-normal,1.5);margin:0 0 36px}.ul-subs{margin:0 0 36px}.ul-subs-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 12px;font-size:11px}.ul-subs-list{border-top:1px solid var(--ss-hairline);margin:0;padding:0;list-style:none}.ul-sub-row{border-bottom:1px solid var(--ss-hairline);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.ul-sub-name{font-family:var(--ss-font-serif);color:var(--ss-ink);font-size:17px}.ul-sub-unsub{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill,999px);color:var(--ss-ink-3);cursor:pointer;transition:border-color var(--ss-dur-fast,.15s) var(--ss-ease,ease), color var(--ss-dur-fast,.15s) var(--ss-ease,ease);background:0 0;flex-shrink:0;padding:6px 14px;font-size:11px}.ul-sub-unsub:hover:not(:disabled){border-color:var(--ss-ink);color:var(--ss-ink)}.ul-sub-unsub:disabled{opacity:.5;cursor:default}.ul-subs-empty{font-family:var(--ss-font-serif);color:var(--ss-ink-3);font-size:15px;font-style:italic;line-height:var(--ss-lh-normal,1.5);border-top:1px solid var(--ss-hairline);margin:0;padding-top:16px}.ul-note{border-top:1px solid var(--ss-hairline);padding-top:20px}.ul-note-text{font-family:var(--ss-font-serif);color:var(--ss-ink-3);font-size:15px;font-style:italic;line-height:var(--ss-lh-normal,1.5);margin:0}@media (width<=640px){.ul-topbar{padding:16px 20px}.ul-main{justify-content:flex-start;padding:40px 20px 72px}.ul-title{font-size:28px}.ul-interest{font-size:24px}}.login-page{background:var(--ss-blush,#f4f1ec);justify-content:center;align-items:center;min-height:100vh;padding:40px 16px;display:flex;position:relative;overflow:hidden}.login-blob{pointer-events:none;border-radius:50%;position:absolute}.login-blob--sunset{background:var(--ss-grad-sunset,linear-gradient(135deg, #ff7a59, #ff4f81));opacity:.7;width:400px;height:400px;top:-120px;right:-80px}.login-blob--mint{background:var(--ss-grad-mint-sky,linear-gradient(135deg, #d4ebd0, #a8d5e2));opacity:.5;width:250px;height:250px;bottom:-60px;left:-40px}.login-container{z-index:2;text-align:center;width:100%;max-width:400px;position:relative}.login-brand{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);margin-bottom:4px;font-size:36px;font-weight:900}.login-dot{color:var(--ss-coral,#ff7a59)}.login-tagline{font-family:var(--ss-font-serif,Georgia, serif);color:var(--ss-ink-3,#6b6359);margin:0 0 40px;font-size:14px;font-style:italic}.login-card{text-align:left;background:#fff;border-radius:16px;padding:32px}.login-label{color:var(--ss-ink-2,#2e2823);letter-spacing:.02em;margin-bottom:16px;font-size:12px;font-weight:600;display:block}.login-input{border:2px solid var(--ss-ink,#15110e);width:100%;font-size:16px;font-family:var(--ss-font-sans,"Helvetica Neue", sans-serif);box-sizing:border-box;background:#fff;border-radius:8px;outline:none;margin-top:6px;padding:12px 16px;display:block}.login-input:focus{border-color:var(--ss-coral,#ff7a59)}.login-error{color:var(--ss-danger,#dc3545);margin:0 0 12px;font-size:14px}.login-submit{background:var(--ss-ink,#15110e);color:#fff;border:2px solid var(--ss-ink,#15110e);width:100%;font-size:16px;font-weight:600;font-family:var(--ss-font-sans,"Helvetica Neue", sans-serif);cursor:pointer;border-radius:40px;margin-top:8px;padding:14px;transition:background .2s;display:block}.login-submit:hover:not(:disabled){background:var(--ss-coral,#ff7a59);border-color:var(--ss-coral,#ff7a59)}.login-submit:disabled{opacity:.4;cursor:not-allowed}.login-footer{font-family:var(--ss-font-mono,"Courier New", monospace);color:var(--ss-ink-4,#9c9388);letter-spacing:.05em;margin-top:40px;font-size:11px}.login-honeypot{display:none}.login-success{font-family:var(--ss-font-serif,Georgia, serif);color:var(--ss-ink-2,#2e2823);text-align:center;margin:0 0 24px;font-size:16px;line-height:1.5}.login-pending{color:var(--ss-ink-2,#2e2823);background:var(--ss-mint,#d4ebd0);border-radius:8px;margin:0 0 12px;padding:12px 16px;font-size:14px}.login-alt-link{color:var(--ss-ink-3,#6b6359);margin-top:20px;font-size:13px}.login-alt-link a{color:var(--ss-ink,#15110e);font-weight:600}.login-submit--link{text-align:center;box-sizing:border-box;text-decoration:none}.prv-page{background:var(--ss-blush,#f4f1ec);justify-content:center;align-items:flex-start;min-height:100vh;padding:60px 16px;display:flex}.prv-container{width:100%;max-width:640px}.prv-back{color:var(--ss-ink-3,#6b6359);margin-bottom:32px;font-size:13px;text-decoration:none;display:inline-block}.prv-back:hover{color:var(--ss-ink,#15110e)}.prv-title{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);margin:0 0 4px;font-size:32px;font-weight:900}.prv-update{color:var(--ss-ink-4,#9c9388);margin:0 0 40px;font-size:13px}.prv-body h2{font-family:var(--ss-font-display,Georgia, serif);color:var(--ss-ink,#15110e);margin:32px 0 8px;font-size:18px;font-weight:700}.prv-body h2:first-child{margin-top:0}.prv-body p{color:var(--ss-ink-2,#2e2823);margin:0 0 12px;font-size:15px;line-height:1.7}.prv-body ul{margin:8px 0 16px 20px;padding:0}.prv-body li{color:var(--ss-ink-2,#2e2823);margin-bottom:4px;font-size:15px;line-height:1.7}.prv-body a{color:var(--ss-coral,#ff7a59);text-decoration:none}.prv-body a:hover{text-decoration:underline}.prv-footer{text-align:center;font-family:var(--ss-font-mono,"Courier New", monospace);color:var(--ss-ink-4,#9c9388);letter-spacing:.05em;margin-top:60px;font-size:11px}.sh-page{background:var(--ss-paper);min-height:100vh;color:var(--ss-ink)}.sh-main{padding-top:32px}.sh-topbar{border-bottom:1px solid var(--ss-hairline);background:var(--ss-paper);justify-content:space-between;align-items:center;gap:16px;padding:18px 32px;display:flex}.sh-topbar-title{font-family:var(--ss-font-serif);letter-spacing:-.01em;font-size:20px;font-weight:500}.sh-topbar-badge{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);white-space:nowrap;padding:4px 12px;font-size:10px}.sh-center{background:var(--ss-paper);justify-content:center;align-items:center;min-height:100vh;padding:32px;display:flex}.sh-kicker{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 12px;font-size:11px}.sh-gate{background:var(--ss-card);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-lg);width:min(400px,100%);box-shadow:var(--ss-shadow-sm);text-align:center;padding:40px 36px}.sh-gate-title{font-family:var(--ss-font-serif);font-size:28px;font-weight:500;line-height:var(--ss-lh-snug);margin:0 0 10px}.sh-gate-text{color:var(--ss-ink-3);font-size:14px;line-height:var(--ss-lh-normal);margin:0 0 24px}.sh-gate-input{width:100%;color:var(--ss-ink);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-sm);transition:border-color var(--ss-dur-fast) var(--ss-ease);background:#ffffffe6;outline:none;padding:11px 14px;font-family:inherit;font-size:15px;display:block}.sh-gate-input:focus{border-color:var(--ss-ink)}.sh-gate-error{color:var(--ss-danger);margin:12px 0 0;font-size:13px}.sh-gate-btn{width:100%;font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-paper);background:var(--ss-ink);border-radius:var(--ss-radius-pill);cursor:pointer;transition:opacity var(--ss-dur-fast) var(--ss-ease);border:none;margin-top:20px;padding:12px 24px;font-size:12px;display:block}.sh-gate-btn:hover:not(:disabled){opacity:.85}.sh-gate-btn:disabled{opacity:.45;cursor:not-allowed}.sh-loading{color:var(--ss-ink-3);font-size:15px}.sh-themes{flex-wrap:wrap;gap:8px;margin:0 0 20px;display:flex}.sh-theme-pill{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-2);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);padding:4px 12px;font-size:10px}.sh-controls{flex-wrap:wrap;align-items:center;gap:16px 24px;margin:0 0 20px;display:flex}.sh-controls .sh-legend{margin:0}.sh-jolly{border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-md);background:var(--ss-paper-2);margin-top:24px;padding:16px 18px}.sh-jolly-title{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-2);align-items:center;gap:8px;margin:0 0 4px;font-size:11px;display:flex}.sh-jolly-count{color:var(--ss-ink-3);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);padding:0 8px;line-height:1.6}.sh-jolly-hint{color:var(--ss-ink-3);margin:0 0 12px;font-size:12px}.sh-jolly-chips{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.sh-dg-main{max-width:780px;margin:0 auto;padding:40px 24px 72px}.sh-dg-head{padding-bottom:8px}.sh-dg-topic{font-family:var(--ss-font-serif);font-size:34px;font-weight:500;line-height:var(--ss-lh-snug);letter-spacing:-.01em;margin:0 0 10px}.sh-dg-meta{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 24px;font-size:11px}.sh-dg-headline{font-family:var(--ss-font-serif);font-size:22px;font-weight:500;line-height:var(--ss-lh-snug);margin:0 0 8px}.sh-dg-dek{color:var(--ss-ink-2);font-size:16px;line-height:var(--ss-lh-normal);margin:0 0 12px}.sh-dg-intro{color:var(--ss-ink);font-size:15px;line-height:var(--ss-lh-prose);margin:0}.sh-dg-section{border-top:1px solid var(--ss-hairline);margin-top:36px;padding-top:24px}.sh-dg-title{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 14px;font-size:11px;font-weight:400}.sh-dg-text{font-size:15px;line-height:var(--ss-lh-prose);color:var(--ss-ink);word-break:break-word;white-space:pre-wrap;margin:0 0 8px}.sh-dg-text:last-child{margin-bottom:0}.sh-dg-muted{color:var(--ss-ink-3)}.sh-dg-bullets{margin:0;padding-left:20px}.sh-dg-bullets li{font-size:15px;line-height:var(--ss-lh-prose);word-break:break-word;margin-bottom:6px}.sh-dg-bullets li:last-child{margin-bottom:0}.sh-dg-field-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin-bottom:2px;font-size:10px;display:block}.sh-dg-cards{gap:12px;display:grid}.sh-dg-cards--two{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.sh-dg-card{background:var(--ss-card);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);padding:16px 18px}.sh-dg-card-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.sh-dg-card-title{font-family:var(--ss-font-serif);font-size:17px;font-weight:500;line-height:var(--ss-lh-snug);margin:0 0 6px}.sh-dg-severity{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);border:1px solid var(--ss-hairline-2);border-radius:var(--ss-radius-pill);white-space:nowrap;padding:2px 10px;font-size:10px}.sh-dg-severity--high{color:var(--ss-danger);border-color:var(--ss-danger)}.sh-dg-voice-source{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin:0 0 8px;font-size:11px}.sh-dg-stats{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin-bottom:12px;display:grid}.sh-dg-stat{background:var(--ss-card);border:1px solid var(--ss-hairline);border-radius:var(--ss-radius-md);text-align:center;padding:14px 16px}.sh-dg-stat-num{font-family:var(--ss-font-serif);font-size:26px;font-weight:500;line-height:1.2;display:block}.sh-dg-stat-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin-top:4px;font-size:10px;display:block}.sh-dg-sentiment{margin-bottom:0}.sh-dg-bars{gap:8px;display:grid}.sh-dg-bar-row{grid-template-columns:minmax(90px,180px) 1fr auto;align-items:center;gap:12px;display:grid}.sh-dg-bar-name{color:var(--ss-ink);word-break:break-word;font-size:14px}.sh-dg-bar-track{background:var(--ss-paper-2);border-radius:var(--ss-radius-pill);height:6px;display:block;overflow:hidden}.sh-dg-bar-fill{background:var(--ss-ink);border-radius:var(--ss-radius-pill);height:100%;display:block}.sh-dg-bar-count{font-family:var(--ss-font-mono);color:var(--ss-ink-3);font-size:11px}.sh-dg-pills{margin-bottom:12px}.sh-dg-pills:last-child{margin-bottom:0}.sh-dg-timeline{gap:10px;display:grid}.sh-dg-timeline-row{grid-template-columns:130px 1fr;align-items:baseline;gap:14px;display:grid}.sh-dg-timeline-date{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);font-size:11px}.sh-dg-question{font-family:var(--ss-font-serif);font-size:19px;font-weight:500;line-height:var(--ss-lh-snug);margin:0 0 10px}.sh-dg-cta{border:1px dashed var(--ss-hairline-2);border-radius:var(--ss-radius-md);background:var(--ss-paper-2);padding:16px 18px}.sh-dg-empty{border-top:1px solid var(--ss-hairline);color:var(--ss-ink-3);margin-top:36px;padding-top:24px}@media (width<=560px){.sh-dg-topic{font-size:27px}.sh-dg-timeline-row{grid-template-columns:1fr;gap:2px}.sh-dg-bar-row{grid-template-columns:minmax(80px,120px) 1fr auto}}.sh-detail-field{margin-bottom:18px}.sh-detail-label{font-family:var(--ss-font-mono);letter-spacing:var(--ss-track-mono);text-transform:uppercase;color:var(--ss-ink-3);margin-bottom:6px;font-size:10px;display:block}.sh-detail-value{font-size:14px;line-height:var(--ss-lh-prose);color:var(--ss-ink);word-break:break-word;margin:0}.sh-detail-value--pre{white-space:pre-wrap}.sh-detail-value--empty{color:var(--ss-ink-4);font-style:italic}
