/* Midnight in Santa's workshop: warm brass, velvet red, and evergreen shadows. */
:root{color-scheme:dark;--cream:#0c1412;--paper:#121d19;--ink:#f4ecdc;--muted:#b6b5a7;--red:#dfbc78;--red-dark:#bf914d;--gold:#d7b36f;--line:#d9b87929;--green:#a9c6a9;background:var(--cream)}
body{isolation:isolate;background:transparent;min-height:100vh}
body:before{content:"";position:fixed;inset:0;z-index:-2;background:linear-gradient(90deg,#0a1512db,#0b15129c 65%,#0c1412a6),linear-gradient(0deg,#0c1412 5%,#0c141214 85%),url('/assets/cinema/workshop-empty-front-v6.png') center top/cover no-repeat;pointer-events:none}
body:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.5;background-image:radial-gradient(1.5px 1.5px at 8% 20%,#edcf8d 45%,transparent),radial-gradient(1px 1px at 23% 67%,#edcf8d 45%,transparent),radial-gradient(2px 2px at 47% 13%,#f9dda3 40%,transparent),radial-gradient(1px 1px at 71% 39%,#edcf8d 45%,transparent),radial-gradient(2px 2px at 89% 74%,#edcf8d 45%,transparent);background-size:510px 610px;animation:workshop-dust 28s linear infinite}
@keyframes workshop-dust{to{background-position:55px -610px;opacity:.7}}
.masthead{max-width:1600px;height:110px;border-color:var(--line);padding:0 54px;background:#0a141233}
.wordmark{color:#f6ecd5;gap:16px}.wordmark img{width:64px;height:auto;filter:drop-shadow(0 3px 14px #d99a3324)}.wordmark>span{font-size:13px;letter-spacing:2.4px}.wordmark small{font-size:9px;letter-spacing:4px;color:var(--gold);margin-top:8px}
.local-tag{font-size:11px;color:#d7d0bb;gap:12px}.local-tag>span{background:#b4d4a9;box-shadow:0 0 12px #b4d4a988}.local-tag form{padding-left:15px;border-left:1px solid var(--line)}.local-tag form button{font-size:11px;min-height:40px}
main{max-width:1510px;padding:0 54px}.intro{padding:44px 0 36px}.eyebrow{color:var(--gold);font-size:10px;letter-spacing:2.4px;margin-bottom:17px}h1{font-size:76px;line-height:.97;color:#fff5e3;letter-spacing:-1.8px;text-shadow:0 3px 30px #0007}h1 em{color:#e0be80}.intro-copy{font-size:14px;line-height:1.9;color:#d0cebd;max-width:290px}
.workspace{grid-template-columns:330px minmax(0,1fr);gap:32px}.controls{background:linear-gradient(150deg,#16241ff5,#0e1a17fa);border:1px solid #b995532f;border-top-color:#dfbf7963;border-radius:12px;padding:27px 25px;box-shadow:0 14px 60px #0003}.viewer-column{position:sticky;top:24px;min-width:0}
.step-number{font-size:23px}.step-head{gap:12px}.step-head h2{font-size:14px;color:#f2e9d8}label{font-size:12px;font-weight:550;color:#ede4d2}.required-note{font-size:10px;color:#c4b68f}.micro{font-size:11px;line-height:1.75;color:#b4b9ab}.helper,.status{font-size:12px;line-height:1.75}.status.error{color:#ffb1aa}
textarea,input[type=text],input[type=password]{background:#091410!important;border:1px solid #cab78440!important;border-radius:6px!important;color:#f4ecdc;padding:12px 13px!important;font-size:13px;line-height:1.7;box-shadow:inset 0 1px 5px #0002}textarea::placeholder,input::placeholder{color:#88988e}textarea:focus,input:focus{border-color:#d7b36f!important;outline-offset:2px}
.primary,.secondary{font-size:12px;min-height:46px;border-radius:6px;padding:13px 16px}.primary{background:linear-gradient(110deg,#e1c18a,#be9658);border:1px solid #e7c888;color:#211b12;box-shadow:0 3px 15px #0002}.primary:not(:disabled):hover{background:#efd39b;box-shadow:0 3px 23px #cea05929}.primary:disabled{background:#736849;color:#e5d9bf;opacity:.58}.secondary{color:#ead3a4;border-color:#c7a96759;background:#e3c89504}.secondary:hover{background:#c7a96716}.text-button,.settings-link{color:#e2c18a;text-underline-offset:3px}.text-button:hover,.settings-link:hover{color:#fff0cc}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,canvas:focus-visible{outline-color:#f1cf89}
input[type=file]{font-size:11px}input[type=file]::file-selector-button{background:#22352b;border:1px solid #8d81545e;color:#f1dfb8;border-radius:5px;padding:9px}.zoom label,.zoom span{font-size:10px}.zoom input,.player input,progress{accent-color:#d0ab68}.photo-label{margin-top:24px}.personalize,#roof-section{padding-top:24px;margin-top:24px}.character-note strong{font-size:12px}.character-note p{font-size:11px}.connection .secondary{font-size:12px}
.preview-heading{height:28px;font-size:10px;letter-spacing:1.5px;color:#bdb7a8;margin-top:0;margin-bottom:12px}.preview-heading>div{color:#e5d5b5}.preview-heading b{color:#918367}.preview{background:#090f0d;border:1px solid #c2a67055;border-radius:10px;box-shadow:0 24px 70px #0009,0 0 40px #c1944410}.preview>video{background:#090f0d}.preview-badge{background:#07120fe8;color:#efd8a7;border:1px solid #bc9f5e35;letter-spacing:1px;font-size:8px;padding:8px 11px}.load-overlay{background:#0b1813ef}.spinner{border-color:#e8c88940;border-top-color:#e8c889}
.player{padding:19px 0 16px;gap:16px}.player button{width:35px;height:35px;background:#d7b36f;color:#1a1d13}.player .replay,.player .player-extra{color:#ecddbd}.player>span{font-size:11px;color:#ddd6c4}.player i{color:#a69a81}.chapters{font-size:10px;padding:7px 0 23px;color:#beb8a5}.chapters b{color:var(--gold)}
.export-card{padding:29px 0 16px}.export-card h2{font-size:31px;color:#f0e6d2}.export-card .eyebrow{font-size:9px}.export-card p:not(.eyebrow){font-size:12px;color:#b5b9aa}.export-button{width:175px;min-height:50px}.download-result{background:#1d3328;border-color:#78986e4d;color:#d1e2c6;font-size:12px;padding:18px}.export-progress{background:#17281f;border:1px solid #c7a96740}.progress-label{font-size:12px}.choice-card{background:#29251b;border-color:#c9b99055;color:#f0ddba}.earlier-result{background:#10201a;font-size:12px;border-color:#c7a96735}.footnote{font-size:10px;line-height:1.9;color:#a5ae9f}.footnote a{color:#e0c086}.production-notice{background:#2a251a;color:#ead4a9}.character-note,.connection{border-color:#c7a96729}.cinema-empty{background:linear-gradient(0deg,#071410e8,transparent 95%)}footer{border-color:var(--line);color:#9ba998;max-width:1402px;font-size:10px;margin-top:45px}
.login-page{display:grid;place-items:center;min-height:100svh}.login-page:before{background:linear-gradient(90deg,#07120ee8 4%,#07120ec7 42%,#07120e24 80%),linear-gradient(0deg,#07120eee,transparent 75%),url('/assets/cinema/workshop-empty-front-v6.png') center/cover no-repeat}.login-shell{width:100%;max-width:1380px;padding:52px 70px;min-height:100svh;display:flex;flex-direction:column;justify-content:space-between;gap:60px}.login-copy{max-width:560px;padding:38px 0}.login-copy h1{font-size:clamp(56px,6vw,88px);margin:0 0 26px}.login-copy p{font-size:16px;line-height:1.9;color:#c9cebd;max-width:380px}.login-copy .eyebrow{font-size:10px;color:#e1bc74}.google-button{display:inline-flex;justify-content:center;align-items:center;gap:14px;background:#f5eddd;border:1px solid #e6d6b4;color:#1d261e;font:600 14px 'DM Sans',sans-serif;padding:17px 25px;border-radius:6px;text-decoration:none;margin-top:18px;box-shadow:0 4px 28px #0005;transition:transform .2s,background .2s}.google-button:hover{background:#fff9ed;transform:translateY(-2px)}.google-mark{font:bold 22px Arial;color:#4285f4}.login-note{font-size:11px!important;color:#aab7a5!important;margin-top:17px}.login-footer{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.6px;color:#b5b49d;border-top:1px solid #c7a96740;padding-top:23px}.login-footer span:last-child{color:#d6b775}
@media(min-width:1700px){main{padding:0}.masthead{padding:0 54px}}
@media(max-width:1100px){main{padding:0 28px}.masthead{padding:0 28px}.workspace{grid-template-columns:290px minmax(0,1fr);gap:24px}.controls{padding:23px 20px}h1{font-size:66px}.intro-copy{font-size:12px}.chapters{font-size:8px}.export-button{width:100%}.export-card h2{font-size:28px}.preview-heading{font-size:9px;letter-spacing:.7px}}
@media(max-width:760px){.masthead{height:auto;min-height:94px;padding:18px 22px;gap:12px;flex-wrap:wrap}.wordmark img{width:49px;height:auto}.wordmark>span{font-size:11px;letter-spacing:1.5px}.wordmark small{font-size:8px;letter-spacing:2.7px}.local-tag{display:flex;width:100%;font-size:10px;justify-content:space-between}.local-tag form{margin-left:auto}.local-tag>span{display:none}main{padding:0 20px}.intro{padding:34px 0 29px}.intro .eyebrow{font-size:8px;letter-spacing:1.7px}h1{font-size:61px}.workspace{display:flex;gap:25px}.controls{padding:24px 22px}.viewer-column{position:static}.preview-heading{font-size:8px}.preview-badge{font-size:6px}.player{gap:10px}.chapters{font-size:8px}.export-card{padding-top:23px}.export-card h2{font-size:30px}.export-card .eyebrow{font-size:9px}.export-card p:not(.eyebrow){font-size:12px}.download-result .primary{margin-left:0}.login-shell{padding:30px 25px;gap:40px}.login-copy{padding:24px 0}.login-copy h1{font-size:65px}.login-copy p{font-size:14px}.login-page:before{background:linear-gradient(90deg,#07120ee8,#07120e88),linear-gradient(0deg,#07120eee,transparent),url('/assets/cinema/workshop-empty-front-v6.png') center/cover no-repeat}.login-footer{gap:18px;font-size:8px}.footnote{font-size:10px}footer{font-size:10px}}
.family-desk{margin:0 0 30px;padding:23px 26px;background:#102019e8;border:1px solid #d9b87933;border-radius:10px}.family-desk-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;gap:20px}.family-desk-title .eyebrow{margin:0;font-size:10px}.family-desk-title p{margin:0;font-size:12px;color:#b6bcae}.family-fields{display:grid;grid-template-columns:1.1fr 1.2fr 145px 158px;gap:18px;align-items:end}.family-fields select,.family-fields input[type=number]{width:100%;min-height:46px;background:#091410;border:1px solid #cab78440;border-radius:6px;padding:10px 12px;color:#f4ecdc;font:13px 'DM Sans',sans-serif}.family-fields input[type=text]{min-height:46px}.family-fields .secondary{height:46px}.film-archive{margin:44px 0 0;padding:27px;background:#102019ed;border:1px solid var(--line);border-radius:10px}.film-archive h2{font:32px 'Libre Caslon Display',Georgia,serif}.film-archive>p{font-size:12px;color:var(--muted)}.archive-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px;margin-top:20px}.archive-film{padding:19px;border:1px solid #cab78430;border-radius:7px;background:#091711}.archive-film>strong{display:block;color:#dfbd7b;font-size:11px;letter-spacing:1px}.archive-film h3{font:26px 'Libre Caslon Display',Georgia,serif;margin:12px 0 7px}.archive-film p{font-size:11px;color:var(--muted);line-height:1.7;margin:0 0 10px}.archive-film div{display:flex;gap:18px}.archive-film a,.archive-film button{font-size:11px;color:#e2c18a}.archive-empty{color:#a7b0a1;font-size:12px;padding:6px 0}.film-archive .eyebrow{margin-bottom:9px;font-size:9px}
@media(max-width:1000px){.family-fields{grid-template-columns:1fr 1fr}.family-desk-title{align-items:flex-start}.family-desk-title p{max-width:200px;text-align:right}.family-fields .secondary{width:100%}}
@media(max-width:760px){.family-desk{padding:21px;margin-bottom:25px}.family-desk-title{display:block}.family-desk-title p{max-width:none;text-align:left;margin-top:10px;font-size:11px}.family-fields{grid-template-columns:1fr;gap:15px}.film-archive{padding:22px;margin-top:30px}.film-archive h2{font-size:29px}.archive-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){body:after{animation:none}.google-button{transition:none}}

/* Explore the cached neighborhood without changing the selected rooftop. */
.picker-wrap{max-height:none}#picker{touch-action:none;cursor:grab;user-select:none;max-height:none;height:auto;aspect-ratio:4/3}#picker.is-dragging{cursor:grabbing}#picker:focus-visible{outline:2px solid var(--gold);outline-offset:-3px}.map-navigation{display:flex;gap:5px;margin-top:9px}.map-navigation button{min-width:32px;min-height:38px;flex:1;background:#1b2d25;border:1px solid #b995534f;border-radius:5px;color:#f0dfbd;font-size:15px}.map-navigation button:hover{background:#2b4032}.map-navigation #map-recenter{flex:2.4;font-size:11px;white-space:nowrap}.map-navigation button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}

