:root{--primary: #1a73e8;--primary-hover: #1765cc;--primary-container: #e8f0fe;--on-primary: #ffffff;--on-primary-container: #0b57d0;--success: #1e8e3e;--success-container: #e6f4ea;--on-success-container: #0d652d;--warning: #e37400;--warning-container: #fef7e0;--on-warning-container: #b06000;--danger: #d93025;--danger-hover: #c5221f;--danger-container: #fce8e6;--on-danger-container: #b3261e;--info: #7b1fa2;--info-container: #f3e5f5;--on-info-container: #6a1b9a;--chart-1: #1a73e8;--chart-2: #e37400;--chart-3: #7b1fa2;--chart-4: #1e8e3e;--bg: #f6f8fc;--surface: #ffffff;--surface-2: #f1f3f4;--surface-3: #e8eaed;--border: #dadce0;--border-strong: #bdc1c6;--text: #1f1f1f;--text-2: #444746;--muted: #5f6368;--e1: 0 1px 2px rgba(60,64,67,.1), 0 1px 3px 1px rgba(60,64,67,.06);--e2: 0 1px 2px rgba(60,64,67,.12), 0 2px 6px 2px rgba(60,64,67,.08);--e3: 0 4px 8px 3px rgba(60,64,67,.1), 0 1px 3px rgba(60,64,67,.14);--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-full: 999px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--topbar-h: 60px;--font: "Roboto", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-xs: 12px;--fs-sm: 13px;--fs-md: 14.5px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 24px;--fs-3xl: 30px;font-family:var(--font);color-scheme:light}:root[data-theme=dark]{--primary: #8ab4f8;--primary-hover: #aecbfa;--primary-container: #1f3050;--on-primary: #062e6f;--on-primary-container: #d3e3fd;--success: #81c995;--success-container: #1b3423;--on-success-container: #a8dab5;--warning: #fdd663;--warning-container: #372f1a;--on-warning-container: #fde293;--danger: #f28b82;--danger-hover: #f6aea9;--danger-container: #3c2320;--on-danger-container: #f9c0bc;--info: #d7aefb;--info-container: #33244a;--on-info-container: #e9d2fd;--chart-1: #4285f4;--chart-2: #dd6c00;--chart-3: #a142f4;--chart-4: #34a853;--bg: #131314;--surface: #1e1f20;--surface-2: #282a2c;--surface-3: #313335;--border: #3c4043;--border-strong: #5f6368;--text: #e3e3e3;--text-2: #c4c7c5;--muted: #9aa0a6;--e1: 0 1px 2px rgba(0,0,0,.3), 0 1px 3px 1px rgba(0,0,0,.15);--e2: 0 1px 2px rgba(0,0,0,.3), 0 2px 6px 2px rgba(0,0,0,.15);--e3: 0 4px 8px 3px rgba(0,0,0,.15), 0 1px 3px rgba(0,0,0,.3);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark}}*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--text);font-size:var(--fs-md);line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%}a{color:var(--primary);text-decoration:none;font-weight:500}a:hover{text-decoration:underline}h2{font-size:var(--fs-2xl);font-weight:400;margin:0 0 var(--sp-5);letter-spacing:-.2px}h2 .muted{font-size:var(--fs-lg)}strong{font-weight:500;font-size:var(--fs-lg)}code{background:var(--surface-2);padding:2px 6px;border-radius:6px;font-size:.9em;font-family:Roboto Mono,ui-monospace,monospace}::view-transition-old(root){animation:fade-out .35s ease both}::view-transition-new(root){animation:fade-in .35s ease both}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{0%{opacity:0}}.theme-anim,.theme-anim *,.theme-anim *:before,.theme-anim *:after{transition:background-color .35s ease,color .35s ease,border-color .35s ease,fill .35s ease,box-shadow .35s ease!important}.appbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:var(--sp-4);height:var(--topbar-h);padding:0 var(--sp-6);background:var(--surface);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:500;white-space:nowrap}.spacer{flex:1}.body{display:flex;align-items:stretch;min-height:calc(100dvh - var(--topbar-h))}.sidebar{width:248px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:var(--sp-4) var(--sp-3)}.sidebar nav{display:flex;flex-direction:column;gap:2px;position:sticky;top:calc(var(--topbar-h) + var(--sp-4))}.sidebar nav a{display:flex;align-items:center;padding:11px 16px;border-radius:var(--r-full);color:var(--text-2);font-size:var(--fs-md);font-weight:500;transition:background .15s,color .15s}.sidebar nav a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.sidebar nav a.active{background:var(--primary-container);color:var(--on-primary-container)}.nav-ico{width:20px;margin-right:14px;font-size:15px;opacity:.9}.nav-group{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--sp-5)}.nav-group-title{font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);padding:var(--sp-2) 16px var(--sp-1)}.content{flex:1;padding:var(--sp-6) var(--sp-8);min-width:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5);margin-bottom:var(--sp-4);box-shadow:var(--e1);overflow:visible}.section-head{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-3)}button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--primary);color:var(--on-primary);border:0;border-radius:var(--r-full);padding:10px 22px;min-height:40px;font-family:inherit;font-size:var(--fs-md);font-weight:500;cursor:pointer;touch-action:manipulation;transition:background .15s,box-shadow .15s,transform .06s}button:hover{background:var(--primary-hover);box-shadow:var(--e1)}button:active{transform:scale(.97)}button:disabled{opacity:.45;cursor:default;box-shadow:none;transform:none}button.ghost{background:transparent;border:1px solid var(--border-strong);color:var(--primary)}button.ghost:hover{background:var(--primary-container);box-shadow:none}button.tonal{background:var(--primary-container);color:var(--on-primary-container)}button.tonal:hover{background:var(--primary-container);box-shadow:var(--e1)}button.ok{background:var(--success);color:#fff}button.ok:hover{background:var(--success);filter:brightness(1.08)}button.danger{background:var(--danger);color:#fff}button.danger:hover{background:var(--danger-hover)}:root[data-theme=dark] button.ok,:root[data-theme=dark] button.danger{color:#202124}button.sm{min-height:34px;padding:6px 16px;font-size:var(--fs-sm)}button.icon{min-height:36px;width:36px;padding:0;border-radius:50%;background:transparent;color:var(--muted);border:0}button.icon:hover{background:var(--surface-2);color:var(--text);box-shadow:none}button.icon.danger{background:transparent;color:var(--danger)}button.icon.danger:hover{background:var(--danger-container);color:var(--danger)}button.icon.success{background:transparent;color:var(--success)}button.icon.success:hover{background:var(--success-container)}.icon-btn{background:transparent;border:1px solid var(--border);color:var(--text-2);width:42px;height:42px;min-height:42px;padding:0;border-radius:50%;font-size:16px;display:flex;align-items:center;justify-content:center;transition:transform .3s ease,background .15s}.icon-btn:hover{background:var(--surface-2);color:var(--text);box-shadow:none}.icon-btn:active{transform:rotate(180deg) scale(.92)}label{font-size:var(--fs-sm);font-weight:500;color:var(--text-2)}.field-label{display:block;font-size:var(--fs-sm);font-weight:500;color:var(--muted);margin-bottom:6px}input,textarea{background:var(--surface);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--r-sm);padding:11px 14px;font-size:var(--fs-lg);min-height:44px;width:100%;max-width:100%;font-family:inherit;transition:border-color .15s,box-shadow .15s}input::placeholder{color:var(--muted)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-container)}input:disabled{background:var(--surface-2);color:var(--muted)}input[type=checkbox]{width:auto;min-height:auto;accent-color:var(--primary)}.select{position:relative}.select-btn{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);width:100%;min-height:44px;padding:11px 14px;background:var(--surface);border:1px solid var(--border-strong);color:var(--text);border-radius:var(--r-sm);font-size:var(--fs-lg);font-weight:400;text-align:left}.select-btn:hover{background:var(--surface);box-shadow:none;border-color:var(--primary)}.select-btn:disabled{opacity:.5}.select-btn .caret{color:var(--muted);font-size:12px;flex-shrink:0}.select-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--e3);padding:var(--sp-2);max-height:300px;overflow-y:auto}.select-opt{padding:11px 14px;border-radius:var(--r-sm);font-size:var(--fs-md);cursor:pointer}.select-opt:hover{background:var(--surface-2)}.select-opt.sel{background:var(--primary-container);color:var(--on-primary-container);font-weight:500}table{width:100%;border-collapse:collapse;table-layout:fixed}th,td{text-align:left;padding:14px 16px;border-bottom:1px solid var(--border);font-size:var(--fs-md);vertical-align:middle;overflow-wrap:anywhere}th{color:var(--muted);font-weight:600;font-size:11px;letter-spacing:.8px;text-transform:uppercase}tr:last-child td{border-bottom:0}tbody tr{transition:background .12s}tbody tr:hover{background:var(--surface-2)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:var(--r-full);font-size:var(--fs-sm);font-weight:500;background:var(--surface-2);color:var(--text-2);border:1px solid var(--border)}.chip.clickable{cursor:pointer;transition:background .15s,border-color .15s,color .15s}.chip.clickable:hover,.chip.active{background:var(--primary-container);color:var(--on-primary-container);border-color:var(--primary)}.chip.tone-info{background:var(--info-container);color:var(--on-info-container);border-color:transparent}.chip.tone-success{background:var(--success-container);color:var(--on-success-container);border-color:transparent}.chip.tone-warning{background:var(--warning-container);color:var(--on-warning-container);border-color:transparent}.badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 12px;border-radius:var(--r-full);font-size:var(--fs-sm);font-weight:600;background:var(--surface-2);color:var(--muted)}.badge.ok{background:var(--success-container);color:var(--on-success-container)}.badge.warn{background:var(--warning-container);color:var(--on-warning-container)}.badge.err{background:var(--danger-container);color:var(--on-danger-container)}.score{display:inline-flex;align-items:center;justify-content:center;min-width:46px;padding:6px 10px;border-radius:var(--r-full);font-size:var(--fs-md);font-weight:700}.score.high{background:var(--success-container);color:var(--on-success-container)}.score.mid{background:var(--warning-container);color:var(--on-warning-container)}.score.low{background:var(--surface-3);color:var(--muted)}.score.none{background:transparent;color:var(--muted);font-weight:500;font-size:var(--fs-sm);border:1px dashed var(--border-strong)}.kw-list{display:flex;flex-direction:column;gap:10px}.kw-card{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"score head actions" ". meta ." ". why .";gap:4px var(--sp-4);align-items:start;padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);transition:border-color .15s,box-shadow .15s}.kw-card:hover{border-color:var(--border-strong);box-shadow:var(--e1)}.kw-card.ignored{opacity:.5}.kw-card.added{border-left:4px solid var(--success)}.kw-score{grid-area:score;display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--r-md);flex-shrink:0}.kw-score b{font-size:21px;font-weight:700;line-height:1}.kw-score span{font-size:9px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;opacity:.8;margin-top:2px}.kw-score.high{background:var(--success-container);color:var(--on-success-container)}.kw-score.mid{background:var(--warning-container);color:var(--on-warning-container)}.kw-score.low{background:var(--surface-3);color:var(--muted)}.kw-score.none{background:transparent;border:1px dashed var(--border-strong);color:var(--muted)}.kw-head{grid-area:head;min-width:0}.kw-term{font-size:var(--fs-lg);font-weight:500;overflow-wrap:anywhere}.kw-tags{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;margin-top:5px}.kw-actions{grid-area:actions;display:flex;align-items:center;gap:var(--sp-2);flex-wrap:nowrap;flex-shrink:0}.kw-meta{grid-area:meta;display:flex;gap:var(--sp-5);flex-wrap:wrap;margin-top:6px}.metric{display:inline-flex;align-items:center;gap:7px;font-size:var(--fs-md);color:var(--text-2)}.metric .m-ico{color:var(--muted);width:15px;text-align:center}.metric b{font-weight:600;color:var(--text)}.metric.na{color:var(--muted)}.kw-why{grid-area:why;display:flex;gap:var(--sp-2);align-items:flex-start;margin-top:8px;padding:10px 14px;background:var(--surface-2);border-radius:var(--r-sm);font-size:var(--fs-md);color:var(--text-2);line-height:1.55}.kw-why .w-ico{color:var(--warning);margin-top:3px;flex-shrink:0}.tag{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:6px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.3px;background:var(--surface-2);color:var(--muted);text-transform:uppercase}.tag.intent-transactional{background:var(--success-container);color:var(--on-success-container)}.tag.intent-commercial{background:var(--primary-container);color:var(--on-primary-container)}.tag.intent-informational{background:var(--surface-3);color:var(--muted)}.tag.intent-navigational{background:var(--info-container);color:var(--on-info-container)}.view-switch{display:inline-flex;gap:0;border:1px solid var(--border-strong);border-radius:var(--r-full);overflow:hidden}.view-switch button{background:transparent;color:var(--muted);border:0;border-radius:0;padding:8px 16px;min-height:38px;font-size:var(--fs-sm);box-shadow:none}.view-switch button:hover{background:var(--surface-2);color:var(--text);box-shadow:none}.view-switch button.active{background:var(--primary-container);color:var(--on-primary-container)}.table-wrap{width:100%}.kw-table{table-layout:fixed}.kw-table td{vertical-align:middle}.kw-table th{white-space:nowrap;font-size:11px;letter-spacing:.6px}.kw-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.kw-table th.sortable:hover{color:var(--text)}.sort-ico{margin-left:6px;opacity:.3;font-size:11px}.sort-ico.on{opacity:1;color:var(--primary)}.kw-cell{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%}.kw-link{background:none;border:0;padding:0;min-height:0;border-radius:0;color:var(--text);font-size:var(--fs-md);font-weight:500;text-align:left;cursor:pointer;overflow-wrap:anywhere}.kw-link:hover{background:none;box-shadow:none;color:var(--primary);text-decoration:underline}.kw-link:active{transform:none}.kw-link:disabled{cursor:default;opacity:1;color:var(--text)}.kw-link:disabled:hover{text-decoration:none;color:var(--text)}.why-ico{color:var(--warning);font-size:15px;flex-shrink:0;display:inline-flex}.sub-meta{color:var(--muted);font-size:var(--fs-xs);margin-top:4px}tr.row-ignored{opacity:.45}.kw-table .row{flex-wrap:nowrap;gap:4px}tr.row-added>td{animation:row-added 1.6s ease}@keyframes row-added{0%{background:var(--success-container);transform:translate(-6px)}25%{background:var(--success-container);transform:none}to{background:transparent}}.kw-card.flash{animation:card-added 1.6s ease}@keyframes card-added{0%{background:var(--success-container);border-color:var(--success);transform:scale(.99)}30%{background:var(--success-container);border-color:var(--success);transform:none}to{background:var(--surface)}}.badge.nowrap{white-space:nowrap}tr.row-app{background:linear-gradient(90deg,var(--success-container) 0 3px,transparent 3px)}.cluster-panel{background:linear-gradient(135deg,var(--primary-container),var(--surface));border:1px solid var(--primary);border-radius:var(--r-lg);padding:var(--sp-5);margin-bottom:var(--sp-4);box-shadow:var(--e1);animation:cluster-in .3s cubic-bezier(.2,.8,.3,1)}@keyframes cluster-in{0%{opacity:0;transform:translateY(-10px) scale(.99)}to{opacity:1;transform:none}}.cl-head{display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap;margin-bottom:var(--sp-4)}.cl-head h3{margin:0;font-size:var(--fs-xl);font-weight:500;display:flex;align-items:center;gap:10px;color:var(--on-primary-container)}.cl-metrics{display:flex;gap:var(--sp-6);flex-wrap:wrap}.cl-metric{display:inline-flex;align-items:center;gap:10px}.cl-metric .m-ico{color:var(--primary);font-size:17px}.cl-metric b{display:block;font-size:21px;font-weight:600;line-height:1.15}.cl-metric em{display:block;font-style:normal;font-size:var(--fs-sm);color:var(--muted)}.fade-in{animation:fade-slide .25s ease}@keyframes fade-slide{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--text);color:var(--surface);padding:7px 11px;border-radius:6px;font-size:var(--fs-xs);font-weight:500;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s;z-index:90;box-shadow:var(--e2)}[data-tip]:hover:after{opacity:1}.tip-wide[data-tip]:after{white-space:normal;width:340px;text-align:left;line-height:1.5;font-weight:400;font-size:var(--fs-sm);padding:10px 13px}.row{display:flex;gap:var(--sp-3);align-items:center;flex-wrap:wrap}.filters{display:flex;gap:var(--sp-4);align-items:flex-end;flex-wrap:wrap}.filter{display:flex;flex-direction:column;gap:6px;min-width:200px;flex:1 1 220px}.muted{color:var(--muted);font-size:var(--fs-sm)}.err{color:var(--danger);font-size:var(--fs-md);word-break:break-word;margin-top:var(--sp-2)}.hint{color:var(--muted);font-size:var(--fs-sm);line-height:1.6}.empty-state{display:flex;gap:var(--sp-3);align-items:flex-start;margin-top:var(--sp-3);padding:var(--sp-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);font-size:var(--fs-md);line-height:1.6}.empty-state>svg{color:var(--warning);margin-top:3px;flex:none}.empty-state code{word-break:break-word}.link-btn{background:transparent;border:none;padding:0 0 0 var(--sp-2);color:inherit;opacity:.6;cursor:pointer;font-size:1.1em;line-height:1}.link-btn:hover{opacity:1;color:var(--danger);background:transparent}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--sp-4);margin-bottom:var(--sp-4)}.stat-card{display:flex;align-items:center;gap:var(--sp-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5);box-shadow:var(--e1)}.stat-ico{width:52px;height:52px;border-radius:50%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:19px}.stat-ico.sm{width:40px;height:40px;font-size:15px}.stat-ico.blue{background:var(--primary-container);color:var(--on-primary-container)}.stat-ico.green{background:var(--success-container);color:var(--on-success-container)}.stat-ico.orange{background:var(--warning-container);color:var(--on-warning-container)}.stat-ico.red{background:var(--danger-container);color:var(--on-danger-container)}.stat-ico.purple{background:var(--info-container);color:var(--on-info-container)}.stat-body{min-width:0}.stat-value{font-size:29px;font-weight:500;line-height:1.1;letter-spacing:-.5px}.stat-label{color:var(--muted);font-size:var(--fs-md);margin-top:3px}.stat-trend{display:flex;align-items:center;gap:5px;font-size:var(--fs-sm);margin-top:6px}.stat-trend.up{color:var(--success)}.stat-trend.down{color:var(--danger)}.grid-hero{display:grid;grid-template-columns:2fr 1fr;gap:var(--sp-4);margin-bottom:var(--sp-4)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.queue{display:flex;flex-direction:column}.queue-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) 2px;border-bottom:1px solid var(--border)}.queue-item:last-child{border-bottom:0}.queue-body{flex:1;min-width:0}.queue-title{font-size:var(--fs-md);font-weight:500;overflow-wrap:anywhere}.queue-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.queue-actions button{width:100%}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--sp-4);margin-bottom:var(--sp-5)}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-4) var(--sp-5);box-shadow:var(--e1)}.kpi-value{font-size:28px;font-weight:500;line-height:1.1}.kpi-label{color:var(--muted);font-size:var(--fs-sm);margin-top:4px}.actions-list{display:flex;flex-direction:column}.action-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-2);border-bottom:1px solid var(--border);color:inherit;text-decoration:none;border-radius:var(--r-sm)}.action-item:hover{background:var(--surface-2);text-decoration:none}.action-item:last-child{border-bottom:0}.action-body{display:flex;flex-direction:column;flex:1;min-width:0}.action-title{font-weight:500;font-size:var(--fs-md)}.action-prio{width:14px;text-align:center}.caret{color:var(--muted);font-size:13px}.bars{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-2)}.bar-row{display:grid;grid-template-columns:150px 1fr auto;gap:var(--sp-3);align-items:center}.bar-label{font-size:var(--fs-md);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{background:var(--surface-2);border-radius:var(--r-full);height:12px;overflow:hidden}.bar-fill{height:100%;background:var(--primary);border-radius:var(--r-full);transition:width .4s ease}.bar-val{font-size:var(--fs-sm);color:var(--muted);white-space:nowrap}.donut-wrap{display:flex;align-items:center;gap:var(--sp-5);flex-wrap:wrap;margin-top:var(--sp-2)}.legend{display:flex;flex-direction:column;gap:6px;font-size:var(--fs-md)}.leg{display:flex;align-items:center;gap:var(--sp-2)}.leg-dot{width:12px;height:12px;border-radius:4px;display:inline-block}.chart{margin-top:var(--sp-2)}.chart svg{display:block}.chart-panel{position:relative;padding-bottom:var(--sp-1)}.chart-panel+.chart-panel{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px dashed var(--border)}.chart-head{display:flex;align-items:baseline;gap:var(--sp-2);padding:0 var(--sp-1) 2px 2px}.chart-head .leg-dot{width:10px;height:10px;flex-shrink:0;align-self:center}.chart-name{font-size:var(--fs-sm);font-weight:500;color:var(--text-2)}.chart-cur{margin-left:auto;font-size:var(--fs-lg);font-weight:500;font-variant-numeric:tabular-nums}.chart-cur-tag{margin-left:6px;font-size:11px;font-weight:400;color:var(--muted)}.chart-cursor{pointer-events:none}.chart-tools{display:flex;align-items:center;gap:var(--sp-3);margin-top:var(--sp-2)}.chart-hint{font-size:var(--fs-sm)}.chart-tools button{margin-left:auto}.table-scroll{overflow-x:auto;margin-top:var(--sp-2)}.chart-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.chart-table th,.chart-table td{text-align:right;padding:6px var(--sp-3);border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;white-space:nowrap}.chart-table th:first-child,.chart-table td:first-child{text-align:left}.chart-table th{color:var(--muted);font-weight:500;position:sticky;top:0;background:var(--surface)}.chart-line{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .75s ease-out}.chart-line[data-drawn=true]{stroke-dashoffset:0}.chart-area{opacity:0;transition:opacity .5s ease-out .25s}.chart-area[data-drawn=true]{opacity:1}@media(prefers-reduced-motion:reduce){.chart-line,.chart-area{transition:none;stroke-dashoffset:0;opacity:1}}.usermenu{position:relative}.avatar-btn{display:flex;align-items:center;gap:var(--sp-2);background:transparent;color:var(--text);border:1px solid var(--border);border-radius:var(--r-full);padding:4px 14px 4px 4px;min-height:44px}.avatar-btn:hover{background:var(--surface-2);box-shadow:none}.avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--surface-2)}.avatar.ph{display:inline-block}.uname{font-size:var(--fs-md);font-weight:500;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown{position:absolute;right:0;top:calc(100% + 10px);min-width:260px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--e3);padding:var(--sp-2);z-index:40}.dd-head{padding:var(--sp-3);border-bottom:1px solid var(--border);margin-bottom:6px}.dd-name{font-weight:500;font-size:var(--fs-lg)}.dd-email{font-size:var(--fs-sm);word-break:break-all}.dd-item{width:100%;justify-content:flex-start;background:transparent;color:var(--text);border:0;border-radius:var(--r-sm);padding:11px 14px;font-size:var(--fs-md)}.dd-item:hover{background:var(--surface-2);box-shadow:none}.toaster{position:fixed;right:var(--sp-6);bottom:var(--sp-6);z-index:1000;display:flex;flex-direction:column;gap:10px;max-width:min(92vw,400px)}.toast{background:var(--surface);color:var(--text);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:var(--r-md);padding:14px 18px;font-size:var(--fs-md);box-shadow:var(--e3);cursor:pointer;animation:toast-in .2s ease}.toast.success{border-left-color:var(--success)}.toast.error{border-left-color:var(--danger)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.login{max-width:420px;margin:10vh auto;padding:0 var(--sp-4)}.login .card{padding:var(--sp-8)}.steps{display:flex;gap:var(--sp-2);flex-wrap:wrap;margin-bottom:var(--sp-5)}.step{display:flex;align-items:center;gap:var(--sp-2);padding:8px 16px;border-radius:var(--r-full);background:var(--surface-2);color:var(--muted);font-size:var(--fs-sm);font-weight:500}.step.active{background:var(--primary-container);color:var(--on-primary-container)}.step.done{background:var(--success-container);color:var(--on-success-container)}.step-n{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#00000014;font-size:var(--fs-xs);font-weight:700}.choice{border:2px solid var(--border);border-radius:var(--r-md);padding:var(--sp-5);cursor:pointer;flex:1 1 220px;transition:border-color .15s,background .15s}.choice:hover{border-color:var(--primary);background:var(--surface-2)}.choice.sel{border-color:var(--primary);background:var(--primary-container)}.choice-title{font-size:var(--fs-lg);font-weight:500;margin-bottom:4px}.action-detail{padding:var(--sp-2) 0}.detail-group{margin-top:var(--sp-3);padding:var(--sp-3);background:var(--surface-2);border-radius:var(--r-sm)}.detail-title{font-weight:500;font-size:var(--fs-md)}.action-json{background:var(--surface-2);padding:var(--sp-3);border-radius:var(--r-sm);font-size:var(--fs-xs);overflow-x:auto}.prompt-box{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:var(--sp-4);font-size:var(--fs-sm);white-space:pre-wrap;max-height:320px;overflow-y:auto;font-family:Roboto Mono,ui-monospace,monospace;line-height:1.6}.only-mobile{display:none!important}.backdrop{display:none}.hamburger{background:transparent;border:1px solid var(--border);color:var(--text);width:42px;height:42px;min-height:42px;padding:0;border-radius:50%;font-size:17px;align-items:center;justify-content:center}.hamburger:hover{box-shadow:none;background:var(--surface-2)}@media(max-width:768px){.only-mobile{display:flex!important}.only-desktop{display:none!important}.appbar{gap:10px;padding:0 var(--sp-3)}.brand{font-size:var(--fs-lg)}.uname{display:none}.avatar-btn{padding:4px}.sidebar{position:fixed;top:var(--topbar-h);left:0;bottom:0;height:auto;width:80%;max-width:290px;z-index:50;padding:var(--sp-3);transform:translate(-100%);transition:transform .22s ease}.sidebar.open{transform:translate(0)}.sidebar nav{position:static}.sidebar nav a{padding:14px 16px;font-size:var(--fs-lg)}.backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;top:var(--topbar-h);background:#00000080;z-index:40;opacity:0;pointer-events:none;transition:opacity .22s ease}.backdrop.open{opacity:1;pointer-events:auto}.content{padding:var(--sp-4) var(--sp-3)}h2{font-size:var(--fs-xl)}.grid-2,.grid-hero{grid-template-columns:1fr}.filter{min-width:0;flex:1 1 100%}.row>input,.row>.select{flex:1 1 100%}.bar-row{grid-template-columns:110px 1fr}.bar-val{grid-column:2;text-align:right}.queue-actions{flex-direction:row}.toaster{right:var(--sp-3);left:var(--sp-3);bottom:var(--sp-3);max-width:none}.card{overflow:visible}table,thead,tbody,tr,td{display:block;width:100%}thead{display:none}tr{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);padding:var(--sp-2) var(--sp-4);margin-bottom:var(--sp-3)}tbody tr:hover{background:var(--surface-2)}td{border:0;padding:11px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--sp-4);text-align:right}td+td{border-top:1px solid var(--border)}td:before{content:attr(data-label);color:var(--muted);font-size:var(--fs-sm);font-weight:500;text-align:left;flex-shrink:0}td[data-label=""]:before,td:not([data-label]):before{content:none}td[colspan]{justify-content:center;text-align:center}td[colspan]:before{content:none}td .chips,td .row{justify-content:flex-end}td .row{flex-wrap:nowrap;gap:6px}.kw-card{grid-template-columns:auto 1fr;grid-template-areas:"score head" "meta meta" "why why" "actions actions";gap:var(--sp-2) var(--sp-3)}.kw-actions{justify-content:flex-end;margin-top:var(--sp-2)}.kw-meta{gap:var(--sp-4)}[data-tip]:after{display:none}}
