@charset "UTF-8";
/* Dullydude: one very unofficial basement clubhouse. */
:root{--ink:#26271e;--paper:#fff6d9;--cream:#f7e7b8;--muted:#625c48;--teal:#176763;--orange:#ed7338;--red:#ae382c;--yellow:#f9cf55;--line:#ccb98b;--focus:#137bba;--sans:Arial,Helvetica,sans-serif;--display:"Arial Black",Impact,"Arial",sans-serif;--mono:"Courier New",ui-monospace,monospace;--hand:"Chalkboard SE","Comic Sans MS",cursive;--wood:repeating-linear-gradient(90deg,#3e201013 0 2px,transparent 2px 7px,#ffcd7c0e 7px 8px,transparent 8px 25px),repeating-linear-gradient(90deg,transparent 0 118px,#231308a6 119px 121px,#c98b4e4a 122px 124px,transparent 125px 128px),linear-gradient(100deg,#5d341e,#89522f 38%,#6e3c23 70%,#4f2b1b);--chrome:linear-gradient(180deg,#fff9df 0%,#dbd9c2 14%,#a7afa9 20%,#f7f5dd 37%,#d4d7ca 48%,#7e8d87 50%,#b7bfb3 58%,#eeeeda 83%,#a2aaa1 100%)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font:15px/1.5 var(--sans);-webkit-font-smoothing:antialiased;background:var(--wood);background-attachment:fixed}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 0,#ffbd7733,transparent 65%),linear-gradient(0deg,#0003,transparent 60%)}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:wait;opacity:.65}input,textarea{min-width:0}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:5px}input:focus,textarea:focus{outline:3px solid var(--focus);outline-offset:2px}button:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}h1,h2,h3,h4,p{margin:0}em{font-style:normal}::selection{background:#f8cf5b;color:#282517}.site-shell{width:min(1180px,calc(100% - 64px));margin:42px auto 0}.skip-link{position:fixed;top:-150px;left:20px;padding:12px 20px;background:var(--yellow);color:#222;border:3px solid #222;box-shadow:4px 5px #0006;z-index:100}.skip-link:focus{top:12px}
/* Bolted enamel marquee. */
.masthead{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:124px;padding:26px 40px;background:linear-gradient(160deg,#2c7570,#164e4c 65%,#103b3a);border:7px solid #dfc48a;border-radius:9px;box-shadow:inset 0 0 0 2px #292f25,inset 0 0 0 5px #b7c4aa,inset 0 7px 15px #fff1,0 4px 0 #766042,0 10px 0 #302316,0 16px 20px #0006;color:#fff2c5}.masthead:before{content:"";position:absolute;inset:-15px -14px -19px;z-index:-1;border:5px solid #4b2b1c;border-radius:12px;background:var(--wood);box-shadow:0 4px 2px #0008}.wordmark{display:flex;align-items:center;gap:15px;font:900 clamp(24px,3.7vw,47px)/1 var(--display);letter-spacing:-.055em;text-decoration:none;text-shadow:0 2px #a17434,0 4px #142f2c;white-space:nowrap}.brand-mark{display:grid;place-items:center;flex-shrink:0;width:58px;height:58px;border:3px solid #eac56e;border-radius:50%;background:#e8ad38;color:#173f3c;font-family:var(--display);font-size:35px;letter-spacing:-.08em;transform:rotate(-11deg);box-shadow:inset 0 2px 0 #fff5,0 3px 0 #6e4d21;text-shadow:none}.brand-period{font-size:10px}.masthead-end{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.private-label{font:bold 10px var(--mono);letter-spacing:.13em;display:flex;align-items:center;gap:8px;white-space:nowrap}.private-label>span{font-size:18px;color:var(--yellow)}.text-button{min-height:44px;display:flex;align-items:center;gap:14px;border:1px solid #839891;border-radius:4px;background:linear-gradient(#315e56,#24443d);box-shadow:inset 0 1px #a1b6a36b,0 3px #102c28;padding:9px 14px;color:#fff3cd;font:700 12px var(--mono)}.text-button:hover{background:#426a5b}.text-button:active{transform:translateY(2px);box-shadow:inset 0 1px #a1b6a36b,0 1px #102c28}.marquee-subtitle{display:block;margin:9px 0 0 75px;font:700 10px var(--mono);letter-spacing:.28em;color:#e6dcb5}.marquee-bolt,.machine-screw{position:absolute;width:11px;height:11px;border:1px solid #333c32;border-radius:50%;background:linear-gradient(135deg,#efeed8,#8b9588);box-shadow:inset 0 1px 2px #fff6,0 1px 2px #0005;pointer-events:none}.marquee-bolt:after,.machine-screw:after{content:"";position:absolute;width:7px;height:1px;top:4px;left:1px;background:#4a5144;transform:rotate(-30deg)}.marquee-bolt:nth-of-type(1),.bolt-tl,.screw-tl{top:10px;left:11px}.marquee-bolt:nth-of-type(2),.bolt-tr,.screw-tr{top:10px;right:11px}.marquee-bolt:nth-of-type(3),.bolt-bl,.screw-bl{bottom:10px;left:11px}.marquee-bolt:nth-of-type(4),.bolt-br,.screw-br{bottom:10px;right:11px}.masthead-tape{position:absolute;top:-23px;right:125px;background:#e9d98f;color:#423521;transform:rotate(5deg);padding:7px 15px;font:700 12px var(--hand);box-shadow:1px 3px 2px #0003;clip-path:polygon(2% 0,100% 5%,98% 96%,0 100%)}
/* A hand-lettered welcome, and three real-looking selector keys. */
.intro{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:48px 9px 28px;color:#fff0c6}.eyebrow{font:700 11px var(--mono);letter-spacing:.14em}.welcome{font:700 12px var(--mono);color:#ebc68f;margin-bottom:12px;letter-spacing:.12em}.intro h1{font:900 clamp(29px,4.2vw,49px)/1.06 var(--display);letter-spacing:-.045em;max-width:790px;text-shadow:2px 3px #342216}.intro h1 em{color:var(--yellow);display:block}.intro-aside{display:flex;align-items:center;gap:12px}.intro-aside p{font:14px/1.5 var(--hand);max-width:200px}.little-flower{font-size:50px;color:var(--yellow)}.club-membership{position:relative;flex:0 0 190px;padding:18px 17px;background:#f3bd4e;color:#493516;transform:rotate(5deg);border:2px dashed #7a5022;box-shadow:5px 6px 0 #0003;text-align:center;font:700 12px/1.4 var(--mono)}.club-membership:before{content:"";position:absolute;top:-10px;left:48%;width:12px;height:12px;border:2px solid #9d332b;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffb6a1,#bd3f35 60%);box-shadow:1px 3px 2px #0005}.club-membership strong{display:block;margin:6px 0;font:900 23px/1 var(--display);letter-spacing:-.04em}.club-membership span{display:block}.club-membership small{font-size:10px}.page-nav{display:flex;gap:12px;padding:12px 14px 16px;margin:0 0 30px;background:linear-gradient(#383b31,#262a24);border:2px solid #171e18;border-radius:7px;box-shadow:inset 0 2px #747663,0 4px #161b15,0 7px 12px #0004}.page-nav a{display:flex;flex:1;align-items:center;justify-content:center;gap:13px;min-height:51px;padding:12px 14px;text-decoration:none;color:#362e20;background:linear-gradient(#fff4cc,#d6c493);border:1px solid #c9bc91;border-radius:5px;box-shadow:inset 0 2px #fff9,0 5px #84724c,0 7px 3px #0007;font:800 13px var(--mono);text-transform:uppercase}.page-nav a:nth-child(2){background:linear-gradient(#ffd282,#e8a44e);border-color:#e7bc72;box-shadow:inset 0 2px #fff8,0 5px #946130,0 7px 3px #0007}.page-nav a:nth-child(3){background:linear-gradient(#c0e4cf,#8ab6a4);border-color:#a8d1bc;box-shadow:inset 0 2px #fff8,0 5px #506f60,0 7px 3px #0007}.page-nav a>span:first-child{display:grid;place-items:center;width:25px;height:25px;border:1px solid #7a7359;border-radius:50%;font:700 10px var(--mono);flex-shrink:0}.page-nav a>span:last-child{margin-left:auto;font-size:21px;line-height:1}.page-nav a:hover{filter:brightness(1.08)}.page-nav a:active{transform:translateY(3px);box-shadow:inset 0 2px #fff6,0 2px #75664d}.notice,.page-feedback{padding:15px 18px;background:#fff0c6;border:2px solid #492a21;margin-bottom:22px;box-shadow:3px 4px #0003}
/* Minecraft server: chunky moulded plastic around a quiet phosphor screen. */
.minecraft-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:20px;padding:25px 30px 31px;background:linear-gradient(120deg,#a8ac87 0%,#c2c3a3 8%,#9b9e7d 65%,#7c8265);border:2px solid #3f493a;border-radius:19px 19px 28px 28px;box-shadow:inset 0 4px 1px #ecedcc,inset -4px -7px #687054,inset 4px 0 #bfc4a0,0 6px #364333,0 13px 20px #0005}.minecraft-card:after{content:"";position:absolute;left:58px;right:58px;bottom:-13px;height:10px;border-left:42px solid #1b251e;border-right:42px solid #1b251e;z-index:-1}.console-top{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 3px 0 5px;color:#2f3f30}.console-top h2{font:900 24px/.95 var(--display);letter-spacing:-.035em;text-shadow:0 1px #dfe4bb}.console-top h2 span{color:#43513d}.console-model{font:700 10px/1.5 var(--mono);letter-spacing:.1em;text-align:right}.console-model span{display:block}.minecraft-main{position:relative;min-height:267px;padding:25px 29px 25px;overflow:hidden;border:8px solid #343e31;border-radius:45% / 7%;background:radial-gradient(ellipse at center,#1a3728 0%,#112b20 55%,#081c15 100%);color:#b7f5a1;box-shadow:0 2px #d9dcac,0 -2px #747c5f,inset 0 0 19px #000b,inset 3px 4px 3px #000b;text-shadow:0 0 7px #8dff8436}.minecraft-main:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#00000016 3px 4px),linear-gradient(135deg,#e2ffd70a,transparent 45%);border-radius:inherit}.section-kicker{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px;font:700 10px var(--mono);letter-spacing:.06em}.section-kicker>span:first-child{color:#93bb83}.live-status{display:inline-flex;align-items:center;gap:7px;padding:5px 7px;color:#c5ff9f;font:700 10px/1.25 var(--mono);border:1px solid #679b5e;background:#142a1a}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 6px currentColor;flex-shrink:0}.live-status.offline{color:#ffd09e;border-color:#aa885a}.live-status.unknown{color:#d6ddaf;border-color:#7d8b68}.minecraft-main h2{font:700 23px var(--mono);letter-spacing:-.06em}.minecraft-description{font:13px/1.6 var(--mono);color:#a6ce97;max-width:490px}.player-line{display:flex;gap:20px;align-items:center;margin:20px 0 0}.player-line>strong{font:700 65px/.95 var(--mono);color:#d6ffb4;min-width:40px;text-shadow:0 0 11px #c2ff9266}.player-line>div{display:flex;flex-direction:column;gap:5px}.player-label{font:700 14px var(--mono);text-transform:uppercase;letter-spacing:.04em}.server-check{font:11px/1.6 var(--mono);color:#a9ca9f;max-width:310px}.player-list{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:22px;min-height:25px}.player-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 9px 5px 5px;border:1px solid #698d5f;background:#94bc6719;font:700 13px var(--mono);overflow-wrap:anywhere}.player-avatar{width:22px;height:22px;display:grid;place-items:center;background:#9dca80;color:#16311b;font-weight:700;flex-shrink:0}.player-empty{font:12px/1.6 var(--mono);color:#acd19b}.minecraft-join{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:4px 0 0 1px}.console-vents{height:51px;background:repeating-linear-gradient(0deg,#29382a 0 3px,#bdc3a0 3px 6px,#8a9472 6px 8px);border-radius:5px;box-shadow:inset 0 3px 4px #0005;margin:4px 8px 23px}.console-vents i{display:none}.console-controls .blockscape{display:none}.blockscape{position:relative;height:100px;overflow:hidden;margin-bottom:15px}.blockscape i{position:absolute;bottom:0;width:45px;background:#5a7543;border-top:8px solid #aec98c;box-shadow:inset -12px 0 #0002}.blockscape i:nth-child(1){left:0;height:25px}.blockscape i:nth-child(2){left:45px;height:45px}.blockscape i:nth-child(3){left:90px;height:70px}.blockscape i:nth-child(4){left:135px;height:45px}.blockscape i:nth-child(5){left:180px;height:25px}.blockscape i:nth-child(6){left:225px;height:10px}.blockscape span{position:absolute;right:3px;top:0;transform:rotate(7deg);font:700 10px var(--mono)}.server-address{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:15px 13px;background:linear-gradient(135deg,#d9ddc9,#b0baa5);border:1px solid #5c6851;border-radius:3px;box-shadow:inset 0 2px #edf0dd,0 2px #c3c6a2}.server-address>div{min-width:0;flex:1 1 130px;display:flex;flex-direction:column;gap:7px}.address-label{font:700 9px var(--mono);letter-spacing:.1em;color:#46513c}.server-address code{font:700 13px/1.4 var(--mono);color:#1e3424;overflow-wrap:anywhere}.copy-button{min-height:44px;min-width:80px;padding:9px 12px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #6b765c;border-radius:5px;background:linear-gradient(#f9edc9,#c4c5a4);box-shadow:inset 0 2px #fff8,0 3px #737e5e;color:#263527;font:700 11px var(--mono)}.copy-button:hover{background:#f5f2d5}.copy-button:active{transform:translateY(2px);box-shadow:inset 0 2px #fff8,0 1px #737e5e}.copy-feedback{font:11px/1.6 var(--mono);color:#34452e;padding:13px 9px 0;min-height:35px}.console-sticker{display:block;align-self:center;padding:6px 12px;margin-top:14px;transform:rotate(-6deg);background:var(--yellow);border:1px solid #937132;box-shadow:2px 2px #0002;font:700 13px var(--hand);color:#423111}.machine-screw:nth-of-type(1){top:13px;left:11px}.machine-screw:nth-of-type(2){top:13px;right:11px}.machine-screw:nth-of-type(3){bottom:13px;left:11px}.machine-screw:nth-of-type(4){bottom:13px;right:11px}
/* Request-O-Matic: a proper red/chrome jukebox stuffed with paper slips. */
.community-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:42px;margin-top:48px}.songs-section{position:relative;background:linear-gradient(100deg,#873123,#c9553b 8%,#a83729 50%,#8e2f25 92%,#6a2722);padding:27px 27px 28px;border:7px solid #bcc0ae;border-radius:34px 34px 13px 13px;box-shadow:inset 0 0 0 2px #5c281d,inset 0 0 0 5px #e28e67,0 3px 0 #e9e8ce,0 9px #606456,0 17px 22px #0006}.songs-section:before,.songs-section:after{content:"";position:absolute;top:74px;bottom:25px;width:8px;border-radius:6px;background:linear-gradient(90deg,#74877c,#fbf9de 40%,#b5c4b3 65%,#617368);box-shadow:1px 1px 2px #0008;pointer-events:none}.songs-section:before{left:8px}.songs-section:after{right:8px}.section-heading{position:relative;margin-bottom:23px}.section-heading .eyebrow{margin-bottom:10px}.section-heading h2{font:900 clamp(29px,3vw,38px)/.98 var(--display);letter-spacing:-.05em;margin-bottom:14px}.section-heading h2 em{display:block}.section-heading>p:last-child{font-size:14px;line-height:1.6;max-width:480px}.songs-section>.section-heading,.jukebox-header{color:#fff5cf;text-shadow:0 1px #6b2a22}.jukebox-header{position:relative;display:flex;align-items:center;gap:18px;padding:4px 0 19px;margin-bottom:21px;border-bottom:2px solid #e7865c;box-shadow:0 1px #6d231c}.jukebox-header .section-heading{margin:0;flex:1;min-width:0}.jukebox-header h2{font-size:34px;margin-bottom:12px}.jukebox-header .eyebrow{font-size:9px;color:#ffe0ab}.jukebox-header .section-heading>p:last-child{font-size:13px;color:#ffe7bd}.record-disc{position:relative;width:78px;height:78px;flex:0 0 78px;border-radius:50%;background:radial-gradient(circle,#eac252 0 6px,#be582f 7px 19px,#18211e 20px 22px,#38413a 23px,#19211d 24px 27px,#3a443c 28px,#18221d 29px 32px,#3a453e 33px,#17201c 34px);border:3px solid #f1dcaa;box-shadow:0 4px 7px #0007;transform:rotate(-15deg)}.record-disc:after{content:"";position:absolute;left:9px;right:9px;top:8px;bottom:8px;border-radius:50%;background:conic-gradient(from 20deg,transparent 15%,#fff3 19%,transparent 25%,transparent 64%,#fff2 68%,transparent 73%)}.record-disc span{position:absolute;inset:28px;z-index:1;display:grid;place-items:center;font:700 9px var(--mono);color:#3b2915}.jukebox-grille{height:37px;margin:19px 0 2px;border:4px solid #cdd1b9;border-radius:5px;box-shadow:inset 0 2px 3px #0008,0 2px #531f1a;background:radial-gradient(circle at center,#0c1711 1.5px,transparent 2px) 0 0/6px 6px,#566054}.jukebox-grille i{display:none}.paper-card{position:relative;background:linear-gradient(110deg,#fff5d4,#f5e7bc);padding:21px;border:1px solid #b49466;box-shadow:0 3px 0 #6b2a1c,0 5px 7px #3c171b55;margin-bottom:19px;color:var(--ink)}.search-card{border:4px solid #77372b;outline:1px solid #f0b786;border-radius:8px;box-shadow:inset 0 2px 5px #81683c44,0 3px 2px #4a231b}.request-card{margin-top:23px;padding-top:24px}.request-card:before{content:"";position:absolute;left:9px;right:9px;top:6px;height:5px;background:radial-gradient(circle,#b05738 1.5px,transparent 2px) 0 0/9px 5px}.request-card:after{content:"";position:absolute;left:10px;right:10px;bottom:-5px;height:6px;background:linear-gradient(135deg,#f5e7bc 25%,transparent 25%) -3px 0/8px 8px,linear-gradient(225deg,#f5e7bc 25%,transparent 25%) -3px 0/8px 8px}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.card-topline h3,.list-heading h3{font:900 17px/1.2 var(--display);letter-spacing:-.025em}.small-symbol{font-size:26px;line-height:1;color:#993d25}.small-tag{font:700 9px var(--mono);letter-spacing:.1em}.field-label,.field label{display:block;font:700 12px/1.4 var(--mono);margin-bottom:7px}.field label span,.link-details summary span{font-size:10px;font-weight:400;opacity:.8;margin-left:3px}input,textarea{width:100%;min-height:46px;padding:12px 11px;border:1px solid #a99362;border-top:2px solid #978052;border-radius:3px;color:#292b22;background:#fffbea;box-shadow:inset 0 2px 3px #5b471b17;font-size:16px;line-height:1.4;transition:border-color .15s}input::placeholder,textarea::placeholder{color:#786e55;font-size:13px;opacity:1}input:hover,textarea:hover{border-color:#726441}textarea{display:block;min-height:96px;max-height:360px;resize:vertical}.search-field{display:flex;gap:8px}.search-field input{min-width:0;flex:1}.button{min-height:47px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #193e38;border-radius:5px;font:700 12px var(--mono);text-transform:uppercase;box-shadow:inset 0 2px #ffffff40,0 4px #163d34,0 5px 2px #0003;transition:filter .15s,transform .15s;white-space:normal;text-align:left}.button-dark{background:linear-gradient(#36786a,#20584d);color:#fff7da}.button-clay{background:linear-gradient(#e58946,#cb6331);border-color:#7f402b;color:#291f16;box-shadow:inset 0 2px #ffffff60,0 4px #80442b,0 5px 2px #0003}.button:hover{filter:brightness(1.1)}.button:active{transform:translateY(3px);box-shadow:inset 0 2px #ffffff40,0 1px #173e34}.full-width{width:100%}.feedback{font-size:12px;line-height:1.6;margin-top:12px;overflow-wrap:anywhere}.feedback:empty{display:none}.feedback.error{color:#9b231a;font-weight:700}.feedback.success{color:#245b39;font-weight:700}.feedback.quiet{color:var(--muted)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{min-width:0;margin-bottom:17px}.card-intro{font-size:12px;line-height:1.6;color:var(--muted);margin:-6px 0 19px}.form-note{font:10px/1.6 var(--mono);color:var(--muted);text-align:center;margin:13px 0 0}.link-details{font-size:12px;margin:-5px 0 17px}.link-details summary{cursor:pointer;min-height:44px;padding:13px 0 8px;font:700 11px var(--mono)}.link-details .field{margin-top:10px;margin-bottom:0}.search-results:not(:empty){margin-top:16px;padding-top:4px;border-top:1px dashed #9f8d64;max-height:430px;overflow:auto;overscroll-behavior:contain}.song-result{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px dashed #b8a57d}.song-result:last-child{border-bottom:0}.song-result-body{flex:1;min-width:0}.song-result-title{font-size:14px;line-height:1.4;font-weight:800;overflow-wrap:anywhere}.song-result-artist{font-size:12px;color:#605440;overflow-wrap:anywhere;margin-top:3px}.song-result-meta{font-size:10px;color:#62553e;margin-top:7px;display:flex;flex-wrap:wrap;gap:7px;align-items:center}.installed-label{padding:3px 5px;border:1px solid #709969;background:#d7e9bb;color:#2f5733;font:700 8px var(--mono)}.result-link{font:700 10px/1.6 var(--mono);text-underline-offset:3px;color:#24594c;display:inline-block;min-height:24px}.select-song{min-width:82px;min-height:44px;padding:9px 10px;background:linear-gradient(#fcebb7,#dcc18b);border:1px solid #a78c58;border-radius:4px;font:700 10px var(--mono);box-shadow:0 3px #9f8252,inset 0 1px #fff8}.select-song:hover{background:#ffe8a1}.list-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 12px}.list-heading h3{display:flex;align-items:center;gap:9px}.list-heading>span{font:700 8px var(--mono);letter-spacing:.08em}.songs-section>.list-heading{color:#fff5d5}.count-tag{display:grid;place-items:center;min-width:26px;height:24px;padding:0 5px;border:1px solid #95885c;background:#f3e7bd;color:#483d24;font:700 12px var(--mono);box-shadow:inset 0 1px #fff9;border-radius:2px}.request-list{padding:0 15px;border:3px solid #743529;background:#f4e8c7;box-shadow:inset 0 3px 5px #604c2929}.request-item{display:flex;gap:13px;align-items:flex-start;padding:18px 0;border-bottom:1px dashed #ad9c79}.request-item:last-child{border-bottom:0}.vote-button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;min-height:52px;gap:1px;padding:5px 8px;flex-shrink:0;background:linear-gradient(#faf7dc,#d7cca3);border:1px solid #9f9369;border-radius:4px;box-shadow:inset 0 2px #fff9,0 3px #a29160;color:#3b452f;font:bold 13px var(--mono)}.vote-button .vote-arrow{font-size:18px;line-height:18px}.vote-button[aria-pressed="true"]{background:linear-gradient(#8fc5a0,#5c9276);border-color:#466c54;box-shadow:inset 0 2px #d7eed780,0 2px #3d674c;color:#173925}.vote-button:hover{filter:brightness(1.07)}.request-body{flex:1;min-width:0}.request-title{font-size:14px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}.request-artist{font-size:12px;color:#675a43;margin-top:4px;overflow-wrap:anywhere}.request-byline{display:flex;flex-wrap:wrap;align-items:center;gap:5px 10px;font:10px/1.5 var(--mono);color:#6b5c41;margin-top:9px;overflow-wrap:anywhere}.request-note{font-size:12px;line-height:1.65;margin-top:9px;white-space:pre-wrap;overflow-wrap:anywhere;color:#65563d}.status-tag{padding:2px 5px;background:#e3dcb3;border:1px solid #b5aa75;font:700 9px var(--mono);color:#5c522d}.status-tag.added{background:#d1dfb4;color:#35552d;border-color:#7d9365}.empty-state{padding:23px 0;font:13px/1.7 var(--mono);color:#665a42}.empty-state strong{display:block;font-weight:700;margin-bottom:5px;color:#3b3929}.list-more{width:100%;min-height:44px;padding:14px 2px;display:flex;justify-content:space-between;border:0;background:transparent;color:#fff4c7;font:700 12px var(--mono);text-decoration:underline;text-underline-offset:4px}.list-more:hover{color:#ffdc74}
/* A real spiral notebook. Keep the doodles in the margins. */
.guestbook-section{position:relative;padding:29px 27px 27px 33px;background:linear-gradient(90deg,#145650 0 10px,#26716a 10px 16px,#e2d6a5 16px 18px,#fff6d7 18px 100%);border:1px solid #4a4934;border-radius:4px 12px 12px 4px;box-shadow:3px 3px #dbcba3,5px 5px #f9e9bd,7px 7px #a99873,9px 9px #22645b,12px 15px 19px #0005}.guestbook-section>.section-heading,.notebook-heading{padding-left:10px;margin-bottom:24px}.notebook-heading .eyebrow{color:#735e3a;font-size:10px}.notebook-heading h2{color:#214f48;transform:rotate(-2deg);font:700 41px/.98 var(--hand);letter-spacing:-.06em;max-width:360px}.notebook-heading h2 em{color:#a64a2c;display:inline}.notebook-heading>p:last-child{font-size:13px;color:#665a3e}.guestbook-paper{position:relative;padding:27px 20px 25px 41px;background:linear-gradient(90deg,transparent 0 27px,#d769674f 27px 29px,transparent 29px),repeating-linear-gradient(0deg,#fff9e4 0 27px,#91b9bf44 27px 28px);border:1px solid #c6b88d;box-shadow:2px 4px 5px #7a673622;isolation:isolate}.guestbook-paper:before{content:"";position:absolute;top:-10px;right:29px;width:93px;height:25px;background:#dbbb6c66;transform:rotate(5deg);border-left:1px dashed #b9995866;border-right:1px dashed #b9995866;box-shadow:0 1px 2px #94793b11;z-index:2}.binder-rings{position:absolute;left:-12px;top:31px;bottom:30px;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.binder-rings i{display:block;width:28px;height:13px;border:3px solid #d3d3b8;border-radius:8px;box-shadow:inset 0 1px #5a685a,0 2px 2px #0005;background:linear-gradient(180deg,#41493e 0,#6e7361 42%,#313d33 45%);transform:rotate(-4deg)}.coffee-ring{position:absolute;right:-6px;top:35px;width:92px;height:82px;border:5px double #9960271c;border-radius:48%;transform:rotate(23deg);z-index:-1;pointer-events:none}.notebook-doodle{position:absolute;right:15px;bottom:16px;font:18px var(--hand);color:#6d818c60;transform:rotate(10deg);pointer-events:none;z-index:-1}.guestbook-paper-header{position:relative;display:flex;align-items:center;gap:11px;margin-bottom:24px}.guestbook-stamp{width:49px;height:49px;border:2px solid #b16743;border-radius:50%;color:#a85c3c;display:grid;place-content:center;text-align:center;font:700 7px/1.2 var(--mono);transform:rotate(-12deg);flex-shrink:0;opacity:.9}.guestbook-paper-header h3{font:700 29px/.95 var(--hand);letter-spacing:-.05em;margin-top:5px;color:#244b44}.guestbook-paper-header .small-tag{font-size:8px;color:#5a6047}.pen-mark{font-size:32px;color:#296b7a;margin-left:auto;transform:rotate(-15deg)}.guestbook-paper input{background:#fffdf1d9;border-color:#afab86;border-radius:1px;box-shadow:inset 0 2px 3px #8a77321a}.guestbook-paper textarea{background:repeating-linear-gradient(0deg,#fffdf1b8 0 28px,#a8c3c987 28px 29px);border-color:#a8a384;border-radius:1px;line-height:29px;padding-top:9px;min-height:166px;font-family:var(--hand);font-size:17px;box-shadow:inset 0 2px 3px #8a77321a}.guestbook-paper textarea::placeholder{font-family:var(--hand);font-size:15px}.character-count{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px 10px;margin-top:7px;font:10px/1.5 var(--mono);color:#646047}.guestbook-section>.list-heading{padding-left:10px;color:#244e45}.guest-list{margin-left:10px;border-top:1px solid #c9b88c}.guest-entry{position:relative;padding:21px 0 20px;border-bottom:1px dashed #baa47b}.guest-entry-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.guest-signature{display:flex;align-items:center;gap:9px;min-width:0}.guest-avatar{display:grid;place-items:center;flex-shrink:0;width:29px;height:29px;border:1px solid #b89f59;border-radius:50%;background:#f1cb66;color:#6c5324;font:700 17px var(--hand);transform:rotate(-7deg)}.guest-author{font:700 14px/1.4 var(--hand);color:#2c4e49;overflow-wrap:anywhere}.guest-date{font:9px/1.4 var(--mono);color:#6b654d;white-space:nowrap}.guest-message{margin-top:12px;font:16px/1.8 var(--hand);color:#314d4b;white-space:pre-wrap;overflow-wrap:anywhere}.guest-entry:nth-child(3n+2) .guest-message,.guest-entry:nth-child(3n+2) .guest-author{color:#495776}.guest-entry:nth-child(3n+3) .guest-message,.guest-entry:nth-child(3n+3) .guest-author{color:#694e42}.delete-note{min-height:44px;padding:12px 0 3px;border:0;background:none;color:#75633f;font:10px var(--mono);text-decoration:underline;text-underline-offset:3px}.delete-note:hover{color:#a03825}.guestbook-section>.list-more{padding-left:10px;color:#285e53}.guestbook-section>.list-more:hover{color:#a74c2d}.house-note{position:relative;display:flex;align-items:center;justify-content:center;gap:13px;margin:30px 6px 6px 13px;padding:20px 10px 30px;border:2px dashed #b08946;background:#efd884;transform:rotate(-3deg);box-shadow:2px 3px #c4b06f66;color:#64522d}.house-note:before{content:"";position:absolute;left:42%;top:-9px;width:64px;height:19px;background:#dfc490aa;transform:rotate(4deg)}.house-note>span:first-child{font-size:45px;line-height:1;color:#a4522c}.house-note>p{font:700 23px/1.1 var(--hand);letter-spacing:-.04em}.house-note>p em{font-size:22px}.house-note-bottom{position:absolute;bottom:10px;font:700 7px var(--mono);letter-spacing:.12em}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:40px 0 0;padding:24px 12px 30px;border-top:1px solid #edc88b66;color:#f3d9a8;font:10px/1.5 var(--mono);text-shadow:0 1px #321f15}.site-footer>span:first-child{font-weight:700;letter-spacing:.09em;display:flex;align-items:center;gap:8px}.footer-star{font-size:20px;color:#efb847}.site-footer a{min-height:44px;display:flex;align-items:center;text-underline-offset:5px;white-space:nowrap}
/* Password door: brushed brass, peephole, and an overqualified intercom. */
.login-page{min-height:100svh;display:flex;flex-direction:column}.login-shell{width:min(1000px,calc(100% - 64px));margin:40px auto 0;flex:1;display:flex;flex-direction:column}.login-page .masthead{min-height:94px;padding:20px 32px;flex-shrink:0}.login-page .wordmark{font-size:32px}.login-page .brand-mark{width:44px;height:44px;font-size:29px}.login-main{flex:1;display:grid;place-items:center;padding:44px 20px 35px}.login-card{position:relative;width:min(510px,100%);text-align:center;padding:35px 48px 24px;border:10px solid #37271c;border-bottom-width:13px;border-radius:7px 7px 0 0;background:repeating-linear-gradient(90deg,transparent 0 7px,#1e10070c 8px 9px,transparent 10px 19px),linear-gradient(90deg,#986239,#ba854b 30%,#a66c39 70%,#7d4f2d);box-shadow:inset 0 0 0 3px #d6a46c,inset 8px 0 8px #3d241e55,inset -8px 0 7px #3d241e55,0 0 0 3px #ae8651,0 0 0 9px #5e422b,0 14px 25px #0006;color:#382717}.login-card:before{content:"";position:absolute;inset:24px 22px auto;height:265px;border:4px ridge #bb8955;border-radius:3px;box-shadow:inset 3px 5px 6px #40241940;pointer-events:none}.login-card:after{content:"";position:absolute;left:-14px;top:95px;width:17px;height:50px;border:1px solid #6e6c4a;border-radius:3px;background:linear-gradient(90deg,#514b32,#c2af70 40%,#e0d097 60%,#877a4c);box-shadow:0 225px #7e744f;pointer-events:none}.door-peephole{position:relative;display:block;width:35px;height:35px;margin:0 auto 20px;border:6px solid #bd9545;border-radius:50%;background:radial-gradient(circle at 35% 30%,#7a9f99 0 12%,#283a32 23%,#101d16 65%);box-shadow:inset 0 1px 4px #000,0 1px #f2cc72,0 3px 3px #0006}.door-peephole:before{content:"";position:absolute;inset:-7px;border:1px solid #5b481d;border-radius:50%}.door-nameplate{position:relative;padding:17px 10px 15px;border:2px solid #76541f;border-radius:8px;background:linear-gradient(120deg,#c6a04a,#e9d78b 28%,#bfa04f 70%,#e4c877);box-shadow:inset 0 2px #fff2c488,0 3px 5px #2c1b1655}.door-nameplate:before,.door-nameplate:after{content:"";position:absolute;top:calc(50% - 3px);width:6px;height:6px;border:1px solid #78632b;border-radius:50%;background:#a3833b;box-shadow:inset 0 1px #f4db93}.door-nameplate:before{left:7px}.door-nameplate:after{right:7px}.login-card h1{font:900 34px/.95 var(--display);letter-spacing:-.055em;text-shadow:0 1px #f8e1a1;color:#3b361e}.login-card h1 em{display:block}.door-title,.door-nameplate .eyebrow{font:700 9px/1.4 var(--mono);letter-spacing:.17em;margin:8px 0 0}.login-flower{font-size:50px;line-height:1;color:#edc560;display:block;margin-bottom:15px}.login-card>.eyebrow{font-size:10px;margin-bottom:14px}.door-sticker{position:relative;display:inline-block;margin:18px -10px 0;padding:8px 15px;background:#efe5ba;border:1px solid #a88e5b;box-shadow:2px 3px #34251d44;transform:rotate(-5deg);font:700 14px/1.35 var(--hand);color:#705039;max-width:100%}.login-intro{position:relative;font:13px/1.6 var(--mono);color:#3d2d20;margin:22px auto 21px;max-width:340px;text-shadow:0 1px #f8cb8a60}.login-form{position:relative;text-align:left;margin:26px 0 0;padding:23px 20px 23px;border:3px solid #555c50;border-radius:7px;background:repeating-linear-gradient(0deg,#ffffff0a 0 1px,#3c47320b 1px 2px),linear-gradient(110deg,#d6d7c2,#a8b09b 54%,#d1d2b9);box-shadow:inset 0 2px #eff0db,0 4px 5px #3a251f88;color:#333b2d}.login-form:before,.login-form:after{content:"";position:absolute;top:8px;width:6px;height:6px;border-radius:50%;border:1px solid #4a5040;background:linear-gradient(130deg,#eff0d9,#828a76);box-shadow:0 1px #eff0db}.login-form:before{left:7px}.login-form:after{right:7px}.intercom-grille{height:36px;width:68%;margin:0 auto 18px;border-radius:5px;background:repeating-linear-gradient(0deg,#374034 0 3px,#8c9580 3px 5px,#c2c9ad 5px 7px);box-shadow:inset 0 2px 4px #0005}.intercom-grille i{display:none}.login-form .field{margin-bottom:18px}.login-form .field label{font-size:12px}.password-field{display:flex;border:1px solid #69765a;border-radius:4px;box-shadow:inset 0 2px 4px #0003;background:#f2f1da;overflow:hidden}.password-field input{flex:1;background:transparent;border:0;box-shadow:none;min-width:0}.password-field input:focus{outline:none}.password-field:focus-within{outline:3px solid var(--focus);outline-offset:3px}.password-toggle{min-width:58px;min-height:46px;padding:9px 12px;border:0;border-left:1px solid #98a184;background:linear-gradient(#dddcc1,#c1c7aa);font:700 10px var(--mono);color:#354331}.login-form .button{background:linear-gradient(#f7c05f,#d99a40);border-color:#8e6c30;box-shadow:inset 0 2px #fff6,0 4px #866431;color:#3a321c}.login-form .feedback.error{color:#86251c}.login-note{position:relative;margin:24px 0 20px;font:700 11px/1.6 var(--mono);color:#33281c;text-shadow:0 1px #f8cb8a60}.door-handle{position:absolute;right:8px;top:49%;width:25px;height:74px;border:2px solid #79622c;border-radius:15px;background:linear-gradient(90deg,#9c7938,#eedb8e 44%,#9e813f);box-shadow:2px 3px 3px #0006}.door-handle:after{content:"";position:absolute;top:12px;left:-7px;width:35px;height:35px;border:2px solid #ad8a3f;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff0ac,#c1a052 45%,#6f5429 90%);box-shadow:2px 4px 3px #0005}.door-kickplate{margin:16px -27px -8px;min-height:40px;padding:12px;border:1px solid #87774a;background:linear-gradient(110deg,#a08a51,#d7c38c 42%,#a79664);box-shadow:inset 0 1px #eddca7;color:#55462a;font:700 8px var(--mono);letter-spacing:.18em}.login-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid #e5bd7e55;padding:20px 0 26px;color:#f3d9a8;font:10px/1.5 var(--mono)}.login-mini-nav{display:flex;gap:15px}
@media(min-width:1450px){.site-shell{width:1180px}.intro{padding-top:54px}}
@media(max-width:1050px){.site-shell{width:calc(100% - 48px);margin-top:34px}.masthead{padding:25px 30px}.wordmark{font-size:37px}.marquee-subtitle{margin-left:72px;font-size:8px}.club-membership{flex-basis:162px;padding:15px 12px}.club-membership strong{font-size:21px}.minecraft-card{grid-template-columns:minmax(0,1fr) 235px;gap:17px;padding:23px 26px 28px}.minecraft-main{padding:24px 23px}.community-grid{gap:28px}.songs-section{padding:24px 22px}.guestbook-section{padding:27px 20px 25px 28px}.jukebox-header{gap:12px}.record-disc{width:58px;height:58px;flex-basis:58px;background:radial-gradient(circle,#edbf4b 0 4px,#be582f 5px 14px,#1a241d 15px 17px,#435043 18px,#1b251e 19px 21px,#435043 22px,#1b251e 23px)}.record-disc span{inset:19px;font-size:8px}.jukebox-header h2{font-size:28px}.jukebox-header .section-heading>p:last-child{font-size:12px}.paper-card{padding:18px}.field-row{grid-template-columns:1fr;gap:0}.guestbook-paper{padding:24px 16px 23px 36px}.notebook-heading h2{font-size:35px}.list-heading>span{display:none}.guestbook-paper-header h3{font-size:25px}.guestbook-stamp{width:40px;height:40px;font-size:6px}.pen-mark{font-size:24px}.page-nav a{font-size:12px}.site-footer{padding-inline:0}}
@media(max-width:760px){.site-shell{width:calc(100% - 36px);margin-top:28px}.masthead{min-height:106px;padding:23px 22px;border-width:5px;gap:12px}.masthead:before{inset:-11px -9px -14px;border-width:4px}.wordmark{font-size:31px;gap:10px}.brand-mark{width:43px;height:43px;font-size:27px;border-width:2px}.marquee-subtitle{margin:8px 0 0 53px;letter-spacing:.13em;font-size:8px}.masthead-end{gap:5px}.private-label{font-size:8px;letter-spacing:.07em}.private-label>span{font-size:14px}.text-button{font-size:10px;padding:8px 10px;gap:8px}.masthead-tape{right:55px;top:-21px;font-size:11px;padding:5px 10px}.intro{padding:34px 3px 24px;gap:20px}.intro h1{font-size:36px}.welcome{font-size:10px;max-width:350px;line-height:1.5}.club-membership{flex-basis:145px;font-size:10px}.club-membership strong{font-size:18px}.page-nav{gap:9px;padding:10px 10px 14px;margin-bottom:26px}.page-nav a{gap:8px;padding:10px 8px;font-size:10px;min-height:50px}.page-nav a>span:first-child{width:21px;height:21px;font-size:9px}.page-nav a>span:last-child{font-size:18px}.minecraft-card{grid-template-columns:minmax(0,1fr) 205px;gap:15px;padding:22px 22px 27px}.console-top h2{font-size:22px}.console-model{font-size:8px}.minecraft-main{min-height:262px;padding:23px 20px;border-width:6px}.section-kicker{font-size:8px;gap:8px;margin-bottom:19px}.live-status{font-size:9px;padding:4px 6px}.minecraft-description{font-size:12px}.player-line{gap:13px;margin-top:18px}.player-line>strong{font-size:59px}.player-label{font-size:12px}.server-check{font-size:10px}.player-empty{font-size:11px}.server-address{gap:13px;padding:12px 10px}.server-address code{font-size:12px}.copy-feedback{font-size:10px}.community-grid{grid-template-columns:1fr;gap:38px;margin-top:36px}.songs-section{padding:26px 29px 28px}.jukebox-header{gap:22px}.record-disc{width:82px;height:82px;flex-basis:82px;background:radial-gradient(circle,#eac252 0 6px,#be582f 7px 19px,#18211e 20px 22px,#38413a 23px,#19211d 24px 27px,#3a443c 28px,#18221d 29px 32px,#3a453e 33px,#17201c 34px)}.record-disc span{inset:30px;font-size:10px}.jukebox-header h2{font-size:35px}.jukebox-header .section-heading>p:last-child{font-size:13px}.paper-card{padding:23px}.field-row{grid-template-columns:1fr 1fr;gap:12px}.guestbook-section{padding:30px 26px 26px 32px}.notebook-heading h2{font-size:42px}.guestbook-paper{padding:27px 23px 26px 43px}.guestbook-paper-header h3{font-size:30px}.guestbook-stamp{width:49px;height:49px;font-size:7px}.pen-mark{font-size:32px}.guestbook-paper textarea{min-height:166px}.site-footer{flex-wrap:wrap;margin-top:33px;gap:10px 20px}.site-footer>span:nth-child(2){order:3;flex-basis:100%}.login-shell{width:calc(100% - 36px);margin-top:25px}.login-page .masthead{padding:20px;min-height:89px}.login-page .wordmark{font-size:30px}.login-main{padding:39px 15px 30px}.login-mini-nav{display:none}}
@media(max-width:540px){.site-shell{width:calc(100% - 32px)}.masthead{padding:23px 19px 19px;min-height:104px}.wordmark{font-size:28px;letter-spacing:-.065em;gap:8px}.brand-mark{width:37px;height:37px;font-size:25px}.marquee-subtitle{margin-left:45px;letter-spacing:.08em;font-size:7px}.masthead-end .private-label{display:none}.masthead-end .text-button{font-size:9px;padding:8px;gap:3px;min-width:54px}.text-button span{display:none}.masthead-tape{right:25px;font-size:10px}.intro{padding:30px 2px 24px;align-items:flex-start;gap:12px}.intro h1{font-size:32px;max-width:360px}.intro-main{min-width:0;flex:1}.intro .welcome{font-size:9px;line-height:1.5;letter-spacing:.06em;margin-bottom:10px}.club-membership{flex:0 0 88px;width:88px;margin-top:7px;padding:11px 6px;font-size:8px;border-width:1px}.club-membership strong{font-size:14px;margin:5px 0}.club-membership small{font-size:7px}.club-membership:before{width:9px;height:9px;top:-7px}.intro-aside{display:none}.page-nav{gap:7px;padding:9px 8px 13px;border-radius:6px}.page-nav a{flex-direction:column;gap:4px;justify-content:center;font-size:9px;line-height:1.3;text-align:center;padding:9px 4px 8px;min-height:61px;letter-spacing:-.02em}.page-nav a>span:first-child{border:0;width:auto;height:auto;font-size:8px;opacity:.7}.page-nav a>span:last-child{display:none}.minecraft-card{display:flex;flex-direction:column;gap:15px;padding:20px 17px 25px;border-radius:15px 15px 22px 22px}.console-top{padding:1px 4px;gap:9px}.console-top h2{font-size:23px}.console-model{font-size:7px;letter-spacing:.02em}.minecraft-main{padding:23px 20px;min-height:255px;border-width:7px;border-radius:47%/6%}.section-kicker{flex-wrap:nowrap;font-size:9px;gap:7px;margin-bottom:18px}.live-status{font-size:8px;gap:5px}.minecraft-description{font-size:12px}.player-line{margin-top:20px;gap:16px}.player-line>strong{font-size:62px}.player-label{font-size:12px}.server-check{font-size:9px;line-height:1.6}.player-list{margin-top:19px}.minecraft-join{padding:0 4px;display:grid;grid-template-columns:1fr;gap:0}.console-vents{height:27px;width:100%;margin:0 0 15px;background:repeating-linear-gradient(0deg,#29382a 0 2px,#bdc3a0 2px 4px,#8a9472 4px 6px)}.server-address{flex-wrap:nowrap;padding:12px 13px}.server-address>div{flex:1 1 auto}.server-address code{font-size:12px}.copy-button{min-width:77px;font-size:10px;padding:9px 10px}.copy-feedback{padding:12px 3px 0;min-height:25px;font-size:10px}.console-sticker{display:none}.community-grid{gap:32px;margin-top:32px}.songs-section{padding:24px 20px 25px;border-width:6px;border-radius:31px 31px 11px 11px}.songs-section:before{left:6px;width:6px}.songs-section:after{right:6px;width:6px}.jukebox-header{gap:13px;padding-top:1px;padding-bottom:20px}.record-disc{width:60px;height:60px;flex-basis:60px;background:radial-gradient(circle,#edbf4b 0 4px,#be582f 5px 14px,#1a241d 15px 17px,#435043 18px,#1b251e 19px 21px,#435043 22px,#1b251e 23px);border-width:2px}.record-disc span{inset:20px;font-size:8px}.jukebox-header h2{font-size:28px;line-height:1.02;margin-bottom:11px}.jukebox-header .eyebrow{font-size:8px;letter-spacing:.05em;margin-bottom:8px}.jukebox-header .section-heading>p:last-child{font-size:12px;line-height:1.5}.paper-card{padding:18px 16px}.card-topline h3,.list-heading h3{font-size:16px}.card-topline{gap:8px}.small-tag{font-size:8px}.search-field{gap:7px}.search-field .button{padding:11px 10px;font-size:10px;gap:6px}.search-field .button span{display:none}.field-row{grid-template-columns:1fr;gap:0}.field-label,.field label{font-size:11px}.button{font-size:11px;padding:12px 13px;min-height:48px}input,textarea{font-size:16px}input::placeholder,textarea::placeholder{font-size:12px}.feedback{font-size:11px}.search-results:not(:empty){max-height:470px}.song-result{gap:8px}.song-result-title{font-size:13px}.song-result-artist{font-size:11px}.select-song{min-width:70px;padding:8px;font-size:9px}.request-list{padding:0 11px}.request-item{gap:10px}.request-title{font-size:13px}.request-byline{font-size:9px;gap:5px 7px}.request-note{font-size:11px}.request-artist{font-size:11px}.guestbook-section{padding:25px 19px 24px 27px;border-radius:3px 10px 10px 3px;box-shadow:2px 2px #dbcba3,4px 4px #f9e9bd,6px 6px #a99873,8px 8px #22645b,10px 13px 17px #0005}.notebook-heading h2{font-size:37px}.notebook-heading .eyebrow{font-size:9px}.notebook-heading>p:last-child{font-size:12px}.guestbook-section>.section-heading,.notebook-heading{padding-left:4px}.guestbook-paper{padding:25px 15px 24px 32px;background:linear-gradient(90deg,transparent 0 20px,#d769674f 20px 22px,transparent 22px),repeating-linear-gradient(0deg,#fff9e4 0 27px,#91b9bf44 27px 28px)}.guestbook-paper-header{gap:8px}.guestbook-paper-header h3{font-size:25px}.guestbook-paper-header .small-tag{font-size:7px}.guestbook-stamp{width:39px;height:39px;font-size:6px;border-width:1px}.pen-mark{font-size:27px}.binder-rings{left:-10px}.binder-rings i{width:24px;height:12px}.guest-list{margin-left:4px}.guestbook-section>.list-heading{padding-left:4px}.guest-date{font-size:8px}.guest-author{font-size:13px}.guest-message{font-size:15px}.house-note{margin:26px 3px 4px 7px;padding:19px 8px 31px;gap:10px}.house-note>p{font-size:21px}.house-note>p em{font-size:21px}.house-note>span:first-child{font-size:40px}.character-count{font-size:9px}.site-footer{font-size:9px;gap:9px 12px}.site-footer>span:first-child{font-size:8px;letter-spacing:.04em}.site-footer a{font-size:9px}.login-page .wordmark{font-size:26px}.login-page .brand-mark{width:35px;height:35px;font-size:24px}.login-page .private-label{font-size:7px;gap:4px}.login-page .private-label>span{font-size:13px}.login-main{padding:36px 6px 29px}.login-card{padding:25px 33px 20px;border-width:8px;border-bottom-width:11px}.login-card:before{inset:19px 15px auto;height:244px;border-width:3px}.door-peephole{width:31px;height:31px;border-width:5px;margin-bottom:17px}.door-nameplate{padding:16px 9px 14px}.login-card h1{font-size:29px}.door-title,.door-nameplate .eyebrow{font-size:7px;letter-spacing:.12em}.door-sticker{font-size:12px;margin-top:16px;padding:8px 10px}.login-intro{font-size:11px;line-height:1.65;margin:20px auto 17px}.login-form{margin-top:21px;padding:21px 15px 21px;border-width:2px}.intercom-grille{height:29px;margin-bottom:17px}.login-form .field label{font-size:11px}.login-form .button{font-size:10px}.password-toggle{padding:7px 9px;min-width:50px}.login-note{font-size:10px;margin:22px -6px 17px}.door-handle{right:5px;width:20px;height:65px}.door-handle:after{width:29px;height:29px;left:-6px}.door-kickplate{margin:14px -20px -6px;min-height:35px;padding:10px 6px;font-size:7px;letter-spacing:.1em}.login-footer{font-size:8px;gap:12px;align-items:flex-start}.login-footer>span{max-width:170px}.login-card:after{width:13px;left:-11px}.login-page .masthead{padding:20px 17px;gap:10px}}
@media(max-width:360px){.site-shell{width:calc(100% - 26px)}.masthead{padding:22px 14px 18px;gap:7px}.wordmark{font-size:24px;gap:7px}.brand-mark{width:32px;height:32px;font-size:22px}.marquee-subtitle{margin-left:39px;font-size:6px}.masthead-end .text-button{font-size:8px;padding:7px;min-width:49px}.intro h1{font-size:28px}.club-membership{flex-basis:74px;width:74px;font-size:7px;padding:9px 4px}.club-membership strong{font-size:12px}.club-membership small{font-size:6px}.page-nav a{font-size:8px}.minecraft-card{padding:20px 13px 23px}.minecraft-main{padding:20px 15px}.console-top h2{font-size:21px}.console-model{font-size:6px}.section-kicker{font-size:8px}.live-status{font-size:7px}.player-line>strong{font-size:54px}.player-label{font-size:10px}.server-check{font-size:8px}.server-address{padding:10px}.server-address code{font-size:11px}.copy-button{min-width:66px;gap:6px}.songs-section{padding:22px 16px}.record-disc{width:47px;height:47px;flex-basis:47px;background:radial-gradient(circle,#edbf4b 0 3px,#be582f 4px 10px,#1a241d 11px 13px,#435043 14px,#1b251e 15px 17px,#435043 18px,#1b251e 19px)}.record-disc span{inset:15px;font-size:7px}.jukebox-header{gap:10px}.jukebox-header h2{font-size:24px}.jukebox-header .section-heading>p:last-child{font-size:11px}.paper-card{padding:17px 13px}.card-topline h3,.list-heading h3{font-size:14px}.small-tag{font-size:7px}.search-field .button{font-size:9px;padding:10px 8px}.guestbook-section{padding-left:25px;padding-right:16px}.notebook-heading h2{font-size:32px}.guestbook-paper{padding-right:12px;padding-left:29px}.guestbook-paper-header h3{font-size:22px}.guestbook-stamp{width:33px;height:33px;font-size:5px}.pen-mark{font-size:23px}.guestbook-paper-header .small-tag{font-size:6px}.guestbook-paper .button{font-size:10px;padding:12px 10px}.guest-entry-header{gap:7px}.guest-avatar{width:25px;height:25px}.guest-author{font-size:12px}.guest-date{font-size:7px}.house-note>p,.house-note>p em{font-size:18px}.login-shell{width:calc(100% - 28px)}.login-page .masthead{padding:19px 13px}.login-page .wordmark{font-size:23px}.login-page .private-label{font-size:6px;letter-spacing:0}.login-card{padding-left:27px;padding-right:27px}.login-card h1{font-size:25px}.login-form{padding-left:12px;padding-right:12px}.login-form .field label{font-size:10px}.door-nameplate{padding-inline:8px}.door-sticker{font-size:11px}.password-toggle{font-size:9px;min-width:44px;padding:7px}.login-footer{font-size:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Small fittings shared with the finished machine and door markup. */
.club-marquee{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 25px}.club-marquee .wordmark{grid-column:1;grid-row:1;font-size:62px;letter-spacing:-.055em}.wordmark-spark{font-size:44px;line-height:1;color:#efbe49;align-self:center;margin-left:9px;text-shadow:1px 2px #0b2e2b}.club-marquee .marquee-subtitle{grid-column:1;grid-row:2;margin:0 0 0 3px;font-size:10px;letter-spacing:.17em}.club-marquee .masthead-end{grid-column:2;grid-row:1/3}.intro-copy{margin-top:15px;font:13px/1.7 var(--mono);color:#ebcca0}.membership-barcode{height:20px;width:85%;margin:12px auto 0;background:repeating-linear-gradient(90deg,#563d1d 0 1px,transparent 1px 3px,#563d1d 3px 5px,transparent 5px 6px,#563d1d 6px 9px,transparent 9px 13px)}.membership-hole{display:none!important}.page-nav a>span:nth-child(2){display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1;min-width:0}.page-nav small{font:700 8px var(--mono);letter-spacing:.1em;opacity:.72}.console-top .console-model{display:block;margin-bottom:5px;text-align:left;font-size:8px;letter-spacing:.07em}.console-badge{padding:7px 9px;border:1px solid #52604a;background:#d7dab9;box-shadow:inset 0 1px #ecedce,0 1px #788266;font:700 8px/1.4 var(--mono);letter-spacing:.05em;text-align:center}.console-sticker{margin:0 auto 18px;font-size:11px;line-height:1.2;text-align:center;padding:7px 12px;align-self:center;position:relative}.console-sticker span{font-size:25px;line-height:1;float:left;margin-right:8px}.screen-footnote{margin-top:27px;padding-top:12px;border-top:1px solid #5a884455;color:#86ad7b;font:9px/1.6 var(--mono);letter-spacing:.04em}.screen-footnote span{font-weight:700;color:#d0fda0;margin-right:5px}.jukebox-header h2{font-size:29px;letter-spacing:-.055em}.jukebox-header h2>span{font:700 13px var(--mono);display:inline-block;vertical-align:middle;transform:rotate(-8deg);padding:3px 5px;border:1px solid #ffda92;color:#ffe09e}.ticket-tear{margin:20px -5px -6px;padding-top:12px;border-top:1px dashed #b39d6b;color:#75613d;text-align:center;font:7px/1.7 var(--mono);letter-spacing:.07em}.machine-disclaimer{text-align:center;margin:17px 0 0;color:#f7c592;font:10px var(--hand)}.notebook-footnote{margin-top:17px;text-align:center;font:10px var(--hand);color:#7a745b}.notebook-heading .notebook-doodle{z-index:auto;top:8px;bottom:auto;right:4px;font:17px var(--hand);color:#637c84;transform:rotate(12deg)}.login-corridor{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#efd3a1;padding:13px 8px;border-bottom:1px solid #edc88b55;font:700 10px var(--mono);letter-spacing:.13em}.login-corridor .private-label{font-size:8px;letter-spacing:.05em;color:#c8ab80}.door-nameplate .eyebrow{font-size:8px;line-height:1.4;margin:0 0 8px}.door-nameplate h1{position:relative}.door-nameplate .marquee-bolt{width:6px;height:6px;top:9px;background:linear-gradient(135deg,#e4c87d,#88713a);border-color:#856f37}.door-nameplate .marquee-bolt:after{width:4px;top:2px;left:0;background:#79602c}.door-sticker{padding-right:54px;text-align:left;font-size:11px;line-height:1.35;margin-top:23px;margin-bottom:1px}.door-sticker strong{font-size:16px;letter-spacing:.04em}.door-sticker>span{position:absolute;right:10px;top:15px;font:39px/.9 var(--sans);color:#75613b}.intercom-label{display:flex;align-items:center;justify-content:center;gap:5px;font:700 8px/1.5 var(--mono);letter-spacing:.03em;color:#4e5b42;margin:-7px 0 20px}.intercom-label>span{color:#6b5a35;font-size:13px;text-shadow:0 1px #ececd1}.login-form .login-note{font-size:9px;text-align:center;margin:19px -5px 0;text-shadow:none;color:#4f5845}.is-unlocking .intercom-label>span{color:#8acc59;text-shadow:0 0 5px #8acc59}.is-searching .record-disc{animation:recordSpin 2.5s linear infinite}.is-feeding #request-button{filter:brightness(1.12)}@keyframes recordSpin{from{transform:rotate(-15deg)}to{transform:rotate(345deg)}}
@media(max-width:1050px){.club-marquee .wordmark{font-size:55px}.club-marquee .marquee-subtitle{font-size:9px}.wordmark-spark{font-size:38px}.jukebox-header h2{font-size:24px}.notebook-heading .notebook-doodle{right:0;font-size:15px;top:-11px}.intro-copy{font-size:12px}.console-sticker{font-size:10px}}
@media(max-width:760px){.club-marquee .wordmark{font-size:44px}.club-marquee .marquee-subtitle{font-size:8px;letter-spacing:.09em}.wordmark-spark{font-size:31px;margin-left:4px}.club-marquee{gap:6px 15px}.page-nav small{font-size:7px;letter-spacing:.04em}.console-top .console-model{font-size:7px}.console-badge{font-size:7px;padding:5px 7px}.jukebox-header h2{font-size:33px}.intro-copy{font-size:11px}.notebook-heading .notebook-doodle{right:4px;top:4px;font-size:18px}.login-corridor{font-size:9px;letter-spacing:.08em}.login-corridor .private-label{font-size:7px}}
@media(max-width:540px){.club-marquee{gap:7px 10px}.club-marquee .wordmark{font-size:37px;gap:0}.wordmark-spark{font-size:26px;margin-left:4px}.club-marquee .marquee-subtitle{font-size:6px;letter-spacing:.06em;white-space:nowrap}.intro-copy{font-size:10px;line-height:1.65;margin-top:12px}.intro-copy br{display:none}.membership-barcode{height:14px;margin-top:7px}.page-nav a>span:nth-child(2){align-items:center;gap:5px;flex:0 1 auto}.page-nav a{font-size:9px}.page-nav small{font-size:6px;letter-spacing:0}.console-top .console-model{font-size:6px;letter-spacing:0}.console-badge{font-size:6px}.screen-footnote{font-size:8px;margin-top:22px}.jukebox-header h2{font-size:25px}.jukebox-header h2>span{font-size:10px;padding:2px 3px}.notebook-heading .notebook-doodle{top:-11px;right:0;font-size:14px}.login-corridor{display:block;text-align:center;font-size:9px;padding:12px 0}.login-corridor .private-label{display:none}.door-nameplate .eyebrow{font-size:7px}.door-sticker{font-size:10px;line-height:1.35;padding:8px 47px 8px 11px;margin-top:22px}.door-sticker strong{font-size:14px}.door-sticker>span{font-size:34px;right:8px;top:12px}.intercom-label{font-size:7px;margin-bottom:17px;letter-spacing:0}.intercom-label>span{font-size:11px}.ticket-tear{font-size:6px;letter-spacing:0}}
@media(max-width:360px){.club-marquee .wordmark{font-size:31px}.club-marquee .marquee-subtitle{font-size:5px}.wordmark-spark{font-size:21px}.page-nav a{font-size:8px}.page-nav small{font-size:5px}.jukebox-header h2{font-size:22px}.jukebox-header h2>span{font-size:8px}.screen-footnote{font-size:7px}.intercom-label{font-size:6px}.door-nameplate .eyebrow{font-size:6px}}
@media(prefers-reduced-motion:reduce){.is-searching .record-disc{animation:none}}
/* Stable woodgrain on small devices and full-page captures. */
html{background:#5d341e}body{background-attachment:scroll}.club-marquee .wordmark{min-width:0}.server-check{font-size:11px}.player-empty{font-size:12px}
@media(max-width:540px){.club-marquee .wordmark{font-size:33px}.wordmark-spark{font-size:23px}.club-marquee .masthead-end{min-width:0}.club-marquee .marquee-subtitle{font-size:6px;letter-spacing:.02em}.live-status{font-size:10px}.section-kicker{font-size:9px}.server-check{font-size:11px}.player-empty{font-size:12px}.player-label{font-size:12px}.screen-footnote{font-size:8px}}
@media(max-width:360px){.club-marquee .wordmark{font-size:28px}.wordmark-spark{font-size:19px}.club-marquee .marquee-subtitle{font-size:5px}.live-status{font-size:9px}.section-kicker{font-size:8px}.player-line{gap:11px}.player-label{font-size:11px}.server-check{font-size:11px}.player-empty{font-size:12px}}
/* Readable instructions; the tiny type belongs to the pretend serial numbers. */
.intro-copy{color:#f3dbaf;font-size:14px;line-height:1.65}.server-address code{font-size:12px}.copy-feedback{font-size:12px;color:#30402b}.form-note{font-size:11px;line-height:1.6}.guestbook-paper .character-count{color:#635b40}.ticket-tear{color:#6b5938}
@media(min-width:541px) and (max-width:1050px){.server-address{flex-direction:column;align-items:stretch;gap:12px}.server-address>div{flex:0 0 auto}.server-address .copy-button{align-self:flex-end;min-width:90px}.server-address code{font-size:12px}.console-sticker{margin-bottom:15px}}
@media(max-width:760px){.intro-copy{font-size:13px}.copy-feedback{font-size:11px}.form-note{font-size:11px}}
@media(max-width:540px){.intro-copy{font-size:13px;color:#f3dbaf}.copy-feedback{font-size:11px;line-height:1.6}.server-address code{font-size:12px}.form-note{font-size:11px}}
@media(max-width:360px){.server-address code{font-size:11px}}

/* Keep the controls obvious; let the objects supply the personality. */
.club-marquee{grid-template-columns:minmax(0,1fr) auto;gap:18px;min-height:112px}
.club-marquee .wordmark{margin:0;grid-row:1;font-size:58px}
.wordmark>a{display:flex;align-items:center;gap:0;color:inherit;text-decoration:none}
.club-marquee .masthead-end{grid-row:1;display:flex;flex-direction:row;align-items:center;gap:10px}
.recroom-page .page-nav{margin-top:32px}
#sound-toggle{min-width:108px;min-height:44px;justify-content:center;gap:8px;white-space:nowrap}
#sound-toggle:before{content:"";width:7px;height:7px;border:1px solid #7f9383;border-radius:50%;background:#172c27;box-shadow:inset 0 1px 2px #0008;flex-shrink:0}
#sound-toggle[aria-pressed="true"]:before{border-color:#ffd786;background:#ffd35f;box-shadow:0 0 7px #ffd35f80,inset 0 1px #fff7}
.jukebox-header h2,.notebook-heading h2{margin-bottom:0}
.guestbook-paper-header{justify-content:space-between;margin-bottom:20px}
.guestbook-stamp{font-size:24px;line-height:1}
.guestbook-paper .character-count{justify-content:flex-end}
.copy-feedback:empty{display:none}
.recroom-page .site-footer{justify-content:space-between}
/* Tiny mechanical celebrations, all attached to the object being used. */
.jukebox-burst,.signature-burst{position:absolute;left:50%;bottom:36px;width:0;height:0;z-index:5;pointer-events:none;user-select:none}
.jukebox-burst>span,.signature-burst>span{position:absolute;left:-12px;bottom:0;width:24px;text-align:center;opacity:0;transform:translate(0,0) scale(.4);transform-origin:center;font:900 28px/1 var(--sans);color:#ffe08a;text-shadow:-1px -1px #7e371e,1px -1px #7e371e,-1px 1px #7e371e,1px 1px #7e371e,0 3px 2px #0003}
.jukebox-burst>span:nth-child(1),.signature-burst>span:nth-child(1){--hop-x:-88px;--hop-y:-74px;--hop-turn:-22deg;animation-delay:0ms}
.jukebox-burst>span:nth-child(2),.signature-burst>span:nth-child(2){--hop-x:-32px;--hop-y:-108px;--hop-turn:17deg;animation-delay:60ms}
.jukebox-burst>span:nth-child(3),.signature-burst>span:nth-child(3){--hop-x:38px;--hop-y:-98px;--hop-turn:-12deg;animation-delay:110ms}
.jukebox-burst>span:nth-child(4),.signature-burst>span:nth-child(4){--hop-x:88px;--hop-y:-65px;--hop-turn:28deg;animation-delay:35ms}
.signature-burst>span{color:#d06d38;font-size:26px;text-shadow:0 1px #fff4c9,0 2px 1px #895b321f}
.signature-burst>span:nth-child(even){color:#36847e}
#songs.is-picked .record-disc{animation:recordNudge 450ms cubic-bezier(.2,.8,.3,1)}
#songs.is-requested .record-disc{animation:recordParty 1100ms cubic-bezier(.2,.7,.2,1)}
#songs.is-requested #request-button{animation:buttonClunk 330ms ease-out}
#songs.is-requested .jukebox-burst>span,#guestbook.is-signed .signature-burst>span{animation-name:paperConfetti;animation-duration:900ms;animation-timing-function:cubic-bezier(.14,.65,.32,1);animation-fill-mode:both}
#guestbook.is-signed .guestbook-stamp{animation:stampPop 650ms cubic-bezier(.2,.8,.3,1)}
#guestbook.is-signed .pen-mark{animation:penWiggle 550ms ease-in-out}
#guestbook.is-signed #guestbook-button{animation:buttonClunk 280ms ease-out}
@keyframes recordNudge{0%,100%{transform:rotate(-15deg)}35%{transform:rotate(24deg)}68%{transform:rotate(-29deg)}}
@keyframes recordParty{0%{transform:rotate(-15deg) scale(1)}18%{transform:rotate(-32deg) scale(.94)}72%{transform:rotate(366deg) scale(1.06)}100%{transform:rotate(345deg) scale(1)}}
@keyframes buttonClunk{0%,100%{transform:translateY(0)}35%{transform:translateY(3px)}70%{transform:translateY(-1px)}}
@keyframes paperConfetti{0%{opacity:0;transform:translate(0,0) scale(.3) rotate(0deg)}12%{opacity:1}50%{opacity:1}100%{opacity:0;transform:translate(var(--hop-x),var(--hop-y)) scale(1.12) rotate(var(--hop-turn))}}
@keyframes stampPop{0%,100%{transform:rotate(-12deg) scale(1)}20%{transform:rotate(-12deg) scale(.72)}52%{transform:rotate(-7deg) scale(1.18)}74%{transform:rotate(-15deg) scale(.97)}}
@keyframes penWiggle{0%,100%{transform:rotate(-15deg)}30%{transform:rotate(7deg)}60%{transform:rotate(-26deg)}80%{transform:rotate(-8deg)}}
@media(max-width:1050px){.club-marquee .wordmark{font-size:48px}.club-marquee .masthead-end{gap:8px}#sound-toggle{min-width:99px;font-size:11px;padding-inline:10px}}
@media(max-width:760px){.club-marquee{grid-template-columns:1fr;justify-items:center;gap:19px;padding-block:25px}.club-marquee .wordmark{grid-column:1;grid-row:1;font-size:48px}.club-marquee .masthead-end{grid-column:1;grid-row:2;justify-content:center;width:100%;gap:12px}.club-marquee .masthead-end .text-button{min-height:44px;font-size:11px;padding:10px 16px;min-width:110px;justify-content:center}.wordmark-spark{font-size:32px}.recroom-page .page-nav{margin-top:27px}}
@media(max-width:540px){.club-marquee{padding:23px 19px 22px;gap:17px}.club-marquee .wordmark{font-size:43px}.wordmark-spark{font-size:28px}.club-marquee .masthead-end .text-button{font-size:10px;min-width:102px;padding:10px 12px}.recroom-page .page-nav{margin-top:26px}.guestbook-stamp{font-size:20px}.minecraft-main{min-height:215px}.jukebox-burst>span:nth-child(1),.signature-burst>span:nth-child(1){--hop-x:-76px}.jukebox-burst>span:nth-child(4),.signature-burst>span:nth-child(4){--hop-x:76px}}
@media(max-width:360px){.club-marquee{padding-inline:14px}.club-marquee .wordmark{font-size:36px}.wordmark-spark{font-size:24px}.club-marquee .masthead-end{gap:10px}.club-marquee .masthead-end .text-button{min-width:96px}.guestbook-stamp{font-size:17px}}
@media(prefers-reduced-motion:reduce){.jukebox-burst,.signature-burst{display:none!important}#songs.is-picked .record-disc,#songs.is-requested .record-disc,#songs.is-requested #request-button,#guestbook.is-signed .guestbook-stamp,#guestbook.is-signed .pen-mark,#guestbook.is-signed #guestbook-button{animation:none!important}}

/* Anchor the reward to the control, even when the keyboard shrinks the view. */
.celebration-control{position:relative}
.celebration-control .jukebox-burst,.celebration-control .signature-burst{bottom:20px}

/* The server monitor only needs the live screen. */
.crt-console{grid-template-columns:minmax(0,1fr)}

/* Simple names, with breathing room where the quick links used to be. */
.recroom-page #main{margin-top:32px;margin-bottom:36px}
.door-nameplate #login-title{font-size:clamp(22px,5vw,34px)}
@media(max-width:540px){.club-marquee .wordmark{font-size:35px}.recroom-page #main{margin-top:26px}}
@media(max-width:360px){.club-marquee .wordmark{font-size:30px}}

/* A small radio control beside the room's other switches. */
.club-marquee .masthead-end{gap:8px}
.music-controls{display:flex;align-items:center;gap:8px;min-width:0}
.club-marquee .masthead-end .text-button{min-height:44px;justify-content:center;white-space:nowrap;font-size:11px;padding:9px 11px;gap:7px}
.club-marquee #sound-toggle{min-width:83px}
.club-marquee #music-toggle{min-width:66px;border-color:#b7b294;background:linear-gradient(#ece6c5,#babda3);color:#2c4036;box-shadow:inset 0 1px #fff9,0 3px #647765;text-shadow:0 1px #ffffff66}
.club-marquee #music-toggle[aria-pressed="true"]{background:linear-gradient(#f6d985,#dcb14f);border-color:#e8c773;box-shadow:inset 0 1px #fff9,0 3px #7b642f,0 0 9px #eac66430;color:#3e361c}
.club-marquee #music-toggle:active{transform:translateY(2px);box-shadow:inset 0 1px #fff9,0 1px #647765}
#music-volume{-webkit-appearance:none;appearance:none;display:block;width:78px;min-width:0;min-height:44px;height:44px;padding:0;margin:0;border:0;border-radius:4px;background:transparent;box-shadow:none;cursor:pointer;touch-action:pan-y}
#music-volume:focus{outline:3px solid var(--focus);outline-offset:3px}
#music-volume:focus:not(:focus-visible){outline:none}
#music-volume::-webkit-slider-runnable-track{height:6px;border:1px solid #102a26;border-radius:3px;background:#153c35;box-shadow:inset 0 2px 2px #0008,0 1px #789287}
#music-volume::-moz-range-track{height:4px;border:1px solid #102a26;border-radius:3px;background:#153c35;box-shadow:inset 0 2px 2px #0008,0 1px #789287}
#music-volume::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:23px;margin-top:-9px;border:1px solid #758776;border-radius:3px;background:linear-gradient(90deg,#aab7a3,#f0eacb 39%,#d3d9bd 50%,#839b85);box-shadow:0 2px 3px #0006,inset 0 1px #ffffdd}
#music-volume::-moz-range-thumb{width:12px;height:21px;border:1px solid #758776;border-radius:3px;background:linear-gradient(90deg,#aab7a3,#f0eacb 39%,#d3d9bd 50%,#839b85);box-shadow:0 2px 3px #0006,inset 0 1px #ffffdd}
.music-feedback{grid-column:1/-1;width:100%;font:11px/1.4 var(--mono);color:#ffe6a9;text-align:right}
@media(max-width:1050px){.club-marquee{grid-template-columns:1fr;justify-items:center;gap:17px;padding-block:24px}.club-marquee .wordmark{grid-column:1;grid-row:1}.club-marquee .masthead-end{grid-column:1;grid-row:2;width:auto;justify-content:center}.music-feedback{text-align:center}}
@media(max-width:540px){.club-marquee .masthead-end{width:100%;gap:7px}.music-controls{gap:6px}.club-marquee .masthead-end .text-button{font-size:10px;padding:9px 7px;min-width:0;gap:6px}.club-marquee #music-toggle{width:60px;min-width:60px}.club-marquee #sound-toggle{width:66px;min-width:66px}.club-marquee #logout{width:62px;min-width:62px}#music-volume{width:64px}}
@media(max-width:360px){.club-marquee .masthead-end{gap:5px}.music-controls{gap:5px}#music-volume{width:44px}}

/* A warm desk, with the working interface printed on each physical object. */
.recroom-page{background:#271b14;color:#f6e5bd}
.recroom-page:before{display:none}
.recroom-page .site-shell{width:100%;margin:0}
.recroom-page .club-marquee{position:relative;z-index:4;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch;gap:8px 24px;min-height:72px;padding:12px 26px;border:0;border-bottom:1px solid #c28a4938;border-radius:0;background:radial-gradient(ellipse at 20% 0,#d38c3d1a,transparent 75%),linear-gradient(#35251c,#281c15);box-shadow:0 3px 17px #100b0859;color:#eed9ae}
.recroom-page .club-marquee:before{display:none}
.recroom-page .club-marquee .wordmark{grid-column:1;grid-row:1;font:900 25px/1.1 var(--display);letter-spacing:-.055em;text-shadow:0 1px #140c09}
.recroom-page .club-marquee .masthead-end{grid-column:2;grid-row:1;display:flex;flex-direction:row;align-items:center;justify-content:flex-end;width:auto;gap:8px}
.recroom-page .club-marquee .masthead-end .text-button{min-height:44px;min-width:0;padding:8px 11px;gap:7px;border:1px solid #a08d6990;border-radius:5px;background:linear-gradient(#d2c3a1,#b5a481);box-shadow:inset 0 1px #fff8,0 2px #665339,0 3px 4px #0005;color:#362c20;font:700 11px var(--mono);text-shadow:0 1px #fff4}
.recroom-page .club-marquee .masthead-end .text-button:hover{background:linear-gradient(#ecdcba,#cabc95)}
.recroom-page .club-marquee .masthead-end .text-button:active{transform:translateY(2px);box-shadow:inset 0 1px #fff8,0 1px #665339}
.recroom-page .club-marquee #music-toggle{min-width:65px;width:auto}
.recroom-page .club-marquee #music-toggle[aria-pressed="true"]{background:linear-gradient(#f8d58a,#caa25f);border-color:#c3a162;box-shadow:inset 0 1px #fff9,0 2px #80602e;color:#45351e}
.recroom-page .club-marquee #sound-toggle{min-width:76px;width:auto}
.recroom-page .club-marquee #logout{min-width:76px;width:auto}
.recroom-page #sound-toggle:before{border-color:#776643;background:#766b50;box-shadow:inset 0 1px 2px #30281480}
.recroom-page #sound-toggle[aria-pressed="true"]:before{border-color:#9b803d;background:#f5cf69;box-shadow:0 0 5px #edba5565,inset 0 1px #fff7}
.recroom-page #music-volume{width:66px}
.recroom-page #music-volume::-webkit-slider-runnable-track{border-color:#16110c;background:#18120d;box-shadow:inset 0 1px 2px #0008,0 1px #765333}
.recroom-page #music-volume::-moz-range-track{border-color:#16110c;background:#18120d;box-shadow:inset 0 1px 2px #0008,0 1px #765333}
.recroom-page .music-feedback{position:absolute;right:26px;top:calc(100% - 4px);width:auto;max-width:calc(100% - 52px);margin:0;padding:7px 10px;border:1px solid #ad9166;border-radius:3px;background:#eddfbb;color:#613c28;text-align:right;box-shadow:0 2px 4px #0004}
.recroom-page:not(.room-ready) #main{width:min(1140px,calc(100% - 48px));margin:24px auto 40px}
.recroom-page:not(.room-ready) .minecraft-card{grid-template-columns:1fr}
.recroom-page .page-feedback{position:relative;z-index:6}
#tabletop-scene{position:relative;width:100%;height:100%;isolation:isolate;overflow:hidden}
#room-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;outline:0;touch-action:manipulation}
#surface-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}
#object-targets{position:absolute;inset:0;z-index:3;pointer-events:none}
.object-target{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:116px;max-width:calc(100vw - 24px);min-height:44px;padding:8px 13px;transform:translate(-50%,0);pointer-events:auto;border:1px solid #b09a6a;border-radius:3px;background:linear-gradient(170deg,#eee0b8ed,#beaa7ded);box-shadow:inset 0 1px #fff8,0 2px #705b3b,0 4px 8px #160f0940;color:#403527;font:700 11px/1.3 var(--mono);text-align:center;white-space:nowrap;transition:background .16s,box-shadow .16s}
.object-target:before,.object-target:after{content:"";position:absolute;top:50%;width:3px;height:3px;border-radius:50%;background:#826a42;box-shadow:0 1px #fff8;pointer-events:none}
.object-target:before{left:5px}.object-target:after{right:5px}
.object-target:hover,.object-target.is-hovered{background:linear-gradient(170deg,#fff0ca,#d5b775);box-shadow:inset 0 1px #fff9,0 2px #705b3b,0 5px 12px #160f0955}
.object-target:active{margin-top:2px;box-shadow:inset 0 1px #fff9,0 1px #705b3b}
.object-target:focus-visible{outline:3px solid #e7b761;outline-offset:5px}
.object-status{font:10px/1.2 var(--mono);color:#4c6238}
#room-back{position:absolute;z-index:5;left:20px;top:16px;display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 15px;border:1px solid #b99f6b;border-radius:5px;background:linear-gradient(#f0e0bb,#c9b383);box-shadow:inset 0 1px #fff8,0 2px #755b36,0 4px 12px #0004;color:#403224;font:700 12px var(--mono)}
#room-back:hover{background:#f6e7c3}
#room-back:active{transform:translateY(2px);box-shadow:inset 0 1px #fff8,0 1px #755b36}
#room-back span{font-size:19px;line-height:1}
.room-ready{overflow:hidden}
.room-ready .site-shell{display:flex;flex-direction:column;height:100svh;min-height:0}
.room-ready .club-marquee{flex:0 0 auto}
.room-ready #main{position:relative;flex:1 1 0;min-height:0;width:100%;margin:0}
.room-ready #tabletop-scene{position:absolute;inset:0}
.room-ready .community-grid{display:contents}
.room-ready .page-feedback{position:absolute;top:10px;left:50%;width:min(430px,calc(100% - 32px));margin:0;transform:translateX(-50%);font-size:12px}
.surface-tabs{display:none}
.surface-panel{color:var(--ink)}
/* Clip the inner section: clipping the transformed plane breaks Chromium hit testing. */
.room-ready .surface-panel{width:var(--surface-width,400px);height:var(--surface-height,560px);padding:0;overflow:visible;visibility:visible;container-type:inline-size;pointer-events:none;backface-visibility:hidden;transform-style:preserve-3d;isolation:isolate;color:var(--ink);-webkit-font-smoothing:antialiased}
.room-ready .surface-panel.is-active{pointer-events:auto}
.room-ready #detail-minecraft{width:var(--surface-width,600px);height:var(--surface-height,370px);border-radius:10px;background:radial-gradient(ellipse at 42% 35%,#19392b,#0a1b13 83%,#06130c);box-shadow:inset 0 0 24px #0009,inset 2px 3px 6px #0008;color:#c5efad}
.room-ready #detail-songs{width:var(--surface-width,440px);height:var(--surface-height,620px);background:radial-gradient(ellipse at 18% 8%,#f5e6bf80,transparent 65%),linear-gradient(115deg,#dfcba0,#c9ad7e);color:#463322;box-shadow:inset 0 0 22px #64452030,inset 1px 2px 3px #fff3}
.room-ready #detail-guestbook{width:var(--surface-width,420px);height:var(--surface-height,570px);background:linear-gradient(115deg,#fff2cc26,#89602c18),linear-gradient(90deg,transparent 0 31px,#b46f5d45 31px 33px,transparent 33px),repeating-linear-gradient(0deg,#e7d6b0 0 29px,#afbab02e 29px 30px);box-shadow:inset 5px 0 15px #74604214;color:#343f4a}
.room-ready .surface-panel>section{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:0;width:100%;height:100%;min-height:0;margin:0;padding:25px 27px;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit}
.room-ready .surface-panel>section:before,.room-ready .surface-panel>section:after{display:none}
.room-ready .surface-panel .console-top,.room-ready .surface-panel .jukebox-header,.room-ready .surface-panel .notebook-heading{display:flex;align-items:center;flex:0 0 auto;gap:10px;margin:0 0 13px;padding:0;border:0;box-shadow:none;background:transparent;color:inherit;text-shadow:none}
.room-ready .surface-panel .section-heading{margin:0;padding:0;flex:1;min-width:0}
.room-ready .surface-panel .notebook-heading{flex:0 0 auto}
.room-ready .surface-panel h2{margin:0;font:700 26px/1.15 var(--mono);letter-spacing:-1.1px;text-shadow:none}
.room-ready #detail-songs h2{font:900 27px/1.15 var(--display);letter-spacing:-.7px;color:#603d29}
.room-ready #detail-guestbook h2{font:700 31px/1.15 var(--hand);letter-spacing:-1px}
.room-ready .surface-panel .surface-tabs{display:flex;flex:0 0 auto;gap:7px;margin:0 0 18px;padding:0 0 11px;border-bottom:1px solid #9b78494a}
.room-ready .surface-tabs button{min-width:70px;min-height:44px;flex:1;padding:9px 12px;border:1px solid #9f855b;border-radius:3px;background:linear-gradient(#f5e7c8,#d8c393);box-shadow:inset 0 1px #fff8,0 2px #ae925f;color:#5c4530;font:700 16px/1.2 var(--mono)}
.room-ready .surface-tabs button[aria-selected="true"]{background:#765035;border-color:#68442d;box-shadow:inset 0 2px 4px #39200b66;color:#fff1cf}
.room-ready .surface-view{flex:1 1 0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#b4996d transparent;padding:1px 4px 8px 1px;scroll-padding:10px}
.room-ready [data-surface-view]:not(.is-active){display:none}
.room-ready .surface-panel .paper-card,.room-ready .surface-panel .guestbook-paper{margin:0;padding:0;border:0;border-radius:0;outline:0;background:transparent;box-shadow:none;color:inherit}
.room-ready .surface-panel .paper-card:before,.room-ready .surface-panel .paper-card:after,.room-ready .surface-panel .guestbook-paper:before,.room-ready .surface-panel .guestbook-paper:after{display:none}
.room-ready .surface-panel .card-topline{display:none}
.room-ready .surface-panel .field-row{display:block}
.room-ready .surface-panel .field{margin:0 0 11px}
.room-ready .surface-panel .field-label,.room-ready .surface-panel .field label{margin-bottom:5px;font:700 16px/1.3 var(--mono)}
.room-ready .surface-panel .field label span,.room-ready .surface-panel .link-details summary span{font-size:13px}
.room-ready .surface-panel input,.room-ready .surface-panel textarea{min-height:44px;padding:9px 10px;border:1px solid #aa8f615c;border-bottom:2px solid #af9368;border-radius:2px;background:#fff9e76b;box-shadow:inset 0 1px 4px #6f4a1b10;color:#382c22;font:400 18px/1.35 var(--sans)}
.room-ready .surface-panel input::placeholder,.room-ready .surface-panel textarea::placeholder{font-size:16px;color:#796b53}
.room-ready .surface-panel textarea{min-height:70px;max-height:170px;resize:vertical}
.room-ready .surface-panel .button{min-height:47px;padding:11px 13px;border-radius:3px;font:700 16px/1.2 var(--mono);text-transform:none}
.room-ready #detail-songs .button-dark{border-color:#6d4931;background:linear-gradient(#9a6944,#754a32);color:#fff2cd;box-shadow:inset 0 1px #fff4,0 3px #55351e}
.room-ready .surface-panel .search-field{gap:8px}
.room-ready .surface-panel .search-field input{width:0}
.room-ready .surface-panel .search-field .button{padding-inline:13px}
.room-ready .surface-panel .search-field .button span{display:none}
.room-ready .surface-panel .link-details{margin:0 0 10px}
.room-ready .surface-panel .link-details summary{min-height:38px;padding:8px 0;font:700 16px/1.3 var(--mono)}
.room-ready .surface-panel .link-details .field{margin-top:6px}
.room-ready .surface-panel .feedback{font-size:15px;line-height:1.45;margin-top:10px}
.room-ready .surface-panel .form-note{font:13px/1.4 var(--sans);margin-top:10px}
.room-ready .surface-panel .search-results:not(:empty){max-height:none;overflow:visible;margin-top:17px;padding-top:0}
.room-ready .surface-panel .song-result{gap:10px;padding:14px 0}
.room-ready .surface-panel .song-result-title,.room-ready .surface-panel .request-title{font-size:18px;line-height:1.3}
.room-ready .surface-panel .song-result-artist,.room-ready .surface-panel .request-artist{font-size:16px}
.room-ready .surface-panel .song-result-meta,.room-ready .surface-panel .request-byline{font-size:13px;gap:6px}
.room-ready .surface-panel .result-link{font-size:13px}
.room-ready .surface-panel .installed-label{font-size:11px;padding:3px 5px}
.room-ready .surface-panel .select-song{min-width:80px;min-height:44px;font-size:14px}
.room-ready .surface-panel .list-heading{margin:0 0 14px;padding:0;color:inherit}
.room-ready .surface-panel .list-heading h3{font:700 19px/1.2 var(--mono)}
.room-ready .surface-panel .count-tag{font-size:14px;min-width:24px}
.room-ready .surface-panel .request-list{padding:0 12px;border:1px solid #b59d6f66;background:#fff6da55;box-shadow:none;border-radius:2px}
.room-ready .surface-panel .request-note{font-size:15px}
.room-ready .surface-panel .vote-button{min-width:44px;min-height:44px}
.room-ready .surface-panel .list-more{min-height:44px;font-size:15px;color:inherit}
.room-ready .surface-panel .empty-state{font-size:16px;line-height:1.5;padding:12px 0;color:inherit}
.room-ready #detail-minecraft>section{padding:27px 35px}
.room-ready #detail-minecraft h2{font-size:23px;color:#bdeca5;letter-spacing:-.8px}
.room-ready #detail-minecraft .console-top{margin-bottom:15px}
.room-ready .surface-panel .minecraft-main{flex:1 1 0;min-height:0;padding:0;overflow:auto;border:0;border-radius:0;background:transparent;box-shadow:none;color:inherit;scrollbar-width:thin;scrollbar-color:#4d7045 transparent}
.room-ready .surface-panel .minecraft-main:after{position:fixed;background:repeating-linear-gradient(0deg,transparent 0 3px,#0000000d 3px 4px);border-radius:0}
.room-ready .surface-panel .section-kicker{margin:0;font:700 14px/1.2 var(--mono);letter-spacing:.5px}
.room-ready .surface-panel .live-status{padding:5px 7px;font-size:14px;border-color:#82ac654f;background:transparent}
.room-ready .surface-panel .player-line{gap:21px;margin:24px 0 0}
.room-ready .surface-panel .player-line>strong{font-size:80px;line-height:1;color:#d5ffc0}
.room-ready .surface-panel .player-label{font-size:18px;line-height:1.3;letter-spacing:.2px}
.room-ready .surface-panel .server-check{max-width:310px;font-size:15px;line-height:1.4}
.room-ready .surface-panel .player-list{margin-top:23px;gap:8px}
.room-ready .surface-panel .player-empty{font-size:16px;line-height:1.4}
.room-ready .surface-panel .player-chip{font-size:16px;padding:6px 9px 6px 6px}
.room-ready .surface-panel .player-avatar{width:26px;height:26px}
.room-ready #detail-guestbook>section{padding:25px 24px 23px 44px}
.room-ready #detail-guestbook .surface-tabs{gap:20px;border-color:#68808a44;padding-bottom:4px;margin-bottom:17px}
.room-ready #detail-guestbook .surface-tabs button{flex:0 0 auto;min-width:80px;padding:6px 12px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:#607583;font:700 19px/1.3 var(--hand)}
.room-ready #detail-guestbook .surface-tabs button[aria-selected="true"]{border-color:#4b6475;color:#2c4e69}
.room-ready #detail-guestbook .notebook-doodle{position:static;transform:rotate(10deg);margin-left:auto;font:24px/1 var(--hand);color:#7d8170}
.room-ready #detail-guestbook .guestbook-paper-header{display:flex;justify-content:space-between;gap:8px;margin-bottom:15px;color:#546a7d}
.room-ready #detail-guestbook .guestbook-paper-header h3{font:700 21px/1.2 var(--hand)}
.room-ready #detail-guestbook .guestbook-stamp{display:block;width:auto;height:auto;position:static;border:0;background:none;box-shadow:none;font-size:21px;transform:rotate(-11deg)}
.room-ready #detail-guestbook .pen-mark{font-size:25px;line-height:1}
.room-ready #detail-guestbook .field label{font:700 17px/1.3 var(--hand);color:#45596b}
.room-ready #detail-guestbook input,.room-ready #detail-guestbook textarea{border:0;border-bottom:1px solid #657d976b;border-radius:0;background:#fffdf02b;box-shadow:none;color:#264f74;font:400 22px/1.35 var(--hand);padding:7px 3px}
.room-ready #detail-guestbook textarea{min-height:150px;max-height:220px;background:repeating-linear-gradient(0deg,transparent 0 29px,#859ca13b 29px 30px);line-height:30px}
.room-ready #detail-guestbook .character-count{font:12px/1.5 var(--mono);color:#647178}
.room-ready #detail-guestbook .button-clay{border:1px solid #a18f69;border-radius:3px;background:#e7d6afaa;box-shadow:inset 0 1px #fff6,0 2px #bcab85;color:#3b566f;font:700 20px/1.3 var(--hand)}
.room-ready #detail-guestbook .guest-list{margin:0}
.room-ready #detail-guestbook .guest-entry{margin:0;padding:17px 0;border:0;border-bottom:1px solid #9d987244;border-radius:0;background:transparent;box-shadow:none}
.room-ready #detail-guestbook .guest-entry:before,.room-ready #detail-guestbook .guest-entry:after{display:none}
.room-ready #detail-guestbook .guest-avatar{width:28px;height:28px;font-size:15px}
.room-ready #detail-guestbook .guest-author{font-size:18px}
.room-ready #detail-guestbook .guest-date{font-size:12px;color:#756c56}
.room-ready #detail-guestbook .delete-note{min-height:44px;padding:10px 0;font-size:14px;color:#626d6d}
.room-ready #detail-guestbook .guest-message{font:400 22px/1.45 var(--hand);color:#345774}
.room-ready #detail-guestbook .signature-burst>span{color:#5c7893;text-shadow:0 1px #fff8}
@container(max-width:380px){
  .room-ready .surface-panel>section{padding:18px}
  .room-ready #detail-guestbook>section{padding:20px 17px 20px 37px}
  .room-ready #detail-minecraft>section{padding:12px}
  .room-ready #detail-minecraft h2{font-size:18px}
  .room-ready #detail-minecraft .console-top{margin-bottom:8px}
  .room-ready #detail-minecraft .section-kicker{font-size:12px}
  .room-ready #detail-minecraft .live-status{padding:3px 5px;font-size:12px}
  .room-ready #detail-minecraft .player-line{gap:8px;margin-top:8px}
  .room-ready #detail-minecraft .player-line>strong{font-size:48px}
  .room-ready #detail-minecraft .player-label{font-size:14px}
  .room-ready #detail-minecraft .server-check{font-size:12px;line-height:1.3}
  .room-ready #detail-minecraft .player-list{margin-top:8px;gap:5px}
  .room-ready #detail-minecraft .player-empty{font-size:12px;line-height:1.3}
  .room-ready #detail-minecraft .player-chip{font-size:12px;padding:3px 5px}
  .room-ready #detail-minecraft .player-avatar{width:20px;height:20px}
  .room-ready #detail-songs h2{font-size:24px}
  .room-ready #detail-guestbook h2{font-size:28px}
  .room-ready .surface-panel .surface-tabs{gap:5px;margin-bottom:13px;padding-bottom:9px}
  .room-ready .surface-tabs button{min-width:0;padding-inline:8px}
  .room-ready .surface-panel .search-field{flex-wrap:wrap}
  .room-ready .surface-panel .search-field input{width:100%;flex-basis:100%}
  .room-ready .surface-panel .search-field .button{width:100%;justify-content:center}
  .room-ready .surface-panel .song-result{flex-wrap:wrap}
  .room-ready .surface-panel .song-result-body{flex-basis:100%}
  .room-ready .surface-panel .select-song{margin-left:auto}
  .room-ready #detail-guestbook .guestbook-paper-header{margin-bottom:9px}
  .room-ready #detail-guestbook textarea{min-height:120px}
}
@media(max-width:760px){
  .recroom-page .club-marquee{padding:12px 19px;min-height:68px;gap:9px 16px}
  .recroom-page .club-marquee .wordmark{font-size:23px}
  .recroom-page .club-marquee .masthead-end{gap:6px}
  .recroom-page #music-volume{width:52px}
  .recroom-page .club-marquee .masthead-end .text-button{font-size:10px;padding-inline:9px}
  .recroom-page .club-marquee #music-toggle{min-width:59px}
  .recroom-page .club-marquee #sound-toggle{min-width:68px}
  .recroom-page .club-marquee #logout{min-width:62px}
}
@media(max-width:620px){
  .recroom-page .club-marquee{grid-template-columns:1fr;justify-items:center;gap:10px;padding:12px 16px 10px;min-height:98px}
  .recroom-page .club-marquee .wordmark{grid-row:1;font-size:23px}
  .recroom-page .club-marquee .masthead-end{grid-column:1;grid-row:2;justify-content:center;gap:9px}
  .recroom-page #music-volume{width:64px}
  .recroom-page .music-feedback{top:calc(100% - 2px);left:16px;right:16px;max-width:none;text-align:center}
  .recroom-page:not(.room-ready) #main{width:calc(100% - 32px);margin-top:18px}
  .object-target{padding:7px 12px;min-width:106px;font-size:10px;min-height:44px}
  .object-status{font-size:9px}
  #room-back{top:12px;left:12px;font-size:11px;padding:9px 12px}
}
@media(max-width:360px){
  .recroom-page .club-marquee{padding:10px 13px;gap:9px;min-height:94px}
  .recroom-page .club-marquee .wordmark{font-size:22px}
  .recroom-page .club-marquee .masthead-end{gap:7px}
  .recroom-page #music-volume{width:50px}
  .recroom-page .club-marquee .masthead-end .text-button{padding-inline:7px}
  .object-target{min-width:95px;font-size:9px;padding-inline:10px}
}
@media(prefers-reduced-motion:reduce){.object-target{transition:none}}

/* The 3D desk fits the viewport in landscape too; only viewer panes scroll. */

/* The objects themselves are the controls; no floating nameplates. */
.room-ready .object-target{display:block;min-width:0;max-width:none;min-height:0;padding:0;transform:none;border:0;border-radius:6px;background:transparent;box-shadow:none;color:transparent;transition:none;pointer-events:auto;touch-action:manipulation}
.room-ready .object-target:before,.room-ready .object-target:after{display:none}
.room-ready .object-target:hover,.room-ready .object-target.is-hovered,.room-ready .object-target:active{margin:0;background:transparent;box-shadow:none}
.room-ready .object-target:focus-visible{outline:3px solid #ffe3a4;outline-offset:5px;clip-path:none!important;background:#ffe8c314;box-shadow:0 0 15px #ffc87d66}
#scene-grain{position:absolute;inset:0;z-index:4;pointer-events:none;background-repeat:repeat;opacity:.065;mix-blend-mode:soft-light}
#tabletop-scene:after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;background:radial-gradient(ellipse at 50% 40%,transparent 45%,#110a106b 100%)}

/* Native editing and accessibility only; every visible mark is a model texture. */
#surface-layer{position:fixed;left:0;top:110px;width:1px;height:1px;overflow:clip;opacity:0;pointer-events:none;z-index:-1}
.surface-panel{position:absolute!important;left:0!important;top:0!important;transform:none!important;opacity:0!important;pointer-events:none!important}
.surface-panel *{pointer-events:none!important}
.texture-room.texture-editing{overflow:hidden}
.texture-room.texture-editing .site-shell{height:var(--keyboard-height);min-height:0}
.texture-room.texture-editing #main{flex:1 1 0;height:auto;min-height:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.room-ready #music-panel-controls{display:none}
#music-panel-controls{padding:22px;margin:20px 0;border:2px solid #66523a;border-radius:14px;background:#dfcba4;color:#423321;text-align:center;box-shadow:0 5px 0 #372a1e}
#music-panel-controls #music-toggle{min-width:170px;min-height:76px;border:3px solid #754b37;border-radius:20px;background:linear-gradient(#e9a282,#be684c);box-shadow:inset 0 3px #fff4,0 7px #7b4938;color:#fff1d0;font:700 22px var(--mono)}
#music-panel-controls #music-toggle[aria-pressed="true"]{background:linear-gradient(#efd48b,#d99c58);color:#4b3b28}
#music-panel-controls #music-toggle:active{transform:translateY(4px);box-shadow:inset 0 3px #fff4,0 3px #7b4938}
#music-panel-controls #music-feedback{margin-top:18px}


/* Controls live in material maps in the room and stay usable without WebGL. */
.room-ready #detail-music #music-panel-controls{display:block}
.synth-console{padding:24px;background:#264442;color:#f7eac9;border:10px solid #725039;border-radius:12px;box-shadow:0 6px #35271f;margin-block:24px}
.synth-choices,.synth-utility,.track-controls{display:flex;align-items:center;gap:12px;justify-content:center;margin:12px 0}
.synth-console button,.track-controls button{min-width:44px;min-height:44px;background:#e6d7b6;border:2px solid #998366;border-radius:5px;color:#302b22}
.synth-console label{display:flex;flex-direction:column;gap:6px;font-size:13px}
.synth-console input[type=range]{width:100%;min-height:44px;max-width:150px;touch-action:none}
.synth-knobs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.synth-utility{flex-wrap:wrap}.synth-utility label{flex:1;min-width:80px}.synth-utility output{font:700 15px monospace;min-width:25px}
#synth-keys{position:relative;display:flex;height:150px;touch-action:none;margin:18px 0 0;isolation:isolate}
#synth-keys button{touch-action:none;user-select:none;-webkit-user-select:none;border-radius:0 0 5px 5px;font-size:11px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:10px}
#synth-keys .white-key{flex:1;min-width:0;background:linear-gradient(#ddd3b7,#fff5dc 75%,#d0c5a9);height:100%;border:1px solid #86795e;color:#615946}
#synth-keys .black-key{position:absolute;z-index:1;min-width:0;width:7.5%;height:62%;background:linear-gradient(#2c2c2a,#151719 82%,#494a46);border:1px solid #080b0b;color:#e4d7b8}
#synth-keys [data-synth-note="1"]{left:8.75%}#synth-keys [data-synth-note="3"]{left:21.25%}#synth-keys [data-synth-note="6"]{left:46.25%}#synth-keys [data-synth-note="8"]{left:58.75%}#synth-keys [data-synth-note="10"]{left:71.25%}
#synth-keys button[aria-pressed=true]{filter:brightness(.72);padding-top:7px}
#detail-music #music-volume{display:block;width:min(350px,100%);margin:0 auto;min-height:44px}
#detail-music #music-track{font:700 16px monospace;width:245px;max-width:60%}
#synth-feedback{font:13px monospace;color:#ffc6ac}

/* Playing the instrument must never summon mobile text selection or Copy. */
#room-canvas,#object-targets,#object-targets *,#detail-synth,#detail-synth *{
  -webkit-user-select:none;user-select:none;-webkit-touch-callout:none;
}

/* Only reveal the page after the 3D desk is built. */
.room-loading{overflow:hidden}
.room-loading #main{opacity:0;visibility:hidden;pointer-events:none}

.room-unavailable{overflow:hidden}
.room-error{position:fixed;inset:0;z-index:2000;background:#271b14;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:24px;color:#eadbc0;text-align:center;font:16px/1.5 var(--mono)}
.room-error button,.room-error a{min-height:44px;padding:10px 22px;border:1px solid #b7a282;border-radius:4px;background:#3b2b20;color:#f7e7c7;font:inherit}
.room-error button:hover,.room-error a:hover{background:#513a28}

/* The webcam can fill the viewport while sharing its protected live feed. */
#webcam-fullscreen{position:fixed;inset:0;z-index:1000;width:100%;height:100%;height:100dvh;display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:#000;color:#d1edb5;font:14px/1.4 var(--mono);overflow:hidden}
#webcam-fullscreen[hidden]{display:none}
.webcam-fullscreen-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}
.webcam-fullscreen-toolbar>div{min-width:0}
#webcam-fullscreen-title{font:700 16px/1.4 var(--mono);margin:0}
#webcam-fullscreen-status{margin:2px 0 0;color:#a8c49c;font-size:12px}
#webcam-fullscreen-exit,#webcam-fullscreen-start{flex-shrink:0;min-height:48px;padding:10px 14px;border:1px solid #9fcd8e;border-radius:4px;background:#17291c;color:#d1edb5;font:700 13px/1.4 var(--mono);cursor:pointer;touch-action:manipulation}
#webcam-fullscreen-exit:hover,#webcam-fullscreen-start:hover{background:#24432b}
#webcam-fullscreen-exit:focus-visible,#webcam-fullscreen-start:focus-visible{outline:3px solid #d1edb5;outline-offset:3px}
#webcam-fullscreen-exit span{font-size:22px;vertical-align:middle;margin-left:8px}
#webcam-fullscreen-picture{position:relative;min-width:0;min-height:0;display:grid;place-items:center;text-align:center}
#webcam-fullscreen-picture canvas,#webcam-fullscreen-picture video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000}
#webcam-fullscreen-picture [hidden]{display:none}
#webcam-fullscreen-message{padding:20px;color:#a8c49c}

/* Completed motion clips stay behind the same site session as the live camera. */
#webcam-recordings{position:fixed;inset:0;z-index:1001;width:100%;height:100%;height:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:12px;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#07100b;color:#d1edb5;font:14px/1.45 var(--mono);overflow:hidden}
#webcam-recordings[hidden],#webcam-recordings [hidden]{display:none}
.webcam-recordings-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;min-width:0}
.webcam-recordings-toolbar>div:first-child{min-width:0}
#webcam-recordings h2{margin:0;font:700 20px/1.3 var(--mono)}
#webcam-recordings h3{margin:0 0 12px;font:700 15px/1.4 var(--mono)}
#webcam-recordings-state{margin:5px 0 0;color:#a8c49c;font-size:12px}
.webcam-recordings-actions{display:flex;gap:8px;flex-shrink:0}
#webcam-recordings button{min-height:48px;padding:10px 14px;border:1px solid #749768;border-radius:4px;background:#17291c;color:#d1edb5;font:700 13px/1.4 var(--mono);cursor:pointer;touch-action:manipulation;box-shadow:none;text-align:left}
#webcam-recordings button:hover{background:#24432b}
#webcam-recordings button:focus-visible,#webcam-recording-video:focus-visible{outline:3px solid #d1edb5;outline-offset:3px}
#webcam-recordings button:disabled{cursor:wait;opacity:.6}
#webcam-recordings-close span{font-size:20px;vertical-align:middle;margin-left:4px}
#webcam-recordings-feedback,#webcam-recording-feedback{margin:0;color:#d9c98a;font-size:12px}
.webcam-recordings-layout{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:24px;min-height:0;min-width:0}
.webcam-recordings-library{overflow:auto;min-height:0;padding:2px 5px 8px 2px;scrollbar-color:#749768 #07100b;scrollbar-width:thin}
#webcam-recordings-count{color:#a8c49c;font-size:12px;font-weight:400}
#webcam-recordings-empty{color:#a8c49c;margin:0;font-size:13px}
#webcam-recordings-list{display:grid;gap:8px;list-style:none;margin:0;padding:0}
#webcam-recordings-list button{width:100%;display:block}
#webcam-recordings-list button[aria-pressed=true]{border-color:#d1edb5;background:#24432b}
#webcam-recordings-swipe-help{margin:-5px 0 12px;color:#a8c49c;font-size:12px}
#webcam-recordings-list li{position:relative;overflow:hidden;border-radius:4px;isolation:isolate}
.recording-row-front{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) 44px;border:1px solid #749768;border-radius:4px;background:#17291c;transition:transform .18s ease;touch-action:pan-y}
#webcam-recordings-list .recording-select,#webcam-recordings-list .recording-reveal{border:0;border-radius:0;background:#17291c;touch-action:pan-y;user-select:none;-webkit-user-select:none}
#webcam-recordings-list .recording-select{min-width:0;overflow:hidden}
#webcam-recordings-list .recording-select[aria-pressed=true]{background:#24432b}
#webcam-recordings-list .recording-reveal{padding:8px;text-align:center;font-size:23px;line-height:1}
#webcam-recordings-list .recording-delete{position:absolute;z-index:0;inset:0 0 0 auto;width:88px;border:1px solid #e8a69c;border-radius:0 4px 4px 0;background:#9f302a;color:#fff2e9;text-align:center;pointer-events:none}
#webcam-recordings-list .is-revealed .recording-row-front{transform:translateX(-88px)}
#webcam-recordings-list .is-revealed .recording-delete{pointer-events:auto}
#webcam-recordings-list .recording-delete:hover{background:#b23a32}
#webcam-recordings-list .is-dragging .recording-row-front{transition:none}
.webcam-recordings-notices{min-width:0}
.webcam-recordings-notices:has(#webcam-recordings-feedback:empty):has(#webcam-recordings-undo-bar[hidden]){display:none}
#webcam-recordings:has(.webcam-recordings-notices:has(#webcam-recordings-feedback:empty):has(#webcam-recordings-undo-bar[hidden])){grid-template-rows:auto minmax(0,1fr)}
.webcam-library-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
#webcam-recordings .webcam-library-heading h3{margin:0}
#webcam-recordings .webcam-library-heading button{min-height:44px;padding:8px 12px}
#webcam-recordings-days{display:none}
.webcam-alerts{margin-top:16px;border-top:1px solid #284430}
#webcam-recordings summary{padding:12px 2px;min-height:44px;cursor:pointer;font-weight:700;touch-action:manipulation}
#webcam-recordings summary:focus-visible{outline:3px solid #d1edb5;outline-offset:2px}
.webcam-alerts-content{display:grid;gap:12px;padding:0 0 12px}
.webcam-alerts-controls{display:flex;gap:8px;flex-wrap:wrap}
#webcam-recordings .webcam-alerts button{padding:8px 12px;font-size:12px;min-height:44px}
#webcam-alerts-status{flex:1 1 220px;margin:0;color:#a8c49c;font-size:12px}
#webcam-recordings-undo-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 10px;margin-top:6px;border:1px solid #749768;border-radius:4px;background:#17291c;font-size:13px}
#webcam-recordings #webcam-recordings-undo{flex-shrink:0;padding:8px 12px;text-align:center}
@media(prefers-reduced-motion:reduce){.recording-row-front{transition:none}}
.recording-date,.recording-meta{display:block}
.recording-date{font-size:13px}
.recording-meta{margin-top:4px;font-size:12px;font-weight:400;color:#a8c49c}
#webcam-recordings-more{margin-top:12px;width:100%;text-align:center}
.webcam-recording-player{min-width:0;min-height:0;overflow:auto}
.webcam-recording-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
#webcam-recordings .webcam-recording-heading h3{margin:0;min-width:0}
#webcam-recording-download{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 12px;border:1px solid #749768;border-radius:4px;background:#17291c;color:#d1edb5;font:700 13px/1.4 var(--mono);text-decoration:none;touch-action:manipulation}
#webcam-recording-download:hover{background:#24432b}
#webcam-recording-download:focus-visible{outline:3px solid #d1edb5;outline-offset:3px}
#webcam-recording-title{overflow-wrap:anywhere}
#webcam-recording-details{margin:-5px 0 10px;color:#a8c49c;font-size:12px}
#webcam-video-versions{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
#webcam-recordings #webcam-video-versions button{flex:1 1 auto;min-height:44px;padding:8px 12px;text-align:center;font-size:12px}
#webcam-recordings #webcam-video-versions button[aria-pressed=true]{background:#24432b;border-color:#d1edb5}
#webcam-highlights-note{margin:-6px 0 12px;color:#a8c49c;font-size:12px}
#webcam-recording-video{display:block;width:100%;max-height:calc(100dvh - 210px);aspect-ratio:16/9;object-fit:contain;background:#000;border:1px solid #284430;border-radius:4px}
#webcam-recording-placeholder{display:grid;place-items:center;min-height:180px;aspect-ratio:16/9;padding:24px;border:1px solid #284430;border-radius:4px;background:#030705;color:#a8c49c;text-align:center}
#webcam-recording-feedback{margin-top:10px}
#webcam-day-update{width:100%;margin:0 0 12px;color:#f3df9a;border-color:#a9985e}
#webcam-day-index{margin-top:10px;border-top:1px solid #284430}
.webcam-index-help{margin:0 0 10px;color:#a8c49c;font-size:12px}
#webcam-day-index h4{margin:0 0 6px;font:700 14px/1.4 var(--mono)}
#webcam-day-time{margin:10px 0 0;color:#d9c98a;font-size:12px}
#webcam-day-chapters{display:grid;gap:6px;list-style:none;margin:0;padding:0}
#webcam-recordings #webcam-day-chapters button{display:block;width:100%;padding:8px 10px;min-height:50px;font-size:12px}
#webcam-day-chapters button span{display:block}
#webcam-day-chapters button span+span{margin-top:3px;color:#a8c49c;font-weight:400}
#webcam-recordings #webcam-day-chapters .highlight-source{margin-top:4px;min-height:40px;padding:6px 10px;background:#0d1a10;color:#a8c49c}
#webcam-recordings #webcam-day-chapters button[aria-current=true]{border-color:#d1edb5;background:#24432b}
#webcam-day-chapters-more{margin-top:8px;width:100%}
.clip-index-row{position:relative;isolation:isolate;overflow:hidden;border-radius:4px}
.clip-row-front{position:relative;z-index:1;background:#07100b;transition:transform .18s ease;touch-action:pan-y}
.clip-row-controls{display:grid;grid-template-columns:minmax(0,1fr) 44px}
.clip-index-row.is-finalized .clip-row-controls{grid-template-columns:minmax(0,1fr)}
#webcam-recordings #webcam-day-chapters .clip-seek{min-width:0;text-align:left;border-radius:4px 0 0 4px;touch-action:pan-y;user-select:none;-webkit-user-select:none}
#webcam-recordings #webcam-day-chapters .is-finalized .clip-seek{border-radius:4px}
#webcam-recordings #webcam-day-chapters .clip-reveal{width:44px;padding:8px;text-align:center;font-size:23px;line-height:1;border-left:0;border-radius:0 4px 4px 0;touch-action:pan-y;user-select:none;-webkit-user-select:none}
#webcam-recordings #webcam-day-chapters .clip-delete{position:absolute;z-index:0;inset:0 0 0 auto;width:88px;height:100%;border:1px solid #e8a69c;border-radius:0 4px 4px 0;background:#9f302a;color:#fff2e9;text-align:center;pointer-events:none}
.clip-index-row.is-revealed .clip-row-front{transform:translateX(-88px)}
#webcam-recordings #webcam-day-chapters .is-revealed .clip-delete{pointer-events:auto}
#webcam-recordings #webcam-day-chapters .clip-delete:hover{background:#b23a32}
.clip-index-row.is-dragging .clip-row-front{transition:none}
@media(prefers-reduced-motion:reduce){.clip-row-front{transition:none}}
#webcam-fullscreen-start{min-width:44px;min-height:44px;flex-shrink:0;padding:8px 12px}
#webcam-fullscreen-start:disabled{cursor:wait;opacity:.6}
@media(max-width:700px){
  #webcam-recordings{gap:10px;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
  #webcam-recordings h2{font-size:18px}
  .webcam-recordings-toolbar{align-items:flex-start;gap:10px}
  .webcam-recordings-actions{gap:6px}
  .webcam-alerts{gap:6px;padding:8px}
  .webcam-alerts-controls{width:100%;gap:6px}
  #webcam-recordings .webcam-alerts button{flex:1 1 auto;text-align:center;padding:8px}
  #webcam-recordings .webcam-recordings-actions button{padding:9px 10px;font-size:12px}
  .webcam-recordings-layout{display:block;min-height:0;overflow:hidden}
  .webcam-recording-player,.webcam-recordings-library{height:100%;overflow:auto;padding:2px 4px 16px 2px;overscroll-behavior:contain}
  #webcam-recordings[data-pane="player"] .webcam-recordings-library,#webcam-recordings[data-pane="library"] .webcam-recording-player{display:none}
  #webcam-recordings #webcam-recordings-days:not([hidden]){display:block}
  #webcam-recording-video{max-height:50dvh}
  .webcam-recording-heading{align-items:center}
  #webcam-recordings .webcam-recording-heading h3{font-size:14px}
  #webcam-recording-placeholder{min-height:100px;max-height:25dvh}
}

/* A consistent exit stays available while a desk object is focused. */
#room-back{position:fixed;left:max(12px,env(safe-area-inset-left));top:max(12px,env(safe-area-inset-top));z-index:900;display:none;min-height:44px}
body.room-ready.object-focused #room-back:not([hidden]){display:flex}
#room-back:focus-visible{outline:3px solid #ffe3a4;outline-offset:3px}

#webcam-recordings #webcam-recordings-refresh{width:44px;min-width:44px;padding:8px;text-align:center;font-size:22px;font-weight:400}

/* Keep installed-app saves inside a cancellable page; never navigate to an MP4. */
#webcam-download-panel{min-height:0;overflow:auto;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:flex-start;gap:16px;padding:4px 2px 20px}
#webcam-recordings #webcam-download-panel h3{font-size:20px;margin:8px 0 0}
#webcam-download-name{overflow-wrap:anywhere;color:#a8c49c}
#webcam-download-status{max-width:46em;line-height:1.65}
#webcam-download-progress{width:min(100%,420px);height:14px;accent-color:#a4d58b}
#webcam-recordings #webcam-download-save{background:#d1edb5;color:#07100b}
#webcam-download-link{width:min(100%,560px);font-size:16px;padding:12px}
