/* The 2026 room's entirely local paywall joke. */
#room-wall { width:min(580px,calc(100% - 28px)); max-height:90svh; padding:0; border:1px solid #111; border-radius:12px; background:#fff; color:#151515; box-shadow:0 24px 100px #0004; font:16px/1.5 Arial,sans-serif; text-align:left; }
#room-wall::backdrop { background:#ffffffe8; }
#room-wall * { box-sizing:border-box; }
#room-wall header { display:flex; justify-content:space-between; align-items:center; padding:14px 22px; border-bottom:1px solid #ddd; }
#room-wall header strong { font-size:16px; letter-spacing:0; }
#room-wall button,#room-wall input { font:inherit; }
#room-wall button { cursor:pointer; }
#room-wall .wall-stage { padding:24px; }
#room-wall h2 { margin:0 0 14px; color:#111; font:700 clamp(24px,5vw,34px)/1.15 Arial,sans-serif; letter-spacing:-.025em; }
#room-wall p { margin:12px 0; font-size:16px; }
#room-wall .wall-meta { color:#555; font-size:14px; }
#room-wall .wall-main { width:100%; min-height:48px; padding:10px 14px; margin:16px 0 0; background:#111; color:#fff; border:1px solid #111; border-radius:6px; }
#room-wall .wall-link { min-height:44px; padding:9px 0; border:0; background:transparent; color:#333; text-decoration:underline; }
#room-wall .wall-code { display:block; width:100%; margin:10px 0; padding:12px; border:1px solid #666; border-radius:4px; background:#fff; color:#111; letter-spacing:.7em; font:24px/1.3 monospace; }
#room-wall .wall-field { display:block; padding:10px 12px; border:1px solid #bbb; border-radius:4px; background:#fafafa; margin:5px 0 12px; color:#555; }
#room-wall .wall-popup { position:relative; border:1px solid #777; padding:12px 40px 12px 12px; margin:10px 0; background:#fff; box-shadow:4px 4px 0 #ddd; }
#room-wall .wall-dismiss { position:absolute; right:3px; top:3px; width:34px; height:34px; background:#fff; color:#111; border:0; font-size:24px; }
#room-wall .wall-price { font-size:38px; font-weight:bold; }
#room-wall .wall-price small { font-size:16px; font-weight:normal; }
#room-wall details { margin:10px 0; }
#room-wall summary { cursor:pointer; text-decoration:underline; }
#room-wall .wall-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px; margin:16px 0; }
#room-wall .wall-tile { min-height:94px; padding:9px; border:2px solid #bbb; background:#fff; color:#222; border-radius:0; line-height:1.25; font-size:14px; overflow-wrap:anywhere; }
#room-wall .wall-tile[aria-pressed="true"] { color:#fff; background:#202020; border-color:#202020; }
#room-wall .wall-progress { font:14px/1.4 monospace; color:#555; }
#room-wall footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 22px; border-top:1px solid #ddd; }
#room-wall footer a { display:inline-block; color:#555!important; font:14px/1.5 monospace; min-height:28px; padding:4px 0; }
#room-wall footer button {border:0;background:none;color:#333;font:14px/1.5 Arial,sans-serif;text-decoration:underline;text-align:right;padding:8px 0;min-height:44px}
#room-wall :focus-visible { outline:3px solid #075ba7; outline-offset:3px; }
#room-wall-feedback { min-height:1.5em; color:#922!important; }
body[data-room-wall="true"] #room .room-illustration { filter:blur(9px); }
.open-web-lament { display:none; padding:14px 0; color:#111; background:#fff; font:16px/1.6 Georgia,serif; }
body[data-year="2026"] .open-web-lament:not([hidden]) { display:block; }
.open-web-lament a { color:#111!important; text-decoration:underline!important; }
@media(max-width:420px) { #room-wall .wall-stage { padding:18px; } #room-wall .wall-tile { min-height:88px; font-size:14px; } }
