/* AdOps Lab — product portfolio visual system */
:root{--ink:#12233e;--muted:#65758d;--green:#2563eb;--bg:#f5f7fb;--line:#dfe5ef;--accent:#2563eb}
body{background:var(--bg);color:var(--ink);font-family:"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.85;font-variant-numeric:tabular-nums}::selection{background:#dce8ff;color:#12233e}a,button{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #7fa9ff;outline-offset:4px}
nav{background:#ffffffed;backdrop-filter:blur(18px);border-bottom:1px solid #e3e9f3;position:sticky;top:0;z-index:30}.nav{max-width:1240px;padding:17px 32px;min-height:78px;gap:24px}.logo{font-size:19px;color:#12233e;display:flex;align-items:center;gap:8px;letter-spacing:-.5px;white-space:nowrap}.logo-symbol{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#2563eb;color:white!important;font-size:24px;line-height:1;font-family:Arial,sans-serif;font-weight:700}.logo .logo-tail{color:#65758d;font-weight:400}.links{gap:26px}.links a{font-size:13px;color:#64728a}.links a:hover{color:#2563eb}.links .tool-nav{font-weight:600;color:#244b8d;background:#eef3fc;padding:6px 11px;border-radius:5px}
.wrap{max-width:1240px;padding:0 32px}.hero{display:grid;grid-template-columns:1.06fr 1fr;column-gap:56px;align-items:center;padding:74px 0 0}.hero-copy{min-width:0}.eyebrow{font-size:12px;text-transform:none;letter-spacing:.5px;color:#56708f;font-weight:500}.hero .eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:20px}.status-dot{display:inline-block;width:7px;height:7px;background:#2563eb;border-radius:50%;box-shadow:0 0 0 4px #e5edfc}.hero h1{font-size:clamp(33px,3.8vw,48px);font-weight:650;letter-spacing:-1.5px;line-height:1.32;margin:0 0 22px}.hero-title-main{display:block}.hero-title-sub{display:block;color:#62748f;font-size:20px;line-height:1.7;letter-spacing:0;font-weight:400;margin-top:16px}.lead{font-size:14px;line-height:1.95;max-width:470px;margin:0;color:#63738c}.hero .actions{margin:26px 0 0;gap:10px}.btn{border-radius:6px;background:#2563eb;border-color:#2563eb;color:white;font-size:13px;padding:10px 17px;font-weight:500;box-shadow:0 3px 7px #234fa415}.btn:hover{background:#1e50c8;border-color:#1e50c8}.btn.secondary{background:white;color:#304d79;border-color:#d1dcec;box-shadow:none}.btn.secondary:hover{background:#eef3fc}.hero .stats{grid-column:1/-1;max-width:none;width:100%;display:flex;gap:0;border-top:1px solid var(--line);padding:25px 0 26px;margin-top:57px;border-bottom:1px solid var(--line)}.stats>div{padding-right:54px}.stats>div+div{padding-left:54px;border-left:1px solid var(--line)}.stats strong{font-size:24px;font-weight:600;letter-spacing:-.7px;line-height:1.5}.stats span{font-size:11px;color:#71819a}
.workflow-preview{background:white;border:1px solid #dbe4f2;border-radius:13px;box-shadow:0 20px 48px -24px #21477935;transform:translateY(2px);overflow:hidden;min-width:0;position:relative}.preview-top{padding:17px 20px;background:#12233e;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:12px}.mini-brand{display:flex;gap:9px;align-items:center;font-weight:600}.mini-brand i{width:8px;height:8px;background:#75a5ff;border-radius:2px;display:inline-block;transform:rotate(45deg)}.preview-badge{font-size:10px;color:#c5d8fc;background:#ffffff14;border:1px solid #ffffff1c;border-radius:4px;padding:1px 7px}.preview-content{padding:24px 22px 0}.preview-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:14px;font-weight:600}.preview-period{font-size:9px;color:#8b99ae;font-weight:400}.pipeline{display:flex;align-items:center;margin:22px 0 26px}.pipeline>a{flex:1;min-width:0;text-decoration:none;background:#f4f7fd;border:1px solid #e3eaf7;border-radius:7px;padding:13px 4px 10px;text-align:center}.pipeline>a:hover{border-color:#9cbdf8;background:#edf3ff}.pipeline b{font-size:11px;display:block;font-weight:600}.pipeline small{font-size:8px;white-space:nowrap;color:#7286a3}.pipeline-icon{display:grid;place-items:center;margin:0 auto 6px;width:25px;height:25px;color:#2563eb;font-size:20px;font-family:Arial,sans-serif}.pipeline-connector{padding:0 5px;font-size:17px;color:#b1c0d5}.preview-chart-heading{border-top:1px solid #e5ebf4;padding-top:18px;display:flex;justify-content:space-between;gap:8px;align-items:center}.preview-caption{font-size:9px;color:#71829b;display:block}.preview-chart-heading strong{display:block;font-size:13px;font-weight:500;margin-top:3px}.sample-label{font-size:9px;color:#8292aa}.preview-trend{display:block;width:100%;height:auto;margin-top:12px}.preview-weeks{display:flex;justify-content:space-between;font-size:9px;color:#92a0b5;padding:0 10px 17px}.preview-bottom{border-top:1px solid #e6edf7;margin:0 -22px;padding:12px 22px;background:#fafcff;display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#788aa6}.preview-bottom i{display:inline-block;width:5px;height:5px;background:#168aab;border-radius:50%;margin-right:5px}.preview-bottom a{color:#365c9e;text-decoration:none;font-weight:500}
.section{padding:52px 0;scroll-margin-top:100px}.section h2{font-size:28px;letter-spacing:-.7px;font-weight:600;margin:5px 0 12px}.section-note{font-size:13px;line-height:1.9;max-width:720px;margin:8px 0 28px}.results{border-top:0}.result-kpis{border-radius:9px;border-color:#dfe6f2;margin:30px 0 24px;background:#fff}.result-kpis article{padding:25px 29px;border-color:#e3e9f3}.result-tag{font-size:11px;color:#74839a;letter-spacing:0}.result-kpis strong{font-family:"Segoe UI",Arial,sans-serif;font-size:41px;letter-spacing:-1.5px;color:#193966;font-weight:600}.result-kpis strong span{font-size:12px;font-weight:400}.result-kpis p{font-size:11px;color:#7c8aa0}.result-kpis p b{color:#495d7e}.grid{gap:24px}.card{border:1px solid #e0e6f0;border-radius:9px;padding:27px;background:#fff;box-shadow:0 3px 12px #15315f03}.card h3{font-size:19px;font-weight:600;line-height:1.6;letter-spacing:-.3px}.card p{color:#667791;line-height:1.95}.card .index{font-size:11px;color:#7b8da7;letter-spacing:0;text-transform:none;font-weight:400}.chart-top{gap:12px}.chart-top h3{font-size:19px;margin:4px 0 14px}.bar-chart{gap:24px;height:250px}.bar-col>b{color:#4f6b93;font-size:11px}.bar-track{height:190px;border-color:#dfe6f0}.bar-track>span{background:#cfdef5;border-radius:4px 4px 0 0;max-width:59px;margin:auto auto 0}.bar-col:nth-last-child(-n+2) .bar-track>span{background:#4479d8}.bar-col:last-child .bar-track>span{background:#2563eb}.bar-col>span{color:#8b98ae;font-size:11px}.chart-caption,.card .chart-caption{color:#8491a5;font-size:11px;line-height:1.9}.metric-switch{background:#f1f4f9;border-radius:6px;gap:2px;padding:3px}.metric-switch button{font-size:11px;padding:6px 10px;border-radius:4px;color:#7c8ba2}.metric-switch button[aria-pressed=true]{color:#2856a1;background:white;box-shadow:0 1px 5px #2e4c7620}.business-chart{padding:28px 32px}.business-chart .svg-chart{max-width:940px}.business-foot .chart-caption{max-width:100%}.reflection-grid .card{box-shadow:none}.reflection-grid .card:first-child{background:#edf3fd;border-color:#e0e8f7}.reflection-grid h3{font-size:18px}.reflection-list b{font-size:13px;color:#3b557b;font-weight:600}.reflection-list span{font-size:12px;color:#72839e;line-height:1.9}.reflection-list li:before{color:#88a1c6;font-size:10px}.reflection-list li{margin-bottom:22px;padding-left:31px}.flow{gap:28px;margin-top:30px}.flow article{border-top:2px solid #cbd9f0;padding-top:20px}.flow b{color:#6684b3;font-size:11px}.flow h3{font-size:18px;line-height:1.7;font-weight:600}.flow p{font-size:12px;color:#74839b;line-height:1.9}#workflow{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}#about .card{background:transparent;border:0;border-radius:0;padding:12px 28px 0 0;box-shadow:none}#about .card+article{border-left:1px solid var(--line);padding-left:32px}#about .card h3{font-size:17px}#about .card p{font-size:12px}.downloads{gap:10px}.downloads a{border-radius:6px;border-color:#dce5f2;background:white;color:#4e6890;font-size:12px;padding:12px 18px}.downloads a:hover{border-color:#9db8e4}.notice{background:#eaf0f9;color:#75859c;border:0;font-size:11px;padding:16px 20px;border-radius:6px;margin-top:0}footer{margin-top:52px;padding:24px 0;border-color:#dfe6f1;background:#eef2f8;color:#8a98af;font-size:11px}
.generator-page .page-head{padding:42px 0 22px}.page-head h1{font-size:33px;font-weight:600;letter-spacing:-.8px;margin:5px 0 10px}.page-head .section-note{margin-bottom:12px}.generator-page .workspace{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:25px}.generator-page label{color:#425777;font-size:12px;font-weight:500}.generator-page input,.generator-page select,.generator-page textarea{border-color:#dae3f1;border-radius:5px;background:#fbfcfe;color:#354d70;font-size:13px;padding:10px 12px}.generator-page input:focus,.generator-page select:focus,.generator-page textarea:focus{background:#fff;border-color:#83a6e8}.generator-page .preview th{background:#eff4fc;color:#58739c;font-size:11px}.generator-page .preview td{color:#617a9c;border-color:#edf1f7}.generator-page .summary{border-top:1px solid #edf1f7;border-bottom:1px solid #edf1f7;padding:18px 0}.generator-page .summary b{font-size:28px;color:#2856a1;font-weight:600}.generator-page .summary span{font-size:11px}.generator-page .status{font-size:12px;color:#326ab9}.generator-page .status.error{color:#b73a4c}.fine,small{color:#8493aa}.generator-page .notice{margin-top:25px!important}
/* Keep the existing dashboard's behavior; align its visual tokens and hierarchy. */
.dashboard-page{--accent:#2563eb;--ink:#12233e;--nav:#12233e;--line:#e3e9f3;--paper:#fff;--muted:#7a89a0;--bg:#f5f7fb;font-size:13px}.dashboard-page .sidebar{background:#12233e;padding-top:30px}.dashboard-page .brandmark{background:#3569c3;border-radius:7px}.dashboard-page .tabs button{border-radius:5px;color:#aebcd2;font-size:12px}.dashboard-page .tabs button.active{background:#244371;color:#e3eeff;box-shadow:inset 3px 0 #80adff}.dashboard-page .tabs button:hover{background:#1d385f}.dashboard-page .nav-label{letter-spacing:1px;color:#657c9f;font-size:9px}.dashboard-page header{padding:29px 34px 24px;background:#ffffff;border-color:#e3e9f3}.dashboard-page h1{font-size:25px;letter-spacing:-.6px}.dashboard-page .eyebrow{letter-spacing:.5px;font-size:10px;color:#8192ad}.dashboard-page .demo-tag{background:#edf3fd;border-color:#dce7f8;color:#5d7baa;border-radius:4px}.dashboard-page .card{box-shadow:0 3px 12px #15315f03;border-radius:8px;border-color:#e1e8f3;padding:24px}.dashboard-page .metrics-card{padding:0}.dashboard-page .stat .value{color:#2d5183;font-weight:600;font-size:27px}.dashboard-page .stat .label{color:#8291a7}.dashboard-page .stat{border-color:#e7edf5}.dashboard-page .chip.active,.dashboard-page .chips .active{background:#e8f0ff!important;border-color:#c9daf6!important;color:#315b9d!important}.dashboard-page .tablewrap th{background:#f2f5fa;color:#7285a2}.dashboard-page .tablewrap td{border-color:#edf1f6}.dashboard-page .tablewrap tr.selected{background:#eef4ff}.dashboard-page .sidebar-bottom{border-color:#2a4264;color:#7792b7}.dashboard-page .sidebar-bottom a{color:#bdcee9}.dashboard-page .live-dot{background:#83b3ff}.dashboard-page .section-index{color:#d7e2f2}.dashboard-page .page-intro h2{font-size:20px}.dashboard-page .page-intro p{color:#8390a7}.dashboard-page .hint{color:#6d83a2}.dashboard-page footer{background:transparent;margin-top:0}.dashboard-page>a:first-child{background:#244b83!important;box-shadow:0 4px 15px #1c3a6a20;border-radius:6px!important}
@media(min-width:1500px){.hero{padding-top:88px;padding-bottom:0;column-gap:75px}.hero h1{font-size:51px}.preview-content{padding:28px 26px 0}.preview-bottom{margin:0 -26px;padding-left:26px;padding-right:26px}}
@media(max-width:1050px){.hero{gap:30px;grid-template-columns:1fr 1fr}.hero h1{font-size:36px;letter-spacing:-1px}.hero-title-sub{font-size:17px}.hero .lead{font-size:12px}.hero .btn{font-size:11px;padding:9px 12px}.preview-content{padding:20px 15px 0}.preview-bottom{margin:0 -15px;padding:12px 15px}.pipeline small{font-size:7px}.preview-period{display:none}.nav{gap:20px}.links{gap:16px}.links a{font-size:12px}.result-kpis article{padding:22px}.result-kpis strong{font-size:35px}}
@media(max-width:760px){.nav{padding:13px 20px;min-height:68px;gap:12px;flex-wrap:wrap}.logo{font-size:17px}.logo-symbol{width:25px;height:25px;font-size:21px}.links{gap:17px;width:100%;overflow-x:auto;white-space:nowrap;padding:3px 0 4px}.links a{font-size:11px;flex-shrink:0}.links .tool-nav{padding:3px 7px}.wrap{padding:0 20px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:40px 0 0;gap:32px}.hero .eyebrow{margin-bottom:17px;font-size:11px}.hero h1{font-size:37px;letter-spacing:-1px;margin-bottom:17px}.hero-title-sub{font-size:18px;margin-top:12px}.hero .lead{font-size:13px;max-width:100%}.hero .actions{margin-top:22px}.hero .btn{font-size:12px;padding:10px 15px}.workflow-preview{transform:none;max-width:530px;width:100%;margin:auto}.preview-content{padding:22px 20px 0}.preview-bottom{margin:0 -20px;padding:12px 20px}.pipeline small{font-size:8px}.preview-period{display:block}.hero .stats{margin-top:3px;padding:22px 0;display:grid;grid-template-columns:1.2fr 1fr;gap:0}.stats>div{padding-right:15px}.stats>div+div{padding-left:20px}.stats strong{font-size:21px}.stats span{font-size:10px}.section{padding:37px 0;scroll-margin-top:122px}.section h2{font-size:24px}.eyebrow{font-size:11px}.section-note{font-size:12px;margin-bottom:23px}.result-kpis{grid-template-columns:1fr;margin-top:24px}.result-kpis article{padding:18px 20px;grid-template-columns:1fr 1.25fr;column-gap:10px}.result-kpis strong{font-size:32px}.result-kpis p{font-size:10px}.result-tag{font-size:10px}.grid{gap:17px}.card,.business-chart{padding:23px 19px;border-radius:8px}.chart-top h3{font-size:18px}.bar-chart{gap:22px;height:236px}.bar-track{height:175px}.chart-caption,.card .chart-caption{font-size:10px}.business-chart .chart-top{display:block}.business-chart .metric-switch{margin-top:12px}.reflection-grid .card{padding:24px 20px}.reflection-list span{font-size:12px}.flow{gap:20px}.flow h3{font-size:16px}.flow p{font-size:11px}.flow article{padding-top:16px}#about .card{padding:0;}.grid #about .card{padding:0}#about .card+article{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.downloads a{font-size:11px;padding:10px 13px}.notice{font-size:10px;padding:14px 16px}.generator-page .workspace{grid-template-columns:1fr}.generator-page .page-head{padding-top:30px}.page-head h1{font-size:29px}.generator-page .card{padding:22px 18px}.dashboard-page .sidebar{padding:16px 18px}.dashboard-page header{padding:23px 18px 19px}.dashboard-page .card{padding:18px 16px}.dashboard-page .metrics-card{padding:0}.dashboard-page .stat .value{font-size:25px}.dashboard-page .tabs button{font-size:10px}.dashboard-page .demo-tag{font-size:9px}.dashboard-page .nav-label{display:none}.business-foot .chart-caption{max-width:100%}}
@media(max-width:360px){.hero h1{font-size:32px}.hero-title-sub{font-size:16px}.hero .actions{gap:8px}.hero .btn{font-size:11px;padding:9px 12px}.preview-period{display:none}.pipeline small{font-size:7px}.stats strong{font-size:19px}.result-kpis strong{font-size:29px}}
@media(prefers-reduced-motion:no-preference){.btn,.links a,.pipeline a{transition:background-color .16s ease,border-color .16s ease,color .16s ease}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.dashboard-page nav.tabs{background:transparent;border:0;position:static;backdrop-filter:none}.links{scrollbar-width:none}.links::-webkit-scrollbar{display:none}

