/* Shared royal system. Only transform/opacity animate; no canvas or animation loop. */
body{isolation:isolate}.kingdom-atmosphere{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 10% 60%,#5b1b7922,transparent 45%),radial-gradient(ellipse at 90% 30%,#632f8c1a,transparent 45%)}.kingdom-atmosphere i{position:absolute;left:var(--x);top:var(--y);width:2px;height:2px;background:#e6c47c;border-radius:50%;box-shadow:0 0 6px #e6c47c55;opacity:.18;animation:kingdomBreath var(--duration) ease-in-out infinite;animation-delay:var(--delay)}.kingdom-atmosphere i:nth-child(3n){background:#bd8de0;box-shadow:0 0 7px #a661d944}.kingdom-atmosphere i:nth-child(4n){animation-name:kingdomDrift}.kingdom-sleeping .kingdom-atmosphere i{animation-play-state:paused}@keyframes kingdomBreath{50%{opacity:.48;transform:scale(1.25)}}@keyframes kingdomDrift{50%{opacity:.4;transform:translate(9px,-14px)}to{transform:translate(0,0)}}
/* Home: 390→270 (-31%); 350→245 (-30%), with room imagery kept visible. */
.kingdom-map{gap:18px;margin:24px auto}.kingdom-place,.place-hall,.place-gallery{min-height:270px;padding:24px 28px}.kingdom-place h3{font-size:28px;margin:10px 0 7px}.kingdom-place p{margin-bottom:14px;font-size:13px}.kingdom-place:after{background:linear-gradient(0deg,#0b0511fa,#130a1acc 34%,#160b2305 85%)}.royal-ribbon{gap:18px;margin-top:18px}.royal-ribbon a.personal-room{min-height:245px;padding:22px}.personal-room h3{font-size:23px;margin:10px 0}.personal-room p{margin-bottom:13px}.royal-ribbon .place-enter{padding-top:12px}.royal-section-title{font-size:36px}.royal-bottom{min-height:355px;margin-top:38px;padding:33px 25px;gap:16px}.royal-bottom h2{font-size:40px;margin:14px 0}.royal-bottom p{margin-bottom:19px}.invitation-seal{width:46px;height:46px;font-size:26px}.royal-home>section:nth-of-type(2)>.royal-kicker{margin-top:30px!important}.royal-home{padding-bottom:42px;background:radial-gradient(ellipse at 50% 80%,#31104344,transparent 60%)}
/* All room routes use HTML scenes instead of the original page images. */
#page-frame,#link-note,#disclaimer,#toolbar,#mobileNav,body>footer{display:none!important}#kingdom-room[hidden]{display:none}.royal-header{padding:14px 3%;gap:18px}.royal-header nav{gap:2px}.royal-header nav a{font-size:12px;padding:10px 9px}.royal-utilities{display:flex;gap:5px;align-items:center;justify-content:center}.royal-utilities button{margin:0!important}.royal-header{flex-wrap:wrap;justify-content:space-between}.royal-header nav{flex:1;justify-content:flex-end}.kingdom-interior #kingdom-room{max-width:1450px;margin:0 auto 40px;padding:0 3%}.room-hero{position:relative;isolation:isolate;min-height:330px;display:flex;align-items:end;padding:34px 38px;border:1px solid #ba925655;border-top:0;overflow:hidden;background:#130b1b}.room-hero:before{content:'';position:absolute;inset:0;z-index:-2;background-image:var(--room-image);background-size:200% 200%;background-position:var(--room-position)}.room-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#090611eb,#0e0718aa 43%,#0e071822 80%),linear-gradient(0deg,#0e0718c9,transparent 70%)}.room-heading{max-width:760px}.room-back{font-size:12px;color:#dbc18a;text-underline-offset:4px}.room-hero .royal-kicker{font-size:10px;margin:23px 0 12px}.room-hero h1{font:normal clamp(30px,4vw,52px)/1.12 Georgia;color:#f5dca4;margin:0 0 14px;text-shadow:0 3px 20px #000}.room-hero p:last-child{max-width:560px;color:#e0d1e7;line-height:1.7;font-size:14px;margin:0}.kingdom-interior #workspace{margin:18px 0;padding:20px 24px;border:3px double #95744288;border-radius:3px;background:linear-gradient(135deg,#27122ae8,#100a17ef);box-shadow:0 7px 25px #0005}.kingdom-interior #workspace h2{font-size:24px;margin:0 0 8px}.kingdom-interior #workspace p{font-size:12px}.kingdom-interior .work-user{border:1px solid #9a774b66;border-radius:3px;padding:10px 15px;background:#150b1de6}.kingdom-interior .work-actions{margin-top:12px;gap:7px}.btn,.chip{border-radius:3px}.btn{box-shadow:0 4px 13px #0003;font-size:13px}.btn.secondary{background:linear-gradient(145deg,#4e265e,#251034);border-color:#a779b7;color:#f5e9fc}.btn:hover{filter:brightness(1.1)}.btn:disabled{filter:none}.room-data{border:1px solid #a380484d;background:linear-gradient(135deg,#1a1024eb,#100b17ed);padding:24px 28px;min-height:150px;box-shadow:0 10px 30px #0003}.room-data>h2{font:normal 27px Georgia;color:#ebcd93;margin:0 0 20px}.room-data p{font-size:14px;line-height:1.75;color:#dacde2;margin:7px 0;overflow-wrap:anywhere}.room-data small{color:#c9b5d4;font-size:12px;line-height:1.6}.room-data a{color:#efd18f}.room-entry{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 0;border-bottom:1px solid #aa83442e}.room-entry:last-child{border:0}.room-entry>div{min-width:0;flex:1}.room-entry h3,.room-photo h3,.room-badge h3{font:normal 19px Georgia;color:#f0d49b;margin:0 0 7px;overflow-wrap:anywhere}.room-entry .btn{flex-shrink:0;margin:0}.room-value{font-size:13px;color:#efd18f}.room-totals{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 24px}.room-totals>span{padding:14px 18px;background:#140b1e;border:1px solid #ad89464d;color:#ebcf95;font-size:14px}.room-totals strong{margin-left:10px}.room-data>h3{color:#f0d49b}.room-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}.room-photo{border:1px solid #a7834255;padding:12px;background:#0f0916}.room-photo img{width:100%;height:180px;object-fit:contain;background:#09060d;margin-bottom:13px}.room-badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.room-badge{border:1px solid #9b7a4d55;padding:20px;text-align:center;background:#140b1c}.room-badge>span{display:block;font-size:37px;color:#ab8cb7;margin-bottom:13px}.room-badge.obtained{border-color:#d1a654}.room-badge.obtained>span{color:#f7d48b;text-shadow:0 0 15px #c4924f55}.room-badge p{font-size:12px}.room-data .bar{max-width:600px}.room-data .bar i{max-width:100%}.room-live{border-left:2px solid #aa8b50;padding:0 16px}.panel{border-radius:4px;border:3px double #bc965b;background:linear-gradient(145deg,#281331,#100b19 60%);box-shadow:0 20px 80px #000b}.panel h2{font-weight:normal}.panel p,.panel li{font-size:14px}.panel input,.panel textarea,.panel select{border-radius:3px;border-color:#81558f}.list-item{border-radius:3px;border-color:#946d4544}.panel .field{font-size:13px;line-height:1.6}.panel .muted{font-size:12px;color:#c4b3ce}body[data-room=admin] .room-hero{min-height:235px}body[data-room=admin] .room-data{background:#140e1cf5}body[data-room=admin] .room-entry{padding:13px 0}body[data-room=admin] .panel{width:min(960px,100%)}.royal-footer{display:block!important}
@media(max-width:1250px){.royal-header{justify-content:center}.royal-header nav{justify-content:center;flex-basis:100%}.royal-utilities{margin-left:8px}.royal-brand{font-size:19px}}@media(max-width:800px){.kingdom-place,.place-hall,.place-gallery{min-height:285px;padding:24px}.kingdom-place h3{font-size:27px}.royal-ribbon a.personal-room{min-height:265px;padding:24px}.personal-room h3{font-size:26px}.kingdom-map,.royal-ribbon{gap:15px}.royal-section-title{font-size:30px}.royal-bottom{padding:30px 22px;min-height:350px}.royal-bottom h2{font-size:33px}.royal-bottom p{font-size:13px}.kingdom-interior #kingdom-room{padding:0 4%;margin-bottom:25px}.room-hero{min-height:285px;padding:27px 23px}.room-hero:after{background:linear-gradient(90deg,#090611db,#0e071890),linear-gradient(0deg,#0e0718db,transparent 85%)}.room-hero h1{font-size:34px}.room-heading{width:100%}.room-data{padding:20px}.room-entry{flex-direction:column;align-items:stretch;gap:12px}.room-entry .btn{align-self:flex-start}.room-badges{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.room-badge{padding:14px 10px}.room-badge h3{font-size:17px}.kingdom-interior #workspace{padding:18px}.kingdom-interior .work-user{width:100%}.royal-header nav a{font-size:11px;padding:9px 8px}.royal-utilities{flex-basis:100%;margin-top:10px;margin-left:0}.kingdom-atmosphere i:nth-child(n+13){display:none}.room-totals>span{flex:1;min-width:110px}.panel{padding:20px 16px}.list-item{flex-wrap:wrap}.room-photos{grid-template-columns:1fr}.room-photo img{height:auto;max-height:350px}body[data-room=admin] .room-hero{min-height:220px}}@media(prefers-reduced-motion:reduce){.kingdom-atmosphere i{animation:none;opacity:.22}.kingdom-atmosphere i:nth-child(4n){display:none}}
.auth-royal-scene{height:110px;border:1px solid #a8814e;margin-bottom:16px;background:url('assets/royal-personal-v3.png') left top/200% 200%}
/* Crop the unchanged atlas through native SVG viewports: no stretched artwork. */
.kingdom-place:before,.personal-room:before,.royal-bottom:before,.room-hero:before{display:none}.room-art,.invitation-art{position:absolute;inset:0;width:100%;height:100%;z-index:-2;pointer-events:none;overflow:hidden}.kingdom-place>.room-art,.personal-room>.room-art{inset:7px;width:calc(100% - 14px);height:calc(100% - 14px);transition:transform .7s ease}.kingdom-place:hover>.room-art,.kingdom-place:focus-visible>.room-art,.personal-room:hover>.room-art,.personal-room:focus-visible>.room-art{transform:scale(1.035)}.room-hero>.room-art{opacity:.95}.invitation-art{opacity:.85}@media(prefers-reduced-motion:reduce){.kingdom-place>.room-art,.personal-room>.room-art{transition:none}.kingdom-place:hover>.room-art,.personal-room:hover>.room-art{transform:none}}
.kingdom-nav-toggle{display:none}@media(max-width:800px){.royal-header{gap:12px;padding:12px 15px}.royal-header .royal-brand{font-size:17px;gap:12px}.royal-header .brand-crest{width:39px;height:45px;font-size:27px}.kingdom-nav-toggle{display:block;width:100%;background:linear-gradient(#2c1635,#170c21);border:1px solid #a17c44;color:#efd496;padding:10px;font:12px system-ui;letter-spacing:.04em;cursor:pointer}.royal-header nav{flex-basis:100%;gap:3px}.royal-header nav>a{display:none}.royal-header.nav-expanded nav>a{display:block;padding:11px 9px}.royal-header .royal-utilities{margin-top:0;gap:5px}.royal-header.nav-expanded .royal-utilities{margin-top:12px}.royal-header .royal-utilities button{font-size:10px;padding:9px 11px}}
.royal-footer nav{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;margin-bottom:18px}.royal-footer a{color:#d6bb83;text-decoration:none;font-size:12px;letter-spacing:.04em}.royal-footer a:hover,.royal-footer a:focus-visible{color:#ffe8ae;text-decoration:underline;text-underline-offset:5px}
@media(max-width:380px){.royal-hero h1{font-size:35px;line-height:1.1;letter-spacing:-.02em}.royal-hero{padding-top:340px;min-height:790px}.royal-copy{font-size:14px}.royal-actions .royal-link{padding:13px 17px;font-size:13px}.royal-header .royal-brand{font-size:16px}.room-hero h1{font-size:30px}.room-badges{grid-template-columns:1fr}}
.kingdom-sleeping .hero-atmosphere i,.kingdom-sleeping .royal-hero-scene,.kingdom-sleeping .royal-spark,.kingdom-sleeping .gate-aura{animation-play-state:paused}
