:root{--accent: #2563eb;--accent-strong: #1d4ed8;--danger: #dc2626;--danger-deep: #b91c1c;--ink: #111827;--line: rgba(148, 163, 184, .28);--muted: #64748b;--muted-deep: #475569;--panel: rgba(255, 255, 255, .78);--panel-strong: rgba(255, 255, 255, .92);--success: #16a34a;--teal: #0f766e;--warning: #d97706;color:var(--ink);background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 18% 0%,rgba(37,99,235,.12),transparent 30%),radial-gradient(circle at 100% 8%,rgba(15,118,110,.1),transparent 28%),linear-gradient(135deg,#f8fafc,#eef6f7);margin:0}button,.button{align-items:center;background:linear-gradient(135deg,var(--ink),#334155);border:0;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font:inherit;font-weight:700;gap:8px;min-height:40px;padding:0 14px;text-decoration:none}button.secondary,.button.secondary{background:var(--panel);border:1px solid rgba(148,163,184,.42);color:var(--ink)}button.danger{background:var(--danger-deep)}input{background:var(--panel-strong);border:1px solid rgba(148,163,184,.45);border-radius:6px;font:inherit;min-height:40px;padding:8px 10px;width:100%}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--panel-strong);border:1px solid rgba(148,163,184,.45);border-radius:6px;font:inherit;min-height:40px;padding:8px 10px;width:100%}textarea{background:var(--panel-strong);border:1px solid rgba(148,163,184,.45);border-radius:6px;font:inherit;min-height:110px;padding:10px;resize:vertical;width:100%}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;transition:grid-template-columns .18s ease}.app-shell.sidebar-collapsed{grid-template-columns:84px 1fr}.sidebar{background:var(--panel);border-right:1px solid rgba(148,163,184,.22);box-shadow:12px 0 40px #0f172a0d;color:var(--ink);height:100vh;overflow:auto;padding:22px;position:sticky;top:0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.sidebar-top{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:28px}.brand{align-items:center;display:flex;gap:12px;min-width:0}.brand small{color:var(--muted);display:block;font-size:13px}.rf-logo{align-items:center;display:inline-flex;gap:10px;line-height:1;min-width:0}.rf-logo-mark{display:block;flex:0 0 auto;overflow:visible}.rf-logo-full .rf-logo-mark{width:47px}.rf-logo-compact .rf-logo-mark{width:38px}.rf-logo-mark .rf-bubble-left{stroke:#05224a;stroke-width:4.8}.rf-logo-mark .rf-bubble-right{stroke:#2a9fc0;stroke-width:4.8}.rf-wordmark{display:grid;gap:4px;min-width:0}.rf-wordmark strong{color:#05224a;display:block;font-weight:900;letter-spacing:0;white-space:nowrap}.rf-wordmark strong span{color:#2a9fc0}.rf-logo-full .rf-wordmark strong{font-size:31px}.rf-logo-compact .rf-wordmark strong{font-size:20px}.rf-logo-compact .rf-wordmark small{color:var(--muted);font-size:12px;font-weight:800}.sidebar-toggle{background:#0f172a0f;color:var(--ink);flex:0 0 auto;justify-content:center;min-height:36px;padding:0;width:36px}.sidebar-toggle:hover{background:#2563eb1a}nav{display:grid;gap:6px}nav a{align-items:center;border-radius:6px;color:var(--muted-deep);display:flex;gap:10px;padding:10px;text-decoration:none}nav a.active,nav a:hover{background:#0f172a14;color:var(--ink)}.sidebar-collapsed .sidebar{overflow:visible;padding:18px 14px;z-index:20}.sidebar-collapsed .sidebar-top{justify-content:center}.sidebar-collapsed .brand,.sidebar-collapsed nav a span{display:none}.sidebar-collapsed nav a{justify-content:center;min-height:44px;padding:0;position:relative}.sidebar-collapsed .sidebar-toggle{background:transparent}.sidebar-collapsed nav a:after{background:#0f172af0;border:1px solid rgba(255,255,255,.12);border-radius:6px;box-shadow:0 18px 46px #0f172a38;color:#fff;content:attr(data-tooltip);font-size:13px;font-weight:800;left:calc(100% + 12px);line-height:1;opacity:0;padding:10px 12px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%) translate(-4px);transition:opacity .12s ease,transform .12s ease;white-space:nowrap;z-index:30}.sidebar-collapsed nav a:before{border-bottom:6px solid transparent;border-right:6px solid rgba(15,23,42,.94);border-top:6px solid transparent;content:"";left:calc(100% + 6px);opacity:0;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%) translate(-4px);transition:opacity .12s ease,transform .12s ease;z-index:31}.sidebar-collapsed nav a:hover:after,.sidebar-collapsed nav a:focus-visible:after,.sidebar-collapsed nav a:hover:before,.sidebar-collapsed nav a:focus-visible:before{opacity:1;transform:translateY(-50%) translate(0)}.main-panel{padding:32px;min-width:0;position:relative;z-index:1}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-header span{color:var(--muted);font-size:13px;font-weight:800;text-transform:uppercase}.page-header h1{font-size:32px;letter-spacing:0;line-height:1.15;margin:4px 0 0}.header-actions,.button-row{display:flex;flex-wrap:wrap;gap:10px}.filter-control{align-items:center;display:flex;gap:10px}.filter-control span{color:var(--muted);font-size:13px;font-weight:800;text-transform:uppercase}.filter-control select{min-width:240px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.auth-loading{align-items:center;display:flex;justify-content:center;min-height:100vh}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 60px #0f172a0f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:20px}.policy-note{color:var(--muted-deep);font-size:14px;line-height:1.5;margin:0}.loading-row{align-items:center;color:var(--muted-deep);display:flex;font-weight:700;gap:10px;margin-bottom:16px}.spinner{animation:spin .8s linear infinite;border:2px solid #cbd5e1;border-top-color:var(--ink);border-radius:999px;display:inline-block;height:18px;width:18px}.spinner.light{border-color:#ffffff73;border-top-color:#fff}@keyframes spin{to{transform:rotate(360deg)}}.avatar{align-items:center;border-radius:999px;color:#fff;display:inline-flex;flex:0 0 auto;font-weight:800;height:42px;justify-content:center;width:42px;overflow:hidden}.avatar img{height:100%;object-fit:cover;width:100%}.text-link,.external-icon-link{align-items:center;background:#2563eb14;border:1px solid rgba(37,99,235,.16);border-radius:999px;color:var(--accent-strong);display:inline-flex;font-size:13px;font-weight:900;justify-self:start;line-height:1;text-decoration:none}.text-link{min-height:30px;padding:0 11px}.external-icon-link{justify-content:center;min-height:32px;padding:0;width:32px}.text-link:hover,.external-icon-link:hover{background:#2563eb21;border-color:#2563eb47}.reviewer-link{color:var(--ink);display:inline-flex;text-decoration:none}.reviewer-link strong{border-bottom:1px solid rgba(37,99,235,.26);line-height:1.2}.reviewer-link:hover strong{border-bottom-color:var(--accent);color:var(--accent-strong)}.review-meta{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;min-width:0}.reviewer-identity{align-items:center;display:flex;gap:12px;min-width:0}.reviewer-copy{display:grid;gap:5px;min-width:0}.review-detail-line{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.review-context{align-items:flex-end;display:grid;gap:6px;justify-items:end;text-align:right}.review-detail-line>span:last-child{min-width:0}.review-card.mini{background:#f8fafcd1;border:1px solid rgba(148,163,184,.24);border-radius:8px;padding:16px}.stars{color:#d79b22;display:inline-flex;gap:2px;vertical-align:middle}.review-card .stars{color:#d79b22}.alert{background:#fffbebd1;border:1px solid rgba(217,119,6,.28);border-radius:8px;color:#78350f;margin-bottom:18px;padding:14px 16px}.landing{background:radial-gradient(circle at 15% 6%,rgba(37,99,235,.14),transparent 30%),radial-gradient(circle at 90% 12%,rgba(15,118,110,.12),transparent 26%),#f8fafc;min-height:100vh}.landing-nav{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1160px;padding:20px 24px}.landing-nav>div{align-items:center;display:flex;gap:14px}.landing-nav a{color:var(--ink);font-weight:800;text-decoration:none}.landing-brand{align-items:center;display:flex;gap:0}.landing-hero{align-items:center;display:grid;gap:44px;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);margin:0 auto;max-width:1160px;min-height:calc(100vh - 190px);padding:48px 24px 34px}.landing-hero span{color:var(--accent);font-size:14px;font-weight:900;text-transform:uppercase}.landing-hero h1{font-size:clamp(42px,7vw,78px);letter-spacing:0;line-height:.96;margin:14px 0 20px;max-width:860px}.landing-hero p{color:var(--muted-deep);font-size:19px;line-height:1.55;margin:0 0 28px;max-width:720px}.product-shot{background:#ffffffb3;border:1px solid rgba(148,163,184,.32);border-radius:8px;box-shadow:0 28px 70px #0f172a29;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overflow:hidden}.shot-toolbar{align-items:center;background:#0f172adb;display:flex;gap:7px;height:42px;padding:0 14px}.shot-toolbar span{background:#dce7e1;border-radius:999px;height:10px;width:10px}.shot-body{display:grid;gap:14px;padding:20px}.shot-card{background:#f8fafceb;border-left:4px solid var(--success);border-radius:7px;padding:16px}.shot-card.urgent{border-left-color:var(--danger)}.shot-card.calm{border-left-color:var(--accent)}.shot-card strong{color:#102a2d}.shot-card p{color:#4c5c56;font-size:14px;margin:6px 0 0}.proof-grid{display:grid;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 auto;max-width:1160px;padding:24px}.proof-grid article,.landing-band{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 60px #0f172a0f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:22px}.proof-grid h2,.landing-band h2{font-size:18px;margin:12px 0 8px}.proof-grid p{color:var(--muted-deep);line-height:1.5;margin:0}.landing-band{display:grid;gap:20px;grid-template-columns:.8fr 1fr;margin:0 auto 48px;max-width:1112px}.landing-band>div{align-items:center;display:flex;gap:12px}.landing-band ul{display:grid;gap:12px;list-style:none;margin:0;padding:0}.landing-band li{align-items:center;display:flex;gap:10px}.public-demo{margin:0 auto;max-width:1180px;padding:24px}.demo-nav{margin-bottom:28px}.demo-hero{align-items:stretch;display:grid;gap:24px;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);margin-bottom:18px}.demo-hero>div:first-child{align-content:center;display:grid;gap:16px;min-height:300px}.demo-hero span,.eyebrow{color:var(--accent-strong);font-size:13px;font-weight:900;letter-spacing:0;text-transform:uppercase}.demo-hero h1{font-size:clamp(38px,5.8vw,62px);line-height:.98;margin:0;max-width:760px}.demo-hero p{color:var(--muted-deep);font-size:18px;line-height:1.6;margin:0;max-width:720px}.demo-search-panel{align-content:center;display:grid;gap:16px}.demo-search-panel label{color:var(--muted-deep);display:grid;font-size:13px;font-weight:900;gap:7px;text-transform:uppercase}.demo-limitations{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin:18px 0}.demo-limitations article{background:#ffffff9e;border:1px solid rgba(148,163,184,.24);border-radius:8px;display:flex;gap:12px;padding:16px}.demo-limitations svg{color:var(--teal);flex:0 0 auto;margin-top:2px}.demo-limitations p{color:var(--muted-deep);line-height:1.45;margin:5px 0 0}.demo-alert{margin:16px 0}.demo-results{display:grid;gap:14px;margin-top:18px}.demo-location-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.demo-location-header h2{font-size:32px;margin:4px 0 8px}.demo-location-header p,.demo-rating-row{color:var(--muted-deep);margin:0}.demo-rating-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.demo-review-list{margin-bottom:32px}.demo-review-text{color:var(--muted-deep);line-height:1.55;margin:0}.panel h2{font-size:18px;margin:0 0 14px}.report-grid{margin-top:18px}.metric-panel{display:grid;gap:6px}.metric-heading{align-items:center;color:var(--muted);display:flex;gap:8px}.metric-panel span{color:var(--muted);font-size:13px;font-weight:800;text-transform:uppercase}.metric-panel strong{font-size:34px}.report-preview{grid-column:span 2}.dashboard-chart-grid{display:grid;gap:18px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-areas:"rating rating volume coverage" "risk risk sentiment attention";margin-top:18px}.chart-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 18px 60px #0f172a0f;display:grid;gap:14px;min-height:285px;padding:20px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.chart-header{align-items:start;display:flex;gap:14px;justify-content:space-between}.chart-header div{display:grid;gap:4px}.chart-header span,.chart-header p{color:var(--muted);font-size:13px;font-weight:800;margin:0;text-transform:uppercase}.chart-header strong{font-size:30px}.rating-card{grid-area:rating}.volume-card{grid-area:volume}.coverage-card{grid-area:coverage}.risk-card{grid-area:risk}.sentiment-card{grid-area:sentiment}.attention-card{grid-area:attention}.rechart-frame{min-height:220px}.donut-wrap{align-items:center;display:grid;gap:16px;grid-template-columns:.85fr 1fr}.risk-legend{display:grid;gap:10px}.risk-legend span{align-items:center;color:var(--muted-deep);display:flex;font-size:13px;font-weight:800;gap:8px}.risk-legend i{border-radius:999px;display:inline-block;height:10px;width:10px}.attention-list{display:grid;gap:13px}.sentiment-list{display:grid;gap:12px}.sentiment-row{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(90px,1fr) 1fr auto}.sentiment-row span{align-items:center;color:var(--muted-deep);display:flex;font-size:13px;font-weight:900;gap:8px;text-transform:capitalize}.sentiment-row i{border-radius:999px;display:inline-block;height:10px;width:10px}.sentiment-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:900}.attention-row{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(120px,1fr) 1fr auto}.attention-row div:first-child{display:grid;gap:3px}.attention-row span,.attention-row em{color:var(--muted);font-size:12px;font-style:normal;font-weight:800}.attention-bar{background:#94a3b82e;border-radius:999px;height:10px;overflow:hidden}.attention-bar span{background:linear-gradient(90deg,var(--ink),var(--accent));border-radius:inherit;display:block;height:100%}.prospect-result{display:grid;gap:18px;margin-top:18px}.overview-lower{margin-top:18px}.compact-list{display:grid;gap:14px}.compact-list article{border-bottom:1px solid rgba(148,163,184,.22);display:grid;gap:8px;padding-bottom:14px}.compact-list article:last-child{border-bottom:0;padding-bottom:0}.compact-list article>div{align-items:center;display:flex;justify-content:space-between;gap:12px}.compact-list p{color:var(--muted-deep);line-height:1.5;margin:0}.modal-backdrop{align-items:center;background:#0f172a73;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:24px;position:fixed;z-index:20}.modal-panel{background:#ffffffe6;border:1px solid rgba(148,163,184,.34);border-radius:10px;box-shadow:0 30px 100px #0f172a47;display:grid;gap:14px;max-height:calc(100vh - 48px);max-width:620px;overflow:auto;padding:26px;position:relative;width:100%;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.modal-panel h2{margin:0}.modal-panel label{display:grid;gap:6px;font-weight:800}.icon-button{align-items:center;background:#0f172a14;color:var(--ink);justify-content:center;min-height:34px;padding:0;position:absolute;right:18px;top:18px;width:34px}.task-list{display:grid;gap:12px;margin:0;padding-left:20px}table{border-collapse:collapse;width:100%}td,th{border-bottom:1px solid rgba(148,163,184,.24);padding:12px;text-align:left}.review-list{display:grid;gap:14px}.review-card{display:grid;gap:12px}.inline-draft>div:first-child{align-items:center;display:flex;justify-content:space-between}.review-card span{color:var(--muted-deep);font-size:14px}.priority-label{border-radius:999px;display:inline-flex;font-size:12px;font-weight:900;line-height:1;padding:5px 8px}.priority-high{background:#dc26261a;color:#b91c1c}.priority-medium{background:#d977061a;color:#a16207}.priority-normal{background:#0f172a0f;color:var(--muted-deep)}.review-text-block{display:grid;gap:6px}.review-text-block p{color:var(--muted-deep);line-height:1.5;margin:0}.text-button{background:#0f172a0a;border:1px solid rgba(148,163,184,.22);border-radius:999px;color:var(--muted-deep);font-size:13px;font-weight:900;justify-self:start;min-height:30px;padding:0 11px}.text-button:hover{background:#2563eb14;border-color:#2563eb33;color:var(--accent-strong)}.review-action-row{align-items:center;display:flex;gap:10px;justify-content:space-between;min-height:32px}.review-action-row>div{min-width:0}.review-chip-row{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.sentiment-chip,.topic-chip{border-radius:999px;display:inline-flex;font-size:12px;font-weight:900;line-height:1;padding:7px 10px;text-transform:capitalize}.sentiment-chip{background:#2563eb14;color:var(--accent-strong)}.sentiment-delighted,.sentiment-positive{background:#16a34a1a;color:#15803d}.sentiment-mixed,.sentiment-neutral{background:#d977061a;color:#a16207}.sentiment-frustrated,.sentiment-angry{background:#dc26261a;color:#b91c1c}.topic-chip{background:#0f172a0d;color:var(--muted-deep);text-transform:none}.filter-panel{align-items:end;display:grid;gap:14px;grid-template-columns:repeat(4,minmax(170px,1fr));margin-bottom:18px}.filter-panel label{display:grid;gap:6px}.filter-panel span{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.inline-draft{background:#f8fafcd1;border:1px solid rgba(148,163,184,.3);border-radius:8px;display:grid;gap:10px;padding:14px}.draft-loading{overflow:hidden}.draft-skeleton{animation:shimmer 1.25s linear infinite;background:linear-gradient(90deg,#94a3b81f,#2563eb1f,#94a3b81f);background-size:220% 100%;border-radius:8px;height:56px}.draft-skeleton.short{height:14px;width:min(420px,72%)}.compact-alert{margin:0;padding:10px 12px}@keyframes shimmer{to{background-position:-220% 0}}.revision-box{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) auto}.revision-box label{color:var(--muted);display:grid;font-size:12px;font-weight:900;gap:6px;text-transform:uppercase}.price-card{display:grid;gap:12px}.price-card.selected{border-color:#2563eb8c;box-shadow:0 24px 70px #2563eb29}.price-card strong{font-size:28px}.form-panel{display:grid;gap:14px;max-width:680px}.form-panel label,.login-panel label{display:grid;gap:6px;font-weight:700}.login-screen{align-items:center;display:flex;min-height:100vh;justify-content:center;padding:24px}.login-panel{background:#fff;border:1px solid var(--line);border-radius:8px;display:grid;gap:16px;max-width:440px;padding:28px}.divider{align-items:center;color:var(--muted);display:flex;font-size:13px;font-weight:800;gap:10px;text-transform:uppercase}.divider:before,.divider:after{background:#94a3b857;content:"";flex:1;height:1px}.pricing-page{padding-bottom:56px}.pricing-hero{margin:0 auto;max-width:960px;padding:56px 24px 22px;text-align:center}.pricing-hero span{color:var(--accent);font-size:14px;font-weight:900;text-transform:uppercase}.pricing-hero h1{font-size:clamp(38px,6vw,68px);letter-spacing:0;line-height:1;margin:14px 0}.pricing-hero p{color:var(--muted-deep);font-size:18px;line-height:1.55;margin:0 auto;max-width:680px}.pricing-grid{margin:0 auto;max-width:1160px;padding:24px}.feature-list{display:grid;gap:10px;list-style:none;margin:0;padding:0}.feature-list li{align-items:center;display:flex;gap:8px}.login-panel h1{margin:0}.error-text{color:var(--danger-deep)}@media(max-width:1200px){.dashboard-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"rating rating" "volume coverage" "risk sentiment" "attention attention"}.rechart-frame{min-height:250px}.donut-wrap{grid-template-columns:minmax(160px,.75fr) 1fr}}@media(max-width:900px){.app-shell,.app-shell.sidebar-collapsed{grid-template-columns:1fr}.sidebar{height:auto;overflow:visible;position:static}.sidebar-top{margin-bottom:16px}.sidebar-collapsed .sidebar{padding:18px}.sidebar-collapsed .sidebar-top{justify-content:space-between}.sidebar-collapsed .brand,.sidebar-collapsed nav a span{display:flex}.sidebar-collapsed nav a{justify-content:flex-start;min-height:auto;padding:10px}nav{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two,.grid.three,.filter-panel,.revision-box{grid-template-columns:1fr}.dashboard-chart-grid{grid-template-columns:1fr;grid-template-areas:"rating" "volume" "coverage" "risk" "sentiment" "attention"}.chart-card{min-height:260px}.rechart-frame{min-height:210px}.report-preview{grid-column:span 1}.donut-wrap,.attention-row,.sentiment-row{grid-template-columns:1fr}.page-header{align-items:flex-start;flex-direction:column;gap:14px}.main-panel{padding:22px}.landing-nav{align-items:flex-start;flex-direction:column;gap:14px}.landing-hero,.proof-grid,.landing-band,.demo-hero,.demo-limitations{grid-template-columns:1fr}.landing-hero,.demo-hero>div:first-child{min-height:auto}}@media(max-width:620px){.main-panel{padding:16px}.page-header h1{font-size:28px}nav{grid-template-columns:1fr}.chart-header,.compact-list article>div,.inline-draft>div:first-child{align-items:flex-start;flex-direction:column}.review-card>div.review-meta{align-items:flex-start;flex-wrap:wrap}.review-context{align-items:flex-start;justify-items:start;text-align:left}.filter-control{align-items:flex-start;flex-direction:column;width:100%}.filter-control select{min-width:0}.public-demo{padding:16px}.demo-hero h1{font-size:38px}.demo-location-header,.demo-rating-row{align-items:flex-start;flex-direction:column}}
