*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#080b08;color:#e5d6ae;font-family:Georgia,serif}button{font:inherit}button:disabled{opacity:.35}#hud{position:fixed;z-index:20;top:0;left:0;right:0;height:108px;padding-top:env(safe-area-inset-top);display:flex;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#111611 80%,transparent);pointer-events:none}#hud>*{pointer-events:auto}#hud small,.eyebrow,#directory small,.modalSmall{font:8px Arial;letter-spacing:2px;color:#99917e}#hud h1{margin:2px;color:#d5b766;font-size:21px;letter-spacing:2px}#hud span{font:8px Arial;letter-spacing:1.4px;color:#828879}#hud button,#dirClose,#modalClose{position:absolute;width:40px;height:40px;border-radius:50%;border:1px solid #725f36;background:#10150f;color:#d0b264;font-size:21px}#back{left:12px}#crown{right:12px;font-size:16px}#stage{min-height:100vh;padding:125px 14px 35px;background:radial-gradient(circle at 50% 20%,#384133,#111811 55%,#060806);overflow:hidden}.room{max-width:850px;margin:auto;text-align:center}.room h2{color:#d7ba6d;letter-spacing:2px;margin:5px}.room>p{font:10px/1.5 Arial;color:#9b9f90}.hero{margin:18px auto;padding:24px 14px;border:1px solid #665633;background:linear-gradient(145deg,#1c281d,#0c120d);box-shadow:0 15px 30px #0008,inset 0 0 35px #0006}.hero .icon{font-size:54px}.hero h3{margin:7px;color:#d0b064}.hero p{font:10px Arial;color:#96998c}.action{border:1px solid #796438;background:#18251a;color:#d8bd76;padding:12px 14px;font:9px Arial;letter-spacing:1px;margin:4px}.doors,.objects,.portraits,.years,.recordCats,.shameGrid{display:grid;gap:8px;margin:15px auto}.doors{grid-template-columns:repeat(2,1fr)}.objects{grid-template-columns:repeat(2,1fr)}.doors button,.objects button,.portraits button,.recordCats button,.shameGrid button{min-height:92px;border:1px solid #5d5135;background:linear-gradient(#1a2119,#101510);color:#d0bb82;padding:12px}.doors b,.objects b,.portraits b,.recordCats b,.shameGrid b{display:block;color:#d2b464;font-size:11px}.doors span,.objects span,.portraits span,.recordCats span,.shameGrid span{display:block;font:7px/1.4 Arial;color:#888c7f;margin-top:5px}.portraits{grid-template-columns:repeat(3,1fr);overflow-x:auto}.portraits button{min-width:100px}.portraitIcon{font-size:30px;display:block;margin-bottom:5px}.years{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px calc(50% - 45px)}.years button{flex:0 0 90px;scroll-snap-align:center;border:1px solid #5f5234;background:#111710;color:#cdb36e;padding:13px 5px}.book{max-width:580px;margin:18px auto;background:linear-gradient(100deg,#d2c197,#eee0bb,#c8b58a);color:#30281c;border:6px ridge #74572f;padding:20px;text-align:left;box-shadow:0 15px 30px #0009}.book h3{color:#29412c;border-bottom:2px solid #796640;padding-bottom:6px}.book button{width:100%;border:0;border-bottom:1px solid #a08f69;background:transparent;color:#30281c;text-align:left;padding:10px 4px;font-size:11px}.book button span{float:right}.timeline{max-width:570px;margin:auto;text-align:left}.timeline button{display:block;width:100%;border:0;border-left:2px solid #9a7a3b;background:linear-gradient(90deg,#1f2a20,transparent);color:#cdb87f;padding:15px;margin:0 0 2px;text-align:left}.timeline button b{color:#d4b660}.timeline button span{display:block;font:8px Arial;color:#858a7d;margin-top:4px}.trophyGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.trophy{border:1px solid #685632;background:#151c15;padding:16px}.trophy.dim{filter:grayscale(1);opacity:.45}.trophy .cup{font-size:35px}.trophy b{display:block;color:#d2b45e}.scrap{max-width:590px;margin:auto;background:#d6c79d;color:#30291f;border:7px solid #705331;padding:18px;text-align:left;transform:rotate(-.15deg)}.scrap h3{font-size:20px;color:#3d3426}.scrap .clip{background:#eee2be;border:1px solid #9b8a65;padding:11px;margin:8px 0;box-shadow:2px 3px 4px #0004}.scrap .clip b{font-size:11px}.scrap .clip p{font:9px Arial}.draft{overflow:auto;border:4px ridge #755b32;background:#172018;padding:8px}.draft table{border-collapse:collapse;min-width:600px;width:100%;font:8px Arial}.draft th,.draft td{border:1px solid #5d543c;padding:8px}.draft th{color:#d2b561}.ledger{max-width:620px;margin:auto;background:#d6c79e;color:#342d22;border:6px ridge #705531;padding:15px;text-align:left}.ledger .entry{border-bottom:1px solid #948362;padding:12px 3px}.ledger .entry b{font-size:11px}.ledger .entry span{display:block;font:8px Arial;color:#6e634e}.rank{display:grid;grid-template-columns:28px 1fr auto;border-bottom:1px solid #a18f68;padding:9px 3px;align-items:center}.rank:first-of-type{background:#d4bd82}.rank b{font-size:12px}.rank span{font:bold 10px Arial}.galleryAxis{max-width:650px;margin:auto;padding:20px;border:1px solid #5f5236;background:linear-gradient(#1c251c,#0d110d)}.galleryAxis .champ{font-size:65px;margin:20px}.galleryAxis .history{display:flex;gap:8px;overflow:auto}.galleryAxis .history button{min-width:130px;border:1px solid #625535;background:#141a13;color:#c9b275;padding:13px}.shame{background:radial-gradient(circle,#42171b,#110b0c 60%)!important}.shameGrid{grid-template-columns:repeat(3,1fr)}.shameGrid button{border-color:#71383c;background:#160d0f}.case{max-width:590px;margin:auto;background:#c6b486;color:#2c251c;border:1px solid #756446;padding:18px;text-align:left}.case h3{font-size:22px}.red{color:#84363c;border:3px solid #84363c;width:max-content;padding:4px;transform:rotate(-2deg)}.cemetery{display:flex;gap:10px;overflow:auto;padding:20px}.stone{min-width:170px;height:220px;border-radius:80px 80px 5px 5px;border:0;background:#343531;color:#b4a275;padding:35px 10px}.collapseWeek{border-left:2px solid #833a40;background:linear-gradient(90deg,#331418,transparent);padding:13px;text-align:left;margin-left:20px}.collapseWeek b{color:#c1a05d}.hint{font:7px Arial;letter-spacing:1px;color:#81796b;margin:8px}.pill{display:inline-block;border:1px solid #6c5933;padding:4px 7px;font:7px Arial;color:#bca463;margin:2px}#modal,#directory{position:fixed;inset:0;z-index:50;background:#000d;opacity:0;pointer-events:none;transition:.25s}#modal.open,#directory.open{opacity:1;pointer-events:auto}#modal{display:flex;align-items:flex-end}#modalCard{position:relative;width:100%;max-height:82vh;overflow:auto;background:#171c16;border-top:1px solid #8b713b;border-radius:20px 20px 0 0;padding:30px 20px calc(25px + env(safe-area-inset-bottom))}#modalClose{right:14px;top:12px}#modalBody h2{color:#d2b35e}#modalBody p{font:11px/1.5 Arial;color:#aaaF9f}#modalBody .action{width:100%;margin:5px 0}#directory{background:radial-gradient(circle,#30382d,#080b08 68%);padding:70px 18px 30px;text-align:center;overflow:auto}#dirClose{right:14px;top:14px}.big{display:block;font-size:40px;color:#d1ad56}#directory h2{color:#d5b561;margin:4px}#directory p{font:9px Arial;color:#939789}#dirButtons{max-width:550px;margin:15px auto}#dirButtons button,.dirFoot button{display:block;width:100%;border:1px solid #51482f;background:#141a13;color:#d1bf91;padding:12px;text-align:left;margin:6px 0}#dirButtons button.active{border-color:#a78b46;background:#223323}.dirFoot{max-width:550px;margin:20px auto;border-top:1px solid #4b432f;padding-top:10px}.dirFoot button{text-align:center;color:#b69d62}@media(max-width:540px){.doors{grid-template-columns:1fr 1fr}.objects{grid-template-columns:1fr 1fr}.portraits{grid-template-columns:repeat(12,110px)}.shameGrid{grid-template-columns:1fr}.hero{padding:18px 10px}}
/* Supabase member entrance: museum styling above remains unchanged. */
[hidden]{display:none!important}
.auth-gate{position:fixed;inset:0;z-index:100;background:radial-gradient(circle at 50% 24%,#253326,#080b08 72%);overflow:auto;display:flex;align-items:center;justify-content:center;padding:24px}
.auth-panel{width:min(100%,410px);border:1px solid #796438;background:linear-gradient(145deg,#172319,#0a100b);padding:32px 22px;text-align:center;box-shadow:0 20px 45px #0008}
.auth-crown{font-size:44px;color:#d5b766}.auth-panel small{font:9px Arial;letter-spacing:2px;color:#a99d80}.auth-panel h1{color:#d5b766;letter-spacing:2px;font-size:25px}.auth-panel p{font:12px/1.6 Arial;color:#aaa99a}
.auth-panel form{text-align:left;margin-top:24px}.auth-panel label{display:block;margin:13px 0 6px;font:11px Arial;color:#d8bd76}
.auth-panel input{width:100%;padding:13px;border:1px solid #796438;border-radius:0;background:#0a100b;color:#fff;font:16px Arial}
.auth-panel button{width:100%;padding:14px;margin-top:20px;border:1px solid #796438;background:#18251a;color:#d8bd76;font:11px Arial;letter-spacing:1px}
.auth-panel button:disabled{opacity:.5}#authMessage{min-height:2em}

.auth-gate .auth-secondary { display:block; width:100%; margin-top:14px; background:transparent; color:#c7ad69; border:1px solid #6c5932; padding:12px; }
.auth-gate form[hidden], .auth-gate button[hidden] { display:none !important; }
.auth-gate #recoveryForm, .auth-gate #newPasswordForm { margin-top:16px; }
