/* Shared palette; IDs, controls, stage and original engine stay intact. */
@media(max-width:620px){.workspace{height:auto!important;min-height:0}.workspace:fullscreen{height:100dvh!important}}
.workspace{height:calc(100dvh - 280px)}
.product-bar{margin:0!important}#help-button{min-height:44px;padding:0 14px;border:1px solid #405249;border-radius:7px;color:#d9e1dd;background:transparent;flex-shrink:0;font-size:12px}.intro{gap:12px}#gallery-empty{position:absolute;inset:70px 20px 80px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#edf0ed;pointer-events:none}#gallery-empty strong{font-size:22px;font-weight:550}#gallery-empty p{font-size:13px;line-height:1.7;color:#aabcb2}#gallery-empty button{pointer-events:auto;background:#caedaa;color:#172010;border:0;border-radius:7px;padding:13px 18px;font-weight:600}#fullscreen-button{min-width:44px;min-height:44px}#help-close{min-width:44px;min-height:44px}@media(max-width:620px){.intro p{max-width:235px}.intro h1{font-size:23px}aside button,aside select{min-height:44px}aside select{font-size:16px}aside input[type=range]{min-height:30px}.checkbox-label{min-height:35px}#help-button{padding:0 9px;font-size:11px}.privacy-note{font-size:11px}aside section>label,.small-status,.camera-group p{font-size:11px}}
:root{color-scheme:dark;background:#0b0e11;color:#edf0ed;--accent:#c3ee9b;--line:#283139}body{background:#0b0e11}header{border-color:var(--line)}.brand>span{color:#15200f}.brand small,.intro p,.intro-note,.local-badge,footer{color:#929fa3}.header-actions button{border-color:#354048;color:#d9e1dd}.header-actions a{font-size:12px;color:#b8c6ba}.header-actions a:hover{color:var(--accent)}.intro h1{font-weight:550}.level-tabs button{border-color:#2c353c;color:#abb7bc;background:#10151a;transition:background .2s,border-color .2s,transform .2s}.level-tabs button:hover{background:#1b2529;border-color:#5b7165;transform:translateY(-1px)}.level-tabs button[aria-pressed=true]{background:#1c2a20;border-color:#829e6e;color:#e9f3e1}.level-tabs button[aria-pressed=true] b{color:var(--accent)}.workspace{border-color:#34413a;box-shadow:0 12px 44px #0002}aside{background:#141e24}aside button{background:#1c2a30;border-color:#36494f}aside button:hover{background:#2c3b3d}aside button[aria-pressed=true]{color:#c3ee9b}.accent-outline{color:#c3ee9b;border-color:#607e50}.camera-group .accent:hover{background:#d6f5b9}.camera-group button:disabled{opacity:.55}.stage-heading>span,.stage-bottom>span{backdrop-filter:blur(6px)}dialog{background:#111a20;color:#e4ece5;border:1px solid #3b4b42}.dialog-header button{color:#e4ece5;border-color:#405249}.help-level{border-color:#2d3b32}.help-level p,.help-warning{color:#acbcb2}.help-warning{background:#1b2a20}.header-actions{gap:18px}@media(max-width:620px){.header-actions{gap:12px}.header-actions a{font-size:11px}.intro h1{font-size:22px}.intro p{max-width:360px}}@media(prefers-reduced-motion:reduce){.level-tabs button:hover{transform:none}}
/* v6 — light tool chrome around a deliberately dark 3D stage. */
:root{color-scheme:light;background:#f7f4ee;color:#302820;--accent:#a87e3c;--line:#d9cfbf}
body{background:#f7f4ee;color:#302820}
.intro h1{font-weight:500;letter-spacing:-.8px}.intro p,.intro-note,footer{color:#7b6b58}
#help-button{color:#5c442d;border-color:#cbb99b;border-radius:24px;padding-inline:18px;background:transparent}
#help-button:hover{background:#ebe0ce}
.level-tabs{gap:9px}
.level-tabs button{border-color:#d9cbb5;color:#6e5a43;background:transparent;border-radius:8px;transition:background .16s,border-color .16s}
.level-tabs button:hover{background:#eee4d4;border-color:#a88a5d;transform:none}
.level-tabs button[aria-pressed=true]{background:#30261f;border-color:#30261f;color:#fff4e2}
.level-tabs button[aria-pressed=true] b{color:#dabb83}
.level-tabs small{opacity:.85}
.workspace{border-color:#cfc0a7;border-radius:12px;background:#29241e;box-shadow:0 9px 30px #6143240a;color:#f4e6d0}
.stage-wrap{background:#29241e}
.stage-heading>span,.stage-bottom>span{background:#241e18d9;color:#deceb6;backdrop-filter:none}
#camera-badge{color:#e2c796}.stage-bottom button{background:#302820;color:#e5cb9c;border-color:#826b4a;border-radius:50%}
#gallery-empty strong{color:#f2e4cd;font-family:Georgia,serif;font-size:28px;font-weight:400}
#gallery-empty p{color:#c3b298}
#gallery-empty button{border:1px solid #d3b57e;background:#d3b57e;color:#31241a;border-radius:24px;padding:13px 22px}
aside{background:#f0e9dd;color:#33281e;border-color:#d8c9b1}
.eyebrow{color:#8a6a3f;letter-spacing:1.8px}.sidebar-heading h2{font-weight:500;color:#3b2c1e}
aside section>label,.checkbox-label,aside section>label.checkbox-label{color:#69563f}
aside button{background:#faf6ee;border-color:#cfc0a7;color:#59412a;border-radius:7px}
aside button:hover{background:#e6d7bd;border-color:#aa8c5d}
aside button[aria-pressed=true]{color:#785020;border-color:#a78147;background:#f2e2c3}
aside select{background:#fffaf2;border-color:#c6b494;color:#4e3924;border-radius:6px;color-scheme:light}
aside input[type=range],.checkbox-label input{accent-color:#94672c}
.accent-outline{color:#674823;border-color:#af9267}
.small-status,.tool-note,.camera-group p,.privacy-note{color:#77664f}
.camera-group{border-color:#d0bfa3}
.camera-group .accent{background:#30261f;color:#fff5e4;border-color:#30261f;border-radius:24px;font-weight:500}
.camera-group .accent:hover{background:#715134;border-color:#715134}
#body-status{background:#e8dcc6;color:#66502f;border-color:#c4af8a;border-radius:7px}
#body-status[data-state=detected]{color:#2e664c;border-color:#81a089;background:#e3eadd}
dialog{background:#fbf7ef;color:#3d3023;border-color:#d4c5ad;border-radius:14px}
.dialog-header h2{font-family:Georgia,serif;font-weight:400}.dialog-header button{color:#6b4f2c;border-color:#c5b08d}
.help-level{border-color:#ded1bd}.help-level p,.help-warning{color:#79654c}.help-warning{background:#eee2cc;border-radius:7px}
dialog::backdrop{background:#2920169e;backdrop-filter:blur(3px)}
@media(max-width:620px){.level-tabs{gap:5px}.level-tabs button{padding:10px 4px}.intro p{max-width:225px}#help-button{padding-inline:11px}.workspace{height:auto!important}.workspace:fullscreen{height:100dvh!important}aside select{font-size:15px}.stage-bottom>span{font-size:10px}}

/* v9 — one visible path from camera to a finished image. */
.workspace{grid-template-columns:minmax(0,1fr) 280px}
.stage-view{position:relative;height:100%;min-height:0;min-width:0}
.scene-settings>.sidebar-heading{position:relative;list-style:none;cursor:pointer;padding-right:28px;min-height:44px}
.scene-settings>.sidebar-heading::-webkit-details-marker{display:none}
.settings-toggle{position:absolute;right:2px;top:12px;font-size:20px;color:#77624c}
.scene-settings[open]>.sidebar-heading .settings-toggle{transform:rotate(45deg)}
.sidebar-heading{margin-top:22px}.sidebar-heading h2{margin-bottom:15px}
.capture-panel{padding-bottom:15px;border-bottom:1px solid #d4c5af}
.capture-steps{list-style:none;display:flex;gap:6px;justify-content:space-between;margin:0 0 12px;padding:0;font-size:10px;color:#77624c}
.capture-steps li{padding-bottom:7px;border-bottom:2px solid #d8cbb8}
.capture-steps [aria-current=step]{border-color:#995438;color:#80492f;font-weight:600}
.capture-steps [data-complete=true]{border-color:#61765a;color:#425d48}
#save-button{background:#995438;border-color:#995438;color:#fff8ed;font-size:13px;min-height:42px;margin:0;font-weight:600}
#save-button:hover{background:#80452f;border-color:#80452f}
.capture-panel .checkbox-label{margin:11px 0 0;min-height:28px;font-size:11px}
.capture-panel .small-status{margin-bottom:0;font-size:10px}
.camera-group{margin-top:18px}.camera-group .accent{border-radius:7px;background:#e1e9dc;border-color:#a4b39b;color:#425d48}
.camera-group .accent:hover{background:#d1ddc9;color:#354b39}
.advanced-tools{margin-top:15px;border-top:1px solid #d4c5af;padding-top:5px}
.advanced-tools summary{cursor:pointer;padding:12px 0;color:#614b35;min-height:44px}
.advanced-tools summary span{font-size:10px;color:#77664f;display:block;margin:4px 0 0 14px}
.advanced-tools .checkbox-label{line-height:1.5}
#body-status{font-size:11px}
.stage-guide{position:absolute;bottom:88px;left:18px;right:18px;max-width:560px;margin-inline:auto;display:flex;align-items:center;gap:18px;padding:14px 16px;background:#fbf7ef;border:1px solid #d8c8ae;border-radius:9px;color:#3d3023;box-shadow:0 5px 20px #0002;pointer-events:none}
.stage-guide strong{font-size:13px;font-weight:600}.stage-guide p{font-size:11px;line-height:1.55;margin:5px 0 0;color:#6b5945}
.stage-guide button{pointer-events:auto;flex-shrink:0;border:1px solid #30261f;border-radius:7px;background:#30261f;color:#fff4e2;padding:10px 13px;min-height:44px;font-size:11px}
.stage-guide[data-state=ready]{background:#e1e9dc;border-color:#a4b39b}.stage-guide[data-state=ready] strong{color:#354b39}
#shot-countdown{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#241e1833;pointer-events:none}
#countdown-number{display:grid;place-items:center;width:110px;height:110px;border-radius:50%;background:#fbf7efed;color:#30261f;font-size:66px;font-weight:300;font-variant-numeric:tabular-nums}
#cancel-shot{pointer-events:auto;border:1px solid #d3b57e;border-radius:7px;background:#30261f;color:#fff4e2;padding:10px 18px;min-height:44px;font-size:12px}
#photo-dialog{width:min(800px,calc(100% - 24px));padding:22px}
#photo-preview{display:block;width:100%;height:auto;max-height:60dvh;object-fit:contain;background:#29241e;margin-top:20px;border-radius:7px}
#photo-info,#download-status{font-size:12px;line-height:1.6;color:#77624c;margin:12px 0}
.photo-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.photo-actions button{min-height:44px;border:1px solid #c9b699;border-radius:7px;color:#59412a;background:#faf6ee;padding:10px 18px;font-size:13px}
#download-photo{background:#995438;border-color:#995438;color:#fff8ed}
#photo-close{min-width:44px;min-height:44px;border-radius:7px}
@media(min-width:621px){.stage-guide{transition:background .18s,border-color .18s}}
@media(max-width:900px) and (min-width:621px){.workspace{grid-template-columns:minmax(0,1fr) 250px}.stage-guide{flex-direction:column;align-items:flex-start;gap:10px;bottom:100px}}
@media(max-width:620px){
  .intro p{max-width:245px}.stage-wrap{height:calc(48dvh + 105px);min-height:450px;display:grid;grid-template-rows:minmax(0,1fr) auto}
  .stage-view{height:100%}
  aside{display:block;padding:18px;border-color:#d4c5af}.capture-panel{padding-bottom:16px}
  .capture-steps{font-size:11px;justify-content:flex-start;gap:20px}.capture-panel .checkbox-label{min-height:36px}
  .sidebar-heading{margin-top:18px}.sidebar-heading h2{margin-bottom:14px}
  .camera-group{border-left:0;border-top:1px solid #d4c5af;padding:15px 0 0;margin:20px 0 0}.privacy-note{margin-top:16px}
  .stage-guide{position:static;max-width:none;margin:0;padding:12px;gap:12px;flex-direction:row;align-items:center;border:0;border-radius:0;border-top:1px solid #d8c8ae;box-shadow:none}
  .stage-guide strong{font-size:12px}.stage-guide p{font-size:10px;margin-top:4px}.stage-guide button{padding:9px 11px;min-height:44px;max-width:122px}
  body[data-camera=off] .camera-group{display:none}
  .stage-heading{letter-spacing:.3px}.stage-heading>span{max-width:60%}#camera-badge{max-width:45%;text-align:right}
  #gallery-empty{inset:55px 15px 85px}#gallery-empty p{font-size:11px}
  aside button,#save-button,.camera-group .accent{min-height:44px}.checkbox-label input{width:17px;height:17px;flex-shrink:0}
  .advanced-tools summary{padding:14px 0}.advanced-tools summary span{display:inline;margin-left:6px}
  #photo-dialog{padding:16px}.photo-actions{display:grid;grid-template-columns:1fr 1fr}.photo-actions button{padding:10px 8px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.stage-guide{transition:none}}
