/* Shared product identity and UI language across public and working pages. */
:root{
 --brand-red:#c13a2f;
 --brand-red-hover:#a92f27;
 --brand-ink:#342b25;
 --brand-muted:#8a7868;
 --brand-gold:#b68c50;
 --brand-paper:#fffdf9;
 --brand-canvas:#faf9f6;
 --brand-line:#eadfd1;
 --brand-tint:#fbefe5;
 --site-content-width:1296px;
 --site-header-height:80px;
 --site-header-mark-size:36px;
 --site-header-control-size:42px;
 --site-header-brand-size:18px;
 --site-header-gutter:max(32px,calc((100% - var(--site-content-width))/2));
 --brand-shadow:none;
 --pub-ink:var(--brand-ink);
 --pub-red:var(--brand-red);
 --pub-gold:var(--brand-gold);
 --pub-paper:var(--brand-paper);
 --pub-line:var(--brand-line);
}


[data-brand-mark]{
 background:transparent url('assets/brand-mark.svg') center/contain no-repeat!important;
 border:0!important;
 border-radius:0!important;
 color:transparent!important;
 font-size:0!important;
 box-shadow:none!important;
 text-shadow:none!important;
 flex:none;
}
:is(.public-brand,.guided-brand,.brand,.sidebar-brand,.login-brand a){color:var(--brand-ink);text-decoration:none}
:is(.public-brand,.guided-brand,.brand,.sidebar-brand):focus-visible{outline:2px solid var(--brand-red);outline-offset:6px;border-radius:5px}
.public-brand b,.guided-brand strong,.sidebar .brand strong{font-weight:650;letter-spacing:-.02em}











