/* Elaris: the original dreamlike palace art, with clear contemporary controls.
   Illustrated objects remain transparent hit areas; only their labels are styled. */
:root{--palace-ink:#473842;--palace-accent:#80516b;--palace-tint:#f6e4ec;--palace-paper:#fffaf7;--palace-line:#d8b7bb;--palace-metal:#b9915c;--ink:#473842;--panel:#fffbf8f5;--line:#e3cbd4;--rose:#b97796;--lav:#80516b;--ref-shadow:0 8px 28px #39243f25;--ref-radius:15px}
body[data-palace-theme=self],#hub,#room,#chronicle{--palace-ink:#513448;--palace-accent:#844c6c;--palace-tint:#f7e2ed;--palace-paper:#fff9fa;--palace-line:#d6b3c3;--palace-metal:#b88f68}
body[data-palace-theme=future],#future{--palace-ink:#294e53;--palace-accent:#316970;--palace-tint:#e0f0ef;--palace-paper:#f9fcfa;--palace-line:#a7c8c6;--palace-metal:#b99560}
body[data-palace-theme=mind],#mind{--palace-ink:#294943;--palace-accent:#376a60;--palace-tint:#e3efea;--palace-paper:#f9fcf8;--palace-line:#b1c9c0;--palace-metal:#b5a274}
body[data-palace-theme=home],#myPalace,#mpSettings,#mpIntroduction{--palace-ink:#54384e;--palace-accent:#875976;--palace-tint:#f3e0ee;--palace-paper:#fff9fc;--palace-line:#d3b6cd;--palace-metal:#b48c67}
body[data-palace-theme=creation],#creation,.cr-dialog{--palace-ink:#314b59;--palace-accent:#366779;--palace-tint:#e3eef2;--palace-paper:#f9fcfd;--palace-line:#afc7d0;--palace-metal:#b3915f;--cink:#314b59;--cgold:#b3915f;--cblue:#e3eef2}
html,body{background:#c4c8d7;color:var(--palace-ink)}
button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #315f71!important;outline-offset:4px!important}
button:disabled{cursor:not-allowed}
/* One compact navigation bar; the scene carries the atmosphere. */
#elarisNavigation{top:max(12px,env(safe-area-inset-top));left:22px;right:22px;gap:9px}
#elarisNavigation button{border:1px solid #ffefdfc9!important;background:#fffaf4ed!important;color:#503b4c!important;border-radius:14px;box-shadow:0 4px 18px #35203918;backdrop-filter:blur(14px);font-size:14px;min-height:44px;transition:background .2s,box-shadow .2s}
#elarisNavigation button:hover:not(:disabled){background:#fff!important;box-shadow:0 5px 20px #35203932}
#elarisNavigation #journeyHome{font:20px var(--serif)!important;letter-spacing:.15em;background:#fffaf4e8!important;border-radius:18px;padding:10px 18px}
#elarisNavigation #journeyHome span{font:13px var(--sans);letter-spacing:0}
#elarisNavigation #journeyMember{background:#754860!important;border-color:#8a5b72!important;color:#fff!important;padding:10px 19px!important;font-size:14px!important}
#journeyLocation{background:#4e3d52c9;color:#fff7ef;border:1px solid #ffead359;font-size:14px;border-radius:12px;max-width:28vw;backdrop-filter:blur(12px)}
#realm.realm-world-menu{background:#b8c5d5}
#realm.realm-world-menu::before{opacity:.9;filter:blur(22px)}
#realm .realm-world-viewport{inset:0}
#realm .realm-world-caption{top:auto;bottom:77px;font:14px/1.4 var(--sans);color:#fff;text-shadow:0 2px 12px #2f253a;background:#3c32449e;border:1px solid #fff6;border-radius:20px;padding:8px 16px;white-space:nowrap}
#realm.realm-world-menu .realm-destination{clip-path:none;border-radius:20px}
#realm.realm-world-menu .realm-destination:before{border-radius:24px}
#realm.realm-world-menu .realm-destination-label{min-width:140px;max-width:235px;border:1px solid #fff0d2;border-radius:15px;background:#fff9f4f2;box-shadow:0 5px 25px #37243e2b;backdrop-filter:blur(12px);padding:11px 19px;gap:5px;white-space:normal;color:#4d3547}
#realm .realm-destination-label strong{font:400 clamp(21px,1.7vw,28px)/1.1 var(--serif);color:#4d3547}
#realm .realm-destination-label small{font:14px/1.3 var(--sans);color:#725c6e}
#realm.realm-world-menu .realm-destination:hover .realm-destination-label{background:#fffaf8;box-shadow:0 8px 32px #38243c40;border-color:#c299ac}
#realm .realm-world-controls{bottom:20px;background:#fffaf3eb;border-color:#ffebce;border-radius:16px;padding:5px 10px;box-shadow:var(--ref-shadow)}
#realm .realm-world-controls button{border-radius:10px;color:#573e50;min-height:44px}
#realm .realm-map-hint{color:#725b6b}
/* Entry captions leave room for architecture and never cover the doors. */
.world-title,.world-caption,.self-hall-title,.self-room-caption,#mind .room-tale,.mp-title,.cr-intro{background:#fff9f4eb!important;border:1px solid #fff0d8!important;border-radius:18px!important;box-shadow:var(--ref-shadow);color:var(--palace-ink)!important;text-shadow:none!important;backdrop-filter:blur(12px);padding:19px 24px!important}
.world-title h1,.world-caption h1,.self-hall-title h1,.self-room-caption h1,#mind .room-tale h1,.mp-title h1,.cr-intro h1{font-family:var(--serif);font-weight:400;letter-spacing:-.025em;line-height:1.1!important;color:var(--palace-ink)!important}
.world-title p,.world-caption p,.self-hall-title p,.self-room-caption>p,.palace-eyebrow,.mp-eyebrow{color:var(--palace-accent)!important;font-size:14px!important;letter-spacing:normal!important}
#hub .self-hall-title{top:90px!important;left:32px!important;transform:none!important;text-align:left;max-width:400px}
#hub .self-hall-title h1{font-size:32px!important}
#hub .palace-purpose,#mind .palace-purpose{font-size:14px!important;line-height:1.5;max-width:36ch}
#hub .door-caption{top:107%;min-width:140px;max-width:190px;padding:11px 13px;border:1px solid #fff0d7;border-radius:14px;background:#fff8f3f2;box-shadow:var(--ref-shadow);text-shadow:none}
#hub .door-caption b{font-size:22px;color:#573c4f;line-height:1.15}
#hub .door-caption small{font:14px/1.4 var(--sans);color:#765d6d;margin-top:5px}
.self-door:hover .door-caption,.self-door:focus-visible .door-caption{background:#fffdfb;border-color:#bd8fa7}
.self-room-caption{max-width:380px;bottom:30px!important;left:28px!important}
.self-room-caption h1{font-size:34px!important}
.self-room-caption>span{font-size:15px!important;line-height:1.5}
.world-object>span,.self-world-object>span:last-child,.desk-hit span,.cr-spot span{border:1px solid #ffeacb!important;background:#fff9f4f0!important;color:var(--palace-ink)!important;border-radius:14px!important;box-shadow:0 5px 24px #3b254331!important;backdrop-filter:blur(12px);padding:11px 17px!important;font:400 21px/1.2 var(--serif)!important;max-width:250px;white-space:normal!important;text-shadow:none!important}
.world-object small,.self-world-object small,.desk-hit small,.cr-spot small{color:var(--palace-accent)!important;font:14px/1.35 var(--sans)!important;margin-top:5px!important}
.world-object:hover>span,.self-world-object:hover>span:last-child,.desk-hit:hover span,.cr-spot:hover span{background:#fffefd!important;border-color:var(--palace-metal)!important;box-shadow:0 7px 27px #3b254345!important}
.object-glint{width:11px;height:11px;background:#fff5cc;border-color:#fff9e8;box-shadow:0 0 0 5px #fff3,0 0 24px #ffe5a2}
.self-glass,.self-skip,.self-resume,.world-look,.self-pan-controls,.mp-pill,.cr-btn{border-radius:13px!important;background:#fffaf4ed!important;border-color:#e4ccb9!important;color:var(--palace-ink)!important;font-size:14px!important;min-height:44px;box-shadow:0 4px 18px #3623381f!important}
/* Quiet paper and strong action buttons across every writing/control surface. */
.btn,.fbtn,.cr-btn,.mp-pill,.rose-button,.duration-chip,.attune-chip,.sound-actions button,.memory-actions button,.focus-actions button,.future-side button,.future-modal button,.modal-card button,.quick-card button,.em-dialog button,.em-dialog a.em-button,.ux-palace-links button{border-radius:13px!important;font-size:14px!important;min-height:44px;line-height:1.4;transition:background .18s,border-color .18s,box-shadow .18s}
.btn.primary,.fbtn.primary,.begin-focus,.cr-btn.cr-primary,#myPalace .mp-pill.primary,#mpIntroduction .mp-pill.primary,#mpSettings .mp-pill.primary,.em-dialog .em-primary,.em-dialog a.em-primary,#room.self-palace .self-writing-page .btn.primary{background:var(--palace-accent)!important;border:1px solid var(--palace-accent)!important;color:#fff!important;box-shadow:0 4px 14px #4020391c!important;border-radius:13px!important}
.btn.secondary,.fbtn:not(.primary),.duration-chip,.attune-chip,.sound-actions button,.memory-actions button,.focus-actions button{background:var(--palace-paper)!important;color:var(--palace-ink)!important;border:1px solid var(--palace-line)!important}
.duration-chip.active,.attune-chip.active,.chip.selected,.signal-chip.active{background:var(--palace-tint)!important;border-color:var(--palace-accent)!important;color:var(--palace-ink)!important}
.btn:hover,.fbtn:hover,.cr-btn:hover,.mp-pill:hover,.em-dialog button:hover,.em-dialog a.em-button:hover{filter:brightness(1.035);box-shadow:0 4px 18px #40203929!important}
.self-writing-page .actions button,.self-writing-page .signal-chip,.self-writing-page .chip{font-size:14px!important;min-height:42px!important}
#room.self-palace .freewrite-title{font-size:28px!important;color:#654354!important}
#room.self-palace textarea{font-size:16px!important;line-height:1.8!important;color:#493846!important}
#room .self-page-note,#room .self-page-note h2{color:#7b516b}
#room .self-page-note time{color:#806777}
#room.self-palace .self-writing-page .small,#room.self-palace .self-writing-page .mode-card p{font-size:14px!important;color:#786274!important}
#room .self-writing-page .privacy-note,#room .self-writing-page .autosave{font-size:12px!important;line-height:1.5}
#room .self-writing-page .mode-card h3{font-size:25px!important}
.future-app,.future-main,.future-side{color:var(--palace-ink)}
.future-side .fnav-btn{min-height:44px;font-size:14px}
.fcard,.intent-card,.chronicle-item,.prompt,.review-item{border-color:var(--palace-line)!important;border-radius:15px!important}
.future-modal-card,.modal-card,.quick-card,.room-card,.mp-drawer,.cr-dialog,.em-dialog,#journeyPalaceMenu{background:var(--palace-paper)!important;color:var(--palace-ink)!important;border:1px solid var(--palace-line)!important;border-radius:22px!important;box-shadow:0 20px 80px #2e23394d!important}
.em-dialog input,.em-dialog textarea,.future-modal-card input,.future-modal-card textarea,.quick-card textarea{background:#fff!important;border:1px solid var(--palace-line)!important;border-radius:11px!important;font-size:16px!important;color:var(--palace-ink)!important}
.em-plan{background:#fffefb;border-radius:17px;border-color:#e0c9d4}
.em-plan.annual{background:#eef6f5;border-color:#b5d0cf}
.em-plan.selected{border-color:#80516b;box-shadow:0 0 0 3px #80516b13}
.em-dialog .em-plan input[type=radio]{accent-color:#80516b}
.em-plan:focus-within{outline-color:#315f71}
.em-note{font-size:14px;color:#756071}
.em-sync,#journeyNotice{background:#fffaf6f5;color:#513c4c;border-color:#dec3ce;box-shadow:var(--ref-shadow)}
.ux-palace-links button{background:#fff;border-color:#e2cbd6;padding:16px 18px}
.ux-palace-links button:hover{background:#f6e8ef}
#mind .room-card{background:#f9fcf8f2!important;color:#314b43!important}
#mind .room-card p,#mind .room-card .atelier-step{font-size:14px!important;line-height:1.5}
#mind .room-card .atelier-label span,.focus-privacy{font-size:13px!important}
#mind .mind-focus-view .focus-actions button{font-size:14px!important;min-height:44px!important}
#mind .room-tale{max-width:360px}
.cr-intro h1{font-size:36px!important}.cr-intro p:not(.cr-kicker){font-size:15px;line-height:1.5}
.mp-title h1{font-size:34px!important}.mp-title p{font-size:14px!important}
.cr-spot span{font-size:20px!important}.cr-preview-bar{border-radius:13px}
@media(max-width:760px){
 #elarisNavigation{left:9px;right:9px;top:max(8px,env(safe-area-inset-top));gap:5px}
 #elarisNavigation #journeyHome{font-size:15px!important;letter-spacing:.08em;padding:9px!important}
 #elarisNavigation button,#elarisNavigation #journeyMember{font-size:13px!important;min-height:44px;padding:9px 10px!important;border-radius:12px}
 #elarisNavigation #journeyBack{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #journeyLocation,#journeyHome span{display:none!important}
 #realm .realm-world-viewport{inset:0}
 #realm .realm-world-caption{display:none}
 #realm .realm-world-controls{bottom:max(14px,env(safe-area-inset-bottom))}
 #realm .realm-map-hint{font-size:14px!important}
 #realm.realm-world-menu .realm-destination-label{min-width:140px;padding:10px 14px}
 #hub .self-hall-title{top:76px!important;left:14px!important;max-width:min(330px,calc(100vw - 28px));padding:13px 17px!important}
 #hub .self-hall-title h1,#mind .mind-garden-title h1{font-size:26px!important}
 #hub .self-hall-title p{margin-bottom:5px}
 #hub .door-caption{min-width:140px;max-width:175px}#hub .door-caption b{font-size:21px}
 .world-title,.world-caption,.self-room-caption,#mind .room-tale,.mp-title,.cr-intro{max-width:calc(100vw - 28px)!important;padding:15px 18px!important}
 .self-room-caption{left:14px!important;bottom:24px!important;max-width:280px!important}.self-room-caption h1{font-size:26px!important}
 .world-object>span,.self-world-object>span:last-child,.desk-hit span,.cr-spot span{font-size:20px!important;max-width:210px;padding:10px 14px!important}
 #room.self-palace[data-self-stage=writing] .self-writing-page{background:#fff9f4!important;border-color:#d8bbc9!important;border-radius:17px!important;padding:20px!important}
 #future[data-journey=page] .future-workspace,#future[data-journey=page] .future-app,#future[data-journey=page] .future-main{background:#f9fbf4!important}
 .em-dialog{padding:22px!important}
}
@media(prefers-reduced-motion:reduce){button,a,.realm-destination-label{transition:none!important}.object-glint{animation:none}}
/* Match the illustrated objects on the new writing desk. */
.desk-journal{left:21%;top:24%;width:59%;height:56%}
.desk-letter{left:82%;top:51%;width:17%;height:28%;transform:none}
.desk-archive{left:0;top:57%;width:19%;height:38%;transform:none}
