:root{font-family:MiSans,PingFang SC,Microsoft YaHei,sans-serif;color:#17294c;background:#e9f4f4;font-synthesis:none}*{box-sizing:border-box}body{margin:0;width:100%;min-height:100%;overflow-x:hidden;background:#effff8}html,#app{width:100%;min-height:100%}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #276ff7;outline-offset:3px}button:disabled{opacity:.5;cursor:default}button{transition:transform .15s,filter .15s}@media(hover:hover){button:hover:not(:disabled){filter:brightness(1.025)}}button:active:not(:disabled){transform:translateY(2px)}img{decoding:async}h1,h2,p{margin:0}h2{font-size:24px}small{font-size:14px}svg{flex-shrink:0}button svg{vertical-align:middle}.desktop{--bg: #effff8;--surface: #ffffffdf;--ink: #17294c;--muted: #5c6b83;--line: #e7eff2;--brand: #1f6fd8;--brand-ink: #2263c0;min-height:100dvh;width:100%;max-width:none;margin:auto;background:var(--bg);color:var(--ink);padding:0 28px 16px;position:relative}.desktop.night{--bg: #dcdcf9;--surface: #f9f8ffed;--ink: #262851;--muted: #5c5c86;--line: #e0dff5}.statusbar{height:62px;display:flex;align-items:center;gap:18px;font-size:16px;position:relative;z-index:2}.clock{font-size:29px;font-weight:750;letter-spacing:-1px}.statushint{margin-left:auto;color:var(--muted);font-size:13px}.iconbutton{background:transparent;padding:8px;display:inline-flex;align-items:center;justify-content:center}.iconbutton svg{width:23px}.hero{height:314px;margin:-62px -28px 0;padding:102px 40px 20px;display:flex;align-items:flex-start;gap:32px;background-color:#6fd0ee;background-image:linear-gradient(90deg,#53c7f2dd,#53c7f280 36%,#53c7f200 66%),url(/assets/brand/xiaozhang-hero.webp);background-size:cover;background-position:center;border-radius:0 0 34px 34px;overflow:hidden;position:relative}.night .hero{background-color:#3a4a86;background-image:linear-gradient(90deg,#27336fdd,#27336f80 42%,#27336f00 72%),url(/assets/brand/xiaozhang-hero-night.webp)}@supports not (background-image: url(/assets/brand/xiaozhang-hero.webp)){.hero{background-image:linear-gradient(90deg,#53c7f2dd,#53c7f280 36%,#53c7f200 66%),url(/assets/brand/xiaozhang-hero.png)}.night .hero{background-image:linear-gradient(90deg,#27336fdd,#27336f80 42%,#27336f00 72%),url(/assets/brand/xiaozhang-hero-night.png)}.cardart{background-image:url(/assets/icons.png)}}.brandmark{position:absolute;top:78px;right:40px;display:flex;align-items:center;gap:9px;padding:7px 13px 7px 7px;border:1px solid #ffffffaa;border-radius:18px;background:#ffffffb8;color:#176da4;font-size:15px;font-weight:800;box-shadow:0 8px 24px #246f9b22;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brandmark img{width:36px;height:36px;border-radius:11px;object-fit:cover}.children{display:flex;gap:17px;align-items:flex-start}.child{background:none;display:flex;align-items:center;flex-direction:column;gap:9px;min-width:76px;padding:0;transform:scale(1);transition:transform .12s}.child b{font-size:19px}.avatar{display:block;width:76px;height:76px;border-radius:50%;border:3px solid white;box-shadow:0 2px 8px #3e8c8e25;overflow:hidden;position:relative;background:#fff0ce}.avatar img{position:absolute;max-width:none;width:570px;left:-437px;top:-19px}.avatar.girl img{top:-210px}.avatar.portrait img{display:none}.avatar.portrait{background-size:cover;background-position:center}.selected .avatar{outline:3px solid #368aff;outline-offset:3px}.greeting{display:flex;color:#087e82;gap:16px;padding-top:3px}.greeting>svg{width:45px;height:45px;color:#ffcd26}.greeting h1{font-size:24px;line-height:1.45;font-weight:800;letter-spacing:1px}.night .greeting{color:#fff4c7;text-shadow:0 2px 8px #17245eaa}.night .child b{color:#e6e8ff;text-shadow:0 1px 4px #101a4466}.night .child.selected b{color:#fff6c9}.maincards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;position:relative;margin-top:-8px;padding:10px;background:#ffffff8a;border-radius:28px}.maincard{height:282px;border-radius:22px;color:#fff;text-align:left;padding:24px 25px;position:relative;overflow:hidden;transform:scale(1);transition:transform .12s;box-shadow:inset 0 2px 3px #ffffffa0,0 5px 10px #44574c0b}.maincard h2{font-size:31px;font-weight:750;position:relative;z-index:1}.maincard p{font-size:24px;margin-top:9px}.maincard>svg{width:115px;height:115px;position:absolute;right:29px;bottom:22px;stroke-width:1.6;filter:drop-shadow(0 7px 0 #3b508a27);transform:rotate(-8deg);fill:#ffffff3f}.maincard.orange{background:linear-gradient(130deg,#ff862c,#ffab3e)}.maincard.violet{background:linear-gradient(135deg,#9072ff,#79bcff)}.maincard.green{background:linear-gradient(130deg,#30ca88,#8cda71)}.maincard.yellow{background:linear-gradient(135deg,#ffbe26,#ffe280)}.maincard.yellow>svg{fill:#ffb528;stroke:#fff6ac}.quicklinks{display:flex;justify-content:space-around;gap:15px;margin:16px 10px 0;padding:20px 0;background:#ffffffa8;border-radius:24px}.quicklinks button{display:flex;align-items:center;flex-direction:column;gap:12px;background:none;font-size:18px;font-weight:650;min-width:100px}.quicklinks button>span{width:65px;height:65px;border-radius:20px;display:grid;place-items:center;box-shadow:inset 0 3px 5px #ffffffa0,0 6px 15px #52738412;color:#fff}.quicklinks svg{width:33px;height:33px;stroke-width:2.5}.quicklinks .brand-icon{padding:6px}.quicklinks .brand-icon img{width:100%;height:100%;object-fit:contain}.blue{background:linear-gradient(135deg,#92d9ff,#3c8bff)}.amber{background:linear-gradient(135deg,#ffde83,#ffae29)}.teal{background:linear-gradient(135deg,#8bf5e5,#23bfc9)}.coral{background:linear-gradient(135deg,#ffc8c2,#ff8178)}.pageheading{display:flex;align-items:center;gap:16px;padding:12px 0 28px}.pageheading h1{font-size:27px}.pageheading>span{color:var(--muted);font-size:16px;margin-left:8px}.pageheading>.soft{margin-left:auto}.back{width:43px;height:43px;background:var(--surface);border-radius:14px;display:grid;place-items:center}.content{border-radius:25px;padding:30px;background:var(--surface);min-height:570px}.progress{display:flex;justify-content:space-between;color:var(--muted);margin-bottom:20px;font-size:17px}.progress b{color:#3d8ce4}.taskrow{display:flex;align-items:center;gap:20px;border:1px solid var(--line);border-radius:19px;padding:22px;margin:13px 0}.subject{width:66px;height:66px;border-radius:18px;display:grid;place-items:center;flex-shrink:0}.subject svg{width:35px;height:35px}.bluebox{background:#e4f4ff;color:#548feb}.greenbox{background:#e4f8ed;color:#43b986}.yellowbox{background:#fff3d8;color:#eab334}.taskinfo{flex:1;min-width:0}.taskinfo h2{font-size:22px}.taskinfo p{color:var(--muted);margin-top:7px;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:650px}.taskinfo small{display:block;color:#ef9476;margin-top:6px}.pointtag{font-size:16px;color:#8a6414;white-space:nowrap}.primary,.soft{border-radius:30px;min-height:46px;padding:12px 24px;font-size:16px;font-weight:600;display:inline-flex;gap:8px;align-items:center;justify-content:center}.primary{background:var(--brand);color:#fff;box-shadow:0 4px 8px #1f6fd820}.soft{color:var(--brand-ink);background:#eff6ff;border:1px solid #d9e8fe}.reading{padding:20px}.reading h2{font-size:28px;margin:24px 0}.reading p{font-size:25px;line-height:2;white-space:pre-wrap}.tag{color:var(--muted)}.detail{display:flex;flex-direction:column;justify-content:space-between}.actions{display:flex;justify-content:space-between;gap:15px;padding:20px}.attachment{display:block;max-width:100%;max-height:350px;margin:20px 0;border-radius:18px}.reading audio.attachment{width:100%;max-width:560px}video{max-width:100%;max-height:350px}audio{margin:25px 0;width:100%}.schedule{display:grid;grid-template-columns:1.3fr 1fr;gap:40px}.schedule h2 small{display:block;margin-top:12px;color:var(--muted);font-weight:400}.lessonGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:25px}.lessonGrid article{padding:23px;background:#eaf6ff;border-radius:20px}.lessonGrid article:nth-child(2){background:#e6f8f0}.lessonGrid article:nth-child(3){background:#fff4dd}.lessonGrid article:nth-child(4){background:#f5eaf3}.lessonGrid small{display:block;color:var(--muted);margin:9px 0}.bag{padding:25px;background:#f7fbf9;border-radius:24px}.bag>svg{color:#4d9bf0}.bag h2{margin:15px 0 25px}.bag label{display:flex;align-items:center;font-size:20px;gap:14px;margin:17px 0}.bag input{accent-color:#46bd83;width:24px;height:24px}.bag p{margin-top:25px;color:var(--muted)}.score{display:flex;align-items:center;gap:26px;padding:15px 20px 35px}.score>svg{color:#ffbe3d;fill:#ffe393}.score strong{font-size:60px}.score p{color:var(--muted);line-height:1.8}.pointsgrid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.ledger{display:flex;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);content-visibility:auto;contain-intrinsic-size:auto 64px}.ledger>span{flex:1}.ledger>svg{color:#67a1f5}.ledger b{color:#20ad7b}.ledger small{display:block;color:var(--muted);margin-top:5px}.resourcegrid{columns:3 240px;column-gap:20px}.resource{display:block;width:100%;margin:0 0 20px;background:#f4faff;padding:0 0 20px;border-radius:20px;text-align:left;overflow:hidden;position:relative;break-inside:avoid;box-shadow:0 8px 20px #3d78a00d;transition:transform .18s,box-shadow .18s}.resource:hover,.resource:focus-visible{transform:translateY(-3px);box-shadow:0 12px 24px #3d78a01c}@media(hover:none){.resource:hover{transform:none;box-shadow:0 8px 20px #3d78a00d}.resource:active{transform:translateY(1px) scale(.995)}}.resource-media,.resource-art{width:100%;min-height:150px;background:#dff3ff;position:relative}.resource-media img,.resource-media video{display:block;width:100%;height:auto;max-height:280px;object-fit:cover}.resource-art{display:grid;place-items:center;color:#4f9ee8;background:linear-gradient(135deg,#e1f6ff,#c6e8ff)}.resource-art.kind-video{color:#ffac2f;background:linear-gradient(135deg,#fff1d3,#ffd98b)}.resource-art.kind-audio{color:#38b9a0;background:linear-gradient(135deg,#ddfff6,#bcefe3)}.resource-art svg{width:48px;height:48px;stroke-width:1.8}.resource h2,.resource>small,.resource-excerpt{margin-left:20px;margin-right:20px}.resource h2{margin:20px 0 10px}.resource small{color:var(--muted)}.resource-excerpt{color:var(--muted);line-height:1.65;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.video-media{background:#cfe8ff}.media-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#1a6bccdd;box-shadow:0 4px 12px #155da050}.resource-badge{float:right;margin:0 20px 0 8px;padding:3px 8px;border-radius:10px;color:#1a5a94;background:#dff1ff;font-size:12px}.overlay{position:fixed;inset:0;background:#172b5060;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;display:flex;align-items:center;justify-content:center;padding:20px}.modal{position:relative;width:520px;max-width:100%;padding:40px;border-radius:30px;background:var(--surface);box-shadow:0 25px 100px #10254830}.modal h2{margin:20px 0 12px}.modal p{line-height:1.8;color:var(--muted);margin-bottom:20px}.modal form{display:grid;gap:16px}.modal small{display:block;margin-top:20px;color:var(--muted);font-size:15px}.close{position:absolute;right:16px;top:12px;font-size:27px}.themeoptions{display:flex;gap:10px;flex-wrap:wrap}.chosen{border-color:#3c91ff;background:#dbeaff}.modal .children{flex-wrap:wrap;margin:30px 0}.modal .child small{margin-top:0;font-size:12px}.toast{position:fixed;left:50%;bottom:35px;transform:translate(-50%);background:#21314e;color:#fff;padding:17px 28px;border-radius:18px;z-index:20;box-shadow:0 8px 25px #10254830;max-width:90vw;text-align:center;line-height:1.5;font-size:16px;animation:toastin .24s ease-out}.toast.ok{background:#1f8a63;box-shadow:0 8px 25px #0f5a4033}.toast.warn{background:#c96a17;box-shadow:0 8px 25px #8a471033}@keyframes toastin{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.empty{display:flex;align-items:center;justify-content:center;gap:12px;padding:100px;color:#33ad83}.parentlayout{display:grid;grid-template-columns:190px 1fr;gap:24px}.parentnav{display:flex;flex-direction:column;gap:9px;padding-top:10px}.parentnav>button{padding:16px;text-align:left;background:transparent;border-radius:14px}.parentnav>.active{background:#fff;color:#1f5cb4;font-weight:650}.admincontent{background:var(--surface);padding:30px;border-radius:22px;min-height:610px}.admincontent h2{margin-bottom:20px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.wide{grid-column:1/-1}label{display:block;font-size:15px;color:var(--muted);line-height:1.8}input:not([type=checkbox]),textarea,select{display:block;width:100%;border:1px solid #dce6ed;background:#fff;color:#263b58;border-radius:12px;padding:12px 14px;margin:7px 0 12px;font-size:16px;min-height:46px}textarea{resize:vertical;line-height:1.7}.sectiontitle{margin-top:35px}.muted{color:var(--muted);line-height:1.8;margin:15px 0}.upload{border:2px dashed #b5d5f3;padding:25px;border-radius:18px;cursor:pointer;margin-bottom:25px}.upload svg{margin-right:10px}.upload input{font-size:14px}.parentnav label{margin-top:25px}.night .bag{background:#f3f1ff}.night .maincards,.night .quicklinks{background:#f6f2ffa8}@media(min-height:850px){.hero{height:330px;padding-top:110px}.maincard{height:310px}.quicklinks{padding:28px 0}}@media(max-width:900px){.desktop{padding:0 16px 15px}.hero{margin-left:-16px;margin-right:-16px;padding:90px 22px 20px;height:286px;gap:20px}.avatar{width:60px;height:60px}.child{min-width:60px}.child b{font-size:15px}.greeting h1,.night .greeting h1{font-size:19px}.greeting>svg{width:30px;height:30px}.maincards{gap:10px}.maincard{padding:20px 16px;height:230px}.maincard h2{font-size:23px}.maincard p{font-size:19px}.maincard>svg{width:85px;height:85px;right:20px}.quicklinks button{font-size:15px;min-width:70px}.content{padding:20px}.pointtag{display:none}.taskinfo p{max-width:350px}.taskrow{gap:12px;padding:16px}.taskinfo h2{font-size:18px}.schedule{gap:20px}.bag{padding:20px}.parentlayout{grid-template-columns:150px 1fr;gap:15px}.admincontent{padding:20px}.pageheading>span{display:none}}@media(max-width:600px){.statusbar{height:56px;gap:8px;font-size:12px}.clock{font-size:22px}.statushint{font-size:10px}.iconbutton{padding:5px}.iconbutton svg{width:18px}.hero{height:248px;padding-top:85px;background-position:62% center;gap:20px}.night .hero{background-position:62% center}.brandmark{top:70px;right:18px;padding:5px 9px 5px 5px;font-size:12px}.brandmark img{width:28px;height:28px;border-radius:9px}.greeting{gap:4px}.greeting>svg{display:none}.greeting h1,.night .greeting h1{font-size:16px}.children{gap:8px}.child{min-width:48px}.avatar{width:48px;height:48px}.avatar img{width:400px;left:-307px;top:-14px}.avatar.girl img{top:-148px}.child b{font-size:13px}.maincards{grid-template-columns:1fr 1fr;margin-top:-8px}.maincard{height:195px}.maincard>svg{width:75px;height:75px;bottom:18px}.quicklinks{gap:0;margin:12px 0 0;padding:20px 0}.quicklinks button{font-size:11px;min-width:0;gap:8px}.quicklinks button>span{height:46px;width:46px;border-radius:15px}.quicklinks svg{width:25px;height:25px}.pageheading{gap:10px;padding-bottom:18px}.pageheading h1{font-size:22px}.pageheading>.soft{padding:10px;font-size:12px}.content{min-height:520px;padding:15px}.taskrow{padding:14px 10px;gap:10px}.subject{width:43px;height:48px;border-radius:12px}.subject svg{width:25px}.taskinfo h2{font-size:15px}.taskinfo p{font-size:12px;max-width:150px}.taskrow .primary,.taskrow .soft{padding:10px 12px;font-size:13px}.progress{font-size:12px}.progress>span{max-width:65%}.reading{padding:10px}.reading p{font-size:21px}.reading h2{font-size:23px}.actions{padding:20px 5px}.actions button{font-size:14px;padding:12px 18px}.schedule{grid-template-columns:1fr}.schedule h2{font-size:21px}.lessonGrid{gap:10px}.lessonGrid article{padding:16px}.lessonGrid small{font-size:12px}.bag label{font-size:17px}.pointsgrid{grid-template-columns:1fr}.score{padding:10px 0 30px}.score strong{font-size:48px}.score p{font-size:13px}.pointsgrid h2{font-size:21px}.resourcegrid{columns:2 150px;column-gap:10px}.resource{margin-bottom:10px;padding-bottom:14px}.resource h2{font-size:17px}.resource-media,.resource-art{min-height:110px}.resource h2,.resource>small,.resource-excerpt{margin-left:14px;margin-right:14px}.resource h2{margin-top:14px;margin-bottom:7px}.parentlayout{display:block}.parentnav{flex-direction:row;flex-wrap:wrap;gap:5px;margin-bottom:20px}.parentnav>button{font-size:12px;padding:10px}.parentnav label{margin:0;width:100%}.formgrid{grid-template-columns:1fr}.admincontent{padding:18px}.themeoptions .soft{font-size:12px;padding:10px}.modal{padding:30px}.modal h2{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}.cardart{display:block;position:absolute;bottom:2px;right:15px;width:165px;height:190px;background-image:url(/assets/icons.webp);background-size:400% 100%;background-repeat:no-repeat}.art0{background-position:0 50%}.art1{background-position:33.333% 50%}.art2{background-position:66.667% 50%}.art3{background-position:100% 50%}.avatar img{width:420px;left:-294px;top:-32px}.avatar.girl img{left:-307px;top:-181px}@media(max-width:900px){.cardart{width:135px;height:148px;right:10px;bottom:0}.avatar img{width:350px;left:-246px;top:-29px}.avatar.girl img{left:-257px;top:-153px}}@media(max-width:600px){.cardart{width:115px;height:125px;right:4px;bottom:0}.avatar img{width:280px;left:-198px;top:-23px}.avatar.girl img{left:-207px;top:-124px}}.maincard{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start}.maincard h2,.maincard p{z-index:1}.art1{clip-path:inset(0 0 0 10%)}.lessoneditor{display:grid;grid-template-columns:60px 1fr 1.3fr 1.5fr auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.lessoneditor input{min-width:0}@media(max-width:900px){.night .greeting h1{font-size:19px}.lessoneditor{grid-template-columns:1fr 1fr}.lessoneditor>b,.lessoneditor label:last-of-type{grid-column:1/-1}}@media(max-width:600px){.night .greeting h1{font-size:16px}}.maincard.orange{color:#71300c}.maincard.green{color:#134d34}.maincard.yellow{color:#6f5009}.night.home .statusbar{color:#eef0ff;text-shadow:0 1px 4px #101a4466}.night.home .statushint{color:#d9dcf7}.night:not(.home) .statusbar{color:var(--ink);text-shadow:none}.night:not(.home) .statushint{color:var(--muted)}.focus{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center}.focusdial{position:relative;display:grid;place-items:center}.focusdial svg{width:220px;height:220px;transform:rotate(-90deg)}.dialbg{fill:none;stroke:#e6eef8;stroke-width:14}.dialfg{fill:none;stroke:#2c87ff;stroke-width:14;stroke-linecap:round;stroke-dasharray:540;transition:stroke-dashoffset .3s linear}.focusdial strong{position:absolute;margin-bottom:28px;font-size:46px;font-weight:800;letter-spacing:1px}.focusdial small{position:absolute;margin-top:76px;color:var(--muted);font-size:15px}.focuspresets{display:flex;gap:12px}.chat{display:flex;flex-direction:column;gap:16px}.chatlog{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:14px;padding-right:6px}.bubble{display:flex;align-items:flex-start;gap:12px;max-width:76%;padding:14px 18px;border-radius:20px;background:#f2f7ff;line-height:1.65}.safety-note{display:block;margin-top:8px;color:#56687f;font-size:14px}.bubble.mine{margin-left:auto;background:#dcecff}.mascot{width:44px;height:44px;flex-shrink:0;border-radius:50%;background:#fffc}.typing{color:var(--muted);font-size:15px}.chips{display:flex;flex-wrap:wrap;gap:10px}.chatinput{display:flex;gap:12px}.chatinput input{margin:0;flex:1 1 auto;min-width:0}.chatinput button{flex:0 0 auto;white-space:nowrap}.chatinput .mic{flex:0 0 auto;width:46px;height:46px;padding:0;border-radius:50%;display:grid;place-items:center;background:#eff6ff;color:#1f5cb4;border:1px solid #d9e8fe;transition:background .15s,border-color .15s,color .15s}.chatinput .mic:hover{background:#e2efff}.chatinput .mic.live{background:#ff5a5f;border-color:#ff5a5f;color:#fff;animation:micpulse 1.15s ease-out infinite}@keyframes micpulse{0%{box-shadow:0 0 #ff5a5f55}70%{box-shadow:0 0 0 14px #ff5a5f00}to{box-shadow:0 0 #ff5a5f00}}.listening{margin:0 0 8px;font-size:15px;font-weight:600;color:#ff5a5f}.pickblock{font-size:15px;color:var(--muted)}.pickblock b{display:block;font-weight:600;margin-bottom:8px}.mediapicker{display:flex;flex-wrap:wrap;gap:10px}.mediaitem{display:flex;align-items:center;gap:8px;min-height:40px;padding:8px 14px;margin:0;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font-size:16px;cursor:pointer;transition:border-color .15s,background .15s}.mediaitem:hover{border-color:#a9c8ef;background:#f5faff}@media(hover:none){.mediaitem:hover{border-color:var(--line);background:#fff}.mediaitem:active{border-color:#a9c8ef;background:#f5faff}}.mediaitem:has(input:checked){border-color:#2982ed;background:#eef6ff;font-weight:600}.mediaitem small{color:var(--muted);font-weight:400;font-size:15px}@media(hover:none){.mediaitem{min-height:48px}}.categorynav{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.categoryform{display:flex;align-items:center;gap:16px}.categoryform label{flex:1}.classification{max-width:210px}.classification select{margin-bottom:0}@media(min-width:1000px)and (max-width:1400px)and (max-height:850px){.desktop:not(.parent){padding:0 18px 10px}.statusbar{height:50px}.clock{font-size:25px}.hero{height:285px;margin:-50px -18px 0;padding:88px 28px 16px;align-items:center}.brandmark{top:60px;right:28px}.maincards{gap:12px;padding:8px;margin-top:12px}.maincard{height:100%;padding:18px 20px}.maincard h2{font-size:27px}.maincard p{font-size:20px}.cardart{width:140px;height:160px}.quicklinks{margin-top:10px;padding:18px 0}.quicklinks button{gap:7px;font-size:15px}.quicklinks button>span{width:64px;height:64px;border-radius:16px}.desktop:not(.home):not(.parent){display:flex;flex-direction:column;height:100dvh;overflow:hidden}.desktop:not(.home):not(.parent) .pageheading{padding:10px 0 18px}.desktop .content{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}.desktop .content::-webkit-scrollbar{width:10px}.desktop .content::-webkit-scrollbar-thumb{background:#c9d6e5;border-radius:8px}.desktop .content::-webkit-scrollbar-track{background:transparent}.statushint{font-size:14px}.back{width:48px;height:48px;border-radius:16px}.iconbutton{min-width:48px;min-height:48px;padding:10px}.bag input{width:40px;height:40px}.bag label{min-height:56px;margin:10px 0;padding:0 12px;border-radius:12px}.desktop:not(.parent) .pageheading>span{font-size:16px}.desktop:not(.parent) .primary,.desktop:not(.parent) .soft{min-height:48px}.desktop:not(.parent) button:active:not(:disabled){transform:scale(.97);filter:brightness(.94);transition:transform .08s,filter .08s}.desktop:not(.parent) .maincard:active{transform:scale(.985)}.desktop:not(.parent) .child:active{transform:scale(.96)}.categorynav button{min-height:48px}.desktop:not(.parent) .resourcegrid{columns:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}.desktop:not(.parent) .resource{display:flex;flex-direction:column;height:100%;margin:0}.desktop:not(.parent) .resource-media,.desktop:not(.parent) .resource-art{flex:0 0 168px;min-height:168px}.desktop:not(.parent) .resource-media img,.desktop:not(.parent) .resource-media video{height:168px;max-height:168px}.desktop:not(.parent) .resource-excerpt{flex:1 1 auto}.desktop:not(.parent) .resource-badge{position:absolute;top:12px;right:12px;float:none;margin:0;padding:4px 10px;font-size:14px;background:#ffffffed;box-shadow:0 2px 8px #1b496b26}.focusdial svg{width:268px;height:268px}.focusdial strong{margin-bottom:34px;font-size:58px}.focusdial small{margin-top:94px;font-size:17px}.focuspresets button{min-height:52px;padding:14px 28px;font-size:18px}.bubble{max-width:70%;padding:18px 22px;font-size:19px}.mascot{width:58px;height:58px}.chips button{min-height:48px;font-size:17px}.chatinput input{min-height:58px;font-size:20px}.chatinput button{min-height:58px;padding:14px 34px;font-size:18px}.chatinput .mic{width:58px;height:58px;min-height:58px;padding:0;font-size:0}.desktop:not(.parent){-webkit-tap-highlight-color:transparent}body{overscroll-behavior:none}.desktop:not(.parent) button,.desktop:not(.parent) .child,.desktop:not(.parent) .maincard,.desktop:not(.parent) .resource,.desktop:not(.parent) .quicklinks button{touch-action:manipulation;-webkit-user-select:none;user-select:none}.desktop.home{display:flex;flex-direction:column;min-height:100dvh;overflow:hidden}.desktop.home .maincards{flex:1 1 auto}.desktop.home .quicklinks{flex:0 0 128px}}@media(max-width:600px){.categorynav{gap:8px}.categorynav button{padding:9px 15px;font-size:14px}.categoryform{align-items:flex-start;flex-direction:column}.categoryform label{width:100%}.classification{max-width:140px}.classification select{font-size:13px;padding:9px}}@media(min-width:1000px){.desktop.parent{padding:0 28px 40px}.desktop.parent .pageheading,.desktop.parent .parentlayout{max-width:1224px;margin-left:auto;margin-right:auto}.desktop.parent .statusbar{height:62px;max-width:1224px;margin-left:auto;margin-right:auto}.desktop.parent .back{width:43px;height:43px;border-radius:14px}.desktop.parent .pageheading{padding:22px 0 18px}.desktop.parent .parentlayout{grid-template-columns:200px minmax(0,1fr);gap:28px;align-items:start}.desktop.parent .parentnav{position:sticky;top:14px;align-self:start;padding:8px;margin:-8px;border-radius:18px;background:var(--bg)}.desktop.parent .parentnav>button{padding:13px 16px;cursor:pointer;transition:background .15s}.desktop.parent .parentnav>button:hover{background:#ffffffb0}.desktop.parent .parentnav>.active{background:#fff}.desktop.parent .admincontent{padding:32px 34px}.desktop.parent .formgrid{gap:16px 20px}.desktop.parent .formgrid.cols3{grid-template-columns:repeat(3,minmax(0,1fr))}.desktop.parent .formgrid>label{font-size:15px;line-height:1.6}.desktop.parent .formgrid>label.wide{font-size:15px}.desktop.parent .formgrid>button.primary{grid-column:1/-1;justify-self:start;min-width:170px}.desktop.parent .ledger{display:grid;grid-template-columns:24px minmax(0,1fr) 250px;align-items:center;gap:14px;padding:14px 0}.desktop.parent .ledger>span{display:flex;align-items:baseline;gap:10px}.desktop.parent .ledger small{margin-top:0}.desktop.parent .classification{max-width:none}.desktop.parent .taskrow{transition:background .15s,border-color .15s}.desktop.parent .taskrow:hover{background:#f6fbff;border-color:#cfe3f7}.desktop.parent .primary,.desktop.parent .soft{cursor:pointer}.desktop.parent .actions{padding:22px 0 0}.desktop.parent label{font-size:15px}.desktop.parent .primary,.desktop.parent .soft{min-height:48px}.desktop.parent .pageheading .back{width:48px;height:48px}.desktop.parent .mediaitem input{width:16px;height:16px}.desktop.parent .mediaitem{min-height:48px}}.scorecard{display:flex;align-items:center;gap:20px;padding:22px 26px;border-radius:24px;background:linear-gradient(135deg,#fff6d8,#ffe7b8);border:1px solid #ffe1a8}.scorebig{display:flex;align-items:baseline;gap:6px;color:#b8730a}.scorebig strong{font-size:52px;line-height:1}.scoremeta{flex:1 1 auto;min-width:0}.scoremeta p{margin:0 0 6px;color:#8a5a06}.nextwish{font-size:16px}.nextwish b{font-size:20px;color:#d97706}.progressbar{height:12px;border-radius:99px;background:#fffc;overflow:hidden;margin:8px 0 2px}.progressbar i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#ffc44d,#ff9f43);transition:width .35s}.pointstabs{display:flex;gap:10px;margin:22px 0 16px}.pointstabs button{flex:1 1 0;padding:12px 10px;border-radius:14px;background:var(--surface);border:1px solid var(--line);font-size:16px;color:var(--muted)}.pointstabs button.active{background:var(--brand);border-color:var(--brand);color:#fff;font-weight:600}.wishgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.wishcard{display:flex;flex-direction:column;gap:8px;padding:18px 20px;border-radius:20px;background:var(--surface);border:1px solid var(--line)}.wishcard.ready{border-color:#ffd479;background:#fffdf6}.wishcard.applied{opacity:.75}.wishicon{font-size:40px;line-height:1}.wishcard h3{margin:0;font-size:19px}.wishcard .muted{margin:0;font-size:14px}.wishfoot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}.wishfoot b{font-size:18px;color:#b8730a}.timeline .ledger .plus{color:#20ad7b}.timeline .ledger .minus{color:#e2685f}.rulecards{display:grid;gap:12px}.rulecard{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:18px;background:var(--surface);border:1px solid var(--line)}.ruleicon{font-size:30px}.rulecard div{flex:1 1 auto;min-width:0}.rulecard small{display:block;color:var(--muted)}.rulecard strong{font-size:22px;color:#20ad7b}.pointsadmin{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:18px 20px;border-radius:20px;background:#f4f9ff;border:1px solid #dceafb}.pointbig{display:flex;align-items:baseline;gap:6px;color:var(--brand)}.pointbig strong{font-size:34px}.pointbtns{display:flex;gap:10px;flex-wrap:wrap}.iconpick{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.iconpick button{width:44px;height:44px;border-radius:12px;font-size:22px;background:#fff;border:1px solid var(--line)}.iconpick button.active{border-color:#2c87ff;background:#eaf3ff}.rewardicon{font-size:26px}.pill{display:inline-block;margin-left:10px;padding:4px 12px;border-radius:99px;background:var(--brand);color:#fff;font-size:13px;font-weight:600;vertical-align:middle}.cheerlayer{position:fixed;left:50%;top:22%;transform:translate(-50%);z-index:40;display:flex;flex-direction:column;align-items:center;gap:10px;padding:26px 40px;border-radius:26px;background:#fffdf4;border:2px solid #ffd479;box-shadow:0 18px 40px #b8730a26;pointer-events:none}.cheerstar{font-size:68px;animation:cheerbounce .9s ease-in-out infinite}.cheerlayer p{margin:0;font-size:24px;font-weight:700;color:#b8730a}@keyframes cheerbounce{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.08)}}.cheer-enter-active,.cheer-leave-active{transition:opacity .25s,transform .25s}.cheer-enter-from,.cheer-leave-to{opacity:0;transform:translate(-50%,14px)}@media(min-width:1000px)and (max-width:1400px)and (max-height:850px){.pointstabs button{min-height:52px;font-size:18px}.wishgrid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.wishcard{padding:20px 22px}.wishfoot button{min-height:52px}.progressbar{height:14px}.iconpick button{width:54px;height:54px;font-size:26px}.rulecard{padding:18px 20px}.cheerlayer{padding:30px 52px}.cheerlayer p{font-size:28px}.desktop:not(.parent) .toast{font-size:18px;padding:18px 30px;bottom:120px;max-width:78vw}}
