/* Canonical visual source: night-source-20261026.1, selected2b. Product state extensions use its colors. */
.shp-root{
 --c-bg:#1B552D;--c-surface:#245F37;--c-surface-sunk:#2B6A40;
 --c-surface-inverse:#FFFFFF;--c-brand:#FFFFFF;--c-on-brand:#1B552D;
 --c-text:#FFFFFF;--c-text-muted:#CFE3D5;--c-text-inverse:#14321F;
 --c-line:#9DB8A4;--c-line-strong:#FFFFFF;
 --c-accent:#FE6C1F;--c-on-accent:#3A1B16;--c-accent-text:#FFC87D;
 --c-selected:#FFFFFF;--c-on-selected:#14321F;--c-selected-line:#FE6C1F;
 --c-focus:#6BDAF8;--c-focus-halo:#1B552D;
 --c-disabled-bg:#2B6A40;--c-disabled-text:#CFE3D5;--c-disabled-line:#2B6A40;
 --night-leaf:#6EC06B;--night-leaf-selected:#2F9A4C;
 --sh-key:none;--key-depth:0px;--fst-condensed:100%;--fw-heavy:700;--r-m:30px;--r-s:999px;
 color-scheme:dark;hyphens:none;scrollbar-color:#9DB8A4 #1B552D;
}
header.shp-header{border:0;background:var(--c-bg)}
.brand-lockup{background:transparent;border-radius:0}
.shp-root .shp-btn{--_bg:transparent;--_fg:#FFFFFF;box-shadow:none;transition:transform 80ms ease-out;border-radius:999px;font-size:max(19px,var(--fs-label));text-transform:none;letter-spacing:0;line-height:1.2}
.shp-root .shp-btn--primary{--_bg:#FE6C1F;--_fg:#3A1B16;border-color:#FE6C1F}
.shp-root .shp-btn--ghost{border-color:transparent}
.shp-root .shp-btn:hover{filter:none;text-decoration:underline;text-underline-offset:.2em}
.shp-root .shp-btn:active{transform:scale(.97);box-shadow:none}
.shp-root .shp-btn--primary:active{--_bg:#CE572C;--_fg:#FFFFFF;border-color:#CE572C}
.shp-root .shp-btn:disabled{--_bg:#2B6A40;--_fg:#CFE3D5;border-color:#2B6A40;border-style:solid;transform:none;text-decoration:none;box-shadow:none}
.shp-root :focus-visible{outline:3px solid var(--c-focus);outline-offset:4px;box-shadow:none}
.option{--_bg:#245F37;--_bd:#2F6E44;border-width:2px;border-radius:30px;box-shadow:none}
.option .shp-answer__body{font-weight:400}
.option input{width:28px;height:28px;border:2px solid #FFFFFF;background:transparent;color-scheme:dark}
.option input:checked{border:7px solid #1B552D;background:#FE6C1F}
.option:has(input:checked){--_bg:#FFFFFF;border-color:#FE6C1F;color:#14321F;transform:none}
.option:has(input:checked) .shp-answer__body{font-weight:700}
.option:has(input:focus-visible){outline:3px solid #6BDAF8;outline-offset:4px;box-shadow:none}
.shp-root .option input:focus-visible{outline:0;box-shadow:none}
textarea.shp-input{border-color:#9DB8A4;border-width:2px;background:#245F37;color:#FFFFFF;border-radius:30px;caret-color:#FE6C1F}
.shp-root .shp-input:focus-visible{outline:3px solid #6BDAF8;outline-offset:4px;box-shadow:none}
.shp-input::placeholder{color:#CFE3D5;opacity:1}
.progress{border-color:#9DB8A4;background:#245F37}
.progress::-webkit-progress-bar{background:#245F37}
.progress::-webkit-progress-value{background:#6EC06B}
.progress::-moz-progress-bar{background:#6EC06B}
.leaf-icon{color:#9DB8A4;--leaf-vein:#1B552D}
.leaf-icon.is-filled{color:#6EC06B}
.leaf-icon.is-filled .leaf-vein{stroke:var(--leaf-vein)}
.option:has(input:checked) .leaf-icon.is-filled{color:#2F9A4C;--leaf-vein:#FFFFFF}
.memo-phone img{background:#FFFFFF;border-radius:24px;padding:8px}
a{color:#FFFFFF;text-underline-offset:.2em}
::selection{background:#FE6C1F;color:#3A1B16}
@media(max-width:600px){.shp-root{--safe:20px}.option{border-radius:30px}.option input{width:24px;height:24px}.skip.shp-btn{font-size:16px}}
@media(prefers-reduced-motion:reduce){.shp-root .shp-btn:active{transform:none}}

/* M26-02: phone already holds the memo; kiosk/tablet retain the useful hand-off QR. */
@media(max-width:600px),(max-width:1000px) and (max-height:500px) and (pointer:coarse){.memo-phone{display:none}}
.aux-actions{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.aux-actions .skip.shp-btn{flex:1;margin:12px 0 0;padding:8px;white-space:normal}
@media(max-width:600px){
 header.shp-header{padding-top:12px;padding-bottom:12px}
 .brand-lockup{padding:23px}.brand-lockup img{height:46px}
 main{padding-top:16px}
 h1.shp-title{margin-bottom:16px}
 .progress-text{margin-bottom:8px}.progress{height:8px;margin-bottom:16px}
 .hint.shp-hint{margin-bottom:16px}
 .option{margin-bottom:10px}
 .option .shp-answer__body{font-size:15px;line-height:1.3;padding:.65em .8em .65em 0}
 .actions{margin-top:24px}
 .aux-actions .skip.shp-btn{font-size:14px}
}

/* night-kit-20261026.1: native radio semantics and product layout adapters. */
.shp-night{--c-focus:var(--shp-focus);--c-accent:var(--shp-accent);--c-bg:var(--shp-surface);--c-text:var(--shp-text);--c-text-muted:var(--shp-muted)}
.shp-night .shp-shell{min-height:100svh;width:100%}
.shp-night header.shp-header{width:100%;background:var(--shp-surface)}
.shp-night .brand-lockup .shp-logo{max-width:none;aspect-ratio:auto;padding:0;border:0}
.shp-night .shp-title{font-size:var(--fs-h1)}
.shp-night .welcome h1{font-size:var(--fs-h1)}
.shp-night .option{display:grid;gap:0;padding:0;min-height:var(--target);border-width:2px;background:var(--_bg);border-color:var(--_bd);transition:transform 80ms ease-out}
.shp-night .option:has(input:checked){background:var(--shp-text);color:var(--shp-deep);border-color:var(--shp-accent)}
.shp-night .option:hover{border-color:var(--shp-border)}
.shp-night .option:has(input:checked):hover{border-color:var(--shp-accent)}
.shp-night textarea.shp-input{min-height:200px;max-width:100%;border-radius:20px;background:var(--shp-deep);color:var(--shp-text);caret-color:var(--shp-focus)}
.shp-night .shp-btn{min-height:var(--target);transition:transform 80ms ease-out}
.shp-night .shp-btn:disabled{color:var(--c-disabled-text)}
.shp-night .progress{height:12px}
.shp-night .progress::-webkit-progress-value{background:var(--shp-success)}
.shp-night .progress::-moz-progress-bar{background:var(--shp-success)}
@media(max-width:600px){.shp-night .welcome h1{font-size:28px}.shp-night .progress{height:8px}}
