:root{--ink:#111130;--muted:#686881;--purple:#701fe8;--violet:#9447ff;--line:#e5e3f0;--soft:#f7f7fc;--nav:#0a0a2b;--green:#248f65;--orange:#ec9700}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#f7f8fd;font:15px/1.45 Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{color:inherit}a{text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}[hidden]{display:none!important}.login-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 75% 25%,rgba(137,65,255,.23),transparent 28%),linear-gradient(135deg,#080822,#17104c)}.login-shell{width:min(470px,100%)}.login-panel{padding:34px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#fff;box-shadow:0 26px 70px rgba(0,0,0,.3)}.login-brand,.portal-brand{display:flex;align-items:center;gap:9px}.login-brand img{width:190px}.login-brand b,.portal-brand b{padding:4px 7px;border:1px solid #bca4ec;border-radius:4px;color:#6e2cdf;font-size:.75rem}.login-kicker{display:block;margin-top:30px;color:var(--purple);font-size:.72rem;font-weight:900;letter-spacing:.08em}.login-panel h1{margin:8px 0 7px;font-size:2.2rem;letter-spacing:0}.login-panel>p{margin:0 0 22px;color:var(--muted)}.login-panel form{display:grid;gap:15px}.login-panel label{display:grid;gap:7px;font-size:.78rem;font-weight:800}.login-panel input,.brief-form input,.brief-form select,.brief-form textarea{width:100%;border:1px solid #d9d7e5;border-radius:6px;outline:0;background:#fff}.login-panel input,.brief-form input,.brief-form select{height:50px;padding:0 14px}.login-panel input:focus,.brief-form input:focus,.brief-form select:focus,.brief-form textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(112,31,232,.1)}.login-panel button{min-height:52px;margin-top:5px;border:0;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;background:linear-gradient(135deg,var(--violet),#5411bf);font-weight:900}.login-panel button svg{width:18px}.back-link{margin-top:20px;display:flex;align-items:center;justify-content:center;gap:7px;color:var(--muted);font-size:.78rem;font-weight:800}.back-link svg{width:15px}.alert{padding:12px 14px;border-radius:6px;font-weight:800}.alert.error{color:#a12c42;background:#fff0f3}.alert.success{color:#166b4e;background:#e9f8f1}.portal-body{min-height:100vh}.sidebar{width:290px;min-height:100vh;padding:22px 17px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:50;color:#fff;background:radial-gradient(circle at 0 25%,rgba(89,34,180,.24),transparent 30%),linear-gradient(180deg,#111239,#070721)}.portal-brand{height:50px;padding:0 12px;margin-bottom:18px}.portal-brand img{width:195px;filter:brightness(0) invert(1)}.portal-brand b{color:#e4d7ff;border-color:rgba(255,255,255,.25)}.sidebar nav{display:grid}.sidebar nav p{margin:17px 10px 7px;padding:0 0 9px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.14);color:#fff;font-size:.76rem;font-weight:900;letter-spacing:.06em}.sidebar nav p svg{width:20px;color:#a65cff}.sidebar nav a,.sidebar nav .disabled{min-height:44px;padding:0 13px;display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:10px;border-radius:6px;color:#e2e0ec;font-size:.86rem}.sidebar nav a svg,.sidebar nav .disabled svg{width:19px}.sidebar nav a:hover,.sidebar nav a.active{color:#fff;background:linear-gradient(100deg,#6840ad,#7432c8)}.sidebar nav .disabled{opacity:.52}.sidebar nav .disabled small{font-size:.58rem}.sidebar-offer{margin-top:auto;padding:15px;border-radius:7px;display:grid;grid-template-columns:34px 1fr;gap:8px;color:#fff;background:linear-gradient(135deg,#8140ef,#5a00e9)}.sidebar-offer>svg{width:28px}.sidebar-offer span{font-size:.75rem;font-weight:800}.sidebar-offer a{grid-column:1/-1;min-height:36px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;border-radius:5px;color:#4d0fa0;background:#fff;font-size:.68rem;font-weight:900}.sidebar-offer a svg{width:14px}.portal-shell{min-width:0;margin-left:290px}.portal-topbar{height:72px;padding:0 30px;display:flex;align-items:center;border-bottom:1px solid var(--line);background:#fff}.menu-button{display:none}.company-switch{min-width:285px;margin-left:auto;padding:7px 13px;display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:7px;background:#fff}.company-switch>svg:first-child{width:33px;height:33px;padding:7px;border-radius:5px;color:var(--purple);background:#f1eaff}.company-switch>svg:last-child{width:16px;margin-left:auto}.company-switch span{display:grid}.company-switch b{font-size:.83rem}.company-switch small{color:var(--muted);font-size:.65rem}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:13px}.topbar-actions button,.topbar-actions>a{width:38px;height:38px;border:0;display:grid;place-items:center;background:none}.topbar-actions svg{width:20px}.avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#7d25ec,#4c00c9);font-weight:900}.user-name{font-size:.78rem;font-weight:900}.portal-content{padding:20px 30px 36px}.breadcrumb{display:flex;align-items:center;gap:9px;color:#5f5b76;font-size:.72rem}.breadcrumb svg{width:14px}.page-heading{margin:10px 0 20px;display:flex;align-items:center;justify-content:space-between;gap:22px}.page-heading>div{display:flex;align-items:center;gap:15px}.heading-icon{width:48px;height:48px;display:grid;place-items:center;border:2px solid var(--purple);border-radius:6px;color:var(--purple)}.heading-icon svg{width:30px}.page-heading h1{margin:0;font-size:2.1rem;line-height:1.1}.page-heading p{margin:4px 0 0;color:var(--muted)}.tip{width:min(390px,38%);padding:13px 18px;display:flex;align-items:center;gap:13px;border-radius:7px;color:#5512a5;background:#f0eaff}.tip svg{width:31px;flex:0 0 auto;color:#8b37ef}.tip p{margin:0;font-size:.72rem}.panel{padding:19px;border:1px solid #ebeaf2;border-radius:8px;background:#fff;box-shadow:0 7px 22px rgba(22,18,55,.035)}.brief-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-wide{grid-column:1/-1}.field-title{margin-bottom:14px;display:flex;gap:12px}.field-title>b{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;border-radius:6px;color:#fff;background:linear-gradient(145deg,#851fff,#4f00cc)}.field-title span{display:grid}.field-title strong{font-size:.92rem}.field-title small{color:var(--muted);font-size:.7rem}.field-title em{color:#e52d50;font-style:normal}.field-title mark{margin-left:6px;padding:3px 7px;border-radius:12px;color:#656178;background:#ecebf2;font-size:.58rem;font-weight:400}.dropzone{min-height:145px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #cfc4e7;border-radius:7px;color:#4f12bf;text-align:center;cursor:pointer;background:#fcfbff}.dropzone input{position:absolute;width:1px;height:1px;opacity:0}.dropzone svg{width:34px;height:34px}.dropzone strong{margin-top:5px;font-size:.76rem}.dropzone span,.dropzone small{color:var(--muted);font-size:.67rem}.brief-form textarea{min-height:130px;padding:13px 14px;resize:vertical}.counter{display:block;margin-top:-24px;margin-right:11px;position:relative;text-align:right;color:var(--muted);font-size:.65rem}.form-actions{grid-column:1/-1;margin-top:4px;padding-top:14px;display:flex;justify-content:space-between;border-top:1px solid var(--line)}.form-actions>a{min-width:125px;min-height:50px;display:grid;place-items:center;border:1px solid #d8d5e3;border-radius:6px;font-weight:800}.form-actions button{min-height:50px;padding:0 25px;border:0;border-radius:6px;display:flex;align-items:center;gap:9px;color:#fff;background:linear-gradient(135deg,#8b2ff4,#5700d6);font-weight:900}.form-actions button svg{width:18px}.section-title{margin-bottom:14px;display:flex;align-items:center;gap:11px}.section-title>svg{width:34px;height:34px;padding:7px;border-radius:6px;color:#fff;background:linear-gradient(145deg,#8b27f4,#5600cc)}.section-title h2{margin:0;font-size:1rem}.section-title p{margin:2px 0 0;color:var(--muted);font-size:.72rem}.summary-row{min-height:78px;padding:7px;display:grid;grid-template-columns:160px 1fr 1fr 135px 130px 145px;align-items:center;gap:14px;border:1px solid var(--line);border-radius:7px}.banner-thumb{height:60px;display:grid;place-items:center;border-radius:5px;color:#fff;background:linear-gradient(135deg,#14112b,#b01953)}.banner-thumb svg{width:28px}.summary-row span{font-size:.75rem}.summary-row span b,.summary-row span small{display:block}.summary-row span small{color:var(--muted)}.summary-row>a{min-height:38px;display:flex;align-items:center;justify-content:center;gap:7px;border-radius:5px;color:#5900bd;background:#f0e7ff;font-size:.7rem;font-weight:900}.summary-row>a svg{width:15px}.status-pill{width:max-content;padding:7px 12px;border-radius:6px;color:#a66000;background:#fff0c9;font-weight:900}.status-pill.approved,.status-pill.running{color:#18714e;background:#dcf5e9}.campaign-grid{margin-top:12px;display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:12px}.campaign-grid>div{display:grid;gap:12px}.creative-placeholder{min-height:245px;padding:25px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #cfc8e0;border-radius:7px;text-align:center;background:#fcfbff}.creative-placeholder>svg{width:70px;height:70px;color:#7c2de5}.creative-placeholder h3{margin:10px 0 5px;color:#6111c9}.creative-placeholder p{max-width:520px;margin:0;color:var(--muted);font-size:.78rem}.creative-placeholder a{margin-top:15px;padding:9px 14px;border-radius:5px;color:#fff;background:var(--purple);font-size:.72rem;font-weight:900}.config-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.config-grid>div{min-height:68px;padding:11px;display:flex;align-items:center;gap:11px;border-radius:6px;background:#f8f8fc}.config-grid svg{width:25px;color:var(--purple)}.config-grid span{display:grid}.config-grid b{font-size:.68rem}.config-grid small{color:var(--muted);font-size:.67rem}.status-panel{height:max-content}.status-timeline{margin:0;padding:0;list-style:none}.status-timeline li{min-height:62px;display:grid;grid-template-columns:18px 1fr;gap:10px;position:relative;color:#77748b}.status-timeline li>i{width:14px;height:14px;margin-top:3px;border:3px solid #e0ddec;border-radius:50%;background:#c5c1d5;position:relative;z-index:1}.status-timeline li:not(:last-child)>i:after{content:"";width:2px;height:52px;position:absolute;top:11px;left:3px;background:#e0ddec}.status-timeline li.done>i{border-color:#ffe9b6;background:#f3a300}.status-timeline li.current{color:var(--orange)}.status-timeline b{font-size:.75rem}.status-timeline small{display:block;margin-top:3px;color:var(--muted);font-size:.66rem}.deadline{margin-top:12px;padding:14px;display:flex;align-items:flex-start;gap:10px;border-radius:7px;color:#5b20a5;background:#f1ebfb}.deadline svg{width:25px;flex:0 0 auto}.deadline p{margin:0;font-size:.66rem}.deadline b{display:block;margin-bottom:3px}.sidebar-backdrop{display:none}
@media(max-width:1180px){.summary-row{grid-template-columns:130px 1fr 1fr 120px}.summary-row>.status-pill,.summary-row>a{grid-row:2}.campaign-grid{grid-template-columns:1fr}.status-panel{display:grid;grid-template-columns:1fr 1fr;gap:20px}.status-panel>.section-title{grid-column:1/-1}.config-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.sidebar{transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.sidebar-backdrop{display:block;position:fixed;inset:0;z-index:40;background:rgba(6,5,24,.55);opacity:0;pointer-events:none;transition:opacity .2s}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.portal-shell{margin-left:0}.portal-topbar{height:64px;padding:0 16px}.menu-button{width:40px;height:40px;border:1px solid var(--line);border-radius:6px;display:grid;place-items:center;background:#fff}.menu-button svg{width:21px}.company-switch{min-width:0;margin-left:12px}.company-switch>span{max-width:180px}.company-switch b,.company-switch small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-name{display:none}.portal-content{padding:18px 16px 30px}.page-heading{align-items:flex-start;flex-direction:column}.tip{width:100%}.brief-form{grid-template-columns:1fr}.field-wide{grid-column:auto}.summary-row{grid-template-columns:105px 1fr 1fr}.summary-row>span:nth-of-type(3){grid-column:2/-1}.config-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.login-panel{padding:25px 20px}.login-brand img{width:165px}.portal-topbar{padding:0 11px}.company-switch{padding:6px 8px}.company-switch>svg:last-child,.topbar-actions button,.topbar-actions .avatar{display:none}.topbar-actions{margin-left:6px}.portal-content{padding:15px 10px 26px}.breadcrumb{font-size:.64rem}.page-heading h1{font-size:1.65rem}.page-heading p{font-size:.78rem}.heading-icon{width:42px;height:42px}.heading-icon svg{width:25px}.panel{padding:15px}.form-actions{align-items:stretch;flex-direction:column-reverse;gap:9px}.form-actions button{justify-content:center}.summary-row{grid-template-columns:82px 1fr;gap:9px}.summary-row>span,.summary-row>span:nth-of-type(3),.summary-row>.status-pill,.summary-row>a{grid-column:auto;grid-row:auto}.summary-row>a{grid-column:1/-1}.campaign-grid{display:block}.campaign-grid>div{margin-bottom:12px}.status-panel{display:block}.config-grid{grid-template-columns:1fr}.creative-placeholder{min-height:220px}.brief-form textarea{min-height:150px}}
.login-panel .protocol-help{margin:-8px 0 22px;padding:11px 12px;display:flex;align-items:flex-start;gap:9px;border-radius:6px;color:#5b20a5;background:#f2ecfc;font-size:.7rem}.login-panel .protocol-help svg{width:18px;flex:0 0 auto}.campaign-grid-first{margin-top:0}
@media(min-width:1181px){.campaign-grid{align-items:stretch}.status-panel{height:auto;display:flex;flex-direction:column}.status-timeline{flex:1;display:flex;flex-direction:column;justify-content:space-between}.deadline{margin-top:auto}}
.setup-email{margin:-5px 0 20px;padding:13px;display:flex;align-items:center;gap:10px;border:1px solid #e2d6f6;border-radius:6px;color:#5314a7;background:#f7f2ff}.setup-email svg{width:22px;flex:0 0 auto}.setup-email span{min-width:0;display:grid}.setup-email small{color:var(--muted);font-size:.65rem}.setup-email b{overflow:hidden;text-overflow:ellipsis;font-size:.78rem}.password-hint{margin-top:-8px;color:var(--muted);font-size:.67rem}.secondary-login-link{margin-top:17px;display:flex;align-items:center;justify-content:center;gap:7px;color:#621bc0;font-size:.72rem;font-weight:800}.secondary-login-link svg{width:16px}.primary-login-link{min-height:50px;margin-top:18px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:6px;color:#fff;background:linear-gradient(135deg,var(--violet),#5411bf);font-weight:900}.primary-login-link svg{width:17px}.payment-pending{padding:14px;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:6px;color:#5b20a5;background:#f2ecfc;font-weight:800}.payment-pending svg{width:20px;animation:portal-spin 1s linear infinite}@keyframes portal-spin{to{transform:rotate(360deg)}}
