:root {
  color:#1d2939;
  background:#f4f6fa;
  --green:#123b70;
  --lime:#e7effa;
  --muted:#667085;
  --line:#e4e9f1;
  --orange:#e8edf4;
}
body {color:#1d2939;background:#f4f6fa}
.icon {width:20px;height:20px;flex:none;vertical-align:middle}
.logo {gap:12px;letter-spacing:-.6px;font-size:21px}
.logo b {color:#406d9c;font-weight:800}
.brand-image {display:block;width:72px;height:72px;object-fit:contain;background:white;border-radius:12px;padding:3px;flex:none}
.logo small {font-size:8px;letter-spacing:1.5px;color:#667085;margin-top:5px}
.wrap>.nav {border-color:var(--line)}
.btn {border-radius:9px;box-shadow:0 2px 3px #102d5008;transition:background .15s,transform .15s;min-height:40px}
.btn:focus-visible,a:focus-visible {outline-color:#8fb6e5}
.btn.lime {background:#e7effa;color:#123b70}
.btn.ghost {background:#edf2f9;color:#274a76}
.btn.light {color:#344054;border-color:#dce3ed}
input,select,textarea {color:#1d2939;border-color:#d7dfeb;outline-color:#8fb6e5;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus {outline:0;border-color:#5786bc;box-shadow:0 0 0 3px #e2ecfa}
.eyebrow {color:#60718b;letter-spacing:1.6px;font-size:10px}
.dot {background:#658cb9}
.hero h1 em {color:#3568a5}
.hero-art {background:linear-gradient(135deg,#0c213b,#164679);box-shadow:0 20px 50px #123b7012}
.ticket-art {background:#fff;box-shadow:15px 22px 0 #071b31}
.ticket-art .art-label {color:#71839c}
.art-bottom {border-color:#c1cfdf;color:#51647d}
.art-sticker {background:#dce9fb;color:#133b6d}
.art-caption {color:#b7cce5}
.trust {color:#6b7d95}
.card-image,.summary-image {background:#e9eff7}
.card-placeholder {color:#9ab1cd}
.pill {background:#e9f0fa;color:#315e95}
.card-body h3 {color:#172d4a}
.progress,.progress::-webkit-progress-bar {background:#edf0f5}
.progress::-webkit-progress-value {background:#386ba8}
.progress::-moz-progress-bar {background:#386ba8}
.step-number {background:#e5edf8;color:#365e90}
.searchbox,.box,.raffle-card {border-color:#e3e8f0}
.box {box-shadow:0 3px 12px #132f5003}
.back {color:#546b87}
.empty {border-color:#d5dfeb;background:#fff}
.tabs {background:#edf1f7}
.tabs button {color:#66768d}
.number {background:#edf4fd;border-color:#d3e2f5;color:#2d5d97}
.number.sold {background:#f1f3f6;color:#98a2b3;border-color:#e4e7ec}
.swatch {background:#edf4fd;border-color:#a7bdd8}
.swatch.sold {background:#f1f3f6;border-color:#dce1e9}
.legend {color:#667085}
.lucky {background:linear-gradient(150deg,#102d50,#184c83)}
.lucky .eyebrow {color:#c2d8f3}
.lucky p {color:#ccdbef}
.lucky label {color:#dce7f6}
.lucky-result strong {color:#fff}
.lucky input {background:#ffffff13;color:white;border-color:#ffffff42}
.lucky .fine {color:#aebfd6!important}
.notice {background:#edf3fc;color:#3d608d}
.checkmark {background:#e9f0fa;color:#3568a5}
.app-shell {grid-template-columns:254px minmax(0,1fr)}
.sidebar {background:#102d50;padding:25px 20px;gap:24px;border-right:1px solid #0c2340}
.sidebar .logo {font-size:18px;gap:10px;padding:0 0 25px;border-bottom:1px solid #ffffff15}
.sidebar .brand-image {width:64px;height:64px;border-radius:10px}
.sidebar .logo b {color:#b7d2f2}
.sidebar .logo small {color:#9cb6d5;font-size:6px;letter-spacing:1px}
.sidebar-label {font-size:9px;letter-spacing:1.8px;color:#859fbe;margin:0 12px -12px}
.side-nav {gap:7px}
.side-nav button {color:#b6c8de;padding:13px 12px;gap:12px;align-items:center;font-size:12px;font-weight:500}
.side-nav button:hover {background:#ffffff09;color:white}
.side-nav button.active {background:#ffffff16;color:white;box-shadow:inset 3px 0 0 #a9c9f0;font-weight:650}
.side-nav .icon {width:18px;height:18px}
.sidebar-bottom {color:#bed0e5;font-size:11px;gap:20px}
.sidebar-bottom .btn.light {background:#ffffff09;border-color:#ffffff20;color:#dbe6f4}
.user-profile {display:flex;align-items:center;gap:11px;padding-top:20px;border-top:1px solid #ffffff15}
.user-profile small {display:block;font-size:10px;color:#8fa9c8;margin-top:4px}
.user-avatar {height:35px;width:35px;display:grid;place-items:center;border-radius:10px;background:#ffffff14;color:white;font-weight:700;font-size:15px}
.dashboard-main {padding:36px 40px;background:#f4f6fa}
.dashboard-header {margin-bottom:30px}
.dashboard-header h1 {color:#162d4d;font-size:29px;letter-spacing:-.8px;margin:9px 0 5px}
.dashboard-header .muted {font-size:12px}
.stat {border-color:#e3e9f1;position:relative;overflow:hidden}
.stat:first-child {background:#123b70;border-color:#123b70;color:white}
.stat:first-child small,.stat:first-child .muted {color:#c2d4eb}
.stat strong {font-size:27px;letter-spacing:-.7px}
th {background:#f9fafc;color:#77859a;border-color:#e5eaf2}
td {border-color:#edf0f5}
.table-wrap {border:1px solid #e7ecf3;border-radius:9px}
.panel-title h2 {color:#203753;letter-spacing:-.3px;font-size:18px}
.panel-title .eyebrow {margin-bottom:10px}
.public-ticket {position:relative;padding-top:30px}
.ticket-brand {width:95px;height:95px;object-fit:contain;display:block;margin:0 auto 20px}
.settings-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px;align-items:start}
.brand-preview {min-height:225px;border:1px solid #e4e9f1;border-radius:12px;background:repeating-conic-gradient(#f5f7fa 0% 25%,#fff 0% 50%) 50% / 20px 20px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;margin:24px 0;padding:25px}
.brand-preview-image {width:155px;height:155px;object-fit:contain}
.brand-preview span {font-size:11px;color:#63748c;background:white;border:1px solid #e5eaf2;border-radius:20px;padding:6px 12px}
.branding-actions {display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.connection-card {padding:20px 0;border-bottom:1px solid #e6ebf3}
.connection-card:last-of-type {border-bottom:0}
.connection-heading {display:flex;justify-content:space-between;gap:12px;align-items:center}
.connection-name {font-weight:750;font-size:15px;color:#263e5e}
.connection-state {padding:5px 9px;border-radius:6px;background:#f1f3f7;color:#667085;font-size:10px;font-weight:650;white-space:nowrap}
.connection-state.ready {background:#eaf5ef;color:#2e7151}
.connection-card .muted {font-size:12px;margin:10px 0}
.connection-detail {font-size:10px;line-height:1.8;color:#8190a5;overflow-wrap:anywhere}
.prize-preview {margin-top:16px;padding:14px;border:1px solid #e2e8f1;border-radius:12px;background:#f9fbfe}
.prize-preview-head {display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:11px;color:#344b6b}
.prize-preview-stage {min-height:145px;display:grid;place-items:center;background:white;border:1px dashed #d7e1ee;border-radius:9px;overflow:hidden}
.prize-preview-stage img {display:block;max-width:100%;width:100%;height:220px;object-fit:contain;padding:9px}
.prize-preview-stage img[hidden],.prize-preview-stage p[hidden] {display:none}
.prize-preview-stage p {font-size:11px;text-align:center;padding:20px;max-width:290px;margin:0}
.prize-preview [data-preview-caption] {overflow-wrap:anywhere;margin:10px 0 0;line-height:1.7}
.auth-page {min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse at 10% 25%,#e3ebf8 0,transparent 45%),#f4f6fa}
.auth-header {height:105px;max-width:1240px;width:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:0 40px;gap:20px}
.auth-back {font-size:12px;color:#60718b;display:flex;align-items:center;gap:8px}
.login-layout {min-height:0;flex:1;display:grid;place-items:center;padding:20px 40px 30px}
.login-card {grid-template-columns:1.04fr 1fr;width:min(1060px,100%);border-radius:22px;border:1px solid #e0e6ef;box-shadow:0 25px 80px #15335412}
.login-copy {position:relative;padding:33px 38px 25px;background:linear-gradient(145deg,#0c2442,#123c6a);overflow:hidden;gap:27px}
.login-copy:before {content:"";position:absolute;pointer-events:none;width:400px;height:400px;border-radius:50%;border:1px solid #ffffff09;right:-230px;top:20%;box-shadow:0 0 0 65px #ffffff03,0 0 0 130px #ffffff02}
.auth-intro-top,.auth-intro-footer {display:flex;align-items:center;justify-content:space-between;gap:10px;position:relative}
.auth-tag {font-size:8px;letter-spacing:1.5px;font-weight:600;color:#c0d3ed;display:flex;align-items:center;gap:7px}
.auth-tag .dot {width:5px;height:5px;background:#adc8ee}
.auth-edition {font-size:9px;letter-spacing:1px;color:#6f92bb}
.auth-intro-main {position:relative;padding-top:4px}
.auth-logo-frame {background:#fff;width:100px;height:100px;padding:8px;border-radius:15px;box-shadow:0 8px 30px #03182d33;margin-bottom:22px}
.auth-logo {width:100%;height:100%;object-fit:contain}
.login-copy h1 {font-size:43px;font-weight:650;line-height:1.13;letter-spacing:-1.5px;margin:0 0 17px;color:#fff}
.login-copy h1 span {color:#a9c6eb}
.login-copy p {font-size:12px;line-height:1.85;color:#aebfd7;margin:0;max-width:330px}
.auth-benefits {display:grid;gap:12px;position:relative}
.auth-benefits>div {display:flex;gap:11px;align-items:center;font-size:11px;color:#d9e5f5}
.auth-benefits .icon {width:17px;height:17px;color:#96b6de}
.auth-intro-footer {border-top:1px solid #ffffff15;padding-top:18px;font-size:8px;color:#7896bb;letter-spacing:.7px}
.auth-intro-footer span:first-child {font-weight:750;letter-spacing:1.5px}
.login-form {padding:55px 52px;display:flex;flex-direction:column;justify-content:center}
.auth-lock {height:41px;width:41px;display:grid;place-items:center;background:#edf2fa;color:#355f93;border:1px solid #e2e9f4;border-radius:12px;margin-bottom:25px}
.auth-lock .icon {width:20px;height:20px}
.login-form .eyebrow {font-size:8px;letter-spacing:1.6px;color:#8190a6;font-weight:650}
.login-form h2 {font-size:29px;font-weight:700;letter-spacing:-.8px;color:#1a304f;margin:9px 0 9px}
.login-form>.muted {font-size:12px;line-height:1.7;margin:0 0 13px;color:#8390a2;max-width:280px}
.login-form label {font-size:11px;color:#34445d;margin:20px 0 8px}
.login-form input {height:47px;border-radius:8px;font-size:12px;padding:0 13px;background:#fcfdff;border-color:#dfe5ef}
.login-form input::placeholder {color:#a1adbd}
.login-form .password-wrap input {padding-right:49px}
.password-toggle {top:4px;right:5px;width:39px;height:39px;padding:10px;border-radius:7px;display:grid;place-items:center;background:transparent;color:#8a98ab}
.password-toggle:hover {background:#edf2fa;color:#123b70}
.password-toggle:focus-visible {outline:3px solid #b9d0ef;outline-offset:1px}
.password-toggle .icon {width:18px;height:18px}
.login-form .login-submit {height:47px;justify-content:space-between;padding:0 17px;margin-top:24px;font-size:12px;border-radius:8px}
.login-submit .icon {width:17px;height:17px}
.auth-form-footer {display:flex;align-items:center;justify-content:center;gap:7px;color:#96a1b2;font-size:9px;margin-top:20px}
.auth-form-footer .icon {width:11px;height:11px}
.auth-public-link {text-align:center;margin-top:24px;font-size:10px;font-weight:600;color:#4a6c96;padding-top:24px;border-top:1px solid #edf0f5}
.auth-footer {max-width:1060px;width:100%;display:flex;justify-content:space-between;gap:15px;padding:0 0 25px;margin:auto;font-size:9px;color:#95a1b3}
#login-error:not(:empty) {margin-top:14px}
#toast {background:#173b67}
@media(max-width:1050px){.auth-header{padding:0 30px}.login-form{padding:40px 34px}.login-copy{padding:30px}.login-copy h1{font-size:38px}.auth-footer{padding:0 40px 23px}.app-shell{grid-template-columns:225px minmax(0,1fr)}.dashboard-main{padding:30px 25px}}
@media(max-width:850px){.settings-grid{grid-template-columns:1fr}.sidebar{padding:24px 16px}.sidebar .logo{font-size:16px;gap:8px}.sidebar .brand-image{width:43px;height:43px}.sidebar .logo small{font-size:5px}.auth-intro-footer{font-size:7px}.auth-edition{display:none}}
@media(max-width:640px){.brand-image{width:43px;height:43px}.logo{font-size:18px}.logo small{font-size:6px;letter-spacing:.9px}.auth-header{height:82px;padding:0 20px}.auth-back{font-size:10px}.login-layout{padding:10px 16px 25px;display:block}.login-card{grid-template-columns:1fr;border-radius:17px}.login-copy{padding:25px 25px 23px;gap:20px}.auth-intro-top{margin-bottom:0}.auth-intro-main{display:grid;grid-template-columns:68px 1fr;gap:0 18px;align-items:center}.auth-logo-frame{width:68px;height:68px;padding:5px;border-radius:11px;grid-row:1/3;margin:0}.login-copy h1{font-size:26px;letter-spacing:-.6px;line-height:1.2;margin:0}.login-copy h1 br:first-child{display:none}.login-copy p{display:none}.auth-benefits{display:flex;gap:13px;flex-wrap:wrap}.auth-benefits>div{font-size:8px;gap:5px}.auth-benefits .icon{width:12px;height:12px}.auth-intro-footer{display:none}.login-form{padding:30px 26px}.auth-lock{margin-bottom:18px}.login-form h2{font-size:26px}.login-form>.muted{max-width:none}.auth-footer{padding:0 21px 20px;font-size:8px}.sidebar{padding:13px 16px;gap:12px}.sidebar .logo,.sidebar-label{display:none}.side-nav{gap:4px}.side-nav button{font-size:11px;padding:10px;gap:7px}.side-nav .icon{width:15px;height:15px}.sidebar-bottom{font-size:10px;gap:12px}.sidebar-bottom>a{font-size:9px}.user-profile{border:0;padding:0;gap:8px}.user-avatar{width:29px;height:29px;font-size:12px}.user-profile small{font-size:8px}.sidebar-bottom .btn{font-size:9px;padding:7px;min-height:32px}.dashboard-main{padding:23px 16px}.dashboard-header h1{font-size:25px}.stat strong{font-size:22px}.app-shell{display:block}.connection-heading{flex-wrap:wrap}.connection-state{font-size:9px}.brand-preview{min-height:200px}.auth-public-link{font-size:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{.ticket-brand{display:block}.public-ticket{box-shadow:none}.auth-page{background:white}}
@media(max-width:640px){.sidebar .logo{display:flex;align-items:center;padding:0 0 13px;border-bottom:1px solid #ffffff15}.sidebar .brand-image{width:54px;height:54px}.sidebar .logo small{font-size:7px;letter-spacing:1px}.sidebar .logo{font-size:20px}.nav .brand-image{width:52px;height:52px}}
