.monthly-calendar{box-sizing:border-box;position:relative;isolation:isolate;overflow:hidden;color:#dbe6ff;background:radial-gradient(ellipse at 95% 0,#64489c44,transparent 65%),linear-gradient(#111c39e8,#0b152bf5),url(/art/starlight_stage/starlight_dressing_stage_v1.webp) center/cover;border:1px solid #a3aee85c;border-radius:20px;padding:8px 10px 12px;box-shadow:inset 0 1px #e4ddff15,0 8px 28px #0004;font:14px/1.4 system-ui,sans-serif}.monthly-calendar:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle at 19px 15px,#e3d8ff99 1px,transparent 1.5px),radial-gradient(circle at 84px 49px,#f9d88880 .8px,transparent 1.3px);background-size:131px 137px,157px 113px;opacity:.38}.monthly-calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:0 2px 4px;border-bottom:1px solid #b4a5d936}.monthly-calendar-heading strong{font-size:17px;color:#f8dfac;letter-spacing:.04em;text-shadow:0 0 15px #dfbb7340}.monthly-calendar-heading strong:before{content:"✦";color:#b5c5ff;font-size:12px;margin-right:8px}.monthly-calendar .monthly-calendar-heading button{min-width:44px;min-height:44px;padding:0;border:0;background:transparent;color:#bcd4ff;font:28px/1 system-ui;cursor:pointer;border-radius:12px}.monthly-calendar-heading button:disabled{opacity:.3;cursor:default}.monthly-calendar button:focus-visible,.monthly-calendar-heading strong:focus-visible{outline:2px solid #b1ddff;outline-offset:-3px;border-radius:10px}.monthly-calendar table{width:100%;table-layout:fixed;border-spacing:3px 4px;text-align:center}.monthly-calendar th{height:28px;font-size:11px;font-weight:600;color:#bac8e1;overflow-wrap:anywhere}.monthly-calendar td{height:44px;border:1px solid transparent;border-radius:10px;padding:4px 0 2px;vertical-align:middle}.monthly-calendar time{display:block;font-size:14px;font-weight:650;font-variant-numeric:tabular-nums}.monthly-calendar .calendar-mark{display:block;font-size:12px;height:16px;line-height:16px}.monthly-calendar .claimed{background:linear-gradient(145deg,#59452966,#342c3d88);border-color:#e1bc7755;color:#f3d79e}.monthly-calendar .claimed .calendar-mark{text-shadow:0 0 8px #ffe3a677}.monthly-calendar .available{background:linear-gradient(145deg,#45558eaa,#383468bb);border-color:#abaaf394;color:#eef2ff;box-shadow:inset 0 0 12px #a99bff15}.monthly-calendar .available .calendar-mark{color:#bceaff;text-shadow:0 0 8px #8de0ff88}.monthly-calendar .future{background:#1c2b4766;border-color:#7992be24;color:#a9b9d3}.monthly-calendar .outside{color:#8290ae;opacity:.55}.monthly-calendar .today{outline:2px solid #edc87f;outline-offset:-1px;box-shadow:0 0 12px #e4b95a25,inset 0 0 14px #f5ce8020}.calendar-legend{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:8px 0 7px;font-size:11px}.monthly-calendar .calendar-legend span{background:none;border:0;box-shadow:none}.calendar-reset{display:block;text-align:center;color:#a4b3cf;font-size:10px;line-height:1.5}@media (max-width:350px){.monthly-calendar{padding:6px}.monthly-calendar td{height:39px}.monthly-calendar table{border-spacing:2px 3px}.calendar-legend{gap:8px}}.star-shop-dialog{box-sizing:border-box;width:min(440px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;margin:auto;overflow:auto;color:#edf1ff;border:1px solid #b5a4e080;border-radius:26px;background:radial-gradient(ellipse at 85% 0%,#5d41936b,transparent 55%),linear-gradient(160deg,#15233cef,#100f28f7),url(/art/starlight_stage/starlight_dressing_stage_v1.webp) center / cover;box-shadow:0 0 0 5px #9993ed0a,0 0 42px #8c77e630,0 24px 80px #0009;font:16px/1.6 system-ui,sans-serif}.star-shop-dialog:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.28;background-image:radial-gradient(circle at 17px 23px,#d6eaff 1px,transparent 1.5px),radial-gradient(circle at 59px 71px,#ffe2a0 .7px,transparent 1.3px);background-size:107px 127px,151px 163px}.star-shop-dialog::backdrop{background:#030916aa;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.star-shop-dialog form{position:relative;padding:24px;margin:0;text-align:center}.star-shop-crest{position:relative;width:96px;height:80px;margin:0 auto 12px;background:radial-gradient(ellipse,#bba5ff38,transparent 70%)}.star-shop-crest:before,.star-shop-crest:after{content:"✦";position:absolute;color:#ffe7a9;font-size:17px;left:0;top:8px}.star-shop-crest:after{left:auto;right:0;top:46px;font-size:12px}.star-shop-crest img{width:80px;height:80px;object-fit:contain}.star-shop-dialog h2{margin:0 0 12px;color:#f5ebff;font-size:25px;line-height:1.35;overflow-wrap:anywhere}.star-shop-dialog p{margin:16px 0 24px;color:#c6d2e8;white-space:pre-line;overflow-wrap:anywhere}.star-shop-price{color:#ffe39a;font-size:27px;font-weight:700;font-variant-numeric:tabular-nums}.star-shop-actions{display:flex;gap:12px}.star-shop-dialog .star-shop-actions button{flex:1;min-width:0;min-height:48px;padding:12px 10px;border-radius:14px;font:inherit;font-weight:650;cursor:pointer}.star-shop-dialog .star-shop-secondary{color:#d8e1f5;border:1px solid #8094c255;background:#202a4566}.star-shop-dialog .star-shop-primary{color:#30233d;border:1px solid #ffe9bd;background:linear-gradient(135deg,#ffedba,#e1c190);box-shadow:0 3px 18px #f5d88b20}.star-shop-dialog button:focus-visible{outline:3px solid #a9edff;outline-offset:3px}@media (max-height: 480px){.star-shop-dialog form{position:relative;padding:16px 24px}.star-shop-crest{height:48px;margin-bottom:4px}.star-shop-crest img{width:48px;height:48px}.star-shop-dialog p{margin:12px 0}}
