/* Photographic materials replace the earlier repeating synthetic textures.
   Asset authors and licenses are recorded in SOURCES.md. */
@font-face{font-family:'Special Elite';src:url('assets/fonts/SpecialElite-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
:root{--typewriter:'Special Elite','Courier New',monospace;--paper:#d8d0bb;--cream:#c9c5b5;--ink:#30372c;--sheet:linear-gradient(#bda67448,#bda67448),url('assets/materials/folded-paper.jpg') center/cover no-repeat;--card:linear-gradient(#92704455,#92704455),url('assets/materials/folded-paper.jpg') center/cover no-repeat;--surface-shadow:1px 3px 1px #100e0999,0 0 0 1px #291f1766;color-scheme:light}
body{background:linear-gradient(#302e25df,#302e25df),url('assets/materials/folded-paper.jpg') center top/cover no-repeat;background-attachment:scroll;color:var(--ink)}
body:before{display:none}
.wrap{max-width:1080px}
.masthead{min-height:62px;color:#bca67d;border-bottom:1px solid #b49a6044}
.brand{font:14px var(--typewriter);letter-spacing:1px;transform:none}
.brand-sub{font:8px var(--mono);letter-spacing:1px;margin-top:5px}
.header-label,.heading-note{display:none}
.collection-link{font-size:11px}
.collection-link span{background:var(--card);color:#24271f;font:13px var(--typewriter);box-shadow:var(--surface-shadow);transform:rotate(-2deg)}
.page-heading{padding:12px 0 31px}
.page-heading>div{padding:24px 33px 19px 31px;background:var(--card);box-shadow:var(--surface-shadow);transform:none;position:relative}
.page-heading>div:after{display:none;content:'';position:absolute;inset:0;background:linear-gradient(90deg,#ebe3c110,transparent);pointer-events:none}
.page-heading .eyebrow{font:10px var(--mono);letter-spacing:1px;color:#323328;margin-bottom:11px}
.visitor-page h1,.visitor-page .record-details h2,.visitor-page .file-stamp,.visitor-page .punch-title,.visitor-page .shelf-heading h2{filter:none}
h1,.page-heading h1{font:36px/1.05 var(--typewriter);letter-spacing:-1.8px;color:#1c251e;text-shadow:none}
.title-period{color:inherit}
.archive-layout{column-gap:30px;row-gap:20px}
.paper{background:var(--sheet);box-shadow:var(--surface-shadow)}
.paper:after{display:none}
.machine{border:4px solid #5c5036;border-top-color:#8c7850;border-left-color:#786342;padding:23px 27px 21px;background:linear-gradient(#333c2bcc,#333c2bcc),url('assets/materials/painted-metal.jpg') center/cover;box-shadow:inset 0 0 0 1px #14170f,3px 5px 0 #171a1299;transform:none;clip-path:none}
.machine:after{display:none}
.machine-header{margin:0 7px 24px;padding:7px 0 13px;border-bottom:1px solid #a2a48b38;color:#e0dfc9;font:10px var(--typewriter);text-shadow:none;letter-spacing:.8px}
.machine-header>span:first-child{color:#d0cbbc}
.machine-status{font:8px var(--mono);letter-spacing:.3px}
.screw{background:#9c8050;border-color:#423b27;outline:none;box-shadow:1px 1px 1px #000b;width:12px;height:12px}
.screw:after{top:3px}
.record-deck{grid-template-columns:165px minmax(0,1fr);gap:21px;padding:0 0 24px;align-items:center}
.portrait{padding:6px 6px 26px;background:var(--sheet);box-shadow:var(--surface-shadow);transform:rotate(-2deg);clip-path:none;margin:0 2px 0 -4px}
.portrait:before{background:#b6a276bb;box-shadow:none;transform:rotate(1deg);height:24px;left:20%;width:64%}
.portrait-window{aspect-ratio:.75;border:0}
.portrait img{filter:grayscale(1) sepia(.13) contrast(1.3) brightness(.91)}
.scanlines{background:none}
.playing .scanlines{background:repeating-linear-gradient(0deg,transparent 0 2px,#0005 2px 3px);opacity:.2;mix-blend-mode:multiply}
.portrait figcaption{font:13px/1.15 var(--typewriter);letter-spacing:0;color:#302e24;transform:none;padding-top:11px}
.photo-ref{font:7px var(--mono);color:#686450}
.wire-reels{display:none}
.record-details{padding:27px 24px 28px 44px;background:var(--sheet);box-shadow:var(--surface-shadow);clip-path:none;transform:none;color:#24271f;min-height:235px}
.record-details:before{display:none}
.file-label{font:10px var(--mono);color:#4f5142;letter-spacing:.2px;padding-bottom:12px;margin-bottom:20px;border-bottom:1px solid #797c6966;gap:8px}
.file-stamp{font:13px var(--typewriter);color:#853c2f;letter-spacing:.1px;border:1px solid #853c2f77;transform:rotate(-4deg);padding:5px 4px 2px}
.record-details h2{font:30px/1.05 var(--typewriter);letter-spacing:-1.3px;color:#222820;text-shadow:none}
.diary-author{font:14px/1.3 var(--typewriter);color:#424535;margin:19px 0;text-decoration:none}
.metadata{border-top:0;margin:0;padding:6px 0 0;gap:13px}
.metadata>div{font:11px/1.4 var(--mono);grid-template-columns:61px minmax(0,1fr);gap:9px}
.metadata dt{font-size:8px;color:#646753;font-weight:normal;padding-top:2px}
.metadata dd{color:#303629}
.transport{background:#1c231977;border:0;border-top:1px solid #a7ab8d4d;box-shadow:none;padding:20px 2px 12px;margin:0;gap:13px;align-items:center}
.signal-display{height:85px;width:112px;flex:0 0 112px;margin-right:2px;background:var(--sheet);border:4px solid #555c4b;border-top-color:#141c12;border-left-color:#151d13;box-shadow:1px 1px 1px #b5b09144,inset 1px 2px 3px #1118;padding:8px 7px 4px;overflow:hidden}
.signal-display:after{display:none}
.signal-label{font:7px var(--mono);color:#454938;letter-spacing:0}
.signal-label span:last-child{display:none}
.waveform{display:none}
.meter-scale{display:flex;justify-content:space-between;padding-top:12px;font:6px var(--mono);color:#252e22;position:relative;border-bottom:1px solid #353b2a;padding-bottom:9px;background:repeating-linear-gradient(90deg,transparent 0 8px,#434b3633 8px 9px) left bottom/100% 7px no-repeat}
.meter-scale span:last-child{color:#994630}
.meter-needle{display:block;position:absolute;left:49%;bottom:-12px;width:1px;height:55px;background:#7b3223;transform-origin:center bottom;transform:rotate(-39deg);box-shadow:1px 0 #53201433}
.playing .meter-needle{animation:meter 1.1s linear infinite alternate}
@keyframes meter{0%{transform:rotate(-31deg)}23%{transform:rotate(7deg)}35%{transform:rotate(-14deg)}64%{transform:rotate(23deg)}85%{transform:rotate(-4deg)}100%{transform:rotate(15deg)}}
.play-button{font:12px var(--typewriter);width:62px;height:66px;background:var(--sheet);border:1px solid #bbb393;border-right:3px solid #655f48;border-bottom:5px solid #655f48;box-shadow:2px 3px 2px #0009;letter-spacing:.2px;gap:7px;color:#2d3328}
.play-button:hover{background-color:#d0c6a8;filter:brightness(1.07)}
.play-button:active{transform:translateY(3px);box-shadow:0 0 2px #0009;border-bottom-width:2px}
#play-icon{font-size:17px}
.rewind-button{background:var(--sheet);border-color:#a9a38c;border-bottom-color:#6b6b53;box-shadow:1px 2px 1px #38382b30;color:#30372c;width:34px;height:48px}
.time-labels{font-size:12px;letter-spacing:0;color:#cacdb6}
.timeline-caption{font-size:7px;color:#e0dfc9;letter-spacing:0}
.volume-control{width:56px;border-left:1px solid #88967544;padding-left:9px}
.volume-control label{font-size:7px;letter-spacing:.5px;color:#b9c1a6}
input[type=range]::-webkit-slider-thumb{background:var(--sheet);border:1px solid #9da28c;border-bottom:3px solid #4b543d;box-shadow:1px 1px #0009;width:12px;height:21px}
.placeholder-note{border:0;font:10px var(--mono);margin:13px 4px 0;padding:0;color:#e0dfc9;text-transform:none}
.machine-bottom{color:#e0dfc9;font:8px var(--mono);letter-spacing:.3px;margin:15px 4px 0}
.punchcard{background:var(--card);margin:18px 1px 0;padding:25px 22px 24px;border:0;transform:rotate(.8deg);box-shadow:var(--surface-shadow);clip-path:polygon(0 0,86% 0,100% 10%,100% 99%,80% 99.5%,63% 99%,45% 100%,20% 99.4%,0 100%)}
.punchcard:before{border:0}
.punch-heading{font:8px/1.3 var(--mono);letter-spacing:.2px;color:#44402f;border-bottom:1px solid #675d46;padding-bottom:13px;gap:8px}
.card-code{font-size:7px}
.punch-title{font:26px/1 var(--typewriter);letter-spacing:-1px;text-shadow:none;color:#302d21;padding:20px 0 15px}
.punch-title>span{font:12px var(--typewriter);color:#6c3429;border:1px solid #6c342988;top:24px;right:-8px;transform:rotate(-4deg);padding:4px 3px 1px}
.punch-grid{border-top:1px solid #5d513955;row-gap:15px;column-gap:8px;padding-top:15px}
.punch{font:12px var(--typewriter);color:#5a513c;gap:7px}
.punch-hole{border-color:#665b4070;background:transparent;box-shadow:none;width:15px;height:29px}
.punched .punch-hole{background:#161e14;border-color:#161e14;box-shadow:inset 2px 2px 2px #080d0755}
.punch.selected .punch-hole{background:#5d3229;box-shadow:inset 2px 2px 2px #220e0655}
.punch-foot{font:8px var(--mono);color:#564b33;border-top-color:#6b5d43;padding-top:12px}
.transcript{border-left:5px solid #5b452b;background:var(--sheet);margin:4px 15px 7px 7px;transform:none;box-shadow:var(--surface-shadow);clip-path:none}
.transcript:before{display:none}
.transcript summary{padding:20px 27px 18px 41px}
.transcript-title{font:21px var(--typewriter);letter-spacing:-.8px;text-transform:none;color:#2b3024}
.transcript summary .eyebrow{font-size:8px;letter-spacing:.7px;color:#646a56}
.transcript-toggle{color:#6c412d;font-size:22px}
.transcript-content{background:none;padding-left:41px;color:#2c3026;font:14px/1.7 var(--mono)}
.transcript-source{border-top:1px solid #6a735244}
.record-index{border-left:6px solid #58432a;border-top:3px double #785f39;grid-column:1/-1;grid-row:4;position:relative;background:var(--sheet);padding:27px 24px 18px 47px;margin:16px 10px 0 8px;transform:none;box-shadow:var(--surface-shadow)}
.record-index .shelf-heading,.record-index .filters,.record-index .record-list,.record-index .save-note{background:none;transform:none;box-shadow:none;margin:0;width:100%;border:0}
.record-index .shelf-heading{padding:5px 7px 15px;align-items:baseline}
.shelf-heading:before{display:none}
.shelf-heading h2{font:25px var(--typewriter);letter-spacing:-.5px;color:#353c2d}
.shelf-heading>span{font:11px var(--mono);letter-spacing:2px;color:#535f46}
.record-index .filters{padding:10px 8px 0;border-top:1px solid #8b927a44}
.filters button{font:12px var(--typewriter);text-transform:none;color:#555d48;padding-bottom:10px;letter-spacing:0;border-bottom-width:2px}
.filters button.active{color:#333c28;border-color:#7a4933}
.filters button span{font:10px var(--mono);border-color:#88896f;padding:1px 4px}
.record-index .record-list{grid-template-columns:repeat(2,minmax(0,1fr));padding:3px 0 6px;column-gap:24px}
.record-row{min-height:61px;border-right:0!important;border-bottom:1px solid #7b846f33;padding:13px 8px;gap:13px;outline:none!important;box-shadow:none;color:#2c3224}
.record-row-title{font:14px/1.15 var(--typewriter);letter-spacing:-.3px}
.record-row-detail{font:8px var(--mono);color:#48452d;letter-spacing:.2px}
.record-serial{font:18px var(--typewriter);border:0;padding:0 1px;color:#4d4c32;letter-spacing:-.7px}
.record-row.locked .record-row-title{text-decoration:none;color:#50452f}
.record-row.active{background:#83846618;border-bottom:1px solid #8a5038}
.record-row.active .record-serial{color:#8b4a35}
.record-marker{font:19px var(--typewriter);color:#814e39}
.record-row.unlocked:hover{background:#9b9f8122}
.record-index .save-note{font:11px/1.5 var(--mono);padding:17px 8px 3px;color:#443f2b;border-top:1px solid #7b846f44}
.save-note .status-dot{display:none}
.notice{font:12px var(--typewriter);font-weight:normal;padding:11px 15px 9px;background:var(--card);border:0;box-shadow:var(--surface-shadow);color:#323326;transform:none;margin-bottom:20px}
.empty-insert{background:var(--sheet);clip-path:none;padding:32px 27px 30px 41px;transform:rotate(1deg)}
.empty-insert h2{font:31px/1.15 var(--typewriter);letter-spacing:-1px;text-transform:none;margin:20px 0}
.empty-insert .eyebrow{font:9px var(--mono)}
.empty-insert p{font:12px var(--mono)}
.empty-stamp{font:12px var(--typewriter);letter-spacing:.1px;border:1px solid #8c514277;padding:7px 6px 4px;color:#8c5142;transform:rotate(-3deg)}
.sea-photo img{filter:grayscale(1) sepia(.15) contrast(1.15);border-color:#cbc3ab}
.footer{font:10px/1.5 var(--mono);letter-spacing:0;color:#b8a37a;transform:none;padding-top:25px;margin-top:15px}
.footer>span:first-child{font-size:8px}
.footer a{color:#c4ad7e}
.admin-heading>div{padding:20px 27px 18px}
.admin-heading h1{font:34px var(--typewriter);letter-spacing:-1px}
.admin-form{border-left:5px solid #5b452b;background:var(--sheet);border:0;padding:39px 35px 36px 53px;transform:none;box-shadow:var(--surface-shadow)}
.admin-form h2{font:27px var(--typewriter);text-transform:none;letter-spacing:-.8px;color:#303829;margin:0 0 24px}
.admin-form .eyebrow{font:9px var(--mono);color:#687153}
.form-field{margin-bottom:23px}
.form-field>span{font:11px var(--typewriter);letter-spacing:0;color:#4b583e;margin-bottom:8px}
.form-field input,.form-field select{background:#c6c5b21c;border:1px solid #80897188;box-shadow:none;min-height:45px;color:#303928;padding:11px 10px;font:13px var(--mono);border-radius:0}
.form-field input:focus,.form-field select:focus{background:#e8e5d744}
.desk-button{background:var(--sheet);color:#30372c;font:13px var(--typewriter);text-transform:none;border:1px solid #aaa28a;border-right:2px solid #777a61;border-bottom:3px solid #777a61;box-shadow:var(--surface-shadow);min-height:45px;padding:11px 16px 8px;gap:9px}
.desk-button.secondary{background:var(--sheet);border-color:#9ba387;border-bottom-color:#525f43;border-right-color:#788263;color:#34432a}
.desk-button:hover{filter:brightness(1.1)}
.form-message{font:12px var(--mono);font-weight:normal;color:#485c3a;margin-top:19px}
.form-message.error{color:#913c30}
.address-note{font:11px var(--mono);background:none;color:#825839;border:0;padding:0;margin-top:13px}
.link-result{border-top:1px solid #8f998055;padding-top:25px}
.qr-sheet{background:var(--card);padding:28px 30px 33px;transform:rotate(.8deg);border:0;clip-path:none;box-shadow:var(--surface-shadow);margin-top:8px}
.qr-sheet:before{display:none}
.qr-sheet .eyebrow{font:9px var(--mono);color:#4b4938}
.qr-sheet h2{font:25px/1.1 var(--typewriter);text-transform:none;letter-spacing:-.8px;color:#292f22}
.qr-image{box-shadow:none}
.qr-source{font:10px var(--mono);color:#5a5640}
.qr-instruction{font:13px var(--typewriter);color:#333c29;font-weight:normal}
.qr-footer{font:8px var(--mono);border-top:1px solid #7c755455;color:#575039}
.preview-tools .desk-button{font-size:12px}
.admin-gate{max-width:420px;margin:26px auto 110px;padding:42px 42px 47px 56px;transform:none}
.admin-gate h2{font:29px var(--typewriter);font-weight:normal;letter-spacing:-1px;margin:10px 0 30px;color:#303b26}
.admin-gate .eyebrow{font:9px var(--mono);color:#697354}
.admin-gate .form-field>span{font-size:13px}
#admin-code{font-size:17px;letter-spacing:1px}
#lock-admin{margin-right:12px}
@media(max-width:1100px){.record-deck{grid-template-columns:155px minmax(0,1fr);gap:18px}.machine{padding:22px 21px 20px}.record-details{padding:25px 20px 25px 37px}.record-details h2{font-size:27px}.diary-author{font-size:13px}.signal-display{width:90px;flex-basis:90px;height:77px;padding-left:5px;padding-right:5px}.transport{gap:11px}.play-button{width:55px;height:62px}.volume-control{width:47px;padding-left:7px}.timeline-caption{font-size:6px}.punchcard{padding:22px 18px}.punch-title{font-size:23px}.punch-title>span{font-size:10px;right:-5px}.punch-grid{column-gap:6px}.punch-hole{width:13px}.admin-form{padding:33px 27px 32px 42px}.admin-layout{gap:30px}.qr-sheet{padding-left:24px;padding-right:24px}.record-details .file-stamp{font-size:10px}}
@media(max-width:900px) and (min-width:801px){.record-deck{grid-template-columns:130px minmax(0,1fr);gap:15px}.machine{padding:20px 18px}.record-details{padding:24px 15px 24px 33px}.record-details h2{font-size:24px}.portrait figcaption{font-size:10px}.file-label{font-size:8px}.metadata>div{display:block;font-size:10px}.metadata dt{font-size:7px;margin-bottom:3px}.signal-display{width:72px;flex-basis:72px}.meter-scale{font-size:5px}.transport{gap:9px}.volume-control{width:39px}.volume-control label{font-size:5px}.time-labels{font-size:10px}.rewind-button{width:28px}.punch-title{font-size:21px}.punch-title>span{font-size:9px;right:-7px}.punchcard{padding-left:17px;padding-right:17px}}
@media(max-width:800px){.page-heading>div{padding:23px 30px 18px}.page-heading h1{font-size:34px}.page-heading{padding-bottom:29px}.archive-layout{gap:22px}.record-deck{grid-template-columns:160px minmax(0,1fr);gap:22px}.machine{padding:24px 24px 21px;transform:none}.record-details{padding:27px 22px 28px 39px}.record-details h2{font-size:29px}.portrait figcaption{font-size:12px}.metadata>div{grid-template-columns:58px 1fr;font-size:10px;gap:7px}.signal-display{width:96px;flex-basis:96px;height:77px}.transport{gap:12px}.time-labels{font-size:12px}.volume-control{width:53px}.play-button{width:59px}.punchcard{margin:5px 13px 0;width:calc(100% - 26px);padding:23px 24px;transform:rotate(-.7deg)}.punch-title{font-size:25px;padding-top:18px;padding-bottom:15px}.punch-title>span{font-size:13px;top:17px;right:0}.punch-grid{column-gap:7px}.punch-hole{width:14px;height:27px}.punch-heading{font-size:8px}.card-code{font-size:8px}.punch-foot{font-size:8px}.transcript{width:calc(100% - 12px);margin:3px 6px 4px;transform:none}.record-index{order:4;width:100%;margin:17px 0 0;padding:24px 22px 22px 34px;transform:none}.record-row{min-height:65px}.record-row-title{font-size:13px}.record-index .record-list{column-gap:19px}.record-index .save-note{font-size:10px;padding-top:16px}.footer{font-size:9px}.admin-layout{gap:29px}.admin-form{padding:33px 29px 35px 44px}.qr-sheet{width:350px;max-width:calc(100% - 18px)}.admin-heading h1{font-size:33px}.admin-gate{margin-top:17px}.notice{margin-left:1px;margin-right:1px}}
@media(max-width:480px){.page-heading>div{padding:20px 19px 17px 22px;width:100%;transform:none}.page-heading h1{font-size:29px;letter-spacing:-1.9px}.page-heading .eyebrow{font-size:8px;letter-spacing:.5px}.page-heading{padding:13px 0 23px}.masthead{min-height:51px}.brand{font-size:12px}.brand-sub{font-size:6px}.collection-link span{font-size:11px}.machine{padding:18px 13px 17px;border-width:1px}.machine-header{font-size:7px;margin:0 8px 20px;padding:6px 0 11px;letter-spacing:.2px}.machine-status{font-size:6px}.record-deck{grid-template-columns:100px minmax(0,1fr);gap:14px;padding-bottom:19px;align-items:start}.photo-assembly{padding-top:14px}.portrait{padding:4px 4px 24px;margin-left:0;transform:rotate(-1.6deg)}.portrait-window{aspect-ratio:.63}.portrait figcaption{font:10px/1.2 var(--typewriter);padding-top:10px}.photo-ref{font-size:5px;bottom:6px}.portrait:before{height:20px;top:-8px}.record-details{padding:21px 13px 23px 24px;min-height:0;transform:none}.file-label{font-size:7px;letter-spacing:0;line-height:1.4;margin-bottom:16px;padding-bottom:9px}.record-details h2{font-size:23px;letter-spacing:-1.2px;line-height:1.07}.diary-author{font:11px/1.3 var(--typewriter);margin:15px 0 13px}.metadata{gap:9px;padding-top:3px}.metadata>div{display:block;font-size:9px;line-height:1.4}.metadata dt{font-size:6px;padding-top:0;margin-bottom:3px}.metadata dd{font-size:9px;line-height:1.3}.signal-display{display:none}.transport{gap:12px;padding:17px 3px 10px}.play-button{width:60px;height:65px;font-size:11px}.rewind-button{width:31px;height:47px}.time-labels{font-size:11px}.timeline-caption{font-size:6px}.volume-control{width:45px;padding-left:7px}.volume-control label{font-size:6px;letter-spacing:0}.placeholder-note{font-size:9px;margin-top:9px}.machine-bottom{font-size:6px;margin-top:16px}.punchcard{width:calc(100% - 14px);margin:9px 7px 0;padding:21px}.punch-title{font-size:22px;letter-spacing:-1.2px;padding-top:17px}.punch-title>span{font-size:11px;top:18px;right:0}.punch-grid{column-gap:4px}.punch-hole{width:12px;height:26px}.punch{font-size:10px}.punch-heading{font-size:7px}.card-code{font-size:7px}.punch-foot{font-size:7px}.transcript summary{padding:19px 22px 17px 30px}.transcript-title{font-size:21px}.transcript-content{padding-left:30px;padding-right:22px;font-size:12px;line-height:1.8}.transcript summary .eyebrow{font-size:7px}.record-index{padding:25px 16px 20px 26px;margin-top:10px}.record-index .shelf-heading{padding:4px 5px 11px}.shelf-heading h2{font-size:22px}.shelf-heading>span{font-size:9px}.record-index .filters{padding:13px 5px 0;gap:23px}.filters button{font-size:12px}.record-index .record-list{grid-template-columns:1fr;column-gap:0}.record-row{min-height:58px;padding:13px 6px;gap:13px}.record-row-title{font-size:15px;letter-spacing:-.4px}.record-row-detail{font-size:8px}.record-serial{font-size:18px}.record-marker{font-size:21px}.record-index .save-note{font-size:10px;line-height:1.6;padding:18px 6px 2px}.notice{font-size:11px;margin-bottom:17px;padding:11px 12px 9px}.empty-insert{padding:26px 17px 25px 27px}.empty-insert h2{font-size:26px;line-height:1.1;letter-spacing:-1px}.empty-insert p{font-size:10px}.empty-insert .eyebrow{font-size:7px}.empty-stamp{font-size:9px;border-width:1px;padding:6px 4px 3px}.footer{font-size:9px;gap:10px;flex-wrap:wrap;padding-top:24px}.footer>span:first-child{font-size:7px}.admin-heading h1{font-size:29px;letter-spacing:-1.5px}.admin-form{padding:31px 24px 31px 36px}.admin-form h2{font-size:26px}.form-field>span{font-size:11px}.form-field input,.form-field select{font-size:12px}.desk-button{font-size:12px;min-height:45px;padding:12px 12px 8px}.admin-actions{gap:11px}.qr-sheet{padding:29px 25px 31px}.qr-sheet h2{font-size:25px}.qr-source{font-size:9px}.preview-tools .desk-button{font-size:12px}.admin-gate{padding:38px 30px 42px 40px;max-width:calc(100% - 10px);margin-top:23px;margin-bottom:70px}.admin-gate h2{font-size:29px}.admin-heading #lock-admin{margin:8px 0 0}.admin-heading{flex-wrap:wrap;gap:12px}}
@media(max-width:350px){.page-heading h1{font-size:25px;letter-spacing:-1.5px}.record-deck{grid-template-columns:87px minmax(0,1fr);gap:12px}.record-details{padding-left:22px;padding-right:11px}.record-details h2{font-size:21px}.diary-author{font-size:10px}.portrait figcaption{font-size:9px}.transport{gap:10px}.play-button{width:54px}.volume-control{width:39px}.punchcard{padding-left:18px;padding-right:18px}.punch-title{font-size:19px}.punch-title>span{font-size:10px;right:-4px}.punch-hole{width:10px}.record-index{padding-left:24px;padding-right:15px}.admin-form{padding-left:30px;padding-right:20px}.admin-gate{padding-left:35px;padding-right:26px}}
@media(prefers-reduced-motion:reduce){.playing .meter-needle{animation:none;transform:rotate(-5deg)}}

/* Book typography and a genuine 1870 engraving anchor the maritime reference. */
.metadata dt,.photo-ref,.file-label,.record-row-detail,.transcript summary .eyebrow{color:#453e2c}
.form-field>span,.admin-form .eyebrow,.admin-gate .eyebrow{color:#443b28}
.page-heading{border-bottom:3px double #aa8d5755;margin-bottom:23px;padding:25px 0 25px;gap:30px}
.page-heading>div{background:none;padding:0;box-shadow:none;flex:1}
.page-heading h1{font:700 44px/.98 'Baskerville','Palatino Linotype','Book Antiqua',Georgia,serif;letter-spacing:1px;color:#bca06b;text-shadow:1px 2px #171a11;text-transform:uppercase}
.page-heading .eyebrow{color:#c3ad81;font:10px var(--mono);letter-spacing:2px;margin-bottom:17px}
.heading-engraving{width:118px;height:153px;object-fit:cover;border:3px double #a38452;filter:sepia(.9) brightness(.64) contrast(1.25);box-shadow:2px 3px #15190f88;transform:rotate(1deg);margin-right:15px}
.record-details{padding:24px 25px;transform:rotate(.5deg);border:1px solid #8e774e}
.record-details h2{font-size:27px;line-height:1.12}
.portrait{box-shadow:2px 4px 1px #090e0988;filter:sepia(.2)}
.shelf-heading h2,.punch-title{font-family:'Baskerville','Palatino Linotype',Georgia,serif;font-weight:bold;letter-spacing:.4px}
.punch-title{font-size:25px}
.record-index{background:linear-gradient(#a691672d,#a691672d),url('assets/materials/folded-paper.jpg') center/cover no-repeat}
.record-index .record-list{column-gap:25px}
.record-row{border-bottom-color:#5b4b3044}
.record-row.active{background:#56361c1f}
.machine-header{margin-bottom:20px}
.empty-player{min-height:300px;padding:10px 7px 22px}
.sea-photo img{height:245px}
.empty-insert{padding:25px 23px}
.empty-insert h2{font-size:27px}
.admin-heading h1{font-size:35px}
.admin-heading #lock-admin{flex:none}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid #bc7540;outline-offset:3px}
.record-row:focus-visible{outline:2px solid #753a20!important;outline-offset:-2px}
@media(max-width:800px){.page-heading h1{font-size:38px}.heading-engraving{width:100px;height:135px;margin-right:4px}.record-details{padding:25px}.punch-title{font-size:25px}.machine{border-width:3px}.record-deck{grid-template-columns:145px minmax(0,1fr)}}
@media(max-width:480px){.page-heading{padding:23px 0 20px;margin-bottom:17px;gap:13px;align-items:center}.page-heading>div{padding:0;width:auto;min-width:0}.page-heading h1{font-size:27px;line-height:1.05;letter-spacing:.3px}.page-heading .eyebrow{font-size:7px;letter-spacing:1px;margin-bottom:11px}.heading-engraving{width:67px;height:107px;margin:0;flex:none;object-position:40% center}.record-deck{grid-template-columns:95px minmax(0,1fr);gap:14px}.record-details{padding:18px 16px;min-height:0}.record-details h2{font-size:22px}.record-index{padding-left:19px;padding-right:14px}.punch-title{font-size:22px}.empty-player{min-height:0;gap:15px}.sea-photo img{height:210px}.empty-insert{padding:21px 17px}.empty-insert h2{font-size:25px}.admin-heading h1{font-size:29px}}
@media(max-width:350px){.page-heading h1{font-size:24px}.heading-engraving{width:57px;height:99px}.record-deck{grid-template-columns:83px minmax(0,1fr);gap:12px}.record-details{padding:17px 12px}.record-details h2{font-size:20px}.punch-title{font-size:20px}.empty-insert h2{font-size:22px}}


.punch-title{padding-bottom:34px}
.punch-title>span{top:auto;bottom:6px;right:0}
@media(max-width:800px){.punch-title{padding-bottom:30px}.punch-title>span{top:auto;bottom:3px;right:0}}

/* More exposed photographic wear, with solid ink kept over reading areas. */
body{background:linear-gradient(#3b3327dd,#292d22dd),url('assets/materials/painted-metal.jpg') center/cover no-repeat;background-attachment:scroll}
:root{--surface-shadow:2px 4px 1px #15130daa,0 0 0 1px #35291b88;--rough-edge:polygon(.3% .5%,17% 0,28% .4%,44% .1%,66% .6%,82% 0,99.7% .4%,100% 19%,99.6% 37%,100% 61%,99.6% 80%,99.9% 99.3%,87% 99.8%,76% 99.2%,61% 100%,48% 99.5%,30% 99.9%,19% 99.3%,.4% 99.8%,0 78%,.3% 59%,0 37%)}
.machine{background:linear-gradient(#3038279c,#3038279c),url('assets/materials/painted-metal.jpg') 38% 65%/cover;border-color:#5a4d30 #3d3927 #302e20 #79623d;box-shadow:2px 5px 1px #0a120bb3;clip-path:var(--rough-edge)}
.machine-header{background:#1a241c99;border-bottom:1px solid #ad987355;padding:9px 7px 10px;margin-left:0;margin-right:0}
.page-heading{border-bottom:1px dashed #bda37066}
.page-heading h1{background:linear-gradient(#c0a36a88,#c0a36a88),url('assets/materials/folded-paper.jpg') 55% 36%/360px;background-clip:text;-webkit-background-clip:text;color:transparent;text-shadow:none}
.record-details,.empty-insert,.transcript,.record-index,.admin-form,.admin-gate,.qr-sheet{clip-path:var(--rough-edge)}
.record-details{background-position:37% 12%;border:0;box-shadow:2px 4px 1px #0e140bc9;transform:rotate(-.5deg)}
.record-details .file-label{border-bottom:1px dashed #4b3a2788}
.metadata{border-top:1px dashed #57462b77;padding-top:12px}
.record-details h2,.diary-author{color:#211f13}
.file-stamp{border:2px double #78351fc2;color:#6a2f1d;transform:rotate(-7deg)}
.portrait{clip-path:polygon(0 .6%,18% 0,50% .7%,78% 0,100% .5%,99% 32%,100% 71%,99.2% 99%,71% 99.7%,45% 99.1%,16% 100%,0 99%);background-position:8% 23%}
.portrait:before{background:#a58d5eb8;border-left:2px dashed #c4a97b66;border-right:2px dashed #69583277}
.portrait img{filter:sepia(.26) contrast(1.35) brightness(.89)}
.punchcard{background-position:78% 31%;box-shadow:2px 5px 1px #100d08b3}
.punch-heading{border-bottom:2px double #6d4a2c}
.punch-title>span{color:#642e1b;border-color:#642e1b;transform:rotate(-6deg)}
.punch-grid{border-top:1px dashed #714f2e99}
.punch-hole{border:1px dashed #674a2c99}
.transcript{border-left:5px solid #6c472b;background-position:14% 76%}
.record-index{border-left:7px solid #5c3a22;border-top:0;background:linear-gradient(#ab855223,#ab855223),url('assets/materials/folded-paper.jpg') 70% 28%/cover;box-shadow:3px 5px 1px #17140bab}
.record-index .shelf-heading{border-bottom:3px double #674a2b80;padding-bottom:13px}
.record-index .filters{border:0}
.record-row{border-bottom:1px dashed #684d2e77}
.record-row.active{background:#69331d22;border-bottom-color:#803b20}
.record-index .save-note{border-top:2px double #74523188}
.notice{background-position:0 76%;border-left:4px solid #844831;box-shadow:2px 3px 1px #16110999}
.play-button,.rewind-button,.desk-button{background:linear-gradient(#643e29bb,#643e29bb),url('assets/materials/painted-metal.jpg') 58% 74%/210px;color:#eed6a4;border-color:#a0814e #4b3521 #34291a #95764a;box-shadow:2px 3px 1px #11160d;border-radius:0}
.play-button:hover{background-color:#684c30;filter:brightness(1.08)}
.desk-button.secondary{background:linear-gradient(#b6976355,#b6976355),url('assets/materials/folded-paper.jpg') 12% 40%/240px;color:#302214;border-color:#836138 #5f472d #594329 #a68d5c}
.instrument-strip{border-top:3px solid #192115;border-bottom:2px solid #74623a;box-shadow:inset 2px 2px 1px #060e08}
.signal-display{background-position:6% 80%;border-color:#715f3e #5c4c2e #76623a #292c1c;box-shadow:inset 2px 3px 3px #22180855}
.admin-form,.admin-gate{background-position:25% 70%;border-left:5px solid #67452b;border-bottom:2px solid #63462b}
.admin-form h2,.admin-gate h2{padding-bottom:14px;border-bottom:2px double #735130aa}
.form-field input,.form-field select{border:0;border-bottom:2px solid #5b402a;background:#e0bb7b20;box-shadow:inset 0 1px #583c241f}
.qr-sheet{background-position:86% 19%;border-top:3px double #73512c}
.qr-image{background:white;filter:none}
.footer{border-top:1px dashed #ad936150}
@media(max-width:480px){.record-details{transform:rotate(-.5deg)}.machine-header{padding:8px 5px}.record-index{border-left-width:5px}.admin-form,.admin-gate{border-left-width:3px}}

@media print{body{background:white!important}.qr-sheet{background:white!important;border:1px solid black;box-shadow:none;transform:none;margin:20mm auto;padding:9mm;width:105mm;max-width:none}.admin-gate,#lock-admin{display:none!important}.qr-sheet h2,.qr-instruction,.qr-footer,.qr-source{color:black!important}.qr-image{width:65mm;height:65mm;max-width:none}.qr-sheet:after{display:none}}
