:root{--color-primary:#0b7a54;--color-primary-dark:#086344;--color-primary-light:#e6f4ee;--color-primary-ring:#0b7a5438;--color-bg:#f4f6f5;--color-card:#fff;--color-border:#e2e8e5;--color-border-strong:#cdd6d2;--color-text:#0f1d19;--color-text-muted:#55655f;--color-text-faint:#8a9892;--color-hot:#b45f06;--color-info:#1d5fa8;--color-danger:#b3322b;--color-success:#0b7a54;--color-warning:#a8630a;--color-hot-bg:#fdf1e1;--color-info-bg:#e8f1fb;--color-danger-bg:#fcecea;--color-success-bg:#e6f4ee;--color-neutral-bg:#edf0ee;--color-band-hot:#0b7a54;--color-band-high:#b45f06;--color-band-review:#55655f;--color-band-archive:#b3322b;--sidebar-bg:#0e1c17;--sidebar-text:#a9bab3;--sidebar-text-active:#fff;--sidebar-hover:#ffffff0f;--sidebar-active:#ffffff1a;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--shadow-card:0 1px 2px #0f1d190d, 0 1px 3px #0f1d190a;--shadow-hover:0 4px 14px #0f1d1917;--shadow-elevated:0 12px 32px #0f1d192e;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font-sans:"Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Roboto, Helvetica, Arial, sans-serif;--page-max:1180px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:14px;line-height:1.5}h1,h2,h3,p{margin:0}button,input,select{font-family:inherit;font-size:inherit}button{cursor:pointer}a{color:var(--color-primary)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.page-body{max-width:var(--page-max);padding:var(--space-5) var(--space-6) 64px;margin:0 auto}@media (width<=640px){.page-body{padding:var(--space-4) var(--space-4) 48px}}.btn{border-radius:var(--radius-sm);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 16px;font-size:14px;font-weight:600;line-height:1;text-decoration:none;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-card);border-color:var(--color-border-strong);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-text-faint)}.btn-ghost{color:var(--color-text-muted);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-neutral-bg);color:var(--color-text)}.btn-danger{background:var(--color-card);color:var(--color-danger);border-color:#e4b5b1}.btn-danger:hover:not(:disabled){background:var(--color-danger-bg)}.btn-success{background:var(--color-card);color:var(--color-success);border-color:#9fd2bc}.btn-success:hover:not(:disabled){background:var(--color-success-bg)}.btn-sm{min-height:34px;padding:0 12px;font-size:13px}.btn-block{width:100%}.card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.card-interactive{cursor:pointer;transition:box-shadow .15s,border-color .15s,transform .15s}.card-interactive:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-hover)}.card-interactive:focus-visible{outline-offset:0}.badge{border-radius:var(--radius-pill);white-space:nowrap;background:var(--color-neutral-bg);color:var(--color-text-muted);align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:600;line-height:1.4;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.badge-plain:before{display:none}.badge-hot{background:var(--color-success-bg);color:var(--color-band-hot)}.badge-high{background:var(--color-hot-bg);color:var(--color-band-high)}.badge-review{background:var(--color-neutral-bg);color:var(--color-band-review)}.badge-archive{background:var(--color-danger-bg);color:var(--color-band-archive)}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.chip{border-radius:var(--radius-sm);background:var(--color-neutral-bg);color:var(--color-text-muted);align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.chip-warn{background:var(--color-hot-bg);color:var(--color-warning)}.score{--score-color:var(--color-text-muted);width:44px;height:44px;color:var(--score-color);background:conic-gradient(var(--score-color) calc(var(--score-pct,0) * 1%), var(--color-neutral-bg) 0);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid;position:relative}.score:after{content:"";background:var(--color-card);border-radius:50%;position:absolute;inset:4px}.score>span{z-index:1;position:relative}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field label{color:var(--color-text-muted);font-size:12px;font-weight:600}.input,.select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-card);width:100%;min-height:40px;color:var(--color-text);padding:0 12px;transition:border-color .15s,box-shadow .15s}.input:hover,.select:hover{border-color:var(--color-text-faint)}.input:focus,.select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-ring);outline:none}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#e9eeec 25%,#f4f7f6 37%,#e9eeec 63%) 0 0/800px 100%;animation:1.3s linear infinite shimmer}.state-box{text-align:center;border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-card);color:var(--color-text-muted);flex-direction:column;align-items:center;gap:8px;padding:48px 24px;display:flex}.state-box-icon{background:var(--color-neutral-bg);width:44px;height:44px;color:var(--color-text-faint);border-radius:50%;place-items:center;margin-bottom:4px;display:grid}.state-box-title{color:var(--color-text);font-size:15px;font-weight:600}.state-box-text{max-width:380px;font-size:13px}.state-box.is-error{background:var(--color-danger-bg);border-style:solid;border-color:#e8b4ac}.state-box.is-error .state-box-icon{color:var(--color-danger);background:#f6d4d0}.alert{border-radius:var(--radius-sm);margin-bottom:var(--space-4);justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex}.alert-error{background:var(--color-danger-bg);color:#8a2c1f;border:1px solid #e8b4ac}.alert-success{background:var(--color-success-bg);color:#07553a;border:1px solid #b4dccb}.alert button{color:inherit;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.toast{z-index:60;border-radius:var(--radius-sm);color:#fff;max-width:calc(100vw - 48px);box-shadow:var(--shadow-elevated);background:#0e1c17;padding:12px 16px;font-size:13px;font-weight:500;animation:.2s ease-out toast-in;position:fixed;bottom:24px;right:24px}.toast.is-error{background:#8a2c1f}.dialog-backdrop{z-index:80;background:#0a141080;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{border-radius:var(--radius-lg);background:var(--color-card);width:100%;max-width:420px;box-shadow:var(--shadow-elevated);padding:24px}.dialog-title{margin-bottom:6px;font-size:17px;font-weight:700}.dialog-text{color:var(--color-text-muted);margin-bottom:20px}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.login-page{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;display:grid}.login-hero{background:radial-gradient(circle at 20% 15%, #2ec69347, transparent 45%), radial-gradient(circle at 85% 85%, #12a57438, transparent 40%), var(--sidebar-bg);color:#fff;align-items:center;padding:48px;display:flex}.login-hero-inner{max-width:460px}.login-logo{color:#fff;background:linear-gradient(135deg,#12a574,#0b7a54);border-radius:12px;place-items:center;width:48px;height:48px;margin-bottom:28px;font-size:17px;font-weight:700;display:grid}.login-hero-title{letter-spacing:-.02em;font-size:34px;font-weight:700;line-height:1.2}.login-hero-text{color:#b8c9c2;margin-top:16px;font-size:16px;line-height:1.6}.login-panel{background:var(--color-card);place-items:center;padding:32px 24px;display:grid}.login-card{width:100%;max-width:380px}.login-logo.mobile-only{margin-bottom:20px;display:none}.login-title{letter-spacing:-.02em;font-size:26px;font-weight:700}.login-subtitle{color:var(--color-text-muted);margin:6px 0 28px}.login-error{border-radius:var(--radius-sm);background:var(--color-danger-bg);color:#8a2c1f;border:1px solid #e8b4ac;margin-bottom:16px;padding:10px 14px;font-size:13px}.login-field{margin-bottom:16px}.login-password{position:relative}.login-password .input{padding-right:64px}.login-toggle{color:var(--color-text-muted);background:0 0;border:none;border-radius:6px;padding:6px 10px;font-size:12px;font-weight:600;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.login-toggle:hover{color:var(--color-primary);background:var(--color-primary-light)}.login-submit{min-height:44px;margin-top:8px}@media (width<=860px){.login-page{grid-template-columns:1fr}.login-hero{display:none}.login-panel{background:var(--color-bg)}.login-card{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:28px 24px}.login-logo.mobile-only{display:grid}}.page-header{background:var(--color-card);border-bottom:1px solid var(--color-border)}.page-header-inner{max-width:var(--page-max);padding:22px var(--space-6);justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin:0 auto;display:flex}.page-header-title{letter-spacing:-.01em;font-size:22px;font-weight:700;line-height:1.25}.page-header-subtitle{color:var(--color-text-muted);margin-top:4px;font-size:14px}.page-header-back{color:var(--color-text-muted);align-items:center;gap:6px;margin-bottom:8px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.page-header-back:hover{color:var(--color-primary)}.page-header-actions{flex-shrink:0;gap:8px;display:flex}@media (width<=640px){.page-header-inner{padding:16px var(--space-4);flex-direction:column;align-items:stretch}.page-header-title{font-size:20px}}.dash-stats{gap:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.stat-card{--tone:var(--color-primary);--tone-bg:var(--color-primary-light);text-align:left;font:inherit;color:inherit;flex-direction:column;align-items:flex-start;gap:2px;padding:18px;display:flex}.stat-card.tone-hot{--tone:var(--color-hot);--tone-bg:var(--color-hot-bg)}.stat-card.tone-neutral{--tone:var(--color-text-muted);--tone-bg:var(--color-neutral-bg)}.stat-card.tone-info{--tone:var(--color-info);--tone-bg:var(--color-info-bg)}.stat-card-icon{background:var(--tone-bg);width:38px;height:38px;color:var(--tone);border-radius:10px;place-items:center;margin-bottom:12px;display:grid}.stat-card-value{letter-spacing:-.02em;color:var(--color-text);font-size:30px;font-weight:700;line-height:1.1}.stat-card-label{color:var(--color-text);margin-top:4px;font-size:14px;font-weight:600}.stat-card-hint{color:var(--color-text-muted);font-size:12px}.dash-grid{gap:var(--space-4);grid-template-columns:minmax(280px,1fr) minmax(0,2fr);align-items:start;display:grid}.dash-panel{padding:20px}.dash-panel-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.dash-panel-title{font-size:16px;font-weight:700}.dash-panel-sub{color:var(--color-text-muted);margin:2px 0 16px;font-size:13px}.dash-fresh-list{gap:6px;display:grid}.fresh-row{border-radius:var(--radius-sm);text-align:left;width:100%;color:inherit;background:0 0;border:none;grid-template-columns:92px 1fr 36px;align-items:center;gap:12px;padding:10px 8px;transition:background .15s;display:grid}.fresh-row:hover{background:var(--color-bg)}.fresh-label{color:var(--color-text-muted);font-size:13px;font-weight:500}.fresh-track{border-radius:var(--radius-pill);background:var(--color-neutral-bg);height:8px;overflow:hidden}.fresh-fill{border-radius:var(--radius-pill);background:var(--color-primary);min-width:2px;height:100%;transition:width .4s;display:block}.fresh-value{text-align:right;font-size:14px;font-weight:700}.dash-latest-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.dash-latest-item{border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-faint);align-items:center;gap:14px;padding:10px 8px;transition:background .15s;display:flex}.dash-latest-item:hover{background:var(--color-bg);color:var(--color-primary)}.dash-latest-body{flex:1;min-width:0}.dash-latest-title{color:var(--color-text);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:600;display:-webkit-box;overflow:hidden}.dash-latest-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;font-size:12px;display:flex}@media (width<=1000px){.dash-stats{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}}@media (width<=560px){.dash-stats{gap:var(--space-3)}.stat-card{padding:14px}.stat-card-icon{margin-bottom:8px}.stat-card-value{font-size:26px}.stat-card-hint{display:none}}@media (width<=320px){.dash-stats{grid-template-columns:1fr}}.pipeline-wrap{padding:var(--space-5) var(--space-6) 48px}.pipeline-board{gap:var(--space-4);padding-bottom:var(--space-3);grid-auto-columns:minmax(260px,1fr);grid-auto-flow:column;align-items:start;display:grid;overflow-x:auto}.pipeline-column{--tone:var(--color-text-muted);border-radius:var(--radius-md);background:#eaeeec;min-width:0;padding:8px}.pipeline-column.tone-warn{--tone:var(--color-hot)}.pipeline-column.tone-info{--tone:var(--color-info)}.pipeline-column.tone-won{--tone:var(--color-success)}.pipeline-column.tone-lost{--tone:var(--color-danger)}.pipeline-column-header{justify-content:space-between;align-items:center;gap:8px;padding:8px 8px 10px;display:flex}.pipeline-column-name{color:var(--color-text);align-items:center;gap:8px;font-size:13px;font-weight:700;display:inline-flex}.pipeline-column-name:before{content:"";background:var(--tone);border-radius:50%;width:8px;height:8px}.pipeline-column-count{border-radius:var(--radius-pill);background:var(--color-card);text-align:center;min-width:26px;color:var(--color-text-muted);padding:1px 8px;font-size:12px;font-weight:700}.pipeline-column-body{gap:8px;max-height:calc(100vh - 230px);padding:2px;display:grid;overflow-y:auto}.pipeline-card{padding:12px}.pipeline-card-title{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.pipeline-card-meta{justify-content:space-between;align-items:center;gap:8px;margin-top:10px;display:flex}.pipeline-card-score{color:var(--color-text-muted);font-size:13px;font-weight:700}.pipeline-empty{text-align:center;color:var(--color-text-faint);padding:24px 8px;font-size:13px}@media (width<=640px){.pipeline-wrap{padding:var(--space-4) var(--space-4) 48px}.pipeline-board{grid-auto-columns:82%}}.lead-layout{gap:var(--space-4);grid-template-columns:minmax(0,1fr) 320px;align-items:start;display:grid}.lead-main,.lead-side{gap:var(--space-4);min-width:0;display:grid}.lead-side{top:var(--space-4);position:sticky}.lead-hero{align-items:center;gap:18px;padding:22px;display:flex}.lead-hero .score{width:64px;height:64px;font-size:20px}.lead-hero .score:after{inset:6px}.lead-title{letter-spacing:-.01em;font-size:20px;font-weight:700;line-height:1.35}.lead-badges{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.lead-section{padding:20px}.lead-section-title{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:14px;font-size:13px;font-weight:700}.factor-list{gap:14px;display:grid}.factor-row{grid-template-columns:140px 1fr 48px;align-items:center;gap:14px;display:grid}.factor-label{font-size:13px;font-weight:500}.factor-bar-track{border-radius:var(--radius-pill);background:var(--color-neutral-bg);height:8px;overflow:hidden}.factor-bar-fill{border-radius:var(--radius-pill);background:var(--color-primary);height:100%;transition:width .4s}.factor-value{text-align:right;font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.info-grid{margin:0;display:grid}.info-row{border-bottom:1px solid var(--color-border);grid-template-columns:140px minmax(0,1fr);gap:14px;padding:11px 0;display:grid}.info-row:first-child{padding-top:0}.info-row:last-child{border-bottom:none;padding-bottom:0}.info-row-label{color:var(--color-text-muted)}.info-row-value{word-break:break-word;margin:0;font-weight:500}.quote-box{border-left:3px solid var(--color-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-primary-light);margin:16px 0 0;padding:14px 16px;font-style:italic;line-height:1.6;display:block}.quote-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-primary-dark);margin-bottom:6px;font-size:11px;font-style:normal;font-weight:700;display:block}.reasons-box{flex-wrap:wrap;gap:6px;margin-top:14px;display:flex}.owner-row{align-items:center;gap:12px;margin-bottom:14px;display:flex}.owner-avatar{background:var(--color-neutral-bg);width:40px;height:40px;color:var(--color-text-muted);border-radius:50%;place-items:center;display:grid}.owner-name{font-weight:600}.owner-sub{color:var(--color-text-muted);font-size:12px}.action-stack{gap:8px;display:grid}@media (width<=1000px){.lead-layout{grid-template-columns:1fr}.lead-side{position:static}}@media (width<=560px){.factor-row{grid-template-columns:1fr 44px;row-gap:6px}.factor-label{grid-column:1/-1}.info-row{grid-template-columns:1fr;gap:2px}.lead-hero{padding:16px}}.source-summary{margin-bottom:var(--space-4);flex-wrap:wrap;gap:10px;display:flex}.source-summary-item{border-radius:var(--radius-pill);background:var(--color-card);border:1px solid var(--color-border);color:var(--color-text-muted);padding:6px 14px;font-size:13px}.source-summary-item strong{font-weight:700}.source-summary-item.ok strong{color:var(--color-success)}.source-summary-item.error strong{color:var(--color-danger)}.source-summary-item.off strong{color:var(--color-hot)}.source-list{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));margin:0;padding:0;list-style:none;display:grid}.source-card{--accent:var(--color-success);border-left:4px solid var(--accent);padding:18px}.source-card.kind-error{--accent:var(--color-danger)}.source-card.kind-off{--accent:var(--color-border-strong)}.source-card-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.source-name{font-size:16px;font-weight:700}.source-meta{color:var(--color-text-muted);margin-top:2px;font-size:12px}.source-status{border-radius:var(--radius-pill);flex-shrink:0;padding:3px 10px;font-size:12px;font-weight:600}.source-status.ok{background:var(--color-success-bg);color:var(--color-success)}.source-status.error{background:var(--color-danger-bg);color:var(--color-danger)}.source-status.off{background:var(--color-hot-bg);color:var(--color-hot)}.source-last-run{color:var(--color-text-muted);margin-top:14px;font-size:13px}.source-last-run strong{color:var(--color-text);font-weight:600}.source-last-run-exact{color:var(--color-text-faint);font-size:12px}.source-error{border-radius:var(--radius-sm);background:var(--color-danger-bg);color:#7a271b;border:1px solid #efc4be;margin-top:12px;padding:12px 14px;font-size:13px;line-height:1.5}.source-error-headline{font-weight:600}.source-error-hint{margin-top:6px}.source-error-toggle{color:inherit;background:0 0;border:none;margin-top:8px;padding:0;font-size:12px;font-weight:600;text-decoration:underline}.source-error-details{white-space:pre-wrap;word-break:break-all;background:#ffffffa6;border-radius:6px;max-height:180px;margin:8px 0 0;padding:10px;font-family:ui-monospace,Consolas,monospace;font-size:11px;line-height:1.45;overflow:auto}@media (width<=420px){.source-list{grid-template-columns:1fr}}.settings-body{gap:var(--space-4);max-width:760px;margin:0;display:grid}.settings-card{padding:22px}.settings-profile{border-bottom:1px solid var(--color-border);align-items:center;gap:16px;margin-bottom:4px;padding-bottom:18px;display:flex}.settings-avatar{background:var(--color-primary-light);width:56px;height:56px;color:var(--color-primary);border-radius:50%;place-items:center;font-size:18px;font-weight:700;display:grid}.settings-name{margin-bottom:4px;font-size:18px;font-weight:700}.settings-list{margin:0}.settings-row{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:16px;padding:14px 0;display:flex}.settings-row:last-child{border-bottom:none;padding-bottom:0}.settings-row dt{color:var(--color-text-muted)}.settings-row dd{text-align:right;word-break:break-all;margin:0;font-weight:600}.settings-section-title{font-size:16px;font-weight:700}.settings-section-text{color:var(--color-text-muted);margin:4px 0 16px}.queue-filters{align-items:end;gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(5,minmax(0,1fr)) auto;padding:16px;display:grid}.queue-clear{align-self:end}.queue-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.queue-item{align-items:center;gap:16px;padding:14px 16px;display:flex}.queue-item-body{flex:1;min-width:0}.queue-item-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.queue-item-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px;font-size:12px;display:flex}.queue-item-arrow{color:var(--color-text-faint);place-items:center;transition:transform .15s,color .15s;display:grid}.queue-item:hover .queue-item-arrow{color:var(--color-primary);transform:translate(2px)}.queue-more{margin-top:var(--space-5);justify-content:center;display:flex}@media (width<=1000px){.queue-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.queue-clear{grid-column:span 1}}@media (width<=560px){.queue-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.queue-item{gap:12px;padding:12px}.queue-item-arrow{display:none}}.review-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.review-card{align-items:flex-start;gap:16px;padding:18px;display:flex}.review-card-info{flex:1;min-width:0}.review-card-title{text-align:left;color:var(--color-text);background:0 0;border:none;padding:0;font-size:15px;font-weight:600;line-height:1.4;display:block}.review-card-title:hover{color:var(--color-primary);text-decoration:underline}.review-card-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;font-size:12px;display:flex}.review-block{gap:6px;margin-top:14px;display:grid}.review-block-label{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-faint);font-size:11px;font-weight:700}.review-chip-row{flex-wrap:wrap;gap:6px;display:flex}.review-intent-chip{border-radius:var(--radius-pill);border:1px solid var(--color-border);color:var(--color-text-faint);padding:4px 10px;font-size:12px}.review-intent-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.review-card-actions{flex-shrink:0;gap:8px;min-width:118px;display:grid}@media (width<=720px){.review-card{flex-wrap:wrap}.review-card-info{flex-basis:calc(100% - 64px)}.review-card-actions{grid-template-columns:1fr 1fr;width:100%}}.app-layout{min-height:100vh;display:flex}.app-sidebar{background:var(--sidebar-bg);width:256px;color:var(--sidebar-text);flex-direction:column;flex-shrink:0;height:100vh;padding:20px 14px 16px;display:flex;position:sticky;top:0}.app-sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;margin-bottom:8px;padding:4px 8px 22px;display:flex}.app-brand-logo{color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,#12a574,#0b7a54);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:14px;font-weight:700;display:flex}.app-brand-logo.small{border-radius:8px;width:30px;height:30px;font-size:12px}.app-sidebar-title{color:#fff;font-size:15px;font-weight:700;line-height:1.25}.app-sidebar-subtitle{color:var(--sidebar-text);opacity:.8;font-size:11px}.app-sidebar-nav{flex-direction:column;flex:1;gap:2px;padding-top:8px;display:flex;overflow-y:auto}.app-sidebar-link{border-radius:var(--radius-sm);color:var(--sidebar-text);align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.app-sidebar-link:hover{background:var(--sidebar-hover);color:#fff}.app-sidebar-link.active{background:var(--sidebar-active);color:var(--sidebar-text-active);font-weight:600;box-shadow:inset 3px 0 #2ec693}.app-sidebar-link.active svg{color:#2ec693}.app-sidebar-footer{border-top:1px solid #ffffff14;gap:8px;padding-top:14px;display:grid}.app-user{align-items:center;gap:10px;padding:4px 8px;display:flex}.app-user-avatar{color:#fff;background:#ffffff1f;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:12px;font-weight:700;display:grid}.app-user-text{min-width:0}.app-user-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.app-user-role{opacity:.75;font-size:11px}.app-sidebar-logout{border-radius:var(--radius-sm);color:var(--sidebar-text);text-align:left;background:0 0;border:none;align-items:center;gap:12px;padding:10px 12px;font-size:14px;font-weight:500;transition:background .15s,color .15s;display:flex}.app-sidebar-logout:hover{color:#ffb4ad;background:#ff5a5024}.app-main{background:var(--color-bg);flex:1;min-width:0}.app-topbar,.app-sidebar-close,.app-scrim{display:none}@media (width<=860px){.app-layout{flex-direction:column}.app-topbar{background:var(--sidebar-bg);color:#fff;z-index:30;align-items:center;gap:10px;height:56px;padding:0 12px;display:flex;position:sticky;top:0}.app-topbar-title{font-size:15px;font-weight:700}.app-topbar-menu{color:#fff;border-radius:var(--radius-sm);background:0 0;border:none;place-items:center;width:40px;height:40px;display:grid}.app-topbar-menu:hover{background:var(--sidebar-hover)}.app-sidebar{z-index:50;width:280px;max-width:86vw;transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.app-sidebar.open{box-shadow:var(--shadow-elevated);transform:translate(0)}.app-sidebar-close{width:34px;height:34px;color:var(--sidebar-text);border-radius:var(--radius-sm);background:0 0;border:none;place-items:center;margin-left:auto;display:grid}.app-scrim{z-index:40;background:#0a141080;display:block;position:fixed;inset:0}}
