@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#221d1e;background:#f4f1ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.eyebrow{margin:0 0 7px;color:#016140;font-size:11px;font-weight:700;letter-spacing:.14em}.muted{color:#746e70}.primary{width:100%;min-height:52px;border:0;border-radius:12px;background:#016140;color:#fff;font-weight:700;letter-spacing:.04em;box-shadow:0 12px 24px #004a3033}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1.05fr) minmax(420px,.95fr);background:#fff}.login-brand{position:relative;min-height:720px;overflow:hidden;padding:50px 7vw;background:#016140;color:#fff}.login-brand:before{content:"";position:absolute;inset:-30%;background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.14),transparent 32%),radial-gradient(circle at 80% 75%,rgba(105,0,10,.28),transparent 36%)}.brand-lockup{position:relative;width:min(310px,75%);height:95px;overflow:hidden}.brand-lockup img,.mobile-brand img,.sidebar-brand img{width:100%;display:block}.brand-lockup img{transform:translateY(-4%)}.login-copy{position:relative;z-index:1;margin-top:15vh}.login-copy p{font-weight:700;letter-spacing:.18em;font-size:12px}.login-copy h1{margin:14px 0 20px;font:400 clamp(58px,7.5vw,112px)/.82 "Libre Caslon Display",Georgia,serif;letter-spacing:-.055em}.login-copy span{display:block;max-width:390px;font-size:18px;opacity:.9}.login-bottles{position:absolute;right:-25px;bottom:-24px;width:min(270px,34vw);filter:drop-shadow(0 16px 22px rgba(74,0,4,.22))}.login-panel{display:grid;place-items:center;padding:42px}.login-card{width:min(430px,100%)}.mobile-brand{display:none}.login-card h2{margin:0;font:400 44px/1 Libre Caslon Display,Georgia,serif}.login-card>.muted{margin:14px 0 34px;line-height:1.55}.login-card label{display:block;margin:18px 0 7px;color:#696164;font-size:11px;font-weight:700;letter-spacing:.11em}.login-card input,.filters input,.filters select,.winner-actions input{width:100%;height:50px;border:1px solid #dcd6d4;border-radius:10px;padding:0 14px;background:#fbfaf9;color:#282224;outline:none}.login-card input:focus,.filters input:focus,.filters select:focus,.winner-actions input:focus{border-color:#016140;box-shadow:0 0 0 3px #0161401a}.login-card .primary{margin-top:24px}.error{padding:10px 12px;border-radius:8px;background:#fff0f1;color:#a00012;font-size:14px}.login-notice{padding:11px 13px;border:1px solid #b9ddcf;border-radius:8px;background:#effaf6;color:#13634d;font-size:13px;line-height:1.45}.forgot-button,.back-to-login{border:0;background:transparent;color:#4f46e5;font-weight:700}.forgot-button{display:block;margin:11px 0 0 auto;padding:2px 0;font-size:12px}.back-to-login{display:block;margin:18px auto 0;padding:4px 8px;font-size:12px}.forgot-button:hover,.back-to-login:hover{color:#3730a3;text-decoration:underline}.security-note{text-align:center;color:#91898b;font-size:12px;margin-top:20px}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:24px 18px;background:#004a30;color:#fff}.sidebar:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(160deg,rgba(255,255,255,.06),transparent 30%)}.sidebar-brand{position:relative;z-index:1;height:90px;overflow:hidden;margin:-6px 6px 14px}.sidebar-brand img{transform:translateY(-2%)}.nav-label{position:relative;z-index:1;margin:12px 12px 10px;color:#ffffff8c;font-size:10px;font-weight:700;letter-spacing:.15em}.nav-item{position:relative;z-index:1;width:100%;display:flex;align-items:center;gap:11px;min-height:46px;margin:3px 0;padding:0 13px;border:0;border-radius:10px;background:transparent;color:#ffffffbd;text-decoration:none;font-weight:600}.nav-item span{margin-left:auto;min-width:24px;padding:3px 7px;border-radius:999px;background:#ffffff1a;text-align:center;font-size:11px}.nav-item.active{background:#ffffff21;color:#fff}.nav-item:hover{background:#ffffff17;color:#fff}.sidebar-spacer{flex:1}.account-card{position:relative;z-index:1;display:flex;flex-direction:column;gap:5px;margin:18px 5px 8px;padding:13px;border:1px solid rgba(255,255,255,.12);border-radius:10px;overflow:hidden}.account-card small{color:#ffffff80;font-size:9px;letter-spacing:.13em}.account-card strong{overflow:hidden;text-overflow:ellipsis;font-size:12px}.account-card span{color:#f6adb5;font-size:11px;text-transform:uppercase}.logout{text-align:left}.dashboard{min-width:0;padding:38px clamp(24px,4vw,64px) 28px;background:#f6f3f1}.topbar{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:26px}.topbar h1{margin:0;font:400 clamp(34px,4vw,52px)/1 "Libre Caslon Display",Georgia,serif;letter-spacing:-.025em}.topbar .muted{margin:8px 0 0}.top-actions{display:flex;align-items:center;gap:10px}.live-pill{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 13px;border:1px solid #d9d2d0;border-radius:999px;background:#fff;color:#51494b;font-size:11px;font-weight:700;letter-spacing:.08em}.live-pill i{width:7px;height:7px;border-radius:50%;background:#22a35a;box-shadow:0 0 0 4px #22a35a1f}.icon-button,.secondary{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 15px;border:1px solid #d8d1cf;border-radius:9px;background:#fff;color:#51494b;font-weight:600}.filters{display:flex;align-items:flex-end;gap:12px;padding:15px;margin-bottom:22px;border:1px solid #e4dedc;border-radius:14px;background:#ffffffbf}.filters label{min-width:145px;color:#756d70;font-size:9px;font-weight:700;letter-spacing:.1em}.filters label:first-child{min-width:230px}.filters input,.filters select{height:40px;margin-top:6px;background:#fff;font-size:13px}.filters small{margin:0 0 10px auto;color:#938b8d;white-space:nowrap}.clear-button{height:40px;border:0;background:transparent;color:#b0182f;font-weight:600}.error-banner{margin-bottom:20px;padding:13px 15px;border:1px solid #efb8bd;border-radius:10px;background:#fff2f3;color:#9c1025}.success-banner{margin-bottom:20px;padding:13px 15px;border:1px solid #a9ddbb;border-radius:10px;background:#effaf3;color:#17683a}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:15px}.metric{min-height:150px;display:flex;flex-direction:column;padding:21px;border:1px solid #e2dcda;border-radius:14px;background:#fff;box-shadow:0 8px 24px #502f3509}.metric span{color:#81797b;font-size:10px;font-weight:700;letter-spacing:.1em}.metric strong{margin:14px 0 auto;font:400 48px/1 Libre Caslon Display,Georgia,serif}.metric small{color:#8d8587;font-size:12px}.primary-metric{border-color:#016140;background:#016140;color:#fff}.primary-metric span,.primary-metric small{color:#ffffffc7}.overview-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.75fr);gap:15px;margin-bottom:15px}.panel{border:1px solid #e2dcda;border-radius:14px;background:#fff;box-shadow:0 8px 24px #502f3509}.activity-panel,.prize-panel{min-height:330px;padding:22px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.panel-heading h2{margin:0;font:400 27px/1.1 Libre Caslon Display,Georgia,serif}.legend{display:flex;gap:14px;color:#81797b;font-size:11px}.legend span{display:flex;align-items:center;gap:6px}.legend i{width:8px;height:8px;border-radius:50%}.claims-dot{background:#016140}.winner-dot{background:#004a30}.chart{height:220px;display:flex;align-items:stretch;gap:clamp(8px,2vw,25px);margin-top:24px;padding-top:5px;border-bottom:1px solid #e7e2e0}.chart-day{min-width:0;flex:1;display:flex;flex-direction:column;justify-content:flex-end;text-align:center}.bars{height:175px;display:flex;align-items:flex-end;justify-content:center;gap:4px}.bars i{width:min(16px,32%);min-height:3px;border-radius:4px 4px 0 0;transition:height .3s ease}.claim-bar{background:#016140}.winner-bar{background:#004a30}.chart-day>span{padding:10px 0;color:#8d8587;font-size:10px;text-transform:uppercase}.prize-list{margin-top:20px}.prize-list>div{display:flex;align-items:center;justify-content:space-between;min-height:48px;border-bottom:1px solid #eee9e7}.prize-list span{display:flex;align-items:center;gap:10px;font-size:13px}.prize-list b{width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:#f7ecee;color:#b4162d;font-size:10px}.prize-list strong{color:#004a30}.empty{color:#968e90;font-size:13px}.winners-panel{overflow:hidden}.winners-heading{padding:22px;border-bottom:1px solid #ece7e5}.winners-heading .muted{margin:6px 0 0;font-size:12px}.winner-actions{display:flex;gap:9px}.winner-actions input{width:min(300px,30vw);height:42px;background:#faf8f7}.secondary svg{width:17px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th{padding:12px 20px;background:#faf8f7;color:#877f81;text-align:left;font-size:9px;letter-spacing:.1em}td{padding:15px 20px;border-top:1px solid #eee9e7;color:#625b5d;font-size:13px;vertical-align:middle}td strong,td span{display:block}td strong{color:#2a2426;font-size:13px}td span{margin-top:3px;color:#8b8385;font-size:11px}td code{padding:5px 7px;border-radius:6px;background:#f3efed;font-size:10px}.status{display:inline-block;width:max-content;padding:5px 9px;border-radius:999px;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.status.claimed,.status.active{background:#e8f7ee;color:#17713f}.status.pending{background:#fff5da;color:#8b6100}.table-empty{padding:42px;text-align:center}.invite-panel{margin-bottom:20px;padding:24px}.invite-panel .muted,.admin-list-heading .muted{margin:7px 0 0;font-size:12px}.invite-form{display:grid;grid-template-columns:minmax(260px,1fr) 180px 210px;align-items:end;gap:12px;margin-top:22px}.invite-form label{color:#756d70;font-size:9px;font-weight:700;letter-spacing:.1em}.invite-form input,.invite-form select,.role-select{width:100%;height:44px;margin-top:6px;border:1px solid #dcd6d4;border-radius:9px;padding:0 12px;background:#fbfaf9;color:#282224;outline:none}.invite-form input:focus,.invite-form select:focus,.role-select:focus{border-color:#016140;box-shadow:0 0 0 3px #0161401a}.invite-button{min-height:44px;height:44px}.role-guide{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:18px;padding-top:16px;border-top:1px solid #eee9e7;color:#81797b;font-size:11px}.role-guide b{color:#4b4345}.admin-list-panel{overflow:hidden}.admin-list-heading{padding:22px}.role-select{min-width:118px;height:38px;margin:0}.danger-button{min-height:38px;padding:0 13px;border:1px solid #e7b7bd;border-radius:8px;background:#fff5f6;color:#ab1730;font-weight:600}.danger-button:hover:not(:disabled){border-color:#c51b34;background:#ffecef}footer{padding:20px 0 0;color:#999092;text-align:center;font-size:11px}.state-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:#f6f3f1}.state-card{width:min(520px,100%);padding:34px;border-radius:16px;background:#fff;text-align:center;box-shadow:0 18px 60px #502f351f}.state-card h1{font:400 36px/1.1 Libre Caslon Display,Georgia,serif}.state-card .primary{margin-top:15px}.spinner{width:42px;height:42px;border:4px solid #e0ece7;border-top-color:#016140;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1050px){.app-shell{grid-template-columns:82px 1fr}.sidebar{padding:18px 12px}.sidebar-brand{height:54px;margin:0 -4px 20px}.nav-label,.nav-item:not(.logout){font-size:0}.nav-item{justify-content:center;padding:0}.nav-item span{position:absolute;top:3px;right:4px;min-width:18px;padding:2px 4px;font-size:8px}.account-card{display:none}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.login-shell{grid-template-columns:1fr}.login-brand{display:none}.login-panel{min-height:100vh;padding:26px;background:#f6f3f1}.login-card{padding:28px;border-radius:16px;background:#fff;box-shadow:0 18px 60px #502f351c}.mobile-brand{display:block;height:82px;overflow:hidden;margin:-12px 0 28px;padding:0 25px;background:#016140;border-radius:10px}.mobile-brand img{transform:translateY(-4%)}.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;flex-direction:row;align-items:center;padding:10px 14px}.sidebar-brand{width:110px;height:46px;margin:0 auto 0 0}.nav-label,.sidebar-spacer,.account-card{display:none}.sidebar .nav-item{width:40px;min-height:40px;margin:0 1px;font-size:0}.sidebar .nav-item span{display:none}.dashboard{padding:25px 16px}.topbar{align-items:flex-start}.topbar .muted,.live-pill{display:none}.icon-button{width:42px;padding:0;font-size:0}.filters{flex-wrap:wrap}.filters label,.filters label:first-child{min-width:calc(50% - 6px);flex:1}.filters label:first-child{min-width:100%}.filters small{width:100%;margin:0}.metric-grid{grid-template-columns:1fr 1fr}.metric{min-height:130px;padding:16px}.metric strong{font-size:40px}.overview-grid{grid-template-columns:1fr}.winner-actions{width:100%;flex-wrap:wrap}.winners-heading{flex-direction:column}.winner-actions input{width:100%}.invite-form{grid-template-columns:1fr 150px}.invite-button{grid-column:1 / -1}}@media(max-width:430px){.metric-grid{grid-template-columns:1fr}.filters label,.filters label:first-child{min-width:100%}.legend{display:none}.invite-form{grid-template-columns:1fr}.invite-button{grid-column:auto}}:root{--ink: #111c3b;--navy: #101a3d;--navy-deep: #09122e;--indigo: #4f46e5;--teal: #0d9488;--amber: #f59e0b}.eyebrow{color:var(--indigo)}.primary{background:var(--indigo);box-shadow:0 12px 24px #4f46e533}.login-brand{background:linear-gradient(145deg,var(--navy-deep),#172554 62%,#164e63)}.login-brand:before{background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.12),transparent 32%),radial-gradient(circle at 76% 76%,rgba(13,148,136,.35),transparent 37%)}.generic-brand{position:relative;z-index:2;display:flex;align-items:center;gap:12px;color:#fff}.generic-brand .brand-wheel{width:44px;height:44px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.75);border-radius:50%;background:conic-gradient(from 20deg,#4f46e5,#0d9488,#f59e0b,#4f46e5);color:#fff;box-shadow:inset 0 0 0 5px #09122eb8;font-size:19px}.generic-brand>span:last-child{display:flex;flex-direction:column}.generic-brand b{letter-spacing:.1em;font-size:16px}.generic-brand small{margin-top:3px;color:#ffffffa1;font-size:8px;font-weight:700;letter-spacing:.21em}.login-wheel{position:absolute;right:-100px;bottom:-100px;width:min(430px,46vw);aspect-ratio:1;border:15px solid rgba(255,255,255,.86);border-radius:50%;background:conic-gradient(#4f46e5 0 16.66%,#0d9488 0 33.33%,#f59e0b 0 50%,#4f46e5 0 66.66%,#0d9488 0 83.33%,#f59e0b 0);box-shadow:0 26px 65px #00000052,inset 0 0 0 7px #ffffff47;transform:rotate(-12deg)}.login-wheel:before{content:"";position:absolute;inset:34%;border:9px solid white;border-radius:50%;background:var(--navy-deep)}.login-wheel b{position:absolute;inset:42%;z-index:2;display:grid;place-items:center;color:#fff;font-size:clamp(14px,2.2vw,23px);transform:rotate(12deg)}.login-wheel i{position:absolute;left:50%;top:-30px;width:5px;height:calc(50% + 30px);background:#ffffffeb;transform-origin:50% 100%}.login-wheel i:nth-child(2){transform:rotate(60deg)}.login-wheel i:nth-child(3){transform:rotate(120deg)}.login-wheel i:nth-child(4){transform:rotate(180deg)}.login-wheel i:nth-child(5){transform:rotate(240deg)}.login-wheel i:nth-child(6){transform:rotate(300deg)}.mobile-brand{height:auto;min-height:74px;padding:14px 18px;background:linear-gradient(145deg,var(--navy-deep),#172554)}.sidebar{background:linear-gradient(180deg,var(--navy-deep),var(--navy))}.sidebar-brand{height:auto;min-height:64px;overflow:visible;margin:0 6px 18px}.sidebar-brand .generic-brand{gap:9px}.sidebar-brand .brand-wheel{width:34px;height:34px;font-size:14px}.sidebar-brand .generic-brand b{font-size:12px}.sidebar-brand .generic-brand small{font-size:6px}.login-card input:focus,.filters input:focus,.filters select:focus,.winner-actions input:focus,.invite-form input:focus,.invite-form select:focus,.role-select:focus{border-color:var(--indigo);box-shadow:0 0 0 3px #4f46e51a}.primary-metric{border-color:var(--indigo);background:linear-gradient(145deg,var(--indigo),#3730a3)}.claims-dot,.claim-bar{background:var(--indigo)}.winner-dot,.winner-bar{background:var(--teal)}.prize-list strong{color:var(--teal)}.publish-button{min-height:44px;padding:0 19px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--indigo),#6366f1);color:#fff;font-weight:700;letter-spacing:.04em;box-shadow:0 10px 22px #4f46e538}.back-link{display:block;margin:0 0 12px;padding:0;border:0;background:transparent;color:#6862bf;font-size:12px;font-weight:700}.builder-topbar{align-items:flex-end}.builder-tabs{display:flex;gap:6px;margin:-4px 0 22px;padding:6px;overflow-x:auto;border:1px solid #e2e4ee;border-radius:12px;background:#fff}.builder-tabs button{min-height:39px;padding:0 16px;border:0;border-radius:8px;background:transparent;color:#77798a;white-space:nowrap;font-size:12px;font-weight:700}.builder-tabs button.active{background:#eef0ff;color:#4338ca}.builder-tabs button:hover{background:#f4f4fa}.builder-loading{margin-bottom:14px;color:#807f8c;font-size:12px}.builder-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.6fr);gap:16px;align-items:start}.builder-panel{margin-bottom:16px;padding:24px}.builder-panel .panel-heading .muted{max-width:660px;margin:7px 0 0;font-size:12px;line-height:1.5}.full-span{grid-column:1 / -1}.form-grid{display:grid;gap:16px;margin-top:22px}.form-grid.two-col{grid-template-columns:1fr 1fr}.form-grid label,.colour-grid label,.wide-field,.segment-row label{color:#747484;font-size:9px;font-weight:700;letter-spacing:.1em}.form-grid input,.form-grid select,.form-grid textarea,.wide-field select,.prize-row input,.segment-row input:not([type=color]),.segment-row select,.add-row input{width:100%;height:45px;margin-top:6px;border:1px solid #dadee8;border-radius:9px;padding:0 12px;background:#fbfcff;color:#20243a;outline:none}.form-grid textarea{height:auto;min-height:72px;padding:10px 12px;line-height:1.35;resize:vertical}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.wide-field select:focus,.prize-row input:focus,.segment-row input:focus,.segment-row select:focus,.add-row input:focus{border-color:var(--indigo);box-shadow:0 0 0 3px #4f46e517}.field-help{display:block;margin-top:7px;color:#74778a;font-size:12px;line-height:1.45;text-transform:none;letter-spacing:0}.action-button{width:auto;min-width:190px;margin-top:22px;padding:0 20px}.campaign-preview{position:sticky;top:22px;padding:17px}.campaign-preview>.eyebrow{margin:3px 4px 14px}.preview-screen{position:relative;min-height:500px;display:flex;flex-direction:column;align-items:center;overflow:hidden;padding:28px 22px 24px;border-radius:12px;box-shadow:inset 0 0 0 1px #ffffff26;text-align:center}.preview-screen:after{content:"";position:absolute;inset:auto -40% -30% 20%;height:65%;background:radial-gradient(circle,rgba(255,255,255,.16),transparent 68%)}.preview-logo{z-index:1;width:min(72%,230px);max-height:74px;object-fit:contain}.preview-placeholder{z-index:1;padding:12px 20px;border:1px dashed currentColor;border-radius:8px;opacity:.6;font-size:11px;letter-spacing:.15em}.preview-screen h3{z-index:1;margin:55px 0 20px;font:700 30px/1.05 DM Sans,sans-serif;white-space:pre-line}.preview-product{z-index:1;width:54%;height:190px;object-fit:contain}.preview-product-placeholder{z-index:1;width:120px;height:170px;display:grid;place-items:center;border:1px dashed currentColor;border-radius:14px;opacity:.5;font-size:9px;letter-spacing:.12em}.preview-cta{z-index:1;width:100%;margin-top:auto;padding:14px 8px;border:2px solid;border-radius:10px;font-size:11px;font-weight:800;letter-spacing:.06em}.colour-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:22px}.colour-input{display:flex;margin-top:6px;border:1px solid #dadee8;border-radius:9px;overflow:hidden;background:#fbfcff}.colour-input input[type=color]{width:42px;height:42px;flex:0 0 auto;padding:3px;border:0;background:transparent}.colour-input input:last-child{min-width:0;width:100%;border:0;padding:0 8px;background:transparent;font-size:10px}.wide-field{display:block;max-width:300px;margin-top:18px}.asset-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}.asset-card{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:15px;min-height:126px;padding:13px;border:1px solid #e2e4ed;border-radius:12px;background:#fbfcff}.asset-preview{width:100px;height:96px;display:grid;place-items:center;overflow:hidden;border-radius:9px;background:linear-gradient(145deg,#edf0f8,#f9fafc);color:#999dad;font-size:9px;font-weight:700;letter-spacing:.12em}.asset-preview img{width:100%;height:100%;object-fit:contain}.audio-preview{font-size:35px;color:var(--indigo)}.asset-copy{min-width:0}.asset-copy strong{color:#25283a;font-size:13px}.asset-copy p{margin:5px 0;color:#858694;font-size:11px;line-height:1.4}.asset-copy small{display:block;overflow:hidden;color:#686a7a;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.upload-button{min-height:36px;display:grid;place-items:center;padding:0 12px;border:1px solid #cfd2df;border-radius:8px;background:#fff;color:#4f46e5;font-size:10px;font-weight:800;cursor:pointer}.upload-button input{display:none}.prize-editor{margin-top:20px}.prize-row{display:grid;grid-template-columns:28px minmax(150px,.8fr) minmax(200px,1.3fr) minmax(210px,.8fr) 80px;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #eceef3}.prize-row input{margin:0}.prize-row label input{margin-top:4px}.row-number{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:#eef0ff;color:#4f46e5;font-size:10px;font-weight:800}.stock-control>span{display:block;font-size:10px;font-weight:800;letter-spacing:.09em;color:#5b6074}.stock-control>div{display:grid;grid-template-columns:38px 64px 38px;gap:5px;margin-top:5px}.stock-control button{height:38px;border:1px solid #cfd3e2;border-radius:9px;background:#fff;color:#4037d7;font-size:20px;font-weight:800;cursor:pointer}.stock-control button:disabled{color:#aeb2c1;cursor:default}.stock-control input{height:38px;padding:0 5px;text-align:center;font-weight:800}.stock-control small{display:block;margin-top:5px;color:#868b9c;font-size:10px}.toggle-label{display:flex;align-items:center;gap:6px;color:#666979;font-size:11px}.toggle-label input{width:auto;height:auto}.add-row{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(220px,1.2fr) 100px 130px;gap:9px;margin-top:16px}.add-row input{margin:0}.wheel-layout{display:grid;grid-template-columns:minmax(240px,.55fr) minmax(0,1.45fr);gap:28px;align-items:center;margin-top:24px}.wheel-preview{position:relative;width:min(100%,340px);aspect-ratio:1;display:grid;place-items:center;justify-self:center;border:10px solid white;border-radius:50%;box-shadow:0 14px 40px #141d462e,0 0 0 1px #dfe2eb}.wheel-preview:after{content:"";position:absolute;inset:38%;border:5px solid white;border-radius:50%;background:var(--navy)}.wheel-preview div{z-index:1;color:#fff;font-size:12px;font-weight:800}.segment-row{display:grid;grid-template-columns:25px 35px 90px minmax(130px,1fr) minmax(145px,.8fr) 72px;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #eceef3}.segment-row>span{color:#696b7c;font-size:11px;font-weight:800}.segment-row input,.segment-row select{height:39px;margin:0;padding:0 8px}.segment-row input[type=color]{width:34px;padding:2px;border:1px solid #daddE7;border-radius:7px;background:#fff}.segment-row label input{margin-top:3px}.barcode-list{margin-top:18px}.barcode-list>div{display:grid;grid-template-columns:minmax(180px,.7fr) 1fr auto;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid #eceef3}.barcode-list code{padding:7px 9px;border-radius:7px;background:#f0f1f7;font-size:11px}.barcode-list>div>span:not(.status){color:#737585;font-size:12px}.barcode-form{grid-template-columns:minmax(180px,.7fr) 1fr 150px}.publish-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:16px}.publish-card h2{margin:0;font:400 34px/1.1 Libre Caslon Display,Georgia,serif}.publish-card>p:not(.eyebrow){color:#737585;line-height:1.6}.readiness{margin:22px 0;padding:0;list-style:none}.readiness li{position:relative;margin:9px 0;padding-left:25px;color:#656777;font-size:13px}.readiness li:before{position:absolute;left:0;width:17px;height:17px;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:10px}.readiness .ready:before{content:"✓";background:var(--teal)}.readiness .missing:before{content:"!";background:#db324a}.readiness .optional:before{content:"○";background:#9699a8}.version-card{min-height:250px;display:flex;flex-direction:column;align-items:flex-start;padding:24px;background:linear-gradient(145deg,var(--navy-deep),#172554);color:#fff}.version-card .eyebrow{color:#8ee5db}.version-card>strong{margin:18px 0;font:400 64px/1 Libre Caslon Display,Georgia,serif}.version-card>span{color:#ffffffa8;font-size:12px;line-height:1.5}.version-card code{max-width:100%;margin-top:auto;overflow:hidden;color:#ffffff73;text-overflow:ellipsis;font-size:9px}.create-panel{margin-bottom:17px;padding:22px}.create-form{grid-template-columns:1.1fr .8fr .8fr 170px;align-items:end}.create-form .primary{min-height:45px}.close-button{width:34px;height:34px;border:0;border-radius:8px;background:#f1f2f7;color:#66697a;font-size:22px}.campaign-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.campaign-card{min-height:250px;display:grid;grid-template-columns:1fr 25px;grid-template-rows:94px 1fr;gap:16px;overflow:hidden;padding:0 20px 20px;border:1px solid #e0e2eb;border-radius:14px;background:#fff;color:inherit;text-align:left;box-shadow:0 8px 24px #1e285009;transition:transform .18s ease,box-shadow .18s ease}.campaign-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px #1e28501a}.campaign-card-art{grid-column:1 / -1;display:grid;place-items:center;margin:0 -20px;background:linear-gradient(130deg,#172554,#4f46e5,#0d9488);color:#ffffffeb}.campaign-card-art span{font:400 38px Libre Caslon Display,Georgia,serif}.campaign-card h2{margin:10px 0 4px;font:400 25px/1.05 Libre Caslon Display,Georgia,serif}.campaign-card p{margin:0 0 14px;color:#777988;font-size:12px}.campaign-card small{color:#999aa6}.campaign-card>b{align-self:center;color:var(--indigo);font-size:20px}.empty-campaigns{padding:60px;text-align:center}.status.draft{background:#fff3d5;color:#896100}.status.published{background:#e2f7f3;color:#087168}.status.archived{background:#ececf1;color:#686979}@media(max-width:1180px){.campaign-card-grid{grid-template-columns:repeat(2,1fr)}.asset-grid{grid-template-columns:1fr}.colour-grid{grid-template-columns:repeat(3,1fr)}.create-form{grid-template-columns:1fr 1fr}}@media(max-width:900px){.builder-grid,.publish-grid{grid-template-columns:1fr}.campaign-preview{position:static}.preview-screen{min-height:440px}.wheel-layout{grid-template-columns:1fr}.prize-row{grid-template-columns:28px 1fr 1fr}.prize-row label,.prize-row .toggle-label{grid-column:auto}}@media(max-width:760px){.sidebar-brand .generic-brand>span:last-child{display:none}.sidebar-brand .brand-wheel{width:38px;height:38px}.mobile-brand .generic-brand{justify-content:center}.campaign-card-grid{grid-template-columns:1fr}.builder-topbar{align-items:flex-start;flex-direction:column}.publish-button{width:100%}.form-grid.two-col,.colour-grid,.asset-grid,.create-form{grid-template-columns:1fr}.asset-card{grid-template-columns:78px minmax(0,1fr)}.asset-preview{width:78px;height:78px}.upload-button{grid-column:1 / -1}.prize-row{grid-template-columns:25px 1fr}.prize-row>input:nth-of-type(2),.prize-row label{grid-column:2}.add-row,.barcode-form{grid-template-columns:1fr}.segment-row{grid-template-columns:25px 35px 1fr}.segment-row>select:last-of-type,.segment-row>input:not([type=color]),.segment-row label{grid-column:3}}
