/* MallStars: a blue-lit little world, led by its own character. */
.maintenance-controls{margin:24px 0;padding:18px;border:1px solid var(--line);border-radius:16px;min-width:0}
.maintenance-controls legend{font-weight:750;padding:0 8px}
.maintenance-controls .check{margin:16px 0;align-items:flex-start}
.maintenance-controls textarea{width:100%;min-height:90px}
.maintenance-screen{max-width:650px;margin:20px auto;text-align:center}
.maintenance-screen>img{display:block;width:100%;height:auto;border-radius:16px;margin-bottom:24px}
.maintenance-screen h1{font-size:32px;margin-bottom:16px}
.maintenance-screen>p{line-height:1.65;overflow-wrap:anywhere}
.maintenance-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:24px}
html[data-theme="midnight"] body{background:radial-gradient(ellipse at 80% -10%,#32569155,transparent 50%),var(--bg)}
.header{gap:14px;position:relative;z-index:2}
.mascot-brand{width:65px;flex:0 0 65px;display:flex;align-items:center;justify-content:center;margin:0}
.mascot-brand img{width:65px;height:65px;object-fit:contain;filter:drop-shadow(0 2px 12px #55beff30)}
.header>.account{margin-right:auto;max-width:230px;min-width:0}
.header>.account .account-label{display:block;min-width:0}
.header>.account .account-label strong{display:block;overflow:hidden;text-overflow:ellipsis;max-width:170px;white-space:nowrap}
.header .desktop-nav{margin-left:auto;margin-right:15px}
.header-actions{margin-left:0;flex-shrink:0}
.settings-link{aspect-ratio:1;flex-shrink:0}
.header #account{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-height:48px;padding:6px 12px 6px 7px;border:1px solid var(--line);border-radius:16px;background:var(--surface);text-align:left;overflow:hidden;transition:border-color .18s,background .18s}
.header #account:hover,.header #account:focus-visible{border-color:var(--accent);background:var(--soft)}
.header #account .avatar{width:34px;height:34px;box-shadow:none;border:1px solid var(--line);background:var(--soft);color:var(--accent);font-weight:700;aspect-ratio:1}
.header #account .account-label{display:grid;gap:3px;overflow:hidden;line-height:1.25}
.header #account .account-label strong{font-size:12px;max-width:100%;letter-spacing:0}
.header #account .account-label small{font-size:10px;white-space:nowrap;letter-spacing:0;color:var(--muted)}
.spotlight-art .spotlight-mascot{width:100%;height:100%;object-fit:contain;position:relative;z-index:1;animation:mascot-sway 6s ease-in-out infinite;filter:drop-shadow(0 12px 24px #040e2935)}
.star-spotlight .spotlight-art{right:5px}
.payment-deadline{font-size:12px;color:var(--warning);margin-top:12px}
html[data-theme] .status.expired{background:var(--field);color:var(--muted)}
.spotlight-art .star-ring{opacity:.25}
html[data-theme="midnight"] .star-spotlight{background:radial-gradient(ellipse at 95% 10%,#3b68ab70,transparent 65%),linear-gradient(120deg,#203250,#203e65);border-color:#41638e}
.star-dust{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0;opacity:.45}
.shell,.bottom-nav{position:relative;z-index:1}
.star-dust i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--accent);box-shadow:0 0 9px var(--accent);left:7%;top:14%;animation:dust-float 12s ease-in-out infinite}
.star-dust i:nth-child(2){left:91%;top:24%;animation-delay:-5s;width:4px;height:4px}
.star-dust i:nth-child(3){left:4%;top:56%;animation-delay:-8s}
.star-dust i:nth-child(4){left:95%;top:72%;animation-delay:-3s}
.star-dust i:nth-child(5){left:35%;top:8%;animation-delay:-7s;width:2px;height:2px}
.star-dust i:nth-child(6){left:76%;top:90%;animation-delay:-2s}
.star-dust i:nth-child(7){left:18%;top:85%;animation-delay:-9s;width:2px;height:2px}
.star-dust i:nth-child(8){left:67%;top:47%;animation-delay:-4s}
.star-dust i:nth-child(9){left:42%;top:70%;animation-delay:-6s}
.star-dust i:nth-child(10){left:83%;top:8%;animation-delay:-11s}
.star-dust i:nth-child(11){left:53%;top:35%;animation-delay:-1s;width:2px;height:2px}
.star-dust i:nth-child(12){left:25%;top:45%;animation-delay:-10s}
.ref-mascot{width:160px;height:160px;object-fit:contain;position:absolute;right:20px;top:25px;opacity:.9}
@keyframes dust-float{0%,100%{transform:translate3d(0,0,0);opacity:.25}50%{transform:translate3d(9px,-24px,0);opacity:.8}}
@keyframes mascot-sway{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@media(max-width:700px){
 .header{display:grid;grid-template-columns:46px minmax(0,1fr) 44px!important}
 .header #account{width:100%;max-width:230px;min-width:0;margin:0;box-sizing:border-box}
 .header .mascot-brand,.header .mascot-brand img{width:46px}
 .header{height:82px;gap:10px;padding:8px 0}
 .mascot-brand,.mascot-brand img{width:51px;height:58px;flex-basis:51px}
 .header>.account{padding:5px 9px 5px 5px;max-width:calc(100% - 116px);border-radius:16px;gap:9px}
 .header>.account .account-label strong{font-size:11px;max-width:150px}
 .header>.account .account-label small{font-size:9px}
 .header>.account .avatar{width:31px;height:31px;font-size:12px;flex-shrink:0}
 .header .settings-link{width:44px;height:44px;min-width:44px;min-height:44px;border-radius:13px}
 .spotlight-art{width:155px;right:-8px;top:24px}
 .spotlight-art .spotlight-mascot{width:170px;height:195px}
 .spotlight-copy{position:relative;z-index:2;max-width:65%}
 .spotlight-copy h2{font-size:25px}
 .spotlight-copy p{max-width:170px}
 html[data-theme] .bottom-nav{position:fixed;left:16px;right:16px;bottom:calc(12px + max(env(safe-area-inset-bottom,0px),var(--tg-safe-area-inset-bottom,0px)));display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:7px;border:1px solid var(--line);border-radius:25px;background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 9px 35px #0004;backdrop-filter:blur(20px);z-index:20}
 html[data-theme] .bottom-nav a{min-width:0;min-height:49px;padding:7px 8px;border-radius:19px;gap:4px;font-size:10px;line-height:1.2;transition:background .2s,color .2s}
 html[data-theme] .bottom-nav a.active{background:var(--soft);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 25%,transparent)}
 .bottom-nav a svg{width:22px;height:22px;stroke-width:1.8}
 .footer{margin-bottom:110px}
 .ref-mascot{width:110px;height:110px;right:0;top:10px;opacity:.65}
}
@media(prefers-reduced-motion:reduce){.star-dust{display:none}.spotlight-art .spotlight-mascot{animation:none}.bottom-nav a{transition:none}}
.legal-document{max-width:800px;margin:0 auto;line-height:1.7;overflow-wrap:anywhere}
.legal-document>.back{display:block;margin-bottom:28px}
.legal-document h1{font-size:clamp(26px,5vw,40px);line-height:1.15;margin:12px 0 32px}
.legal-document section{margin:26px 0}
.legal-document h2{font-size:18px;margin:0 0 8px}
.legal-document p{margin:0;color:var(--muted)}
.legal-links{margin-top:20px}.legal-links svg{width:22px;height:22px;flex-shrink:0}
