:root{--navy:#062b52;--red:#f20d35;--ink:#0b223e;--muted:#64748b;--line:#d9e2ec;--soft:#f3f7fb;--green:#0b8d63}*{box-sizing:border-box}body{margin:0;background:var(--soft);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{background:var(--navy);color:#fff;padding:28px 20px}.brand{display:flex;align-items:center;gap:10px;font-size:21px;font-weight:900;margin-bottom:32px}.brand-mark{width:28px;height:28px;border:7px solid #fff;border-top:7px solid var(--red);transform:rotate(45deg);border-radius:3px}.nav{display:grid;gap:8px}.nav a{padding:11px 13px;border-radius:10px;color:#dceafb}.nav a:hover{background:#ffffff15;color:#fff}.main{padding:30px;max-width:1350px;width:100%;margin:auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{color:var(--red);font-size:12px;letter-spacing:.14em;font-weight:900;text-transform:uppercase}.title{font-size:38px;margin:5px 0 8px}.muted{color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 10px 24px #0b223e0b}.card h2{margin-top:0}.metric{font-size:32px;font-weight:900}.badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#dff7ee;color:var(--green);font-size:12px}.badge,.btn{font-weight:800}.btn{border:0;border-radius:11px;background:var(--red);color:#fff;padding:12px 18px;cursor:pointer}.btn.secondary{background:var(--navy)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,var(--navy),#0b5790)}.login-card{width:min(440px,100%);background:#fff;border-radius:22px;padding:32px}.field{display:grid;gap:7px;margin:16px 0;font-weight:700}.field input,.field textarea{border:1px solid var(--line);border-radius:10px;padding:12px}.date-row{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:14px}.error{background:#fee2e2;color:#991b1b;border-radius:10px;padding:10px;margin:12px 0}.steps{display:grid;gap:12px;counter-reset:step}.step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 18px 18px 58px;position:relative}.step:before{counter-increment:step;content:counter(step);position:absolute;left:18px;top:17px;width:26px;height:26px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:900}.step details{margin-top:16px}.step summary{cursor:pointer;color:var(--navy);font-weight:800}.report-view{display:grid;gap:16px;margin-bottom:24px}.report-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.report-heading h2{margin:4px 0 0}.report-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.report-metric{display:grid;gap:8px}.report-metric strong{font-size:28px;color:var(--navy)}.report-metric small{color:var(--green);font-weight:800}.report-columns h3,.report-summary h3{margin-top:0}.report-summary p{font-size:17px;line-height:1.55;margin-bottom:0}.report-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.report-list{display:grid;gap:14px}.report-list>div{border-top:1px solid var(--line);padding-top:14px}.report-list>div:first-child{border-top:0;padding-top:0}.report-list p{line-height:1.45;margin:7px 0}.approval-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff1cf;color:#8a5a00;font-size:12px;font-weight:900}.report-empty{margin-bottom:24px}.campaign-list{display:grid;gap:16px;margin-top:22px}.campaign-card{display:grid;gap:12px}.campaign-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.campaign-head h2{margin:7px 0 0}.campaign-head>strong{font-size:12px;color:var(--muted)}.campaign-status{display:inline-flex;padding:5px 9px;border-radius:999px;background:#fff1cf;color:#8a5a00;font-size:12px;font-weight:900}.campaign-status.approved{background:#dff7ee;color:var(--green)}.campaign-status.rejected{background:#fee2e2;color:#991b1b}.campaign-copy{font-size:16px;line-height:1.55;white-space:pre-wrap}.campaign-actions,.campaign-meta{display:flex;gap:10px;flex-wrap:wrap}.campaign-meta span{padding:6px 9px;border-radius:8px;background:var(--soft);font-size:12px;color:var(--muted);font-weight:800}.campaign-message{border-color:#8bc9a6;background:#f4fbf7;color:var(--green);font-weight:800}.campaign-builder h2{margin:0}.campaign-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.field select{border:1px solid var(--line);border-radius:10px;padding:12px;background:#fff}@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{padding:18px}.nav{grid-template-columns:repeat(3,1fr)}.main{padding:20px}.date-row,.grid{grid-template-columns:1fr}.title{font-size:30px}.report-columns,.report-metrics{grid-template-columns:1fr}.report-heading{align-items:flex-start}.report-metric strong{font-size:24px}}