/* Working pages use the same paper, red accents and warm gold details. */
body:not(.stage-mode){
 --bg:var(--brand-canvas);
 --raised:#fff;
 --panel:#fcf5ec;
 --ink:var(--brand-ink);
 --muted:var(--brand-muted);
 --line:var(--brand-line);
 --soft:#f8eddf;
 --primary:var(--brand-red);
 --on-primary:#fff8ed;
 --accent:var(--brand-red);
 --active:var(--brand-tint);
 --gold:var(--brand-gold);
}
body:not(.stage-mode):not(.public-site){background:var(--brand-canvas);color:var(--brand-ink)}
body:not(.stage-mode) .sidebar{background:#fff9f0;border-color:var(--brand-line);color:var(--brand-ink)}
body:not(.stage-mode) .appbar{background:#fffdf9ed;border-color:var(--brand-line)}


body:not(.stage-mode) .sidebar nav button.active{background:var(--brand-tint);color:#aa3329}
body:not(.stage-mode) .sidebar nav button.active i{color:var(--brand-red)}
body:not(.stage-mode) .panel{background:#fff;border-color:var(--brand-line);border-radius:12px;box-shadow:var(--brand-shadow)}
body:not(.stage-mode) :is(.page-head h1,.section-heading h2,h2){color:var(--brand-ink)}
body:not(.stage-mode) .button{border-color:var(--brand-line);border-radius:8px;color:#73563f;background:var(--brand-paper);font-weight:550}
body:not(.stage-mode) .button:hover:not(:disabled){background:#fcf0e1;border-color:#d2b48e}
body:not(.stage-mode) :is(.button.primary,.setup-footer .setup-continue,.opening-summary>.button){background:var(--brand-red);border-color:var(--brand-red);color:#fff8ed;box-shadow:none}
body:not(.stage-mode) :is(.button.primary,.setup-footer .setup-continue,.opening-summary>.button):hover:not(:disabled){background:var(--brand-red-hover);border-color:var(--brand-red-hover);color:#fff8ed}
body:not(.stage-mode) .button.quiet{background:transparent;border-color:transparent;color:#9a6b45;box-shadow:none}
body:not(.stage-mode) .button.quiet:hover:not(:disabled){background:#fcf0e1}
body:not(.stage-mode) .button.danger{background:#fff;color:#a63b32;border-color:#e5c4bb;box-shadow:none}
body:not(.stage-mode) :is(.field input,.field select,.field textarea,.search-field){background:var(--brand-paper);border-color:var(--brand-line);border-radius:10px;color:var(--brand-ink)}
body:not(.stage-mode) .search-field input{background:transparent}
body:not(.stage-mode) :is(.field input,.field select,.field textarea):focus{border-color:var(--brand-red);box-shadow:0 0 0 3px #c13a2f12}
body:not(.stage-mode) :is(input[type=checkbox],input[type=radio]){accent-color:var(--brand-red)}
body:not(.stage-mode) .switch:checked{background:var(--brand-red)}
body:not(.stage-mode) :is(button,a,summary):focus-visible{outline-color:var(--brand-red)}
body:not(.stage-mode) .setup-mode-switch{background:#faf0e5;border-color:var(--brand-line);border-radius:8px}
body:not(.stage-mode) .setup-mode-switch button{border-radius:8px}
body:not(.stage-mode) .setup-mode-switch button[aria-pressed=true]{color:#aa3329;background:#fffdf9}
body:not(.stage-mode) .setup-steps button[aria-current=step]{color:var(--brand-red)}
body:not(.stage-mode) .setup-steps button[aria-current=step] .setup-step-marker{background:var(--brand-red);border-color:var(--brand-red);box-shadow:0 0 0 4px #c13a2f0d}
body:not(.stage-mode) .setup-steps .is-complete:not([aria-current=step]) .setup-step-marker{color:#a74c32;background:#fbefdf;border-color:#e2c3a0}
body:not(.stage-mode) :is(.setup-guide,.setup-footer){border-color:var(--brand-line)}
body:not(.stage-mode) .setup-footer{background:#fffaf5f2}
body:not(.stage-mode) .entry-mode-card{background:#fff;border-color:var(--brand-line);border-radius:12px;box-shadow:var(--brand-shadow)}
body:not(.stage-mode) .entry-mode-card.is-selected{border-color:#c95342;background:#fffaf4}
body:not(.stage-mode) .entry-mode-icon{background:#fbebdd;color:var(--brand-red);border-color:#f0d8c0}
body:not(.stage-mode) .entry-mode-card:hover{border-color:#c95342;box-shadow:none}
body:not(.stage-mode) :is(.activity-current,.activity-repeat-setting,.local-use-banner){background:#fffaf1;border-color:var(--brand-line);border-radius:10px}
body:not(.stage-mode) :is(.prize-card.selected,.prize-card:has(.prize-select[aria-pressed=true])){border-color:#c95342;background:#fff8ee;box-shadow:inset 3px 0 var(--brand-red)}
body:not(.stage-mode) :is(.prize-numbers strong,.activity-counts strong,.result-total>strong){color:var(--brand-red)}
body:not(.stage-mode) :is(.prize-award-choice,.rule-choice,.rule-chip):has(input:checked){background:var(--brand-tint);border-color:#d79c83;color:#9d3a2b}
body:not(.stage-mode) .rule-choice:has(input:checked)>i{color:var(--brand-red)}
body:not(.stage-mode) :is(.prize-rules-entry,.rule-summary-panel,.random-stock-overview){background:#fff8ed;border-color:var(--brand-line)}
body:not(.stage-mode) .rule-tabs .button.active{background:var(--brand-red);border-color:var(--brand-red);color:#fff8ed}
body:not(.stage-mode) .mode-buttons button[aria-pressed=true]{background:var(--brand-red);border-color:var(--brand-red);color:#fff8ed}
body:not(.stage-mode) :is(.preset-button.active,.color-pick[aria-pressed=true],.scene-mode-card[aria-pressed=true]){border-color:var(--brand-red);background:#fff7ec}
body:not(.stage-mode) th{background:#fcf4e9;color:#987453;border-color:var(--brand-line)}
body:not(.stage-mode) :is(td,.table-foot,.table-footer){border-color:#f1e7da}
body:not(.stage-mode) dialog{background:var(--brand-paper);border-color:var(--brand-line);border-radius:20px;box-shadow:0 24px 90px #68311426}
body:not(.stage-mode) :is(.dialog-head,.dialog-actions){background:#fff9f0;border-color:var(--brand-line)}
body:not(.stage-mode) .count-badge{background:#fbeddc;border-color:#ead4b8;color:#94643c}
body:not(.stage-mode) .product-status{background:#fff4e6;border-color:#ecd6bd;color:#9b6442}
body:not(.stage-mode) .scene-fold>summary:after{color:var(--brand-red)}

/* Activation and operations inherit the same identity. */
body.access-gate .activation-shell{background:var(--brand-canvas)}
body.access-gate .activation-shell>.public-brand{color:var(--brand-ink)}
body.access-gate .activation-panel h1{color:var(--brand-ink)}
body.access-gate .activation-panel .public-button{background:var(--brand-red);border-color:var(--brand-red);border-radius:8px;color:#fff8ed;box-shadow:none}
body.access-gate .activation-panel .public-button:hover{background:var(--brand-red-hover)}
body.access-gate .activation-panel input{background:var(--brand-paper);border-color:var(--brand-line);border-radius:11px}
body.access-gate .activation-panel input:focus{border-color:var(--brand-red);box-shadow:0 0 0 3px #c13a2f12}
body.operator-page .admin-sidebar{background:#fff9f0;border-color:var(--brand-line)}
body.operator-page :is(.admin-header,.login-card){background:var(--brand-paper);border-color:var(--brand-line)}
body.operator-page #admin-nav button.active{color:var(--brand-red);background:var(--brand-tint)}
body.operator-page .button.primary{background:var(--brand-red);border-color:var(--brand-red);color:#fff8ed}

@media(max-width:760px){
 
 
 
 
 
 
}
@media(prefers-reduced-motion:reduce){}

/* Shared header dimensions for home, activation, setup and administration. */
html{scroll-padding-top:calc(var(--site-header-height) + 16px)}
body:not(.stage-mode) .product-header{
 box-sizing:border-box;
 height:var(--site-header-height);
 min-height:var(--site-header-height);
 max-height:var(--site-header-height);
 padding:0 var(--site-header-gutter);
 align-items:center;
 flex-shrink:0;
 border-bottom:1px solid var(--brand-line);
 background:var(--brand-paper);
 box-shadow:none;
}
body:not(.stage-mode) .product-header :is(.public-brand,.guided-brand,.login-brand>a){align-items:center;gap:10px;line-height:1.2}
body:not(.stage-mode) .product-header :is(.public-brand,.login-brand>a){display:inline-flex}
body:not(.stage-mode) .product-header [data-brand-mark]{width:var(--site-header-mark-size);height:var(--site-header-mark-size)}
body:not(.stage-mode) .product-header [data-brand-name]{font-size:var(--site-header-brand-size);font-weight:650;line-height:1.2;letter-spacing:-.02em;color:var(--brand-ink)}
body:not(.stage-mode) .product-header :is(.public-nav-enter,.button,.icon-button,.setup-tools>summary){box-sizing:border-box;height:var(--site-header-control-size);min-height:var(--site-header-control-size);padding-block:0;align-items:center;justify-content:center;line-height:1.2}
body:not(.stage-mode) .product-header .setup-tools>summary{display:flex}
body:not(.stage-mode) .product-header .public-nav-enter{padding-inline:18px;min-width:132px;border-radius:8px;background:var(--brand-red);border:1px solid var(--brand-red);color:#fff8ed!important;font-size:13px;font-weight:550}
body:not(.stage-mode) .product-header .icon-button{width:var(--site-header-control-size)}
body:not(.stage-mode) .product-header .setup-mode-switch{height:var(--site-header-control-size);box-sizing:border-box;padding:3px;align-items:center;background:#f4f1ec}
body:not(.stage-mode) .product-header .setup-mode-switch button{height:calc(var(--site-header-control-size) - 8px);min-height:0;padding:0 10px;line-height:1.2;font-size:12px}
body:not(.stage-mode) .sidebar{padding-top:calc((var(--site-header-height) - var(--site-header-mark-size))/2)}
body:not(.stage-mode) :is(.sidebar .brand-mark,.admin-sidebar .brand-mark){width:var(--site-header-mark-size);height:var(--site-header-mark-size)}
body.operator-page .admin-sidebar{padding-top:calc((var(--site-header-height) - var(--site-header-mark-size))/2)}
body.operator-page .login-layout{padding:0 0 24px}
body.operator-page .login-brand.product-header{display:flex;align-items:center;justify-content:space-between;width:100%}
body.operator-page .login-card{margin:auto;transform:none}
body.access-gate .activation-shell{min-height:calc(100dvh - var(--site-header-height));padding:40px max(32px,calc((100% - var(--site-content-width))/2));grid-template-rows:1fr}
body.access-gate .activation-panel{margin:24px 0;max-width:400px}
body.access-gate .activation-panel h1{font-family:inherit;font-size:28px;line-height:1.3;font-weight:600;letter-spacing:-.025em;margin-bottom:28px}
body.access-gate .activation-panel .public-button{border-radius:8px}
body.access-gate .activation-note{margin-top:24px;font-size:12px;color:var(--brand-muted)}
body.access-gate .activation-story{background:none;max-width:420px}
body.access-gate .activation-story img{width:100%;filter:none}

/* Compact preparation pages keep their existing actions and form fields. */
body:not(.stage-mode) .entry-mode-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;min-height:112px;padding:22px;text-align:left}
body:not(.stage-mode) .entry-mode-card strong{font-size:17px;margin:0}
body:not(.stage-mode) .entry-mode-icon{width:40px;height:40px;border:0;background:none;padding:0}
body:not(.stage-mode) .entry-mode-arrow{position:static;display:flex;align-items:center;width:18px;height:18px}
body:not(.stage-mode) .local-use-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;margin:0;border:0;border-radius:0;background:none;font-size:12px;color:var(--muted)}
body:not(.stage-mode) .activity-current{padding:18px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;box-shadow:none}
body:not(.stage-mode) .activity-current strong{font-size:26px;margin-top:5px}
body:not(.stage-mode) .activity-current small{font-size:13px}
body:not(.stage-mode) .setup-steps .setup-step-marker{box-shadow:none}
body:not(.stage-mode) .setup-footer .button{border-radius:8px}
body:not(.stage-mode) .large-icon{width:40px;height:40px;margin-bottom:18px;border:0;border-radius:0;background:none}
body:not(.stage-mode) .large-icon i{width:28px;height:28px}
@media(max-width:760px){
 :root{--site-header-height:64px;--site-header-mark-size:30px;--site-header-control-size:36px;--site-header-brand-size:15px;--site-header-gutter:18px}
 body:not(.stage-mode) .product-header{column-gap:10px;grid-template-rows:1fr}
 body:not(.stage-mode) .product-header .setup-mode-switch button{font-size:11px;padding-inline:7px}
 body:not(.stage-mode) .product-header #product-access-status{display:none}
 body:not(.stage-mode) .product-header .public-nav-enter{min-width:120px;font-size:12px;padding-inline:14px}
 body.access-gate .activation-shell{padding:32px 20px;display:flex;justify-content:flex-start;align-items:center}
 body.access-gate .activation-panel{margin:28px 0;width:100%}
 body.access-gate .activation-story{display:none}
 body.operator-page .login-card{margin:48px auto;width:calc(100% - 36px)}
 body:not(.stage-mode) .entry-mode-card{min-height:88px;padding:18px;gap:10px}
 body:not(.stage-mode) .entry-mode-grid{grid-template-columns:1fr}
}
@media(max-width:380px){
 :root{--site-header-gutter:14px;--site-header-brand-size:14px}
 body:not(.stage-mode) .product-header :is(.public-brand,.guided-brand){gap:7px}
 body:not(.stage-mode) .product-header .setup-mode-switch button{font-size:10px;padding-inline:6px}
 body:not(.stage-mode) .product-header .setup-tools>summary{font-size:10px}
}
@media(prefers-reduced-motion:reduce){body:not(.stage-mode) .product-header *{transition:none}}

.update-notice{position:fixed;right:24px;bottom:24px;z-index:2000;display:flex;align-items:center;gap:10px;max-width:calc(100vw - 48px);padding:15px 16px;border:1px solid var(--brand-line);border-radius:12px;background:var(--brand-paper);box-shadow:0 12px 38px #48301b1c;color:var(--brand-ink);font:13px/1.5 -apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif}
.update-notice[hidden],.stage-mode .update-notice{display:none!important}
.update-notice>div{min-width:130px;margin-right:10px}
.update-notice strong{font-size:14px;font-weight:600}
.update-notice-message{font-size:11px;color:var(--brand-muted);margin:4px 0 0;max-width:240px}
.update-notice-message:empty{display:none}
.update-notice button{border:0;border-radius:7px;min-height:34px;padding:7px 13px;background:var(--brand-red);color:#fff8ed;font-family:inherit;font-size:12px;font-weight:500;line-height:1.4;cursor:pointer;white-space:nowrap}
.update-notice [data-update-later]{background:transparent;color:var(--brand-muted)}
.update-notice button:disabled{opacity:.45;cursor:default}
@media(max-width:600px){.update-notice{left:16px;right:16px;bottom:16px;max-width:none;padding:13px;gap:6px}.update-notice>div{flex:1;min-width:0;margin-right:4px}.update-notice button{padding-inline:10px}}
