:root{font-family:'Noto Sans KR',sans-serif;color:#263751;background:#eef2f9;font-size:14px}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;border:1px solid #d7dfed;background:#fff;color:#344b70;border-radius:10px;padding:10px 15px;transition:.2s}button:hover{background:#e7edfc;transform:translateY(-1px)}button:disabled{opacity:.4;cursor:default;transform:none}.primary{background:#4969a2;color:white;border:0}.primary:hover{background:#36588e}.shell{max-width:1440px;margin:auto;padding:26px 32px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}h1{font-family:Georgia,serif;font-weight:500;letter-spacing:-1px;font-size:30px;margin:4px 0}h2{font-size:19px;margin:0 0 18px}h3{font-size:15px;margin:0 0 10px}p{line-height:1.8}.eyebrow{font-size:10px;letter-spacing:3px;color:#8295b4}.muted,small{color:#8190a6}.layout{display:grid;grid-template-columns:290px 1fr;gap:22px}.card{background:#ffffffdc;border:1px solid #e0e6f0;border-radius:18px;padding:23px;box-shadow:0 8px 25px #33476605}.portrait{height:260px;background-image:url('assets/growth-concept.jpg');background-size:1020px auto;background-position:0 -110px;border-radius:12px;margin:-10px -10px 18px}.stat{margin:13px 0}.stat label{display:flex;justify-content:space-between;font-size:12px;margin-bottom:6px}.bar{height:6px;border-radius:8px;background:#edf0f7;overflow:hidden}.bar i{display:block;height:100%;background:#91a9d4;border-radius:8px}.resources{display:flex;gap:10px;flex-wrap:wrap;font-size:12px}.pill{padding:7px 11px;background:#e8edf7;border-radius:20px}.tabs{display:flex;gap:7px;margin-bottom:18px;flex-wrap:wrap}.tabs .active{background:#344f7d;color:white}.hero{padding:27px;border-radius:16px;background:linear-gradient(110deg,#dfe8f7,#f4eff7);margin-bottom:20px}.hero p{margin:7px 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.activity{padding:18px;text-align:left;min-height:135px}.activity strong{display:block;margin:10px 0 6px}.activity.selected{outline:2px solid #6d89bc;background:#edf2fc}.activity small{display:block;line-height:1.7}.row{display:flex;gap:10px;align-items:center;justify-content:space-between}.footer{margin-top:20px;padding-top:17px;border-top:1px solid #e7ebf3}.log{padding:13px 0;border-bottom:1px solid #edf0f6;line-height:1.8}.log small{display:block}.memory{background:#f3f6fb;padding:18px;border-radius:12px;line-height:1.8}.memory .icon{font-size:28px}.notice{background:#fdf4e5;color:#8a6c3a;border-radius:10px;padding:12px;margin-bottom:15px}.feed{margin:14px 0;padding:18px;background:#f4f6fb;border-radius:13px}dialog{border:1px solid #dce3f0;border-radius:20px;padding:30px;width:min(520px,92vw);color:#263751;box-shadow:0 30px 120px #24385550}dialog::backdrop{background:#1d2c4a80;backdrop-filter:blur(5px)}input{padding:12px;border:1px solid #ccd7e8;border-radius:9px;width:100%;margin:8px 0 18px}.answers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.track{height:90px;background:#edf1fa;border-radius:12px;position:relative;overflow:hidden;margin:20px 0}.track .target{position:absolute;left:75%;width:36px;height:100%;background:#b6c8e6}.note{position:absolute;top:25px;width:26px;height:40px;background:#536f9e;border-radius:8px}.big{font-size:35px;text-align:center;padding:20px}.cover{height:240px;background:url('assets/growth-concept.jpg') center 48%/cover;border-radius:12px}.ending{text-align:center;padding:28px}.help{font-size:12px;line-height:1.8;color:#7d8da6}@media(max-width:900px){.shell{padding:18px}.layout{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portrait{height:220px}.grid{grid-template-columns:repeat(2,1fr)}header{align-items:flex-start;gap:10px}h1{font-size:24px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Apartment home screen */
body{background:#cdd9e7}.game-room{height:100dvh;min-height:700px;position:relative;overflow:hidden;background:#dce5ee url('assets/apartment-room.jpg') center/cover no-repeat}.room-shade{position:absolute;inset:0;background:linear-gradient(90deg,#dbe6f522,transparent 40%,#40577815),linear-gradient(0deg,#33465e26,transparent 30%);pointer-events:none}.glass{background:linear-gradient(135deg,#f7faffed,#e9f0f8ed);border:1px solid #ffffffe0;box-shadow:0 8px 30px #2b456322,inset 0 0 0 4px #ffffff40;backdrop-filter:blur(16px)}.room-brand{position:absolute;top:24px;left:30px;display:flex;align-items:center;gap:15px;color:#3c567b;text-shadow:0 1px 8px #fff;margin:0}.room-brand>span{font-family:Georgia,serif;font-size:21px}.room-brand small{font-size:9px;letter-spacing:3px}.calendar{position:absolute;top:76px;left:30px;width:215px;border-radius:7px;text-align:center;overflow:hidden}.calendar-year{background:#526e99;color:white;padding:10px;letter-spacing:1px;font-size:12px}.calendar-main{padding:10px 10px 3px;font-family:Georgia,serif}.calendar-main>span{font-size:43px;letter-spacing:-2px}.calendar-main small{margin-left:6px}.calendar-foot{font-size:10px;padding:11px;border-top:1px solid #cfdced;color:#6a7e9a}.family-panel{position:absolute;right:28px;top:27px;width:292px;border-radius:10px;padding:20px}.profile-heading{display:flex;justify-content:space-between;align-items:center}.profile-heading small{font-size:9px;letter-spacing:2.6px;color:#8b9bb4}.profile-heading h1{font-family:inherit;font-size:26px;margin:7px 0 8px}.profile-heading h1 span{font-size:12px;font-weight:400;background:#dce6f5;padding:4px 10px;border-radius:10px;margin-left:10px}.profile-star{font-size:38px;color:#a5b6d4}.status-line{font-size:11px;color:#8190a6;padding-bottom:16px}.budget{border-top:1px solid #d2ddea;border-bottom:1px solid #d2ddea;padding:13px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px}.budget strong{font-family:Georgia,serif;font-size:25px;font-weight:400}.budget strong small{font-size:11px}.condition{display:flex;justify-content:space-between;margin:15px 0;font-size:11px}.condition b{margin-left:10px;color:#536f9e}.room-stats .stat{margin:11px 0}.room-stats label{font-size:11px}.room-stats .bar{height:5px;background:#d9e2ed}.room-stats .bar i{background:linear-gradient(90deg,#9aafd0,#647eaa)}.room-menu{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;border-top:1px solid #d2ddea;margin-top:19px;padding-top:16px}.room-menu button{background:#ffffff80;padding:10px 2px;font-size:10px;border-color:#d1ddec;border-radius:5px}.room-menu button span{display:block;font-size:21px;margin-bottom:4px;color:#6985ad}.schedule-main{width:100%;margin-top:14px;font-size:12px;padding:13px 4px;border-radius:5px;background:#536e98}.save-caption{text-align:center;color:#8d9db5;font-size:9px;margin-top:12px;letter-spacing:.5px}.character{position:absolute;bottom:88px;left:22%;height:min(78vh,760px);width:min(33vw,410px);padding:0;background:none;border:0;filter:drop-shadow(0 14px 12px #22385030)}.character:hover{background:none;transform:translateY(-3px)}.character-sprite{display:block;width:100%;height:100%;background-image:url('assets/child-sprites.png');background-size:400% 100%;background-repeat:no-repeat}.room-location{position:absolute;left:30px;bottom:173px;padding:8px 14px;border-radius:4px;background:#f3f7f9cf;color:#526f8e;font-size:12px}.room-location span{color:#8292a7}.dialogue{position:absolute;bottom:27px;left:30px;right:348px;min-height:123px;border-radius:8px;padding:32px 28px 20px}.speaker{position:absolute;left:20px;top:-14px;background:#5976a1;color:white;border:1px solid #d8e3f3;padding:7px 28px;border-radius:5px;font-size:12px}.dialogue p{font-size:15px;line-height:1.9;margin:0;padding-right:12px}.dialogue-next{position:absolute;bottom:15px;right:20px;color:#849cbe}.content-overlay{display:none;position:absolute;inset:0;background:#253c5765;backdrop-filter:blur(7px);z-index:5;padding:30px;align-items:center;justify-content:center}.content-overlay.is-open{display:flex}.content-window{width:min(940px,100%);max-height:93dvh;display:flex;flex-direction:column;background:#f0f4fa;border:1px solid #f9fbff;border-radius:14px;box-shadow:0 25px 80px #142c5545;overflow:hidden}.window-top{display:flex;justify-content:space-between;align-items:center;padding:12px 22px;border-bottom:1px solid #d7e1ef;color:#7388a7;font-size:11px;letter-spacing:1px}.window-top button{padding:4px 10px;background:transparent;border:none}.content-window>.card{overflow:auto;border:0;border-radius:0;background:#f8faff;padding:25px}.content-window .hero{padding:19px}.content-window .activity{min-height:110px}.content-window .activity strong{margin:5px 0}.content-window .footer{margin-top:14px;padding-top:14px}
@media(min-width:1500px){.family-panel{right:4vw;top:5vh;width:320px}.calendar{left:4vw;top:100px}.room-brand{left:4vw;top:40px}.dialogue{left:4vw;right:calc(4vw + 345px);bottom:4vh}.character{left:25%}.room-location{left:4vw;bottom:190px}}
@media(max-width:800px){.game-room{min-height:800px}.family-panel{right:12px;top:65px;width:230px;padding:14px}.room-brand{top:20px;left:16px}.room-brand small{display:none}.calendar{top:67px;left:15px;width:150px}.calendar-main>span{font-size:32px}.calendar-foot{font-size:8px}.character{left:2%;width:46vw;height:490px;bottom:145px}.dialogue{left:15px;right:15px;bottom:20px;min-height:110px;padding:26px 19px}.room-location{left:15px;bottom:155px}.content-overlay{padding:12px}.room-menu button{font-size:9px}.profile-heading h1{font-size:22px}.room-stats .stat{margin:9px 0}.grid{grid-template-columns:repeat(2,1fr)}}

.rebellion-line{display:flex;align-items:center;gap:8px;font-size:10px;color:#8b789c;margin-bottom:12px}.rebellion-line small{font-size:8px;margin-left:auto}.room-stats .stat{margin:9px 0}

.music-controls{position:fixed;top:25px;left:50%;transform:translateX(-50%);display:flex;gap:10px;align-items:center;z-index:4;background:#f3f7fbe8;border:1px solid #fff;border-radius:8px;padding:6px 10px;font-size:10px;color:#617b9f}.music-controls button{border:0;background:transparent;font-size:11px;padding:5px}.music-controls label{display:flex;gap:5px;align-items:center}.music-controls input{width:65px;margin:0;padding:0;accent-color:#6e8ab1}@media(max-width:800px){.music-controls{top:auto;bottom:2px;padding:0 6px}.music-controls button{font-size:9px}}
/* Art-directed home, revision 3: preserve the 384:1024 sprite cell ratio. */
.game-room{min-height:700px;background-position:center;isolation:isolate}.room-shade{background:linear-gradient(0deg,#263e5b55,transparent 37%),linear-gradient(90deg,#e9edf21a,transparent 65%,#e8eef126)}
.glass{background:linear-gradient(140deg,#f9f8f0ee,#eaf0f5e8);border:1px solid #f9fcff;box-shadow:0 8px 28px #283f581c,inset 0 0 0 3px #ffffff3b;backdrop-filter:blur(12px)}
.room-brand{top:26px;left:32px;display:block}.room-brand>span{font-family:'Nanum Myeongjo','AppleMyungjo',Georgia,serif;font-size:24px;letter-spacing:2px;color:#3e5674}.room-brand small{display:block;font-size:8px;letter-spacing:4px;margin-top:8px;color:#7186a1}
.calendar{left:32px;top:112px;width:166px;border-radius:3px;box-shadow:0 6px 25px #39557517}.calendar-year{background:transparent;color:#667c97;font-size:10px;padding:13px 5px 0;letter-spacing:1px}.calendar-main{padding:4px 5px 8px}.calendar-main>span{font-size:35px;font-weight:400;color:#405574}.calendar-main small{font-size:10px}.calendar-foot{font-size:9px;padding:9px;color:#8491a4;border-color:#cfd7df80}
.family-panel{right:28px;top:28px;width:250px;padding:18px 20px;border-radius:4px}.profile-heading small{font-size:8px;letter-spacing:2px}.profile-heading h1{font-family:'AppleMyungjo',Georgia,serif;font-size:26px;margin:9px 0}.profile-heading h1 span{font-family:system-ui;font-size:10px;padding:3px 8px;background:#dce6ed90;border-radius:3px}.profile-star{font-size:27px;color:#9aaec6}.status-line{font-size:9px;line-height:1.7;padding-bottom:12px}.budget{padding:10px 0;font-size:10px;border-color:#c7d3e17f}.budget strong{font-size:23px}.condition{font-size:10px;margin:13px 0}.rebellion-line{font-size:9px;margin:0 0 15px}.rebellion-line small{display:none}.room-stats .stat{margin:12px 0}.room-stats label{font-size:10px;letter-spacing:1px}.room-stats .bar{height:3px;background:#d4dce880}.room-stats .bar i{background:#8199b9}.schedule-main{border-radius:3px;font-size:11px;letter-spacing:.5px;background:#536e91;margin-top:16px;padding:13px 6px;box-shadow:inset 0 0 0 1px #ffffff30}.save-caption{font-size:8px;margin-top:11px}
.character{--sprite-height:min(105vh,900px);height:var(--sprite-height);width:calc(var(--sprite-height)*.375);left:calc(43% - min(105vh,900px)*.1875);bottom:110px;filter:drop-shadow(0 15px 14px #2c3b4c24);border-radius:0;z-index:1;transition:filter .2s}.character:hover{transform:none;filter:drop-shadow(0 15px 14px #2c3b4c24) brightness(1.025)}.character-sprite{background-size:400% 100%;width:100%;height:100%}
.dialogue{z-index:2;bottom:112px;left:50%;right:auto;transform:translateX(-50%);width:min(650px,calc(100vw - 360px));min-height:92px;padding:28px 29px 16px;border-radius:4px;background:linear-gradient(100deg,#f8f8f0f2,#edf3f9ee);border:1px solid #f5f8fb;box-shadow:0 6px 30px #32465e20}.dialogue p{font-size:13px;line-height:1.8;letter-spacing:.3px;color:#435773}.speaker{top:-12px;left:24px;min-width:80px;padding:5px 20px;border-radius:2px;text-align:center;font-family:'AppleMyungjo',serif;letter-spacing:2px;background:#607c9e;font-size:11px}.dialogue-next{font-size:12px;bottom:10px;right:16px}
.room-menu{position:fixed;z-index:3;bottom:25px;left:50%;transform:translateX(-50%);width:min(690px,calc(100vw - 80px));display:grid;grid-template-columns:repeat(6,1fr);gap:0;padding:0;margin:0;background:linear-gradient(130deg,#f7f8eff2,#eaf0f7ef);border:1px solid #f8fbff;border-radius:5px;box-shadow:0 7px 25px #2e456229;backdrop-filter:blur(16px)}.room-menu button{border:0;border-right:1px solid #c4d2e25e;border-radius:0;background:transparent;padding:12px 4px;font-size:10px;color:#5d7390;letter-spacing:.7px}.room-menu button:last-child{border-right:0}.room-menu button:hover{background:#dce6f080;transform:none;color:#2f4c75}.room-menu button span{font-size:20px;margin-bottom:6px;color:#6f88a9;font-family:Georgia,serif}
.room-location{bottom:35px;left:30px;background:none;color:#f8fafc;text-shadow:0 1px 7px #263952;font-size:10px;letter-spacing:1px;padding:0}.room-location span{color:#e0e7f1}.music-controls{top:auto;bottom:38px;left:auto;right:28px;transform:none;background:#f5f8f0dd;border-radius:3px;padding:3px 7px;gap:5px}.music-controls button{font-size:9px;color:#5d7592}.music-controls label{font-size:8px}.music-controls input{width:48px}
@media(min-width:1500px){.family-panel{right:40px;top:40px;width:270px;padding:23px}.room-brand{left:40px;top:40px}.calendar{left:40px;top:130px}.character{--sprite-height:min(105vh,1100px);left:calc(43% - min(105vh,1100px)*.1875);bottom:120px}.dialogue{left:48%;bottom:120px;width:710px}.room-location{left:40px;bottom:39px}.room-menu{bottom:27px;width:730px}.music-controls{right:40px;bottom:40px}}
@media(max-width:1000px){.family-panel{right:20px;top:20px;width:220px;padding:15px}.room-brand{left:22px;top:25px}.room-brand>span{font-size:20px}.calendar{left:22px;top:105px;width:145px}.character{--sprite-height:850px;left:calc(39% - 159px);bottom:110px}.dialogue{left:42%;width:calc(100vw - 290px);bottom:113px}.music-controls label{display:none}.room-location{bottom:110px;left:22px}.room-menu{width:calc(100vw - 80px);bottom:22px}.music-controls{bottom:110px;right:22px}.room-menu button{padding:10px 2px}.room-stats .stat{margin:10px 0}}
@font-face{font-family:Diphylleia;src:url('assets/fonts/Diphylleia-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.room-brand>span,.profile-heading h1,.speaker,.dialogue p,h1,h2,.scene-caption{font-family:Diphylleia,'AppleMyungjo',serif;font-weight:400}.dialogue p{font-size:15px}.room-brand>span{letter-spacing:0}.character{transform:scale(var(--child-scale,1));transform-origin:center bottom}.character:hover{transform:scale(var(--child-scale,1))}.month-playback{position:fixed;inset:0;z-index:20;background:#e9eff4;display:grid;place-items:center}.month-stage{width:100%;height:100%;position:relative;overflow:hidden;background:linear-gradient(#e4ebf3 0 68%,#cfd8df 68%);isolation:isolate}.month-heading{position:absolute;top:8%;left:10%;z-index:3}.month-heading small{font-size:12px;letter-spacing:2px;color:#7b8ea9}.month-heading h1{font-size:38px;margin-top:12px;color:#496587}.scene-window{position:absolute;width:36%;height:40%;top:18%;left:32%;background:linear-gradient(140deg,#d5e9f7,#f5fbff);border:14px solid #fafbfb;box-shadow:0 8px 30px #647b9510}.scene-window:after{content:'';position:absolute;inset:0;border-left:5px solid #fff;left:50%}.scene-floor{position:absolute;inset:68% 0 0;background:repeating-linear-gradient(0deg,#d4d7d8 0 1px,#e9e5dd 1px 58px);transform:perspective(600px) rotateX(20deg);transform-origin:top}.acting-child{position:absolute;height:min(70vh,700px);aspect-ratio:384/1024;bottom:20%;left:calc(50% - min(70vh,700px)*.1875);transform-origin:bottom center;animation:gentle-act 1.3s ease-in-out infinite;z-index:2}.activity-prop{position:absolute;left:56%;top:51%;font-size:90px;z-index:3;filter:drop-shadow(0 8px 8px #30465c22);animation:prop-act 1.3s ease-in-out infinite}.scene-spark{position:absolute;left:38%;top:30%;color:#7f9cbc;font-size:70px;animation:float-note 2s ease-out infinite}.scene-caption{position:absolute;bottom:12%;width:100%;text-align:center;font-size:22px;color:#4c6481}.month-progress{position:absolute;bottom:8%;left:30%;width:40%;height:3px;background:#bccbdb}.month-progress i{display:block;background:#607e9f;height:100%;animation:month-fill 2.6s linear forwards}.month-stage>button{position:absolute;bottom:3%;right:5%;background:transparent;border:0;font-size:11px;color:#6d82a0}.scene-dance .acting-child{animation:dance-act .65s ease-in-out infinite}.scene-study .acting-child,.scene-creative .acting-child{animation:reading-act 1.8s ease-in-out infinite}.scene-rest .acting-child{animation:gentle-act 3s ease-in-out infinite}.scene-rest{background:linear-gradient(#c5cedf 0 68%,#b8c3d3 68%)}.scene-trip{background:linear-gradient(#c2dfed 0 55%,#8fbfd3 55% 68%,#e9dfc4 68%)}.scene-trip .scene-window{display:none}.scene-trip .scene-floor{background:#ede2c7}.scene-video .activity-prop{animation:none}.scene-sns .scene-spark{color:#d599a8}@keyframes gentle-act{50%{transform:translateY(-5px) rotate(1deg)}}@keyframes dance-act{0%,100%{transform:rotate(-4deg) translateX(-12px)}50%{transform:rotate(4deg) translateX(12px) translateY(-10px)}}@keyframes reading-act{50%{transform:rotate(2deg) translateY(3px)}}@keyframes prop-act{50%{transform:translateY(-10px) rotate(-6deg)}}@keyframes float-note{0%{opacity:0;transform:translateY(15px)}45%{opacity:1}100%{opacity:0;transform:translateY(-40px)}}@keyframes month-fill{from{width:0}to{width:100%}}@media(prefers-reduced-motion:reduce){.acting-child,.activity-prop,.scene-spark{animation:none}.month-progress i{animation:none;width:100%}}
/* In-world navigation and readable type */
:root{font-size:16px}.room-menu{display:none}.family-panel{width:285px;max-height:calc(100dvh - 70px);overflow:auto;padding:22px;scrollbar-width:thin}.profile-heading h1{display:flex;align-items:center;gap:10px}.profile-heading h1>span{flex-shrink:0;margin:0;font-size:13px}.name-menu{font-family:Diphylleia,serif;font-size:34px;color:#3c526e;border:0;background:none;padding:0;letter-spacing:0}.name-menu:hover{background:none;color:#7799bf;transform:none}.name-arrow{font-family:system-ui;font-size:17px;color:#8ca1bb;margin-left:6px}.profile-heading small{font-size:10px}.status-line{font-size:12px}.budget{font-size:13px}.budget strong{font-size:27px}.budget strong small{font-size:12px}.stats-disclosure{margin-top:16px;border-bottom:1px solid #c4d1e27f}.stats-disclosure summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:12px 0 17px;font-size:15px;color:#526d91;list-style:none}.stats-disclosure summary::-webkit-details-marker{display:none}.stats-disclosure[open] .stats-arrow{transform:rotate(180deg)}.stats-arrow{transition:transform .2s}.room-stats{padding:0 0 12px}.room-stats .stat{margin:14px 0}.room-stats label{font-size:13px;letter-spacing:0;margin-bottom:8px}.room-stats label strong{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}.room-stats label small{font-size:10px;font-weight:400}.room-stats .bar{height:9px;border-radius:3px;background:#ccd9e47f;box-shadow:inset 0 1px 3px #4a637414}.room-stats .bar i{height:100%;background:linear-gradient(90deg,#8ca8c5,#b6cddd);box-shadow:0 0 10px #8cabca44;border-radius:3px;position:relative}.stats-disclosure[open] .bar i{animation:stat-reveal .65s cubic-bezier(.2,.7,.2,1) both}.room-stats .stat:nth-child(2n) i{animation-delay:.07s;background:linear-gradient(90deg,#b29fbf,#d2bfda)}.room-stats .stat:nth-child(3n) i{animation-delay:.12s;background:linear-gradient(90deg,#8eafa8,#bed5c8)}.room-stats .stat-energy i{background:linear-gradient(90deg,#82afa0,#b5d9bb)}.room-stats .stat-stress i,.room-stats .stat-rebellion i{background:linear-gradient(90deg,#c6a4ad,#dfbec3)}@keyframes stat-reveal{from{width:0}to{width:var(--value)}}.schedule-main{font-size:16px;padding:16px 5px}.save-caption{font-size:11px}.calendar{width:180px}.calendar-year{font-size:13px}.calendar-foot{font-size:11px}.calendar-main>span{font-size:43px}.calendar-main small{font-size:14px}.room-brand>span{font-size:29px}.room-brand small{font-size:10px}.home-phone{position:absolute;left:53px;top:300px;z-index:2;background:none;border:0;padding:0;display:flex;align-items:center;flex-direction:column;gap:12px;transform:rotate(-5deg);filter:drop-shadow(0 9px 9px #35465b28)}.home-phone:hover{background:none;transform:rotate(0deg) translateY(-4px)}.phone-case{position:relative;display:block;width:94px;height:161px;background:linear-gradient(140deg,#d8e9f0,#8da8c4);border:5px solid #495a71;outline:1px solid #d3dfec;border-radius:17px;padding:23px 9px 10px;box-shadow:inset 0 0 0 2px #b3c8dd}.phone-camera{position:absolute;left:50%;top:5px;transform:translateX(-50%);width:27px;height:6px;border-radius:6px;background:#495a71}.phone-time{font-family:Diphylleia,serif;display:block;color:white;font-size:20px;margin:5px 0 12px}.phone-apps{display:grid;grid-template-columns:1fr 1fr;gap:5px}.phone-apps i{font-style:normal;font-size:16px;color:#667c9c;background:#f2f4f2df;border-radius:6px;padding:2px}.phone-apps i:first-child{color:#b98196}.phone-home{position:absolute;bottom:5px;left:24px;right:24px;height:3px;border-radius:4px;background:#e6eef8}.phone-label{font-family:Diphylleia,serif;font-size:16px;color:#425d80;text-shadow:0 1px 5px #fff}.phone-label small{display:block;font-family:system-ui;font-size:10px;color:#718ba8;margin-top:3px}.dialogue{bottom:35px;min-height:105px;width:min(740px,calc(100vw - 370px));padding:32px 28px 22px}.dialogue p{font-size:19px;line-height:1.85;letter-spacing:0}.speaker{font-size:16px;padding:7px 20px;top:-18px}.character{bottom:130px}.room-location{bottom:25px;font-size:12px}.music-controls{bottom:25px}.music-controls button{font-size:12px}.music-controls label{font-size:11px}.profile-modal-head{text-align:center}.profile-modal-head small{font-size:10px;color:#91a1ba;letter-spacing:3px}.profile-modal-head h1{font-size:32px;margin-top:12px}.profile-modal-head p{font-size:13px;color:#8293aa}.profile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}.profile-actions button{font-size:15px;display:flex;align-items:center;gap:10px;padding:17px 13px;background:linear-gradient(135deg,#f7f9fc,#eaf0f6);border-radius:6px}.profile-actions button>span{font-size:22px;color:#839bbb}.profile-actions b{margin-left:auto;font-size:12px;font-weight:400;color:#9fadc1}.menu-back{display:block;margin:auto;background:transparent;border:0;color:#8193ac;font-size:14px}.save-slots{display:grid;gap:12px}.save-slots button{text-align:left;padding:17px}.save-slots small,.save-slots strong,.save-slots span{display:block}.save-slots strong{font-size:17px;margin:8px 0}.save-slots span{font-size:12px;color:#8b9bb2}.content-window{font-size:16px}.content-window h2{font-size:25px}.content-window h3{font-size:18px}.content-window .help,.content-window small{font-size:13px}.content-window .activity{font-size:16px}.window-top{font-size:13px}.content-window .activity small{font-size:12px}.content-window .activity{min-height:130px}.content-window .activity strong{margin:8px 0}
@media(min-width:1500px){.family-panel{width:300px}.home-phone{left:75px;top:330px}.dialogue{bottom:38px;left:47%;width:760px}.character{bottom:135px}}
@media(max-width:1000px){.family-panel{width:250px;padding:17px;right:18px}.home-phone{left:40px;top:295px}.dialogue{left:42%;bottom:30px;width:calc(100vw - 300px)}.dialogue p{font-size:17px}.name-menu{font-size:29px}.calendar{width:155px}.calendar-year{font-size:11px}.character{bottom:135px}.room-location{bottom:18px;font-size:10px}.music-controls{bottom:18px}}
@media(prefers-reduced-motion:reduce){.stats-disclosure[open] .bar i{animation:none}}
.album-heading{padding:8px 0 25px;border-bottom:1px solid #dce4ee;margin-bottom:25px}.album-heading h2{font-size:31px;margin:10px 0}.album-heading p{font-family:Diphylleia,serif;font-size:17px;color:#8093ad;margin:0 0 15px}.album-heading>span{font-size:12px;background:#e8eef6;border-radius:4px;padding:7px 12px;color:#68819e}.album-records{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.album-record{text-align:left;position:relative;background:#fffefa;border:1px solid #e1e5e8;border-radius:3px;padding:14px 14px 17px;box-shadow:0 5px 15px #4359700b}.album-record:nth-child(3n+2){transform:rotate(1deg)}.album-record:hover{transform:translateY(-4px);background:#fffefa;box-shadow:0 9px 22px #43597018}.record-date{font-size:11px;color:#8e9aae;display:block;margin-bottom:12px}.record-art{height:125px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;background:linear-gradient(135deg,#edf3f8,#f3eeea);border:1px solid #e6ebf0;margin-bottom:17px}.record-art>span{font-size:39px}.record-art small{letter-spacing:2px;font-size:10px!important;color:#9eacbd}.album-record h3{font-family:Diphylleia,serif;font-size:21px!important;line-height:1.5;color:#48617f}.album-record p{font-size:13px;line-height:1.9;color:#7c8ca3}.record-open{display:block;margin-top:15px;padding-top:12px;border-top:1px dashed #d5dfea;color:#8a9eb7;font-size:11px}.monthly-album{margin-top:35px;border-top:1px solid #dce4ee;padding-top:24px}.monthly-album>h3{font-family:Diphylleia,serif;font-size:23px}.month-record{border-left:2px solid #d6e2ee;margin:20px 0;padding:0 0 0 17px}.month-record>span{font-size:13px;color:#6c85a5}.month-record p{font-size:14px;margin:8px 0}.month-record small{font-size:12px;color:#90a0b7}.album-empty{padding:55px;text-align:center;line-height:2;color:#8b9db5}.memory-detail{text-align:center}.memory-detail>small{color:#8a9ab0;font-size:12px}.memory-emblem{font-size:55px;padding:23px}.memory-detail>h1{font-size:29px}.memory-detail>p{font-family:Diphylleia,serif;font-size:18px;line-height:2;color:#6c809c}.memory-snapshot{background:#edf2f8;border-radius:6px;padding:20px;margin:22px 0;text-align:left;display:flex;flex-wrap:wrap;gap:12px}.memory-snapshot h3{width:100%;font-size:13px;color:#8496af}.memory-snapshot span{font-size:12px;width:calc(33% - 8px);color:#6d829e}.memory-snapshot b{color:#49658a;margin-left:6px}@media(max-width:900px){.album-records{grid-template-columns:repeat(2,1fr)}}
/* Ring-bound desk calendar and growth journal */
.calendar{top:115px;width:190px;overflow:visible;background:#fffdf6;border-radius:5px 5px 9px 9px;border:1px solid #e3ded3;box-shadow:0 6px 0 -2px #f5f1e8,0 9px 0 -4px #dfdfd8,0 15px 25px #36475b22;padding:12px 13px 4px;backdrop-filter:none}.calendar:before,.calendar:after{content:'';position:absolute;top:-11px;width:8px;height:26px;border:2px solid #8f9db1;background:linear-gradient(90deg,#c4cedb,#fff,#8fa2b8);border-radius:7px;box-shadow:1px 2px 3px #526d8822}.calendar:before{left:37px}.calendar:after{right:37px}.calendar-year{font-family:Diphylleia,serif;font-size:13px;padding:13px 0 0}.calendar-main{padding:0 0 5px}.calendar-main>span{font-family:Diphylleia,serif;font-size:38px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px 1px;padding:7px 0 10px;border-top:1px solid #e4e4df;font-size:10px;color:#6e819c}.calendar-grid b{font-weight:400;font-size:9px;color:#9da8b7;padding:3px 0}.calendar-grid b:first-child{color:#c799a2}.calendar-grid span{padding:2px 0;font-variant-numeric:tabular-nums}.calendar-grid .month-first{background:#8ca4c0;color:white;border-radius:50%}.calendar-foot{font-size:10px;border-top:1px dashed #d4d7dc;padding:8px 0}.home-phone{top:440px}.family-panel{background:linear-gradient(90deg,#e3eaf2 0 8px,#faf9f3 8px 100%);border:1px solid #d6dce2;border-radius:4px 10px 10px 4px;box-shadow:4px 4px 0 #eceeea,7px 7px 0 -1px #d9dfe4,0 12px 30px #3b527224;padding:27px 23px 23px 28px}.family-panel:before{content:'GROWTH JOURNAL';display:block;font-size:9px;letter-spacing:2.5px;color:#90a2bb;border-bottom:1px solid #c7d3df;padding-bottom:15px;margin-bottom:18px}.profile-heading small{display:none}.profile-star{font-size:24px;color:#b5a281}.status-line{border-bottom:1px dashed #ccd6e2;margin-bottom:8px}.budget{border-top:0}.stats-disclosure summary{font-family:Diphylleia,serif;font-size:18px}.schedule-main{font-family:Diphylleia,serif;font-size:19px;border:1px solid #46617f;box-shadow:inset 0 0 0 3px #ffffff18;background:#627f9e}.outing-choices{display:grid;gap:13px;margin:25px 0}.outing-choices button{text-align:left;padding:18px;background:#f1f5fa;font-size:24px}.outing-choices strong{font-family:Diphylleia,serif;font-size:20px;font-weight:400;margin-left:8px}.outing-choices small{display:block;font-size:12px;margin:9px 0 0 35px}@media(min-width:1500px){.calendar{top:135px}.home-phone{top:470px}}@media(max-width:1000px){.calendar{top:110px;width:170px}.home-phone{top:440px;left:47px}}
.lesson-art-stage .scene-window,.lesson-art-stage .scene-floor,.lesson-art-stage .acting-child,.lesson-art-stage .scene-spark,.lesson-art-stage .activity-prop{display:none}.lesson-art{position:absolute;width:100%;height:100%;object-fit:contain;background:#dce5ed}.lesson-art-stage .month-heading{top:4%;left:4%;padding:15px 22px;background:#f6f8f1ed;border-radius:5px}.lesson-art-stage .month-heading h1{font-size:27px;margin:5px 0}.lesson-art-stage .scene-caption{bottom:8%;background:#f6f8f0e8;width:auto;left:50%;transform:translateX(-50%);padding:10px 25px;border-radius:5px;font-size:18px;white-space:nowrap}.lesson-art-stage>button{background:#f5f8fae6}.rhythm-dialog{width:min(880px,96vw);max-height:96dvh;overflow:auto;padding:20px;background:#111c36;color:#e8f1ff;border:1px solid #6b8bb1}.rhythm-dialog h2{color:#dfeaff}.rhythm-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.rhythm-head>div{margin-right:auto}.rhythm-head small{font-size:9px;letter-spacing:3px;color:#94afd1}.rhythm-head h2{margin:5px 0;font-size:24px}.rhythm-head button{background:#243753;border-color:#4b6484;color:#d0e2f7;font-size:12px}.rhythm-arena{height:min(60vh,530px);position:relative;background:linear-gradient(#162440aa,#20334cd9),url('assets/lessons/dance.jpg') center/cover;overflow:hidden;border:1px solid #6f8ba66b;border-radius:8px}#rhythmCanvas{width:100%;height:100%;display:block}.rhythm-hud{position:absolute;top:20px;left:22px;right:22px;display:flex;justify-content:space-between;pointer-events:none}.rhythm-hud span{font-size:10px;letter-spacing:2px;color:#a3bbd6}.rhythm-hud b{display:block;font-size:29px;font-variant-numeric:tabular-nums;color:#eef6ff;margin-top:5px}#rJudge{position:absolute;top:61%;width:100%;text-align:center;font:bold 24px system-ui;letter-spacing:3px;text-shadow:0 0 18px currentColor;pointer-events:none}.rhythm-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:12px 8%}.rhythm-keys button{background:#273955;color:#c9e6ff;border-color:#7295c0;border-bottom-width:4px;font-size:22px;padding:10px;touch-action:manipulation}.rhythm-keys button:active{background:#6987b4;transform:translateY(2px)}.rhythm-time{height:3px;background:#293c57}.rhythm-time i{display:block;height:100%;background:#a7cbf0;width:0}.rhythm-pause{position:absolute;inset:0;background:#14213bef;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.rhythm-pause[hidden]{display:none}.rhythm-results{text-align:center}.result-score{font-size:47px;color:#6c8eb5;font-variant-numeric:tabular-nums;margin-top:20px}.result-counts{display:flex;justify-content:center;gap:25px;padding:20px 0}.result-counts span{font-size:11px;color:#8a9eb9}.result-counts b{display:block;font-size:25px;margin-top:8px;color:#506d96}.rhythm-modes{display:grid;gap:10px;margin:20px 0}.rhythm-offset{display:block;font-size:13px;color:#788ca8}.rhythm-offset input{padding:0;margin:12px 0 0}.rhythm-offset span{display:block;text-align:right;font-size:12px}
.destination-screen{position:fixed;inset:0;z-index:15;overflow:auto;background:#e5eef4;isolation:isolate;padding:7vh 8vw;animation:arrive .4s ease-out}.destination-art{position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,#eaf2f7,#b5d2dc 65%,#dce5de)}.destination-school .destination-art{background:linear-gradient(110deg,#e5eef1d9,#b8ccdaaa),url('assets/school.jpg') center/cover}.destination-city .destination-art{background:linear-gradient(110deg,#e7eff3d9,#c4d7ddaa),url('assets/city.jpg') center/cover}.destination-building{position:absolute;right:12%;top:22%;font-size:150px;opacity:.35;filter:drop-shadow(0 20px 30px #314d5c25)}.destination-screen header{display:block;margin:0 0 35px}.destination-screen header small{font-size:11px;letter-spacing:4px;color:#849eb2}.destination-screen h1{font-size:40px;margin:15px 0}.destination-screen header p{font-family:Diphylleia,serif;font-size:19px;color:#6e869b}.destination-options{width:min(570px,95%);display:grid;gap:13px}.destination-options>button{text-align:left;padding:22px 25px;border:1px solid #ffffffb0;background:#fafbf5e8;position:relative;box-shadow:0 7px 30px #4b647512}.destination-options strong{font-family:Diphylleia,serif;font-size:23px;font-weight:400;display:block}.destination-options small{font-size:13px;display:block;margin-top:9px}.destination-options>button>span{position:absolute;right:22px;top:30px;color:#8fa5bb}.destination-back{margin-top:30px;background:#ffffff70;border:0}.destination-result{padding:30px;background:#f8faf3ef;border:1px solid white;border-radius:8px;line-height:2}.destination-result h2{font-size:27px}.destination-result p{font-family:Diphylleia,serif;font-size:21px}.destination-result button{display:block;margin-top:25px}.destination-result small{font-size:12px}@keyframes arrive{from{opacity:0}to{opacity:1}}
.lesson-video-stage .month-progress i{animation:none;width:0;transition:width .15s linear}.lesson-video{object-fit:contain}.rhythm-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.23;pointer-events:none}#rhythmCanvas{position:relative;z-index:1}.rhythm-hud,#rJudge{z-index:2}.rhythm-pause{z-index:3}
/* User-supplied destinations: keep the artwork visible. */
.destination-school .destination-art{background:#dbe9ee url('assets/school.jpg') center/cover no-repeat}.destination-city .destination-art{background:#dae8ec url('assets/city.jpg') center/cover no-repeat}.destination-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#eaf1f469,transparent 65%),linear-gradient(0deg,#304a6940,transparent 55%)}.destination-screen{padding:5vh 5vw}.destination-screen header{display:inline-block;padding:19px 27px;background:#f9faf3e8;border:1px solid #fff8;border-radius:5px;box-shadow:0 8px 25px #3753711a;margin-bottom:20px}.destination-screen header h1{font-size:32px;margin:9px 0}.destination-screen header p{font-size:16px;margin:0;line-height:1.7}.destination-options{width:min(420px,90%);gap:10px}.destination-options>button{padding:17px 21px;background:linear-gradient(120deg,#fbfcf7f2,#eff5f8e6);backdrop-filter:blur(8px);border-radius:5px;box-shadow:0 7px 20px #2f4c6720}.destination-options strong{font-size:22px}.destination-options small{font-size:12px;margin-top:7px}.destination-back{color:#405a7a;background:#fbfcf5ed}.destination-result{backdrop-filter:blur(9px)}
.planner-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}.planner-title h2{font-size:29px;margin:8px 0}.planner-title p{font-size:13px;color:#8395ac;margin:0}.planner-budget{white-space:nowrap;background:#e7eef6;padding:12px;border-radius:6px;font-size:12px}.planner-budget b{font-size:20px;margin:0 5px;color:#57759b}.planner-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:23px}.planner-paper{background:#fffdf6;border:1px solid #e1e0d8;border-radius:7px;padding:20px;box-shadow:0 5px 0 -2px #e9e9e0;align-self:start}.planner-month{font-family:Diphylleia,serif;font-size:35px;display:flex;align-items:center;gap:12px;margin-bottom:16px;color:#526e8e}.planner-month>span{font-family:system-ui;font-size:9px;letter-spacing:2px;color:#95a3b5}.planner-month small{margin-left:auto;font-family:system-ui;font-size:12px!important}.planner-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.planner-calendar>b{text-align:center;font-size:11px;font-weight:400;padding:6px;color:#96a5b6}.planner-calendar>b:first-child{color:#bd9399}.planner-day{aspect-ratio:1;border-radius:5px;padding:3px;border:1px solid #dce4ec;background:#f2f5f7;position:relative;font-size:12px;display:flex;align-items:flex-start;justify-content:flex-start;color:#7e90a7}.planner-day i{font-size:15px;font-style:normal;position:absolute;right:4px;bottom:2px}.segment-0{--segment:#c8ddeb;--ink:#587e9e}.segment-1{--segment:#d9d4e9;--ink:#85769e}.segment-2{--segment:#d5e2d2;--ink:#738d70}.planner-day.is-filled{background:var(--segment);border-color:var(--segment);color:var(--ink)}.planner-day.target-segment{box-shadow:inset 0 0 0 1px var(--ink)}.planner-slots{display:grid;gap:8px;margin-top:20px}.plan-slot{display:flex;align-items:center;border:1px dashed #bdcbd9;border-radius:5px;background:#f1f5f7}.plan-slot.target{border:1px solid var(--ink);box-shadow:0 0 0 2px #829cb311}.plan-slot.filled{background:var(--segment);border-color:var(--segment)}.slot-main{flex:1;text-align:left;border:0;background:transparent;border-radius:0;padding:11px 13px}.slot-main:hover{background:#ffffff40;transform:none}.slot-main small{display:block;font-size:10px!important;color:var(--ink);margin-bottom:5px}.slot-main strong{font-family:Diphylleia,serif;font-weight:400;font-size:17px;color:var(--ink)}.slot-tools{display:flex;gap:4px;padding-right:8px}.slot-tools button{font-size:10px;background:#ffffff66;padding:4px 6px;border:0;color:var(--ink)}.planner-catalog h3{font-family:Diphylleia,serif;font-size:20px;margin:0 0 12px}.planner-activities{display:grid;gap:7px;max-height:580px;overflow:auto}.planner-activities>button{display:flex;gap:10px;align-items:center;padding:12px 10px;text-align:left;background:#fff;border-radius:6px}.plan-act-icon{font-size:22px}.planner-activities strong{font-size:14px;display:block;font-weight:500}.planner-activities small{font-size:10px!important;display:block;margin-top:5px}.plan-act-cost{font-size:11px;white-space:nowrap;margin-left:auto;color:#7990ac}.planner-confirm{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:25px;padding:18px;background:#eaf0f6;border:1px solid #dbe5ef;border-radius:6px}.planner-confirm strong{font-family:Diphylleia,serif;font-size:19px;font-weight:400;display:block}.planner-confirm small{font-size:12px!important;display:block;margin-top:7px}.over-budget{color:#b46c76}.planner-confirm button{font-size:13px;padding:15px}@media(max-width:800px){.planner-layout{grid-template-columns:1fr}.planner-title{flex-wrap:wrap}.planner-confirm{flex-wrap:wrap}.planner-activities{max-height:350px}}
.record-art.with-art{height:auto;aspect-ratio:16/9;overflow:hidden;background:#eaf0f5}.record-art.with-art img{width:100%;height:100%;object-fit:contain}.memory-event-art{width:100%;height:auto;border-radius:5px;margin:20px 0}.story-dialog{width:min(940px,95vw);padding:0;overflow:auto;background:#f9fbf6}.story-art{width:100%;height:auto;display:block}.story-copy{padding:25px 30px}.story-copy small{font-size:10px;letter-spacing:3px;color:#92a5bb}.story-copy h1{font-size:28px;margin:10px 0}.story-copy p{font-family:Diphylleia,serif;font-size:19px;line-height:1.9}.school-event-art,.audition-waiting-art{width:100%;height:auto;border-radius:5px;margin-bottom:20px}.destination-has-scene .destination-art{background-size:contain;background-repeat:no-repeat;background-position:center;background-color:#dce6ee}.destination-has-scene .destination-art:after{background:linear-gradient(0deg,#34516a33,transparent 50%)}.destination-has-scene header{display:none}.destination-has-scene .destination-options{position:absolute;bottom:5%;left:5%;width:min(530px,90%)}.destination-result{background:#f9fcf2ec;padding:22px}.destination-result h2{font-size:24px}.destination-result p{font-size:18px;line-height:1.8}.friend-encounter-art{display:block;width:180px;max-width:100%;margin:12px 0;border-radius:4px}
.monthly-photo-strip{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}.monthly-photo-strip img{width:125px;aspect-ratio:16/9;object-fit:contain;background:#edf2f7;border:4px solid #fff;box-shadow:0 2px 8px #3c546619;border-radius:2px}
.game-icon{width:1.2em;height:1.2em;display:inline-block;vertical-align:-.22em;color:currentColor;overflow:visible}.icon-wrap{display:inline-flex;align-items:center;justify-content:center;vertical-align:-.22em;color:#7792b2;line-height:1;margin:0 .08em}.plan-act-icon{width:39px;height:39px;display:grid;place-items:center;border:1px solid #d7e2ed;background:linear-gradient(140deg,#edf5f9,#e2eaf4);border-radius:12px;color:#6e8ba9;flex-shrink:0}.plan-act-icon .game-icon{width:25px;height:25px}.planner-activities>button:nth-child(3n+2) .plan-act-icon{background:linear-gradient(140deg,#f4edf4,#e7e2ee);border-color:#e4dce9}.planner-activities>button:nth-child(3n) .plan-act-icon{background:linear-gradient(140deg,#f1f4e9,#e1eae5);border-color:#d9e3db}.record-art>.icon-wrap .game-icon{width:45px;height:45px}.memory-emblem .game-icon{width:60px;height:60px}.outing-choices>button>.icon-wrap{font-size:27px;margin-right:7px}.phone-apps .game-icon{width:16px;height:16px}.phone-apps i{display:grid;place-items:center}.profile-actions .game-icon{width:24px;height:24px}.planner-day i .game-icon{width:14px;height:14px}.activity-prop .game-icon{width:85px;height:85px}#sfxToggle{border-left:1px solid #ccd8e5;border-radius:0;margin-left:3px;padding-left:9px;font-size:11px}.music-controls{max-width:calc(100vw - 30px)}
.audition-requirements{padding:17px;margin:15px 0;background:#f7f9fc;border:1px solid #dae4ef;border-radius:7px}.audition-requirements h3{font-size:14px;margin-bottom:15px}.audition-requirements>div{display:flex;gap:15px;align-items:center;padding:7px 0;color:#8997aa;font-size:13px}.audition-requirements b{font-weight:500;margin-left:auto}.audition-requirements small{width:48px;font-size:11px}.audition-requirements .requirement-met{color:#6d9b92}.school-date-note{font-size:12px;color:#8c789e;margin-top:9px;padding:7px 10px;background:#f0eaf5;border-radius:4px}
.plan-group-heading{font-family:Diphylleia,serif;font-size:22px;font-weight:400;color:#607e9f;margin:18px 0 8px;padding-bottom:10px;border-bottom:1px solid #d7e2ee}.plan-group-heading:first-child{margin-top:0}.plan-act-cost{font-size:18px;font-weight:600;color:#577595;min-width:64px;text-align:right}.planner-budget{font-size:14px}.planner-budget b{font-size:29px}.planner-confirm small{font-size:17px!important;color:#577595}.planner-confirm .over-budget{color:#b46c76}
.monthly-income{display:block;font-size:11px!important;margin-top:7px;color:#879bb4}
.performance-dialog{width:min(1100px,96vw);padding:0;overflow:hidden;background:#142235;color:#dfe9f5;border:1px solid #758ba9}.performance-view{position:relative;background:#15243c}.performance-view>img{display:block;width:100%;height:auto;max-height:73dvh;object-fit:contain}.stage-spotlight{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 25%,transparent 30%,#192a4c33 100%);animation:stage-light 6s ease-in-out infinite alternate}.performance-title{position:absolute;left:25px;top:22px;padding:13px 20px;background:#f6faf1e8;border:1px solid #fff8;border-radius:4px;color:#4e6a8a}.performance-title small{font-size:10px;letter-spacing:3px;color:#8b9fba}.performance-title h1{font-size:27px;margin:5px 0}.performance-title p{font-size:12px;margin:0}.performance-controls{display:flex;align-items:center;gap:15px;padding:20px 22px}.performance-controls button{background:#304964;color:#deebfa;border-color:#7289a5;font-size:12px;white-space:nowrap}.performance-controls>span{font-size:12px;white-space:nowrap;color:#a9c0da}.stage-progress{height:4px;flex:1;background:#3c516e;border-radius:3px;overflow:hidden}.stage-progress i{display:block;height:100%;width:0;background:#a2c1e3}.stage-notice{font-size:11px;color:#9cb4cf;text-align:center;margin:0;padding-bottom:14px}@keyframes stage-light{to{opacity:.4}}@media(prefers-reduced-motion:reduce){.stage-spotlight{animation:none}}
.asset-editor{position:fixed;inset:0;z-index:100;background:#233a569c;backdrop-filter:blur(10px);padding:25px;display:grid;place-items:center}.asset-editor-window{background:#f5f8fb;border:1px solid #fff;border-radius:12px;width:min(1160px,98vw);height:min(850px,94dvh);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 100px #102b5555}.asset-editor header{margin:0;padding:22px 28px;border-bottom:1px solid #dce6f1}.asset-editor header small{font-size:10px;letter-spacing:3px;color:#8aa1bd}.asset-editor h1{font-size:28px;margin:5px 0}.asset-editor header p{font-size:13px;color:#8093ad;margin:0}.asset-editor header button{background:transparent;border:0;font-size:20px}.asset-filters{padding:12px 25px;display:flex;gap:8px;border-bottom:1px solid #e0e7f0}.asset-filters button{font-size:12px;padding:8px 13px}.asset-editor-body{display:grid;grid-template-columns:250px 1fr;min-height:0;flex:1}.asset-list{overflow:auto;padding:15px;background:#eaf0f6;border-right:1px solid #dce5f0}.asset-list button{display:block;width:100%;margin-bottom:8px;text-align:left;padding:13px;background:#f9fbfd;border-radius:5px}.asset-list button.chosen{border-color:#7898bd;background:#dce8f4}.asset-list strong{font-size:13px;font-weight:500;display:block}.asset-list small{font-size:10px;margin-top:6px;display:block}.asset-detail{overflow:auto;padding:25px 30px}.asset-detail h2{font-size:24px}.asset-preview{background:#dbe4ee;min-height:180px;max-height:330px;display:flex;align-items:center;justify-content:center;border:1px solid #cfddea;border-radius:5px;overflow:hidden}.asset-preview img,.asset-preview video{max-width:100%;max-height:330px;object-fit:contain}.asset-preview audio{width:85%}.asset-file-name{font-size:13px;color:#607c9f;overflow-wrap:anywhere}.asset-upload-label{display:inline-block;padding:12px 19px;border:1px dashed #8da7c5;border-radius:5px;cursor:pointer;font-size:14px;color:#6787ac;background:#eaf1f8}.asset-upload-label input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.asset-actions{display:flex;gap:10px;margin-top:18px}.asset-actions button{font-size:13px}#assetStatus{font-size:13px;color:#638a85;min-height:20px}@media(max-width:850px){.asset-editor{padding:10px}.asset-editor-body{grid-template-columns:180px 1fr}.asset-detail{padding:20px}.asset-filters{flex-wrap:wrap}}
/* Home-only status control: never overlay activity screens. */
.game-room.panel-open .stats-disclosure{display:none!important}body:has(.destination-screen) .stats-disclosure,body:has(.month-playback) .stats-disclosure,body:has(.game-settings:not([hidden])) .stats-disclosure,body:has(.asset-editor) .stats-disclosure,body:has(dialog[open]) .stats-disclosure{display:none!important}
