/* Plain surfaces and consistent live-text branding. */
:root{--bg:#f7f9fb;--bg2:#edf1f5;--brown:#567c9f;--brown-d:#426584;--cream:#edf3f8;--line:#e2e8ee;--line2:#edf1f4;--ink:#293a4b;--ink2:#596b7d;--ink3:#738395}
body,.workspace,.page-header{background:#f7f9fb;background-image:none}
.sidebar{background:#fff;border-right:1px solid var(--line);box-shadow:none}.brand{gap:10px;margin:0 0 30px;align-items:center}.brand .mascot{width:43px;height:50px;background:none;border:0;box-shadow:none}
.wordmark,.brand .wordmark,.mobile-wordmark,#lock .wordmark{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1rem;font-weight:600;font-style:normal;line-height:1.25;letter-spacing:0;font-kerning:normal;font-variant:normal;text-rendering:optimizeLegibility;text-transform:none;text-shadow:none;color:#31465b;white-space:nowrap}.brand .wordmark{display:block;flex:none}
.topbar{background:transparent;border-bottom:1px solid #e6ebf1}#headerDate{color:var(--ink3)}.topbar .sync{background:#edf5f1}.topbar .sync b{color:#426e61}.topbar .sync[data-state=error]{background:#fff0ed}.topbar .sync[data-state=error] b{color:#b34d40}.topbar .sync[data-state=busy]{background:#fff6e1}.topbar .sync[data-state=busy] b{color:#886330}#manageMenu summary{background:#fff;border-color:var(--line);color:var(--ink2)}
body .page-header .page-heading{max-width:1260px;margin:0 auto;padding:18px 42px 19px}.content{padding-top:15px}.page-heading h1{color:var(--ink)}.page-heading>.heading-copy{gap:13px}.greeting-pet,body:not([data-view="today"]) .greeting-pet{width:76px;height:80px;isolation:auto}.greeting-pet:before{display:none;content:none}.page-heading .fab,body[data-view="today"] .page-heading .fab{background:var(--brown);color:#fff;box-shadow:none}.page-heading .fab:hover{background:var(--brown-d)}
.tab{color:var(--ink2);background:transparent}.tab:hover{background:#f1f5f8;color:#3e6080}.tab .ic{color:inherit}.tab .n{background:#edf1f6;color:#758599}.tab.on{color:#426587;background:#eaf2f9;box-shadow:none}.tab.on .n{background:#dce9f4;color:#426587}.tab[data-tab="todo"].on{background:#fff3d7;color:#886728}.tab[data-tab="assignments"].on{background:#fcecf1;color:#a36881}.tab[data-tab="ask"].on{background:#eeedf9;color:#77749b}
.overview-stats>button,.week-panel,.panel,.cal,.calday,.askbox,.subject-panel{background:#fff;box-shadow:none;border-color:var(--line)}.week-day.current{background:#edf4fa;border-color:#dfeaf4}.week-day.current>b{background:#7395b3;box-shadow:none}.preview-notice{background:#edf2f7;color:#6a7d90}.connected-panel{background:#f0f4f7;border-color:#e5ebf0}.empty .m{display:flex;justify-content:center}.chkbtn.on{background:#7295b4;border-color:#7295b4}
#lock{background:#f7f9fb;background-image:none}#lock .wordmark{font-size:1.7rem;font-weight:600}#lock p,#lock .remember{color:var(--ink2)}#lock .err{color:#b05246}#lockPet{background:transparent;border:0;box-shadow:none;transform:none}#lockPet .pet-mascot{transform:none}#lock input{background:#fff;border-color:#dce4ed;color:var(--ink)}#lock button{background:var(--brown);color:#fff}#lock input:focus{border-color:#83a2bf;box-shadow:0 0 0 3px #e5edf5}
@media(min-width:761px) and (max-width:1150px){body .page-header .page-heading{padding-left:26px;padding-right:26px}.brand{gap:8px}.brand .wordmark{font-size:.9375rem}.brand .mascot{width:40px}}
@media(max-width:760px){.sidebar{background:none;border:0;box-shadow:none}.topbar{height:61px;background:#fff;border-bottom:1px solid var(--line)}.mobile-wordmark{font-size:.9375rem}body .page-header .page-heading{padding:14px 18px 13px}.content{padding-top:12px}.greeting-pet,body:not([data-view="today"]) .greeting-pet{width:64px;height:69px}.page-heading>.heading-copy,body[data-view="today"] .page-heading>.heading-copy{gap:10px}.tabs{background:#fffffff5;border-top:1px solid var(--line);box-shadow:0 -3px 16px #26384905}.tab.on{box-shadow:none}.tab .n{background:#eaf0f6;color:#718298}.tab[data-tab="ask"].on .n{background:#e0dff3}.content-footer{color:var(--ink3)}}
@media(max-width:370px){body .page-header .page-heading{padding-left:12px;padding-right:12px}.mobile-wordmark{font-size:.875rem}}

/* Read native 192x208 cells directly from the unchanged installed spritesheet. */
.pet-mascot.kkamang-sprite{display:block;flex:none;width:var(--pet-width,104px);height:calc(var(--pet-width,104px)*208/192);max-width:none;max-height:none;aspect-ratio:192 / 208;background-image:url('kkamang-pet-original.webp');background-size:800% 1100%;background-position:var(--pet-x) var(--pet-y);background-repeat:no-repeat;transform:none;filter:none}
.brand .mascot{width:52px;height:57px}.brand .kkamang-sprite{--pet-width:52px!important}
.greeting-pet,body:not([data-view="today"]) .greeting-pet{width:104px;height:113px}.greeting-pet .kkamang-sprite{--pet-width:104px!important}
.subject-onboarding .kkamang-sprite{--pet-width:76px!important}#lockPet .kkamang-sprite{--pet-width:114px!important;transform:none}
.greeting-pet .kkamang-sprite,#lockPet .kkamang-sprite{animation:var(--pet-animation) var(--pet-duration,1.4s) steps(1,end) 1}
@media(min-width:761px) and (max-width:1150px){.brand .mascot{width:46px}.brand .kkamang-sprite{--pet-width:46px!important}}
@media(max-width:760px){.greeting-pet,body:not([data-view="today"]) .greeting-pet{width:82px;height:89px}.greeting-pet .kkamang-sprite{--pet-width:82px!important}.subject-onboarding .kkamang-sprite{--pet-width:62px!important}}
@media(prefers-reduced-motion:reduce){.greeting-pet .kkamang-sprite,#lockPet .kkamang-sprite{animation:none}}
.kkamang-neutral{--pet-animation:kkamang-neutral;--pet-duration:1.4s}
@keyframes kkamang-neutral{0%,70%,100%{background-position:0% 0%}82%{background-position:14.28571429% 0%}}
.kkamang-sleepy,.kkamang-thinking{--pet-animation:none}
.kkamang-happy{--pet-animation:kkamang-happy;--pet-duration:1.5s}
@keyframes kkamang-happy{0%,45%,100%{background-position:0% 80%}62%,80%{background-position:14.28571429% 80%}}
.kkamang-wave{--pet-animation:kkamang-wave;--pet-duration:1.2s}
@keyframes kkamang-wave{0%,100%{background-position:28.57142857% 30%}50%{background-position:14.28571429% 30%}}

/* Linked items stay collapsed until the user opens the section. */
.connected-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:28px;list-style:none;cursor:pointer;font-size:.875rem;font-weight:700;color:var(--ink2)}
.connected-panel>summary::-webkit-details-marker{display:none}
.connected-panel>summary:focus-visible{outline:2px solid #6b8dbc;outline-offset:6px;border-radius:6px}
.connected-chevron{display:flex;align-items:center;transform:rotate(90deg)}
.connected-chevron .ic{width:18px;height:18px}
.connected-panel[open]>summary .connected-chevron{transform:rotate(-90deg)}
.connected-content{padding-top:12px}
.connected-actions{display:flex;justify-content:flex-end}
