:root{--navy:#08284a;--navy2:#0d3b66;--blue:#1574e8;--bg:#eef4fa;--text:#0b2b54;--muted:#61758f;--orange:#ff9800;--green:#19a653;--red:#e53935}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}.shell{display:grid;grid-template-columns:220px 1fr}.shell,.sidebar{min-height:100vh}.sidebar{background:linear-gradient(180deg,#062949,#0b355e);color:#fff;padding:22px 14px;display:flex;flex-direction:column}.brand{text-align:center}.brand img{width:155px;height:auto;display:block;margin:0 auto 12px}.pro-mark{font-size:28px;font-weight:800}.pro-mark span{color:#20c4d8}.brand small{display:block;margin-top:6px;color:#d5e4f3}.sidebar nav{margin-top:28px;display:grid;grid-gap:8px;gap:8px}.sidebar nav a{color:#fff;text-decoration:none;padding:14px 16px;border-radius:10px;font-weight:700}.sidebar nav a.active{background:#1477e9}.side-bottom{margin-top:auto;border-top:1px solid #8aa4bf;padding-top:18px;display:grid;grid-gap:18px;gap:18px;font-size:14px}.side-bottom b{color:#2ac45e}.side-bottom button{width:100%;padding:10px;background:transparent;border:1px solid #8aa4bf;border-radius:8px;color:#fff;cursor:pointer}.content{padding:20px;overflow:auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.topbar h1{font-size:34px;margin:0}.topbar p{margin:3px 0 0;color:#385b84}.top-status{display:flex;gap:12px}.top-status>div{background:#fff;border:1px solid #d7e4f1;border-radius:10px;padding:10px 16px;min-width:170px}.top-status small{display:block;color:var(--muted)}.top-status strong{display:block;margin-top:2px}.top-status .healthy{background:#effaf3;border-color:#bce8cc}.top-status .healthy small{color:var(--green);font-size:18px}.panel{background:#fff;border:1px solid #d9e5f2;border-radius:14px;padding:14px;margin-bottom:12px;box-shadow:0 2px 10px rgba(13,59,102,.05)}.section-title{font-weight:800;font-size:18px;margin-bottom:12px}.section-title span{font-weight:500;color:#385b84}.section-title.row{display:flex;justify-content:space-between;align-items:center}.kpi-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:8px;gap:8px}.channel-kpis>div,.kpi,.mini-kpi,.revenue-grid>div{border:1px solid #dce7f3;border-radius:10px;padding:12px;text-align:center;background:#fbfdff}.kpi strong{font-size:22px}.channel-kpis span,.kpi span,.mini-kpi span,.revenue-grid span{display:block;margin-top:4px;font-size:12px;color:#385b84}.kpi small{display:block;margin-top:7px}.green{color:var(--green)}.red{color:var(--red)}.attention-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:10px;gap:10px}.attention{padding:14px;border-radius:10px;border:1px solid}.attention b,.attention strong{display:block;margin-bottom:7px}.attention p{margin:0 0 5px;line-height:1.35}.healthy-card{background:#effaf3;border-color:#bfe9cf}.healthy-card b{color:var(--green)}.watch{background:#fff9e8;border-color:#f3d98a}.watch b{color:#e99a00}.info{background:#eef6ff;border-color:#c9def7}.info b{color:#176ad5}.opportunity{background:#f4f7fb;border-color:#d4dfeb}.opportunity b{color:#5f7898}.funnel-grid{display:grid;grid-template-columns:repeat(10,1fr);grid-gap:8px;gap:8px}.mini-kpi strong{font-size:20px}.tabs button{border:1px solid #c9d8e8;background:#fff;padding:7px 14px;color:var(--text)}.tabs button:first-child{border-radius:8px 0 0 8px}.tabs button:last-child{border-radius:0 8px 8px 0}.tabs .selected{background:var(--navy);color:#fff}.two-col{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.channel-head{display:flex;justify-content:space-between;align-items:center}.channel-head>div{display:flex;gap:10px;align-items:center}.channel-head h2{margin:0}.channel-head p{margin:2px 0;color:#385b84}.channel-head a{color:var(--blue);text-decoration:none;font-weight:700}.google-mark{font-size:38px;color:#fbbc04;transform:rotate(180deg)}.meta-mark{font-size:46px;color:#0866ff;line-height:1}.channel-kpis{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:6px;gap:6px;margin-top:10px}.channel-kpis b,.revenue-grid b{font-size:17px}.bottom{grid-template-columns:1.2fr .8fr}.revenue-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px}.opportunities{margin:0;padding-left:20px}.opportunities li{margin-bottom:10px}.opportunities span{display:block;color:#385b84;font-size:13px}.sidebar button,.tabs button{cursor:pointer}.real-chart{margin-top:12px;border-top:1px solid #e1e9f2;padding-top:12px}.chart-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.chart-title-row strong{display:block;font-size:13px;color:var(--text)}.chart-title-row span{display:block;margin-top:3px;font-size:11px;color:var(--muted)}.empty-chart{min-height:150px;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:13px}.campaign-bar-chart{display:grid;grid-gap:12px;gap:12px}.campaign-bar-row{display:grid;grid-gap:5px;gap:5px}.campaign-bar-label{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px}.campaign-bar-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#385b84}.campaign-bar-label strong{flex:0 0 auto;font-size:11px;color:var(--text)}.campaign-bar-track{height:10px;width:100%;overflow:hidden;background:#edf3f9;border:1px solid #dce7f3;border-radius:999px}.campaign-bar-fill{height:100%;min-width:3px;background:linear-gradient(90deg,#fbbc04,#f29900);border-radius:999px}.meta-svg-wrap{width:100%;overflow:hidden}.meta-svg-wrap svg{display:block;width:100%;height:auto;min-height:190px}.chart-axis{stroke:#cbd8e6;stroke-width:1}.meta-lead-bar{fill:#68aef3}.meta-cpl-line{stroke:#f18a00;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.meta-cpl-dot{fill:#f18a00;stroke:#fff;stroke-width:2}.chart-value-label{fill:#0b2b54;font-size:10px;font-weight:700}.chart-date-label{fill:#61758f;font-size:9px}.chart-cpl-label{fill:#b86200;font-size:9px;font-weight:700}.overview-range-panel{padding:12px 14px}.overview-range-panel .section-title{margin-bottom:8px;font-size:16px}.overview-range-grid{display:grid;grid-template-columns:minmax(200px,240px) minmax(200px,240px) auto;grid-gap:12px;gap:12px;align-items:end;justify-content:start}.overview-range-actions,.overview-range-field{display:flex;flex-direction:column;gap:6px;min-width:0}.overview-range-actions>span,.overview-range-field span{font-size:12px;font-weight:700;color:#385b84}.overview-range-field input[type=date]{width:100%;height:40px;padding:0 12px;border:1px solid #c9d8e8;border-radius:10px;background:#fbfdff;color:var(--text);font:inherit;font-size:14px;font-weight:700}.overview-range-buttons{display:flex;align-items:center;gap:8px;min-height:40px}.overview-range-apply{height:40px;padding:0 18px;border:0;border-radius:10px;background:var(--blue);color:#fff;font:inherit;font-weight:800;cursor:pointer}.overview-range-snapshot{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 14px;border:1px solid #c9d8e8;border-radius:10px;background:#fff;color:var(--navy2);text-decoration:none;font-size:13px;font-weight:700}.source-coverage-panel{padding:10px 14px}.source-coverage-panel .section-title{margin-bottom:8px;font-size:15px}.source-coverage-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:6px;gap:6px}.source-coverage-mini{min-width:0;padding:8px 10px;border-radius:8px;border:1px solid}.source-coverage-mini b,.source-coverage-mini strong{display:block}.source-coverage-status{margin-bottom:2px;font-size:10px;letter-spacing:.04em}.source-coverage-mini strong{margin-bottom:2px;font-size:13px;line-height:1.2}.source-coverage-detail{display:block;color:#385b84;font-size:11px;line-height:1.25}@media(max-width:1100px){.shell{grid-template-columns:1fr}.sidebar{display:none}.kpi-grid{grid-template-columns:repeat(4,1fr)}.attention-grid{grid-template-columns:repeat(2,1fr)}.funnel-grid{grid-template-columns:repeat(5,1fr)}.two-col{grid-template-columns:1fr}.overview-range-grid{grid-template-columns:1fr 1fr}.overview-range-actions{grid-column:1/-1}.source-coverage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.content{padding:10px}.topbar{align-items:flex-start;gap:10px}.top-status,.topbar{flex-direction:column}.top-status{width:100%}.attention-grid,.channel-kpis,.funnel-grid,.kpi-grid,.revenue-grid{grid-template-columns:repeat(2,1fr)}.section-title.row{gap:8px}.campaign-bar-label,.section-title.row{align-items:flex-start;flex-direction:column}.campaign-bar-label{gap:2px}.overview-range-grid{grid-template-columns:1fr}.overview-range-buttons{width:100%}.overview-range-apply,.overview-range-snapshot{flex:1 1}.source-coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}