:root{--bg:#10152b;--panel:#171f37;--text:#eef1ff;--muted:#bfc5dd;--accent:#ad7cff;--gold:#ffdc8d;--good:#69d7a6}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 5% 0,#463052,transparent 60%),var(--bg);color:var(--text);font-family:system-ui,-apple-system,sans-serif;min-height:100vh}.shell{max-width:1160px;margin:auto;padding:22px 24px}.brand{color:var(--text);font-size:clamp(24px,4vw,34px);font-weight:850;letter-spacing:-.035em;text-decoration:none}header p{color:var(--muted);margin:8px 0 20px}h1,h2,h3{margin-top:0;letter-spacing:-.025em}h1{font-size:30px}p{line-height:1.6}.muted,small{color:var(--muted)}.panel,.tile,.child{border:1px solid #a19ce32b;border-radius:24px;background:linear-gradient(145deg,#202743,#171f37);padding:24px}.panel{margin-bottom:18px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tiles{grid-template-columns:repeat(3,minmax(0,1fr))}.tile{color:inherit;text-align:left;cursor:pointer;box-shadow:0 10px 25px #0002;display:flex;flex-direction:column;gap:12px;min-height:270px}.tile:hover{border-color:var(--accent);transform:translateY(-2px)}.tile b{font-size:23px}.tile span{font-size:15px;color:var(--muted);line-height:1.6}.mascot{width:105px;height:105px;display:block;background:url(companions.png);background-size:500% 300%;clip-path:inset(0 8%)}.mascot.cat{background:url(kitties.png);background-size:500% 100%;height:140px;width:84px}.tile .typing-art{font-size:68px;color:var(--gold)}button,.button{font:inherit;min-height:48px;background:#7950d5;border:1px solid #c7a7ff33;color:white;border-radius:14px;padding:12px 18px;font-weight:750;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button.secondary{background:#252d49;color:var(--text)}button.good{background:var(--good);color:#0b2830}button:disabled{opacity:.5;cursor:default}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.row.between{justify-content:space-between}.wallet{color:var(--gold);background:#4b362855;padding:10px 16px;border:1px solid #f6cc6655;border-radius:16px;font-weight:800}.tag{color:var(--muted);border:1px solid #ffffff22;border-radius:99px;padding:6px 12px;font-size:14px}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.tabs button.active{border-color:var(--gold);color:var(--gold)}label{display:grid;gap:8px;color:var(--muted);font-size:15px;margin:12px 0}input,select,textarea{font:inherit;color:var(--text);background:#10172c;border:1px solid #6c6c93;border-radius:12px;padding:12px;min-height:48px;width:100%;max-width:100%}label.check{display:flex;align-items:center;gap:8px}input[type=checkbox]{width:22px;min-height:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.stat{padding:18px;border-radius:16px;background:#10172c}.stat strong{display:block;font-size:26px;color:var(--gold)}.request{border-bottom:1px solid #ffffff20;padding:16px 0}.request:last-child{border:0}.progress{height:10px;background:#0c1530;border-radius:99px;overflow:hidden;margin:12px 0}.progress i{display:block;background:linear-gradient(90deg,var(--accent),var(--gold));height:100%}.game-frame{display:block;width:100%;height:1050px;border:0;border-radius:24px;background:#10152b}.game-toolbar{margin-bottom:16px}.money-note{color:var(--muted);font-size:14px}#notice{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);background:#433260;border:1px solid #c7a7ff77;border-radius:16px;padding:14px 22px;max-width:calc(100vw - 24px);z-index:20;box-shadow:0 10px 30px #0005}#notice:empty{display:none}footer{font-size:14px;color:var(--muted)}a{color:#dac7ff}.history{display:grid;gap:10px}.history div{padding:12px;background:#10172c;border-radius:12px;overflow-wrap:anywhere}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button.tile{justify-content:flex-start;align-items:flex-start}button.child{display:block;text-align:left;color:var(--text);width:100%}.child b{font-size:22px}.child .avatar{font-size:48px;display:block;margin-bottom:12px}.hidden{display:none!important}@media(max-width:850px){.grid,.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.shell{padding:18px 12px}.grid,.tiles,.form-grid{grid-template-columns:1fr}.panel,.tile,.child{padding:20px;border-radius:20px}.tile{min-height:200px}.tile .mascot{width:85px;height:85px}.tile .mascot.cat{width:66px;height:110px}.game-frame{height:1250px}.tabs button{flex:1}.wallet{font-size:14px}.game-toolbar button{flex:1}h1{font-size:26px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

dialog{color:var(--text);background:var(--panel);border:1px solid #ad7cff;border-radius:24px;padding:28px;max-width:min(520px,calc(100vw - 24px))}dialog::backdrop{background:#080c1ac9}

.parent-heading{margin-bottom:28px}.parent-heading h1{margin:0;font-size:clamp(28px,4vw,40px)}.parent-area .tabs{gap:12px;margin-bottom:28px}.parent-area .tabs button{font-size:18px;padding:18px 20px;min-height:64px;background:#1d2540;border:0}.parent-area .tabs button.active{background:#6942ff;color:white}.parent-intro{font-size:18px;color:var(--muted);margin-bottom:28px}.reward-editor{padding:28px}.reward-columns,.reward-edit-row{display:grid;grid-template-columns:72px minmax(180px,1fr) 110px 110px 150px;gap:16px;align-items:start}.reward-columns{padding:12px 0;color:var(--muted);font-weight:750;border-bottom:1px solid #ffffff18}.reward-edit-row{padding:16px 0;border-bottom:1px solid #ffffff18}.reward-edit-row label{margin:0;min-width:0}.reward-edit-row input{border:2px solid #33395f;background:#10142b}.reward-edit-row small{font-size:12px;line-height:1.5}.reward-unit{padding-top:14px;font-size:14px}.reward-actions{gap:6px}.reward-actions button{padding:12px;min-width:65px}.reward-hidden{grid-column:2}.mobile-label{display:none}.add-reward{margin-top:24px}summary{cursor:pointer;font-size:17px;font-weight:750;padding:12px 0;color:#dfccff}details[open]>summary{margin-bottom:12px}.add-reward>summary{display:inline-flex;background:#6942ff;padding:16px 24px;border-radius:16px;color:white}.reward-guide h3{font-size:19px}.reward-guide p{font-size:15px}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;text-align:left}th,td{padding:12px;border-bottom:1px solid #ffffff20}caption{text-align:left;color:var(--muted);padding:12px 0}.section-heading{margin-top:28px}.practice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.practice-list article{background:#10172c;border-radius:16px;padding:18px}.practice-list h4{margin:0;font-size:18px}.practice-list .tag{font-size:12px}.practice-list p{font-size:15px}.trend{color:#d6c0ff}.week-chart{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;text-align:center;background:#10172c;padding:18px;border-radius:16px}.week-track{height:90px;margin:12px auto;position:relative;max-width:70px;display:flex;align-items:flex-end;background:#232b48;border-radius:8px;overflow:hidden}.week-track i{width:100%;background:linear-gradient(#b28aff,#6942ff)}.week-chart small{font-size:12px}.week-chart strong{font-size:16px}.reward-guide .stat p{margin-bottom:0}
@media(max-width:1000px){.reward-columns,.reward-edit-row{grid-template-columns:64px minmax(140px,1fr) 90px 100px 90px}.reward-actions{flex-direction:column;align-items:stretch}}
@media(max-width:700px){.reward-columns{display:none}.reward-edit-row{grid-template-columns:64px minmax(0,1fr);gap:12px;padding:20px 0}.mobile-label{display:block;font-size:13px}.reward-unit{align-self:center;padding:0}.reward-actions{flex-direction:row;grid-column:1/-1}.reward-actions button{flex:1}.reward-hidden{grid-column:1/-1}.reward-editor{padding:20px}.practice-list{grid-template-columns:1fr}.parent-area .tabs button{font-size:15px;padding:12px;min-height:52px;flex:1 1 125px}.parent-heading{gap:14px}.parent-heading h1{font-size:28px}.week-chart{gap:8px;padding:12px}.week-chart strong{font-size:14px}.week-chart small{font-size:11px}}
