/* Moonlit Garden: a single illustrated world, from ritual to keepsake. */
.moonlit-icon { display:inline-block; width:20px; height:20px; vertical-align:middle; flex-shrink:0; }
.moonlit-inline { display:inline; }
.tab-icon-wrap .moonlit-icon { width:25px; height:25px; }
.game-root { isolation:isolate; }
.game-root:before { content:''; position:fixed; inset:0; background:linear-gradient(180deg,#102526b8,#102526ed),url('../assets/moonlit/moonlit-garden.webp') center/cover; pointer-events:none; z-index:-1; }
#three-global-bg-container { opacity:.12; }
.reading-panel { background:linear-gradient(160deg,#1a3130eb,#122725f2); }
.hand-card-item img { filter:none; }
.tcg-holo-rainbow,.tcg-holo-glare { display:none!important; }
.card-foil-ur-anim,.card-foil-ssr-gold,.card-foil-sr-crystal { animation:none!important; background:#18302e!important; border-color:#a9977055!important; box-shadow:none!important; }
.tcg-badge-ur,.tcg-badge-ssr,#inspect-card-rarity { background:#d8c49d!important; color:#24352f!important; text-shadow:none!important; box-shadow:none!important; font-weight:500; }
#binder-cards-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:22px 16px; padding:4px 2px 28px; }
.moonlit-collection-card { display:block; padding:0 0 12px; min-width:0; text-align:left; background:transparent; border:0; border-radius:10px; color:#eee8d8; transition:transform .2s; }
.moonlit-collection-card:not(:disabled):hover { transform:translateY(-4px); }
.moonlit-collection-card:focus-visible { outline:2px solid #d8c49d; outline-offset:5px; }
.collection-art { position:relative; aspect-ratio:2/3; overflow:hidden; border-radius:8px; background:#102526; border:1px solid #d8c49d45; box-shadow:0 8px 20px #0003; }
.collection-art img { width:100%; height:100%; object-fit:contain; }
.collection-rarity { position:absolute; right:8px; top:8px; background:#102526dc; border:1px solid #d8c49d60; color:#d8c49d; padding:2px 7px; border-radius:20px; font-size:9px; letter-spacing:1px; }
.collection-name { display:block; margin:10px 2px 3px; font-family:'Pridi',serif; font-size:14px; line-height:1.6; }
.collection-caption { display:block; color:#97afa5; font-size:10px; margin:0 2px; line-height:1.6; }
.is-locked .collection-art img { opacity:.65; }
.collection-lock { position:absolute; bottom:8px; left:50%; transform:translateX(-50%); background:#102526e8; border-radius:20px; padding:4px 10px; white-space:nowrap; font-size:10px; color:#dfd2b8; }
.collection-lock .moonlit-icon { width:12px; height:12px; margin-right:3px; }
.binder-filter-btn { background:transparent!important; border:1px solid #d8c49d30!important; color:#aabfb1!important; box-shadow:none!important; font-weight:400!important; }
.binder-filter-btn.active { background:#d8c49d!important; color:#24352f!important; }
.summon-portal-circle { background:transparent!important; box-shadow:none!important; }
.summon-rune-ring { opacity:.3; animation-duration:90s!important; }
#summon-portal-trigger>div:last-child,#esiimsi-cylinder-wrap>div:first-child { width:200px; height:300px; border:1px solid #c8b48155; border-radius:100px 100px 12px 12px; background:#102526; box-shadow:0 15px 50px #0003; }
#summon-portal-trigger img,#esiimsi-cylinder-wrap img { object-fit:contain; }
#esiimsi-cylinder-wrap .bg-gradient-to-t { display:none; }
#esiimsi-ejected-stick { background:#d8c49d; border-color:#f1e6ca; box-shadow:0 4px 18px #0003; }
#holo-inspect-modal { overflow-y:auto; background:#091c1dec; padding:26px 16px; }
#holo-inspect-modal>.relative { margin:auto; }
#holo-inspect-modal .tcg-card-container { width:min(290px,66vw); height:auto; margin:8px 0; }
#inspect-holo-card { padding:0; border:1px solid #c8b48155; border-radius:10px; background:#102526; overflow:hidden; box-shadow:0 16px 40px #0004; gap:0; }
#inspect-holo-card>div:first-of-type:not(.tcg-holo-rainbow),#inspect-holo-card>div:last-child { display:none; }
#inspect-holo-card>div:nth-child(3) { display:none; }
#inspect-holo-card>div:nth-child(4) { height:auto; aspect-ratio:2/3; border:0; margin:0; border-radius:0; }
#inspect-card-img { object-fit:contain; }
#inspect-holo-card>div:nth-child(5) { border:0; border-top:1px solid #c8b48140; border-radius:0; background:#18302e; padding:14px; }
#inspect-card-desc { font-size:12px; line-height:1.7; color:#c0cec1; }
#inspect-card-title { font-size:18px; font-weight:400; color:#eee8d8; padding:0 16px; }
#inspect-card-type { font-size:9px; letter-spacing:2px; color:#bba984; }
#holo-inspect-modal .text-slate-400.mt-2 { display:none; }
#gacha-multi-modal { overflow-y:auto; background:#102526f5; }
#gacha-multi-grid img { object-fit:contain!important; height:140px!important; }
@media(max-width:640px) {
 #binder-cards-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 14px; }
 .collection-name { font-size:13px; }
 #holo-inspect-modal .tcg-card-container { width:min(260px,63vw); }
 #summon-portal-trigger>div:last-child,#esiimsi-cylinder-wrap>div:first-child { width:180px; height:270px; }
}
@media(max-height:740px) and (min-width:641px) { #holo-inspect-modal .tcg-card-container { width:230px; } }
.runic-slot.has-card { border-radius:8px; overflow:visible; border-color:#c8b48180; padding:0; background:#102526; }
.runic-slot.has-card .deployed-art { width:100%; height:100%; object-fit:contain; border-radius:8px; margin:0; border:0; }
.runic-slot.has-card .deployed-caption { position:absolute; inset:auto 0 0; width:100%; padding:6px 2px; font:11px 'Cormorant Garamond',serif; color:#eee8d8; background:#102526e0; border:0; border-radius:0 0 8px 8px; cursor:pointer; }
.deployed-caption span { display:block; font:8px 'Sarabun',sans-serif; color:#b8c7b8; margin-top:2px; }
#sanctuary-breathing-orb { background:radial-gradient(circle,#d8c49d60,#81a49240 50%,#50796810 72%); opacity:.8; filter:blur(5px); border:1px solid #d8c49d40; }
#gacha-multi-grid { grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; width:min(100%,850px); }
#gacha-multi-grid>.tcg-holo-card { background:#18302e; border-color:#c8b48150; gap:8px; padding:8px; color:#eee8d8; }
#gacha-multi-grid .bg-purple-700 { background:#bca77f; color:#102526; }
#gacha-multi-grid>button>div:nth-child(2)>span:first-child { display:none; }
@media(max-width:640px) { #gacha-multi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.summon-portal-circle { width:310px; height:330px; flex-shrink:0; }
.summon-rune-ring { inset:8px; }
.slot-symbol { font-family:serif; font-size:38px; font-weight:400; color:#c8b481; opacity:.85; }
#scene-summon>div.flex-1 { gap:15px; }
@media(max-width:640px) { .summon-portal-circle { width:285px; height:295px; } }
#inspect-card-skill,#wallpaper-modal h3 { color:#d8c49d; font-weight:400; }
#wallpaper-modal { background:#091c1dec; }
#wallpaper-modal img { object-fit:contain; }
#wallpaper-modal .w-56.h-96 { height:auto; aspect-ratio:9/16; border:1px solid #c8b48170; box-shadow:none; }
#quests-list>div { background:#17302cd9; border-color:#d8c49d25; }
#quests-list .text-amber-400,#quests-list .text-amber-300 { color:#d8c49d; }
.moonlit-collection-card { align-self:start; }
#binder-mastery-bar { background:linear-gradient(90deg,#819d86,#d8c49d)!important; box-shadow:none; }
#gacha-multi-modal h3 { color:#eee8d8; font-size:20px; font-weight:400; }
#gacha-multi-modal>div:first-child>span { color:#d8c49d; font-size:10px; letter-spacing:2px; }
#gacha-multi-grid img { height:auto!important; aspect-ratio:2/3; border:0; }
#gacha-multi-grid>button>div:last-child>div:first-child { font-size:12px; font-weight:400; line-height:1.6; }
#gacha-multi-grid>button>div:last-child>div:last-child { display:none; }

.moonlit-collection-card:disabled { cursor:default; transform:none; }

/* Locked album entries are inert, including touch highlight and legacy effects. */
.moonlit-collection-card:disabled, .moonlit-collection-card:disabled:hover, .moonlit-collection-card:disabled:active { pointer-events:none; transform:none; box-shadow:none; transition:none; animation:none; -webkit-tap-highlight-color:transparent; }
