@font-face{font-family:Display;src:url('../assets/barlow-condensed-extrabold.ttf');font-weight:800;font-display:swap}@font-face{font-family:Barlow;src:url('../assets/barlow-regular.ttf');font-weight:400;font-display:swap}@font-face{font-family:Barlow;src:url('../assets/barlow-semibold.ttf');font-weight:600;font-display:swap}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#07150f;color:#f0f0e6;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,select,input{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,#canvas-wrap:focus-visible{outline:2px solid #efce7b;outline-offset:4px}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 32px;border-bottom:1px solid #26352b}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:#f2efd8;font-weight:700;font-size:15px;letter-spacing:.12em}.brand-icon{display:grid;place-items:center;width:39px;height:44px;border:1px solid #9e925b;color:#e8cd8b;font-family:Display,Impact,sans-serif;font-size:26px}.brand small{display:block;font-size:10px;letter-spacing:.18em;font-weight:500;color:#92aa98;margin-top:5px}.place{font-size:13px;color:#adbcb0;letter-spacing:.06em}.place span{margin:0 12px;color:#e9cb83}.quiet{background:none;border:1px solid #415447;color:#e7eadd;border-radius:7px;padding:11px 16px;font-size:14px}.quiet:hover{background:#193426}.workspace{display:grid;grid-template-columns:305px minmax(0,1fr);gap:28px;padding:26px 28px;max-width:1920px;margin:auto}.sidebar{display:flex;flex-direction:column;gap:23px;padding:7px 3px 0 0}.eyebrow{color:#d9bf7b;font-size:11px;letter-spacing:.13em;font-weight:700;margin:0 0 12px}h1{font-family:Display,Impact,'Arial Narrow',sans-serif;text-transform:uppercase;font-size:clamp(38px,3.45vw,58px);font-weight:400;letter-spacing:.005em;line-height:1.06;margin:0 0 17px;color:#f4f0db}.intro{font-size:15px;line-height:1.65;color:#aabdaf;max-width:282px;margin:0}.part-selector label{display:block;font-size:12px;font-weight:600;color:#aebcb0;margin-bottom:9px}select{color:#f3ecd7;background:#14291d;border:1px solid #395240;border-radius:8px;padding:12px 13px;width:100%;font-size:15px;cursor:pointer}.stage-story{border-top:1px solid #314536;padding-top:19px}.story-heading{display:flex;align-items:center;gap:15px;margin-bottom:11px}.story-heading>span{font-size:32px;color:#e4c274;font-family:Display,Impact,sans-serif}.story-heading p{font-size:10px;letter-spacing:.1em;color:#cbb879;margin:0}.stage-story h2{font-size:21px;font-weight:600;line-height:1.2;margin:0 0 12px;letter-spacing:-.025em}.stage-story>p{font-size:14px;line-height:1.7;color:#acbcaf;margin:0}.reference{position:relative;width:100%;padding:0;border:1px solid #405441;border-radius:10px;overflow:hidden;text-align:left;background:#122418}.reference img{width:100%;height:125px;display:block;object-fit:cover}.reference>span{padding:12px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px}.reference strong{font-size:12px;font-weight:600}.reference small{font-size:11px;color:#a8b7a7}.precision{font-size:11px;color:#849b89;line-height:1.65;margin:0}.viewer{height:calc(100svh - 136px);min-height:640px;position:relative;overflow:hidden;border:1px solid #526050;border-radius:16px;background:#bac9cd}.viewer canvas{display:block;width:100%;height:100%;touch-action:none}#canvas-wrap{position:absolute;inset:0;outline-offset:-4px}.scene-heading{position:absolute;top:23px;left:24px;display:flex;gap:11px;align-items:center;color:#143124;font-size:12px;pointer-events:none}.scene-mark{font-size:10px;font-weight:700;letter-spacing:.1em;background:#143b2c;color:#f6e7be;padding:7px 9px;border-radius:4px}.camera-tools{position:absolute;right:20px;top:20px;background:#fffdf3da;backdrop-filter:blur(12px);display:flex;padding:4px;border:1px solid #f7f9e4;border-radius:8px;gap:2px}.camera-tools button{border:0;background:none;color:#3c5044;border-radius:5px;padding:8px 11px;font-size:12px}.camera-tools button.active,.camera-tools button:hover{background:#1b4231;color:#f5e7c2}.gesture{position:absolute;bottom:157px;left:25px;font-size:11px;color:#f5eee0;background:#153627c9;border:1px solid #68836877;padding:8px 12px;border-radius:6px;pointer-events:none}.gesture span{padding:0 6px}.timeline{position:absolute;left:20px;right:20px;bottom:20px;padding:16px 21px 12px;border:1px solid #59775e66;background:#0b251ce8;box-shadow:0 10px 40px #04120b33;border-radius:11px;backdrop-filter:blur(20px)}.timeline-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;gap:16px}.play{display:flex;align-items:center;gap:10px;border:none;padding:0;background:none;color:#f5edd4;font-size:13px;font-weight:600}.play>span:first-child{background:#e7ca82;color:#102619;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;font-size:11px}.timeline-caption{font-size:9px;letter-spacing:.08em;color:#aebfad}.timeline-caption b{font-size:12px;font-weight:500;color:#edd69a;letter-spacing:.02em;margin-left:15px}input[type=range]{appearance:none;width:100%;margin:4px 0 14px;height:3px;background:linear-gradient(to right,#e8c779 0 75%,#506951 75% 100%);border-radius:2px;cursor:pointer;display:block}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;background:#f4dfa8;border:2px solid #b39347;border-radius:50%;box-shadow:0 0 0 4px #e9cf8122}input[type=range]::-moz-range-thumb{width:11px;height:11px;background:#f4dfa8;border:2px solid #b39347;border-radius:50%}.stage-buttons{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.stage-buttons button{background:none;border:0;color:#a3b3a1;padding:5px 0;font-size:12px;text-align:left}.stage-buttons button:last-child{text-align:right}.stage-buttons button:nth-child(2),.stage-buttons button:nth-child(3),.stage-buttons button:nth-child(4){text-align:center}.stage-buttons button.active{color:#f6dda0;font-weight:600}.render-error{position:absolute;inset:120px 50px 220px;align-content:center;text-align:center;background:#163225;color:#f5e6c7;border-radius:10px;padding:22px}.render-error[hidden]{display:none}.render-error button{background:#e3c878;border:0;border-radius:6px;padding:11px 15px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0,0,0,0);overflow:hidden}dialog{max-width:1060px;width:calc(100% - 40px);max-height:94svh;padding:26px;background:#0d2419;color:#f5edd9;border:1px solid #596c48;border-radius:14px;overflow:auto}dialog::backdrop{background:#020e0bbb;backdrop-filter:blur(7px)}.dialog-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:23px}.dialog-head h2{margin:0;font-size:25px;font-weight:500;letter-spacing:-.03em}.dialog-head .eyebrow{font-size:10px;margin-bottom:7px}.photo-view>img{display:block;width:100%;max-height:58svh;object-fit:contain;background:#07110c;border-radius:8px}.photo-view h3{font-size:16px;margin:15px 0 5px}.photo-view p{font-size:13px;line-height:1.6;color:#b4c0b0;margin:0 0 16px}.thumbs{display:grid;grid-template-columns:repeat(8,1fr);gap:9px}.thumbs button{border:2px solid transparent;padding:0;border-radius:6px;overflow:hidden;background:#08160f}.thumbs button.active{border-color:#e3c779}.thumbs img{display:block;width:100%;height:68px;object-fit:cover}@media(min-width:1650px){.workspace{grid-template-columns:355px minmax(0,1fr)}.sidebar{padding-right:15px}.intro{max-width:310px}.reference img{height:170px}}@media(max-height:850px) and (min-width:901px){.sidebar{gap:17px}h1{font-size:42px;margin-bottom:12px}.intro{font-size:14px;line-height:1.55}.reference img{height:100px}.stage-story>p{font-size:13px}.viewer{min-height:615px}.workspace{padding-top:19px}}@media(max-width:1100px){.workspace{grid-template-columns:265px minmax(0,1fr);gap:18px;padding:20px}.topbar{padding:0 22px}.scene-heading{top:70px}.camera-tools{left:20px;right:auto}.timeline-caption{display:none}.timeline{padding:14px 14px 10px}.gesture{font-size:10px;left:20px}.sidebar{gap:20px}h1{font-size:43px}}@media(max-width:800px){.topbar{height:73px;padding:0 17px;gap:10px}.place{display:none}.brand{font-size:12px;gap:9px}.brand-icon{width:32px;height:37px;font-size:22px}.brand small{font-size:8px}.quiet{padding:10px 12px;font-size:12px}.workspace{display:flex;flex-direction:column;padding:16px;gap:20px}.viewer{height:68svh;min-height:510px;order:0;border-radius:12px}.sidebar{order:1;display:grid;grid-template-columns:1fr 1fr;gap:20px}.sidebar>div:first-child{grid-column:1 / -1}.sidebar h1{font-size:36px;line-height:1.06;display:inline-block;margin:0 20px 10px 0}.sidebar h1 br{display:none}.intro{font-size:14px;max-width:100%}.part-selector{grid-column:1/-1}.stage-story{padding-top:15px}.reference{align-self:start;margin-top:1px}.precision{grid-column:1/-1}.scene-heading{top:72px;left:17px;font-size:11px}.camera-tools{left:14px;top:15px}.camera-tools button{padding:8px 9px;font-size:11px}.timeline{bottom:13px;left:13px;right:13px}.gesture{left:14px;bottom:144px;padding:7px;font-size:9px;max-width:90%}.stage-buttons button{font-size:10px}.timeline-top{margin-bottom:12px}.thumbs{grid-template-columns:repeat(4,1fr)}.thumbs img{height:58px}dialog{padding:18px;width:calc(100% - 22px)}.dialog-head h2{font-size:19px}.photo-view>img{max-height:52svh}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.viewer.expanded{position:fixed;inset:0;z-index:99;border-radius:0;height:100svh}.viewer:fullscreen{height:100svh;width:100vw}#capture{width:100%;margin-top:16px;font-size:13px}

