/* Existing timber museum, refined exhibit frames and a painted miniature stage. */
.record-dialog,.engineering-book,#reader { border:8px solid #49321e; border-radius:2px; outline:1px solid #c19a5c; box-shadow:0 24px 100px #031610c7,inset 0 0 0 1px #c9a56b,inset 0 0 0 5px #b5915133; }
.record-dialog { width:min(980px,94vw); padding:29px 31px; background:linear-gradient(#f4ead5ee,#eadcc2f5),url('assets/pearwood-v4.png'); overflow:auto; box-sizing:border-box; }
.record-dialog header { position:relative; padding-bottom:15px; margin-bottom:15px; border-bottom:1px solid #b5956366; }
.record-dialog header::after { content:'✦'; position:absolute; left:50%; bottom:-9px; padding:0 12px; background:#f0e4cd; color:#b18a50; }
.record-dialog .reader-label { letter-spacing:.2em; color:#906633; }
.record-dialog h2 { font-family:var(--display); color:#573e26; margin:8px 0; }
.record-dialog .dialog-close,.engineering-book .dialog-close,#reader .dialog-close { width:44px; height:44px; min-width:44px; background:#23483d; border:1px solid #c59f66; border-radius:50%; color:#f3d19b; font:26px/1 var(--serif); top:15px; right:15px; z-index:5; box-shadow:0 0 0 3px #d1ad6240; }
.record-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0; }
.record-tabs button { font:13px var(--serif); min-height:44px; padding:8px 17px; color:#7a5831; border:1px solid #b69b70; background:#e6d3af; border-radius:2px 9px; }
.record-tabs [aria-pressed=true] { color:#ffe7b9; background:#254c3c; border-color:#9c783e; box-shadow:inset 0 0 0 2px #dab68033; }
.record-buttons button:last-child { grid-column:auto; }
.record-buttons button { background:linear-gradient(140deg,#e7d5b4,#f0e6ce); box-shadow:inset 0 0 0 3px #c8a97725; border-radius:2px; }
.record-buttons button>span { color:#986f33; }
.record-screen { position:relative; padding:5px; border:4px double #bfa06b; background:#0e211b; box-shadow:0 10px 20px #392b2430; }
.record-screen video { min-height:210px; max-height:47vh; }
.record-loading { position:absolute; bottom:42px; left:0; right:0; text-align:center; color:#f0d3a1; pointer-events:none; font:13px var(--serif); }
.record-dialog[data-playback-state=ready] .record-loading { display:none; }
.record-unavailable { background:linear-gradient(#0b231aaa,#0b231ac9),url('assets/craft-stage-v24.png') center/cover; border:4px double #ac8b54; }
#record-alternative { display:inline-flex; min-height:44px; align-items:center; margin-top:20px; padding:10px 22px; border:1px solid #c7a772; color:#ffe0a4; background:#21483b; font:14px var(--serif); }
#record-alternative[hidden] { display:none; }
.record-actions a { background:#dfc79e; }
.record-photo-view { margin:0; padding:10px; border:4px double #b4976a; background:#233b30; }
.record-zoom { display:block; position:relative; width:100%; padding:0; border:0; background:#102b24; cursor:zoom-in; }
.record-zoom img { display:block; width:100%; height:320px; max-height:45vh; object-fit:contain; }
.record-zoom>span { position:absolute; right:9px; bottom:9px; background:#183c32dd; color:#eccc8d; padding:7px 12px; font:12px var(--serif); }
.record-dialog[data-zoomed=true] .record-zoom { cursor:zoom-out; }
.record-dialog[data-zoomed=true] .record-zoom img { height:auto; max-height:none; }
.record-photo-view figcaption { display:flex; align-items:center; justify-content:space-between; gap:15px; padding:14px 9px 5px; color:#e5c78f; }
.record-photo-view h3 { margin:0; font:21px var(--display); }
.record-photo-view p { margin:7px 0; font:12px var(--serif); color:#c7b797; }
.record-photo-view figcaption a { white-space:nowrap; padding:10px 12px; border:1px solid #c6a56870; min-height:44px; font:12px var(--serif); }
.record-photo-controls { display:flex; align-items:center; justify-content:center; gap:23px; padding:15px 0; color:#816237; font:13px var(--serif); }
.record-photo-controls button { min-height:44px; width:44px; border:1px solid #a4895c; border-radius:50%; background:#244738; color:#eccc91; font:20px var(--serif); }
.record-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.record-gallery button { border:1px solid #bea174; padding:5px; color:#6e512d; background:#e4d3b6; text-align:left; }
.record-gallery button[aria-pressed=true] { border-color:#2b5844; box-shadow:inset 0 0 0 2px #2b5844; }
.record-gallery button img { display:block; width:100%; height:80px; object-fit:cover; }
.record-gallery button span { display:block; padding:9px 5px; font:12px var(--serif); }
.record-gallery [hidden] { display:none; }
.record-album { margin-top:18px; }
.craft-room { height:auto; min-height:100%; grid-template-columns:1.08fr 1fr; align-items:start; gap:22px; }
.craft-board { position:sticky; top:0; }
.craft-board canvas { height:auto; max-height:none; aspect-ratio:900/650; border:5px solid #4a3421; outline:1px solid #b39359; background:#20372c; box-shadow:0 12px 36px #0a1b1499; }
.craft-board-tools { margin:14px 0 9px; }
.craft-board-tools button { background:#1d3c31e8; border:1px solid #ba9760; box-shadow:inset 0 0 0 3px #d4b67420; min-height:44px; border-radius:2px; }
.craft-guide { position:relative; padding:29px 26px; border:6px solid #44301e; outline:1px solid #b99a62; box-shadow:inset 0 0 0 1px #c5a475,0 10px 30px #15261a80; border-radius:1px; background:linear-gradient(#eddec0ed,#f2e7d1ed),url('assets/pearwood-v4.png'); overflow:visible; }
.craft-guide::before { content:''; display:block; height:27px; background:url('assets/era-ornament-v21.png') center/100% 100% no-repeat; opacity:.75; margin:-4px 0 13px; pointer-events:none; }
.craft-guide h2 { font-size:28px; line-height:1.6; }
.craft-guide>p { font-size:14px; line-height:1.95; }
.craft-knowledge { border-block:1px solid #b9986355; }
.craft-knowledge p { font-size:13px; }
.craft-knowledge button { background:#e8d4b0; min-height:44px; font-size:12px; border-radius:2px; }
.craft-swatches button { width:44px; height:44px; background:radial-gradient(circle at 35% 25%,#fff6,var(--swatch) 70%); border:5px double #d6bc87; box-shadow:0 4px 8px #7b55252b; }
.craft-slots button { background:#e2caa2; border:3px double #a5895f; padding:12px 4px; }
.craft-chapters { margin-top:25px; padding:12px 10px; background:linear-gradient(#493220e8,#302819ed); border:4px double #b691595c; }
.craft-chapters button { padding:5px 10px; border-radius:2px; }
.craft-chapters [aria-current=step] { background:#b6924b20; }
#blessing-main .controls { border:5px solid #493521; outline:1px solid #be9f68; border-radius:1px; box-shadow:inset 0 0 0 1px #c5a572,0 10px 30px #101b1466; background:linear-gradient(#f2e6cfee,#eddec6ee),url('assets/pearwood-v4.png'); }
#blessing-main .blessing-upload { padding:12px; border:1px dashed #b89c6b; background:#d8c19b33; }
#blessing-main input[type=file] { font:12px var(--serif); background:transparent; border:0; padding:3px 0; }
#blessing-main input::file-selector-button { min-height:44px; border:1px solid #b39660; background:#274c3d; color:#f0d399; font:12px var(--serif); padding:6px 12px; margin-right:8px; }
.blessing-upload small { display:block; color:#8d7046; font:11px/1.7 var(--serif); margin-top:5px; }
@media(max-width:1000px) {
 .craft-room { grid-template-columns:1fr; }
 .craft-board { position:relative; }
 .craft-board canvas { max-width:620px; margin:auto; }
 .craft-guide { padding:25px; }
 .craft-guide h2 { font-size:26px; }
}
@media(max-width:600px) {
 .record-dialog { border-width:5px; padding:19px 13px; max-height:90dvh; }
 .record-tabs { gap:5px; }
 .record-tabs button { flex:1 0 40%; padding:6px; font-size:12px; }
 .record-screen video { min-height:150px; max-height:39vh; }
 .record-dialog .dialog-close { width:44px; height:44px; min-width:44px; top:10px; right:10px; }
 .record-dialog h2 { font-size:26px; padding-right:20px; }
 .record-photo-view { padding:5px; }
 .record-photo-view figcaption { flex-direction:column; align-items:flex-start; }
 .record-photo-view h3 { font-size:19px; }
 .record-gallery { grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; }
 .record-gallery button img { height:55px; }
 .record-gallery button span { font-size:10px; padding:6px 2px; }
 .record-photo-controls { gap:18px; }
 .craft-guide { padding:22px 17px; border-width:4px; }
 .craft-chapters { gap:5px; }
 .craft-chapters button { padding:5px; font-size:12px; }
 #blessing-main .controls { border-width:4px; padding:20px 17px; }
}
@media(min-width:1001px) {
 .craft-room { height:calc(100% - 88px); min-height:0; align-items:stretch; }
 .craft-board { height:100%; position:relative; display:flex; flex-direction:column; }
 .craft-board canvas { flex:1; min-height:0; height:calc(100% - 85px); aspect-ratio:auto; object-fit:fill; }
 .craft-board-tools { flex:none; }
 .craft-guide { height:100%; overflow:auto; }
 .craft-guide::before { height:18px; margin-bottom:10px; }
 .craft-guide h2 { font-size:26px; }
 .craft-guide>p { font-size:13px; }
}
.craft-guide::before { position:absolute; right:18px; top:13px; width:62px; height:45px; margin:0; background:url('assets/cloud-corner-v18.svg') center/contain no-repeat; opacity:.35; }
.record-dialog header::before { content:''; position:absolute; right:55px; top:0; width:72px; height:48px; background:url('assets/cloud-corner-v18.svg') center/contain no-repeat; opacity:.4; pointer-events:none; }
.engineering-book { background-image:linear-gradient(#17382f0d,#17382f0d),url('assets/pearwood-v4.png'); background-size:auto,400px; }
#reader.compact-reader,#reader.archive-reader { border:8px solid #49321e; border-radius:2px; outline:1px solid #c19a5c; }
.record-dialog .dialog-close { position:sticky; float:right; top:0; right:auto; margin:-8px -8px 0 0; }
@media(min-width:601px) { .record-screen video { max-height:42vh; } .record-dialog header { margin-bottom:10px; padding-bottom:10px; } .record-tabs { margin:13px 0; } }
