/* Shared archive controls: olive ink, paper and crisp pixel edges. */
@import url('archive-theme.css?v=clean-paper-5');
.masthead nav button,.masthead .motion,.game-controls button,.onboarding button,.app-toolbar button,.app-toolbar>a{border-radius:0;font-family:'Silkscreen',monospace}
.masthead nav button{font-size:9px;letter-spacing:0;border:1px solid #9dab7840;background:#142219dc;padding:10px 13px}
.masthead .motion{font-size:8px;border:1px solid #9dab7840;background:#142219dc;min-height:36px}
.interact-button{font:10px/1.7 'Silkscreen',monospace;box-shadow:3px 3px #73815b;border:2px solid #b4bb91}
.interact-button:hover{transform:none}.interact-button:active{transform:translate(2px,2px);box-shadow:1px 1px #73815b}
.objective-panel,.interaction-prompt,.game-toast,.printing-meter,.discovery-card,.jump-hint,.desktop-controls kbd,.jump-hint kbd{border-radius:0}
.onboarding button{font-size:10px;border:2px solid #899773;box-shadow:3px 3px #0b160d66}.film-toolbar button{font-size:9px}
.app-toolbar>a{font-size:9px;padding:10px;border:1px solid #899773;min-height:38px;display:flex;align-items:center}.app-toolbar button{min-width:40px;min-height:40px;border:1px solid #899773;background:#ece7cf}
#mapDialog{border-radius:0;background:#e8e0bd;color:#29392a;border:4px solid #89906b;box-shadow:8px 8px #101b1670}#mapDialog h2{font:19px/1.6 'Silkscreen',monospace}.chapter-map button{border-radius:0;font:10px/1.7 'Silkscreen',monospace}.chapter-map button:before{border-radius:0}#mapDialog .text-button{font:10px 'Silkscreen',monospace;min-height:44px}
@media(max-width:600px){.masthead{height:108px;padding:8px 14px;gap:6px}.masthead nav{gap:5px}.masthead nav button{min-height:40px;flex:1;padding:8px 4px;font-size:8px}.masthead .motion{padding:6px;font-size:7px;min-height:36px}.masthead .audio-toggle{min-width:51px}.masthead #replayIntro{font-size:7px;padding:6px}.quest-hud{top:122px}.interact-button{font:8px/1.6 'Silkscreen',monospace;padding:8px}.touch-controls button{border-radius:0;font-family:'Silkscreen',monospace}.app-toolbar{gap:8px}.app-toolbar h2{font-size:9px}.app-toolbar>a{font-size:7px;padding:8px;max-width:100px}.app-toolbar .app-seal{display:none}.film-toolbar button{font-size:8px}.discovery-card{top:270px}}
@media(max-height:520px) and (min-width:601px){.masthead nav button{padding:8px 10px}.masthead .motion{min-height:32px}}
@media(prefers-reduced-motion:reduce){.interact-button:active{transform:none}}

/* Printed task slips replace the translucent, blurred cards throughout the journey. */
.objective-panel,.discovery-card,.printing-meter,.game-toast,.jump-hint{
  background-color:var(--archive-paper);background-image:var(--archive-lines);
  color:var(--archive-ink);border:0;border-radius:0;backdrop-filter:none;
  box-shadow:inset 0 3px #f8f0d4,inset 0 -3px #a1aa80;
  clip-path:var(--archive-cut);filter:none;text-shadow:none;
}
.objective-panel{position:relative;width:350px;max-width:100%;padding:17px 22px 17px 32px}
.objective-panel:before,.discovery-card:before{content:'';position:absolute;left:12px;top:17px;bottom:17px;width:4px;background:repeating-linear-gradient(var(--archive-muted) 0 4px,transparent 4px 15px);pointer-events:none}
.objective-panel>span{font:8px/1.8 var(--archive-pixel);color:var(--archive-muted);letter-spacing:.02em;margin:0 0 10px;padding-bottom:8px;border-bottom:1px dashed var(--archive-rule)}
.objective-panel strong{font:16px/1.5 var(--archive-pixel);color:var(--archive-ink);letter-spacing:-.02em;overflow-wrap:break-word}
.objective-panel small{font:12px/1.8 var(--archive-pixel);letter-spacing:0;max-width:none;color:var(--archive-ink);text-shadow:none;margin-top:8px}
.objective-panel .back-button{font:9px/1.7 var(--archive-pixel);color:var(--archive-ink);min-height:32px;padding:8px 0 0;margin-top:10px;border-top:1px dashed var(--archive-rule);width:100%}
.objective-panel .back-button:hover{color:#476031}
.discovery-card{padding:16px 18px 16px 28px}
.discovery-card strong{font:12px/1.6 var(--archive-pixel);color:var(--archive-ink)}
.discovery-card p,.discovery-card small{font:10px/1.8 var(--archive-pixel);letter-spacing:0;color:var(--archive-ink)}
.printing-meter{padding:18px 22px;width:280px;max-width:calc(100% - 32px)}
.printing-meter span{font:9px/1.7 var(--archive-pixel);color:var(--archive-ink)}
.printing-meter small,.jump-hint small{font:11px/1.8 var(--archive-pixel);color:var(--archive-ink)}
.printing-meter progress{height:8px;border:1px solid var(--archive-rule)}
.printing-meter progress::-webkit-progress-bar{background:#bdc59d}
.printing-meter progress::-webkit-progress-value{background:#405b35}
.printing-meter progress::-moz-progress-bar{background:#405b35}
.game-toast{font:11px/1.7 var(--archive-pixel);padding:14px 20px}
.jump-hint span{font:11px/1.6 var(--archive-pixel)}
.jump-hint kbd{background:var(--archive-dark);color:var(--archive-paper-light);border:2px solid var(--archive-rule);box-shadow:2px 2px #acb18b}
.interaction-prompt{background:var(--archive-dark);backdrop-filter:none;border:2px solid var(--archive-rule);box-shadow:3px 3px #09110c;font:10px/1.7 var(--archive-pixel)}
.room-arrival{background:var(--archive-dark);border-block:2px solid var(--archive-rule);text-shadow:none;clip-path:var(--archive-cut);padding:18px 28px}
.room-arrival strong{font:clamp(14px,2vw,24px)/1.6 var(--archive-pixel)}
.room-arrival small{font:9px/1.7 var(--archive-pixel)}
.masthead nav button,.masthead .motion,.game-controls>#helpButton{backdrop-filter:none;background:var(--archive-dark);box-shadow:2px 2px #09110c;border:1px solid #8b967080}
.masthead nav button:hover,.masthead .motion:hover{background:#31462c;color:var(--archive-paper-light)}
.note-dialog#mapDialog{border:0;clip-path:var(--archive-cut);background-color:var(--archive-paper);background-image:var(--archive-lines);padding:26px 34px;max-height:calc(100svh - 32px);overflow:auto;box-shadow:none}
#mapDialog .note-top{border-bottom:2px dashed var(--archive-rule);padding-bottom:14px}
#mapDialog .note-top button,.note-choices button{font-family:var(--archive-pixel);border:2px solid var(--archive-rule);border-radius:0;background:var(--archive-paper-light);color:var(--archive-ink);box-shadow:3px 3px #a5ad87}
#mapDialog .note-top button{min-width:40px;min-height:40px;font-size:20px}
.note-choices button{font-size:11px;line-height:1.7}
.note-choices button:hover{transform:none;background:#d2dbb4}
.app-dialog{border:3px solid var(--archive-rule);border-radius:0;box-shadow:6px 6px #09150c;max-height:calc(100svh - 24px)}
.app-toolbar{background:var(--archive-paper);border-bottom:2px dashed var(--archive-rule)}
.note-dialog::backdrop,.app-dialog::backdrop{backdrop-filter:none;background:#07110cdb}
.film-loading,.film-fallback,.film-ready{border-radius:0;background:var(--archive-dark);border:2px solid var(--archive-rule);box-shadow:4px 4px #09110c}
.film-fallback h1,.film-ready h1{font-family:var(--archive-pixel);font-size:20px;line-height:1.5;letter-spacing:0}
@media(max-width:600px){
  .quest-hud{left:14px;right:14px}
  .objective-panel{width:310px;padding:12px 18px 12px 27px;max-width:100%}
  .objective-panel:before{left:10px;top:14px;bottom:14px}
  .objective-panel>span{font-size:7px;margin-bottom:7px;padding-bottom:6px}
  .objective-panel strong{font-size:13px;line-height:1.5}
  .objective-panel small{font-size:11px;line-height:1.8;margin-top:6px}
  .objective-panel .back-button{font-size:8px;margin-top:7px;padding-top:6px}
  .discovery-card strong{font-size:11px}
  .game-toast{font-size:9px}
  .room-arrival{max-width:90%;padding:14px 18px}
  #mapDialog h2{font-size:16px}
}
@media(max-height:520px) and (min-width:601px){.objective-panel{width:310px;padding:12px 18px 12px 28px}.objective-panel strong{font-size:13px}.objective-panel small{font-size:11px}}
/* The silhouette, folded corner and torn hem belong to the paper itself. */
.objective-panel,.discovery-card,.printing-meter,.note-dialog,.app-dialog{
  clip-path:var(--archive-sheet-cut);border:0;box-shadow:inset 2px 2px #fff4d4;
}
.objective-panel:after,.discovery-card:after,.printing-meter:after,.note-dialog:after,.app-dialog:after{
  content:'';position:absolute;right:0;top:0;width:32px;height:32px;
  background:#b3b58e;box-shadow:-3px 3px #53634736;pointer-events:none;
  clip-path:polygon(0 0,0 8px,8px 8px,8px 16px,16px 16px,16px 24px,24px 24px,24px 32px,0 32px);
}
.objective-panel,.discovery-card{padding-right:32px;padding-bottom:22px}
.app-dialog{background:var(--archive-paper);padding:8px 12px 18px 20px;filter:drop-shadow(7px 9px 0 #07110c80)}
.app-toolbar{padding-right:28px;background:transparent;border-bottom:1px dashed var(--archive-rule)}
@media(max-width:600px){.app-dialog{padding:6px 7px 14px 10px}.app-toolbar{padding-right:20px}.objective-panel{padding-bottom:17px}}
/* A paper cover frames the darker archive desk inside each section. */
.app-dialog{background:#e6dfbd;padding:7px 10px 14px;box-shadow:0 16px 64px #02090590}
.app-dialog #platformFrame{background:#14251c;border:1px solid #65734e}
.app-toolbar{padding:10px 32px 13px 20px;margin-bottom:7px;border-bottom:0}
.app-toolbar h2{color:#34492f;letter-spacing:.08em}
.app-toolbar>a{border:0;background:transparent;color:#526342}
.app-toolbar button{background:#d1d6b1;border:1px solid #8f9b70;box-shadow:2px 2px #b1ba91}
@media(max-width:600px){.app-dialog{padding:5px 6px 10px}.app-toolbar{padding:7px 22px 8px 10px;gap:5px}.app-toolbar h2{font-size:8px}.app-toolbar>a{font-size:6px;padding:6px}.app-toolbar button{min-width:34px;min-height:34px}}
.objective-panel:after,.discovery-card:after,.printing-meter:after,.note-dialog:after,.app-dialog:after{
  width:24px;height:24px;background:#b0b589;
  clip-path:polygon(0 0,0 6px,6px 6px,6px 12px,12px 12px,12px 18px,18px 18px,18px 24px,0 24px);
}
