.accordion-gallery[data-v-e6abe6a1]{--ag-accent:#f1f7ff;--ag-overlay:#263352;--ag-text:#f4f8ff;--ag-gap:10px;--ag-radius:16px;--ag-media-size:320px;gap:var(--ag-gap);perspective:1400px;perspective-origin:50%;flex-direction:row;width:100%;max-width:100%;display:flex}.accordion-gallery--vertical[data-v-e6abe6a1]{flex-direction:column}.ag-panel[data-v-e6abe6a1]{border-radius:var(--ag-radius);min-width:0;min-height:0;color:var(--ag-text);cursor:pointer;text-align:left;transform-style:preserve-3d;transform-origin:50%;will-change:flex-grow, transform;-webkit-tap-highlight-color:transparent;background:#091725;border:1px solid #b8d9e145;outline:none;flex:1 1 0;padding:0;text-decoration:none;display:block;position:relative;overflow:hidden;box-shadow:0 14px 34px -18px #000712c7}.ag-panel[data-v-e6abe6a1]:hover,.ag-panel--active[data-v-e6abe6a1]{border-color:#b8dde56b}.ag-panel[data-v-e6abe6a1]:active{filter:brightness(.96)}.ag-panel[data-v-e6abe6a1]:focus-visible{box-shadow:0 0 0 2px var(--ag-accent), 0 14px 34px -18px #000712c7}.ag-panel__frame[data-v-e6abe6a1]{border-radius:inherit;position:absolute;inset:0;overflow:hidden}.ag-panel__media[data-v-e6abe6a1]{--ag-gray:1;--ag-dim:.35;width:var(--ag-media-size);z-index:0;height:100%;filter:grayscale(var(--ag-gray));will-change:transform, filter;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.accordion-gallery--vertical .ag-panel__media[data-v-e6abe6a1]{width:100%;height:var(--ag-media-size)}.ag-panel__media img[data-v-e6abe6a1],.ag-panel__placeholder[data-v-e6abe6a1]{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.ag-panel__placeholder[data-v-e6abe6a1]{background:radial-gradient(circle at 76% 18%,#81c8c42e 0 2px,#0000 3px),radial-gradient(circle at 56% 31%,#deb06d36 0 2px,#0000 3px),radial-gradient(circle at 84% 58%,#a9cae52d 0 1px,#0000 2px),linear-gradient(148deg,#24465a,#102a3c 46%,#061626)}.ag-panel__overlay[data-v-e6abe6a1]{z-index:1;pointer-events:none;background:linear-gradient(180deg, #03112894 0%, #020e22a8 100%), color-mix(in srgb, var(--ag-overlay) calc(var(--ag-dim) * 100%), transparent);position:absolute;inset:0}.ag-panel__label[data-v-e6abe6a1]{z-index:2;pointer-events:none;align-items:flex-start;gap:12px;display:flex;position:absolute;top:20px;left:22px;right:22px}.ag-panel__bar[data-v-e6abe6a1]{opacity:0;background:var(--ag-accent);width:3px;height:54px;box-shadow:0 5px 14px color-mix(in srgb, var(--ag-accent) 28%, transparent);border-radius:3px;flex:none}.ag-panel__text[data-v-e6abe6a1]{color:var(--ag-text);text-overflow:ellipsis;text-shadow:0 3px 14px #020810a8;opacity:0;gap:6px;font-family:inherit;display:grid;overflow:hidden}.ag-panel__text b[data-v-e6abe6a1]{letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.3rem,2vw,2rem);font-weight:780;line-height:1.05;overflow:hidden}.ag-panel__text small[data-v-e6abe6a1]{color:#d7e7ff;letter-spacing:.01em;text-overflow:ellipsis;white-space:nowrap;max-width:31ch;font-size:.82rem;font-weight:560;line-height:1.35;overflow:hidden}.ag-panel__hint[data-v-e6abe6a1]{color:#f1f7ff;letter-spacing:.03em;text-shadow:0 2px 10px #020810b8;width:fit-content;margin-top:3px;font-size:.76rem;font-weight:720;line-height:1.25}.ag-panel--active:hover .ag-panel__hint span[data-v-e6abe6a1]{transform:translate(3px)}.ag-panel__hint span[data-v-e6abe6a1]{margin-left:3px;transition:transform .22s;display:inline-block}@media (width<=520px){.accordion-gallery[data-v-e6abe6a1]{perspective:none;flex-direction:column;height:auto!important}.ag-panel[data-v-e6abe6a1]{min-height:84px;transform:none!important}.accordion-gallery .ag-panel__media[data-v-e6abe6a1]{width:100%;height:var(--ag-media-size)}}@media (prefers-reduced-motion:reduce){.ag-panel[data-v-e6abe6a1],.ag-panel__media[data-v-e6abe6a1]{will-change:auto}}:root{color:#172743;font-synthesis:none;background:#dce5ef;font-family:Microsoft YaHei UI,Noto Sans CJK SC,system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}body{color:#172743;background:radial-gradient(circle at 12% 8%,#f8fbff 0,#0000 27rem),radial-gradient(circle at 85% 12%,#b9c8dd 0,#0000 30rem),linear-gradient(135deg,#d8e3ef,#f3f5f9 52%,#c9d5e7);min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer;border:0}button:disabled{opacity:.48;cursor:not-allowed}input,textarea{color:#172743;background:#fbfdff;border:1px solid #c5d0e0;border-radius:12px;outline:none;width:100%;padding:.75rem .85rem;transition:all .2s}.muted{color:#667797}.eyebrow{letter-spacing:.13em;color:#58719b;text-transform:uppercase;margin:0 0 .4rem;font-size:.72rem;font-weight:800}.primary,.secondary{border-radius:12px;padding:.7rem 1rem;font-weight:700;transition:all .2s}.primary{color:#fff;background:linear-gradient(135deg,#334e7b,#536f9e);box-shadow:0 8px 18px #344f7b35}.primary:hover{transform:translateY(-1px);box-shadow:0 12px 24px #344f7b42}.secondary{color:#36527d;background:#e9eff7;border:1px solid #cad7e8}.wide{width:100%}.text-button{color:#405f90;background:0 0;padding:.4rem;font-weight:700}.status{white-space:nowrap;border-radius:99px;align-items:center;padding:.27rem .56rem;font-size:.75rem;font-weight:800;display:inline-flex}.auth-shell{grid-template-columns:minmax(320px,1.12fr) minmax(370px,.88fr);align-items:center;gap:clamp(1rem,5vw,5rem);min-height:100vh;padding:clamp(1rem,4vw,4rem);display:grid;overflow:hidden}.auth-art{justify-content:center;align-items:center;min-height:650px;display:flex;position:relative}.auth-art:before{content:"";background:radial-gradient(circle,#f8fbff99 0 20%,#9eafd050 40%,#0000 67%);border-radius:50%;width:38rem;height:38rem;position:absolute}.auth-art .robot{z-index:2;filter:drop-shadow(0 22px 23px #34446738);width:min(31rem,80%);animation:5s ease-in-out infinite float;position:relative}.auth-art p{z-index:3;letter-spacing:-.06em;color:#2f4d7d;font-size:clamp(2.2rem,5vw,4.8rem);font-weight:900;line-height:.95;position:absolute;bottom:11%;left:12%}.auth-art p span{letter-spacing:.18em;color:#6c85aa;font-size:.72rem}.orbit{border:1px solid #6080ad55;border-radius:50%;position:absolute;transform:rotate(-20deg)}.orbit-a{width:78%;height:35%;top:25%}.orbit-b{width:66%;height:29%;top:33%;transform:rotate(28deg)}.stars{color:#d79b43;letter-spacing:.5rem;font-size:1.5rem;position:absolute;top:18%;right:12%}.auth-panel{border-radius:30px;max-width:500px;padding:clamp(1.5rem,4vw,3rem)}.auth-panel h1{letter-spacing:-.045em;margin:.4rem 0 1rem;font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.16}.tabs{border-bottom:1px solid #d5ddeb;margin:2rem 0 1.2rem;display:flex}.tabs button{color:#74819a;background:0 0;padding:.6rem 1rem;font-weight:700}.tabs button.active{color:#365887;border-bottom:2px solid #365887}.auth-panel form{gap:1rem;display:grid}.auth-panel label,.modal label{color:#3a4d6d;gap:.4rem;font-size:.88rem;font-weight:700;display:grid}.form-error{color:#bd3f5a;margin:0}.demo{color:#78869d;border-top:1px solid #dce3ed;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding-top:1rem;font-size:.78rem;display:flex}.demo button{color:#4b6390;background:#edf2f8;border-radius:8px;margin-left:.4rem;padding:.32rem .55rem}.app-shell{gap:1rem;min-height:100vh;padding:1rem;display:flex}.sidebar{border-radius:23px;flex-direction:column;flex:none;width:245px;height:calc(100vh - 2rem);padding:1.2rem;display:flex;position:sticky;top:1rem}.brand{color:#28466f;align-items:center;gap:.65rem;padding:.35rem .35rem 1.7rem;font-size:1.03rem;font-weight:900;display:flex}.brand small{color:#8290a6;letter-spacing:.12em;font-size:.62rem;font-weight:600;display:block}.brand-mark{color:#fff;background:#405c8b;border-radius:50%;place-items:center;width:34px;height:34px;font-size:1.4rem;display:grid}.sidebar nav{gap:.28rem;display:grid}.sidebar nav button{text-align:left;color:#60708b;background:0 0;border-radius:11px;padding:.7rem .8rem;font-weight:700;transition:all .2s}.sidebar-bottom{gap:.4rem;margin-top:auto;padding:.8rem;display:grid}.role-chip{color:#58719b;font-size:.72rem}.content{flex:1;min-width:0;max-width:1440px;margin:auto;padding:1.1rem clamp(.5rem,2vw,2rem) 2rem}.content>header{justify-content:space-between;align-items:flex-start;margin-bottom:1.6rem;display:flex}.content h1{letter-spacing:-.055em;color:#1f365c;margin:0;font-size:clamp(1.65rem,2.5vw,2.35rem)}.header-tools{align-items:center;gap:.5rem;font-size:.8rem;display:flex}.live-dot{background:#48af83;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #48af8324}.avatar,.student-avatar,.da-avatar{border-radius:50%;place-items:center;font-weight:900;display:grid}.avatar{color:#fff;background:#496795;width:36px;height:36px}.hero{border-radius:28px;justify-content:space-between;gap:1rem;min-height:280px;padding:clamp(1.5rem,4vw,3rem);display:flex;position:relative;overflow:hidden}.hero:after{content:"";border:1px solid #7f95b645;border-radius:50%;width:480px;height:480px;position:absolute;top:-120px;right:-240px}.hero>div:first-child{z-index:1;max-width:650px;position:relative}.hero h2{letter-spacing:-.06em;margin:.2rem 0 .75rem;font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.1}.hero p{color:#5f7191;max-width:500px;margin:0 0 1.3rem}.hero-pet{z-index:1;place-items:center;width:260px;display:grid;position:relative}.hero-pet img{object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 13px 13px #384e751e);width:190px;height:190px;position:relative}.hero-pet span{color:#36517e;background:#ffffffb8;border-radius:99px;padding:.35rem .6rem;font-size:.76rem;font-weight:800}.pet-glow{background:radial-gradient(circle,#f4d98d70,#0000 65%);border-radius:50%;width:185px;height:185px;position:absolute}.quick-grid{grid-template-columns:repeat(4,1fr);gap:1rem;margin:1rem 0;display:grid}.metric{border-radius:18px;gap:.25rem;min-height:130px;padding:1.15rem;display:grid}.metric span{color:#637491;font-size:.81rem;font-weight:700}.metric strong{letter-spacing:-.07em;color:#234571;font-size:1.8rem}.metric strong i{letter-spacing:0;color:#73839c;font-size:.75rem;font-style:normal}.metric small{color:#8a97aa;font-size:.76rem}.name-metric{letter-spacing:-.03em!important;font-size:1.13rem!important}.home-bottom{grid-template-columns:minmax(260px,.9fr) minmax(400px,1.1fr);gap:1rem;display:grid}.task-card,.journey-card,.calendar-card,.history-list,.roster,.table-wrap{border-radius:20px;padding:1.4rem}.card-heading,.list-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.card-heading h3,.list-head h2{margin:.15rem 0;font-size:1.25rem}.task-line{align-items:center;gap:.8rem;margin:1.5rem 0;display:flex}.task-icon{color:#426196;background:#e8eef8;border-radius:13px;place-items:center;width:44px;height:44px;display:grid}.task-line p{color:#71819c;margin:.25rem 0;font-size:.84rem}.stamps{grid-template-columns:repeat(6,1fr);gap:.55rem;margin-top:1.4rem;display:grid}.stamp{aspect-ratio:1;color:#92a0b5;text-align:center;background:#e8edf5;border-radius:13px;place-items:center;padding:.3rem;display:grid}.stamp b{font-size:1rem}.stamp span{font-size:.62rem}.stamp.verified{color:#67431e;background:linear-gradient(135deg,#f8dc7c,#dc9d44);box-shadow:0 6px 16px #d99c4840}.stamp.ready{color:#335a82;background:#dceaf4}.page-section{gap:1.2rem;display:grid}.page-intro h2,.plan-head h2,.detail-title h2{letter-spacing:-.05em;margin:.1rem 0 .25rem;font-size:1.8rem}.page-intro p,.plan-head p,.detail-title p{color:#667797;margin:0}.notice-card{color:#71562c;background:#fff8e8;border:1px solid #e6cf9b;border-radius:11px;padding:1rem 1.2rem}.da-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.da-card{cursor:pointer;border-radius:19px;gap:.8rem;padding:1.2rem;transition:all .2s;display:flex;position:relative}.da-avatar{color:#3c5c8c;background:#dce6f3;flex:none;width:44px;height:44px}.da-card h3{margin:0;font-size:1rem}.da-card p{color:#667797;margin:.3rem 0;font-size:.84rem}.da-card small{color:#7c8ca5;font-size:.73rem}.select-dot{border:1px solid #93a5bd;border-radius:50%;width:12px;height:12px;position:absolute;top:1rem;right:1rem}.selected .select-dot{background:#4e6995;box-shadow:inset 0 0 0 3px #fff}.empty-state{border-radius:25px;align-items:center;gap:2rem;min-height:300px;padding:2rem;display:flex}.empty-state img{object-fit:contain;mix-blend-mode:multiply;width:180px;height:180px}.empty-state h2{letter-spacing:-.05em;font-size:1.8rem}.plan-head{border-radius:21px;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem;display:flex}.week-columns{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.week-card{border-radius:18px;padding:1rem}.week-card>div{border-bottom:1px solid #e2e9f2;gap:.15rem;padding-bottom:.75rem;display:grid}.week-card span{color:#7486a2;font-size:.72rem;font-weight:800}.week-card strong{color:#314f7c}.week-card ul{gap:.55rem;margin:.8rem 0 0;padding:0;list-style:none;display:grid}.week-card li{color:#596a85;align-items:flex-start;gap:.45rem;font-size:.78rem;display:flex}.week-card li i{border:1px solid #a7b7cc;border-radius:50%;flex:none;width:8px;height:8px;margin-top:.25rem}.week-card li.complete i{background:#50aa86;border-color:#50aa86}.week-card li.rest{opacity:.5}.record-layout,.growth-layout,.detail-grid,.settings-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.checkin-panel,.calendar-card{border-radius:21px;padding:1.5rem}.checkin-panel h2{letter-spacing:-.05em;margin:.1rem 0 1.3rem;font-size:1.7rem}.checkin-panel label{color:#53647e;gap:.35rem;margin:.75rem 0;font-size:.85rem;font-weight:700;display:grid}.checkin-panel .check{align-items:center;gap:.5rem;display:flex}.check input{width:auto}.upload-label{cursor:pointer;color:#42608e;background:#edf3fa;border:1px dashed #a6b8cf;border-radius:10px;padding:.65rem}.upload-label input{display:none}.calendar{grid-template-columns:repeat(7,1fr);gap:.45rem;margin-top:1rem;display:grid}.day{aspect-ratio:1;color:#92a0b3;background:#f2f5f9;border-radius:10px;place-items:center;display:grid}.day small{font-size:.61rem}.day b{font-size:.85rem}.day.today{outline:2px solid #6e83a9}.legend{color:#71819a;gap:.8rem;margin-top:1rem;font-size:.75rem;display:flex}.legend i{border-radius:3px;width:9px;height:9px;margin-right:.2rem;display:inline-block}.legend-rest{background:#eef1f5}.legend-todo{background:#f2f5f9}.history-list{gap:.2rem;display:grid}.history-list h3{margin:.1rem 0 .5rem}.history-row{border-bottom:1px solid #edf1f6;gap:.2rem;padding:.8rem 0;font-size:.85rem;display:grid}.history-row:last-child{border-bottom:0}.history-row small,.history-row span{color:#75849b}.history-row a{color:#386298;font-weight:700}.pet-card{border-radius:24px;align-items:center;padding:1.7rem;display:flex;position:relative;overflow:hidden}.pet-card h2{letter-spacing:-.05em;margin:.15rem 0;font-size:1.7rem}.pet-card p{color:#687a96;font-size:.87rem}.pet-card>img{object-fit:contain;mix-blend-mode:multiply;width:49%;height:96%;position:absolute;bottom:-1rem;right:-1rem}.pet-stats{gap:1.2rem;margin:1.1rem 0;display:flex}.pet-stats span{color:#365985;font-size:1.2rem;font-weight:900}.pet-stats small{color:#71819b;font-size:.68rem;font-weight:600;display:block}.growth-layout>article:nth-child(2){border-radius:24px;padding:1.5rem}.growth-layout h2{margin:.2rem 0 1rem;font-size:1.45rem}.stamp-list{gap:.25rem;display:grid}.stamp-row{border-bottom:1px solid #e9eef4;align-items:center;gap:.75rem;padding:.55rem;display:flex}.stamp-row:last-child{border-bottom:0}.stamp-row>b{color:#8492a6;background:#edf1f6;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.stamp-row.verified>b{color:#74522a;background:#f5d875}.stamp-row.ready>b{color:#426a91;background:#d9e9f5}.stamp-row div{flex:1;display:grid}.stamp-row small{color:#7b8aa0;font-size:.72rem}.rewards{border-radius:20px;padding:1.3rem}.rewards h3{margin:.1rem 0 1rem}.rewards>div{border-top:1px solid #edf1f6;grid-template-columns:100px 1fr 105px;gap:.7rem;padding:.6rem 0;font-size:.84rem;display:grid}.rewards small{color:#8593a8}.messages-layout{border-radius:25px;grid-template-columns:270px 1fr;min-height:520px;display:grid;overflow:hidden}.messages-layout aside{background:linear-gradient(160deg,#dce7f3aa,#f5f8fb55);padding:1.5rem;position:relative}.messages-layout aside h2{margin:.2rem 0;font-size:1.4rem}.messages-layout aside p{color:#647693;font-size:.86rem}.messages-layout aside img{mix-blend-mode:multiply;width:150px;position:absolute;bottom:1rem}.chat{flex-direction:column;gap:.55rem;padding:1.3rem;display:flex}.local-ai{color:#49688f;background:#eaf1f8;border-radius:10px;padding:.6rem;font-size:.78rem}.bubble{border-radius:14px;max-width:75%;padding:.65rem .8rem;font-size:.88rem}.bubble p{margin:.1rem 0}.bubble small{color:#7486a2;font-size:.68rem}.bubble.mine{color:#fff;background:#46628e;align-self:flex-end}.composer{gap:.5rem;margin-top:auto;display:flex}.composer input{flex:1}.composer .primary{flex:none}.roster{gap:.2rem;display:grid}.student-row{border-bottom:1px solid #e8eef5;align-items:center;gap:.85rem;padding:1rem 0;display:flex}.student-row:last-child{border-bottom:0}.student-avatar{color:#40638e;background:#dce6f3;flex:none;width:40px;height:40px}.student-row>div{flex:1}.student-row strong{font-size:.94rem}.student-row p{color:#71819b;margin:.15rem 0;font-size:.8rem}.back{color:#5270a0;text-align:left;background:0 0;padding:0;font-weight:700}.detail-title{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.detail-grid>article,.da-message,.settings-grid>article{border-radius:20px;padding:1.3rem}.detail-grid h3,.da-message h3,.settings-grid h3{margin:.1rem 0 1rem}.table-wrap{overflow:auto}.table-wrap table{border-collapse:collapse;text-align:left;width:100%;min-width:620px}.table-wrap th{color:#7788a1;background:#edf2f7;font-size:.75rem}.table-wrap th,.table-wrap td{border-bottom:1px solid #e6edf4;padding:.8rem;font-size:.84rem}.table-wrap .text-button{margin-right:.4rem}.settings-grid p{color:#6d7e97;font-size:.86rem}.switch{align-items:center;gap:.6rem;font-size:.86rem;font-weight:700;display:flex}.switch input{display:none}.switch span{background:#b9c5d5;border-radius:20px;width:38px;height:22px;transition:all .2s;position:relative}.switch span:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:all .2s;position:absolute;top:3px;left:3px}.switch input:checked+span:after{left:19px}.rule-row{border-bottom:1px solid #edf1f6;justify-content:space-between;padding:.65rem 0;font-size:.85rem;display:flex}.rule-row span{color:#72829b}.rule-editor{grid-column:span 2}.rule-editor>p{margin-top:0}.rule-fields{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.rule-fields label{color:#72829b;white-space:nowrap;align-items:center;gap:.25rem;display:flex}.rule-fields input{width:4.6rem;color:inherit;font:inherit;background:#0f2234;border:1px solid #9bb3cd66;border-radius:8px;margin:0;padding:.38rem .42rem}.rule-fields input[type=time]{width:6.5rem}.rule-save{margin-top:1rem}.toast{z-index:20;color:#fff;background:#273e65;border-radius:12px;padding:.75rem 1rem;font-size:.88rem;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #1e315b4a}.modal-backdrop{z-index:10;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17274373;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{border-radius:25px;width:min(760px,100%);max-height:92vh;padding:1.7rem;position:relative;overflow:auto}.modal h2{margin:.2rem 0;font-size:1.8rem}.close{color:#6c7e99;background:0 0;font-size:1.8rem;position:absolute;top:1rem;right:1rem}.goal-picker{grid-template-columns:1fr 1fr;gap:.65rem;margin:1rem 0;display:grid}.goal-picker button,.pet-picker button{text-align:left;color:#3d5478;background:#f5f8fb;border:1px solid #dce5f0;border-radius:13px;gap:.12rem;padding:.7rem;display:grid}.goal-picker button.selected,.pet-picker button.selected{background:#e8f0f9;border-color:#5d78a4}.goal-picker b{font-size:1.05rem}.goal-picker small{color:#7788a0;font-size:.7rem}.modal>label{margin:.85rem 0}.label{color:#3a4d6d;margin:.8rem 0 .35rem;font-size:.85rem;font-weight:700;display:block}.days{gap:.45rem;display:flex}.days button{color:#61728d;background:#ecf1f7;border-radius:50%;width:38px;height:38px;font-weight:800}.pet-picker{grid-template-columns:1fr 1fr;gap:.7rem;margin:1.1rem 0;display:grid}.pet-picker button{align-items:center;gap:.6rem;font-weight:700;display:flex}.pet-picker img{object-fit:contain;mix-blend-mode:multiply;width:50px;height:50px}.modal-actions{justify-content:flex-end;gap:.6rem;margin-top:1.3rem;display:flex}@keyframes float{50%{transform:translateY(-10px)}}@media (width<=1050px){.quick-grid{grid-template-columns:repeat(2,1fr)}.da-grid{grid-template-columns:1fr 1fr}.home-bottom{grid-template-columns:1fr}.hero-pet{width:200px}.week-columns{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.auth-shell{grid-template-columns:1fr;padding:1rem}.auth-art{min-height:240px}.auth-art:before,.orbit{display:none}.auth-art .robot{width:180px}.auth-art p{font-size:1.8rem;bottom:0;left:1rem}.auth-panel{max-width:none}.app-shell{padding:0;display:block}.sidebar{z-index:5;background:#eff4f9ee;border-radius:0;flex-direction:row;align-items:center;gap:1rem;width:100%;height:auto;padding:.65rem 1rem;display:flex;position:sticky;top:0}.brand{flex:none;padding:0}.brand small,.sidebar-bottom{display:none}.sidebar nav{flex:1;gap:.2rem;display:flex;overflow:auto}.sidebar nav button{white-space:nowrap;padding:.45rem .65rem;font-size:.78rem}.content{padding:1.2rem .8rem 2rem}.content>header{margin-bottom:1rem}.header-tools .muted{display:none}.hero{min-height:240px;padding:1.25rem}.hero h2{font-size:1.85rem}.hero-pet{width:110px}.hero-pet img{width:110px;height:110px}.hero-pet span{font-size:.6rem}.quick-grid{gap:.65rem}.metric{min-height:105px;padding:.85rem}.metric strong{font-size:1.35rem}.home-bottom,.record-layout,.growth-layout,.detail-grid,.settings-grid{grid-template-columns:1fr}.rule-editor{grid-column:auto}.stamps{gap:.3rem}.stamp span{font-size:.53rem}.da-grid{grid-template-columns:1fr}.empty-state{gap:.7rem;min-height:220px;padding:1.2rem}.empty-state img{width:100px;height:100px}.empty-state h2{font-size:1.35rem}.plan-head,.detail-title{flex-direction:column;align-items:flex-start}.week-columns{grid-template-columns:1fr}.messages-layout{grid-template-columns:1fr;min-height:480px}.messages-layout aside{display:none}.bubble{max-width:90%}.rewards>div{grid-template-columns:80px 1fr}.rewards small{grid-column:2}.modal{padding:1.3rem}.goal-picker,.pet-picker{grid-template-columns:1fr}.days{justify-content:space-between}.days button{width:34px;height:34px}.student-row{flex-wrap:wrap}.student-row>div{min-width:120px}.student-row .secondary,.student-row .primary{margin-left:auto}.calendar{gap:.25rem}.calendar-card{padding:1rem}}.da-pets-page{max-width:1120px}.da-companion-cabin{min-height:470px;padding:clamp(1.5rem,4vw,3rem);position:relative;overflow:hidden}.da-companion-copy{z-index:1;max-width:560px;position:relative}.da-companion-copy h2{color:#f7fbff;letter-spacing:-.04em;margin:0;font-size:clamp(1.85rem,3.2vw,2.6rem)}.da-companion-copy>p{color:#c6d8e9;margin:.55rem 0 0;font-size:1rem}.da-companion-status{gap:.25rem;margin-top:1.35rem;display:grid}.da-companion-status b{color:#c9f0e1;align-items:center;gap:.45rem;font-size:.86rem;display:flex}.da-companion-status b i{background:#48af83;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #48af8324}.da-companion-status span{color:#aec4d9;font-size:.8rem}.da-companion-lineup{z-index:1;grid-template-columns:repeat(3,minmax(110px,1fr));align-items:end;gap:.2rem;width:min(63%,700px);display:grid;position:absolute;bottom:2.8rem;right:clamp(1rem,3vw,3rem)}.da-companion-member{text-align:center;justify-items:center;gap:.15rem;min-width:0;display:grid;position:relative}.da-companion-member:nth-child(2){transform:translateY(-18px)}.da-companion-member img{z-index:1;object-fit:contain;filter:drop-shadow(0 18px 14px #263f651f);width:min(100%,210px);height:245px;position:relative}.da-companion-member:nth-child(3) img{height:245px;transform:scale(1.12)}.da-companion-member>div{z-index:2;gap:.1rem;display:grid;position:relative}.da-companion-member b{color:#f2f8ff;font-size:.95rem}.da-companion-member small{color:#bdd0e2;font-size:.72rem;font-weight:700}.da-companion-orbit{border:1px solid #7894b44f;border-radius:50%;width:74%;height:22px;position:absolute;bottom:2.1rem;transform:rotate(-7deg)}.da-companion-footer{z-index:2;color:#bdd0e2;gap:.7rem;font-size:.75rem;font-weight:700;display:flex;position:absolute;bottom:1rem;right:clamp(1rem,3vw,3rem)}.da-companion-footer span+span:before{content:"·";color:#8ca8c2;margin-right:.7rem}.da-onboarding-panel{width:min(900px,100%)}.da-onboarding-pets{grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:.8rem;display:grid}.da-onboarding-pets button{color:#2d4e7c;text-align:center;background:#f7faff;border:1px solid #d3deeb;border-radius:15px;justify-items:center;gap:.5rem;min-height:228px;padding:.85rem;transition:transform .2s,border-color .2s,background .2s;display:grid;position:relative}.da-onboarding-pets button:hover{background:#eef5fc;border-color:#7793b7;transform:translateY(-2px)}.da-onboarding-pets button:focus-visible{outline-offset:3px;outline:3px solid #526b9760}.da-onboarding-pets button.selected{background:#e6f0fa;border-color:#466895}.da-onboarding-pets img{object-fit:contain;filter:drop-shadow(0 10px 9px #34446720);width:112px;height:122px}.da-onboarding-pets span{gap:.1rem;display:grid}.da-onboarding-pets span b{font-size:.95rem}.da-onboarding-pets span small{color:#647a9d;font-size:.7rem;font-weight:700}.da-onboarding-pets em{color:#5c7598;background:#e2eaf4;border-radius:999px;padding:.22rem .45rem;font-size:.67rem;font-style:normal;font-weight:800;position:absolute;top:.6rem;right:.6rem}.da-onboarding-pets button.selected em{color:#fff;background:#42658f}.da-onboarding-footer{color:#496888;border-top:1px solid #d9e3ef;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.2rem;padding-top:1rem;font-size:.84rem;font-weight:800;display:flex}@media (width<=900px){.da-companion-cabin{min-height:580px}.da-companion-lineup{width:calc(100% - 2rem);left:1rem;right:auto}.da-companion-footer{left:1.5rem;right:auto}}@media (width<=760px){.da-companion-cabin{min-height:650px;padding:1.35rem}.da-companion-lineup{grid-template-columns:repeat(3,minmax(75px,1fr));gap:0;bottom:3.1rem}.da-companion-member:nth-child(2){transform:translateY(-8px)}.da-companion-member img{height:185px}.da-companion-member:nth-child(3) img{height:165px}.da-companion-member b{font-size:.8rem}.da-companion-member small{font-size:.61rem}.da-companion-orbit{height:17px;bottom:1.8rem}.da-companion-footer{font-size:.67rem;bottom:1rem}.da-onboarding-pets{grid-template-columns:1fr}.da-onboarding-pets button{text-align:left;grid-template-columns:104px 1fr;place-items:center start;min-height:130px}.da-onboarding-pets img{grid-row:1/3;width:100px;height:108px}.da-onboarding-pets em{top:.6rem;right:.6rem}.da-onboarding-footer{flex-direction:column;align-items:stretch}.da-onboarding-footer .primary{width:100%}}.local-ai b{margin-bottom:.15rem;display:block}body{background-color:#0000;background-image:radial-gradient(49rem 34rem at -7% -12%,#9dbfeb85 0%,#9dbfeb3d 31%,#0000 66%),radial-gradient(45rem 34rem at 105% 2%,#cdc8e670 0%,#cdc8e62f 28%,#0000 65%),radial-gradient(38rem 30rem at 91% 105%,#70a0df58 0%,#0000 65%),radial-gradient(30rem 26rem at 13% 91%,#c7d4e85b 0%,#0000 67%),linear-gradient(135deg,#e9e7e0 0%,#edf2f7 48%,#dce6f2 100%);background-position:0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box}.glass{background:linear-gradient(135deg,#f9fbfee0,#e8f0fa9e);border-color:#ffffffd6;box-shadow:0 18px 50px #31446c22}.solid{background:#f8f9f9e8;border-color:#d2d9e1;box-shadow:0 14px 36px #31446c16}.hero{background:radial-gradient(circle at 86% 24%,#9dbfeb9a 0%,#0000 18rem),radial-gradient(circle at 9% 105%,#cdc8e66a 0%,#0000 20rem),linear-gradient(135deg,#f7f9fce0,#dbe7f49c)!important}.sidebar{background:linear-gradient(160deg,#f8fafce0,#dee8f3ad)}.primary{background:linear-gradient(135deg,#31446c,#2f509b);box-shadow:0 8px 18px #31446c38}.brand-mark{background:#31446c}.sidebar nav button:hover,.sidebar nav button.active{color:#31446c;background:#ffffffa8}.local-ai span{display:block}.assistant-controls{gap:.45rem;margin-top:.55rem;display:flex}.assistant-controls input{padding:.45rem .6rem;font-size:.78rem}.assistant-controls .secondary{white-space:nowrap;padding:.42rem .7rem;font-size:.76rem}.assistant-reply{color:#3f5578;margin:.55rem 0 0;line-height:1.55}.assistant-reply small{color:#7486a2;letter-spacing:.04em;margin-top:.35rem;font-size:.68rem;display:block}.profile-form{gap:.8rem;display:grid}.profile-form label{color:#53647e;gap:.35rem;font-size:.84rem;font-weight:700;display:grid}.relation-select{color:#45618a;font:inherit;background:#f7fafe;border:1px solid #c9d6e6;border-radius:9px;padding:.48rem;font-size:.8rem}.plan-actions{flex-wrap:wrap;gap:.55rem;display:flex}.certificate-button{margin-top:1rem}.evidence-delete{color:#9e4c58;align-self:start;padding:0;font-size:.76rem}.auth-art .robot,.hero-pet img,.pet-card>img,.empty-state img,.pet-picker img,.messages-layout aside img{mix-blend-mode:normal;transform-origin:50% 88%;will-change:transform}.auth-art .robot{animation:4.8s ease-in-out infinite mascot-hover}.hero-pet img{animation:3.7s ease-in-out infinite mascot-breathe}.pet-card>img{animation:4.1s ease-in-out .25s infinite mascot-breathe}.empty-state img{animation:5.2s ease-in-out .45s infinite mascot-hover}.messages-layout aside img{animation:4.6s ease-in-out infinite mascot-wave}.pet-picker img{transition:transform .28s cubic-bezier(.2,.8,.2,1)}.pet-picker button:hover img,.pet-picker button.selected img{transform:translateY(-3px)rotate(-2deg)scale(1.06)}.hero-pet img.sleeping,.pet-card>img.sleeping{filter:saturate(.78)drop-shadow(0 13px 13px #384e751e);animation:4.8s ease-in-out infinite mascot-sleep}@keyframes mascot-hover{0%,to{transform:translateY(0)rotate(-.35deg)}50%{transform:translateY(-9px)rotate(.45deg)}}@keyframes mascot-breathe{0%,to{transform:translateY(0)scale(1)}48%{transform:translateY(-5px)scale(1.018)}}@keyframes mascot-wave{0%,to{transform:translateY(0)rotate(0)}35%{transform:translateY(-5px)rotate(-1.4deg)}65%{transform:translateY(-2px)rotate(1.2deg)}}@keyframes mascot-sleep{0%,to{transform:translateY(1px)scale(1)}50%{transform:translateY(0)scale(1.012,.992)}}@media (prefers-reduced-motion:reduce){.auth-art .robot,.hero-pet img,.pet-card>img,.empty-state img,.messages-layout aside img{animation:none}}@media (width<=760px){.assistant-controls{flex-wrap:wrap}.relation-select{margin-left:auto}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#e8eef8;background:#050c16;font-family:Segoe UI Variable Text,Microsoft YaHei UI,PingFang SC,system-ui,sans-serif}body{color:#e8eef8;background:linear-gradient(135deg,#050c16ed 0%,#0a1725e3 48%,#08111dec 100%),url(/backgrounds/cosmic-mist.jpg) 50%/cover fixed}.app-shell{background:radial-gradient(circle at 82% 6%,#2f509b32 0,#0000 28rem),radial-gradient(circle at 18% 92%,#e69a5c12 0,#0000 25rem),linear-gradient(140deg,#030a12b8,#0a152198),url(/backgrounds/cosmic-mist.jpg) 50%/cover fixed}h1,h2,h3,.auth-art p{text-wrap:balance;font-family:Segoe UI Variable Display,Aptos Display,Microsoft YaHei UI,sans-serif}h1,h2,h3,strong{color:#f3f7fd}p{color:#a9b7ca}.muted,.page-intro p,.plan-head p,.detail-title p{color:#8fa0b8}.eyebrow{color:#90b8ee;letter-spacing:.14em}.glass{-webkit-backdrop-filter:blur(24px)saturate(125%);backdrop-filter:blur(24px)saturate(125%);background:linear-gradient(145deg,#15283bbb,#0a1725a8);border:1px solid #a6c2e42b;box-shadow:0 22px 60px #00071366,inset 0 1px #ffffff12}.solid{background:linear-gradient(145deg,#111f2ded,#091521ed);border:1px solid #7996ba27;box-shadow:0 16px 42px #00071052,inset 0 1px #ffffff0a}input,textarea,.relation-select{color:#edf4ff;background:#071321c9;border-color:#6686ad55}input::placeholder,textarea::placeholder{color:#70849f}input:focus,textarea:focus{border-color:#70a0df;box-shadow:0 0 0 3px #70a0df22,0 8px 24px #00040c38}.primary{color:#f7fbff;background:linear-gradient(135deg,#4574c2,#2f509b 62%,#31446c);border:1px solid #90bfeb38;box-shadow:0 10px 26px #21478a55,inset 0 1px #ffffff26}.secondary{color:#c9dcf6;background:#16283bc9;border-color:#6f91b95c}.secondary:hover{background:#1b3249e6;border-color:#90bfeb78}.text-button,.back{color:#90bfeb}.auth-shell{background:linear-gradient(90deg,#02091291 0%,#06101bd4 48%,#050c16f2 100%),url(/backgrounds/login-horizon.jpg) 45%/cover fixed}.auth-art:before{background:radial-gradient(circle,#70a0df2c 0 22%,#2f509b18 42%,#0000 68%)}.auth-art p{color:#edf5ff;letter-spacing:-.035em;text-shadow:0 5px 28px #000a16;font-size:clamp(2rem,3.6vw,3.65rem);font-weight:720;bottom:9%}.auth-art p span{color:#9dbfeb}.auth-panel{background:linear-gradient(145deg,#132538d6,#081522c7)}.auth-panel h1{color:#f5f8fd;letter-spacing:-.035em;font-size:clamp(1.85rem,2.7vw,2.55rem);font-weight:720;line-height:1.2}.auth-panel label,.modal label,.label{color:#bdcbe0}.tabs{border-color:#60799838}.tabs button{color:#71859f}.tabs button.active{color:#b9d3f5;border-color:#70a0df}.demo{color:#7f91a7;border-color:#60799832;flex-wrap:wrap;justify-content:flex-end;gap:.45rem}.demo button{color:#b9d2f2;background:#172b3dc7;border:1px solid #6384ac36;min-height:2.35rem;margin-left:0;transition:color .18s,background .18s,border-color .18s,box-shadow .18s}.demo button.active{color:#f2ddc2;background:linear-gradient(135deg,#2f5969d9,#40352bd9);border-color:#d5a267aa;box-shadow:inset 0 1px #ffe1bd33,0 5px 14px #0a17244d}.sidebar{background:linear-gradient(165deg,#122438e8,#07131ee8);border-color:#8ba8cd2d}.brand{color:#f1f6fd}.brand small{color:#7890ad}.brand-mark{background:linear-gradient(145deg,#4574c2,#263c62);box-shadow:0 0 24px #70a0df3d}.sidebar nav button{color:#9bacc1}.sidebar nav button:hover,.sidebar nav button.active{color:#f1f6fd;background:linear-gradient(90deg,#4574c238,#90bfeb0a);box-shadow:inset 3px 0 #70a0df,inset 0 0 0 1px #90bfeb18}.role-chip{color:#82a9dc}.content>header{padding:.45rem .2rem}.content h1{color:#f0f5fc;letter-spacing:-.035em;font-size:clamp(1.5rem,2vw,1.95rem);font-weight:700}.avatar{color:#fff;background:linear-gradient(145deg,#4574c2,#263c62);overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.hero{border-color:#90bfeb31;min-height:270px;background:linear-gradient(90deg,#06101bf2 0%,#0a1826c9 46%,#08121f59 100%),url(/backgrounds/home-orbit.jpg) 62%/cover!important}.hero h2{color:#f5f8fd;letter-spacing:-.035em;font-size:clamp(1.72rem,2.8vw,2.45rem);font-weight:720;line-height:1.16}.hero p{color:#a8b8cc}.hero:after{border-color:#90bfeb2f;box-shadow:0 0 80px #2f509b16}.hero-pet span{color:#dbe9f9;background:#071522b8;border:1px solid #90bfeb30}.pet-glow{background:radial-gradient(circle,#f2b36d45 0,#70a0df20 35%,#0000 68%)}.metric{background:linear-gradient(145deg,#142538ec,#091522e8)}.metric span,.metric small{color:#8295ae}.metric strong{color:#dceaff}.task-card,.journey-card,.calendar-card,.history-list,.roster,.table-wrap{border-color:#7996ba24}.task-icon{color:#b7d5fa;background:#2f509b42}.task-line p,.history-row small,.history-row span{color:#8497b0}.week-card>div,.history-row,.stamp-row,.student-row,.rewards>div,.rule-row,.table-wrap th,.table-wrap td{border-color:#7895b622}.stamps .stamp,.stamp-row>b{color:#8395ab;background:#152637}.stamp.verified,.stamp-row.verified>b{color:#17130d;background:linear-gradient(135deg,#f5c878,#d88f50)}.stamp.ready,.stamp-row.ready>b{color:#d8eaff;background:#2f509b8f}.plan-head{background:linear-gradient(90deg,#07121fbc 0%,#0b18278c 55%,#07111f38 100%),url(/backgrounds/six-week-map.jpg) 70%/cover;border:1px solid #8db3e237;min-height:128px}.plan-head h2,.page-intro h2,.detail-title h2{color:#f2f6fc;letter-spacing:-.025em;font-size:clamp(1.45rem,2.2vw,1.9rem);font-weight:700}.week-card{background:linear-gradient(150deg,#122236f2,#08131ff0)}.week-card>div strong,.pet-stats span{color:#a9cbf6}.week-card li{color:#a1b1c5}.week-card li i{border-color:#6784aa}.notice-card{color:#f0c892;background:#4028188a;border-color:#e69a5c}.da-card{background:linear-gradient(145deg,#122337ed,#091521ed)}.da-card:hover,.da-card.selected{border-color:#70a0df;box-shadow:0 16px 34px #00081473,0 0 28px #2f509b1f}.da-avatar,.student-avatar{color:#cfe2fc;background:#2f509b56}.da-card p,.da-card small,.student-row p{color:#8ea0b8}.profile-summary{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1.15rem;display:grid}.profile-summary h2{color:#edf6ff;letter-spacing:-.03em;margin:0;font-size:clamp(1.35rem,2vw,1.85rem)}.profile-summary .muted{color:#9fb6cc;margin:.3rem 0 .35rem}.profile-avatar-upload{justify-items:center;gap:.55rem;display:grid}.profile-avatar-preview{color:#eff8ff;background:linear-gradient(145deg,#4574c2,#263c62);border:1px solid #8db6dc8f;border-radius:50%;place-items:center;width:5rem;height:5rem;font-size:1.8rem;font-weight:800;display:grid;overflow:hidden;box-shadow:0 12px 24px #00081475}.profile-avatar-preview img{object-fit:cover;width:100%;height:100%}.avatar-upload-button{color:#d5eaff;cursor:pointer;background:#17334ccc;border:1px solid #6e9fca8c;border-radius:9px;align-items:center;gap:.35rem;padding:.42rem .62rem;font-size:.72rem;font-weight:750;transition:transform .18s,background .18s,border-color .18s;display:inline-flex}.avatar-upload-button:hover{background:#204665;border-color:#a7d1f4;transform:translateY(-1px)}.avatar-upload-button:focus-within{outline-offset:3px;outline:2px solid #9ed8ff}.avatar-upload-button input{opacity:0;width:1px;height:1px;position:absolute}.profile-upload-hint{color:#7896b2;font-size:.7rem}.profile-summary .notice-card{grid-column:1/-1;margin-top:.1rem}.da-time-settings{border-radius:16px;gap:.85rem;padding:1.25rem 1.4rem;display:grid}.da-time-settings h2,.da-time-settings p{margin:0}.da-time-settings p{color:#a8bfd4;font-size:.84rem;line-height:1.6}.schedule-request-form{grid-template-columns:minmax(8rem,1fr) minmax(7rem,.75fr) minmax(7rem,.75fr) auto;align-items:end;gap:.65rem;display:grid}.schedule-request-form label{color:#bfd1e4;gap:.35rem;font-size:.76rem;font-weight:750;display:grid}.schedule-request-form select,.schedule-request-form input{color:#edf4ff;background:#071321c9;border:1px solid #6686ad55;border-radius:10px;min-height:2.55rem;padding:.5rem .65rem}.schedule-request-form .primary{white-space:nowrap;min-height:2.55rem}.da-time-setup>p{color:#9eb4cd;margin:-.25rem 0 .65rem;font-size:.78rem;line-height:1.55}.schedule-request-list{margin-top:1rem}.checkin-panel,.calendar-card{background:linear-gradient(145deg,#102135ef,#081522ed)}.checkin-panel label{color:#adbed3}.upload-label{color:#aac9ef;background:#14283bbb;border-color:#668bb8}.day{color:#70839c;background:#101e2d}.day.done-day{color:#b9dcff;background:#153f65}.day.rest{color:#64758c;background:#0c1824}.day.today{outline-color:#70a0df}.legend{color:#8294aa}.legend-done{background:#2d628f}.pet-card>div{max-width:57%}.pet-card>img{object-position:center bottom;filter:drop-shadow(0 18px 22px #02091470);width:38%;max-width:330px;height:87%;bottom:.7rem;right:1.45rem}.pet-card p{color:#9fb0c5}.growth-layout>article:nth-child(2){background:linear-gradient(145deg,#101f30f2,#08131ff2)}.rewards{background:linear-gradient(90deg,#091522dd,#0b1a2a9e),url(/backgrounds/achievement-route.jpg) 50%/cover}.growth-page{gap:1rem}.growth-companion-only{grid-template-columns:minmax(0,1fr)}.growth-companion-only .pet-card{background-position:72%;min-height:clamp(29rem,61vh,38rem)}.growth-companion-only .pet-card>div{max-width:min(44rem,51%)}.growth-companion-only .pet-stage{width:min(25%,18rem);height:68%;bottom:2.5rem;right:clamp(10rem,18vw,21rem)}.growth-companion-only .pet-stage img{max-width:18rem}.growth-companion-only .pet-stage .pet-bubble{max-width:15.5rem;top:-4rem;right:clamp(-19.5rem,1.25rem - 18vw,-8.75rem)}.growth-page .rewards{margin-top:0}@media (width<=760px){.growth-companion-only .pet-card{background-position:66%;min-height:430px}.growth-companion-only .pet-card>div{max-width:57%}.growth-companion-only .pet-stage{width:44%;height:84%;bottom:.8rem;right:.35rem}.growth-companion-only .pet-stage .pet-bubble{max-width:9rem;top:.8rem;right:calc(100% + .45rem)}}.messages-layout{background:#081522df}.messages-layout aside{background:linear-gradient(#0713218c,#06101ac4),url(/backgrounds/message-station.jpg) 50%/cover}.messages-layout aside p{color:#9cafc7}.chat{background:linear-gradient(145deg,#0c1b2ad9,#07131fda)}.local-ai{color:#bad7f9;background:#162b3fce;border:1px solid #70a0df2b}.assistant-reply{color:#c7d9ef}.assistant-reply small{color:#7892b2}.bubble.mine{color:#f5f8fe;background:linear-gradient(145deg,#4574c2,#2f509b)}.bubble.mine small{color:#d4e4f8}.bubble.other{color:#d8e4f2;background:#17293b}.bubble small{color:#8197b3}.modal-backdrop{background:#020810b8}.modal{background:linear-gradient(145deg,#122438f7,#07131ff7);border-color:#8caad038}.close{color:#9db5d2}.goal-picker button,.pet-picker button{color:#c9d7e9;background:#0d1c2be8;border-color:#6484ab3d}.goal-picker button.selected,.pet-picker button.selected{color:#eef6ff;background:linear-gradient(145deg,#25497a8f,#132b47c7);border-color:#70a0df}.goal-picker small{color:#8093ac}.days button{color:#879bb5;background:#132536}.days button.chosen{color:#fff;background:linear-gradient(145deg,#4574c2,#2f509b)}.status.done{color:#b9dcff;background:#153f65}.status.pending{color:#c4d8ec;background:#1b3047}.form-error{color:#ff91a6}.table-wrap th{color:#91a6c0;background:#122537}.settings-grid p{color:#91a3ba}.switch span{background:#34475e}.switch input:checked+span{background:#4574c2}@media (width<=760px){.auth-shell{background:linear-gradient(#030a13a8,#06101bdc 52%,#050c16f7),url(/backgrounds/mobile-horizon.png) 50% 40%/cover fixed}.auth-art p{font-size:1.65rem}.sidebar{background:#07131ff2;border-bottom:1px solid #8aa8cc25}.hero{background-position:68%!important}.hero h2{font-size:1.65rem}.content h1{font-size:1.45rem}.plan-head{background-position:72%}.pet-card{background-position:70%}.pet-card>div{max-width:58%}.pet-card>img{width:43%;height:82%;bottom:.45rem;right:.6rem}}.app-shell{isolation:isolate;position:relative;overflow-x:clip}.app-shell:before{content:"";z-index:0;pointer-events:none;filter:blur(42px)saturate(110%);opacity:.82;background:radial-gradient(38% 30% at 8% 18%,#2a9d8f4d 0%,#2a9d8f19 44%,#0000 72%),radial-gradient(34% 24% at 88% 16%,#e69a5c38 0%,#e69a5c12 42%,#0000 70%),radial-gradient(46% 28% at 62% 88%,#4cb5ae31 0%,#4cb5ae10 48%,#0000 74%),radial-gradient(28% 22% at 18% 78%,#f2b36d24 0%,#0000 70%);animation:19s ease-in-out infinite alternate aurora-drift;position:fixed;inset:-18%;transform:translate(0,0)rotate(-3deg)}.sidebar,.content{z-index:1;position:relative}.glass{-webkit-backdrop-filter:blur(25px)saturate(145%)brightness(1.06);background:linear-gradient(145deg,#27435b91 0%,#122b3f7d 42%,#0718268c 100%);border:1px solid #c5def044;box-shadow:0 24px 62px #00071261,inset 0 1px #ffffff36,inset 1px 0 #d9edff14,inset 0 -1px #07101c7d}.sidebar{background:linear-gradient(165deg,#18354bb8,#071a29c9);border-color:#c2daf044;box-shadow:0 26px 64px #00071261,inset 0 1px #ffffff2b,inset 1px 0 #ffffff13}.hero,.plan-head,.pet-card,.messages-layout{box-shadow:0 24px 64px #00081466,inset 0 1px #e4f2ff38,inset 1px 0 #dff1ff16}.metric,.week-card,.checkin-panel,.calendar-card,.da-card{-webkit-backdrop-filter:blur(16px)saturate(125%);background:linear-gradient(145deg,#183148bf,#091c2bca);border-color:#acc8e33b}.metric:before,.week-card:before,.da-card:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(135deg,#ffffff13 0%,#0000 34% 76%,#2a9d8f0b 100%);position:absolute;inset:0}.metric,.week-card,.da-card{position:relative;overflow:hidden}.live-dot{background:#f2b36d;box-shadow:0 0 0 4px #f2b36d24,0 0 20px #e69a5c9c}.stamp.ready,.stamp-row.ready>b{background:linear-gradient(145deg,#347986,#28556f)}.local-ai{background:linear-gradient(135deg,#1b3b4dba,#102a3bc4);border-color:#70c4bd40}@keyframes aurora-drift{0%,to{transform:translate(-1.5%,-1%)rotate(-3deg)scale(1)}45%{transform:translate(2.5%,1.5%)rotate(1deg)scale(1.045)}72%{transform:translate(1%,-1.5%)rotate(-1deg)scale(1.025)}}@media (prefers-reduced-motion:reduce){.app-shell:before{animation:none}}::selection{color:#f8fffd;background:#267b78}*{scrollbar-width:thin;scrollbar-color:#527a8e #071522}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#071522}::-webkit-scrollbar-thumb{background:linear-gradient(#638b9f,#2e5965);border:2px solid #071522;border-radius:10px}button:focus-visible,[role=button]:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:2px solid #72d0c4}.app-shell:after{content:"";z-index:0;pointer-events:none;filter:blur(48px)saturate(122%);background:linear-gradient(98deg,#0000 7%,#43c4b43d 34%,#d7e5d92a 56%,#e7a86231 73%,#0000 94%);width:82vw;height:24rem;animation:14s cubic-bezier(.45,0,.25,1) infinite alternate aurora-ribbon;position:fixed;top:-15rem;left:12vw;transform:rotate(-8deg)translate(0,0)}.glass{-webkit-backdrop-filter:blur(30px)saturate(150%)brightness(1.08);background:linear-gradient(125deg,#eaf7ff1b 0%,#b9dbe00b 30%,#0000 51%),linear-gradient(145deg,#2441588f 0%,#102b3c7a 45%,#07162292 100%);border-color:#d7edf056;box-shadow:0 26px 72px #00061070,inset 0 1px #f3fbff5c,inset 1px 0 #d6eef024,inset 0 -1px #020b1391}.solid{-webkit-backdrop-filter:blur(20px)saturate(130%);background:linear-gradient(130deg,#cfe8ed0d,#0000 36%),linear-gradient(145deg,#183043d6,#071724e1);border-color:#b9d7df3d;box-shadow:0 22px 58px #0006115c,inset 0 1px #effaff2b}.sidebar{-webkit-backdrop-filter:blur(34px)saturate(145%);background:linear-gradient(160deg,#d8f1f018 0%,#0000 23%),linear-gradient(165deg,#18384dbf,#061724d9);border-color:#d6edf058;box-shadow:0 26px 68px #00061170,inset 0 1px #ffffff4c,inset 1px 0 #e8fbff20}.sidebar nav button{transition:color .2s,background .25s,transform .25s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.sidebar nav button:after{content:"";background:linear-gradient(90deg,#0000,#72d0c4,#0000);height:1px;transition:transform .28s cubic-bezier(.16,1,.3,1);position:absolute;bottom:.22rem;left:.65rem;right:.65rem;transform:scaleX(0)}.sidebar nav button:hover{transform:translate(3px)}.sidebar nav button.active:after{transform:scaleX(1)}.hero{border-color:#d8eef059;min-height:300px;box-shadow:0 34px 86px #00071275,inset 0 1px #effbff52,inset 1px 0 #ffffff1a;background:linear-gradient(90deg,#04101cf2 0%,#0a1b2acc 43%,#07152142 76%,#07121b68 100%),url(/backgrounds/home-orbit.jpg) 72% 47%/cover!important}.hero:before{content:"";pointer-events:none;mix-blend-mode:screen;background:radial-gradient(38% 58% at 78% 22%,#70d2c92b 0%,#0000 70%),radial-gradient(28% 48% at 91% 84%,#e6a3622b 0%,#0000 72%);animation:9s ease-in-out infinite alternate hero-energy;position:absolute;inset:0}.hero>div:first-child{text-shadow:0 3px 24px #020812;max-width:56%}.hero h2{max-width:15ch}.metric,.week-card,.checkin-panel,.calendar-card,.da-card{-webkit-backdrop-filter:blur(24px)saturate(138%);background:linear-gradient(132deg,#dff7f51c 0%,#0000 34%),linear-gradient(145deg,#1b3a4eb5,#081b29ce);border-color:#c4e1e34a;box-shadow:0 20px 52px #0007125c,inset 0 1px #f0fbff3d}.metric:before,.week-card:before,.da-card:before{background:linear-gradient(118deg,#ffffff1c 0%,#8ed9d40b 25%,#0000 43% 75%,#e5a4620d 100%)}.da-card{transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .2s,box-shadow .28s}.da-card:hover,.da-card.selected{border-color:#78cfc6a6;transform:translateY(-3px);box-shadow:0 26px 62px #00081373,0 0 32px #3ab3a326,inset 0 1px #ffffff45}.primary,.secondary{transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .2s,background .2s;position:relative;overflow:hidden}.primary:after,.secondary:after{content:"";pointer-events:none;background:linear-gradient(110deg,#0000 22%,#ffffff30 48%,#0000 72%);transition:transform .55s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:translate(-120%)}.primary:hover:after,.secondary:hover:after{transform:translate(120%)}.primary:hover,.secondary:hover{transform:translateY(-2px)}.primary:active,.secondary:active{transform:translateY(0)scale(.985)}.primary{background:linear-gradient(135deg,#397e86,#2c6678 52%,#253e60);border-color:#bce7df6b;box-shadow:0 12px 30px #14515d63,inset 0 1px #ffffff4c}.primary:hover{box-shadow:0 16px 38px #145b656f,0 0 30px #4fc5b72b,inset 0 1px #ffffff56}.secondary{-webkit-backdrop-filter:blur(14px);background:#173247aa;border-color:#b5d9de50}.student-home,.page-section,.da-home,.admin-home{animation:.42s cubic-bezier(.16,1,.3,1) both surface-deploy}.loading-state{border-radius:20px;align-items:center;gap:1.25rem;min-height:220px;padding:2rem;display:flex}.loading-state h2{margin:0 0 .3rem;font-size:1.35rem}.loading-state p{margin:0}.da-stamps-page{max-width:1120px}.da-stamps-page .list-head{align-items:end}.da-stamps-page .list-head p{max-width:62ch;margin:.45rem 0 0;line-height:1.6}.empty-stamp-state{padding:1.1rem .15rem}.empty-stamp-state h3{color:#e8f3ff;margin:0}.empty-stamp-state p{color:#92aac0;max-width:54ch;margin:.45rem 0 0;line-height:1.6}.loading-signal{align-items:flex-end;gap:5px;height:34px;display:flex}.loading-signal i{background:#75d0c4;border-radius:5px;width:5px;height:13px;animation:1s ease-in-out infinite loading-signal}.loading-signal i:nth-child(2){height:27px;animation-delay:-.2s}.loading-signal i:nth-child(3){height:19px;animation-delay:-.4s}.pet-interactive{cursor:pointer;-webkit-user-select:none;user-select:none;outline:none}.hero-pet{align-content:center;padding-top:.7rem}.hero-pet img{mix-blend-mode:normal;transition:filter .25s}.hero-pet:hover img{filter:brightness(1.07)drop-shadow(0 19px 20px #030a127d)}.hero-pet:hover .pet-glow{opacity:1;transform:scale(1.12)}.pet-glow{opacity:.8;filter:blur(3px);background:radial-gradient(circle,#e9b36f51 0%,#50c9bb2b 38%,#0000 70%);width:210px;height:210px;transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .25s}.hero-pet .pet-badge{color:#e9f7f5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#061721bd;border:1px solid #b9e1de54;box-shadow:inset 0 1px #ffffff25,0 10px 24px #00081452}.pet-hint{color:#9bb9be;letter-spacing:.08em;opacity:0;margin-top:.35rem;font-size:.66rem;transition:opacity .2s,transform .25s cubic-bezier(.16,1,.3,1);display:block;transform:translateY(-3px)}.pet-interactive:hover .pet-hint,.pet-stage:hover .pet-hint,.pet-interactive:focus-visible .pet-hint{opacity:1;transform:translateY(0)}.pet-bubble{z-index:5;text-align:left;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:12px 12px 3px;width:max-content;max-width:14rem;padding:.62rem .78rem;font-size:.74rem;font-weight:720;line-height:1.4;animation:.34s cubic-bezier(.16,1,.3,1) both pet-message;position:absolute;top:-.35rem;right:.15rem;box-shadow:0 16px 34px #00081766,inset 0 1px #fff;color:#09232a!important;background:#effbf7ec!important;border:1px solid #ffffffd1!important}.hero-pet.reacting img{animation:.72s cubic-bezier(.16,1,.3,1) both pet-signal}.pet-card{background:linear-gradient(90deg,#061522ed 0%,#0b202db0 48%,#07172238 82%),url(/backgrounds/growth-cabin.jpg) 70%/cover;border-color:#d1e9e952;min-height:350px}.pet-card:after{content:"";pointer-events:none;mix-blend-mode:screen;background:radial-gradient(37% 53% at 78% 62%,#45c2b43a 0%,#e4a36216 46%,#0000 74%);position:absolute;inset:0}.pet-card>div{z-index:3;max-width:55%;position:relative}.pet-stage{z-index:4;width:42%;height:91%;color:inherit;background:0 0;border:0;outline:none;place-items:end center;padding:0;display:grid;position:absolute;bottom:.45rem;right:1rem}.pet-stage img{z-index:2;object-fit:contain;object-position:center bottom;transform-origin:50% 88%;filter:drop-shadow(0 20px 24px #02091475);width:100%;max-width:330px;height:100%;animation:4.1s ease-in-out .25s infinite mascot-breathe;position:relative}.pet-stage:hover img{filter:brightness(1.07)drop-shadow(0 24px 28px #0209148a)}.pet-stage.reacting img{animation:.72s cubic-bezier(.16,1,.3,1) both pet-signal}.pet-stage img.sleeping{filter:saturate(.78)drop-shadow(0 16px 20px #02091470);animation:4.8s ease-in-out infinite mascot-sleep}.pet-stage .pet-bubble{z-index:20;top:1.25rem;right:.2rem;transform:translateZ(100px)}.pet-stage .pet-hint{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#061721b8;border:1px solid #cce5e34a;border-radius:99px;padding:.34rem .52rem;position:absolute;bottom:.4rem;right:1.1rem}.pet-stage-ring{z-index:1;aspect-ratio:1;opacity:.65;border:1px solid #72d0c43b;border-radius:50%;width:82%;transition:transform .5s cubic-bezier(.16,1,.3,1),opacity .25s;position:absolute;bottom:5%;left:9%;transform:scale(.9);box-shadow:0 0 46px #44baad28,inset 0 0 38px #e9ac6820}.pet-stage:hover .pet-stage-ring,.pet-stage.reacting .pet-stage-ring{opacity:1;transform:scale(1.04)}.pet-3d{--pet-rx:0deg;--pet-ry:0deg;--pet-dx:0px;--pet-light-x:50%;--pet-light-y:34%;perspective:760px;transform-style:preserve-3d;isolation:isolate}.pet-3d img{z-index:3;will-change:transform, filter;transform-style:preserve-3d;position:relative;filter:drop-shadow(var(--pet-dx) 22px 24px #0108108c) drop-shadow(0 0 18px #6ad4c22e)!important;animation:4.2s ease-in-out infinite mascot-3d-breathe!important}.pet-3d:after{content:"";z-index:4;pointer-events:none;background:radial-gradient(circle at var(--pet-light-x) var(--pet-light-y), #fff7d858 0 5%, #89ded02b 18%, transparent 48%);mix-blend-mode:screen;opacity:.72;border-radius:42% 48% 38% 45%;transition:background-position 80ms linear,opacity .25s;position:absolute;inset:7% 8% 12%;transform:translateZ(68px)}.pet-depth{z-index:1;pointer-events:none;transform-style:preserve-3d;border-radius:50%;position:absolute}.pet-depth-back{z-index:1;aspect-ratio:1;background:radial-gradient(circle at var(--pet-light-x) var(--pet-light-y), #63d2c34a, #173b4e20 42%, transparent 68%);width:76%;transform:rotateX(var(--pet-rx)) rotateY(var(--pet-ry)) translateZ(-32px);border:1px solid #7ed4c640;top:13%;left:12%;box-shadow:inset 0 0 44px #60cebf20,0 0 38px #1a8e8630}.pet-depth-front{z-index:5;filter:blur(8px);background:radial-gradient(#f0ba7157,#57ccbd2a 48%,#0000 74%);width:28%;height:7%;bottom:12%;left:36%;transform:rotateX(70deg)translateZ(58px)}.pet-state{z-index:7;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:99px;max-width:14rem;margin-top:.48rem;padding:.34rem .6rem;font-size:.62rem;line-height:1.35;display:block;position:relative;box-shadow:inset 0 1px #ffffff20,0 9px 20px #0007134b;color:#c9e5e0!important;background:#061821b8!important;border:1px solid #7ecbc14d!important}.pet-3d .pet-badge,.pet-3d .pet-hint{z-index:7;position:relative}.pet-guidance{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(130deg,#27757048,#071a25b0);border:1px solid #89cfc64d;border-radius:12px;max-width:15rem;margin:.8rem 0 .15rem;padding:.62rem .72rem;box-shadow:inset 0 1px #fff2,0 12px 24px #00081142}.pet-guidance b{color:#e8f6f3;align-items:center;gap:.44rem;font-size:.76rem;display:flex}.pet-guidance b i{background:#70d0c3;border-radius:50%;flex:none;width:7px;height:7px;animation:2.3s ease-in-out infinite pet-status-pulse;box-shadow:0 0 14px #70d0c3}.pet-guidance span{color:#a7c1c2;margin-top:.23rem;font-size:.7rem;line-height:1.45;display:block}.pet-actions{flex-wrap:wrap;gap:.38rem;max-width:18rem;margin-top:.78rem;display:flex}.pet-actions button{border-radius:10px;padding:.47rem .64rem;font-size:.69rem}.pet-actions .primary{min-width:3.7rem}.pet-hologram-grid{z-index:0;aspect-ratio:1.8;opacity:.48;background:repeating-radial-gradient(#0000 0 14px,#72d2c31a 15px 16px),repeating-linear-gradient(90deg,#0000 0 23px,#72d2c315 24px 25px);border:1px solid #72d2c32e;border-radius:50%;width:88%;animation:8s linear infinite hologram-grid;position:absolute;bottom:0;left:6%;transform:perspective(400px)rotateX(69deg)translateZ(-38px)}.pet-floor-shadow{z-index:1;filter:blur(7px);width:56%;height:10%;transform:translate3d(var(--pet-dx), 0, -8px);background:radial-gradient(#020a12b8 0%,#238c8348 42%,#0000 72%);border-radius:50%;position:absolute;bottom:5%;left:22%}.pet-stage .ring-a{animation:14s linear infinite pet-ring-turn}.pet-stage .ring-b{opacity:.42;border-style:dashed;width:66%;animation:10s linear infinite reverse pet-ring-turn;bottom:13%;left:17%}.pet-stage:active img{filter:brightness(1.12)drop-shadow(0 28px 34px #020914a0)!important}.pet-stage.reacting:before{content:"";z-index:0;aspect-ratio:1;border:2px solid #8ce0d2a8;border-radius:50%;width:70%;animation:.85s cubic-bezier(.16,1,.3,1) both pet-energy-wave;position:absolute;bottom:12%;left:15%}.metric,.week-card,.stamp-row,.history-row{transition:transform .25s cubic-bezier(.16,1,.3,1),border-color .22s,background .25s,box-shadow .25s}.metric:hover,.week-card:hover{border-color:#8bd7ce78;transform:translateY(-4px);box-shadow:0 24px 56px #00071170,0 0 30px #43b7a822,inset 0 1px #ffffff42}.stamp-row:hover,.history-row:hover{background-color:#17344875;transform:translate(4px)}.metric{isolation:isolate;background:linear-gradient(145deg,#1b3a4eb5,#081b29ce);overflow:visible}.metric:before{display:none}.da-home .metric{-webkit-backdrop-filter:none;background:linear-gradient(145deg,#1a3549,#0a1b29)}.da-home .metric:hover{border-color:#8bd7ce78;transform:translateY(-2px);box-shadow:0 20px 46px #00071170,inset 0 1px #ffffff32}.da-home .metric:active{transform:translateY(0)scale(.99)}.plan-head{background:linear-gradient(90deg,#07121fbc 0%,#0b18278c 55%,#07111f38 100%),url(/backgrounds/six-week-map.jpg) 70%/cover}.messages-layout aside{background-position:58% 45%}.rewards{background-position:50% 58%}@keyframes aurora-ribbon{0%{opacity:.7;transform:rotate(-8deg)translate(-4%)scaleX(.96)}to{opacity:1;transform:rotate(-4deg)translate(6%,3.5rem)scaleX(1.08)}}@keyframes hero-energy{0%{opacity:.68;transform:translate(-1.5%)scale(1)}to{opacity:1;transform:translate(2%,1%)scale(1.045)}}@keyframes surface-deploy{0%{opacity:.72;filter:blur(5px);clip-path:inset(0 0 5% round 16px)}to{opacity:1;filter:blur();clip-path:inset(0)}}@keyframes pet-message{0%{opacity:1;filter:blur(3px);transform:translateY(7px)scale(.96)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}@keyframes pet-signal{0%{transform:translateY(0)rotate(0)scale(1)}38%{transform:translateY(-12px)rotate(-2deg)scale(1.045)}68%{transform:translateY(-3px)rotate(1.4deg)scale(1.018)}to{transform:translateY(0)rotate(0)scale(1)}}@keyframes mascot-3d-breathe{0%,to{transform:rotateX(var(--pet-rx)) rotateY(var(--pet-ry)) translateZ(48px) translateY(0) scale(1)}50%{transform:rotateX(var(--pet-rx)) rotateY(var(--pet-ry)) translateZ(58px) translateY(-5px) scale(1.018)}}@keyframes pet-ring-turn{to{rotate:360deg}}@keyframes hologram-grid{to{background-position:0 0,100px 0}}@keyframes pet-energy-wave{0%{opacity:.9;transform:scale(.55)translateZ(-10px)}to{opacity:0;transform:scale(1.35)translateZ(-10px)}}@keyframes pet-status-pulse{0%,to{opacity:.65;box-shadow:0 0 9px #70d0c3}50%{opacity:1;box-shadow:0 0 18px #70d0c3,0 0 32px #e4aa6844}}@keyframes loading-signal{0%,to{opacity:.55;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}@media (width<=760px){.app-shell:after{opacity:.65;width:130vw;top:-16rem;left:-12vw}.hero{min-height:265px;background-position:65%!important}.hero>div:first-child{max-width:63%}.hero-pet{width:118px}.hero-pet img{width:112px;height:112px}.pet-glow{width:126px;height:126px}.hero-pet .pet-bubble{max-width:9rem;font-size:.66rem;top:-1.4rem;right:-.15rem}.pet-state{max-width:8rem;padding:.27rem .42rem;font-size:.56rem}.pet-card{background-position:66%;min-height:430px}.pet-card>div{max-width:57%}.pet-stage{width:44%;height:84%;bottom:.35rem;right:.35rem}.pet-stage .pet-bubble{max-width:9rem;top:1.1rem;right:0}.pet-guidance{max-width:100%;padding:.52rem .58rem}.pet-actions{gap:.3rem;max-width:100%}.pet-actions button{padding:.4rem .5rem;font-size:.62rem}}@media (prefers-reduced-motion:reduce){.app-shell:before,.app-shell:after,.hero:before,.student-home,.page-section,.da-home,.admin-home,.hero-pet img,.pet-stage img,.pet-bubble,.loading-signal i,.pet-stage-ring,.pet-hologram-grid,.pet-guidance b i{animation:none!important}.primary,.secondary,.sidebar nav button,.pet-glow,.pet-stage-ring{transition-duration:.01ms!important}.primary:hover,.secondary:hover,.sidebar nav button:hover,.da-card:hover{transform:none}}.auth-shell{isolation:isolate;position:relative}.auth-ghost{z-index:1}.auth-art{z-index:2}.auth-art,.auth-art img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.auth-panel{z-index:5;isolation:isolate;background:linear-gradient(145deg,#132538f7,#081522f5);position:relative;box-shadow:0 30px 80px #00081478,inset 0 1px #d9efff24}.auth-art .orbit{border-color:#789bc14f;overflow:visible;box-shadow:inset 0 0 24px #78c8c70a,0 0 20px #4c87aa0a}.auth-art .orbit:before{content:"";background:conic-gradient(from 20deg, transparent 0 42%, #70c3ba 49%, #9fc9de 52%, transparent 58% 82%, #e5ad67 87%, transparent 92%);-webkit-mask-composite:xor;filter:drop-shadow(0 0 5px #70c3ba66);border-radius:50%;padding:1.5px;animation:8s linear infinite orbit-signal;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.auth-art .orbit-b:before{animation-duration:11s;animation-direction:reverse}.auth-art .orbit-c:before{animation-duration:14s}.auth-art .orbit-c{opacity:.68;width:86%;height:23%;top:37%;transform:rotate(4deg)}.auth-art .orbit i{--dot:#82cbc3;background:var(--dot);width:6px;height:6px;box-shadow:0 0 7px var(--dot), 0 0 18px var(--dot), -9px 0 10px #82cbc366;offset-path:ellipse(50% 50% at 50% 50%);offset-distance:0%;border-radius:50%;animation:7s linear infinite orbit-particle;position:absolute;top:0;left:0}.auth-art .orbit i:nth-child(2){--dot:#a6c7e2;width:4px;height:4px;animation-duration:9s;animation-delay:-2.4s}.auth-art .orbit i:nth-child(3){--dot:#e5ad67;width:5px;height:5px;animation-duration:12s;animation-delay:-5.2s}.auth-art .orbit-b i{animation-duration:8.5s;animation-direction:reverse}.auth-art .orbit-c i{animation-duration:13s}.auth-art .stars{letter-spacing:0;gap:1.25rem;display:flex}.auth-art .stars span{text-shadow:0 0 14px #e5ad6780;animation:4.8s ease-in-out infinite star-drift;display:inline-block}.auth-art .stars span:nth-child(2){animation-delay:-.9s}.auth-art .stars span:nth-child(3){color:#8fc9c1;animation-delay:-1.8s}.auth-art .stars span:nth-child(4){animation-delay:-2.7s}.auth-art .stars span:nth-child(5){animation-delay:-3.6s}@keyframes orbit-signal{to{transform:rotate(360deg)}}@keyframes orbit-particle{to{offset-distance:100%}}@keyframes star-drift{0%,to{opacity:.42;transform:translate(0,0)scale(.78)}50%{opacity:1;transform:translate(8px,-7px)scale(1.16)}}@media (width<=760px){.auth-art .orbit-c{display:none}}@media (prefers-reduced-motion:reduce){.auth-art .orbit:before,.auth-art .orbit i,.auth-art .stars span{animation:none!important}}.auth-panel{background:radial-gradient(circle at 100% 0,#d69a5c1b 0,#0000 34%),radial-gradient(circle at 8% 100%,#b8744010 0,#0000 30%),linear-gradient(145deg,#14273af7,#081522f5 68%);border-color:#aebbc94a;box-shadow:0 30px 80px #00081478,12px -12px 52px #c9854430,inset 0 1px #f4d5b02e}.auth-panel:before{content:"";z-index:-1;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,#0000 0 66%,#e8b8790c 82%,#0000 100%);position:absolute;inset:0}.auth-panel .eyebrow{color:#9fc2e4;text-shadow:0 0 18px #dda46130}.auth-panel .tabs button.active{color:#e4d2bd;border-color:#d5a267}.auth-panel input:focus{border-color:#b58a62;box-shadow:0 0 0 3px #d69a5c18,0 0 22px #d69a5c12}.auth-panel .primary{background:linear-gradient(112deg,#338e92 0%,#315a80 72%,#8b674e 130%);box-shadow:0 12px 30px #174f5e50,8px 6px 26px #c2844930,inset 0 1px #ffe4c35c}.auth-panel .primary:hover{box-shadow:0 16px 38px #174f5e68,10px 7px 30px #d0955340,inset 0 1px #ffe9d078}.auth-panel .demo button:hover{color:#f0d8ba;background:#32291f8a;border-color:#c8996660}.auth-panel .demo button.active:hover{color:#fff0dc;background:linear-gradient(135deg,#376a76e6,#4c3d31e6);border-color:#e2b47bdd}.blur-reveal{display:inline}.blur-reveal__segment{opacity:0;filter:blur(9px);will-change:transform, opacity, filter;display:inline-block;transform:translateY(.62em)}.blur-reveal.from-top .blur-reveal__segment{transform:translateY(-.62em)}.blur-reveal.active .blur-reveal__segment{animation:login-text-reveal .52s cubic-bezier(.16, 1, .3, 1) var(--reveal-delay) both}@keyframes login-text-reveal{0%{opacity:0;filter:blur(9px)}55%{opacity:.62;filter:blur(2px);transform:translateY(.07em)}to{opacity:1;filter:blur();transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){.blur-reveal__segment{opacity:1;filter:none;animation:none!important;transform:none!important}}@media (width>=761px){.auth-shell{grid-template-columns:minmax(300px,1.08fr) minmax(350px,.92fr);gap:clamp(1rem,4.2vw,5.25rem);height:100dvh;min-height:0;padding:clamp(.85rem,2.7vh,2rem) clamp(1.1rem,3.5vw,3.75rem)}.auth-art{justify-self:center;width:100%;max-width:640px;height:min(540px,100dvh - 3rem);min-height:0}.auth-art .robot{width:min(24rem,70%)}.auth-art:before{width:min(31rem,86%);height:min(31rem,86%)}.auth-art .orbit-a{width:72%;height:32%}.auth-art .orbit-b{width:61%;height:26%}.auth-art .orbit-c{width:78%;height:21%}.auth-art p{font-size:clamp(1.6rem,2.65vw,2.75rem);bottom:7%;left:14%}.auth-panel{justify-self:center;width:min(425px,100%);max-height:calc(100dvh - 1.7rem);padding:clamp(1.05rem,2.25vh,1.75rem) clamp(1.2rem,2.5vw,2rem)}.auth-panel h1{margin:.3rem 0 .6rem;font-size:clamp(1.68rem,2.2vw,2.14rem)}.auth-panel .muted{margin:0;font-size:.9rem;line-height:1.55}.auth-panel .tabs{margin:1.1rem 0 .85rem}.auth-panel form{gap:.72rem}.auth-panel input{padding:.62rem .78rem}.auth-panel .primary{padding:.64rem .9rem}.auth-panel .demo{margin-top:1.15rem;padding-top:.78rem}}@media (width>=761px) and (height<=760px){.auth-shell{padding-block:.7rem}.auth-art{height:min(450px,100dvh - 1.4rem)}.auth-art .robot{width:min(20rem,66%)}.auth-art:before{width:25rem;height:25rem}.auth-art p{font-size:clamp(1.35rem,2.25vw,2.1rem);bottom:4%}.auth-panel{border-radius:24px;padding:.95rem 1.15rem}.auth-panel h1{font-size:1.56rem}.auth-panel .muted{font-size:.84rem}.auth-panel .tabs{margin:.75rem 0 .65rem}.auth-panel label{gap:.25rem;font-size:.82rem}.auth-panel form{gap:.52rem}.auth-panel input{padding:.5rem .7rem}.auth-panel .primary{padding:.55rem .8rem}.auth-panel .demo{margin-top:.75rem;padding-top:.6rem}}@media (width>=761px) and (height>=761px){.auth-shell{grid-template-columns:minmax(340px,1.1fr) minmax(360px,.9fr);gap:clamp(2rem,5.2vw,6.25rem);padding-block:clamp(1.25rem,3.3vh,2.6rem)}.auth-art{max-width:690px;height:min(640px,100dvh - 4.4rem)}.auth-art .robot{width:min(28rem,78%)}.auth-art:before{width:min(35rem,90%);height:min(35rem,90%)}.auth-art .orbit-a{width:80%;height:35%}.auth-art .orbit-b{width:68%;height:29%}.auth-art .orbit-c{width:86%;height:23%}.auth-art p{font-size:clamp(1.85rem,3vw,3.2rem);bottom:7%;left:12%}.auth-panel{flex-direction:column;width:min(410px,100%);height:min(52rem,100dvh - 4.2rem);max-height:none;padding:clamp(1.55rem,3.2vh,2.7rem) clamp(1.45rem,2.7vw,2.35rem);display:flex}.auth-panel h1{max-inline-size:8.4em;margin:.45rem 0 .85rem;font-size:clamp(1.95rem,2.65vw,2.6rem);line-height:1.17}.auth-panel .muted{font-size:.95rem;line-height:1.68}.auth-panel .tabs{margin:clamp(1.8rem,4.3vh,3.25rem) 0 1.1rem}.auth-panel form{gap:1rem}.auth-panel input{padding:.72rem .85rem}.auth-panel .primary{padding:.72rem .9rem}.auth-panel .demo{margin-top:auto;padding-top:1rem}.auth-panel.is-register{height:auto;min-height:min(66dvh,42rem)}.auth-panel.is-register .demo{margin-top:1rem}}@media (width>=1021px){.auth-shell{grid-template-columns:minmax(0,1fr) minmax(25rem,31vw) clamp(6rem,8vw,12rem);align-items:center;column-gap:0;padding:clamp(1rem,2.6vw,2.75rem) clamp(1rem,3.2vw,4rem)}.auth-art{justify-self:end;width:min(52vw,48rem);max-width:none;height:min(72dvh,46rem)}.auth-art .robot{width:min(24rem,52%)}.auth-art:before{width:min(33rem,76%);height:min(33rem,76%)}.auth-art .orbit-a{width:72%;height:31%}.auth-art .orbit-b{width:62%;height:26%}.auth-art .orbit-c{width:78%;height:21%}.auth-art p{font-size:clamp(2rem,3.2vw,3.85rem);bottom:10%;left:8%}.auth-panel{border-radius:clamp(1.7rem,2.4vw,2.4rem);justify-self:start;width:min(31vw,38rem);height:min(78dvh,52rem);max-height:none;padding:clamp(1.55rem,3.2vh,2.7rem) clamp(1.45rem,2.7vw,2.35rem)}.auth-panel h1{max-inline-size:8.4em;font-size:clamp(2rem,2.65vw,3rem)}}@media (width>=761px) and (width<=1020px){.auth-shell{grid-template-columns:minmax(16rem,.92fr) minmax(21rem,.85fr);gap:clamp(1.25rem,3vw,2.5rem);padding:clamp(.85rem,2.2vw,1.5rem)}.auth-art{width:100%;height:min(65dvh,35rem)}.auth-art .robot{width:min(21rem,67%)}.auth-panel{justify-self:center;width:min(28rem,100%)}.auth-panel.is-register{height:auto;min-height:0}}@media (width<=760px){.auth-shell{grid-template-columns:minmax(0,1fr);gap:1.25rem;height:auto;min-height:100dvh;padding:1rem;overflow:clip}.auth-art{width:100%;height:min(25rem,58dvh);min-height:min(25rem,58dvh)}.auth-art .robot{width:min(20rem,62vw)}.auth-art p{bottom:7%;left:7%}.auth-panel{justify-self:center;width:min(100%,32rem)}}body:has(.app-shell.screen-records){background-attachment:scroll}.app-shell.screen-records{background-attachment:scroll}.app-shell.screen-records:before,.app-shell.screen-records:after{filter:none;opacity:0;animation:none}.app-shell.screen-records .checkin-panel,.app-shell.screen-records .calendar-card,.app-shell.screen-records .history-list{-webkit-backdrop-filter:none;background:linear-gradient(145deg,#183043f7,#071724fa);box-shadow:0 18px 46px #00061152,inset 0 1px #effaff22}.app-shell.screen-records .history-list{contain:layout paint}@media (width>=761px){.app-shell{padding-left:calc(245px + 2rem)}.app-shell>.sidebar{z-index:5;width:245px;height:calc(100dvh - 2rem);position:fixed;top:1rem;left:1rem;overflow-y:auto}}.sidebar nav button:hover{color:#f1f6fd;background:linear-gradient(135deg,#4574c24d,#183b5c7d);transform:none;box-shadow:inset 0 0 0 1px #90bfeb38,0 8px 20px #020d1752}.sidebar nav button.active{color:#f1f6fd;background:linear-gradient(135deg,#4574c24d,#183b5c7d);box-shadow:inset 3px 0 #70a0df,inset 0 0 0 1px #90bfeb38,0 8px 20px #020d1752}.week-detail-page{width:100%;max-width:1180px;margin-inline:auto}.week-detail-back{color:#a9c4dc;background:0 0;align-items:center;gap:.45rem;width:max-content;margin:0 0 .9rem;padding:.45rem .15rem;font-size:.78rem;font-weight:700;line-height:1;transition:color .2s,transform .2s;display:inline-flex}.week-detail-back:hover{color:#e7f3fc;transform:translate(-3px)}.week-detail-back:active{transform:translate(-1px)scale(.98)}.week-detail-back:focus-visible{outline-offset:4px;border-radius:6px;outline:2px solid #83c9c1}.week-detail-hero{background:linear-gradient(102deg,#071722f2 0%,#0c2836d9 54%,#153647a8 100%),url(/backgrounds/six-week-map.jpg) 50% 46%/cover;border:1px solid #a7cad94a;border-radius:20px;grid-template-columns:minmax(0,1fr) minmax(10rem,.32fr) minmax(8rem,.22fr);align-items:end;gap:clamp(1rem,2vw,2rem);min-height:270px;padding:clamp(1.6rem,3vw,2.4rem);display:grid;position:relative;overflow:hidden;box-shadow:0 24px 58px #0007115c,inset 0 1px #ecffff2e}.week-detail-hero:after{content:"";pointer-events:none;background:linear-gradient(128deg,#dff8f217 0%,#0000 32% 72%,#e0a76612 100%);position:absolute;inset:0}.week-detail-copy,.week-detail-progress,.week-detail-mascot{z-index:1;position:relative}.week-detail-copy{align-self:center;max-width:42rem}.week-detail-marker{color:#8fb8dd;letter-spacing:.14em;font-size:.7rem;font-weight:800;display:block}.week-detail-copy h2{color:#eef7ff;letter-spacing:-.035em;margin:.45rem 0 .65rem;font-size:clamp(2rem,4vw,3.4rem);line-height:1.04}.week-detail-copy>p{color:#b3c7d5;max-width:38rem;margin:0;font-size:.9rem;line-height:1.7}.week-detail-meta{color:#cde0ed;font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.65rem 1.15rem;margin-top:1.4rem;font-size:.76rem;display:flex}.week-detail-meta span{align-items:center;gap:.42rem;display:inline-flex}.week-detail-meta svg{color:#76bdb4}.week-detail-progress{-webkit-backdrop-filter:blur(14px);background:#071a25bd;border:1px solid #b6dce04a;border-radius:14px;align-self:center;min-width:10rem;padding:1rem 1.05rem 1.05rem;box-shadow:inset 0 1px #ffffff20,0 16px 34px #00071142}.week-detail-progress>span{color:#9eb8c9;font-size:.7rem;font-weight:700}.week-detail-progress strong{color:#eef8ff;font-variant-numeric:tabular-nums;margin:.18rem 0 .58rem;font-size:2rem;line-height:1;display:block}.week-detail-progress strong small{color:#7893a7;margin-left:.2rem;font-size:.82rem;font-weight:600}.week-detail-progress>small{color:#8fa9bb;margin-top:.48rem;font-size:.65rem;display:block}.week-progress-track{background:#9ebdcb1e;border-radius:3px;height:4px;overflow:hidden}.week-progress-track i{border-radius:inherit;transform-origin:0;background:#67bcae;width:100%;height:100%;transition:transform .55s cubic-bezier(.16,1,.3,1);display:block;box-shadow:0 4px 12px #67bcae52}.week-detail-mascot{object-fit:contain;filter:drop-shadow(0 18px 24px #00071174);-webkit-user-select:none;user-select:none;-webkit-user-drag:none;place-self:end center;width:min(9.5rem,100%);max-height:12.5rem}.week-task-board{background:linear-gradient(145deg,#142f42e8,#071a28f2);border:1px solid #9ebdcd3f;border-radius:20px;margin-top:1rem;overflow:hidden;box-shadow:0 22px 52px #0007114d,inset 0 1px #eaffff22}.week-task-board>header{border-bottom:1px solid #92b1c124;justify-content:space-between;align-items:center;gap:1rem;padding:1.15rem 1.3rem 1.05rem;display:flex}.week-task-board h3{color:#eaf5fc;margin:0;font-size:1.08rem}.week-task-board header p{color:#849fb1;margin:.2rem 0 0;font-size:.7rem}.week-task-board .secondary{color:#d8eaf2;background:#183747b8;border-color:#8eb8c251;flex:none;padding:.5rem .75rem;font-size:.72rem}.week-task-board .secondary:hover{background:#214858dc;border-color:#9acbc973}.week-task-rows{padding:.25rem 1.1rem .55rem}.week-task-row{border-bottom:1px solid #91afbf1d;grid-template-columns:4.4rem 2.25rem minmax(0,1fr) auto;align-items:center;gap:.8rem;min-height:74px;padding:.68rem .3rem;transition:background .2s,transform .2s;display:grid;position:relative}.week-task-row:last-child{border-bottom:0}.week-task-row:hover{background:#5cae9f0a;transform:translate(2px)}.week-task-row.today{background:linear-gradient(90deg,#4eb2a414,#0000 72%);box-shadow:inset 1px 0 #70c8ba9c}.week-task-row time{color:#819cae;font-variant-numeric:tabular-nums;gap:.04rem;display:grid}.week-task-row time strong{color:#c8dbe6;font-size:.76rem}.week-task-row time span{font-size:.65rem}.week-task-icon{color:#7fa2ba;background:#102c3c;border-radius:10px;place-items:center;width:2rem;height:2rem;display:grid}.week-task-row.complete .week-task-icon{color:#7ad0c0;background:#27685e52}.week-task-row.rest .week-task-icon{color:#d6aa71;background:#6e4a2347}.week-task-content{min-width:0}.week-task-content h4{color:#e2eef5;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.82rem;font-weight:700;overflow:hidden}.week-task-content p{color:#7f99ab;margin:.2rem 0 0;font-size:.68rem}.week-task-state{text-align:center;border-radius:9px;min-width:3.7rem;padding:.32rem .5rem;font-size:.66rem;font-weight:800}.week-task-state.done{color:#a6e1d6;background:#245f5757}.week-task-state.rest{color:#e2bf91;background:#67482055}.week-task-state.pending{color:#b5c8d5;background:#2942528f}@media (width<=980px){.week-detail-hero{grid-template-columns:minmax(0,1fr) minmax(9rem,.38fr)}.week-detail-mascot{display:none}}@media (width<=760px){.week-detail-page{max-width:none}.week-detail-hero{border-radius:16px;grid-template-columns:1fr;min-height:0;padding:1.3rem}.week-detail-copy h2{font-size:2rem}.week-detail-progress{width:100%}.week-task-board{border-radius:16px}.week-task-row{grid-template-columns:3.8rem 2rem minmax(0,1fr) auto;gap:.55rem}}@media (width<=540px){.week-task-board>header{align-items:flex-start}.week-task-row{grid-template-columns:3.45rem 1fr auto}.week-task-icon{display:none}.week-task-content p{white-space:normal}}@media (prefers-reduced-motion:reduce){.week-detail-back,.week-progress-track i,.week-task-row{transition:none}}@media (prefers-reduced-transparency:reduce){.week-detail-progress{-webkit-backdrop-filter:none;background:#0b2230}}.registration-da{background:#0817248c;border:1px solid #6686ad4a;border-radius:14px;gap:.55rem;margin:.15rem 0 0;padding:.75rem;display:grid}.registration-da legend{color:#d9e8f8;padding:0 .25rem;font-size:.82rem;font-weight:700}.registration-da>p{color:#91a5bd;margin:0;font-size:.72rem;line-height:1.5}.registration-da-list{gap:.42rem;display:grid}.registration-da-list button{color:#c5d7ed;text-align:left;background:#102439c7;border:1px solid #6988ae42;border-radius:10px;grid-template-columns:1.85rem minmax(0,1fr) auto;align-items:center;gap:.5rem;width:100%;padding:.52rem .6rem;display:grid}.registration-da-list button:hover,.registration-da-list button.selected{background:#244970a8;border-color:#7cb0e8}.registration-da-list button span{color:#eef7ff;background:#4d75aa6e;border-radius:50%;place-items:center;width:1.85rem;height:1.85rem;font-size:.76rem;font-weight:800;display:grid}.registration-da-list button b{color:#eaf3fd;font-size:.78rem}.registration-da-list button small{color:#91a7c2;font-size:.65rem}.warrior-page{max-width:1080px;min-height:0}.da-messages-page{margin-top:1rem}.warrior-console{border-radius:16px;grid-template-columns:minmax(13rem,.44fr) minmax(0,1fr);height:min(660px,100vh - 11rem);min-height:420px;display:grid;overflow:hidden}.warrior-portrait{background:linear-gradient(160deg,#18354b,#0a1827 72%),url(/backgrounds/message-station.jpg) 50%/cover;border-radius:15px 0 0 15px;place-items:end center;padding:2rem 1.5rem 1.4rem;display:grid;position:relative}.warrior-portrait:after{content:"";filter:blur(12px);background:#020813a6;border-radius:50%;height:12%;position:absolute;inset:auto 12% 8%}.warrior-portrait img{z-index:1;object-fit:contain;filter:drop-shadow(0 20px 20px #0008169c);max-width:min(15rem,100%);max-height:18rem;animation:5.2s ease-in-out infinite mascot-hover;position:relative}.warrior-portrait span{z-index:2;color:#d8ebfa;background:#0a1b2ad4;border:1px solid #9bc6e65e;border-radius:999px;align-items:center;gap:.35rem;margin-top:-.35rem;padding:.4rem .6rem;font-size:.74rem;font-weight:700;display:inline-flex;position:relative}.warrior-copy{padding:clamp(1.45rem,3vw,2.6rem)}.warrior-copy h2{margin:0 0 .7rem;font-size:clamp(1.65rem,3vw,2.3rem)}.warrior-copy>p{max-width:58ch;margin:0;line-height:1.7}.character-lines{border-block:1px solid #7695b331;gap:.55rem;margin:1.35rem 0;padding:.9rem 0;display:grid}.character-lines div{color:#b2c8de;align-items:center;gap:.6rem;font-size:.83rem;display:flex}.character-lines svg{color:#7db1d4}.character-lines b{color:#e8f4fd}.warrior-input{color:#c7d9e9;gap:.45rem;font-size:.8rem;font-weight:700;display:grid}.warrior-input>div{gap:.55rem;display:flex}.warrior-input input{flex:1;min-width:0}.warrior-reply{background:#142c41c9;border-radius:12px;margin-top:1rem;padding:.9rem 1rem}.warrior-chat{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100%;min-height:0;display:grid}.warrior-chat>header{border-bottom:1px solid #7695b331;justify-content:space-between;align-items:center;padding:1.5rem clamp(1.25rem,2.5vw,2rem) .95rem;display:flex}.warrior-chat h2{margin:0;font-size:clamp(1.35rem,2.4vw,1.8rem)}.warrior-chat header p{color:#91a7bc;margin:.3rem 0 0;font-size:.76rem}.warrior-thread{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:#5f86ad #0a1724;scrollbar-width:thin;flex-direction:column;gap:.85rem;min-height:0;padding:1.15rem clamp(1.25rem,2.5vw,2rem);display:flex;overflow-y:auto}.warrior-thread::-webkit-scrollbar{width:7px}.warrior-thread::-webkit-scrollbar-track{background:#0a1724}.warrior-thread::-webkit-scrollbar-thumb{background:#5f86ad;border-radius:8px}.warrior-message{border-radius:14px;max-width:min(82%,38rem);padding:.8rem .95rem;line-height:1.58;position:relative}.warrior-message span{color:#8fabc5;margin-bottom:.25rem;font-size:.68rem;font-weight:800;display:block}.warrior-message p{color:#d6e3f0;white-space:pre-wrap;margin:0;font-size:.84rem}.warrior-message.assistant{background:#142a3de8;border:1px solid #789bc63c;align-self:flex-start}.warrior-message.user{background:linear-gradient(145deg,#426eb5,#2d4e91);align-self:flex-end;padding-right:2.9rem}.warrior-message.user span,.warrior-message.user p{color:#f1f7ff}.warrior-delete{color:#e9f3ff;opacity:0;background:#10295438;border-radius:50%;place-items:center;width:1.75rem;height:1.75rem;padding:0;transition:opacity .18s,background .18s;display:grid;position:absolute;inset:.42rem .42rem auto auto}.warrior-message.user:hover .warrior-delete,.warrior-message.user:focus-within .warrior-delete{opacity:1}.warrior-delete:hover,.warrior-delete:focus-visible{outline-offset:2px;background:#173d74;outline:2px solid #b5d9ff}.warrior-message.thinking{opacity:.8}.warrior-chat .warrior-input{border-top:1px solid #7695b331;padding:.9rem clamp(1.25rem,2.5vw,2rem) 1.35rem}.warrior-chat .warrior-input>div{align-items:stretch}.warrior-chat .warrior-input input{min-height:2.75rem}.warrior-chat .warrior-input .primary{min-width:5.25rem}.chat-empty{text-align:center;place-content:center;max-width:34rem;min-height:22rem;margin:auto;display:grid}.chat-empty h3{margin:0}.chat-empty p{margin:.65rem 0 1.15rem;line-height:1.65}.da-binding-settings{grid-column:1/-1}.da-binding-settings>h2{margin:0 0 .55rem}.da-binding-settings>p{max-width:67ch;margin:0 0 1.1rem;line-height:1.65}.da-grid.compact{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));margin:0 0 1rem}.da-card.disabled{cursor:default;opacity:.56}.da-card.disabled:hover{border-color:#a6c2e42b;box-shadow:0 22px 60px #00071366,inset 0 1px #ffffff12}.app-shell.screen-assistant{background-attachment:scroll}body:has(.app-shell.screen-assistant){background-attachment:scroll}.app-shell.screen-assistant .warrior-page{animation:none}.app-shell.screen-assistant .warrior-console.glass{-webkit-backdrop-filter:none;background:linear-gradient(145deg,#152b3bf5,#081a28f5)}.app-shell.screen-assistant .warrior-portrait:after{filter:none;opacity:.78}.app-shell.screen-assistant .warrior-portrait img{filter:none;animation:5.2s cubic-bezier(.45,0,.55,1) infinite mascot-hover}.app-shell.screen-assistant .warrior-thread{contain:paint;overscroll-behavior:contain}.app-shell.screen-assistant .warrior-message{content-visibility:auto;contain-intrinsic-size:auto 6.5rem}.messages-page{min-height:0}.messages-layout{height:min(660px,100vh - 11rem);min-height:420px;overflow:hidden}.messages-layout .chat{grid-template-rows:minmax(0,1fr) auto;min-height:0;padding:0;display:grid;overflow:hidden}.da-thread{overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:#5f86ad #0a1724;scrollbar-width:thin;flex-direction:column;gap:.55rem;min-height:0;padding:1.3rem;display:flex;overflow-y:auto}.da-thread::-webkit-scrollbar{width:7px}.da-thread::-webkit-scrollbar-track{background:#0a1724}.da-thread::-webkit-scrollbar-thumb{background:#5f86ad;border-radius:8px}.messages-layout .composer{border-top:1px solid #7695b331;margin:0;padding:.9rem 1.3rem 1.25rem}.messages-layout .chat-empty{grid-row:1/-1;min-height:0;padding:1.3rem}.da-messages-layout{grid-template-columns:minmax(15rem,.42fr) minmax(0,1fr)}.da-messages-layout .student-conversation-list{scrollbar-color:#5f86ad #0a1724;scrollbar-width:thin;flex-direction:column;gap:.42rem;min-height:0;padding:1.2rem .85rem;display:flex;overflow-y:auto}.student-conversation-list::-webkit-scrollbar{width:7px}.student-conversation-list::-webkit-scrollbar-track{background:#0a1724}.student-conversation-list::-webkit-scrollbar-thumb{background:#5f86ad;border-radius:8px}.conversation-list-heading{padding:.1rem .4rem .8rem}.conversation-list-heading h2{color:#edf6ff;margin:0;font-size:1.15rem}.conversation-list-heading p{color:#9cafc7;margin:.3rem 0 0;font-size:.74rem;line-height:1.5}.conversation-list-empty{color:#a9bdd1;padding:.75rem .4rem;font-size:.78rem;line-height:1.6}.conversation-student{color:#d9e7f5;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:.7rem;width:100%;min-width:0;padding:.7rem .65rem;transition:border-color .18s,background .18s,transform .18s;display:flex}.conversation-student:hover{background:#1b38548c;border-color:#7ea4cb57;transform:translateY(-1px)}.conversation-student.selected{background:linear-gradient(145deg,#315b82bd,#173550cf);border-color:#7db0e1a8;box-shadow:inset 0 1px #e6f6ff21}.conversation-student .student-avatar{color:#e8f4ff;background:#315b86a1;width:2.35rem;height:2.35rem}.conversation-student>span:last-child{gap:.14rem;min-width:0;display:grid}.conversation-student b,.conversation-student small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.conversation-student b{color:#eef7ff;font-size:.84rem}.conversation-student small{color:#9fb6cc;font-size:.69rem}.da-messages-layout .da-chat{grid-template-rows:auto minmax(0,1fr) auto}.conversation-header{border-bottom:1px solid #7695b331;align-items:center;gap:.7rem;padding:1rem 1.3rem .85rem;display:flex}.conversation-header .student-avatar{color:#eaf6ff;background:#315b86a1;width:2.45rem;height:2.45rem}.conversation-header h2{color:#edf6ff;margin:0;font-size:1.05rem}.conversation-header p{color:#9eb4ca;margin:.18rem 0 0;font-size:.72rem}.conversation-thread{overscroll-behavior:contain;scrollbar-color:#5f86ad #0a1724;scrollbar-width:thin;flex-direction:column;gap:.55rem;min-height:0;padding:1.3rem;display:flex;overflow-y:auto}.conversation-thread::-webkit-scrollbar{width:7px}.conversation-thread::-webkit-scrollbar-track{background:#0a1724}.conversation-thread::-webkit-scrollbar-thumb{background:#5f86ad;border-radius:8px}.conversation-thread .chat-empty{min-height:0;padding:0}.conversation-thread .chat-empty.compact{place-content:center}@media (width<=760px){.warrior-console{grid-template-columns:1fr}.warrior-portrait{border-radius:15px 15px 0 0;min-height:200px;padding:1rem}.warrior-portrait img{max-height:12rem}.warrior-input>div{flex-direction:column}.warrior-input .primary{width:100%}.warrior-console{height:min(760px,100vh - 8rem);min-height:540px}.warrior-chat{min-height:0}.warrior-chat .warrior-input>div{flex-direction:row}.warrior-chat .warrior-input .primary{width:auto}.messages-layout{height:min(720px,100dvh - 8rem);min-height:440px}.da-thread{padding:1rem}.messages-layout .composer{padding:.8rem 1rem 1rem}.da-messages-layout{grid-template-columns:1fr;height:auto;min-height:0}.da-messages-layout .student-conversation-list{max-height:13.5rem;padding:.85rem;display:flex}.conversation-list-heading{padding:.1rem .25rem .55rem}.conversation-student{padding:.6rem}.da-messages-layout .da-chat{min-height:29rem}.conversation-header{padding:.9rem 1rem .75rem}.conversation-thread{padding:1rem}}@media (prefers-reduced-motion:reduce){.warrior-portrait img{animation:none}}.auth-hint{color:#94abc3;margin:.1rem 0;font-size:.78rem;line-height:1.5}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.onboarding-backdrop{z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#020810d9;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0;overflow:auto}.onboarding-panel{width:min(780px,100%);padding:clamp(1.25rem,3vw,2.2rem)}.onboarding-heading{border-bottom:1px solid #8aa9c42e;align-items:center;gap:1.15rem;padding-bottom:1.15rem;display:flex}.onboarding-heading img{object-fit:contain;filter:drop-shadow(0 12px 16px #0007158c);width:5.5rem;height:5.5rem;animation:4.8s ease-in-out infinite mascot-hover}.onboarding-heading h1{margin:0;font-size:clamp(1.4rem,3vw,2rem)}.onboarding-heading p{max-width:52ch;margin:.4rem 0 0;font-size:.85rem;line-height:1.65}.onboarding-section{margin-top:1.15rem}.onboarding-section h2{margin:0 0 .65rem;font-size:1rem}.onboarding-da-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.onboarding-da-list button,.onboarding-pets button{color:#c5d8ec;text-align:left;background:#0b1c2be3;border:1px solid #6c8aae4b;border-radius:13px;align-items:center;gap:.7rem;min-width:0;padding:.75rem;transition:transform .2s,border-color .2s,background .2s;display:flex}.onboarding-da-list button:hover,.onboarding-pets button:hover{background:#162f47ef;border-color:#82b3e5;transform:translateY(-2px)}.onboarding-da-list button.selected,.onboarding-pets button.selected{background:linear-gradient(145deg,#234a6c,#143046);border-color:#8dc6e5;box-shadow:inset 0 1px #d7f3ff25}.onboarding-da-list button>span:nth-child(2),.onboarding-pets button>span{gap:.16rem;min-width:0;display:grid}.onboarding-da-list b,.onboarding-pets b{color:#eff8ff;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.onboarding-da-list small,.onboarding-pets small{color:#90a8c0;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.4;overflow:hidden}.onboarding-da-list em{color:#9fb7d0;white-space:nowrap;margin-left:auto;font-size:.68rem;font-style:normal}.onboarding-pets{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.onboarding-pets img{object-fit:contain;filter:drop-shadow(0 10px 12px #00071670);width:4.25rem;height:4.25rem}.onboarding-submit{margin-top:1.2rem}.selected-companion{background:#0b1c2be3;border:1px solid #7095b84a;border-radius:13px;align-items:center;gap:.65rem;margin-top:1.1rem;padding:.75rem;display:flex}.selected-companion img{object-fit:contain;width:3.25rem;height:3.25rem}.selected-companion span{gap:.15rem;display:grid}.selected-companion b{color:#e9f5ff;font-size:.85rem}.selected-companion small{color:#96adc4;font-size:.72rem}.planning-intake{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.planning-intake h2,.planning-intake>p{grid-column:1/-1}.planning-intake>p{color:#9eb4cd;margin:-.35rem 0 .1rem;font-size:.78rem;line-height:1.55}.planning-intake label,.plan-intake-fields label,.plan-studio>label{color:#c6d8ed;gap:.35rem;font-size:.78rem;font-weight:700;display:grid}.planning-intake label:last-child{grid-column:1/-1}.planning-intake textarea,.plan-intake-fields textarea,.plan-studio select{color:#e5f0fc;resize:vertical;background:#071727d9;border:1px solid #7ca1c44d;border-radius:10px;outline:none;width:100%;padding:.62rem .7rem;line-height:1.5}.planning-intake textarea:focus,.plan-intake-fields textarea:focus,.plan-studio select:focus{border-color:#75bbd9;box-shadow:0 0 0 3px #4e9db22b}.schedule-image-upload{background:#071727a8;border:1px dashed #77b3d18a;border-radius:12px;grid-column:1/-1;min-height:7.75rem;padding:.7rem}.schedule-image-upload>span{color:#d4e8fb;font-weight:700}.schedule-image-upload input{color:#a9c7df;width:100%;font-size:.75rem}.schedule-image-upload small{color:#9bb4cb;font-size:.72rem;font-weight:500}.schedule-image-upload img{object-fit:contain;object-position:left center;background:#06131f;border:1px solid #82b5d155;border-radius:9px;width:min(100%,28rem);max-height:11rem}.planning-intake .schedule-image-upload+label,.plan-intake-fields .schedule-image-upload+label{grid-column:1/-1}.plan-studio{width:min(780px,100%);max-height:min(92vh,900px)}.plan-studio>.muted{margin-top:-.35rem}.plan-intake-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:.9rem 0;display:grid}.plan-intake-fields label:last-child{grid-column:1/-1}.generated-plan-preview,.personal-plan-card,.checkin-advice{background:linear-gradient(145deg,#16334bcf,#0a1b2ac9);border:1px solid #75a9c44a;border-radius:14px}.generated-plan-preview{margin-top:.9rem;padding:.85rem 1rem}.generated-plan-preview h3,.personal-plan-card h3,.checkin-advice h3{color:#e8f4ff;margin:0;font-size:1rem}.generated-plan-preview p,.personal-plan-card header p,.checkin-advice p{color:#b8cbe0;margin:.35rem 0;line-height:1.55}.generated-plan-preview ul{color:#cde0f4;gap:.35rem;margin:.65rem 0;padding-left:1.1rem;font-size:.8rem;line-height:1.5;display:grid}.generated-plan-preview small,.personal-plan-card>small,.checkin-advice small{color:#d9af7d;font-size:.72rem;line-height:1.5}.personal-plan-card{padding:1rem 1.15rem}.personal-plan-card header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.personal-advice{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:.75rem 0;display:grid}.personal-advice p{color:#c8daec;background:#06152171;border-radius:10px;margin:0;padding:.65rem .7rem;font-size:.8rem;line-height:1.55}.checkin-advice{padding:1rem 1.1rem}.record-layout .checkin-advice{grid-column:1/-1}.checkin-value-field{position:relative}.checkin-value-field input{padding-right:3.5rem}.checkin-value-field span{color:#9fc0de;pointer-events:none;font-size:.78rem;font-weight:800;position:absolute;top:50%;right:.9rem;transform:translateY(-50%)}.calendar .day{font:inherit;border:0}.unified-calendar{grid-template-columns:repeat(7,minmax(0,1fr));gap:.42rem}.unified-calendar .day{aspect-ratio:auto;align-content:start;justify-items:start;min-height:5.25rem;padding:.44rem .56rem;position:relative;overflow:visible}.unified-calendar .day b{color:#7dc1ee;align-self:end;font-size:1.05rem;line-height:1}.unified-calendar .day.done-day{background:linear-gradient(145deg,#123953,#0e263a)}.unified-calendar .day.week-stamped{box-shadow:inset 0 0 0 1px #d5a34b8f}.unified-calendar .day em{z-index:2;color:#fff3bd;text-overflow:ellipsis;white-space:nowrap;background:#70501dd9;border:1px solid #f3d579;border-radius:6px;max-width:4.7rem;padding:.16rem .3rem;font-size:.55rem;font-style:normal;font-weight:800;position:absolute;bottom:-.48rem;right:-.32rem;overflow:hidden;box-shadow:0 4px 10px #00081480}.da-mark{color:#0000;background:#e9bd58;border-radius:50%;width:.62rem;height:.62rem;display:block;position:absolute;bottom:.52rem;right:.5rem;box-shadow:0 2px 6px #0008148a}.unified-calendar .day.has-note:before{z-index:7;content:"";opacity:0;pointer-events:none;background:#10283f;border-top:1px solid #6d9bc1a6;border-left:1px solid #6d9bc1a6;width:.65rem;height:.65rem;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + .2rem);left:50%;transform:translate(-50%)rotate(45deg)}.unified-calendar .day.has-note:after{z-index:6;content:attr(data-note);opacity:0;pointer-events:none;color:#dbeafa;text-align:left;white-space:normal;background:linear-gradient(145deg,#183b57f7,#0a1d30fa);border:1px solid #6d9bc1a6;border-radius:12px;width:min(20rem,100vw - 3rem);padding:.65rem .8rem;font-size:.76rem;font-weight:650;line-height:1.5;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%,-.25rem);box-shadow:0 14px 30px #000814a3}.unified-calendar .day.has-note:hover:before,.unified-calendar .day.has-note:focus-visible:before{opacity:1;transform:translate(-50%)rotate(45deg)}.unified-calendar .day.has-note:hover:after,.unified-calendar .day.has-note:focus-visible:after{opacity:1;transform:translate(-50%)}.legend-da{background:#e9bd58}.legend-stamp{background:#825d28}.app-shell.screen-records .record-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:1.15rem}.app-shell.screen-records .checkin-panel{align-self:start;width:100%;min-height:0;padding:1.15rem 1.4rem 1.25rem}.app-shell.screen-records .checkin-panel h2{margin-bottom:.8rem}.app-shell.screen-records .checkin-panel label{gap:.28rem;margin:.52rem 0}.app-shell.screen-records .checkin-panel textarea{resize:vertical;height:5.4rem;min-height:5.4rem;padding:.62rem .8rem;line-height:1.45}.app-shell.screen-records .checkin-panel .primary.wide{min-height:2.65rem;margin-top:.12rem}.app-shell.screen-records .calendar-card{width:100%;min-width:0}.app-shell.screen-records .calendar-card .card-heading{gap:.65rem;display:grid}.app-shell.screen-records .calendar-card .card-heading h3{white-space:nowrap}.app-shell.screen-records .calendar-card .card-heading p{max-width:54ch;margin:.35rem 0 0;line-height:1.55}.app-shell.screen-records .calendar-card .card-heading .status{white-space:normal;width:fit-content;max-width:100%;margin:0;line-height:1.4}.app-shell.screen-records .unified-calendar{margin-top:1.2rem}.da-note-feed{border-radius:16px;gap:.7rem;padding:1.25rem 1.4rem;display:grid}.da-note-feed header h2,.da-note-feed header p{margin:0}.da-note-feed header p{color:#92abc4;margin-top:.25rem;font-size:.8rem}.da-note{background:#10263ad1;border-radius:12px;gap:.2rem;padding:.75rem .85rem;display:grid}.da-note b{color:#e4f1fc;font-size:.84rem}.da-note p{color:#c4d7e9;margin:0;line-height:1.55}.da-note small{color:#8da7c0;font-size:.7rem}.week-switcher{flex-wrap:wrap;gap:.42rem;margin:.75rem 0;display:flex}.week-switcher button{color:#aac3dc;background:#0d2031;border:1px solid #6f98ba55;border-radius:8px;padding:.42rem .62rem;font-size:.76rem;font-weight:700}.week-switcher button.active{color:#fff0bb;background:#4d3518;border-color:#e0b75f}.da-attendance-day{color:#d9e8f5;cursor:pointer;border-bottom:1px solid #7594b124;grid-template-columns:auto 1fr;align-items:center;gap:.15rem .6rem;padding:.62rem 0;display:grid}.da-attendance-day input{accent-color:#d7aa4d;width:1rem;height:1rem}.da-attendance-day small{color:#91aac1;grid-column:2;font-size:.7rem}.stamp-confirmed{color:#f1d27d;margin:.75rem 0 0;font-weight:800}.admin-insights{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1rem 0;display:grid}.admin-insights article{padding:1.2rem}.admin-insights h2{color:#a6bed5;margin:0;font-size:.8rem;font-weight:700}.admin-insights strong{color:#edf7ff;letter-spacing:-.04em;margin:.5rem 0 .1rem;font-size:2rem;display:block}.admin-insights p{color:#8fa8bf;margin:0;font-size:.72rem}.schedule-config{align-items:center;gap:.65rem;display:flex}.schedule-config .primary{flex:none}.stamp-congrats-backdrop{z-index:40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#020b14bc;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.stamp-congrats{background:radial-gradient(circle at 82% 12%,#f4c8643d,#0000 36%),#10263a;border-color:#e7be62a8;border-radius:24px;align-items:center;gap:1rem;width:min(620px,100%);padding:clamp(1.2rem,4vw,2rem);display:flex;overflow:hidden}.stamp-congrats img{object-fit:contain;filter:drop-shadow(0 12px 18px #0008149c);width:9rem;height:9rem}.stamp-congrats p{color:#e8bf62;margin:0 0 .25rem;font-size:.78rem;font-weight:800}.stamp-congrats h2{color:#f5f9fd;margin:0;font-size:clamp(1.35rem,4vw,2rem)}.stamp-congrats span{color:#c5d7e7;margin:.55rem 0 1rem;line-height:1.6;display:block}.admin-home{gap:1rem;display:grid}.admin-overview{grid-template-columns:minmax(280px,1.55fr) repeat(3,minmax(150px,.7fr));gap:.85rem;display:grid}.admin-lead,.admin-kpi,.admin-chart-card{border-radius:16px}.admin-lead{background:linear-gradient(120deg,#153456ee,#0d2237d9 70%,#173a52d6);justify-content:space-between;align-items:stretch;min-height:148px;padding:1.2rem 1.35rem;display:flex;position:relative;overflow:hidden}.admin-lead:after{content:"";border:1px solid #80b8e638;border-radius:50%;width:15rem;height:15rem;position:absolute;bottom:-11rem;right:-6rem;box-shadow:0 0 70px #3d85ca28}.admin-lead-copy,.admin-lead-status{z-index:1;align-content:start;display:grid;position:relative}.admin-lead-copy>span{color:#9ec6f2;letter-spacing:.04em;font-size:.78rem;font-weight:750}.admin-lead-copy strong{color:#f2f8ff;letter-spacing:-.04em;font-variant-numeric:tabular-nums;margin-top:.28rem;font-size:clamp(2rem,3vw,2.8rem);line-height:1}.admin-lead-copy p{color:#9bb2ca;max-width:25ch;margin:.45rem 0 0;font-size:.75rem;line-height:1.45}.admin-lead-status{color:#b8d7f4;align-content:center;justify-items:end}.admin-lead-status svg{color:#83b7ed;margin-bottom:.45rem}.admin-lead-status b{color:#d9ebfb;font-size:.75rem}.admin-lead-status small{color:#7f9eba;margin-top:.12rem;font-size:.68rem}.admin-kpi{background:linear-gradient(145deg,#10243aeb,#091725ee);border:1px solid #779bbb2e;grid-template-columns:auto 1fr;align-content:start;gap:.65rem .58rem;min-height:148px;padding:1.1rem;display:grid;box-shadow:inset 0 1px #ffffff0c}.admin-kpi>svg{color:#85b9ee;background:#5d9fe51a;border-radius:10px;width:2.15rem;height:2.15rem;padding:.45rem}.admin-kpi:nth-child(3)>svg{color:#e3c178;background:#d9ad5715}.admin-kpi:nth-child(4)>svg{color:#a0ddca;background:#58b99d15}.admin-kpi div{gap:.12rem;display:grid}.admin-kpi span{color:#9cb0c5;font-size:.71rem;font-weight:700}.admin-kpi strong{color:#f1f7fd;letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:1.7rem;line-height:1.05}.admin-kpi small{color:#7891aa;grid-column:1/-1;font-size:.67rem}.admin-dashboard-grid{grid-template-columns:minmax(0,1.5fr) minmax(265px,.8fr);gap:1rem;display:grid}.admin-chart-card{min-width:0;padding:1.2rem}.admin-chart-heading{justify-content:space-between;align-items:start;gap:.7rem;display:flex}.admin-chart-heading h2{color:#edf5fe;letter-spacing:-.015em;margin:0;font-size:1rem}.admin-chart-heading p{color:#849ab2;margin:.25rem 0 0;font-size:.72rem;line-height:1.45}.admin-chart-heading>span{color:#9fc7f4;background:#6096d114;border:1px solid #70a0df26;border-radius:7px;flex:none;align-items:center;gap:.3rem;padding:.3rem .5rem;font-size:.69rem;font-weight:750;display:inline-flex}.admin-legend{color:#8ca4bd;gap:.9rem;margin-top:1rem;font-size:.69rem;display:flex}.admin-legend span{align-items:center;gap:.3rem;display:inline-flex}.admin-legend i{border-radius:50%;width:.45rem;height:.45rem}.student-dot{background:#79afff}.da-dot{background:#d6af6c}.activity-bars{background:linear-gradient(#0000 32%,#6d8eae12 33%,#0000 34% 65%,#6d8eae12 66%,#0000 67%);border-bottom:1px solid #6688aa30;grid-template-columns:repeat(7,1fr);gap:clamp(.35rem,1vw,.8rem);height:184px;margin-top:.55rem;padding:.7rem .2rem 0;display:grid}.activity-day{text-align:center;grid-template-rows:1fr auto;gap:.45rem;min-width:0;display:grid}.activity-day small{color:#8298af;font-size:.66rem;font-weight:700}.activity-bar-area{justify-content:center;align-items:end;gap:.2rem;min-height:0;display:flex}.activity-bar{border-radius:5px 5px 1px 1px;width:min(1.25rem,36%);min-height:0}.student-bar{background:linear-gradient(#8ec1ff,#4e86d6);box-shadow:0 6px 13px #3d83d439}.da-bar{background:linear-gradient(#e5c582,#b88842);box-shadow:0 6px 13px #b4823c2c}.admin-completion-card{align-content:start;display:grid}.completion-figure{place-items:center;width:10.8rem;height:10.8rem;margin:.65rem auto .35rem;display:grid;position:relative}.completion-figure svg{width:100%;height:100%;overflow:visible;transform:rotate(-90deg)}.completion-figure circle{fill:none;stroke-width:10px}.completion-track{stroke:#233e57}.completion-value{stroke:#79afff;stroke-linecap:round;filter:drop-shadow(0 3px 3px #497fbd48);transition:stroke-dasharray .45s}.completion-figure div{place-items:center;display:grid;position:absolute}.completion-figure strong{color:#f0f7ff;letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:1.7rem}.completion-figure span{color:#8ea7c1;font-size:.68rem}.completion-stats{color:#91a8be;justify-content:center;gap:1.25rem;margin-top:.2rem;font-size:.68rem;display:flex}.completion-stats b{color:#ddecfc;font-variant-numeric:tabular-nums;font-size:.94rem}.admin-distribution-card,.admin-insight-list{min-height:208px}.distribution-list{gap:1rem;margin-top:1.3rem;display:grid}.distribution-row{grid-template-columns:1fr auto auto;align-items:center;gap:.2rem .5rem;display:grid}.distribution-row>div:first-child{color:#c5d6e8;align-items:center;gap:.4rem;font-size:.76rem;display:flex}.distribution-row>div:first-child span{border-radius:50%;width:.48rem;height:.48rem}.distribution-row strong{color:#f1f7fd;font-variant-numeric:tabular-nums;font-size:.9rem}.distribution-row em{color:#829bb5;text-align:right;min-width:2rem;font-size:.67rem;font-style:normal}.distribution-bar{background:#20394f;border-radius:99px;grid-column:1/-1;height:.35rem;overflow:hidden}.distribution-bar i{border-radius:inherit;height:100%;display:block}.admin-insight-list{align-content:start;display:grid}.insight-item{border-bottom:1px solid #708ca721;gap:.65rem;padding:.78rem 0;display:flex}.insight-item:last-child{border-bottom:0}.insight-item>i{border-radius:50%;flex:none;width:.5rem;height:.5rem;margin-top:.3rem}.insight-item i.blue{background:#7dafff}.insight-item i.gold{background:#d8b36e}.insight-item i.mint{background:#78ceb6}.insight-item div{gap:.18rem;display:grid}.insight-item b{color:#dbeafa;font-size:.77rem}.insight-item span{color:#8097af;font-size:.68rem;line-height:1.4}.admin-log-card{margin-top:0}.admin-log-card .card-heading{margin-bottom:.25rem}.admin-log-card .card-heading h2{margin:0}.admin-log-card .card-heading p{color:#849ab2;margin:.25rem 0 0;font-size:.72rem}@media (width<=1020px){.admin-overview{grid-template-columns:minmax(260px,1.5fr) repeat(3,1fr)}.admin-dashboard-grid{grid-template-columns:1fr 1fr}.admin-activity-chart{grid-column:1/-1}}@media (width<=760px){.admin-overview,.admin-dashboard-grid{grid-template-columns:1fr 1fr}.admin-lead,.admin-activity-chart{grid-column:1/-1}.admin-lead-status{justify-items:start}.activity-bars{gap:.3rem}}@media (width<=510px){.admin-overview,.admin-dashboard-grid{grid-template-columns:1fr}.admin-activity-chart{grid-column:auto}.admin-kpi{min-height:108px}.admin-chart-card{padding:1rem}.activity-bars{height:155px}.admin-chart-heading{display:block}.admin-chart-heading>span{margin-top:.65rem}.completion-figure{width:9.5rem;height:9.5rem}}@media (width>=1021px){.auth-panel{height:auto;min-height:0;max-height:calc(100dvh - 2rem);overflow-y:auto}.auth-panel .demo{flex:none;margin-top:1.15rem}}@media (width<=900px){.admin-insights{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.unified-calendar .day{min-height:3.65rem;padding:.32rem}.unified-calendar .day em{max-width:3.3rem}.admin-insights{grid-template-columns:1fr}.schedule-config,.stamp-congrats{flex-direction:column;align-items:stretch}.stamp-congrats img{align-self:center}}.calendar-note{border-top:1px solid #7895b622;align-items:center;gap:.7rem;margin-top:.8rem;padding-top:.75rem;display:flex}.calendar-note small{color:#91aac2;font-size:.68rem;line-height:1.45}@media (width<=700px){.planning-intake,.plan-intake-fields,.personal-advice{grid-template-columns:1fr}.planning-intake label:last-child,.plan-intake-fields label:last-child{grid-column:auto}.personal-plan-card header{flex-direction:column;align-items:start}.calendar-note{align-items:flex-start}.schedule-request-form{grid-template-columns:1fr}.profile-summary{text-align:center;grid-template-columns:1fr;justify-items:center}}@media (width<=600px){.onboarding-backdrop{align-items:start;padding:.75rem}.onboarding-panel{padding:1.1rem}.onboarding-heading{align-items:flex-start}.onboarding-heading img{width:4rem;height:4rem}.onboarding-da-list,.onboarding-pets{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.onboarding-heading img,.onboarding-da-list button,.onboarding-pets button{transition:none;animation:none}}@media (width>=761px) and (height<=760px){.auth-panel.is-register{min-height:0;padding:.85rem 1.1rem}.auth-panel.is-register h1{margin:.2rem 0 .35rem;font-size:1.5rem;line-height:1.12}.auth-panel.is-register .muted{font-size:.75rem;line-height:1.42}.auth-panel.is-register .tabs{margin:.5rem 0}.auth-panel.is-register form{gap:.38rem}.auth-panel.is-register input{padding:.42rem .62rem}.auth-panel.is-register .registration-da{gap:.3rem;padding:.45rem .55rem}.auth-panel.is-register .registration-da>p{font-size:.64rem;line-height:1.32}.auth-panel.is-register .registration-da-list{gap:.25rem}.auth-panel.is-register .registration-da-list button{min-height:2.15rem;padding:.3rem .45rem}.auth-panel.is-register .registration-da-list button span{width:1.5rem;height:1.5rem}.auth-panel.is-register .primary{padding:.48rem .72rem}}.home-bottom{grid-template-columns:minmax(0,1fr)}.journey-stage{isolation:isolate;aspect-ratio:1;background:var(--journey-image) center / cover no-repeat, #102235;border:1px solid #7996ba3d;border-radius:16px;min-width:0;display:grid;position:relative;overflow:hidden;box-shadow:0 10px 24px #020a142b}.journey-stage:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#06132566 0%,#06132528 42%,#061325a8 100%);position:absolute;inset:0}.journey-stage>.stamp{z-index:1;color:#e6f3ff;text-shadow:0 2px 12px #020914d9;background:0 0;flex-direction:column;justify-content:space-between;align-items:center;min-height:100%;padding:clamp(.85rem,1.45vw,1.2rem) .55rem;display:flex;position:relative}.journey-stage>.stamp b{font-size:clamp(1.2rem,1.9vw,1.55rem)}.journey-stage>.stamp span{font-size:clamp(.75rem,1vw,.95rem);font-weight:700}.journey-stage>.stamp.verified{color:#fff7d0;background:linear-gradient(145deg,#d8982f40,#0000 58%)}.journey-stage>.stamp.ready{color:#eef8ff;background:linear-gradient(145deg,#379bc94d,#0000 58%)}@media (width<=1050px){.stamps{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.stamps{grid-template-columns:repeat(2,minmax(0,1fr))}}
