.sc-promotions{--sp-purple:#be90ff;--sp-pink:#ff79c9;color:#f4efff;margin:2.5rem 0;font-family:inherit}
.sp-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.sp-eyebrow{display:block;font-size:10px;letter-spacing:.19em;text-transform:uppercase;color:var(--sp-purple);font-weight:800;margin-bottom:10px}
.sp-heading h2{font-family:Orbitron,sans-serif;font-size:clamp(20px,3vw,29px);line-height:1.4;margin:0 0 8px}
.sp-heading p,.sp-muted{color:#b3abc8;font-size:13px;line-height:1.7}
.sp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.sp-card{border:1px solid #473359;border-radius:18px;overflow:hidden;background:linear-gradient(150deg,#1c142b,#100e1b 75%);position:relative;min-width:0}
.sp-card[data-template="code"]{border-color:#3e365d;background:linear-gradient(150deg,#19162e,#100e1b 75%)}
.sp-card-top{padding:25px 26px 20px;position:relative;border-bottom:1px solid #ffffff0e;background:radial-gradient(ellipse at 90% 20%,#c777ff20,transparent 70%)}
.sp-card-top:after{content:'✦';position:absolute;right:25px;top:54px;font-size:90px;color:#c18aff13;line-height:1;pointer-events:none}
.sp-card h3{font-size:17px;line-height:1.5;font-weight:650;max-width:80%;margin:17px 0 12px}
.sp-prize{font-family:Orbitron,sans-serif;font-size:52px;line-height:1.2;letter-spacing:-.04em;color:#fff;font-weight:850}
.sp-prize small{font-family:inherit;font-size:11px;font-weight:700;line-height:1.4;letter-spacing:.08em;color:var(--sp-purple);margin-left:12px;white-space:nowrap}
.sp-badge{display:inline-flex;align-items:center;gap:6px;border:1px solid #b88fff42;background:#b88fff0b;color:#cfb1ff;padding:6px 10px;border-radius:30px;font-size:10px;font-weight:700;letter-spacing:.06em}
.sp-badge:before{content:'';height:5px;width:5px;border-radius:50%;background:currentColor}
.sp-card-body{padding:23px 26px 26px}
.sp-rule{display:flex;gap:11px;align-items:baseline;margin-bottom:12px;font-size:13px;color:#cdc5dc;line-height:1.65}
.sp-rule:before{content:'✓';color:#be90ff;font-size:11px;flex-shrink:0}
.sp-rule strong{color:#f5edff}
.sp-code{font-family:monospace;font-size:12px;border:1px solid #675079;border-radius:5px;padding:3px 7px;color:#ebc8ff;background:#d080ff0a}
.sp-progress{height:5px;border-radius:8px;background:#30263d;margin:10px 0 13px;overflow:hidden}
.sp-progress span{display:block;height:100%;background:linear-gradient(90deg,#9e6cf4,#fa80c7);border-radius:8px}
.sp-count{display:flex;justify-content:space-between;gap:15px;font-size:11px;color:#afa3c1;margin-top:22px}
.sp-count strong{color:#e7d9fa;font-weight:600}
.sp-dates{font-size:11px;color:#b6a8c8;line-height:1.8;margin:0 0 20px;min-height:39px}
.sp-button{display:inline-flex;justify-content:center;align-items:center;gap:12px;min-height:44px;padding:11px 17px;border:1px solid #bd86ff66;border-radius:9px;color:#f9f4ff;background:#a773e515;font:600 12px/1.4 inherit;cursor:pointer;text-decoration:none;transition:background .15s}
.sp-button:hover{background:#a773e52f}.sp-button:focus-visible{outline:2px solid #f099d5;outline-offset:3px}
.sp-primary{border-color:transparent;background:linear-gradient(110deg,#a15bea,#c950a7);color:white}
.sp-primary:hover{background:linear-gradient(110deg,#b56df7,#dc65ba)}
.sp-button:disabled{cursor:default;opacity:.45}
.sp-card .sp-button{width:100%}.sp-footnote{font-size:11px;color:#8f839e;line-height:1.7;margin-top:13px}
.sp-notice{padding:15px 18px;border:1px solid #5d466b;border-radius:10px;color:#c4b5d3;font-size:12px;line-height:1.7;background:#b589ff07;margin:18px 0}
.sp-admin-toolbar,.sp-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}
.sp-admin-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:20px}
.sp-admin-list{display:flex;flex-direction:column;gap:10px}.sp-admin-list button{text-align:left;justify-content:flex-start}
.sp-panel{padding:25px;border:1px solid #493450;border-radius:14px;background:#14101e;min-width:0}
.sp-panel h3{font-size:19px;line-height:1.5;margin:0 0 8px}
.sp-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:22px 0}
.sc-promotions label{font-size:12px;color:#c7b8d5;display:flex;flex-direction:column;gap:8px;line-height:1.6}
.sc-promotions input:not([type=checkbox]),.sc-promotions select,.sc-promotions textarea{border:1px solid #53405f;background:#0e0c16;border-radius:7px;min-width:0;width:100%;color:#eee5f5;padding:11px;font:inherit;font-size:13px;box-sizing:border-box}
.sc-promotions input:focus,.sc-promotions textarea:focus,.sc-promotions select:focus{outline:2px solid #ab72e9;outline-offset:2px}
.sp-full{grid-column:1/-1}.sp-review{padding:18px 0;border-top:1px solid #ffffff12}.sp-review h4{font-size:14px;margin:0 0 7px;overflow-wrap:anywhere}
.sp-review .sp-button{font-size:11px;min-height:36px;padding:7px 12px}
.sp-audit{font-size:11px;color:#9f92af;line-height:1.9;max-height:200px;overflow:auto;list-style:none;padding:0}
.sp-result{padding:14px;border:1px solid #9760bf;border-radius:8px;color:#e9ceff;font-size:13px;line-height:1.8}
.sp-dialog{color:#f5efff;background:#171020;border:1px solid #715284;border-radius:15px;padding:26px;margin:auto;max-width:560px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;box-sizing:border-box}
.sp-card-body>.sp-button+.sp-button{margin-top:10px}
.sp-dialog::backdrop{background:#05030bcc;backdrop-filter:blur(6px)}
.sp-dialog h2{font-size:21px;margin:0 0 10px;line-height:1.5}.sp-dialog p{font-size:13px;color:#bdafcf;line-height:1.7}
.sp-dialog form{display:grid;gap:18px;margin-top:20px}.sp-dialog .sp-check{display:flex;flex-direction:row;align-items:start;gap:10px;font-size:12px}.sp-check input{margin-top:5px;accent-color:#b172ef;flex-shrink:0}
.sp-dialog img{display:block;max-width:100%;max-height:62vh;margin:20px auto;object-fit:contain}
.sp-dialog .sp-actions{justify-content:flex-end;margin-bottom:0}.sp-message{font-size:12px;color:#efb2d9;line-height:1.7}
.sp-dialog input[type=file]{font-size:12px}.sp-dialog input[type=file]::file-selector-button{background:#32213e;border:0;border-radius:4px;color:#e7d6f3;padding:7px 10px;margin-right:10px}
.sp-panel-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 0}.sp-panel-toolbar h3{margin:0;font-size:21px}.sp-panel-toolbar p{margin:7px 0 0}
.sp-platform-public{max-width:1080px;margin:40px auto;padding:0 22px}.sp-platform-dialog{max-width:850px}.sp-platform-row{display:flex;align-items:center;gap:16px;padding:18px 0;border-top:1px solid #ffffff20}.sp-platform-row>div{flex:1;min-width:0}.sp-platform-row p{margin:5px 0}.sp-platform-row img,.sp-platform-logo{width:64px;height:64px;object-fit:contain}.sp-platform-row small{overflow-wrap:anywhere}.sp-platform-logo{border-radius:8px;margin-bottom:15px}
.sp-platform-row strong{overflow-wrap:anywhere}@media(max-width:760px){.sp-platform-row{flex-wrap:wrap}.sp-platform-row .sp-button{width:100%}}
.sp-platform-brand{display:flex;align-items:center;justify-content:flex-start;flex:0 1 155px;min-width:0;max-width:155px;min-height:44px;font-size:13px;font-weight:800;letter-spacing:.06em;overflow-wrap:anywhere;color:#dfb6ff}.sp-platform-brand .sp-brand-image{display:block;width:auto;height:auto;max-width:100%;max-height:48px;object-fit:contain;object-position:left center}.sp-cover-placeholder>strong{margin-left:auto;flex-shrink:0}.sp-cover-placeholder>small{flex-shrink:0}.sp-campaign-artwork{position:relative}.sp-campaign-artwork>.sp-platform-brand{position:absolute;left:18px;top:16px;padding:8px 12px;background:#130d21e6;border-radius:8px;max-width:155px;box-sizing:border-box}.sp-card-top>.sp-platform-brand{margin-bottom:16px}.sp-card-top>.sp-prize{text-align:right}.sp-card-top>.sp-prize small{display:block;margin:7px 0 0;white-space:normal}
@media(max-width:480px){.sp-platform-brand{max-width:125px;min-height:36px}.sp-platform-brand .sp-brand-image{max-height:38px}.sp-cover-placeholder{padding:20px;gap:10px;flex-wrap:wrap}.sp-cover-placeholder>small{flex-basis:100%;text-align:right}.sp-cover-placeholder strong{font-size:36px}}
.sp-filterbar{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.sp-filterbar .sp-button{min-height:36px;padding:8px 14px}.sp-filterbar [aria-pressed=true]{background:#a773e538;border-color:#bd86ff}
.sp-campaign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.sp-campaign{border:1px solid #483458;border-radius:16px;overflow:hidden;background:linear-gradient(155deg,#20152d,#100e19);min-width:0}
.sp-campaign-cover{display:block;width:100%;height:150px;object-fit:cover;background:#211730}.sp-cover-placeholder{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:25px;background:radial-gradient(ellipse at 90% 30%,#b950ae50,transparent 65%),linear-gradient(115deg,#322047,#1c1430);color:#dfb6ff;font-size:12px;letter-spacing:.12em}.sp-cover-placeholder strong{font:800 45px/1.2 Orbitron,sans-serif;color:white;letter-spacing:-.03em}.sp-cover-placeholder small{font-size:10px}
.sp-campaign-body{padding:22px}.sp-campaign-body .sp-eyebrow{margin-top:17px}.sp-campaign h3{font-size:18px;line-height:1.5;margin:10px 0}.sp-campaign-prize{color:#d2a4fa;font-size:13px}.sp-campaign-stats{display:flex;justify-content:space-between;gap:12px;margin:20px 0 12px;font-size:12px;color:#bba6d2}.sp-campaign-stats span{color:#f4b8d5}.sp-campaign .sp-dates{white-space:pre-line}.sp-campaign .sp-actions{margin-bottom:0}.sp-campaign .sp-button{font-size:11px;padding:9px 12px}
.sp-detail{margin-top:28px;scroll-margin-top:110px}.sp-detail[hidden]{display:none}.sc-promotions .sp-check{flex-direction:row;align-items:flex-start;gap:10px}.sp-fields .sp-notice{margin:0}.sp-fields input:disabled,.sp-fields select:disabled,.sp-fields textarea:disabled{opacity:.65}.sp-editor-cover{max-width:100%;height:150px;object-fit:cover;border-radius:8px}.sp-card>.sp-public-cover{display:block;width:100%;height:160px;object-fit:cover}.sp-instructions{white-space:pre-line;overflow-wrap:anywhere}.sp-campaign h3,.sp-card h3{overflow-wrap:anywhere}
@media(max-width:760px){.sp-campaign-grid{grid-template-columns:1fr}.sp-panel-toolbar{align-items:flex-start;flex-direction:column}.sp-campaign-cover{height:130px}.sp-campaign-stats{flex-wrap:wrap}.sp-detail{scroll-margin-top:80px}.sp-prize small{white-space:normal;display:block;margin:7px 0 0}}
@media(max-width:760px){.sp-grid{grid-template-columns:1fr}.sp-admin-layout{grid-template-columns:1fr}.sp-admin-list{flex-direction:row;overflow:auto}.sp-admin-list button{flex-shrink:0;max-width:240px}.sp-heading{display:block}.sp-heading p{max-width:100%}.sp-fields{grid-template-columns:1fr}.sp-full{grid-column:auto}.sp-panel{padding:18px}.sp-card-top{padding:23px}.sp-card-body{padding:22px 23px}.sp-prize{font-size:48px}.sp-dialog{padding:23px}.sp-dialog .sp-actions .sp-button{flex:1}}