#record{width:100%;margin-top:8px;font-size:13px}#export-status{font-size:13px;line-height:1.5;color:#dacb9e}#export-status a{display:block;text-align:center;color:#f3dda0}button:disabled,select:disabled{opacity:.55;cursor:wait}

/* B22 host integration: pure-black chrome; the photographed outdoor scene retains daylight. */
body{background:#000;color:#fff;font-family:Barlow,Arial,sans-serif}
h1{font-weight:800}.brand-icon{border:0;border-radius:50%;width:40px;height:40px;object-fit:contain}
.topbar{background:#000;border-color:#d4af3733}.quiet,select,.reference,dialog{background:#000;border-color:#d4af3740;border-radius:14px;color:#e5eadd}
.quiet:hover{background:#102015}.precision{color:#a6b5a7}.camera-tools{background:#000;border-color:#d4af3760;backdrop-filter:none}
.camera-tools button{color:#e1e6de}.camera-tools button.active,.camera-tools button:hover{background:#13c65b;color:#031409}
.timeline{background:#000e;backdrop-filter:none;border-color:#d4af3740;box-shadow:none}.gesture{background:#000d;color:#e5eadd;border-color:#d4af3740}
body[data-embed=true] .topbar,body[data-embed=true] .sidebar>div:first-child{display:none}
body[data-embed=true] .workspace{grid-template-columns:235px minmax(0,1fr);padding:18px;gap:22px}
body[data-embed=true] .viewer{height:690px;min-height:690px}
body[data-embed=true] .sidebar{gap:18px;padding-top:0}
body[data-embed=true] #capture,body[data-embed=true] #record{margin-top:0}
@media(max-width:800px){body[data-embed=true] .workspace{display:flex;padding:12px;gap:20px}body[data-embed=true] .viewer{height:520px;min-height:520px}body[data-embed=true] .sidebar{grid-template-columns:1fr 1fr;gap:16px}.brand-icon{width:32px;height:32px} .precision{font-size:12px}}
@media(max-width:420px){
  .sidebar,body[data-embed=true] .sidebar{grid-template-columns:minmax(0,1fr)}
  .sidebar>*{min-width:0}.reference>span{flex-wrap:wrap;gap:4px 12px}
  .reference img{height:160px}
  .stage-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 8px}
  .stage-buttons button,.stage-buttons button:last-child{min-height:32px;text-align:center;font-size:11px}
  .gesture{bottom:184px}.camera-tools button{padding:8px}
}
