:root{--bg:#090d12;--sidebar:#0b1016;--panel:#101720;--panel2:#131c27;--line:#25313d;--line2:#1d2934;--text:#eaf1f5;--muted:#8897a5;--dim:#657582;--acid:#dbff59;--cyan:#69cdd1;--orange:#ffb46f;--red:#ff8585;--font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,label:focus-visible,a:focus-visible,th:focus-visible{outline:2px solid var(--acid);outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}.shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:var(--sidebar);border-right:1px solid var(--line2);display:flex;flex-direction:column;padding:29px 17px 24px}.brand{display:flex;align-items:center;gap:11px;padding:0 11px 47px}.brandmark{font-size:32px;letter-spacing:-4px;font-weight:950}.brandmark span{color:var(--acid)}.brand strong{font-size:12px;letter-spacing:2.2px;display:block}.brand small{display:block;font-size:9px;color:var(--dim);letter-spacing:1.5px;margin-top:5px}.side-label,.micro-label,.eyebrow{font-size:10px;letter-spacing:1.9px;font-weight:800;color:var(--muted)}.side-label{padding:0 13px;margin-bottom:15px}.side-nav{display:flex;flex-direction:column;gap:7px}.nav-item{background:transparent;border:1px solid transparent;color:var(--muted);display:flex;gap:11px;align-items:center;text-align:left;padding:15px 12px;border-radius:4px;font-size:12px;font-weight:650;width:100%}.nav-item:hover{background:#18222a;color:white}.nav-item.active{background:#202c2a;color:var(--acid);border-color:#344a3b}.nav-icon{font-size:19px;width:20px;line-height:1;text-align:center}.nav-corner{font-size:9px;color:var(--dim);margin-left:auto}.sidebar-lower{margin-top:auto}.status-line{font-size:12px;color:#d3dce1;padding:4px 13px;display:flex;gap:9px;align-items:center}.sidebar-lower p{color:var(--dim);font-size:11px;line-height:1.75;padding:13px}.led{width:7px;height:7px;border-radius:100%;display:inline-block;flex-shrink:0}.led-yellow{background:var(--orange);box-shadow:0 0 9px #ffb46f80}.led-green{background:var(--acid);box-shadow:0 0 8px #dbff5969}.tiny-line{height:1px;background:var(--line2);margin:9px 13px}.side-signature{font-size:9px!important;letter-spacing:1.35px;line-height:1.95!important;color:#9fa8ab!important}.site-link{display:block;font-size:11px;color:var(--acid);margin:21px 13px 0}.main{min-width:0}.topbar{min-height:68px;border-bottom:1px solid var(--line2);display:flex;align-items:center;justify-content:space-between;padding:0 42px;gap:15px}.topbar-identity{font-size:10px;letter-spacing:2px;font-weight:800}.breadcrumb{color:var(--muted)}.slash{color:var(--acid);margin:0 11px}.top-actions{display:flex;gap:19px;align-items:center}.read-only{font-size:10px;letter-spacing:1.3px;display:flex;align-items:center;gap:7px;color:#c6d4b0}.version{color:var(--dim);font-size:10px;letter-spacing:1.2px}.body-content{max-width:1600px;margin:auto;padding:42px clamp(20px,3.2vw,58px) 25px}.intro-line{display:flex;justify-content:space-between;align-items:center;gap:12px}.accent{color:var(--acid)}.date-stamp{font-size:10px;color:var(--dim);letter-spacing:1px}.page-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:15px 0 24px}.page-heading h1{font-weight:800;letter-spacing:-1.65px;line-height:1.12;font-size:clamp(27px,3.2vw,44px)}.page-heading p{color:var(--muted);max-width:750px;line-height:1.8;margin-top:11px;font-size:13px}.title-angle{font-size:58px;letter-spacing:-6px;font-weight:900;color:#222d35;white-space:nowrap}.title-angle span{color:#47512f}.demo-banner{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:#252419;border:1px solid #584c29;padding:13px 17px;border-radius:4px;font-size:11px;margin-bottom:26px;color:#d4c3a0}.demo-banner b{letter-spacing:1.2px;color:#f0cb77;font-size:10px}.demo-banner.imported{background:#182427;border-color:#2c5658}.demo-banner.imported b{color:var(--cyan)}.banner-dot{color:#ffc478}.demo-banner.imported .banner-dot{color:var(--cyan)}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:29px;flex-wrap:wrap}.toolbar-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar label,.small-selector{font-size:10px;color:var(--dim);letter-spacing:1px;font-weight:800}.toolbar select,.small-selector select{background:#151e28;color:#dbe9ec;border:1px solid #2f4050;padding:10px 28px 10px 11px;border-radius:3px;font-size:12px;min-width:130px}.toolbar select{margin-right:12px}.button{background:var(--acid);color:#14200d;border:1px solid var(--acid);font-weight:800;letter-spacing:.3px;font-size:12px;padding:12px 17px;border-radius:3px}.button:hover{filter:brightness(.92)}.button-quiet{background:transparent;color:#d8e6e8;border-color:#344755}.button-quiet:hover{background:#1c2732}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:20px 0 17px;flex-wrap:wrap}.section-heading h2{font-size:12px;letter-spacing:1.2px;text-transform:uppercase}.section-heading h2 span{color:var(--acid);margin:0 7px}.section-heading p{font-size:11px;color:var(--dim)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.kpi{border:1px solid var(--line);background:linear-gradient(145deg,#121b25,#0e151d);padding:21px 21px 18px;border-radius:5px;min-width:0}.kpi-label{font-size:10px;letter-spacing:1.2px;color:#9daeb9;text-transform:uppercase;display:flex;justify-content:space-between;gap:7px}.kpi-label .kpi-index{color:#475760}.kpi-value{font-size:clamp(24px,2.55vw,37px);font-weight:750;margin:19px 0 9px;letter-spacing:-1px;white-space:nowrap}.kpi-note{font-size:11px;color:var(--dim)}.delta{font-size:11px;font-weight:800;margin-right:8px}.delta.good{color:var(--acid)}.delta.bad{color:var(--red)}.delta.neutral{color:var(--muted)}.content-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:16px;margin-bottom:16px}.second-grid{grid-template-columns:1fr 1fr}.panel{background:var(--panel);border:1px solid var(--line);border-radius:5px;padding:23px;min-width:0}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:23px}.panel h3{font-size:19px;font-weight:750;letter-spacing:-.5px;margin-top:7px}.chart-box{height:258px;min-width:0;position:relative}.chart-box svg{display:block;width:100%;height:100%;overflow:visible}.chart-footer{display:flex;justify-content:space-between;gap:15px;color:var(--dim);font-size:10px;border-top:1px solid var(--line2);padding-top:14px;line-height:1.5}.chart-footer span:first-child{color:var(--cyan)}.funnel-item{display:grid;grid-template-columns:105px 1fr 45px;align-items:center;gap:12px;margin:0 0 19px}.funnel-label{color:#aebdc5;font-size:11px}.funnel-value{font-size:12px;font-variant-numeric:tabular-nums;text-align:right;font-weight:800}.bar-track{height:10px;background:#26323e;border-radius:2px;overflow:hidden}.bar-fill{height:100%;background:var(--cyan);min-width:0;border-radius:2px}.funnel-item:nth-child(3) .bar-fill{background:var(--acid)}.funnel-item:nth-child(4) .bar-fill{background:#92b46c}.funnel-item:nth-child(5) .bar-fill{background:var(--orange)}.panel-footnote{font-size:10px;line-height:1.7;color:var(--dim);border-top:1px solid var(--line2);padding-top:12px;margin-top:19px}.text-action{background:none;border:0;color:var(--acid);font-size:11px}.client-bar{margin-bottom:19px}.bar-label{display:flex;justify-content:space-between;gap:10px;margin-bottom:9px;font-size:12px}.bar-label span:nth-child(2){font-size:11px;color:var(--muted)}.bar-outer{width:100%;background:#253440;height:8px;overflow:hidden;border-radius:2px}.bar-inner{height:100%;background:var(--acid);min-width:0}.alert-mini{padding:0 0 16px;margin:0 0 16px;border-bottom:1px solid var(--line2)}.alert-mini:last-child{border:0;margin:0;padding:0}.alert-title{font-size:12px;font-weight:800;display:flex;align-items:center;gap:8px}.severity{border-radius:2px;font-size:8px;padding:4px 6px;letter-spacing:.8px;border:1px solid var(--line);font-weight:850;white-space:nowrap}.severity.high{color:var(--red);border-color:#6e4143;background:#302125}.severity.medium{color:var(--orange);border-color:#6c5441;background:#30291e}.severity.info{color:var(--cyan)}.alert-mini p{font-size:11px;color:var(--muted);line-height:1.7;margin-top:7px}.method-strip{display:flex;justify-content:center;flex-wrap:wrap;gap:13px;margin:25px 0 35px;color:var(--dim);font-size:9px;letter-spacing:1.2px}.method-strip b{color:#a6b6be;font-size:9px}.tab-pane{display:none}.tab-pane.active{display:block}.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:19px}.client-card{padding:23px;background:var(--panel);border:1px solid var(--line);border-radius:5px;min-width:0}.client-card h3{margin:7px 0 14px;font-size:17px}.client-card .micro-label{color:var(--cyan)}.client-card-big{font-size:27px;font-weight:800;letter-spacing:-1px}.client-card-small{font-size:11px;color:var(--muted);margin:7px 0 20px}.client-card-line{display:flex;justify-content:space-between;gap:7px;margin-top:10px;font-size:11px}.client-card-line span:first-child{color:var(--dim)}.table-wrap{overflow:auto}.table-help{color:var(--dim);font-size:10px}table{width:100%;border-collapse:collapse;min-width:660px}th{text-align:right;color:#8799a5;font-size:10px;letter-spacing:.6px;text-transform:uppercase;padding:12px 10px 17px;border-bottom:1px solid var(--line);cursor:pointer}th:hover{color:var(--acid)}th:first-child{text-align:left}td{padding:17px 10px;border-bottom:1px solid var(--line2);text-align:right;font-variant-numeric:tabular-nums;font-size:12px;color:#c7d4db}td:first-child{text-align:left}tbody tr:hover{background:#18242c}.cell-client{display:block;font-weight:750;color:#eaf1f5}.cell-campaign{display:block;font-size:10px;margin-top:5px;color:var(--dim)}.signals-header{background:#18222b;border:1px solid var(--line);padding:20px 24px;display:flex;align-items:center;gap:40px;margin-bottom:19px}.signal-stat{display:flex;align-items:center;gap:13px;white-space:nowrap}.signal-stat span:first-child{color:var(--acid);font-size:42px;font-weight:900}.signal-stat span:nth-child(2){font-size:10px;letter-spacing:1.3px;color:var(--muted);max-width:90px;line-height:1.6}.signals-header p{font-size:12px;line-height:1.8;color:var(--muted)}.signal-list{display:grid;gap:14px}.signal-item{padding:22px;background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--orange);border-radius:3px}.signal-item.high{border-left-color:var(--red)}.signal-item.medium{border-left-color:var(--orange)}.signal-item.info{border-left-color:var(--cyan)}.signal-item-header{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-bottom:11px}.signal-item h3{font-size:16px}.signal-source{font-size:10px;color:var(--dim);margin-bottom:12px}.signal-detail{font-size:12px;color:#afbec6;line-height:1.75;margin-bottom:13px}.next-action{padding:12px;background:#19272d;border:1px solid #2a4147;font-size:11px;line-height:1.7;color:#c9dbd5}.next-action b{color:var(--acid)}.methodology{margin:18px 0 30px}.methodology p,.copy{color:var(--muted);font-size:12px;line-height:1.8;margin:13px 0 0}.data-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:16px}.upload-target{margin:20px 0 12px;border:1px dashed #47606c;background:#15212b;min-height:145px;display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:pointer;gap:9px;text-align:center}.upload-target:hover{border-color:var(--acid)}.upload-icon{font-size:29px;color:var(--acid)}.upload-target b{font-size:13px}.upload-target span:last-child{color:var(--muted);font-size:10px}.import-message{color:var(--muted);font-size:11px;line-height:1.5;min-height:18px}.import-message.error{color:var(--red)}.button-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}.schema-list{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px}.schema-key{border:1px solid var(--line2);background:#151f29;padding:8px 10px;font-size:11px;color:var(--cyan);font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.schema-note{color:var(--dim);font-size:11px;line-height:1.7;margin-top:15px}.export-panel{margin-top:16px;display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line2);padding:25px 0 15px;margin-top:27px;font-size:9px;letter-spacing:1.2px;color:var(--dim)}.toast{position:fixed;bottom:24px;right:23px;min-width:180px;max-width:360px;background:var(--acid);color:#14200d;font-weight:800;font-size:12px;padding:14px 20px;border-radius:3px;box-shadow:0 5px 30px #0006;display:none;z-index:20}.toast.show{display:block}.empty{font-size:12px;line-height:1.75;color:var(--muted);padding:22px 0}.print-head{display:none}
@media(max-width:1180px){.shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:1fr}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{padding:0 25px}.body-content{padding:32px 27px}}
@media(max-width:760px){.shell{display:block}.sidebar{position:static;height:auto;padding:15px;border-bottom:1px solid var(--line);border-right:0}.brand{padding:0 8px 14px}.side-label,.sidebar-lower{display:none}.side-nav{flex-direction:row;overflow:auto;gap:3px}.nav-item{min-width:max-content;font-size:11px;padding:12px 8px;gap:6px}.nav-corner{display:none}.topbar{padding:0 17px;min-height:51px}.body-content{padding:24px 16px}.date-stamp,.title-angle,.version{display:none}.page-heading h1{font-size:29px}.kpi-grid{gap:9px}.kpi{padding:17px 12px}.kpi-value{font-size:25px}.client-grid,.data-grid{grid-template-columns:1fr}.panel{padding:17px}.toolbar-left{gap:8px}.toolbar select{margin-right:5px;min-width:122px}.signals-header{gap:14px;padding:14px;flex-wrap:wrap}.funnel-item{grid-template-columns:90px 1fr 38px}.footer{font-size:8px}}
@media(max-width:420px){.kpi-label{font-size:9px}.kpi-value{font-size:21px}.small-selector select{min-width:95px}.toolbar-left{width:100%}.toolbar label{width:40px}.toolbar select{width:calc(100% - 61px)}.chart-footer span:last-child{display:none}}
@media print{body{background:white;color:black}.shell{display:block}.sidebar,.topbar,.toolbar,.button,.text-action,.demo-banner,.footer,.tab-pane:not(.active),.title-angle{display:none!important}.body-content{padding:0}.panel,.kpi,.client-card{background:#fff!important;color:#111!important;border-color:#aaa;break-inside:avoid}.kpi-value,h1,h2,h3{color:#111}.micro-label,.kpi-label,.panel-footnote{color:#555}.chart-box{color:#111}.print-head{display:block}}
/* v0.2 — independent forensic account audit */
.audit-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;background:linear-gradient(110deg,#141f29,#1c2929);border:1px solid #344943;border-radius:5px;padding:31px;margin-bottom:16px}
.audit-hero h2{font-size:clamp(25px,3.3vw,39px);letter-spacing:-1px;margin:9px 0}.audit-hero p{line-height:1.7;color:var(--muted);max-width:720px}.audit-condition{display:flex;flex-direction:column;gap:9px;align-items:flex-start;min-width:205px}.audit-condition span{font-size:9px;color:var(--acid);font-weight:800;letter-spacing:1.5px}.audit-condition b{font-size:17px}.audit-import{margin-bottom:16px}.audit-file-control{display:flex;gap:25px;flex-wrap:wrap;align-items:center}.audit-file-control .upload-target{min-height:95px;flex:1;max-width:600px}.audit-file-control label{display:block;margin-bottom:8px}.audit-file-control select{background:#161f27;color:var(--text);border:1px solid var(--line);padding:9px 12px}.audit-source{font-size:11px;color:var(--muted);margin:10px 0}.audit-score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}.audit-stat{background:var(--panel);border:1px solid var(--line);padding:19px 20px;display:flex;flex-direction:column;gap:12px}.audit-stat.focus{border-color:#516833;background:#1c251d}.audit-stat span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:1.25px}.audit-stat strong{font-size:clamp(24px,2.4vw,35px);letter-spacing:-1px}.audit-stat.focus strong{color:var(--acid)}.audit-stat small{color:var(--dim);font-size:10px}.audit-guidance{padding:17px 19px;background:#27231a;color:#c7bda7;border:1px solid #5a4b29;font-size:12px;line-height:1.75;margin-bottom:16px}.audit-guidance b{color:#efc67f}.audit-evidence-grid{grid-template-columns:1fr 1fr}.audit-evidence-list{padding-left:21px;color:#abb9be;margin-top:16px;line-height:1.95;font-size:12px}.audit-evidence-list li::marker{color:var(--cyan)}.audit-findings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.audit-finding{border:1px solid var(--line);background:#121c25;padding:19px;border-radius:4px}.audit-finding-top{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:12px}.audit-pill{font-size:9px;font-weight:800;border-radius:2px;padding:5px 8px;letter-spacing:.8px;background:#2c343b;color:#ced9df}.audit-high{color:#ffa0a0;background:#3b2426}.audit-watch{color:#ffd5a0;background:#34291f}.audit-review{color:#ade3ff;background:#20303a}.audit-evidence-gap{color:#d0d0a2;background:#333321}.audit-rule{font-size:9px;color:var(--dim)}.audit-finding h3{font-size:16px;margin:0 0 9px;letter-spacing:0}.audit-finding p{font-size:12px;color:#b0bdc5;line-height:1.7}.audit-next{border-top:1px solid var(--line);padding-top:12px;margin-top:13px;font-size:11px;line-height:1.65;color:#b1c3c8}.audit-next b{color:var(--acid)}.audit-section-label{margin:22px 0 9px;font-size:10px;color:var(--muted);letter-spacing:1.5px;text-transform:uppercase}.audit-warnings{color:#b9a99a;font-size:11px;line-height:1.85;padding-left:19px;margin:9px 0 20px}.audit-disclaimer{margin:20px 0 50px;color:#aeb8a2;font-size:10px;letter-spacing:.25px;line-height:1.7}.audit-import .button-row{margin-top:13px}.audit-import .upload-target{margin:0}
@media(max-width:1050px){.audit-score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-findings{grid-template-columns:1fr}.audit-hero{flex-direction:column;align-items:flex-start}}
@media(max-width:650px){.audit-score-grid,.audit-evidence-grid{grid-template-columns:1fr}.audit-stat strong{font-size:29px}.audit-hero{padding:21px}.audit-file-control .upload-target{min-width:100%}}
@media print{.audit-import,.audit-disclaimer,#audit-report,#audit-export-csv{display:none!important}.audit-guidance{border-color:#ccc;background:#eee;color:#222}.audit-guidance b{color:#111}.audit-findings{grid-template-columns:1fr}.audit-finding,.audit-stat{border-color:#aaa;background:white;color:#111;break-inside:avoid}.audit-finding p,.audit-next,.audit-evidence-list{color:#333}.audit-finding h3{color:#111}}

/* Google Ads v0.3 forensic workstation */
.audit-file-control input.audit-text-field {display:block;box-sizing:border-box;max-width:320px;width:100%;background:#111a24;border:1px solid #374656;border-radius:6px;color:#ecf2f5;padding:11px 12px;margin:7px 0 15px;font:inherit}
.audit-action-import {margin:16px 0}.audit-action-import .copy{max-width:900px;margin-bottom:14px}
.audit-wide-table{min-width:1660px}.audit-wide-table th,.audit-wide-table td{white-space:nowrap;padding:11px 15px}
.audit-wide-table th:nth-child(2),.audit-wide-table td:nth-child(2){min-width:175px}
.audit-wide-table th:first-child,.audit-wide-table td:first-child{min-width:155px}
.audit-actions-panel{margin-top:18px}.audit-actions-panel .copy{margin-bottom:13px}
.audit-score-grid{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}
.audit-stat strong{font-size:clamp(17px,1.75vw,27px)}
@media(max-width:700px){.audit-file-control input.audit-text-field{max-width:100%}.audit-wide-table{min-width:1500px}}

/* v0.3.1: Google Ads metrics use Forensic Audit dataset; separate from demo funnels */
.kpi-controls{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.kpi-controls .small-selector{display:flex;align-items:center;gap:8px}
.kpi-controls select{min-width:96px;max-width:210px;padding:8px 24px 8px 10px}
.ads-kpi-footnote{color:#9db1b9;font-size:11px;line-height:1.6;padding:0 0 11px}
.overview-separation{font-size:11px;line-height:1.6;border-left:2px solid #44565d;color:#91a2ad;padding:10px 12px;margin:0 0 18px;background:#101921}
.overview-separation strong{color:#e5eef0}
@media(max-width:760px){.ads-kpi-heading{align-items:flex-start}.kpi-controls{width:100%;justify-content:space-between}.kpi-controls .small-selector{flex:1}.kpi-controls select{max-width:100%;flex:1;min-width:0}}
@media print{.kpi-controls{display:none}}

/* v0.3.2: all Overview panels use the SAME Google Ads campaign CSV source. */
#legacy-toolbar[hidden]{display:none!important}
.overview-source-note{font-size:11px;line-height:1.7;color:#9bb0bc;background:#101a22;border-left:2px solid #a6e33c;padding:10px 13px;margin:0 0 17px}
.ads-overview-grid{grid-template-columns:1.08fr 1fr}
.panel-help{font-size:10px;color:var(--muted)}
.ads-campaign-list{display:grid;gap:16px}
.ads-campaign-row,.ads-pair-row{min-width:0}
.ads-campaign-heading,.ads-pair-heading{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:7px;font-size:11px}
.ads-campaign-name{font-weight:750;color:#edf6f5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.ads-campaign-amount,.ads-pair-ratio{font-size:11px;font-variant-numeric:tabular-nums;font-weight:750;white-space:nowrap;color:var(--acid)}
.ads-rail{height:10px;border-radius:3px;background:#24313b;overflow:hidden;min-width:0}
.ads-rail-fill{display:block;width:0;height:100%;border-radius:3px}
.ads-rail.cost-track .ads-rail-fill{background:var(--cyan)}
.ads-rail.value-track .ads-rail-fill{background:var(--acid)}
.ads-detail-line{display:flex;gap:14px;justify-content:space-between;color:#899fae;font-size:10px;line-height:1.6;margin-top:6px;flex-wrap:wrap}
.ads-chart-legend{display:flex;gap:15px;align-items:center;color:#a6b8c0;font-size:11px;margin:-9px 0 20px}
.ads-chart-legend span{display:inline-flex;align-items:center;gap:7px}
.ads-chart-legend i{width:11px;height:11px;display:inline-block;border-radius:2px}
.legend-cost{background:var(--cyan)}.legend-value{background:var(--acid)}
.ads-pair-row{padding:0 0 11px;border-bottom:1px solid var(--line2)}
.ads-pair-row:last-child{border:0}
.ads-double-row{display:flex;align-items:center;gap:9px;margin:5px 0}
.ads-double-row .ads-rail{flex:1;height:9px}
.ads-double-amount{width:75px;text-align:right;color:#aebcc5;font-size:10px;font-variant-numeric:tabular-nums}
.ads-mini-table{min-width:485px}
.ads-mini-table td,.ads-mini-table th{padding:12px 7px}
.ads-mini-table th{cursor:default;font-size:9px}
.ads-name-cell{min-width:130px;max-width:205px}
.ads-name-cell strong{color:#e9f2f4;font-size:11px;display:block;line-height:1.35;overflow-wrap:anywhere}
.ads-name-cell small{display:block;color:#8797a5;margin-top:4px;font-size:9px}
.ads-audit-item{border-bottom:1px solid var(--line2);margin:0 0 13px;padding:0 0 12px}
.ads-audit-item:last-of-type{border:0}
.ads-audit-heading{display:flex;align-items:center;gap:9px;font-weight:750;font-size:11px;line-height:1.5}
.ads-audit-item p{color:var(--muted);font-size:11px;line-height:1.55;margin-top:7px}
.ads-overflow{color:var(--cyan);font-size:11px}
@media(max-width:1180px){.ads-overview-grid{grid-template-columns:1fr}}
@media(max-width:600px){.ads-detail-line{display:block}.ads-double-amount{width:67px}.ads-mini-table{min-width:470px}}

/* v0.3.3 unified Google Ads workspace */
.accounts-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 17px}
.account-summary-stat{display:flex;flex-direction:column;gap:9px;background:#111b25;border:1px solid #24323e;padding:19px;border-radius:4px;min-width:0}
.account-summary-stat small{font-size:10px;color:#8eaaaf;letter-spacing:1px;font-weight:700}
.account-summary-stat strong{font-size:clamp(17px,2.1vw,26px);color:#eff6f4;font-variant-numeric:tabular-nums}
#campaign-table th[data-sort]{cursor:pointer;white-space:nowrap;user-select:none}
#campaign-table th[data-sort]:hover{color:var(--acid)}
#tab-clients .audit-wide-table{min-width:1630px}
#data-warnings p{color:#a2b2bd;font-size:12px;line-height:1.65;margin:10px 0;padding-left:12px;border-left:2px solid #4a5d6b}
#tab-signals .signal-list{margin-bottom:17px}
@media(max-width:1150px){.accounts-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.accounts-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
