@import "https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy.css";@import "https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=block";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}}:root{--brand:#005efe;--brand-hover:#004ed8;--brand-active:#0044bf;--brand-soft:#eaf2ff;--brand-border:#b8d2ff;--brand-focus:#005efe3d;--canvas:#fff;--surface:#f7f7f8;--surface-strong:#efeff1;--ink:#171719;--text-secondary:#5f6168;--text-muted:#85878d;--border:#e2e3e6;--border-strong:#c9cbd0;--success:#16803c;--warning:#b86100;--purple:#7656c8;--font-base:"Paperlogy", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", system-ui, sans-serif;--header-height:64px;--sidebar-expanded:236px;--sidebar:var(--sidebar-expanded);--card-padding:20px;--layout-gap:20px;--content-max:1440px;--form-select-chevron-inset:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--surface);color:var(--ink);font-family:var(--font-base);margin:0;font-size:17px;font-weight:400;line-height:1.55}body,button,input,select,textarea{font-family:var(--font-base);font-synthesis:none}button,input,select,textarea{min-width:0;max-width:100%;font-size:16px}button{color:inherit}button,select{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--brand-focus);outline-offset:2px}select:not([multiple]){appearance:none;padding-right:calc(var(--form-select-chevron-inset) + 24px)!important;background-image:linear-gradient(45deg, transparent 50%, var(--text-secondary) 50%), linear-gradient(135deg, var(--text-secondary) 50%, transparent 50%)!important;background-position:calc(100% - var(--form-select-chevron-inset) - 5px) calc(50% - 2px), calc(100% - var(--form-select-chevron-inset)) calc(50% - 2px)!important;background-repeat:no-repeat!important;background-size:5px 5px,5px 5px!important}select::-ms-expand{display:none}h1,h2,h3,p{margin:0}h1,h2,h3,strong,b,button,label,.eyebrow{font-weight:600}em{font-style:normal}.material-symbols-rounded{overflow-wrap:normal;letter-spacing:normal;text-transform:none;white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-feature-settings:"liga";font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;direction:ltr;font-family:Material Symbols Rounded;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.material-symbols-rounded.filled{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.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}.app-shell{grid-template-areas:"header header""sidebar main";grid-template-columns:var(--sidebar) minmax(0, 1fr);grid-template-rows:var(--header-height) minmax(calc(100vh - var(--header-height)), auto);background:var(--surface);width:100%;min-height:100vh;display:grid}.app-shell.calendar-app{grid-template-rows:var(--header-height) minmax(0, 1fr);height:100dvh;min-height:100dvh;overflow:hidden}.calendar-app .main-area{min-height:0;overflow:hidden}.calendar-app .content-shell.calendar-shell{height:100%;overflow:hidden}.sidebar{min-height:calc(100vh - var(--header-height));height:calc(100vh - var(--header-height));top:var(--header-height);z-index:40;background:var(--canvas);border-right:1px solid var(--border);flex-direction:column;grid-area:sidebar;padding:18px 16px;transition:padding .22s;display:flex;position:sticky;overflow:hidden}.sidebar nav{gap:6px;width:100%;display:grid}.sidebar nav button{min-height:48px;color:var(--text-secondary);text-align:left;background:0 0;border:0;border-radius:14px;align-items:center;gap:12px;padding:12px;display:flex}.sidebar nav button:hover{background:var(--surface);color:var(--ink)}.sidebar nav button.active{color:var(--brand-active);background:var(--brand-soft)}.sidebar nav button.active .material-symbols-rounded{color:var(--brand)}.sidebar-bottom{margin-top:auto}.sidebar-mode-switch{background:var(--surface-strong);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.sidebar-mode-switch button{min-width:0;min-height:42px;color:var(--text-secondary);white-space:nowrap;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:8px;font-size:13px;display:flex}.sidebar-mode-switch button:hover{color:var(--ink)}.sidebar-mode-switch button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 3px #17171914}.sidebar-mode-switch .material-symbols-rounded{flex:none;font-size:20px}.reset-button{width:100%;min-height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:12px;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;font-size:14px;display:flex}.reset-button:hover{color:var(--brand-active);background:var(--brand-soft)}.main-area{flex-direction:column;grid-area:main;min-width:0;display:flex}.topbar{min-width:0;min-height:var(--header-height);border-bottom:1px solid var(--border);z-index:90;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff2;grid-area:header;justify-content:space-between;align-items:center;gap:16px;padding:8px 12px;display:flex;position:sticky;top:0}.site-logo{background-image:url(/moaon-logo.png);background-position:0;background-repeat:no-repeat;background-size:contain;flex:0 0 190px;width:190px;height:48px}.moaon-copyright{width:100%;color:var(--text-muted);letter-spacing:.02em;text-align:center;flex:none;padding:12px 16px 20px;font-size:11px}.main-area>.moaon-copyright{margin-top:auto}.calendar-app .content-shell.calendar-shell{flex:auto;height:auto;min-height:0}.calendar-app .main-area>.moaon-copyright{padding-block:5px 9px}.access-shell:has(>.moaon-copyright){grid-template-rows:minmax(min-content,1fr) auto}.child-link-shell:has(>.moaon-copyright){grid-template-rows:auto minmax(0,1fr) auto;display:grid}.global-child-picker{scrollbar-width:none;justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex;overflow-x:auto}.global-child-picker::-webkit-scrollbar{display:none}.global-child-picker>button,.global-child-option>button{width:44px;height:44px;min-height:44px;color:var(--text-secondary);background:var(--canvas);border:1px solid var(--border);white-space:nowrap;border-radius:50%;justify-content:center;align-items:center;gap:0;padding:3px;font-size:14px;display:inline-flex}.global-child-picker>button{padding:0}.global-child-picker>button:hover,.global-child-option>button:hover{border-color:var(--brand-border)}.global-child-picker>button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.global-child-option{flex:none;position:relative}.global-child-option>button{color:var(--text-secondary);background:var(--canvas);border:3px solid var(--border-strong)}.global-child-option>button.active{color:var(--child-ink);background:var(--canvas);border-color:var(--child-color);box-shadow:0 0 0 3px var(--child-tint)}.global-child-option .child-name{display:none}.child-avatar{width:34px;height:34px;color:var(--ink);border:2px solid #ffffffe6;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;font-size:20px;line-height:1;display:inline-flex}.child-avatar.large{border-width:3px;flex-basis:76px;width:76px;height:76px;font-size:44px;box-shadow:0 8px 24px #1717191f}.child-avatar.photo-avatar{background-color:var(--surface-strong);background-position:50%;background-size:cover}.top-actions{align-items:center;gap:10px;display:flex}.mode-switch{background:var(--surface-strong);border-radius:14px;padding:4px;display:flex}.mode-switch button{min-height:40px;color:var(--text-secondary);background:0 0;border:0;border-radius:10px;padding:8px 14px;font-size:14px}.mode-switch button.active{color:var(--ink);background:var(--canvas);box-shadow:0 1px 3px #17171914}.button{white-space:nowrap;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-size:14px;display:inline-flex}.button.primary{color:#fff;background:var(--brand)}.button.primary:hover{background:var(--brand-hover)}.button.primary:active{background:var(--brand-active)}.button.secondary{color:var(--ink);background:var(--canvas);border-color:var(--border)}.button.secondary:hover{border-color:var(--brand-border);color:var(--brand-active);background:var(--brand-soft)}.button.danger{color:#b42318;background:#fff3f2;border-color:#fecaca}.button.danger:hover{background:#fee4e2}.icon-button{width:44px;height:44px;color:var(--text-secondary);background:var(--canvas);border:1px solid var(--border);border-radius:12px;flex:0 0 44px;justify-content:center;align-items:center;padding:10px;display:inline-flex;position:relative}.icon-button:hover{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border)}.icon-button.soft{background:var(--brand-soft);color:var(--brand-active);border-color:#0000}.top-actions .icon-button i{background:var(--brand);border:2px solid var(--canvas);border-radius:50%;width:7px;height:7px;position:absolute;top:9px;right:9px}.mobile-menu,.mobile-bottom-nav,.nav-scrim{display:none}.content-shell,.content-shell.calendar-shell{width:calc(100% - (var(--layout-gap) * 2));max-width:none;padding:var(--layout-gap) 0 40px;margin:0 auto}.content-shell.calendar-shell{height:calc(100dvh - var(--header-height));padding-bottom:var(--layout-gap)}.view-stack{gap:var(--layout-gap);animation:.25s ease-out view-in;display:grid}@keyframes view-in{0%{opacity:0}to{opacity:1}}.section-head{justify-content:space-between;align-items:center;gap:24px;padding:0 0 8px 10px;display:flex}.section-head>div:first-child{min-width:0}.eyebrow{color:var(--brand-active);letter-spacing:.08em;margin-bottom:8px;font-size:14px;display:block}.section-head h2{letter-spacing:-.025em;font-size:clamp(28px,2.3vw,34px);line-height:1.25}.view-title{align-items:center;gap:10px;display:inline-flex}.view-title .material-symbols-rounded{color:var(--brand);font-size:.92em}.section-head p{color:var(--text-secondary);margin-top:6px;font-size:16px}.calendar-view{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);align-items:stretch;height:100%}.calendar-toolbar{grid-template-columns:auto minmax(0,auto) minmax(0,1fr) auto auto;align-items:center;gap:12px;min-width:0;display:grid}.calendar-view-toggle{background:var(--surface-strong);border-radius:14px;grid-template-columns:repeat(2,auto);gap:4px;padding:4px;display:inline-grid}.calendar-view-toggle button{min-height:40px;color:var(--text-secondary);white-space:nowrap;background:0 0;border:0;border-radius:10px;padding:8px 13px;font-size:14px}.calendar-view-toggle button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 4px #17171917}.calendar-navigation{align-items:center;gap:8px;min-width:0;display:flex}.calendar-period{letter-spacing:-.025em;white-space:nowrap;align-items:center;gap:8px;font-size:22px;line-height:1.25;display:inline-flex}.calendar-period .material-symbols-rounded{color:var(--brand);font-size:23px}.calendar-add{justify-content:center;justify-self:end;align-items:center;display:inline-flex}.calendar-settings{position:relative}.calendar-settings>.icon-button.active{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border)}.calendar-settings-popover{z-index:30;background:var(--canvas);border:1px solid var(--border);border-radius:18px;gap:18px;width:290px;padding:16px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 48px #17171929}.settings-popover-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-popover-head strong{font-size:17px}.settings-popover-head .icon-button{flex-basis:36px;width:36px;height:36px;padding:6px}.settings-field{gap:8px;display:grid}.settings-field>span{color:var(--text-secondary);font-size:14px;font-weight:600}.settings-segmented{background:var(--surface);border-radius:12px;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;display:grid}.settings-segmented button{min-height:40px;color:var(--text-secondary);background:0 0;border:0;border-radius:9px;font-size:14px}.settings-segmented button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 4px #17171914}.settings-field select{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 11px}.settings-weekend-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.settings-weekend-toggle button{min-height:40px;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:10px;justify-content:center;align-items:center;gap:4px;padding:7px 6px;font-size:12px;font-weight:700;display:inline-flex}.settings-weekend-toggle button .material-symbols-rounded{font-size:16px}.settings-weekend-toggle button.active{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border)}.settings-shortcut-button{width:100%;min-height:42px;color:var(--brand-active);background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:8px 10px;font-size:13px;font-weight:700;display:inline-flex}.settings-shortcut-button .material-symbols-rounded{font-size:18px}.shortcut-guide-backdrop{z-index:160;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17171975;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.shortcut-guide{gap:16px;width:min(370px,100%);padding:22px;display:grid;box-shadow:0 24px 80px #17171940}.shortcut-guide-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.shortcut-guide-head .icon-box{color:var(--brand-active);background:var(--brand-soft)}.shortcut-guide h3{letter-spacing:-.035em;font-size:21px}.shortcut-guide p{color:var(--text-secondary);margin-top:5px;font-size:14px;line-height:1.55}.shortcut-guide ol{color:var(--text-secondary);gap:10px;margin:0;padding-left:21px;font-size:14px;line-height:1.55;display:grid}.shortcut-guide li::marker{color:var(--brand);font-weight:800}.shortcut-guide li strong{color:var(--ink)}.shortcut-guide .button{width:100%}.card{min-width:0;padding:var(--card-padding);background:var(--canvas);border:1px solid var(--border);border-radius:20px}.hero-grid{gap:var(--layout-gap);grid-template-columns:2fr 1fr;align-items:stretch;display:grid}.brand-hero{color:#fff;background:var(--brand);border-color:var(--brand);isolation:isolate;border-radius:24px;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;min-height:280px;padding:24px;display:grid;position:relative;overflow:hidden}.brand-hero:before{content:"";z-index:-1;border:60px solid #ffffff1a;border-radius:50%;width:300px;height:300px;position:absolute;top:-160px;right:-80px}.brand-hero:after{content:"";z-index:-1;border:42px solid #ffffff14;border-radius:50%;width:200px;height:200px;position:absolute;bottom:-135px;left:45%}.hero-copy{align-self:center}.hero-badge{min-height:34px;color:var(--brand-active);background:var(--brand-soft);border-radius:9999px;align-items:center;gap:7px;padding:6px 11px;font-size:14px;font-weight:600;display:inline-flex}.brand-hero .hero-badge{color:#fff;background:#ffffff29}.hero-badge .material-symbols-rounded{font-size:20px}.hero-copy h2{letter-spacing:-.035em;margin-top:18px;font-size:clamp(32px,3vw,44px);line-height:1.16}.hero-copy h2 em{color:#dbe8ff}.hero-copy p{color:#ffffffd1;margin-top:14px;font-size:16px}.hero-score{width:150px;color:var(--ink);background:#ffffffeb;border-radius:16px;align-self:end;padding:16px}.hero-score>span{color:var(--text-secondary);font-size:14px;display:block}.hero-score>strong{color:var(--brand-active);margin-top:4px;font-size:24px;display:block}.hero-score-bars{align-items:end;gap:5px;height:38px;margin-top:10px;display:flex}.hero-score-bars i{background:var(--brand);border-radius:3px 3px 0 0;flex:1}.hero-score-bars i:first-child{opacity:.35;height:42%}.hero-score-bars i:nth-child(2){opacity:.48;height:55%}.hero-score-bars i:nth-child(3){opacity:.62;height:62%}.hero-score-bars i:nth-child(4){opacity:.78;height:78%}.hero-score-bars i:nth-child(5){height:100%}.today-progress{flex-direction:column;min-height:280px;display:flex}.card-title-row{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.card-title-row>div:first-child{min-width:0}.card-title-row h3{font-size:20px;line-height:24px}.card-title-row p{color:var(--text-muted);margin-top:4px;font-size:14px;line-height:20px}.status-pill{min-height:32px;color:var(--brand-active);background:var(--brand-soft);white-space:nowrap;border-radius:9999px;align-items:center;padding:6px 10px;font-size:14px;font-weight:600;display:inline-flex}.progress-content{flex:1;justify-content:center;align-items:center;gap:28px;padding-top:20px;display:flex}.progress-ring{border-radius:50%;place-items:center;width:142px;height:142px;display:grid;position:relative}.progress-ring:after{content:"";background:var(--canvas);border-radius:50%;width:108px;height:108px}.progress-ring>div{z-index:1;flex-direction:column;align-items:center;display:flex;position:absolute}.progress-ring strong{font-size:28px;line-height:1}.progress-ring span{color:var(--text-muted);margin-top:6px;font-size:14px}.progress-counts{gap:12px;display:grid}.progress-counts>span{min-width:86px;color:var(--text-secondary);grid-template-columns:10px 1fr auto;align-items:center;gap:8px;font-size:14px;display:grid}.progress-counts i{background:var(--surface-strong);border-radius:50%;width:10px;height:10px}.progress-counts i.done{background:var(--brand)}.progress-counts strong{color:var(--ink);font-size:18px}.metric-grid{gap:var(--layout-gap);grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;display:grid}.metric-card{flex-direction:column;gap:16px;height:100%;display:flex}.metric-top{justify-content:space-between;align-items:center;display:flex}.icon-box{width:44px;height:44px;color:var(--brand-active);background:var(--brand-soft);border-radius:12px;flex:0 0 44px;justify-content:center;align-items:center;padding:10px;display:inline-flex}.icon-box.small{flex-basis:40px;width:40px;height:40px;padding:8px}.metric-delta{color:var(--success);align-items:center;font-size:14px;display:inline-flex}.metric-delta .material-symbols-rounded{font-size:18px}.metric-card>div:nth-child(2){justify-content:space-between;align-items:flex-end;display:flex}.metric-label{color:var(--text-secondary);font-size:16px}.metric-card>div strong{letter-spacing:-.03em;font-size:32px;line-height:1}.metric-card strong small{margin-left:2px;font-size:16px}.metric-track{background:var(--surface-strong);border-radius:9999px;height:8px;margin-top:auto;overflow:hidden}.metric-track span{border-radius:inherit;height:100%;display:block}.dashboard-grid,.report-grid{gap:var(--layout-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;display:grid}.dashboard-focus{gap:18px}.dashboard-focus .dashboard-head{justify-content:space-between;align-items:flex-end;padding-bottom:0}.dashboard-order-toggle{border-radius:13px;flex:none;min-height:42px}.dashboard-order-toggle.active{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border)}.dashboard-order-editor{border-color:var(--brand-border);background:linear-gradient(135deg,#f7faff,#fff);gap:14px;padding:18px;display:grid}.dashboard-order-editor>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.dashboard-order-editor>header>div{gap:3px;display:grid}.dashboard-order-editor>header strong{color:var(--ink);font-size:17px}.dashboard-order-editor>header small{color:var(--text-secondary);font-size:12px}.dashboard-order-editor>header>.material-symbols-rounded{color:var(--brand);font-size:25px}.dashboard-order-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.dashboard-order-list article{border:1px solid var(--border);background:#fff;border-radius:14px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;min-height:62px;padding:9px 10px;display:grid}.dashboard-order-icon{width:38px;height:38px;color:var(--brand-active);background:var(--brand-soft);border-radius:11px;place-items:center;display:grid}.dashboard-order-icon .material-symbols-rounded{font-size:20px}.dashboard-order-list article>span:nth-child(2){gap:2px;min-width:0;display:grid}.dashboard-order-list strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.dashboard-order-list small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.dashboard-order-list article>div{gap:4px;display:flex}.dashboard-order-list article>div button{width:30px;height:30px;color:var(--text-secondary);background:var(--canvas);border:1px solid var(--border);border-radius:9px;place-items:center;padding:0;display:grid}.dashboard-order-list article>div button:disabled{opacity:.28}.dashboard-order-list article>div .material-symbols-rounded{font-size:19px}.dashboard-card-stack{gap:var(--layout-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.dashboard-ordered-card{grid-column:1/-1;min-width:0}.dashboard-ordered-card.compact{grid-column:span 1;height:100%}.dashboard-ordered-card.compact>.panel{min-height:100%}.dashboard-card-collapse{display:none}.today-summary{flex-direction:column;min-height:188px;display:flex}.today-summary .progress-content{justify-content:flex-start;padding-top:14px}.dashboard-progress-list{gap:9px;margin-top:16px;display:grid}.dashboard-progress-list.by-child{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.dashboard-progress-row{background:var(--canvas);border:1px solid var(--border);border-radius:13px;gap:8px;min-width:0;padding:11px 12px;display:grid}.dashboard-progress-main{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;display:grid}.dashboard-progress-mark{border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:800;display:inline-flex}.dashboard-progress-mark .material-symbols-rounded{font-size:18px}.dashboard-progress-main>div{gap:2px;min-width:0;display:grid}.dashboard-progress-main strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.dashboard-progress-main small{color:var(--text-secondary);font-size:12px}.dashboard-progress-main small b{color:var(--ink)}.dashboard-progress-main em{color:var(--brand-active);font-size:13px;font-style:normal;font-weight:800}.dashboard-progress-track{background:var(--surface-strong);border-radius:999px;height:6px;overflow:hidden}.dashboard-progress-track i{border-radius:inherit;height:100%;transition:width .2s;display:block}.dashboard-progress-list.by-academy .dashboard-progress-row{gap:7px;min-height:92px;padding:10px}.today-dashboard-grid{gap:var(--layout-gap);grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;display:grid}.today-dashboard-grid .panel{min-height:100%}.dashboard-empty{min-height:112px;color:var(--text-muted);background:var(--surface);text-align:center;border-radius:14px;align-content:center;place-items:center;gap:8px;padding:16px;font-size:14px;display:grid}.dashboard-empty .material-symbols-rounded{color:var(--brand);font-size:26px}.panel{flex-direction:column;gap:20px;height:100%;display:flex}.text-button{min-height:44px;color:var(--brand-active);white-space:nowrap;background:0 0;border:0;align-items:center;gap:2px;padding:8px 0 8px 10px;font-size:14px;display:inline-flex}.legend{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.legend span{color:var(--text-muted);align-items:center;gap:5px;font-size:14px;display:inline-flex}.legend i{border-radius:50%;width:8px;height:8px}.legend i.blue{background:var(--brand)}.legend i.green{background:var(--success)}.legend i.purple{background:var(--purple)}.trend-chart{flex-direction:column;justify-content:flex-end;min-height:210px;display:flex}.trend-chart svg{width:100%;height:180px;overflow:visible}.chart-grid-line{stroke:var(--border);stroke-width:1px;stroke-dasharray:4 5}.chart-line{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:3px}.line-progress{stroke:var(--brand)}.line-performance{stroke:var(--success)}.line-consistency{stroke:var(--purple)}.chart-dot{stroke:var(--canvas);stroke-width:2px}.dot-progress{fill:var(--brand)}.dot-performance{fill:var(--success)}.dot-consistency{fill:var(--purple)}.chart-weeks{color:var(--text-muted);justify-content:space-between;padding:0 8px;font-size:14px;display:flex}.task-list{gap:8px;display:grid}.task-group-list{gap:18px;display:grid}.task-group{gap:8px;display:grid}.task-group h4{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.task-group h4 .material-symbols-rounded{color:var(--brand);font-size:18px}.task-group h4 em{min-width:22px;height:22px;color:var(--brand-active);background:var(--brand-soft);border-radius:999px;justify-content:center;align-items:center;margin-left:2px;font-size:11px;font-style:normal;display:inline-flex}.task-group.routine{border-top:1px solid var(--border);padding-top:14px}.task-row{text-align:left;background:0 0;border:0;border-left:4px solid #0000;border-radius:12px;grid-template-columns:36px minmax(0,1fr) 34px;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 12px;display:grid}.task-row:hover{background:var(--surface)}.task-check{color:#0000;border:1.5px solid var(--border-strong);border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.task-check .material-symbols-rounded{font-size:20px}.task-row.completed .task-check{color:#fff;background:var(--brand);border-color:var(--brand)}.task-row.completed .task-copy strong{color:var(--text-muted);text-decoration:line-through}.task-copy{flex-direction:column;min-width:0;display:flex}.task-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:21px;overflow:hidden}.task-copy small{color:var(--text-muted);font-size:14px;line-height:18px}.task-child{border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:600;display:inline-flex}.subject-list{gap:18px;display:grid}.subject-row>div:first-child{grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:8px;margin-bottom:7px;display:grid}.subject-row strong{font-size:15px}.subject-row span{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.subject-row b{font-size:14px}.subject-track{background:var(--surface-strong);border-radius:9999px;height:10px;position:relative}.subject-track>span{border-radius:inherit;height:100%;display:block}.subject-track>i{background:var(--ink);border:2px solid var(--canvas);box-sizing:content-box;border-radius:9999px;width:3px;height:16px;display:block;position:absolute;top:-3px}.plan-note{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:7px;margin-top:auto;font-size:14px;display:flex}.plan-note i{background:var(--ink);border-radius:9999px;width:3px;height:14px}.side-stack{gap:var(--layout-gap);align-content:stretch;display:grid}.timeline-stack{gap:10px;display:grid}.timeline{--timeline-center:32px;--timeline-time-width:60px;--timeline-marker-width:12px;--timeline-gap:10px;gap:10px;display:grid;position:relative}.timeline:before{content:"";z-index:0;width:2px;top:var(--timeline-center);bottom:var(--timeline-center);left:calc(var(--timeline-time-width) + var(--timeline-gap) + (var(--timeline-marker-width) / 2) - 1px);background:var(--border);position:absolute}.timeline-row{grid-template-columns:var(--timeline-time-width) var(--timeline-marker-width) minmax(0, 1fr);align-items:center;gap:var(--timeline-gap);z-index:1;min-height:64px;display:grid;position:relative}.timeline-row time{height:100%;color:var(--text-secondary);letter-spacing:-.03em;white-space:nowrap;align-items:center;font-size:12px;font-weight:600;display:flex}.timeline-line{place-self:stretch center;width:2px;height:100%;position:relative}.timeline-line:before{content:"";z-index:1;border:2px solid var(--canvas);background:currentColor;border-radius:50%;width:10px;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px}.timeline-row>div{flex-direction:column;min-width:0;display:flex}.timeline-row>.timeline-copy{border-left:4px solid;border-radius:10px;align-self:center;width:100%;padding:8px 10px}.timeline-row strong{font-size:15px}.timeline-row small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.timeline-dayoff{color:#b42318;background:#fff5f2;border:1px solid #fecdca;border-radius:12px;align-items:center;gap:10px;min-height:58px;padding:10px 12px;display:flex}.timeline-dayoff>.material-symbols-rounded{font-size:23px}.timeline-dayoff>span{gap:2px;min-width:0;display:grid}.timeline-dayoff strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.timeline-dayoff small{color:#b54708;font-size:12px}.reward-card{min-height:132px;color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border);grid-template-columns:52px minmax(0,1fr) 44px;align-items:center;gap:16px;display:grid}.reward-icon{color:#fff;background:var(--brand);border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;padding:14px;display:inline-flex}.reward-icon .material-symbols-rounded{font-size:24px}.reward-card>div:nth-child(2){flex-direction:column;min-width:0;display:flex}.reward-card span{font-size:14px}.reward-card strong{color:var(--ink);font-size:18px}.reward-card p{color:var(--text-secondary);font-size:14px}.reward-card button{width:44px;height:44px;color:var(--brand-active);background:var(--canvas);border:0;border-radius:12px;justify-content:center;align-items:center;display:inline-flex}.week-calendar{grid-column:1/-1;height:100%;min-height:0;padding:0;display:block;overflow:hidden}.week-calendar.day-calendar{touch-action:pan-y}.calendar-scroll{overscroll-behavior:contain;scrollbar-color:var(--border-strong) transparent;width:100%;height:100%;max-height:none;overflow:auto}.time-grid{grid-template-columns:72px repeat(var(--calendar-day-count,7), minmax(148px, 1fr));isolation:isolate;background:var(--canvas);grid-template-rows:94px repeat(28,44px);min-width:1160px;display:grid;position:relative}.time-grid.day-mode{grid-template-columns:72px minmax(0,1fr);min-width:100%}.time-grid.slide-next{animation:.18s ease-out calendar-slide-next}.time-grid.slide-prev{animation:.18s ease-out calendar-slide-prev}@keyframes calendar-slide-next{0%{opacity:.72;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes calendar-slide-prev{0%{opacity:.72;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.calendar-corner{z-index:14;min-width:0;color:var(--text-muted);background:var(--canvas);border-right:1px solid var(--border);border-bottom:1px solid var(--border);grid-area:1/1;justify-content:center;align-items:center;gap:5px;font-size:14px;display:flex;position:sticky;top:0;left:0}.calendar-corner .material-symbols-rounded{font-size:19px}.day-head{z-index:12;background:var(--canvas);border-right:1px solid var(--border);border-bottom:1px solid var(--border);flex-direction:column;justify-content:flex-start;align-items:stretch;min-width:0;display:flex;position:sticky;top:0}.day-head.today{background:var(--brand-soft)}.day-head.day-off{background:#fff9f7}.day-head.today.day-off{background:linear-gradient(135deg, var(--brand-soft), #fff5f2)}.day-title{justify-content:center;align-items:center;gap:6px;min-height:58px;display:flex;position:relative}.day-head.day-off .day-title{padding-bottom:18px}.day-title>span{color:var(--text-muted);font-size:14px}.day-title>strong{font-size:21px;line-height:1.1}.day-head.public-holiday .day-title>span,.day-head.public-holiday .day-title>strong{color:#c4322b}.day-title>i{min-height:22px;color:var(--brand-active);background:#fff;border-radius:9999px;align-items:center;padding:2px 6px;font-size:11px;font-style:normal;font-weight:600;display:inline-flex}.day-off-label{color:#b42318;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 12px);font-size:10px;font-style:normal;font-weight:700;line-height:15px;position:absolute;bottom:3px;left:50%;overflow:hidden;transform:translate(-50%)}.day-child-lanes{border-top:1px solid var(--border);width:100%;min-height:35px;margin-top:auto;display:grid}.day-child-lanes>span{border-left:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;justify-content:center;align-items:center;gap:4px;min-width:0;font-size:11px;font-weight:600;display:inline-flex;overflow:hidden}.day-child-lanes>span:first-child{border-left:0}.day-child-lanes b{border-radius:50%;flex:0 0 6px;width:6px;height:6px}.time-label{z-index:11;color:var(--text-secondary);background:var(--canvas);border-right:1px solid var(--border);letter-spacing:-.035em;white-space:nowrap;justify-content:flex-end;align-items:flex-start;padding:0 6px;font-size:10px;display:flex;position:sticky;left:0;transform:translateY(-8px)}.time-label.half span{color:var(--text-muted);font-size:9px}.time-end-label{z-index:11;color:var(--text-secondary);background:var(--canvas);letter-spacing:-.035em;white-space:nowrap;grid-area:29/1;justify-content:flex-end;align-self:end;padding-right:6px;font-size:10px;display:flex;position:sticky;left:0;transform:translateY(8px)}.time-slot{z-index:1;border-right:1px solid var(--border);border-bottom:1px dashed #e8e9ec}.time-slot.hour{border-top:1px solid var(--border-strong)}.time-slot.today{background:#f8fbff}.time-slot.day-off{background:#fffbfa}.time-slot.public-holiday{background:#fff7f5}.time-slot.today.day-off{background:linear-gradient(90deg,#f8fbff,#fff8f6)}.child-lane-guide{z-index:2;pointer-events:none;border-left:1px dashed #0000}.calendar-event{z-index:5;text-align:left;border:2px solid;border-radius:10px;justify-content:flex-start;align-self:stretch;align-items:flex-start;min-width:0;margin-block:3px;padding:7px 8px;display:flex;overflow:hidden;box-shadow:0 3px 10px #17171914}.calendar-event.compact-scale{border-radius:6px;min-height:18px;padding:2px 5px}.calendar-event.compact-scale strong{font-size:11px;line-height:13px}.calendar-event:hover{filter:brightness(.98);box-shadow:0 5px 14px #1717191f}.calendar-event.academy-event{border-width:1px;flex-direction:column;gap:1px}.calendar-event.academy-event.compact-scale span{display:none}.calendar-event.one-off{z-index:6;border-style:dashed;flex-direction:column;gap:1px}.calendar-event.school-lesson{z-index:4;cursor:pointer;border:0;flex-direction:column;gap:1px}.calendar-event.school-lesson:hover{filter:brightness(.98);box-shadow:0 5px 14px #1717191f}.calendar-event.school-lesson.compact-scale span{display:none}.calendar-event.school-lunch{z-index:4;cursor:pointer;box-shadow:none;border:0;flex-direction:column;gap:1px}.calendar-event.school-lunch:hover{filter:saturate(1.06);box-shadow:0 5px 13px #925e0f1f}.calendar-event.school-lunch.compact-scale span{display:none}.calendar-event-heading{align-items:center;gap:5px;width:100%;min-width:0;display:flex}.calendar-event-heading>strong{flex:auto;min-width:0}.calendar-child-bar{border-radius:9999px;flex:0 0 3px;width:3px;height:14px;display:block;box-shadow:0 0 0 1px #ffffffb8}.calendar-event.compact-scale .calendar-event-heading{gap:3px}.calendar-event.compact-scale .calendar-child-bar{flex-basis:2px;width:2px;height:11px}.school-lunch-title{align-items:center;gap:3px;display:inline-flex}.school-lunch-title .material-symbols-rounded{flex:none;font-size:14px}.calendar-event .event-child{color:#fff;text-overflow:ellipsis;white-space:nowrap;border-radius:5px;width:fit-content;max-width:100%;padding:2px 6px;font-size:11px;font-weight:600;line-height:16px;overflow:hidden}.calendar-event time{color:currentColor;opacity:.8;font-size:11px;font-weight:600}.calendar-event strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:17px;overflow:hidden}.calendar-event span{color:currentColor;opacity:.72;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:15px;overflow:hidden}.schedule-detail-backdrop{z-index:110;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17171961;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.schedule-detail{gap:16px;width:min(100%,390px);padding:22px;display:grid;box-shadow:0 24px 70px #17171933}.schedule-detail-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-detail-head .event-child{color:#fff;border-radius:8px;align-items:center;min-height:28px;padding:5px 9px;font-size:13px;font-weight:600;display:inline-flex}.schedule-detail h3{font-size:24px}.schedule-detail dl{gap:10px;margin:0;display:grid}.schedule-detail dl>div{border-top:1px solid var(--border);grid-template-columns:54px minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.schedule-detail dt{color:var(--text-muted);font-size:14px}.schedule-detail dd{margin:0;font-size:15px}.current-time-line{z-index:6;pointer-events:none;background:#e5484d;align-self:start;height:2px;position:relative}.current-time-line:before{content:"";background:#e5484d;border-radius:50%;width:9px;height:9px;position:absolute;top:-3.5px;left:-4px}.current-time-line span{color:#fff;background:#e5484d;border-radius:5px;padding:1px 5px;font-size:10px;font-weight:600;line-height:16px;position:absolute;top:-20px;left:4px}.learning-layout{gap:var(--layout-gap);grid-template-columns:minmax(280px,.7fr) minmax(0,1.5fr);align-items:stretch;display:grid}.program-panel,.program-detail{height:100%}.program-panel{flex-direction:column;gap:18px;display:flex}.program-list{gap:6px;margin:0 -8px -8px;display:grid}.program-list button{width:100%;min-height:66px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:12px;grid-template-columns:8px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:10px 8px;display:grid}.program-list button:hover{background:var(--surface)}.program-list button.active{background:var(--brand-soft)}.program-list button.active>.material-symbols-rounded{color:var(--brand-active)}.program-color{border-radius:9999px;width:8px;height:36px}.program-list button>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.program-list strong{font-size:16px}.program-list small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.program-detail{flex-direction:column;gap:24px;display:flex}.program-detail-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.detail-badges{gap:6px;margin-bottom:10px;display:flex}.detail-badges span{min-height:30px;color:var(--text-secondary);background:var(--surface);border-radius:9999px;align-items:center;padding:5px 9px;font-size:14px;font-weight:600;display:inline-flex}.program-detail-head h2{font-size:30px;line-height:1.2}.program-detail-head p{color:var(--text-secondary);margin-top:6px;font-size:15px}.program-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.program-kpis>div{background:var(--surface);border-radius:16px;flex-direction:column;padding:16px;display:flex}.program-kpis span{color:var(--text-secondary);font-size:14px}.program-kpis strong{margin-top:6px;font-size:26px}.detail-progress{gap:10px;display:grid}.detail-progress>div:last-child{color:var(--text-muted);justify-content:space-between;font-size:14px;display:flex}.template-head{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding-top:4px;display:flex}.template-head h3{margin-top:18px;font-size:18px}.template-head p{color:var(--text-muted);margin-top:3px;font-size:14px}.template-head .button{margin-top:18px}.template-list{gap:8px;display:grid}.template-list>div{background:var(--surface);border-radius:14px;grid-template-columns:40px minmax(0,1fr) 44px;align-items:center;gap:12px;min-height:64px;padding:10px 12px;display:grid}.template-list>div>div{flex-direction:column;display:flex}.template-list strong{font-size:15px}.template-list small{color:var(--text-muted);font-size:14px}.learning-accordion{height:auto}.learning-accordion-list{gap:10px;display:grid}.learning-accordion-item{background:var(--canvas);border:1px solid var(--border);border-radius:16px;transition:border-color .18s,box-shadow .18s;overflow:hidden}.learning-accordion-item.expanded{border-color:var(--program-color,var(--brand));box-shadow:0 8px 24px #1717190f}.learning-accordion-trigger{width:100%;min-height:72px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:8px minmax(0,1fr) 28px;align-items:center;gap:13px;padding:13px 15px;display:grid}.learning-accordion-trigger:hover{background:var(--surface)}.learning-accordion-trigger .program-color{height:40px}.learning-accordion-title{gap:4px;min-width:0;display:grid}.learning-accordion-title strong{font-size:17px}.learning-accordion-title small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.learning-accordion-trigger>.material-symbols-rounded{color:var(--text-muted);font-size:22px;transition:transform .18s}.learning-accordion-item.expanded .learning-accordion-trigger>.material-symbols-rounded{color:var(--brand-active);transform:rotate(90deg)}.learning-accordion-detail{border-top:1px solid var(--border);background:#fbfcff;gap:20px;height:auto;padding:20px}.learning-accordion-detail .program-detail-head h2{font-size:25px}.learning-accordion-detail .program-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.learning-accordion-detail .program-kpis>div{min-width:0;padding:13px}.learning-accordion-detail .program-kpis strong{font-size:23px}.learning-card-empty{min-height:84px;color:var(--text-muted);background:var(--surface);text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:14px;display:flex}.learning-card-empty .material-symbols-rounded{color:var(--brand);font-size:22px}.learning-schedule-add{white-space:nowrap;flex:none}.daily-task-card{height:auto}.daily-task-add{flex:none}.daily-task-list{gap:10px;display:grid}.daily-task-list article{background:var(--canvas);border:1px solid var(--border);border-radius:15px;grid-template-columns:8px minmax(0,1fr) 32px;align-items:center;gap:12px;min-height:68px;padding:12px 14px;display:grid}.daily-task-mark{border-radius:999px;width:8px;height:40px}.daily-task-list article>div{gap:3px;min-width:0;display:grid}.daily-task-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.daily-task-list small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.daily-task-list small b{font-weight:700}.daily-task-list article>.material-symbols-rounded{color:var(--brand);font-size:22px}.daily-task-editor{width:min(680px,100%)}.report-bars{gap:18px;margin-top:auto;margin-bottom:auto;display:grid}.report-bars>div{grid-template-columns:72px minmax(0,1fr) 46px;align-items:center;gap:12px;display:grid}.report-bars span,.report-bars strong{font-size:14px}.report-bars>div>div{background:var(--surface-strong);border-radius:9999px;height:10px;overflow:hidden}.report-bars i{background:var(--brand);border-radius:inherit;height:100%;display:block}.report-bars strong{text-align:right}.heatmap-labels{color:var(--text-muted);text-align:center;grid-template-columns:repeat(7,1fr);gap:7px;font-size:14px;display:grid}.heatmap{grid-template-columns:repeat(7,1fr);gap:7px;display:grid}.heatmap i,.heatmap-note i{aspect-ratio:1;background:var(--surface-strong);border-radius:7px;display:block}.heatmap i[data-level="1"],.heatmap-note i[data-level="1"]{background:#cfe0ff}.heatmap i[data-level="2"],.heatmap-note i[data-level="2"]{background:#79a6ff}.heatmap i[data-level="3"],.heatmap-note i[data-level="3"]{background:var(--brand)}.heatmap-note{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:6px;font-size:14px;display:flex}.heatmap-note i{width:14px;height:14px}.insights-list{gap:10px;display:grid}.insights-list>div{background:var(--surface);border-radius:14px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:76px;padding:12px;display:grid}.insights-list>div>.material-symbols-rounded{width:44px;height:44px;color:var(--brand-active);background:var(--brand-soft);border-radius:12px;justify-content:center;align-items:center;padding:10px;display:inline-flex}.insights-list span{flex-direction:column;display:flex}.insights-list strong{font-size:15px}.insights-list small{color:var(--text-muted);font-size:14px}.manage-grid{gap:var(--layout-gap);grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;display:grid}.manage-card{width:100%;height:100%;min-height:244px;color:var(--ink);text-align:left;flex-direction:column;gap:20px;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.manage-card:hover{border-color:var(--brand-border);transform:translateY(-2px);box-shadow:0 8px 24px #17171912}.manage-card.active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-focus)}.manage-head{justify-content:space-between;align-items:center;display:flex}.manage-card .icon-button{pointer-events:none}.manage-card>div:nth-child(2){flex-direction:column;display:flex}.manage-label{color:var(--text-secondary);font-size:14px}.manage-card>div:nth-child(2) strong{margin-top:4px;font-size:24px}.manage-card>div:nth-child(2) p{color:var(--text-muted);margin-top:6px;font-size:14px}.manage-footer{color:var(--text-secondary);border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:14px;font-size:14px;display:flex}.manage-footer span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.manage-footer .material-symbols-rounded{color:var(--brand-active)}.manage-editor{gap:22px;display:grid}.editor-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.editor-head h3{font-size:23px}.editor-head p{color:var(--text-muted);margin-top:4px;font-size:14px}.child-profile-tabs{grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:8px;display:grid;overflow:visible}.child-profile-tabs>button{min-width:0;min-height:78px;color:var(--text-secondary);background:var(--surface);text-align:center;border:1px solid #0000;border-radius:14px;grid-template-rows:38px minmax(0,1fr);align-content:center;justify-items:center;gap:6px;padding:8px 6px;display:grid;overflow:visible}.child-profile-tabs>button.active{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border)}.child-profile-tabs>button>span:last-child{justify-items:center;width:100%;min-width:0;display:grid;overflow:visible}.child-profile-tabs .child-avatar{flex-basis:38px;width:38px;height:38px}.child-profile-tabs strong{width:100%;color:inherit;text-align:center;text-overflow:clip;white-space:normal;word-break:keep-all;font-size:14px;line-height:1.2;overflow:visible}.child-profile-tabs small{display:none}.profile-editor-layout{grid-template-columns:1fr;gap:14px;display:grid}.child-profile-identity-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;grid-template-columns:86px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px;display:grid}.avatar-setting{width:78px;height:78px;color:var(--ink);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:relative}.avatar-setting:hover .child-avatar{transform:translateY(-1px);box-shadow:0 8px 20px #17171929}.avatar-setting .child-avatar.large{flex-basis:76px;width:76px;height:76px;transition:transform .16s,box-shadow .16s}.avatar-edit-badge{color:#fff;background:var(--brand);border:2px solid var(--surface);border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;display:inline-flex;position:absolute;bottom:-3px;right:-4px}.avatar-edit-badge .material-symbols-rounded{font-size:15px}.child-identity-details{gap:5px;min-width:0;display:grid}.child-identity-name{text-overflow:ellipsis;white-space:nowrap;font-size:18px;line-height:1.25;overflow:hidden}.child-identity-name-input{gap:4px;min-width:0;display:grid}.child-identity-name-input>span{color:var(--text-secondary);font-size:11px;font-weight:600}.child-identity-name-input input{width:100%;min-height:38px;color:var(--ink);background:var(--canvas);border:1px solid var(--brand);border-radius:9px;padding:7px 9px;font-size:15px;font-weight:700}.child-identity-summary{color:var(--text-secondary);align-items:center;gap:7px;font-size:13px;display:flex}.child-identity-summary i{background:var(--text-muted);border-radius:50%;flex:0 0 3px;width:3px;height:3px;display:inline-block}.child-identity-edit{min-width:54px;min-height:38px;color:var(--brand-active);background:var(--canvas);border:1px solid var(--brand-border);border-radius:10px;justify-content:center;align-items:center;padding:8px 12px;font-size:13px;display:inline-flex}.child-identity-edit.active{color:#fff;background:var(--brand);border-color:var(--brand)}.child-identity-edit-fields{grid-template-columns:minmax(126px,170px) auto;align-items:end;gap:10px;display:grid}.child-identity-edit-fields label{gap:4px;min-width:0;display:grid}.child-identity-edit-fields label>span,.child-identity-edit-fields small{color:var(--text-secondary);font-size:11px;font-weight:600}.child-identity-edit-fields input{width:100%;min-height:40px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:9px;padding:7px 9px}.child-identity-edit-fields>span{align-content:center;gap:1px;min-height:40px;padding-bottom:2px;display:grid}.child-identity-edit-fields b{color:var(--text-secondary);font-size:13px}.animal-grid{grid-template-columns:repeat(10,minmax(52px,1fr));gap:8px;display:grid}.animal-grid button{border:2px solid #0000;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:66px;padding:6px 3px;display:flex}.animal-grid button:hover{transform:translateY(-1px)}.animal-grid button.active{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand-focus)}.animal-grid button span{font-size:28px;line-height:1}.animal-grid button small{color:var(--text-secondary);font-size:10px}.manage-form-grid{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:4px;display:grid}.manage-form-grid label,.settings-row-fields label,.reward-setting label{gap:6px;min-width:0;display:grid}.manage-form-grid label>span,.settings-row-fields label>span,.reward-setting label>span{color:var(--text-secondary);font-size:13px;font-weight:600}.manage-form-grid input,.settings-row-fields input,.settings-row-fields select,.reward-setting input{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 11px;font-weight:400}.manage-form-grid input[readonly]{color:var(--text-secondary);background:var(--surface)}.settings-list{gap:10px;display:grid}.academy-settings-list{gap:8px;display:grid}.academy-setting-row{min-width:0;min-height:68px;color:var(--ink);background:var(--surface);text-align:left;border:1px solid #0000;border-radius:15px;grid-template-columns:8px minmax(0,1fr) auto 24px;align-items:center;gap:12px;padding:11px 13px;display:grid}.academy-setting-row:hover{background:var(--brand-soft);border-color:var(--brand-border)}.academy-setting-row>span:nth-child(2){min-width:0;display:grid}.academy-setting-row strong,.academy-setting-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.academy-setting-row small,.academy-row-meta{color:var(--text-muted);font-size:12px}.academy-setting-row>.material-symbols-rounded{color:var(--brand-active);font-size:20px}.settings-row{background:var(--surface);border-radius:16px;grid-template-columns:8px minmax(0,1fr) 44px;align-items:center;gap:12px;min-width:0;padding:14px;display:grid}.settings-row.cost-row{grid-template-columns:minmax(0,1fr) 44px}.settings-row-fields{grid-template-columns:.65fr 1fr 1fr .8fr .8fr 1fr;gap:10px;min-width:0;display:grid}.settings-row-fields .wide{grid-column:span 2}.icon-button.danger{color:#b42318;background:#fff3f2;border-color:#fecaca}.cost-summary{min-height:76px;color:var(--brand-active);background:var(--brand-soft);border-radius:16px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.cost-summary strong{color:var(--ink);font-size:26px}.editor-actions{justify-content:flex-end;display:flex}.child-editor-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:2px;display:grid}.add-child-button{width:100%}.add-child-button:disabled{color:var(--text-muted);background:var(--surface);border-color:var(--border);cursor:not-allowed}.save-child-button{justify-content:center;width:100%;min-width:0}.character-picker-backdrop{z-index:120;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1717196b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.character-picker-modal{gap:18px;width:min(720px,100%);max-height:min(84vh,760px);padding:20px;display:grid;overflow-y:auto;box-shadow:0 26px 80px #17171938}.character-picker-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.character-picker-head h3{font-size:22px}.character-picker-modal .animal-grid{grid-template-columns:repeat(5,minmax(52px,1fr))}.profile-photo-upload{width:100%;min-height:68px;color:var(--ink);background:var(--brand-soft);border:1px solid var(--brand-border);text-align:left;border-radius:15px;grid-template-columns:44px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:11px 13px;display:grid}.profile-photo-upload>span:nth-child(2){gap:3px;min-width:0;display:grid}.profile-photo-upload strong{font-size:15px}.profile-photo-upload small{color:var(--text-muted);font-size:12px}.profile-photo-upload>.material-symbols-rounded{color:var(--brand-active);font-size:21px}.reward-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.reward-setting{background:var(--surface);border:1px solid var(--border);opacity:.62;border-radius:16px;gap:14px;padding:16px;display:grid}.reward-setting.active{background:var(--canvas);border-color:var(--brand-border);opacity:1}.reward-setting-head{align-items:center;gap:10px;display:flex}.reward-setting-head .toggle-button{background:var(--border-strong);border:0;border-radius:9999px;width:42px;height:24px;margin-left:auto;padding:3px}.reward-setting-head .toggle-button span{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .18s;display:block}.reward-setting-head .toggle-button.active{background:var(--brand)}.reward-setting-head .toggle-button.active span{transform:translate(18px)}.data-note{background:var(--brand-soft);border-color:var(--brand-border);grid-template-columns:44px minmax(0,1fr);align-items:center;gap:16px;display:grid}.data-note strong{font-size:16px}.data-note p{color:var(--text-secondary);margin-top:4px;font-size:14px}.data-note.demo-data-note{background:#fff8e6;border-color:#efd58b}.demo-family-panel{gap:18px;display:grid}.demo-family-list{gap:9px;display:grid}.demo-family-list article{background:var(--canvas);border:1px solid var(--border);border-radius:14px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:64px;padding:12px 14px;display:grid}.demo-family-list article>.material-symbols-rounded{width:38px;height:38px;color:var(--brand);background:var(--brand-soft);border-radius:12px;place-items:center;display:inline-grid}.demo-family-list article>span{gap:3px;display:grid}.demo-family-list article strong{font-size:14px}.demo-family-list article small{color:var(--text-muted);font-size:12px}.demo-family-list article em{color:#5f450e;background:#fff3cd;border-radius:999px;padding:5px 9px;font-size:11px;font-style:normal;font-weight:700}.demo-family-help{color:var(--text-secondary);background:var(--surface);border-radius:12px;align-items:center;gap:7px;padding:11px 13px;font-size:13px;display:flex}.demo-family-help .material-symbols-rounded{color:var(--brand);font-size:19px}.backup-note{background:#fff;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.backup-note strong{font-size:16px}.backup-note p{color:var(--text-secondary);margin-top:4px;font-size:14px;line-height:1.5}.backup-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.backup-note .button{white-space:nowrap;min-height:42px;padding-inline:14px}.admin-members-note{color:var(--ink);border-color:var(--brand-border);background:linear-gradient(110deg,#f4f8ff,#fff);grid-template-columns:44px minmax(0,1fr) 32px;align-items:center;gap:16px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.admin-members-note:hover{border-color:var(--brand);transform:translateY(-1px);box-shadow:0 8px 22px #0d3d7d1f}.admin-members-note strong{font-size:16px}.admin-members-note p{color:var(--text-secondary);margin-top:4px;font-size:14px;line-height:1.5}.admin-members-arrow{width:32px;height:32px;color:var(--brand-active);border:1px solid var(--brand-border);background:#fff;border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.admin-members-arrow .material-symbols-rounded{font-size:19px}.empty-family-children{min-height:150px;color:var(--ink);background:var(--surface);border:1px dashed var(--brand-border);border-radius:16px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;display:grid}.empty-family-children>div{gap:4px;display:grid}.empty-family-children p{color:var(--text-secondary);font-size:14px}.invite-create-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.invite-create-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;grid-template-columns:44px minmax(0,1fr);gap:13px;padding:18px;display:grid}.invite-create-card>div{align-content:start;gap:4px;display:grid}.invite-create-card h4,.invite-list-head h4{font-size:17px}.invite-create-card p{color:var(--text-secondary);font-size:14px;line-height:1.55}.invite-create-card label{grid-column:1/-1;gap:6px;display:grid}.invite-create-card label>span{color:var(--text-secondary);font-size:13px;font-weight:600}.invite-create-card input,.invite-create-card select,.invite-link-row input{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 11px}.invite-create-card .button{grid-column:1/-1;width:100%}.invite-new-link{color:#fff;background:var(--brand);border-radius:18px;gap:15px;padding:18px;display:grid}.invite-new-link>div:first-child{gap:4px;display:grid}.invite-new-link .access-kicker{color:#dbe8ff}.invite-new-link strong{font-size:19px}.invite-new-link p{color:#ffffffd1;font-size:14px}.invite-link-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.invite-link-row input{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.invite-link-row .button{background:#fff}.invite-list-section{gap:12px;display:grid}.invite-list-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.invite-list-head>span{color:var(--text-muted);text-align:right;font-size:13px}.invite-list{gap:8px;display:grid}.invite-row{background:var(--surface);border:1px solid var(--border);border-radius:15px;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;display:grid}.invite-row.inactive{opacity:.62}.invite-row>div{gap:3px;min-width:0;display:grid}.invite-row strong,.invite-row small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invite-row small{color:var(--text-muted);font-size:13px}.invite-status{min-height:29px;color:var(--success);white-space:nowrap;background:#e7f7ed;border-radius:999px;justify-content:center;align-items:center;padding:5px 9px;font-size:12px;font-weight:600;display:inline-flex}.invite-status.muted{color:var(--text-secondary);background:var(--surface-strong)}.invite-revoke{min-height:36px;padding:7px 10px;font-size:13px}.invite-revoke .material-symbols-rounded{font-size:18px}.invite-empty{min-height:92px;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);text-align:center;border-radius:15px;place-items:center;padding:16px;font-size:14px;display:grid}.child-link-shell{background:linear-gradient(160deg, var(--surface), #f4f8ff);min-height:100dvh}.child-link-header{min-height:var(--header-height);border-bottom:1px solid var(--border);background:#fffffff0;align-items:center;gap:12px;padding:8px max(20px,50vw - 620px);display:flex}.child-link-header>span{color:var(--text-secondary);align-items:center;gap:6px;margin-left:auto;font-size:14px;display:inline-flex}.child-link-header>span .material-symbols-rounded{color:var(--brand-active);font-size:18px}.child-link-header .button{min-height:40px}.child-link-content{width:min(100% - 40px,1240px);margin:0 auto;padding:26px 0 48px}.entry-error{z-index:200;color:#b42318;background:#fff1f0;border:1px solid #fecaca;border-radius:13px;max-width:min(420px,100% - 40px);padding:13px 16px;font-size:14px;position:fixed;bottom:20px;right:20px;box-shadow:0 10px 28px #1717191f}.child-hero{background:linear-gradient(135deg, #fff 35%, var(--brand-soft));border-radius:24px;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:32px;min-height:260px;padding:24px;display:grid}.child-hero h2{letter-spacing:-.035em;margin-top:16px;font-size:clamp(32px,3vw,44px);line-height:1.17}.child-hero p{color:var(--text-secondary);margin-top:12px;font-size:16px}.child-progress{border:1px solid var(--brand-border);background:#ffffffd1;border-radius:20px;flex-direction:column;padding:20px;display:flex}.child-progress strong{font-size:46px;line-height:1}.child-progress strong small{color:var(--text-muted);font-size:22px}.child-progress>span{color:var(--text-secondary);margin-top:6px;font-size:14px}.child-progress>div{background:var(--surface-strong);border-radius:9999px;height:10px;margin-top:18px;overflow:hidden}.child-progress i{border-radius:inherit;height:100%;display:block}.child-columns{gap:var(--layout-gap);grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);align-items:start;display:grid}.child-task-stack{gap:var(--layout-gap);display:grid}.child-priority-card{border-color:var(--brand-border)}.big-task-list{gap:10px;display:grid}.big-task-list button{background:var(--surface);text-align:left;border:1px solid #0000;border-radius:16px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;min-height:72px;padding:12px;display:grid}.big-task-list button:hover{border-color:var(--brand-border)}.big-task-list button>span{color:#0000;background:var(--canvas);border:1px solid var(--border-strong);border-radius:13px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.big-task-list button.completed>span{color:#fff;background:var(--brand);border-color:var(--brand)}.big-task-list button.completed strong{color:var(--text-muted);text-decoration:line-through}.big-task-list button>div{flex-direction:column;display:flex}.big-task-list strong{font-size:17px}.big-task-list small{color:var(--text-muted);font-size:14px}.big-task-list.compact button{min-height:66px}.child-empty{min-height:96px;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}.child-empty .material-symbols-rounded{color:var(--brand);font-size:28px}.child-day-title{align-items:flex-end}.child-day-title>p{color:var(--text-secondary);margin-left:auto;font-size:14px}.child-day-heading{align-items:center;gap:12px;min-width:0;display:flex}.child-day-heading h2{letter-spacing:-.025em;font-size:clamp(28px,2.3vw,34px);line-height:1.25}.child-day-avatar-button{background:0 0;border:0;border-radius:50%;flex:0 0 58px;place-items:center;width:58px;height:58px;padding:0;display:grid;position:relative}.child-day-avatar-button .child-avatar.large{flex-basis:54px;width:54px;height:54px;font-size:31px;transition:transform .16s,box-shadow .16s}.child-day-avatar-button:hover .child-avatar{transform:translateY(-1px);box-shadow:0 8px 20px #17171929}.child-day-avatar-edit{color:#fff;background:var(--brand);border:2px solid var(--canvas);border-radius:50%;place-items:center;width:21px;height:21px;display:grid;position:absolute;bottom:0;right:0}.child-day-avatar-edit .material-symbols-rounded{font-size:12px}.child-card-title-row{justify-content:flex-start}.child-card-title-row>div{flex:auto;min-width:0}.child-card-icon{color:#fff;border-radius:14px;flex:0 0 44px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 7px 16px #1717191f}.child-card-icon .material-symbols-rounded{color:inherit;font-size:23px}.child-card-heading{align-items:center;gap:10px;min-width:0;display:flex}.child-card-heading>div{min-width:0}.child-today-summary{background:linear-gradient(135deg, #fff 40%, var(--brand-soft));border-radius:24px;grid-template-columns:minmax(0,1fr) 250px;align-items:center;gap:28px;min-height:190px;padding:24px;display:grid}.child-today-summary h2{letter-spacing:-.035em;margin-top:12px;font-size:32px}.child-today-summary p{color:var(--text-secondary);margin-top:7px}.child-day-grid{gap:var(--layout-gap);grid-template-columns:minmax(270px,.86fr) minmax(350px,1.14fr);align-items:start;display:grid}.child-schedule-list{gap:8px;display:grid}.child-schedule-row{border-bottom:1px solid var(--border);grid-template-columns:48px 5px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:70px;padding:10px 0;display:grid}.child-schedule-row:last-child{border-bottom:0}.child-schedule-row.active{background:var(--brand-soft);border-bottom-color:#0000;border-radius:14px;margin-inline:-9px;padding-inline:9px}.child-schedule-row time{color:var(--text-secondary);font-size:13px;font-weight:700}.child-schedule-row i{border-radius:999px;width:5px;height:36px;display:block}.child-schedule-row strong{font-size:16px;display:block}.child-schedule-row small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:13px;display:block;overflow:hidden}.child-schedule-row>span{color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);white-space:nowrap;border-radius:999px;padding:5px 7px;font-size:11px;font-weight:700}.child-schedule-row.active>span{color:var(--brand-active);border-color:var(--brand-border);background:#fff}.journal-launch{text-align:left;border-color:var(--brand-border);background:linear-gradient(135deg,#f9fbff,#fff);grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:15px;width:100%;min-height:106px;padding:18px 20px;display:grid}.journal-launch:hover{border-color:var(--brand);transform:translateY(-1px)}.journal-launch-emoji{background:var(--brand-soft);border-radius:18px;justify-content:center;align-items:center;width:58px;height:58px;font-size:30px;display:inline-flex}.journal-launch>span:nth-child(2){gap:5px;display:grid}.journal-launch strong{color:var(--ink);font-size:19px}.journal-launch small{color:var(--text-secondary);font-size:14px}.journal-launch>.material-symbols-rounded{color:var(--brand);font-size:28px}.journal-sheet-backdrop{z-index:180;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17171980;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.journal-sheet{border-radius:26px;gap:20px;width:min(680px,100%);max-height:min(840px,100dvh - 40px);padding:24px;display:grid;overflow-y:auto;box-shadow:0 28px 80px #1717194d}.journal-sheet>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.journal-sheet h2{letter-spacing:-.035em;margin-top:12px;font-size:28px}.journal-sheet header p{color:var(--text-secondary);margin-top:6px;font-size:14px}.journal-section{gap:10px;display:grid}.journal-section>strong,.journal-note>span{color:var(--ink);font-size:15px;font-weight:700}.journal-section-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.journal-section-head small{color:var(--text-muted);font-size:12px}.emotion-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.emotion-grid button{background:var(--surface);border:1px solid var(--border);border-radius:16px;place-items:center;gap:4px;min-height:78px;padding:8px 4px;display:grid}.emotion-grid button:hover,.emotion-grid button.active{border-color:var(--brand);background:var(--brand-soft)}.emotion-grid button span{font-size:28px}.emotion-grid button small{color:var(--text-secondary);font-size:11px;font-weight:700}.journal-note{gap:8px;display:grid}.journal-note textarea,.journal-activity-add input{width:100%;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:14px}.journal-note textarea{resize:vertical;min-height:108px;padding:12px;line-height:1.55}.journal-note textarea:focus,.journal-activity-add input:focus{border-color:var(--brand);outline:0}.journal-activity-add{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.journal-activity-add input{min-height:46px;padding:10px 12px}.journal-tags,.portfolio-tags{flex-wrap:wrap;gap:7px;display:flex}.journal-tags button,.portfolio-tags span{min-height:32px;color:var(--brand-active);background:var(--brand-soft);border:0;border-radius:999px;align-items:center;gap:4px;padding:6px 9px;font-size:13px;display:inline-flex}.journal-tags .material-symbols-rounded{font-size:16px}.journal-media-actions{flex-wrap:wrap;gap:8px;display:flex}.journal-media-actions .button{min-height:44px}.journal-uploading{color:var(--brand-active);font-size:13px}.journal-attachments{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.journal-attachments article{background:var(--surface);border:1px solid var(--border);border-radius:14px;min-height:96px;position:relative;overflow:hidden}.journal-attachments img{object-fit:cover;width:100%;height:112px;display:block}.journal-attachments audio{width:100%;margin-top:30px}.journal-attachments .icon-button{color:#fff;background:#171719a8;border-color:#0000;width:28px;height:28px;position:absolute;top:6px;right:6px}.journal-sheet>footer{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.journal-error{color:#b42318;background:#fff1f0;border:1px solid #fecaca;border-radius:12px;padding:10px 12px;font-size:13px}.portfolio-view .section-head{align-items:flex-end}.portfolio-view .report-section-head{text-align:left;justify-content:flex-start;align-items:flex-start}.portfolio-view .report-section-head .view-title{text-align:left;justify-content:flex-start;width:100%}.portfolio-view .section-head>p{color:var(--text-secondary);margin-left:auto;font-size:14px}.portfolio-overview{background:linear-gradient(135deg,#fff 35%,#f0f6ff);grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:24px;min-height:210px;padding:28px;display:grid}.portfolio-overview h2{letter-spacing:-.04em;margin-top:13px;font-size:32px;line-height:1.18}.portfolio-overview p{color:var(--text-secondary);margin-top:10px}.portfolio-count{min-height:136px;color:var(--brand-active);border:1px solid var(--brand-border);background:#fffc;border-radius:22px;place-items:center;display:grid}.portfolio-count strong{font-size:46px;line-height:1}.portfolio-count span{color:var(--text-secondary);font-size:13px}.portfolio-folder-grid{gap:var(--layout-gap);grid-template-columns:minmax(0,1fr);display:grid}.portfolio-folder{border-top:4px solid var(--brand);gap:18px;padding-top:20px;display:grid}.portfolio-folder>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.portfolio-child{align-items:center;gap:10px;display:flex}.portfolio-child>div{gap:2px;display:grid}.portfolio-child span{color:var(--text-muted);font-size:12px}.portfolio-child h3{font-size:18px}.portfolio-entry-list{gap:8px;display:grid}.portfolio-entry{border-top:1px solid var(--border);grid-template-columns:52px minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.portfolio-entry-date{color:var(--text-secondary);align-content:start;gap:5px;font-size:13px;display:grid}.portfolio-entry-date span{font-size:22px}.portfolio-entry-body{gap:5px;display:grid}.portfolio-entry-body>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.portfolio-entry-body strong{font-size:15px}.portfolio-entry-body small{color:var(--text-muted);white-space:nowrap;font-size:12px}.portfolio-entry-body p{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.portfolio-media{align-items:center;gap:6px;display:flex}.portfolio-media img{object-fit:cover;border-radius:10px;width:44px;height:44px}.portfolio-audio{color:var(--brand-active);background:var(--brand-soft);border-radius:9px;align-items:center;gap:3px;padding:5px 7px;font-size:11px;display:inline-flex}.portfolio-audio .material-symbols-rounded{font-size:15px}.portfolio-empty{min-height:180px;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);text-align:center;border-radius:16px;place-items:center;gap:8px;font-size:13px;display:grid}.portfolio-empty .material-symbols-rounded{color:var(--brand);font-size:28px}.portfolio-entry{border-top:1px solid var(--border);padding:0;display:block;overflow:hidden}.portfolio-entry-summary{width:100%;min-height:62px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:52px 40px minmax(0,1fr) auto 24px;align-items:center;gap:8px;padding:9px 4px;display:grid}.portfolio-entry-summary:hover,.portfolio-entry.expanded .portfolio-entry-summary{background:var(--brand-soft)}.portfolio-entry-summary time{color:var(--text-secondary);text-align:center;font-size:13px;font-weight:700}.portfolio-entry-emotion{text-align:center;font-size:24px}.portfolio-entry-summary strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;overflow:hidden}.portfolio-entry-summary small{color:var(--text-muted);white-space:nowrap;font-size:12px}.portfolio-entry-summary>.material-symbols-rounded{color:var(--text-muted);font-size:20px}.portfolio-entry-detail{background:linear-gradient(180deg, var(--brand-soft), #fff 80px);border-top:1px solid var(--brand-border);gap:12px;padding:14px 14px 16px 100px;display:grid}.portfolio-entry-detail>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65}.journal-comments{border-top:1px solid var(--border);gap:10px;margin-top:4px;padding-top:14px;display:grid}.journal-comments-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.journal-comments-head strong{font-size:14px}.journal-comments-head span{color:var(--text-muted);font-size:12px}.journal-comments-state{color:var(--text-muted);text-align:center;background:#ffffffb8;border-radius:11px;padding:10px 12px;font-size:12px}.journal-comment-list{gap:8px;display:grid}.journal-comment{background:var(--canvas);border:1px solid var(--border);border-radius:13px;gap:7px;padding:11px 12px;display:grid}.journal-comment>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.journal-comment>header>div:first-child{align-items:baseline;gap:7px;display:flex}.journal-comment>header strong{font-size:13px}.journal-comment time{color:var(--text-muted);font-size:11px}.journal-comment>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.55}.journal-comment-actions{align-items:center;gap:4px;display:flex}.journal-comment-actions button{color:var(--text-secondary);background:0 0;border:0;padding:3px 5px;font-size:11px}.journal-comment-actions button.danger-text{color:#b42318}.journal-comment-form,.journal-comment-edit{gap:7px;display:grid}.journal-comment-form textarea,.journal-comment-edit textarea{width:100%;min-height:64px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);resize:vertical;border-radius:12px;padding:10px 11px;line-height:1.5}.journal-comment-form textarea:focus,.journal-comment-edit textarea:focus{border-color:var(--brand);outline:0}.journal-comment-form .button{justify-self:end;min-height:38px;padding:7px 12px;font-size:12px}.journal-comment-form .material-symbols-rounded{font-size:17px}.journal-comment-edit>div{justify-content:flex-end;gap:6px;display:flex}.button.compact{min-height:34px;padding:6px 10px;font-size:12px}.journal-comments-error{color:#b42318;background:#fff1f0;border-radius:10px;padding:8px 10px;font-size:12px}.next-list{gap:10px;display:grid}.next-list>div{background:var(--surface);border-radius:14px;grid-template-columns:58px minmax(0,1fr);gap:12px;padding:12px;display:grid}.next-list time{color:var(--brand-active);font-size:14px;font-weight:600}.next-list span{flex-direction:column;display:flex}.next-list strong{font-size:15px}.next-list small{color:var(--text-muted);font-size:14px}.academy-editor-backdrop{z-index:130;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1717197a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.academy-editor{border-radius:24px;gap:18px;width:min(760px,100%);max-height:min(92dvh,900px);padding:22px;display:grid;overflow-y:auto;box-shadow:0 26px 90px #1717193d}.academy-editor-head,.academy-section-title,.academy-editor-actions{align-items:center;gap:12px;display:flex}.academy-editor-head{justify-content:space-between}.academy-editor-head>div{gap:2px;display:grid}.academy-editor-head>div>span{color:var(--brand-active);font-size:12px;font-weight:600}.academy-editor-head h2{font-size:26px}.schedule-add-tabs{background:var(--surface);border-radius:13px;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;padding:4px;display:grid}.schedule-add-tabs button{min-height:42px;color:var(--text-secondary);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:14px;font-weight:700;display:inline-flex}.schedule-add-tabs button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 4px #17171914}.schedule-add-tabs .material-symbols-rounded{font-size:18px}.academy-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.academy-form-grid.academy-basics-grid{grid-template-columns:minmax(104px,.72fr) minmax(172px,1.55fr) minmax(96px,.68fr)}.academy-form-grid.routine-basics-grid{grid-template-columns:minmax(120px,.7fr) minmax(0,1.35fr) minmax(120px,.85fr)}.academy-form-grid.one-off-event-basics{grid-template-columns:minmax(140px,.7fr) minmax(0,1.3fr)}.one-off-event-datetime{grid-template-columns:minmax(150px,1.15fr) repeat(2,minmax(130px,1fr));gap:10px;display:grid}.one-off-event-datetime label,.one-off-event-details label{gap:6px;min-width:0;display:grid}.one-off-event-datetime label>span,.one-off-event-details label>span{color:var(--text-secondary);font-size:12px;font-weight:600}.one-off-event-datetime input,.one-off-event-datetime select,.one-off-event-details input,.one-off-event-details textarea{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 11px}.one-off-event-details{gap:10px;display:grid}.one-off-event-details textarea{resize:vertical;min-height:82px;line-height:1.5}.schedule-datetime-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.schedule-datetime-fields label{gap:6px;min-width:0;display:grid}.schedule-datetime-fields label>span{color:var(--text-secondary);font-size:12px;font-weight:600}.schedule-datetime-fields input[type=date]{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 10px;font-weight:400}.schedule-subject-row{grid-template-columns:minmax(180px,1fr) 3fr;gap:10px;display:grid}.schedule-subject-row label{gap:6px;display:grid}.schedule-subject-row label>span{color:var(--text-secondary);font-size:12px;font-weight:600}.mixiv-select{width:100%;min-width:0;position:relative}.mixiv-select-trigger{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);text-align:left;border-radius:11px;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px 9px 12px;font-size:14px;font-weight:500;transition:border-color .16s,box-shadow .16s,background .16s;display:flex}.mixiv-select-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mixiv-select-trigger>.material-symbols-rounded{color:var(--text-muted);flex:none;font-size:20px;transition:transform .18s}.mixiv-select-trigger.open{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.mixiv-select-trigger.open>.material-symbols-rounded{transform:rotate(180deg)}.mixiv-select-trigger.placeholder{color:var(--text-muted)}.mixiv-select-trigger:disabled{cursor:not-allowed;opacity:.58}.mixiv-select-popover{z-index:410;overscroll-behavior:contain;max-height:min(280px,48dvh);color:var(--ink);background:var(--canvas);border:1px solid var(--border);border-radius:14px;padding:6px;overflow-y:auto;box-shadow:0 18px 52px #1717192e,0 3px 10px #17171914}.mixiv-select-popover:before,.clock-picker-popover:before{content:"";background:var(--canvas);border-top:1px solid var(--border);border-left:1px solid var(--border);width:11px;height:11px;position:absolute;top:-6px;left:22px;transform:rotate(45deg)}.mixiv-select-popover[data-placement=above]:before,.clock-picker-popover[data-placement=above]:before{border:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);top:auto;bottom:-6px}.mixiv-select-option{width:100%;min-height:40px;color:var(--text-secondary);text-align:left;background:0 0;border:0;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:13px;font-weight:600;display:flex}.mixiv-select-option:hover{color:var(--ink);background:var(--surface)}.mixiv-select-option.selected{color:var(--brand-active);background:var(--brand-soft)}.mixiv-select-option .material-symbols-rounded{width:18px;color:var(--brand);font-size:18px}.mixiv-select-option:disabled{opacity:.5;cursor:not-allowed}.clock-time-picker{width:100%;min-width:0}.schedule-time-select{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);font-variant-numeric:tabular-nums;letter-spacing:-.02em;text-align:left;border-radius:11px;align-items:center;gap:7px;padding:9px 9px 9px 11px;font-size:14px;font-weight:500;transition:border-color .16s,box-shadow .16s;display:flex}.schedule-time-select>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.schedule-time-select>.material-symbols-rounded{color:var(--text-muted);flex:none;font-size:18px}.schedule-time-select>.material-symbols-rounded:last-child{transition:transform .18s}.schedule-time-select.open{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.schedule-time-select.open>.material-symbols-rounded:last-child{transform:rotate(180deg)}.schedule-time-select.placeholder{color:var(--text-muted)}.clock-picker-popover{z-index:420;overscroll-behavior:contain;color:var(--ink);background:var(--canvas);border:1px solid var(--border);border-radius:18px;gap:11px;padding:15px;display:grid;overflow-y:auto;box-shadow:0 22px 62px #17171933,0 3px 10px #17171914}.clock-picker-head{color:var(--brand-active);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:7px;display:flex}.clock-picker-head span{background:var(--brand-soft);text-align:center;border-radius:10px;min-width:54px;padding:7px 8px;font-size:24px;font-weight:800}.clock-picker-head b{font-size:21px}.clock-period-toggle{background:var(--surface);border-radius:10px;grid-template-columns:1fr 1fr;gap:5px;padding:3px;display:grid}.clock-period-toggle button{min-height:34px;color:var(--text-muted);background:0 0;border:0;border-radius:8px;font-size:12px;font-weight:800}.clock-period-toggle button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 4px #1717191a}.clock-face{background:var(--surface);border:1px solid var(--border);border-radius:50%;flex:0 0 190px;justify-self:center;width:190px;height:190px;position:relative}.clock-face button{width:30px;height:30px;color:var(--text-secondary);background:0 0;border:0;border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid;position:absolute;transform:translate(-50%,-50%)}.clock-face button:hover{color:var(--brand-active);background:var(--brand-soft)}.clock-face button.active{color:#fff;background:var(--brand);box-shadow:0 4px 10px #216de947}.clock-face-center{background:var(--brand);border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.clock-minute-select{grid-template-columns:auto 1fr 1fr;align-items:center;gap:6px;display:grid}.clock-minute-select>span{color:var(--text-muted);font-size:12px;font-weight:700}.clock-minute-select button{min-height:36px;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:9px;font-size:13px;font-weight:800}.clock-minute-select button.active{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border)}.clock-confirm{color:#fff;background:var(--brand);border:0;border-radius:10px;flex:none;min-height:40px;font-size:13px;font-weight:800}.clock-confirm:disabled{color:var(--text-muted);background:var(--surface-strong);cursor:not-allowed}.clock-minute-select{grid-template-columns:auto 38px minmax(0,1fr) 38px}.clock-minute-select button{place-items:center;min-height:40px;padding:0;display:grid}.clock-minute-select button .material-symbols-rounded{font-size:18px}.clock-minute-select input{width:100%;min-height:40px;color:var(--brand-active);background:var(--canvas);border:1px solid var(--brand-border);font-variant-numeric:tabular-nums;text-align:center;border-radius:9px;outline:0;padding:7px 9px;font-size:17px;font-weight:800}.clock-minute-select input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.clock-minute-quick{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;display:grid}.clock-minute-quick button{min-width:0;min-height:30px;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px 2px;font-size:10px;font-weight:800}.clock-minute-quick button.active{color:#fff;background:var(--brand);border-color:var(--brand)}.clock-picker-popover{gap:13px;padding:14px;overflow:visible}.clock-direct-inputs{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:8px;display:grid}.clock-direct-inputs label{gap:6px;min-width:0;display:grid}.clock-direct-inputs label>span{color:var(--text-secondary);font-size:12px;font-weight:800}.clock-direct-inputs input{width:100%;min-width:0;min-height:58px;color:var(--brand-active);background:var(--canvas);border:1px solid var(--border);font:inherit;font-variant-numeric:tabular-nums;text-align:center;border-radius:12px;outline:0;padding:8px;font-size:23px;font-weight:800}.clock-direct-inputs input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.clock-direct-inputs input::placeholder{color:var(--text-muted);font-size:15px;font-weight:700}.clock-direct-inputs>b{color:var(--text-muted);padding-bottom:15px;font-size:21px}.academy-form-grid label,.time-pair label,.repeat-date-range label,.academy-location,.schedule-default-row label,.transport-time-row label{gap:6px;min-width:0;display:grid}.academy-form-grid label>span,.time-pair label>span,.repeat-date-range label>span,.academy-location>span,.schedule-default-row label>span,.transport-time-row label>span{color:var(--text-secondary);font-size:12px;font-weight:600}.academy-form-grid .full{grid-column:1/-1}.academy-form-grid input,.academy-form-grid select,.academy-form-grid textarea,.time-pair input,.day-time-list input,.day-time-list select,.repeat-date-range input,.academy-location input,.assignment-editor-row input,.assignment-editor-row select,.schedule-default-row input,.schedule-default-row select,.transport-time-row input{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 11px;font-weight:400}.academy-form-grid textarea{resize:vertical;min-height:82px}.academy-form-section{background:var(--surface);border-radius:16px;gap:12px;padding:15px;display:grid}.routine-frequency-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.routine-frequency-tabs button{min-height:42px;color:var(--text-secondary);background:var(--canvas);border:1px solid var(--border);border-radius:11px;justify-content:center;align-items:center;gap:6px;padding:8px;font-size:14px;font-weight:700;display:inline-flex}.routine-frequency-tabs button.active{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border)}.routine-frequency-tabs .material-symbols-rounded{font-size:18px}.routine-weekdays{margin-top:2px}.routine-check-help{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;line-height:1.45;display:flex}.routine-check-help .material-symbols-rounded{color:var(--brand);font-size:18px}.routine-form-error{color:#b42318;background:#fff1f0;border:1px solid #fecaca;border-radius:11px;align-items:center;gap:7px;margin:0;padding:10px 12px;font-size:13px;font-weight:700;display:flex}.routine-form-error .material-symbols-rounded{flex:none;font-size:18px}.academy-section-title{justify-content:space-between}.academy-section-title>strong{font-size:15px}.inline-check,.switch-label{color:var(--text-secondary);align-items:center;gap:7px;font-size:13px;display:inline-flex}.inline-check input{width:17px;height:17px;accent-color:var(--brand)}.weekday-checklist{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.weekday-checklist button{min-width:0;height:39px;color:var(--text-secondary);background:var(--canvas);border:1px solid var(--border);border-radius:10px;padding:7px;font-size:13px}.weekday-checklist button.active{color:#fff;background:var(--brand);border-color:var(--brand)}.time-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.schedule-default-row{grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,1fr));gap:10px;display:grid}.day-time-list{gap:7px;display:grid}.day-time-list>div{grid-template-columns:28px minmax(0,1fr) 12px minmax(0,1fr);align-items:center;gap:7px;display:grid}.subject-day-list>div{grid-template-columns:28px minmax(130px,1.1fr) minmax(110px,1fr) 12px minmax(110px,1fr)}.day-time-list strong{color:var(--brand-active);text-align:center;font-size:13px}.day-time-list span{color:var(--text-muted);text-align:center}.repeat-date-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.subjects-section{border:1px solid var(--border);background:0 0;padding:0;overflow:hidden}.subjects-section>.academy-section-title{padding:14px 15px 2px}.academy-section-note{color:var(--text-muted);font-size:12px}.subject-editor-list{gap:10px;padding:10px;display:grid}.subject-editor-card{background:var(--surface);border-radius:14px;gap:12px;padding:14px;display:grid}.subject-editor-head,.assignment-subhead{justify-content:space-between;align-items:center;gap:10px;display:flex}.subject-editor-head>strong,.assignment-subhead>strong{font-size:13px}.subject-schedule-editor{background:var(--canvas);border:1px solid var(--border);border-radius:13px;gap:9px;padding:11px;display:grid}.subject-schedule-editor .assignment-subhead small{color:var(--text-muted);font-size:10px}.subject-weekdays button{height:34px;font-size:11px}.subject-time-pair label{gap:5px;min-width:0;display:grid}.subject-time-pair label>span{color:var(--text-secondary);font-size:11px;font-weight:700}.subject-day-name{min-width:0;color:var(--brand-active);background:var(--brand-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;padding:6px 8px;font-size:11px;font-style:normal;font-weight:700;overflow:hidden}.subject-assignment-editor{gap:9px;padding-top:2px;display:grid}.common-assignment-block{background:var(--brand-soft);border-top:1px solid var(--brand-border);padding:14px}.subject-mode-toggle{min-height:46px;color:var(--text-secondary);background:var(--canvas);border:0;border-top:1px solid var(--border);text-align:left;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:700;display:flex}.subject-mode-toggle>span{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:inline-flex}.subject-mode-toggle strong{color:inherit;font-size:inherit}.subject-mode-help{color:var(--text-muted);font-size:11px;font-weight:400}.subject-mode-sign{width:18px;color:var(--brand-active);text-align:center;font-size:20px;font-weight:500;line-height:1}.subject-mode-toggle.active{color:var(--brand-active);background:#f7faff}.subject-mode-panel{border-top:1px solid var(--border);gap:8px;padding:12px 10px 10px;display:grid}.subject-mode-panel>.academy-section-title{padding-inline:4px}.assignment-add-button{min-height:34px;color:var(--brand-active);background:var(--canvas);border:1px solid var(--brand-border);border-radius:9px;align-items:center;gap:5px;padding:6px 10px;font-size:12px;display:inline-flex}.assignment-add-button .material-symbols-rounded{font-size:18px}.assignment-empty{min-height:54px;color:var(--text-muted);background:var(--canvas);border:1px dashed var(--border-strong);border-radius:12px;padding:12px;font-size:13px}.assignment-editor-list{gap:9px;display:grid}.assignment-editor-row{background:var(--canvas);border:1px solid var(--border);border-radius:13px;gap:10px;padding:12px;display:grid}.assignment-name-row{grid-template-columns:minmax(0,1fr);align-items:end;gap:8px;display:grid}.assignment-name-row label,.assignment-options label,.assignment-options>div{gap:5px;min-width:0;display:grid}.assignment-name-row label>span,.assignment-options label>span,.assignment-options>div>span{color:var(--text-secondary);font-size:11px;font-weight:600}.assignment-options{grid-template-columns:minmax(0,1.25fr) minmax(150px,.75fr) 44px;align-items:end;gap:10px;display:grid}.assignment-options.cycle-only{grid-template-columns:minmax(160px,260px) 44px;justify-content:end}.assignment-delete{align-self:end}.assignment-weekday-field{grid-template-rows:auto 44px;min-height:62px}.assignment-weekdays{flex-wrap:nowrap;align-items:center;gap:5px;min-height:44px;display:flex}.assignment-weekdays button{min-width:0;min-height:32px;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:8px;flex:1 1 0;padding:5px 8px;font-size:11px}.assignment-weekdays button:first-child{flex-grow:1.25}.assignment-weekdays button.active{color:#fff;background:var(--brand);border-color:var(--brand)}.schedule-time-select{font-variant-numeric:tabular-nums;letter-spacing:-.02em;min-width:0;font-size:15px}.switch-label{cursor:pointer}.switch-label input{opacity:0;pointer-events:none;position:absolute}.switch-label>span{background:var(--border-strong);border-radius:999px;width:38px;height:22px;padding:3px;transition:background .18s;position:relative}.switch-label>span:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .18s;display:block;box-shadow:0 1px 3px #1717192e}.switch-label input:checked+span{background:var(--brand)}.switch-label input:checked+span:after{transform:translate(16px)}.transport-time-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.notification-check{background:var(--brand-soft);border-radius:12px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;min-height:58px;padding:10px 12px;gap:10px!important;display:grid!important}.notification-check>input{width:18px;min-height:18px;accent-color:var(--brand);padding:0}.notification-check>span{gap:1px;display:grid}.notification-check small{color:var(--text-muted);font-size:11px}.notification-check button{min-height:34px;color:var(--brand-active);border:1px solid var(--brand-border);background:#fff;border-radius:9px;padding:6px 10px;font-size:12px}.academy-editor-actions{border-top:1px solid var(--border);padding-top:2px}.academy-editor-actions>span{flex:1}.academy-duplicate-section{border:1px solid var(--brand-border);background:#f7faff}.academy-duplicate-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.academy-duplicate-row label{gap:6px;min-width:0;display:grid}.academy-duplicate-row label>span{color:var(--text-secondary);font-size:12px;font-weight:600}.academy-duplicate-row .button{white-space:nowrap;min-height:44px}.academy-duplicate-empty{min-height:44px;color:var(--text-muted);background:var(--canvas);border:1px dashed var(--border-strong);border-radius:11px;align-items:center;gap:8px;padding:10px 12px;font-size:13px;display:flex}.academy-duplicate-empty .material-symbols-rounded{color:var(--brand);font-size:19px}.delete-confirm-backdrop{z-index:160;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1717198f;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.delete-confirm{border-radius:20px;grid-template-columns:48px minmax(0,1fr);gap:14px;width:min(420px,100%);padding:20px;display:grid;box-shadow:0 26px 80px #17171947}.delete-confirm-icon{color:#b42318;background:#fff3f2;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.delete-confirm h3{font-size:18px}.delete-confirm p{color:var(--text-secondary);margin-top:4px;font-size:13px}.delete-confirm footer{grid-column:1/-1;justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#17171973;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{border-radius:24px;gap:20px;width:min(100%,560px);padding:24px;display:grid;box-shadow:0 24px 80px #17171938}.modal-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.modal-head h2{font-size:24px}.modal-head p{color:var(--text-muted);margin-top:4px;font-size:14px}.form-tabs{background:var(--surface);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:4px;display:grid}.form-tabs button{min-height:44px;color:var(--text-secondary);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;display:inline-flex}.form-tabs button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 4px #17171914}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid label{gap:7px;display:grid}.form-grid label>span{font-size:14px}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select{width:100%;min-height:48px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:12px;padding:11px 12px;font-weight:400}.form-grid input:focus,.form-grid select:focus{border-color:var(--brand)}.form-help{min-height:46px;color:var(--brand-active);background:var(--brand-soft);border-radius:12px;align-items:center;gap:8px;padding:12px;font-size:14px;display:flex}.form-help .material-symbols-rounded{font-size:20px}.modal-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.toast{z-index:500;color:#fff;background:var(--ink);border-radius:14px;align-items:center;gap:10px;min-height:48px;padding:12px 18px;font-size:14px;font-weight:600;display:inline-flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #17171933}.toast .material-symbols-rounded{color:#8dd5aa}.account-button{min-height:36px;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:11px;align-items:center;gap:7px;padding:7px 10px;font-size:13px;display:inline-flex}.account-button:hover{color:var(--brand-active);border-color:var(--brand-border);background:var(--brand-soft)}.account-button .material-symbols-rounded{font-size:18px}.settings-signout{color:#b42318;background:#fff;border:1px solid #fecaca;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:48px;margin-top:2px;font-size:14px;font-weight:700;display:inline-flex}.settings-signout:hover{background:#fff5f4;border-color:#fca5a5}.settings-signout .material-symbols-rounded{font-size:20px}.push-settings-card{border-color:var(--brand-border);background:linear-gradient(135deg,#f7faff,#fff 72%);grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;display:grid}.push-settings-card.enabled{background:linear-gradient(135deg,#effcf6,#fff 72%);border-color:#b7ead5}.push-settings-icon{width:54px;height:54px;color:var(--brand-active);background:var(--brand-soft);border-radius:17px;place-items:center;display:grid}.push-settings-card.enabled .push-settings-icon{color:#08785b;background:#dff8ee}.push-settings-icon .material-symbols-rounded{font-size:28px}.push-settings-copy{gap:4px;min-width:0;display:grid}.push-settings-copy>span{color:var(--brand-active);font-size:12px;font-weight:700}.push-settings-copy>strong{color:var(--ink);font-size:17px}.push-settings-copy>p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.55}.push-settings-copy>small{color:var(--text-muted);align-items:center;gap:4px;margin-top:3px;font-size:11px;display:inline-flex}.push-settings-copy>small .material-symbols-rounded{font-size:16px}.push-settings-actions{gap:7px;min-width:176px;display:grid}.push-settings-actions .button{white-space:nowrap;justify-content:center;min-height:43px}.notification-settings-head{align-items:center}.notification-school-note{color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:8px 11px;font-size:12px;font-weight:700;display:inline-flex}.notification-school-note .material-symbols-rounded{color:var(--text-muted);font-size:18px}.notification-child-tabs{grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.notification-child-tabs small{color:var(--text-muted);margin-top:2px;font-size:10px;display:block}.notification-bulk-card{background:linear-gradient(135deg, var(--brand-soft), #fff 72%);border:1px solid var(--brand-border);border-radius:18px;gap:16px;padding:18px;display:grid}.notification-bulk-card>header{grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.notification-bulk-icon{width:46px;height:46px;color:var(--brand-active);background:#fff;border-radius:14px;place-items:center;display:grid;box-shadow:0 4px 14px #1267e514}.notification-bulk-icon .material-symbols-rounded{font-size:24px}.notification-bulk-card>header>div{gap:3px;min-width:0;display:grid}.notification-bulk-card>header strong{font-size:17px}.notification-bulk-card>header p{color:var(--text-secondary);font-size:12px;line-height:1.45}.notification-count-pill{color:var(--brand-active);border:1px solid var(--brand-border);white-space:nowrap;background:#fff;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800}.notification-bulk-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.notification-bulk-options>div{border:1px solid var(--border);background:#ffffffbf;border-radius:14px;grid-template-columns:minmax(0,1fr) 124px;align-items:center;gap:10px;padding:11px;display:grid}.notification-bulk-options>div.enabled{border-color:var(--brand-border);box-shadow:inset 3px 0 0 var(--brand)}.notification-bulk-options label{align-items:center;gap:8px;display:flex}.notification-bulk-options input[type=checkbox],.academy-notification-controls input[type=checkbox]{width:18px;height:18px;min-height:18px;accent-color:var(--brand);padding:0}.notification-bulk-options label>span{align-items:center;gap:5px;display:inline-flex}.notification-bulk-options .material-symbols-rounded{color:var(--brand-active);font-size:19px}.notification-lead-time{gap:5px;min-width:0;display:grid}.notification-lead-time .mixiv-select-trigger{background:#fff;border-radius:9px;min-height:38px;padding:7px 7px 7px 9px;font-size:12px;font-weight:800}.notification-lead-time .mixiv-select-trigger>.material-symbols-rounded{font-size:18px}.notification-lead-time>label{border:1px solid var(--border-strong);background:#fff;border-radius:9px;align-items:center;gap:3px;min-height:38px;padding:0 7px;display:flex}.notification-lead-time>label input{text-align:right;background:0 0;border:0;width:38px;min-height:32px;padding:0;font-size:13px;font-weight:800}.notification-lead-time>label span{color:var(--text-secondary);white-space:nowrap;font-size:11px}.notification-lead-time:has(.mixiv-select-trigger:disabled){opacity:.48}.notification-bulk-card>footer{justify-content:flex-end;gap:8px;display:flex}.notification-academy-section{gap:12px;display:grid}.notification-academy-section>header strong{font-size:17px}.notification-academy-section>header p{color:var(--text-muted);margin-top:3px;font-size:12px}.notification-academy-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.notification-academy-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;gap:11px;min-width:0;padding:14px;display:grid}.notification-academy-card.active{background:linear-gradient(135deg, #fff, var(--brand-soft));border-color:var(--brand-border)}.notification-academy-card>header{grid-template-columns:6px minmax(0,1fr);align-items:stretch;gap:10px;min-width:0;display:grid}.notification-academy-bar{border-radius:999px;min-height:42px}.notification-academy-card>header>div{align-content:center;gap:3px;min-width:0;display:grid}.notification-academy-card>header strong,.notification-academy-card>header small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notification-academy-card>header strong{font-size:15px}.notification-academy-card>header small{color:var(--text-muted);font-size:11px}.academy-notification-controls{background:var(--canvas);border:1px solid var(--border);border-radius:14px;overflow:hidden}.academy-notification-controls.active{border-color:var(--brand-border);background:#fff}.academy-notification-master{cursor:pointer;grid-template-columns:20px minmax(0,1fr) 42px;align-items:center;gap:10px;min-height:62px;padding:10px 12px;display:grid}.academy-notification-master>span{gap:2px;min-width:0;display:grid}.academy-notification-master strong{font-size:14px}.academy-notification-master small{color:var(--text-muted);font-size:11px;line-height:1.35}.academy-notification-master .toggle-button{background:var(--border-strong);border-radius:999px;width:42px;height:24px;padding:3px;display:block}.academy-notification-master .toggle-button>span{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .18s;display:block;box-shadow:0 1px 3px #17171926}.academy-notification-master .toggle-button.active{background:var(--brand)}.academy-notification-master .toggle-button.active>span{transform:translate(18px)}.academy-notification-detail{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 10px 10px;display:grid}.academy-notification-detail>div{background:var(--surface);border:1px solid var(--border);border-radius:11px;grid-template-columns:minmax(0,1fr) 124px;align-items:center;gap:8px;padding:9px;display:grid}.academy-notification-detail>div.enabled{background:var(--brand-soft);border-color:var(--brand-border)}.academy-notification-kind{cursor:pointer;align-items:center;gap:7px;display:flex}.academy-notification-kind>span{align-items:center;gap:5px;display:inline-flex}.academy-notification-kind .material-symbols-rounded{color:var(--brand-active);font-size:18px}.academy-notification-kind strong{white-space:nowrap;font-size:12px}.academy-notification-controls.compact .academy-notification-master{min-height:54px;padding:8px 10px}.academy-notification-controls.compact .academy-notification-detail{grid-template-columns:1fr}.notification-empty{min-height:120px;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);border-radius:16px;grid-column:1/-1;justify-content:center;align-items:center;gap:10px;padding:20px;display:flex}.notification-empty>.material-symbols-rounded{color:var(--brand);font-size:30px}.notification-empty>span{gap:2px;display:grid}.notification-empty strong{color:var(--text-secondary);font-size:14px}.notification-empty small{font-size:11px}.access-shell{background:linear-gradient(140deg,#f8fbff 0%,#fff 54%,#eef5ff 100%);align-content:safe center;place-items:center;min-height:100dvh;padding:24px;display:grid;overflow-x:hidden}.access-card{justify-items:start;gap:16px;width:min(520px,100%);min-width:0;padding:clamp(28px,6vw,52px);display:grid;box-shadow:0 20px 70px #0d3d7d1c}.access-card .site-logo{margin-bottom:8px}.access-kicker{color:var(--brand-active);letter-spacing:.12em;font-size:12px;font-weight:700}.access-card h1{letter-spacing:-.045em;font-size:clamp(30px,5vw,42px);line-height:1.16}.access-card>p{color:var(--text-secondary);font-size:16px;line-height:1.65}.access-card>small{color:var(--text-muted);font-size:13px;line-height:1.5}.account-tabs{background:var(--surface);border:1px solid var(--border);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;width:100%;padding:4px;display:grid}.account-tabs button{min-height:42px;color:var(--text-secondary);background:0 0;border:0;border-radius:10px;font-weight:700}.account-tabs button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 4px #17171914}.access-form{gap:13px;width:100%;display:grid}.access-form label{gap:7px;display:grid}.access-form label>span{color:var(--text-secondary);font-size:13px;font-weight:600}.access-form input{width:100%;min-height:48px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:12px;padding:10px 12px}.access-form input:focus{border-color:var(--brand);outline:0}.password-input{width:100%;position:relative}.access-form .password-input input{padding-right:48px}.password-visibility{width:40px;height:40px;color:var(--text-muted);background:0 0;border:0;border-radius:9px;place-items:center;display:inline-grid;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.password-visibility:hover{color:var(--brand-active);background:var(--brand-soft)}.password-visibility:focus-visible{color:var(--brand-active);outline:2px solid #1267e53d}.password-visibility .material-symbols-rounded{font-size:21px}.privacy-consent{background:var(--surface);border:1px solid var(--border);border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.privacy-consent-stack{gap:9px;display:grid}.access-form .privacy-consent>label{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.access-form .privacy-consent input[type=checkbox]{width:20px;min-width:20px;height:20px;min-height:20px;accent-color:var(--brand);margin:1px 0 0;padding:0}.access-form .privacy-consent label>span{color:var(--ink);gap:4px;font-size:13px;line-height:1.42;display:grid}.privacy-consent strong{font-size:13px}.privacy-consent strong em{color:var(--brand-active);font-style:normal}.privacy-consent.optional strong em{color:#087f5b}.privacy-consent small{color:var(--text-secondary);font-size:12px;line-height:1.45}.privacy-original-button{min-height:36px;color:var(--brand-active);background:var(--canvas);border:1px solid var(--brand-border);white-space:nowrap;border-radius:9px;align-items:center;gap:4px;padding:7px 9px;font-size:12px;font-weight:700;display:inline-flex}.privacy-original-button .material-symbols-rounded{font-size:16px}.privacy-document-backdrop{z-index:300;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1717198f;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.privacy-document{border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;width:min(720px,100%);max-height:min(92dvh,900px);padding:22px;display:grid;box-shadow:0 28px 100px #17171947}.privacy-document>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.privacy-document>header>div{gap:3px;display:grid}.privacy-document>header>div>span{color:var(--brand-active);font-size:12px;font-weight:700}.privacy-document h2{font-size:25px}.privacy-document-scroll{overscroll-behavior:contain;scrollbar-color:var(--brand-border) transparent;gap:20px;min-height:0;padding:4px 10px 8px 2px;display:grid;overflow-y:auto}.privacy-document-scroll:focus{outline:none}.privacy-document-scroll section{gap:9px;display:grid}.privacy-document-scroll h3{font-size:16px}.privacy-document-scroll p,.privacy-document-scroll li{color:var(--text-secondary);font-size:13px;line-height:1.72}.privacy-document-scroll ul{gap:4px;padding-left:19px;display:grid}.privacy-document-intro{color:var(--brand-active);background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:16px;grid-template-columns:38px minmax(0,1fr);padding:14px}.privacy-document-intro>.material-symbols-rounded{font-size:25px}.privacy-document-intro>div{gap:5px;display:grid}.privacy-document-intro strong{color:var(--ink);font-size:14px}.privacy-data-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.privacy-data-groups article{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-content:start;gap:4px;padding:12px;display:grid}.privacy-data-groups strong{color:var(--ink);font-size:13px}.privacy-data-groups p{font-size:12px;line-height:1.6}.privacy-sensitive-note{background:#fff8ea;border-radius:11px;align-items:flex-start;gap:6px;padding:10px 12px;display:flex}.privacy-sensitive-note .material-symbols-rounded{color:#9a6500;flex:none;font-size:18px}.privacy-document-scroll footer{color:var(--text-muted);border-top:1px solid var(--border);justify-content:space-between;gap:10px;padding-top:14px;font-size:11px;display:flex}.privacy-document-confirm{justify-content:center;width:100%;min-height:48px}.privacy-document-warning,.privacy-document-limit{border-radius:14px;grid-template-columns:34px minmax(0,1fr);padding:13px}.privacy-document-warning{color:#b54708;background:#fff6ed;border:1px solid #fedfbd}.privacy-document-limit{color:#475467;background:#f8fafc;border:1px solid #d0d5dd}.privacy-document-warning>.material-symbols-rounded,.privacy-document-limit>.material-symbols-rounded{font-size:22px}.privacy-document-warning>div,.privacy-document-limit>div{gap:4px;display:grid}.privacy-document-warning strong,.privacy-document-limit strong,.privacy-sensitive-note strong{color:var(--ink);font-size:13px}.privacy-document-warning p,.privacy-document-limit p{font-size:12px;line-height:1.65}.access-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.access-error{background:#fff1f0;border:1px solid #fecaca;border-radius:12px;width:100%;padding:11px 13px;color:#b42318!important;font-size:14px!important}.access-notice{background:#ecfdf3;border:1px solid #b7ebd0;border-radius:12px;width:100%;padding:11px 13px;line-height:1.5;color:#075a48!important;font-size:14px!important}.registration-paused{color:#6d4c00;text-align:left;background:#fff8e6;border:1px solid #f0d58b;border-radius:13px;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:12px 13px;display:grid}.registration-paused>.material-symbols-rounded{color:#8a6100;background:#fff;border-radius:11px;place-items:center;width:40px;height:40px;font-size:21px;display:grid}.registration-paused>span{gap:2px;min-width:0;font-size:13px;line-height:1.5;display:grid}.registration-paused strong{color:#533b00;font-size:14px}.registration-paused small{color:#7a6020;font-size:12px}.registration-paused.compact{grid-template-columns:24px minmax(0,1fr);padding:10px 12px}.registration-paused.compact>.material-symbols-rounded{background:0 0;width:24px;height:24px;font-size:19px}.registration-closed-actions{grid-template-columns:1fr 1fr}.registration-closed-actions .button.demo{grid-column:auto}.invite-account-note{color:#075a48;text-align:left;background:#ecfdf3;border:1px solid #b7ebd0;border-radius:13px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;padding:11px 12px;display:grid}.invite-account-note>.material-symbols-rounded{color:#087f5b;background:#fff;border-radius:11px;place-items:center;width:38px;height:38px;font-size:21px;display:grid}.invite-account-note>span{gap:2px;min-width:0;display:grid}.invite-account-note strong{font-size:13px}.invite-account-note small{color:#32735f;font-size:11px;line-height:1.45}.access-back{text-decoration:none}.invite-signup-shell{align-items:start;padding-block:36px}.invite-signup-card{width:min(620px,100%)}.invite-access-note{color:#344054;text-align:left;background:#f8fafc;border:1px solid #d0d5dd;border-radius:13px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;width:100%;padding:12px;display:grid}.invite-access-note>.material-symbols-rounded{width:38px;height:38px;color:var(--brand-active);background:#fff;border-radius:11px;place-items:center;font-size:21px;display:grid}.invite-access-note>span{gap:3px;min-width:0;display:grid}.invite-access-note strong{color:var(--ink);font-size:13px}.invite-access-note small{color:var(--text-secondary);font-size:11px;line-height:1.5}.invite-login-link{width:100%;padding-top:2px;text-decoration:none;display:block}.invite-consent-footnote{border-top:1px solid var(--border);width:100%;padding-top:10px;color:var(--text-muted)!important;font-size:11px!important;line-height:1.6!important}.invite-loading{width:100%;min-height:120px;color:var(--text-secondary);align-content:center;place-items:center;gap:10px;font-size:14px;display:grid}.invite-loading .material-symbols-rounded{color:var(--brand-active);font-size:28px;animation:1s linear infinite invite-loading-spin}@keyframes invite-loading-spin{to{transform:rotate(360deg)}}.access-forgot{color:var(--brand-active);text-underline-offset:3px;background:0 0;border:0;justify-self:start;padding:1px 0 3px;font-size:13px;font-weight:700;text-decoration:underline}.access-start{text-align:center;white-space:normal;overflow-wrap:anywhere;justify-content:center;align-items:center;gap:8px;width:100%;min-width:0;max-width:100%;min-height:52px;padding-inline:12px;line-height:1.35;text-decoration:none;display:inline-flex}.family-name-field{gap:7px;width:100%;display:grid}.family-name-field>span{color:var(--text-secondary);font-size:13px;font-weight:600}.family-name-field input{width:100%;min-height:48px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:12px;padding:10px 12px}.family-name-field input:focus{border-color:var(--brand)}.access-loading{color:var(--text-secondary);justify-items:center;gap:16px;font-size:15px;display:grid}.access-loading-brand{text-align:center;gap:8px;padding:28px}.access-loading-brand .site-logo{background-position:50%;flex-basis:auto;width:min(220px,62vw);height:68px;margin-bottom:8px}.access-loading-brand strong{color:var(--ink);letter-spacing:-.035em;font-size:clamp(22px,4vw,28px)}.access-loading-brand span{max-width:360px;color:var(--text-secondary);font-size:clamp(14px,2.5vw,16px);line-height:1.55}.welcome-card,.onboarding-card{text-align:center;gap:22px;width:min(560px,100%);min-width:0;padding:clamp(28px,6vw,52px);display:grid;box-shadow:0 20px 70px #0d3d7d1c}.welcome-card .site-logo{background-position:50%;flex-basis:auto;justify-self:center;width:min(210px,58vw);height:64px}.welcome-copy{gap:10px;display:grid}.welcome-copy h1{letter-spacing:-.055em;font-size:clamp(32px,6vw,44px)}.welcome-copy p{color:var(--text-secondary);font-size:17px}.welcome-points{border-block:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:14px 0;display:grid}.welcome-points span{color:var(--text-secondary);justify-items:center;gap:7px;font-size:13px;font-weight:700;display:grid}.welcome-points .material-symbols-rounded{color:var(--brand);font-size:24px}.welcome-actions{grid-template-columns:1.25fr .75fr;gap:10px;display:grid}.welcome-card>small{color:var(--text-muted);font-size:12px;line-height:1.5}.access-card{position:relative}.access-back{width:40px;height:40px;color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);border-radius:11px;place-items:center;display:inline-grid;position:absolute;top:18px;right:18px}.access-switch{color:var(--brand-active);text-align:center;background:0 0;border:0;font-size:13px;font-weight:700}.onboarding-shell{align-items:start;padding-block:36px}.onboarding-card{text-align:left;width:min(650px,100%)}.onboarding-card>header{justify-content:space-between;align-items:center;gap:20px;display:flex}.onboarding-card>header .site-logo{background-size:contain;flex-basis:148px;width:148px;height:46px}.onboarding-step{width:142px;color:var(--text-secondary);text-align:right;gap:7px;font-size:12px;font-weight:700;display:grid}.onboarding-step i{background:var(--surface-strong);border-radius:999px;height:6px;display:block;overflow:hidden}.onboarding-step i:before{content:"";width:inherit;background:var(--brand);border-radius:inherit;height:100%;display:block}.onboarding-content{gap:18px;display:grid}.onboarding-content h1{letter-spacing:-.05em;font-size:clamp(30px,5vw,40px);line-height:1.18}.onboarding-content>p{color:var(--text-secondary);margin-top:-7px;line-height:1.6}.onboarding-form{background:var(--surface);border:1px solid var(--border);border-radius:18px;gap:12px;padding:16px;display:grid}.onboarding-form label{gap:7px;display:grid}.onboarding-form label>span{color:var(--text-secondary);font-size:13px;font-weight:700}.onboarding-form em{color:var(--text-muted);font-style:normal;font-weight:400}.onboarding-form input{width:100%;min-height:48px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:12px;padding:10px 12px}.onboarding-form input:focus{border-color:var(--brand);outline:0}.onboarding-next{width:100%;min-height:54px}.onboarding-child-list,.onboarding-schedule-list{gap:8px;display:grid}.onboarding-child-list>div,.onboarding-schedule-list>div{background:var(--surface);border:1px solid var(--border);border-radius:14px;grid-template-columns:38px minmax(0,1fr);align-items:center;column-gap:10px;min-height:62px;padding:11px 13px;display:grid}.onboarding-child-list>div>span{width:34px;height:34px;color:var(--brand-active);background:var(--brand-soft);border-radius:11px;grid-row:1/span 2;place-items:center;font-weight:800;display:inline-grid}.onboarding-child-list strong,.onboarding-schedule-list strong{min-width:0;font-size:15px}.onboarding-child-list small,.onboarding-schedule-list small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:12px;overflow:hidden}.onboarding-schedule-list>div{grid-template-columns:minmax(0,1fr)}.onboarding-schedule-list small{grid-column:1;margin-top:3px}.onboarding-empty{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;gap:7px;font-size:13px;border-style:dashed!important;min-height:98px!important;display:flex!important}.onboarding-empty .material-symbols-rounded{color:var(--brand);font-size:26px}.onboarding-add-schedule{width:100%;min-height:50px}.onboarding-actions{grid-template-columns:1fr 1.25fr;gap:10px;display:grid}.onboarding-actions .button{min-height:50px}.welcome-actions .button.demo{color:#61410d;background:#fff7df;border-color:#e9c86b;grid-column:1/-1}.welcome-actions .button.demo:hover,.access-demo-button:hover{background:#fff0bd}.access-demo-button{color:#61410d;background:#fff7df;border-color:#e9c86b;width:100%;min-height:48px}.demo-mode-badge{z-index:120;color:#4d350c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff7dff7;border:1px solid #e9c86b;border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:7px 8px 7px 12px;font-size:13px;font-weight:700;display:inline-flex;position:fixed;top:12px;right:12px;box-shadow:0 8px 24px #48330d29}.demo-mode-badge>.material-symbols-rounded{font-size:19px}.demo-mode-badge button{color:#fff;background:#705017;border:0;border-radius:999px;min-height:28px;padding:4px 10px;font-size:12px;font-weight:700}.onboarding-child-name-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.onboarding-school-field{min-width:0}.onboarding-school-field small{color:var(--text-muted);font-size:12px;font-weight:400;line-height:1.45}.onboarding-school-lookup{min-width:0}.onboarding-school-detail-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.onboarding-school-detail-row label{min-width:0}.onboarding-school-notice{border-radius:9px;padding:7px 9px}.onboarding-school-notice.info{background:#ecfdf3;color:#075a48!important}.onboarding-school-notice.error{background:#fff1f0;color:#b42318!important}.child-form>.button.secondary{min-height:48px}@media (width<=1240px){:root{--sidebar-expanded:220px}.section-head{flex-wrap:wrap;gap:12px}.manage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-editor-layout{grid-template-columns:1fr}.manage-form-grid{grid-column:auto}.animal-grid{grid-template-columns:repeat(10,minmax(48px,1fr))}.settings-row-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.week-calendar{min-height:0}}@media (width<=1020px){:root{--sidebar-expanded:208px}.topbar{padding-inline:12px}.site-logo{background-size:contain;flex-basis:166px;width:166px}.global-child-picker>button,.global-child-option>button{padding-right:3px}.hero-grid{grid-template-columns:1fr}.brand-hero{min-height:250px}.today-progress{min-height:auto}.progress-content{justify-content:space-around}.calendar-toolbar{grid-template-columns:auto minmax(0,auto) minmax(0,1fr) auto auto}.week-calendar{display:block}.learning-layout{grid-template-columns:1fr}.program-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.animal-grid{grid-template-columns:repeat(5,minmax(58px,1fr))}.character-picker-modal .animal-grid{grid-template-columns:repeat(5,minmax(52px,1fr))}.manage-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reward-settings-grid{grid-template-columns:1fr}.child-hero{grid-template-columns:1fr 240px}.child-columns{grid-template-columns:1fr}}@media (width<=760px){:root{--header-height:64px;--card-padding:16px;--layout-gap:16px}body{padding-bottom:76px;font-size:16px}.app-shell{display:block}.app-shell.calendar-app{height:100dvh;min-height:100dvh;position:fixed;inset:0;overflow:hidden}.calendar-app .main-area{height:calc(100dvh - var(--header-height) - 68px);overflow:hidden}.calendar-app .content-shell.calendar-shell{flex:auto;height:auto;min-height:0;overflow:hidden}.sidebar{width:min(86vw,310px);height:calc(100dvh - var(--header-height));min-height:calc(100dvh - var(--header-height));left:0;top:var(--header-height);z-index:80;align-items:stretch;padding:12px;transition:transform .22s;position:fixed;transform:translate(-102%);box-shadow:12px 0 40px #1717191f}.sidebar.open{transform:translate(0)}.sidebar nav{margin-top:0}.sidebar nav button{justify-content:flex-start}.reset-button{display:flex}.nav-scrim{z-index:70;background:#1717195c;border:0;display:block;position:fixed;inset:0}.topbar{min-height:var(--header-height);gap:6px;padding:8px}.account-button{justify-content:center;width:38px;min-width:38px;padding:7px}.account-button span{display:none}.site-logo{background-size:contain;flex-basis:104px;width:104px;height:42px}.global-child-picker{flex:auto;justify-content:flex-end;gap:5px;overflow:hidden}.global-child-picker>button,.global-child-option>button{width:40px;height:40px;min-height:40px;padding:3px}.global-child-picker>button{padding:0}.global-child-option>button{border-width:3px}.child-avatar{flex-basis:30px;width:30px;height:30px;font-size:19px}.content-shell,.content-shell.calendar-shell{width:calc(100% - (var(--layout-gap) * 2));padding:var(--layout-gap) 0 20px}.content-shell.calendar-shell{height:calc(100dvh - var(--header-height) - 68px);padding-bottom:var(--layout-gap)}.view-stack{gap:var(--layout-gap)}.section-head{flex-direction:column;align-items:flex-start;gap:16px;padding:0 0 0 10px}.section-head h2{font-size:28px}.section-head p{font-size:16px}.hero-grid,.metric-grid,.dashboard-grid,.today-dashboard-grid,.report-grid,.manage-grid{gap:var(--layout-gap);grid-template-columns:1fr}.brand-hero{grid-template-columns:1fr;align-items:start;min-height:230px;padding:18px}.hero-copy h2{font-size:30px}.hero-copy p{font-size:14px}.hero-score{grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;display:grid}.hero-score>strong{grid-area:1/2/span 2}.hero-score-bars{grid-column:1;height:22px;margin-top:6px}.progress-content{gap:24px}.progress-ring{width:132px;height:132px}.progress-ring:after{width:100px;height:100px}.dashboard-focus{gap:14px}.dashboard-focus .section-head{flex-direction:row;justify-content:space-between;align-items:flex-end;gap:10px;width:100%;padding-left:0}.dashboard-order-toggle{min-height:40px;padding:8px 10px;font-size:12px}.dashboard-order-toggle .material-symbols-rounded{font-size:19px}.dashboard-order-editor{gap:12px;padding:14px}.dashboard-order-list{grid-template-columns:1fr}.dashboard-order-list article{min-height:60px}.dashboard-card-stack{gap:var(--layout-gap);grid-template-columns:1fr}.dashboard-ordered-card.compact{grid-column:1}.dashboard-card-collapse{width:36px;height:36px;color:var(--brand-active);background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:11px;place-items:center;padding:0;display:inline-grid}.dashboard-card-collapse .material-symbols-rounded{font-size:22px}.dashboard-card-is-collapsed{gap:0!important;min-height:0!important}.dashboard-card-is-collapsed:not(.dashboard-school-section)>:not(header),.dashboard-school-section.dashboard-card-is-collapsed .school-day-card>:not(header){display:none!important}.dashboard-school-section.dashboard-card-is-collapsed .school-day-card{gap:0}.dashboard-school-section .school-day-card>header{grid-template-columns:40px minmax(0,1fr) 36px}.dashboard-school-section .school-day-card>header>.dashboard-card-collapse{grid-area:1/3}.dashboard-school-section .school-sync-badge{grid-column:1/-1;justify-self:start}.tuition-dashboard-alert>header,.health-dashboard-alert>header{grid-template-columns:42px minmax(0,1fr) 36px}.tuition-dashboard-alert>header>.dashboard-card-collapse,.health-dashboard-alert>header>.dashboard-card-collapse{grid-area:1/3}.tuition-dashboard-alert>header>.button,.health-dashboard-alert>header>.button{grid-area:2/1/auto/-1;justify-content:center;width:100%}.today-summary>.card-title-row,.dashboard-ordered-card.compact .card-title-row{grid-template-columns:minmax(0,1fr) auto 36px;align-items:start;gap:8px;display:grid}.today-summary>.card-title-row>.dashboard-card-collapse,.dashboard-ordered-card.compact .card-title-row>.dashboard-card-collapse{grid-area:1/3}.today-summary>.card-title-row>.status-pill,.dashboard-ordered-card.compact .card-title-row>.text-button{grid-area:1/2}.today-summary{min-height:0;padding:18px 16px}.today-summary .progress-content{justify-content:space-between;gap:18px;padding-top:16px}.today-summary .progress-ring{width:116px;height:116px}.today-summary .progress-ring:after{width:88px;height:88px}.today-summary .progress-ring strong{font-size:24px}.today-summary .progress-counts{flex:1;gap:10px}.today-summary .progress-counts>span{min-width:0}.today-dashboard-grid .panel{gap:16px}.today-dashboard-grid .task-row{min-height:66px}.today-dashboard-grid .timeline-row{min-height:62px}.metric-card{min-height:158px}.metric-grid{scroll-snap-type:x mandatory;grid-template-columns:repeat(3,minmax(240px,1fr));padding-bottom:4px;overflow-x:auto}.metric-card{scroll-snap-align:start}.card-title-row{align-items:flex-start}.card-title-row h3{font-size:20px}.legend{justify-content:flex-start}.dashboard-grid .panel,.dashboard-grid .side-stack{min-height:auto}.trend-chart{min-height:190px}.trend-chart svg{height:160px}.calendar-toolbar{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.calendar-view-toggle{justify-self:start}.calendar-view-toggle button{min-height:38px;padding:7px 10px;font-size:13px}.calendar-toolbar-spacer{display:none}.calendar-navigation{grid-area:2/1/auto/-1;justify-content:space-between;gap:6px}.calendar-navigation .icon-button{flex-basis:40px;width:40px;height:40px;padding:8px}.calendar-period{text-overflow:ellipsis;justify-content:center;min-width:0;font-size:18px;overflow:hidden}.calendar-period span{text-overflow:ellipsis;overflow:hidden}.calendar-add{width:auto;min-width:88px;min-height:40px;padding:8px 13px;font-size:13px;line-height:1;overflow:visible}.calendar-settings-popover{width:min(300px,100vw - 32px);top:calc(var(--header-height) + 118px);position:fixed;right:16px}.calendar-scroll{-webkit-overflow-scrolling:touch;max-height:none}.time-grid{grid-template-columns:64px repeat(var(--calendar-day-count,7), minmax(128px, 1fr));min-width:968px}.time-grid.day-mode{grid-template-columns:64px minmax(0,1fr);min-width:100%}.time-grid.week-mode{grid-template-columns:64px repeat(var(--calendar-day-count,7), minmax(152px, 1fr));min-width:1134px}.time-grid.week-mode .day-title{gap:5px;min-height:56px}.time-grid.week-mode .day-title>span{font-size:12px}.time-grid.week-mode .day-title>strong{font-size:18px}.time-grid.week-mode .day-title>i{min-height:18px;padding:1px 5px;font-size:9px}.time-grid.week-mode .day-child-lanes{min-height:34px}.time-grid.week-mode .day-child-lanes>span{letter-spacing:-.04em;gap:3px;padding-inline:2px;font-size:10px}.time-grid.week-mode .day-child-lanes b{flex-basis:5px;width:5px;height:5px}.time-grid.week-mode .time-label,.time-grid.week-mode .time-end-label{padding-right:5px;font-size:9px}.time-grid.week-mode .time-label.half span{font-size:8px}.time-grid.week-mode .calendar-event{border-radius:7px;margin-block:2px;padding:3px 4px}.time-grid.week-mode .calendar-event strong{letter-spacing:-.045em;font-size:10px;line-height:13px}.shortcut-guide-backdrop{align-items:end;padding:0}.shortcut-guide{width:100%;padding-bottom:calc(22px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.schedule-detail-backdrop{align-items:end;padding:0}.schedule-detail{border-radius:22px 22px 0 0;width:100%}.program-list{grid-template-columns:1fr}.program-detail-head{flex-direction:column}.program-detail-head .button{align-self:flex-start}.program-kpis{grid-template-columns:1fr}.template-head{flex-direction:column;align-items:flex-start}.template-head .button{margin-top:0}.learning-accordion{padding:16px}.learning-accordion .card-title-row{align-items:flex-start}.learning-schedule-add{min-height:40px;padding:8px 12px;font-size:13px}.learning-accordion-trigger{grid-template-columns:7px minmax(0,1fr) 24px;gap:10px;min-height:68px;padding:11px 12px}.learning-accordion-title strong{font-size:16px}.learning-accordion-title small{text-overflow:clip;white-space:normal;font-size:12px;line-height:1.4}.learning-accordion-detail{gap:16px;padding:14px}.learning-accordion-detail .program-detail-head h2{font-size:23px}.learning-accordion-detail .program-detail-head p{font-size:13px;line-height:1.45}.learning-accordion-detail .program-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.learning-accordion-detail .program-kpis>div{border-radius:12px;padding:10px 8px}.learning-accordion-detail .program-kpis span{font-size:11px}.learning-accordion-detail .program-kpis strong{font-size:19px}.daily-task-card .card-title-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.daily-task-add{min-height:40px;padding:8px 12px}.daily-task-list article{grid-template-columns:7px minmax(0,1fr) 24px;gap:10px;min-height:66px;padding:11px 12px}.daily-task-list strong{font-size:15px}.daily-task-list small{white-space:normal}.manage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.manage-card{min-height:220px}.manage-editor{padding:16px}.editor-head{flex-direction:column;align-items:stretch}.editor-head .button{align-self:flex-start}.animal-grid{grid-template-columns:repeat(4,minmax(52px,1fr))}.character-picker-backdrop{align-items:end;padding:0}.character-picker-modal{border-radius:22px 22px 0 0;width:100%;max-height:82vh}.character-picker-modal .animal-grid{grid-template-columns:repeat(5,minmax(48px,1fr));gap:6px}.manage-form-grid,.settings-row-fields{grid-template-columns:1fr}.settings-row-fields .wide{grid-column:auto}.settings-row{grid-template-columns:7px minmax(0,1fr) 40px;align-items:start}.settings-row.cost-row{grid-template-columns:minmax(0,1fr) 40px}.cost-summary{flex-direction:column;align-items:flex-start}.cost-summary strong{font-size:23px}.empty-family-children{grid-template-columns:44px minmax(0,1fr)}.empty-family-children .button{grid-column:1/-1;width:100%}.invite-create-grid{grid-template-columns:1fr}.invite-list-head{flex-direction:column;align-items:flex-start;gap:4px}.invite-list-head>span{text-align:left}.invite-row{grid-template-columns:40px minmax(0,1fr) auto;gap:9px}.invite-row .icon-box{flex-basis:40px;width:40px;height:40px}.invite-revoke{grid-column:2/-1;width:100%}.invite-link-row{grid-template-columns:1fr}.invite-link-row .button{width:100%}.child-link-header{padding-inline:16px}.child-link-header>span{display:none}.child-link-header .button{min-width:40px;padding-inline:10px;font-size:0}.child-link-header .button .material-symbols-rounded{font-size:21px}.child-link-content{width:calc(100% - 32px);padding-top:18px}.academy-setting-row{grid-template-columns:7px minmax(0,1fr) 22px;gap:9px}.academy-row-meta{display:none}.child-hero{grid-template-columns:1fr;padding:20px}.child-progress{width:100%}.academy-editor-backdrop{align-items:end;padding:0}.academy-editor{width:100%;max-height:94dvh;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;gap:15px}.academy-form-grid{grid-template-columns:1fr}.academy-form-grid.academy-basics-grid{grid-template-columns:minmax(96px,.82fr) minmax(96px,1.35fr) minmax(84px,.68fr);gap:6px}.academy-form-grid .full{grid-column:1}.academy-section-title{align-items:flex-start}.weekday-checklist{gap:4px}.weekday-checklist button{height:38px;padding-inline:4px}.day-time-list>div{grid-template-columns:26px minmax(0,1fr) 8px minmax(0,1fr);gap:4px}.subject-day-list>div{grid-template-columns:22px minmax(54px,.78fr) minmax(74px,1fr) 5px minmax(74px,1fr);gap:3px}.schedule-default-row{grid-template-columns:minmax(74px,.8fr) repeat(2,minmax(82px,1fr));gap:6px}.schedule-default-row select,.subject-day-list select,.transport-time-row select{padding-inline:7px;font-size:13px}.schedule-time-select{padding-inline:6px!important;font-size:12px!important}.repeat-date-range{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.assignment-options,.assignment-options.cycle-only{grid-template-columns:1fr}.subjects-section>.academy-section-title{padding-inline:13px}.subject-editor-list{padding:8px}.subject-editor-card,.common-assignment-block{padding:12px}.assignment-editor-row{padding:10px}.notification-check{grid-template-columns:20px minmax(0,1fr)}.notification-check button{grid-column:2;justify-self:start}.academy-editor-actions{grid-template-columns:1fr 1fr;display:grid}.academy-editor-actions>span{display:none}.academy-editor-actions .button.danger{grid-column:1/-1;width:100%}.academy-duplicate-row{grid-template-columns:1fr}.academy-duplicate-row .button{justify-content:center;width:100%}.delete-confirm-backdrop{align-items:end;padding:0}.delete-confirm{width:100%;padding-bottom:calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.mobile-bottom-nav{z-index:60;height:68px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-bottom-nav button{min-width:0;color:var(--text-muted);background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:14px;display:flex}.mobile-bottom-nav button.active{color:var(--brand-active);background:var(--brand-soft)}.mobile-bottom-nav .material-symbols-rounded{font-size:22px}.mobile-bottom-nav span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.modal-backdrop{align-items:end;padding:0}.modal{border-radius:24px 24px 0 0;width:100%;max-height:92vh;overflow-y:auto}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:1}.toast{width:max-content;max-width:calc(100% - 32px);bottom:86px}}@media (width<=520px){.site-logo{flex-basis:92px;width:92px}.global-child-picker{gap:3px}.global-child-picker>button,.global-child-option>button{width:38px;height:38px;min-height:38px;padding:3px}.global-child-picker>button{padding:0}.child-avatar{flex-basis:28px;width:28px;height:28px;font-size:18px}.access-shell{padding:16px}.demo-mode-badge{top:auto;right:10px;bottom:calc(74px + env(safe-area-inset-bottom))}.access-card{padding:28px 22px}.welcome-card,.onboarding-card{border-radius:22px;padding:26px 20px}.welcome-actions,.onboarding-actions,.registration-closed-actions{grid-template-columns:1fr}.welcome-points{gap:4px}.welcome-points span{font-size:12px}.onboarding-shell{padding-block:16px}.onboarding-card>header .site-logo{flex-basis:118px;width:118px}.onboarding-step{width:112px}.onboarding-content h1{font-size:30px}.onboarding-content>p{font-size:14px}.onboarding-form{padding:13px}.onboarding-child-list>div,.onboarding-schedule-list>div{padding:10px}.access-form-row,.manage-grid{grid-template-columns:1fr}.manage-card{min-height:210px}.animal-grid{grid-template-columns:repeat(4,minmax(48px,1fr))}.character-picker-modal .animal-grid{grid-template-columns:repeat(5,minmax(44px,1fr))}.animal-grid button{min-height:62px}.character-picker-modal .animal-grid button{min-height:58px}.child-profile-tabs>button{gap:5px;min-width:0;min-height:76px;padding:7px 4px}.child-profile-tabs .child-avatar{flex-basis:36px;width:36px;height:36px}.child-profile-tabs strong{font-size:13px}.progress-content{justify-content:space-between;gap:12px}.progress-ring{width:120px;height:120px}.progress-ring:after{width:90px;height:90px}.progress-ring strong{font-size:24px}.reward-card{grid-template-columns:48px minmax(0,1fr)}.reward-card>button{display:none}.reward-icon{width:48px;height:48px;padding:12px}.program-detail-head h2{font-size:26px}.data-note{align-items:start}.backup-note,.admin-members-note{grid-template-columns:40px minmax(0,1fr);align-items:start}.backup-note .backup-actions{grid-column:1/-1;width:100%}.backup-note .button{width:100%;padding-inline:10px}.admin-members-arrow{grid-column:2;justify-self:end;margin-top:-32px}}@media (width<=760px){.onboarding-shell{background:var(--surface);padding:0;display:block}.onboarding-card{width:100%;min-height:100dvh;padding:22px 16px max(30px, calc(22px + env(safe-area-inset-bottom)));box-shadow:none;border:0;border-radius:0;gap:20px}.onboarding-card>header{gap:12px}.onboarding-card>header .site-logo{flex-basis:124px;width:124px;height:42px}.onboarding-step{width:min(118px,34vw)}.onboarding-content,.onboarding-form,.onboarding-form label,.child-form .access-form-row{min-width:0}.onboarding-content{gap:16px}.onboarding-content h1{font-size:clamp(28px,8vw,34px)}.onboarding-content>p{margin-top:-4px;font-size:15px}.child-form{border-radius:16px;gap:14px;padding:16px}.child-form .access-form-row{grid-template-columns:1fr;gap:14px}.onboarding-child-name-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;min-width:0}.child-form label>span{font-size:14px}.child-form input,.child-form .button{min-height:52px;font-size:16px}.child-form .button{width:100%}.onboarding-child-list>div{min-height:70px;padding:12px}.onboarding-child-list small{text-overflow:clip;white-space:normal;line-height:1.45;overflow:visible}.child-mode{gap:16px;min-width:0}.child-mode .section-head{flex-wrap:wrap;align-items:flex-start;gap:4px;padding-left:0}.child-day-heading{gap:10px;width:100%}.child-day-avatar-button{flex-basis:52px;width:52px;height:52px}.child-day-avatar-button .child-avatar.large{flex-basis:48px;width:48px;height:48px;font-size:28px}.child-day-title>p{margin-left:0;font-size:14px;line-height:1.5}.child-today-summary{border-radius:20px;grid-template-columns:1fr;gap:16px;min-height:0;padding:20px 16px}.child-today-summary h2{font-size:28px;line-height:1.2}.child-today-summary .child-progress{grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;width:100%;padding:15px 16px;display:grid}.child-today-summary .child-progress strong{grid-row:1/span 2;font-size:38px}.child-today-summary .child-progress strong small{font-size:17px}.child-today-summary .child-progress>span{align-self:end}.child-today-summary .child-progress>div{grid-column:2;width:100%;margin-top:5px}.child-day-grid{grid-template-columns:1fr;gap:16px}.child-schedule-card,.child-task-card{min-width:0;padding:16px}.child-card-icon{border-radius:12px;flex-basis:40px;width:40px;height:40px}.child-card-icon .material-symbols-rounded{font-size:21px}.child-schedule-row{grid-template-rows:auto auto;grid-template-columns:42px 4px minmax(0,1fr);gap:3px 8px;min-height:74px}.child-schedule-row time,.child-schedule-row i{grid-row:1/span 2}.child-schedule-row i{height:40px}.child-schedule-row>div{grid-column:3;min-width:0}.child-schedule-row>span{grid-column:3;justify-self:start}.child-schedule-row small{text-overflow:clip;white-space:normal;line-height:1.4;overflow:visible}.big-task-list{gap:8px}.big-task-list button{grid-template-columns:46px minmax(0,1fr);gap:12px;min-height:76px;padding:12px}.big-task-list button>span{width:46px;height:46px}.big-task-list strong{font-size:16px;line-height:1.35}.big-task-list small{font-size:14px;line-height:1.35}.journal-launch{border-radius:18px;grid-template-columns:50px minmax(0,1fr);gap:12px;min-height:96px;padding:16px}.journal-launch-emoji{border-radius:15px;width:50px;height:50px;font-size:26px}.journal-launch strong{font-size:17px}.journal-launch small{font-size:14px;line-height:1.45;display:block}.journal-launch>.material-symbols-rounded{display:none}.journal-sheet-backdrop{align-items:end;padding:0}.journal-sheet{width:100%;max-height:92dvh;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;gap:16px}.journal-sheet h2{font-size:26px}.journal-sheet header p{line-height:1.5}.emotion-grid{gap:6px}.emotion-grid button{border-radius:14px;min-height:72px;padding:7px 2px}.emotion-grid button span{font-size:25px}.emotion-grid button small{font-size:11px}.journal-section-head{flex-direction:column;align-items:flex-start;gap:2px}.journal-media-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.journal-media-actions .button{justify-content:center;min-height:48px;padding-inline:10px}.journal-media-actions .button:last-child{grid-column:1/-1}.journal-attachments{grid-template-columns:repeat(2,minmax(0,1fr))}.journal-sheet>footer{grid-template-columns:.8fr 1.2fr;display:grid}.journal-sheet>footer .button{justify-content:center;min-height:50px;padding-inline:10px}}@media (width<=380px){.child-link-header{padding-inline:12px}.child-link-content{width:calc(100% - 24px)}.child-today-summary{padding:18px 14px}.child-schedule-card,.child-task-card{padding:14px}.emotion-grid button small{font-size:10px}.journal-activity-add{grid-template-columns:1fr}.journal-activity-add .button{justify-content:center;min-height:48px}.journal-media-actions{grid-template-columns:1fr}.journal-media-actions .button:last-child{grid-column:auto}}.manage-view .manage-card{gap:12px;min-height:172px;padding:16px}.manage-view .manage-card>div:nth-child(2) strong{font-size:20px}.manage-view .manage-card>div:nth-child(2) p{font-size:13px}.manage-view .manage-footer{padding-top:9px;font-size:12px}.child-settings-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.child-settings-grid .child-field-name,.child-settings-grid .child-field-birth,.child-settings-grid .child-field-age{grid-column:span 2}.child-settings-grid .child-field-school,.child-settings-grid .child-field-grade,.child-settings-grid .child-field-teacher,.child-settings-grid .child-field-phone{grid-column:span 3}.child-invite-card{background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:16px;justify-content:space-between;align-items:center;gap:18px;padding:16px;display:flex}.child-invite-card>div:first-child{min-width:0}.child-invite-card h4{margin-top:2px;font-size:17px}.child-invite-card p{color:var(--text-secondary);margin-top:3px;font-size:13px}.child-invite-actions{flex-shrink:0;gap:8px;display:flex}.child-invite-actions .button{white-space:nowrap;min-height:44px}.invite-share-symbol{text-align:center;width:18px;font-size:21px;font-weight:500;line-height:1;display:inline-block;transform:translateY(-1px)}.qr-dialog-backdrop{z-index:190;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17171985;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.qr-dialog{text-align:center;justify-items:center;gap:10px;width:min(340px,100%);padding:24px;display:grid;box-shadow:0 28px 80px #1717194d}.qr-dialog>.icon-button{position:absolute;top:12px;right:12px}.qr-dialog .icon-box{width:42px;height:42px}.qr-dialog h3{font-size:21px}.qr-dialog p{color:var(--text-secondary);font-size:14px}.qr-dialog img{aspect-ratio:1;border:1px solid var(--border);background:#fff;border-radius:14px;width:min(250px,100%)}.academy-add-modal-backdrop{z-index:195;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1717198a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.academy-add-modal{border-radius:22px;gap:16px;width:min(580px,100%);padding:22px;display:grid;box-shadow:0 28px 80px #1717194d}.academy-add-modal-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.academy-add-modal-head h3{margin-top:4px;font-size:23px}.academy-add-modal-head p{color:var(--text-secondary);margin-top:4px;font-size:13px}.academy-add-fields{grid-template-columns:repeat(12,minmax(0,1fr));gap:11px;display:grid}.academy-add-fields label{gap:5px;min-width:0;display:grid}.academy-add-fields label>span{color:var(--text-secondary);font-size:12px;font-weight:600}.academy-add-fields input,.academy-add-fields select{width:100%;min-height:44px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:10px;padding:9px 10px}.academy-add-fields .academy-add-child{grid-column:span 3}.academy-add-fields .academy-info-name{grid-column:span 6}.academy-add-fields .academy-add-category{grid-column:span 3}.academy-add-fields .academy-add-phone{grid-column:span 5}.academy-add-fields .academy-info-address{grid-column:span 7}.academy-add-modal-actions{grid-template-columns:minmax(110px,.65fr) minmax(0,1.35fr);gap:8px;display:grid}.academy-add-modal-actions .button{justify-content:center;min-height:46px}.academy-info-list{gap:10px;display:grid}.academy-info-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}.academy-info-card.active{border-color:var(--brand-border)}.academy-info-summary{width:100%;min-height:66px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 14px;display:grid}.academy-child-color-stack{border-radius:999px;flex-direction:column;min-height:36px;display:flex;overflow:hidden}.academy-child-color-stack i{flex:1 1 0;min-height:4px}.academy-info-summary>span:nth-child(2){gap:3px;min-width:0;display:grid}.academy-info-title-line{align-items:center;gap:8px;min-width:0;display:flex}.academy-info-summary strong,.academy-info-summary small,.academy-info-summary em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.academy-info-summary strong{min-width:0;font-size:15px}.academy-info-summary em{color:var(--text-secondary);font-size:12px;font-style:normal}.academy-category-pill{background:var(--brand-soft);border-radius:999px;align-items:center;max-width:88px;min-height:21px;padding:3px 7px;font-weight:700;display:inline-flex;color:var(--brand-active)!important;font-size:11px!important}.academy-info-summary small{color:var(--text-muted);font-size:12px}.academy-disclosure{width:30px;height:30px;color:var(--brand-active);background:var(--canvas);border:1px solid var(--border);border-radius:9px;display:inline-block;position:relative}.academy-disclosure:before{content:"";border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;transition:transform .16s,top .16s;position:absolute;top:9px;left:10px;transform:rotate(45deg)}.academy-disclosure.open:before{top:13px;transform:rotate(225deg)}.academy-info-content{border-top:1px solid var(--border);gap:12px;padding:14px;display:grid}.academy-shared-children{background:var(--surface);border-radius:11px;flex-wrap:wrap;align-items:center;gap:6px;padding:9px 10px;display:flex}.academy-shared-children>span{color:var(--text-secondary);align-items:center;gap:5px;font-size:12px;font-weight:600;display:inline-flex}.academy-shared-children>span i{border-radius:50%;width:7px;height:7px}.academy-shared-children small{width:100%;color:var(--text-muted);font-size:11px}.academy-info-fields{grid-template-columns:repeat(12,minmax(0,1fr));gap:10px;display:grid}.academy-info-fields label{gap:5px;min-width:0;display:grid}.academy-info-fields label>span{color:var(--text-secondary);font-size:12px;font-weight:600}.academy-info-fields input{width:100%;min-height:42px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:10px;padding:8px 10px}.academy-info-fields .academy-info-name{grid-column:span 5}.academy-info-fields .academy-info-category{grid-column:span 3}.academy-info-fields .academy-info-phone{grid-column:span 4}.academy-info-fields .academy-info-address{grid-column:1/-1}.academy-info-actions{justify-content:flex-end;gap:8px;display:flex}.academy-info-actions .button{min-height:42px}.academy-map{border:1px solid var(--border);background:var(--brand-soft);border-radius:12px;min-height:190px;position:relative;overflow:hidden}.academy-map iframe{border:0;width:100%;height:190px;display:block}.academy-map>a{min-height:34px;color:var(--brand-active);border:1px solid var(--border);background:#fffffff0;border-radius:8px;align-items:center;gap:4px;padding:6px 9px;font-size:12px;font-weight:700;display:inline-flex;position:absolute;top:10px;left:10px;box-shadow:0 2px 8px #00000014}.academy-map>a .material-symbols-rounded{font-size:16px}.academy-map-pin{z-index:1;color:#b42318;pointer-events:none;background:#fffffff0;border:1px solid #fecaca;border-radius:999px;align-items:center;gap:4px;padding:5px 8px 5px 6px;font-size:11px;line-height:1;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 14px #5714142e}.academy-map-pin .material-symbols-rounded{color:#dd2c2c;font-size:18px}.academy-map-pin b{white-space:nowrap;font-size:11px}.academy-map-empty{min-height:112px;color:var(--text-muted);background:var(--canvas);text-align:center;border-style:dashed;align-content:center;place-items:center;gap:5px;padding:18px;font-size:13px;display:grid}.academy-map-empty .material-symbols-rounded{color:var(--brand);font-size:24px}.academy-share-button{justify-content:center;width:100%;min-height:44px}.academy-info-empty{min-height:150px;color:var(--text-muted);background:var(--surface);border:1px dashed var(--border-strong);text-align:center;border-radius:16px;place-items:center;gap:8px;padding:20px;display:grid}.academy-info-empty .material-symbols-rounded{color:var(--brand);font-size:28px}@media (width<=760px){.timeline{--timeline-center:36px;gap:12px}.timeline-row{min-height:72px}.manage-view .manage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.manage-view .manage-card{border-radius:15px;gap:8px;min-height:132px;padding:12px 10px}.manage-view .manage-card .icon-box{width:36px;height:36px}.manage-view .manage-card>div:nth-child(2) strong{font-size:16px}.manage-view .manage-card>div:nth-child(2) p{margin-top:3px;font-size:11px;line-height:1.35}.manage-view .manage-footer{display:none}.manage-view .manage-editor{gap:16px}.manage-view .editor-head h3{font-size:21px}.child-settings-grid{gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))!important}.child-settings-grid input{min-height:42px;padding:8px;font-size:13px}.child-settings-grid label>span{font-size:11px}.child-profile-identity-card{grid-template-columns:70px minmax(0,1fr) auto;gap:12px;padding:12px}.avatar-setting{width:66px;height:66px}.avatar-setting .child-avatar.large{flex-basis:64px;width:64px;height:64px;font-size:37px}.avatar-edit-badge{width:24px;height:24px;bottom:-3px;right:-3px}.avatar-edit-badge .material-symbols-rounded{font-size:14px}.child-identity-name{font-size:16px}.child-identity-summary{gap:5px;font-size:11px}.child-identity-edit{min-width:48px;min-height:36px;padding:7px 9px;font-size:12px}.child-identity-edit-fields{grid-template-columns:minmax(116px,1fr) auto;gap:7px}.child-identity-edit-fields input{min-height:38px;padding:7px;font-size:12px}.child-invite-card{flex-direction:column;align-items:flex-start;gap:12px}.child-invite-actions{width:100%}.child-invite-actions .button{flex:1;justify-content:center}.academy-add-modal-backdrop{align-items:end;padding:0}.academy-add-modal{width:100%;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.academy-add-modal-head h3{font-size:21px}.academy-add-fields{grid-template-columns:minmax(160px,.85fr) minmax(0,1.15fr);gap:9px}.academy-add-fields .academy-add-child,.academy-add-fields .academy-add-category{grid-column:1}.academy-add-fields .academy-info-name,.academy-add-fields .academy-add-phone{grid-column:2}.academy-add-fields .academy-info-address{grid-column:1/-1}.academy-info-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.academy-info-fields .academy-info-name,.academy-info-fields .academy-info-category{grid-column:span 1}.academy-info-fields .academy-info-phone,.academy-info-fields .academy-info-address{grid-column:1/-1}.academy-info-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.academy-info-actions .button{justify-content:center;min-width:0;padding-inline:6px;font-size:12px}.academy-info-actions .button .material-symbols-rounded{font-size:17px}.academy-map,.academy-map iframe{height:170px;min-height:170px}.assignment-options{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px;gap:7px}.assignment-options.cycle-only{grid-template-columns:minmax(0,1fr) 42px}.assignment-options label>span,.assignment-options>div>span{font-size:10px}.assignment-weekdays{flex-wrap:nowrap;gap:3px}.assignment-weekdays button{flex:1 1 0;min-width:0;padding-inline:2px}.assignment-weekdays button:first-child{flex-grow:1.25}}@media (width<=380px){.manage-view .manage-card>div:nth-child(2) p{display:none}.academy-add-fields,.academy-info-fields{grid-template-columns:1fr}.academy-add-fields .academy-add-child,.academy-add-fields .academy-add-category,.academy-add-fields .academy-add-phone,.academy-add-fields .academy-info-name,.academy-add-fields .academy-info-address,.academy-info-fields .academy-info-name,.academy-info-fields .academy-info-category,.academy-info-fields .academy-info-phone,.academy-info-fields .academy-info-address{grid-column:auto}.assignment-options{grid-template-columns:1fr 42px}.assignment-options>div{grid-column:1/-1}.assignment-options label{grid-column:1}.assignment-options .assignment-delete{grid-column:2}}.child-schedule-row{grid-template-columns:58px 5px minmax(0,1fr) auto}.child-schedule-row time{letter-spacing:-.035em;white-space:nowrap;font-size:11px}@media (width<=760px){.child-schedule-row{grid-template-columns:54px 4px minmax(0,1fr)}}.manage-view .manage-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.health-dashboard-alert{border-color:var(--brand-border);background:linear-gradient(135deg,#f1f8ff 0%,#fff 72%);gap:12px;padding:16px;display:grid;box-shadow:0 9px 26px #0a64ec12}.health-dashboard-alert>header{grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:11px;display:grid}.health-dashboard-icon{color:#fff;background:var(--brand);border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.health-dashboard-icon .material-symbols-rounded{font-size:24px}.health-dashboard-alert>header>div{gap:2px;min-width:0;display:grid}.health-dashboard-alert>header strong{font-size:16px}.health-dashboard-alert>header small{color:var(--text-secondary);font-size:12px}.health-dashboard-list{gap:7px;display:grid}.health-dashboard-list article{border:1px solid var(--border);background:#ffffffeb;border-radius:13px;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:9px 11px;display:grid}.health-dashboard-list article>i{border-radius:999px;width:5px;height:34px}.health-dashboard-list article>span{gap:3px;min-width:0;display:grid}.health-dashboard-list article strong,.health-dashboard-list article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.health-dashboard-list article strong{font-size:14px}.health-dashboard-list article small{color:var(--text-secondary);font-size:11px}.health-alert-more{color:var(--brand-active);background:0 0;border:0;justify-self:end;padding:3px 0;font-size:12px;font-weight:700}.health-manager{gap:18px;display:grid}.health-profile-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(190px,260px);align-items:center;gap:16px;padding:15px 16px;display:grid}.health-profile-card>div{align-items:center;gap:13px;min-width:0;display:flex}.health-profile-card .child-avatar.large{flex-basis:58px;width:58px;height:58px;font-size:34px}.health-profile-card>div>span{gap:3px;min-width:0;display:grid}.health-profile-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.health-profile-card small{color:var(--text-secondary);font-size:13px}.health-profile-card label{gap:5px;display:grid}.health-profile-card label>span{color:var(--text-secondary);font-size:12px;font-weight:700}.health-profile-card input{width:100%;min-height:42px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:10px;padding:8px 10px}.health-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.health-summary-grid article{background:var(--surface);border:1px solid var(--border);border-radius:14px;align-content:center;gap:6px;min-height:88px;padding:13px 15px;display:grid}.health-summary-grid article:nth-child(2){background:#fff7ed;border-color:#fed7aa}.health-summary-grid article:nth-child(3){background:#eff6ff;border-color:#bfdbfe}.health-summary-grid span{color:var(--text-secondary);font-size:12px;font-weight:700}.health-summary-grid strong{font-size:25px}.health-summary-grid strong small{color:var(--text-muted);font-size:14px}.health-check-groups{gap:14px;display:grid}.health-check-group{background:var(--canvas);border:1px solid var(--border);border-radius:17px;overflow:hidden}.health-check-group-trigger{width:100%;min-height:78px;color:var(--ink);background:var(--surface);text-align:left;border:0;grid-template-columns:42px minmax(0,1fr) auto 24px;align-items:center;gap:11px;padding:14px 16px;display:grid}.health-check-group.open .health-check-group-trigger{border-bottom:1px solid var(--border)}.health-check-group-trigger:hover{background:#f5f7fb}.health-check-group-icon{width:42px;height:42px;color:var(--brand-active);background:var(--brand-soft);border-radius:12px;place-items:center;display:grid}.health-check-group-icon .material-symbols-rounded{font-size:22px}.health-check-group-copy{gap:4px;min-width:0;display:grid}.health-check-group-copy strong{font-size:16px}.health-check-group-copy small{color:var(--text-secondary);font-size:12px;font-weight:500;line-height:1.45}.health-check-group-count{min-height:30px;color:var(--brand-active);background:var(--brand-soft);border-radius:999px;flex:none;align-items:center;padding:5px 9px;font-size:12px;font-weight:800;display:inline-flex}.health-check-group-trigger>.material-symbols-rounded:last-child{color:var(--text-muted);font-size:22px;transition:transform .18s}.health-check-group.open .health-check-group-trigger>.material-symbols-rounded:last-child{transform:rotate(180deg)}.health-check-list{display:grid}.health-check-row{border-top:1px solid var(--border);grid-template-columns:38px minmax(0,1fr) minmax(142px,auto);align-items:center;gap:12px;min-width:0;min-height:86px;padding:12px 14px;display:grid}.health-check-row:first-child{border-top:0}.health-check-row.completed{background:#fbfffd}.health-check-toggle{color:#0000;background:var(--canvas);border:2px solid var(--border-strong);border-radius:11px;place-items:center;width:34px;height:34px;padding:0;display:grid}.health-check-row.completed .health-check-toggle{color:#fff;background:#16815b;border-color:#16815b}.health-check-toggle.auto-completed:disabled{cursor:default;opacity:1}.health-check-toggle .material-symbols-rounded{font-size:20px}.health-check-copy{gap:3px;min-width:0;display:grid}.health-check-copy>span{gap:5px;display:flex}.health-check-copy em{width:fit-content;color:var(--brand-active);background:var(--brand-soft);border-radius:6px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:800}.health-check-copy em.optional{color:#6d4c0d;background:#fff7dc}.health-check-copy strong{font-size:14px}.health-check-copy small{color:var(--text-secondary);font-size:11px;line-height:1.4}.health-check-copy p{color:var(--text-muted);font-size:11px;line-height:1.4}.health-check-state{justify-items:end;gap:7px;min-width:142px;display:grid}.health-status{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;width:fit-content;min-height:27px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.health-status.complete{color:#067647;background:#ecfdf3}.health-status.due{color:#b54708;background:#fff1dc}.health-status.upcoming{color:#08469f;background:#e7f0ff}.health-status.overdue{color:#b42318;background:#fff1f0}.health-status.muted{color:var(--text-secondary);background:var(--surface-strong)}.health-check-state label{align-items:center;gap:6px;display:flex}.health-check-state label>span{color:var(--text-secondary);font-size:10px;font-weight:700}.health-check-state input{width:126px;min-height:34px;color:var(--ink);background:var(--canvas);border:1px solid var(--border);border-radius:8px;padding:5px 7px;font-size:11px}.health-auto-completed{color:#16815b;white-space:nowrap;align-items:center;gap:3px;font-size:10px;font-weight:700;display:inline-flex}.health-auto-completed .material-symbols-rounded{font-size:14px}.health-empty{min-height:160px;color:var(--text-secondary);background:var(--surface);border:1px dashed var(--brand-border);text-align:center;border-radius:16px;align-content:center;place-items:center;gap:7px;padding:20px;display:grid}.health-empty .material-symbols-rounded{color:var(--brand);font-size:30px}.health-empty strong{color:var(--ink);font-size:16px}.health-empty p{font-size:13px}.health-reference-note{color:var(--text-secondary);border:1px solid var(--border);background:#f8f9fb;border-radius:14px;grid-template-columns:36px minmax(0,1fr);gap:11px;padding:14px;display:grid}.health-reference-note>.material-symbols-rounded{width:36px;height:36px;color:var(--brand-active);background:var(--brand-soft);border-radius:10px;place-items:center;font-size:20px;display:grid}.health-reference-note>div{gap:4px;display:grid}.health-reference-note strong{color:var(--ink);font-size:13px}.health-reference-note p{font-size:11px;line-height:1.55}.health-reference-note span{flex-wrap:wrap;gap:10px;margin-top:3px;display:flex}.health-reference-note a{color:var(--brand-active);text-underline-offset:3px;font-size:11px;font-weight:700;text-decoration:underline}@media (width<=760px){.manage-view .manage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.health-dashboard-alert>header{grid-template-columns:42px minmax(0,1fr) 36px}.health-dashboard-alert>header .button{grid-column:1/-1;justify-content:center;width:100%}.health-dashboard-list article{grid-template-columns:4px minmax(0,1fr)}.health-dashboard-list article>.health-status{grid-column:2;justify-self:start}.health-profile-card{grid-template-columns:1fr}.health-summary-grid{gap:6px}.health-summary-grid article{min-height:78px;padding:10px}.health-summary-grid span{font-size:10px}.health-summary-grid strong{font-size:21px}.health-check-group-trigger{grid-template-columns:38px minmax(0,1fr) auto 20px;gap:8px;padding:12px}.health-check-group-icon{border-radius:11px;width:38px;height:38px}.health-check-group-copy strong{font-size:14px}.health-check-group-copy small{font-size:10px}.health-check-group-count{min-height:27px;padding:4px 7px;font-size:10px}.health-check-row{grid-template-columns:34px minmax(0,1fr);align-items:start;gap:10px;padding:12px}.health-check-state{grid-column:2;justify-items:start;min-width:0}.health-check-state label{justify-content:space-between;width:100%}.health-check-state input{width:min(150px,55%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.journal-sheet>.journal-section:last-of-type{display:none}.journal-launch small{font-size:0}.journal-launch small:after{content:"오늘 느낀 감정과 해낸 일을 글로 남겨요.";font-size:14px}.dashboard-progress-list .dashboard-empty{grid-column:1/-1;width:100%}.academy-info-fields select{width:100%;min-height:42px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:10px;padding:8px 10px}.academy-add-modal{width:min(720px,100%)}.academy-add-tuition{background:var(--surface);border:1px solid var(--border);border-radius:14px;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px;display:grid}.academy-add-tuition>label,.academy-tuition-list label{gap:5px;min-width:0;display:grid}.academy-add-tuition label>span,.academy-tuition-list label>span{color:var(--text-secondary);font-size:11px;font-weight:700}.academy-add-tuition input,.academy-add-tuition select,.academy-tuition-list input,.academy-tuition-list select{width:100%;min-height:42px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:10px;padding:8px 10px}.academy-tuition-heading{grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:12px;display:flex}.academy-tuition-heading strong{font-size:14px}.academy-tuition-heading small{color:var(--text-muted);font-size:11px;font-weight:400}.academy-tuition-manager{background:#fffaf0;border:1px solid #f5dba4;border-radius:14px;gap:10px;padding:13px;display:grid}.academy-tuition-list{gap:8px;display:grid}.academy-tuition-list article{background:#ffffffe6;border:1px solid #efe2c6;border-radius:12px;grid-template-columns:minmax(88px,.65fr) repeat(3,minmax(0,1fr));align-items:end;gap:8px;padding:10px;display:grid}.academy-tuition-child{min-height:42px;color:var(--ink);align-items:center;gap:7px;font-size:13px;font-weight:700;display:inline-flex}.academy-tuition-child i{border-radius:50%;flex:0 0 8px;width:8px;height:8px}.tuition-dashboard-alert{background:linear-gradient(135deg,#fff8e8 0%,#fff 72%);border-color:#f3d393;gap:12px;padding:16px;display:grid;box-shadow:0 9px 26px #9d6c0014}.tuition-dashboard-alert>header{grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:11px;display:grid}.tuition-dashboard-icon{color:#fff;background:#b77900;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.tuition-dashboard-icon .material-symbols-rounded{font-size:24px}.tuition-dashboard-alert>header>div{gap:2px;min-width:0;display:grid}.tuition-dashboard-alert>header strong{font-size:16px}.tuition-dashboard-alert>header small{color:var(--text-secondary);font-size:12px}.tuition-dashboard-list{gap:7px;display:grid}.tuition-dashboard-list article{border:1px solid var(--border);background:#ffffffeb;border-radius:13px;grid-template-columns:5px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:9px 11px;display:grid}.tuition-dashboard-list article>i{border-radius:999px;width:5px;height:34px}.tuition-dashboard-list article>span{gap:3px;min-width:0;display:grid}.tuition-dashboard-list article strong,.tuition-dashboard-list article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tuition-dashboard-list article strong{font-size:14px}.tuition-dashboard-list article small{color:var(--text-secondary);font-size:11px}.tuition-dashboard-list article em{color:#8a5400;white-space:nowrap;background:#fff0c9;border-radius:999px;align-items:center;width:fit-content;min-height:27px;padding:4px 8px;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.tuition-alert-more{color:#8a5400;background:0 0;border:0;justify-self:end;padding:3px 0;font-size:12px;font-weight:700}@media (width<=760px){.academy-add-tuition{grid-template-columns:1fr}.academy-tuition-heading{flex-direction:column;align-items:flex-start;gap:3px}.academy-tuition-list article{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.academy-tuition-child{grid-column:1/-1;min-height:auto}.academy-tuition-list article label:last-child{grid-column:1/-1}.tuition-dashboard-alert>header{grid-template-columns:42px minmax(0,1fr) 36px}.tuition-dashboard-alert>header .button{grid-column:1/-1;justify-content:center;width:100%}.tuition-dashboard-list article{grid-template-columns:4px minmax(0,1fr)}.tuition-dashboard-list article>em{grid-column:2;justify-self:start}}.journal-archive{gap:16px;padding:20px;display:grid}.journal-archive-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.journal-archive-head h3{font-size:20px}.journal-archive-head p{color:var(--text-secondary);margin-top:4px;font-size:14px}.journal-view-toggle{background:var(--surface);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.journal-view-toggle button{min-height:38px;color:var(--text-secondary);white-space:nowrap;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:5px;padding:7px 11px;font-size:13px;font-weight:700;display:inline-flex}.journal-view-toggle button.active{color:var(--brand-active);background:var(--canvas);box-shadow:0 1px 5px #17171914}.journal-view-toggle .material-symbols-rounded{font-size:18px}.journal-calendar-wrap{gap:9px;width:min(680px,100%);margin-inline:auto;display:grid}.journal-calendar-nav{justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.journal-calendar-nav strong{font-size:16px}.journal-calendar-nav .icon-button{width:38px;height:38px}.journal-calendar-weekdays,.journal-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.journal-calendar-weekdays span{color:var(--text-muted);text-align:center;padding:5px 0;font-size:12px;font-weight:700}.journal-calendar-grid button{min-width:0;min-height:58px;color:var(--ink);background:var(--canvas);border:1px solid var(--border);border-radius:13px;align-content:center;place-items:center;gap:1px;padding:5px 2px;font-size:13px;display:grid}.journal-calendar-grid button b{font-size:20px;line-height:1}.journal-calendar-grid button.outside{color:var(--text-muted);background:var(--surface);opacity:.52}.journal-calendar-grid button.today>span{color:var(--brand-active);font-weight:800}.journal-calendar-grid button.has-entry{background:var(--brand-soft);border-color:var(--brand-border);cursor:pointer;opacity:1}.journal-calendar-grid button.has-entry:hover,.journal-calendar-grid button.selected{border-color:var(--brand);box-shadow:inset 0 0 0 1px var(--brand)}.journal-calendar-grid button:disabled{cursor:default}.journal-archive-list{gap:8px;display:grid}.journal-list-pagination{justify-content:center;align-items:center;gap:10px;min-height:38px;display:flex}.journal-list-pagination strong{min-width:42px;color:var(--text-secondary);text-align:center;font-size:12px}.journal-list-pagination .icon-button{border-radius:10px;flex-basis:34px;width:34px;height:34px;padding:6px}.journal-list-pagination .icon-button:disabled{color:var(--text-muted);background:var(--surface);opacity:.46;cursor:not-allowed}.journal-list-entry{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.journal-list-entry.active{background:var(--brand-soft);border-color:var(--brand-border)}.journal-list-entry>button{width:100%;min-height:68px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:52px 44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.journal-list-entry>button:hover{background:var(--brand-soft)}.journal-list-entry>button time{color:var(--text-secondary);text-align:center;font-size:13px;font-weight:700}.journal-list-emotion{background:var(--canvas);border-radius:13px;place-items:center;width:44px;height:44px;font-size:24px;display:grid}.journal-list-copy{gap:3px;min-width:0;display:grid}.journal-list-copy strong{font-size:14px}.journal-list-copy small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.journal-archive-list .material-symbols-rounded{color:var(--text-muted);font-size:20px}.journal-list-detail{border-top:1px solid var(--brand-border);background:#ffffffc7;gap:8px;padding:13px 14px 15px 116px;display:grid}.journal-list-detail>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.6}.journal-entry-detail{background:linear-gradient(135deg, var(--brand-soft), #fff);border:1px solid var(--brand-border);border-radius:16px;grid-template-columns:52px minmax(0,1fr);gap:13px;padding:15px;display:grid}.journal-entry-emotion{background:#fff;border-radius:16px;place-items:center;width:52px;height:52px;font-size:29px;display:grid}.journal-entry-detail>div:last-child{gap:6px;min-width:0;display:grid}.journal-entry-detail span{color:var(--brand-active);font-size:12px;font-weight:700}.journal-entry-detail p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.6}.journal-entry-tags{flex-wrap:wrap;gap:5px;display:flex}.journal-entry-tags small{color:var(--text-secondary);background:#ffffffd1;border-radius:999px;padding:4px 7px;font-size:11px}.journal-archive-empty{min-height:180px;color:var(--text-secondary);background:var(--surface);border:1px dashed var(--border-strong);text-align:center;border-radius:16px;align-content:center;place-items:center;gap:7px;padding:24px;display:grid}.journal-archive-empty>span{font-size:32px}.journal-archive-empty strong{color:var(--ink);font-size:16px}.journal-archive-empty p{font-size:13px}@media (width>=820px) and (width<=1440px) and (aspect-ratio>=4/3){.app-shell:has(.child-tablet-layout){grid-template-rows:var(--header-height) minmax(0, 1fr);height:100dvh;min-height:100dvh;overflow:hidden}.app-shell:has(.child-tablet-layout) .main-area{height:calc(100dvh - var(--header-height));min-height:0;overflow:hidden}.app-shell:has(.child-tablet-layout) .content-shell{flex:auto;min-height:0;padding:12px 0 6px;overflow:hidden}.app-shell:has(.child-tablet-layout) .main-area>.moaon-copyright{padding:3px 12px 7px}.child-link-shell:has(.child-tablet-layout){height:100dvh;min-height:100dvh;overflow:hidden}.child-link-shell:has(.child-tablet-layout) .child-link-content{height:100%;min-height:0;padding:12px 0 6px;overflow:hidden}.child-link-shell:has(.child-tablet-layout)>.moaon-copyright{padding:3px 12px 7px}.child-mode{flex-direction:column;gap:12px;height:100%;min-height:0;display:flex}.child-mode .child-day-title{flex:none;padding-bottom:0}.child-tablet-layout{flex:auto;grid-template-columns:minmax(0,2.75fr) minmax(232px,1fr);align-items:stretch;gap:16px;min-width:0;min-height:0;display:grid}.child-tablet-area-a{grid-template-rows:minmax(0,.82fr) minmax(0,1.18fr);gap:16px;min-width:0;min-height:0;display:grid}.child-tablet-school-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;min-width:0;display:grid}.child-tablet-school-grid .school-day-card{overscroll-behavior:contain;align-content:start;gap:12px;height:100%;min-height:0;padding:16px;overflow-y:auto}.child-tablet-school-grid .school-day-card>header{grid-template-columns:40px minmax(0,1fr) auto;gap:9px}.child-tablet-school-grid .school-day-icon{border-radius:12px;width:40px;height:40px}.child-tablet-school-grid .school-day-card>header strong{font-size:15px}.child-tablet-school-grid .school-day-card>header small{font-size:11px}.child-tablet-school-grid .school-sync-badge{padding:5px 7px;font-size:9px}.child-tablet-school-grid .school-day-columns>section{padding:11px}.child-tablet-school-grid .meal-allergy-alert{padding:9px 10px}.child-tablet-school-grid .meal-allergy-alert strong{font-size:11px}.child-tablet-school-grid .meal-allergy-alert small{font-size:9px}.child-tablet-area-a .child-day-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;height:100%;min-height:0}.child-tablet-area-a .child-schedule-card,.child-tablet-area-a .child-task-card{min-width:0;height:100%;min-height:0;padding:16px;overflow:hidden}.child-tablet-area-a .child-schedule-list,.child-tablet-area-a .big-task-list{overscroll-behavior:contain;scrollbar-width:thin;flex:auto;align-content:start;min-height:0;padding-right:4px;overflow-y:auto}.child-tablet-area-a .child-schedule-row{grid-template-rows:auto auto;grid-template-columns:58px 4px minmax(0,1fr) auto;gap:2px 8px}.child-tablet-area-a .child-schedule-row time,.child-tablet-area-a .child-schedule-row i{grid-row:1/span 2}.child-tablet-area-a .child-schedule-row>div{grid-area:1/3/span 2;min-width:0}.child-tablet-area-a .child-schedule-row>span{grid-area:1/4/span 2;place-self:center end}.child-tablet-area-b{align-self:stretch;min-width:0;height:100%;min-height:0}.journal-archive-tablet{grid-template-rows:repeat(5,auto);align-content:start;gap:9px;min-width:0;height:100%;min-height:0;padding:14px;position:static;overflow:hidden}.journal-archive-tablet .journal-archive-head{align-items:flex-start;gap:9px}.journal-archive-tablet .journal-archive-head>div{min-width:0}.journal-archive-tablet .journal-archive-head h3{font-size:18px}.journal-archive-tablet .journal-archive-head p{font-size:11px;line-height:1.45}.journal-tablet-create{border-radius:10px;flex:none;min-height:34px;padding:6px 9px;font-size:11px}.journal-tablet-create .material-symbols-rounded{font-size:16px}.journal-archive-tablet .journal-calendar-wrap{gap:3px}.journal-archive-tablet .journal-calendar-nav{min-height:30px}.journal-archive-tablet .journal-calendar-nav strong{font-size:13px}.journal-archive-tablet .journal-calendar-nav .icon-button{border-radius:8px;flex-basis:28px;width:28px;height:28px;padding:4px}.journal-archive-tablet .journal-calendar-weekdays,.journal-archive-tablet .journal-calendar-grid{gap:2px}.journal-archive-tablet .journal-calendar-weekdays span{padding-block:1px;font-size:9px}.journal-archive-tablet .journal-calendar-grid button{border-radius:8px;min-height:34px;padding:1px;font-size:9px}.journal-archive-tablet .journal-calendar-grid button b{font-size:13px}.journal-tablet-list-head{justify-content:space-between;align-items:center;gap:8px;padding-top:2px;display:flex}.journal-tablet-list-head strong{font-size:14px}.journal-tablet-list-head small{color:var(--text-muted);font-size:10px}.journal-archive-tablet .journal-archive-list{grid-auto-rows:54px;align-content:start;gap:6px;min-height:0;padding-right:0;overflow:visible}.journal-archive-tablet .journal-list-entry{border-radius:11px;height:54px}.journal-archive-tablet .journal-list-entry>button{grid-template-columns:38px 34px minmax(0,1fr) 18px;gap:6px;height:54px;min-height:54px;padding:7px 6px}.journal-archive-tablet .journal-list-entry>button time{font-size:10px}.journal-archive-tablet .journal-list-emotion{border-radius:10px;width:34px;height:34px;font-size:19px}.journal-archive-tablet .journal-list-copy strong{font-size:12px}.journal-archive-tablet .journal-list-copy small{font-size:10px}.journal-archive-tablet .journal-archive-empty{min-height:120px;padding:16px}.journal-archive-tablet .journal-list-pagination{min-height:32px}.journal-archive-tablet .journal-list-pagination .icon-button{flex-basis:30px;width:30px;height:30px;padding:4px}}.journal-detail-popup-backdrop{z-index:220;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#17171985;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.journal-detail-popup{border-radius:24px;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;width:min(620px,100vw - 48px);max-height:min(82dvh,760px);padding:22px;display:grid;overflow:hidden;box-shadow:0 30px 90px #1717194d}.journal-detail-popup>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.journal-detail-popup>header>div{gap:4px;min-width:0;display:grid}.journal-detail-popup>header>div>span{color:var(--brand-active);font-size:12px;font-weight:700}.journal-detail-popup>header h2{letter-spacing:-.035em;align-items:center;gap:9px;font-size:24px;display:flex}.journal-detail-popup>header h2 b{font-size:29px;line-height:1}.journal-detail-popup>header p{color:var(--text-secondary);font-size:13px}.journal-detail-popup-body{overscroll-behavior:contain;align-content:start;gap:14px;min-height:0;padding-right:4px;display:grid;overflow-y:auto}.journal-detail-note,.journal-detail-section{background:var(--surface);border:1px solid var(--border);border-radius:15px;gap:8px;padding:14px;display:grid}.journal-detail-note>strong,.journal-detail-section>strong{color:var(--ink);font-size:13px}.journal-detail-note>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.65}.journal-detail-task-list{gap:7px;display:grid}.journal-detail-task-list>span{background:var(--canvas);border:1px solid var(--border);border-radius:11px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:2px 8px;min-width:0;padding:8px 9px;display:grid}.journal-detail-task-list>span .material-symbols-rounded{color:var(--text-muted);grid-row:1/span 2;font-size:20px}.journal-detail-task-list>span.completed .material-symbols-rounded{color:var(--brand)}.journal-detail-task-list>span b{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.journal-detail-task-list>span small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.journal-detail-media{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.journal-detail-media img{object-fit:cover;border-radius:12px;width:100%;height:116px;display:block}.journal-detail-media audio{grid-column:1/-1;width:100%}.journal-detail-popup>footer{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding-top:2px;display:flex}.journal-detail-popup>footer .button{min-height:40px}@media (width<=760px){.journal-archive{border-radius:18px;gap:14px;padding:16px}.journal-archive-head{flex-direction:column;align-items:stretch;gap:12px}.journal-archive-head h3{font-size:18px}.journal-archive-head p{font-size:13px;line-height:1.45}.journal-view-toggle{width:100%}.journal-view-toggle button{min-height:42px}.journal-calendar-weekdays,.journal-calendar-grid{gap:4px}.journal-calendar-grid button{border-radius:11px;min-height:48px;font-size:12px}.journal-calendar-grid button b{font-size:18px}.journal-entry-detail{grid-template-columns:44px minmax(0,1fr);gap:10px;padding:13px}.journal-entry-emotion{border-radius:13px;width:44px;height:44px;font-size:25px}.portfolio-entry-summary{grid-template-columns:44px 38px minmax(0,1fr) 22px;gap:6px;padding:9px 2px}.portfolio-entry-summary small{grid-column:3/4}.portfolio-entry-summary>.material-symbols-rounded{grid-area:1/4/span 2}.portfolio-entry-detail{padding:13px 12px 15px}.journal-list-entry>button{grid-template-columns:45px 40px minmax(0,1fr) 22px;gap:7px;padding:9px 8px}.journal-list-emotion{border-radius:12px;width:40px;height:40px;font-size:22px}.journal-list-detail{padding:12px 13px 14px}.journal-comment-form .button{justify-self:stretch;width:100%}}@media (width<=380px){.journal-calendar-weekdays,.journal-calendar-grid{gap:3px}.journal-calendar-grid button{border-radius:10px;min-height:44px}.journal-calendar-grid button b{font-size:16px}}.admin-loading,.admin-login-shell{background:linear-gradient(145deg,#f3f6fb 0%,#fff 52%,#eef4ff 100%);place-items:center;min-height:100dvh;padding:24px;display:grid}.admin-loading{color:var(--text-secondary);align-content:center;gap:12px;font-size:14px}.admin-loading .material-symbols-rounded{color:var(--brand);font-size:28px;animation:1s linear infinite admin-spin}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-login-card{background:#fffffff0;border:1px solid #dce4f1;border-radius:28px;justify-items:start;width:min(440px,100%);padding:38px;display:grid;box-shadow:0 28px 70px #16305e24}.admin-lock{color:#fff;background:var(--brand);border-radius:16px;justify-content:center;align-items:center;width:50px;height:50px;display:inline-flex}.admin-lock .material-symbols-rounded{font-size:26px}.admin-kicker{color:var(--brand-active);letter-spacing:.12em;font-size:11px;font-weight:800;display:inline-block}.admin-login-card .admin-kicker{margin-top:22px}.admin-login-card h1{letter-spacing:-.045em;margin-top:10px;font-size:34px;line-height:1.18}.admin-login-card>p{color:var(--text-secondary);margin-top:12px;font-size:14px;line-height:1.6}.admin-login-card form{gap:14px;width:100%;margin-top:28px;display:grid}.admin-login-card label{gap:7px;display:grid}.admin-login-card label span{color:var(--text-secondary);font-size:12px;font-weight:700}.admin-login-card input{width:100%;min-height:46px;color:var(--ink);border:1px solid var(--border-strong);background:#fff;border-radius:11px;padding:10px 12px}.admin-login-card>a{color:var(--text-secondary);text-underline-offset:3px;margin-top:18px;font-size:13px;text-decoration:underline}.admin-form-error{color:#b42318;background:#fff2f0;border-radius:9px;padding:9px 11px;font-size:13px}.admin-primary-action,.admin-export-button,.admin-status-button,.admin-period-active,.admin-folder-back{border:1px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:9px 13px;font-size:13px;font-weight:700;display:inline-flex}.admin-primary-action{color:#fff;background:var(--brand);width:100%}.admin-primary-action:hover:not(:disabled){background:var(--brand-hover)}.admin-primary-action:disabled{opacity:.55;cursor:not-allowed}.admin-export-button,.admin-folder-back{color:var(--ink);border-color:var(--border);background:#fff}.admin-export-button:hover,.admin-folder-back:hover{color:var(--brand-active);border-color:var(--brand-border);background:var(--brand-soft)}.admin-app{min-height:100dvh;color:var(--ink);background:#f6f8fc}.admin-topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:12px max(24px,50vw - 696px);display:flex}.admin-brand{color:var(--ink);letter-spacing:-.075em;align-items:baseline;gap:1px;font-size:23px;font-weight:800;display:inline-flex}.admin-brand b{color:var(--brand)}.admin-brand em{color:var(--text-secondary);letter-spacing:.13em;margin-left:8px;font-size:10px;font-style:normal;font-weight:800}.admin-topbar>div{align-items:center;gap:12px;display:flex}.admin-topbar>div>span{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.admin-topbar>div>span .material-symbols-rounded{color:var(--brand);font-size:18px}.admin-topbar button{min-height:34px;color:var(--text-secondary);background:0 0;border:0;align-items:center;gap:5px;padding:7px 9px;font-size:12px;display:inline-flex}.admin-topbar button:hover{color:var(--brand-active)}.admin-main{width:min(1440px,100% - 48px);margin:0 auto;padding:42px 0 60px}.admin-page-head{justify-content:space-between;align-items:end;gap:24px;display:flex}.admin-page-head h1{letter-spacing:-.06em;margin-top:8px;font-size:clamp(34px,4vw,46px);line-height:1}.admin-page-head p{color:var(--text-secondary);margin-top:11px;font-size:15px}.admin-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:28px;display:grid}.admin-summary-grid article{border:1px solid var(--border);background:#fff;border-radius:16px;gap:5px;padding:18px;display:grid}.admin-summary-grid span{color:var(--text-secondary);font-size:12px;font-weight:700}.admin-summary-grid strong{letter-spacing:-.04em;font-size:28px;line-height:1}.admin-summary-grid small{color:var(--text-muted);font-size:12px}.admin-workspace{border:1px solid var(--border);background:#fff;border-radius:20px;grid-template-columns:minmax(0,1fr) minmax(0,3fr);min-height:640px;margin-top:20px;display:grid;overflow:hidden;box-shadow:0 12px 36px #1835670d}.admin-member-list{border-right:1px solid var(--border);grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.admin-list-head{border-bottom:1px solid var(--border);gap:14px;padding:18px;display:grid}.admin-list-head>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-list-head h2{font-size:18px}.admin-list-head>div>span{color:var(--text-muted);font-size:12px}.admin-search{background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:7px;min-height:38px;padding:7px 9px;display:flex}.admin-search .material-symbols-rounded{color:var(--text-muted);font-size:18px}.admin-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.admin-member-scroll{min-height:0;overflow:auto}.admin-member-row{width:100%;color:var(--ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #eef1f5;grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:10px;padding:14px 16px;display:grid}.admin-member-row:hover,.admin-member-row.active{background:#f2f6ff}.admin-member-row.active{box-shadow:inset 3px 0 0 var(--brand)}.admin-member-row.owner{background:#f8fbff}.admin-member-row.owner.active{background:#f2f6ff}.admin-member-avatar{width:36px;height:36px;color:var(--brand-active);background:var(--brand-soft);border-radius:11px;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:inline-flex}.admin-member-row>span:nth-child(2){gap:2px;min-width:0;display:grid}.admin-member-row strong,.admin-member-row small,.admin-member-row em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-member-row strong{font-size:13px}.admin-member-row small{color:var(--text-secondary);font-size:11px}.admin-member-row em{color:var(--text-muted);font-size:11px;font-style:normal}.admin-member-row>i{color:#16815b;min-width:34px;padding-top:3px;font-size:10px;font-style:normal;font-weight:800}.admin-member-row>i.suspended{color:#b54708}.admin-owner-chip{vertical-align:1px;color:#08469f;background:#e7f0ff;border-radius:5px;margin-left:5px;padding:2px 5px;font-size:9px;font-weight:800;display:inline-flex}.admin-detail-pane{background:#fbfcff;min-width:0;min-height:0;overflow:auto}.admin-detail-loading,.admin-no-family{min-height:100%;color:var(--text-muted);text-align:center;align-content:center;place-items:center;gap:10px;padding:36px;display:grid}.admin-detail-loading .material-symbols-rounded,.admin-no-family .material-symbols-rounded{color:var(--brand);font-size:30px}.admin-no-family>div{max-width:330px}.admin-no-family h2{color:var(--ink);margin-top:8px;font-size:24px}.admin-no-family p{margin-top:9px;font-size:14px;line-height:1.6}.admin-member-detail{flex-direction:column;min-height:100%;display:flex}.admin-member-detail-head{border-bottom:1px solid var(--border);background:#fff;justify-content:space-between;align-items:flex-start;gap:18px;padding:28px 28px 24px;display:flex}.admin-member-detail-head h1{letter-spacing:-.04em;margin-top:8px;font-size:29px}.admin-member-detail-head p{color:var(--text-secondary);margin-top:7px;font-size:12px}.admin-detail-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.admin-status-button.active{color:#b54708;background:#fffaeb;border-color:#fedf89}.admin-status-button.suspended{color:#067647;background:#ecfdf3;border-color:#abefc6}.admin-owner-label{vertical-align:middle;color:#08469f;letter-spacing:0;background:#e7f0ff;border-radius:7px;margin-left:8px;padding:4px 7px;font-size:11px;font-style:normal;font-weight:800;display:inline-flex}.admin-owner-status{color:#08469f;background:#e7f0ff;border:1px solid #b7d1ff;border-radius:11px;align-items:center;gap:6px;min-height:42px;padding:9px 12px;font-size:12px;font-weight:800;display:inline-flex}.admin-owner-status .material-symbols-rounded{font-size:17px}.admin-family-switcher{border-bottom:1px solid var(--border);background:#fff;gap:6px;padding:12px 28px;display:flex}.admin-family-switcher button{min-height:32px;color:var(--text-secondary);background:var(--surface);border:0;border-radius:8px;padding:7px 10px;font-size:12px}.admin-family-switcher button.active{color:var(--brand-active);background:var(--brand-soft);font-weight:700}.admin-folder-layout{flex:1;grid-template-columns:minmax(180px,.33fr) minmax(0,.67fr);min-height:390px;display:grid}.admin-folder-tree{border-right:1px solid var(--border);background:#f4f7fc;align-content:start;gap:5px;padding:16px 10px;display:grid}.admin-folder-tree>button,.admin-folder-tree-group>button{width:100%;min-height:36px;color:var(--text-secondary);text-align:left;background:0 0;border:0;border-radius:8px;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 8px;font-size:12px;display:grid}.admin-folder-tree button:hover,.admin-folder-tree button.active{color:var(--brand-active);background:#fff;box-shadow:0 1px 4px #17305812}.admin-folder-tree .material-symbols-rounded{font-size:18px}.admin-folder-tree button>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-folder-tree button>i{color:var(--brand-active);background:var(--brand-soft);border-radius:5px;padding:2px 5px;font-size:9px;font-style:normal;font-weight:700}.admin-folder-tree-group{gap:2px;padding-top:10px;display:grid}.admin-folder-tree-group>span{color:var(--text-muted);letter-spacing:.04em;align-items:center;gap:5px;padding:0 8px 5px;font-size:10px;font-weight:800;display:flex}.admin-folder-tree-group>span .material-symbols-rounded{font-size:15px}.admin-folder-content{background:#fff;min-width:0;padding:24px}.admin-detail-heading{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.admin-detail-heading>div>span{color:var(--brand-active);letter-spacing:.06em;font-size:11px;font-weight:800}.admin-detail-heading h2{letter-spacing:-.045em;margin-top:6px;font-size:25px}.admin-detail-heading p{color:var(--text-secondary);margin-top:7px;font-size:12px}.admin-data-badge{min-height:30px;color:var(--brand-active);background:var(--brand-soft);border-radius:8px;align-items:center;gap:4px;padding:6px 8px;font-size:11px;font-weight:700;display:inline-flex}.admin-data-badge .material-symbols-rounded{font-size:15px}.admin-guardian-grid,.admin-child-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:22px;display:grid}.admin-guardian-grid article,.admin-child-profile-grid article{background:#f8faff;border:1px solid #e8edf7;border-radius:11px;gap:5px;padding:13px;display:grid}.admin-guardian-grid span,.admin-child-profile-grid span{color:var(--text-muted);font-size:11px}.admin-guardian-grid strong,.admin-child-profile-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.admin-structure-note{background:#f1f6ff;border:1px solid #dceafe;border-radius:12px;align-items:flex-start;gap:10px;margin-top:20px;padding:14px;display:flex}.admin-structure-note>.material-symbols-rounded{color:var(--brand);font-size:21px}.admin-structure-note strong{font-size:13px}.admin-structure-note p{color:var(--text-secondary);margin-top:4px;font-size:12px;line-height:1.5}.admin-period-active{color:var(--brand-active);background:var(--brand-soft);border-color:var(--brand-border);flex:none}.admin-period-active.current{color:#067647;background:#ecfdf3;border-color:#abefc6}.admin-period-editor{grid-template-columns:minmax(0,1fr) minmax(118px,.55fr) minmax(118px,.55fr);gap:8px;margin-top:22px;display:grid}.admin-period-editor label{gap:5px;display:grid}.admin-period-editor span{color:var(--text-secondary);font-size:11px;font-weight:700}.admin-period-editor input{width:100%;min-height:39px;color:var(--ink);border:1px solid var(--border-strong);background:#fff;border-radius:9px;padding:7px 9px;font-size:12px}.admin-period-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.admin-period-summary>div{background:#f8faff;border-radius:10px;align-items:center;gap:7px;padding:11px 9px;display:flex}.admin-period-summary .material-symbols-rounded{color:var(--brand);font-size:18px}.admin-period-summary span{color:var(--text-secondary);font-size:11px}.admin-period-summary b{color:var(--ink)}.admin-folder-child-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:18px;display:grid}.admin-child-folder{min-width:0;color:var(--ink);border:1px solid var(--border);text-align:left;background:#fff;border-radius:11px;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:11px;display:grid}.admin-child-folder:hover{border-color:var(--brand-border);background:var(--brand-soft)}.admin-child-folder>span{width:32px;height:32px;color:var(--brand-active);background:var(--brand-soft);border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.admin-child-folder .material-symbols-rounded{font-size:19px}.admin-child-folder>div{gap:2px;min-width:0;display:grid}.admin-child-folder strong,.admin-child-folder small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-child-folder strong{font-size:12px}.admin-child-folder small{color:var(--text-muted);font-size:10px}.admin-child-folder>.material-symbols-rounded{color:var(--text-muted);font-size:18px}.admin-academy-folder-list{gap:8px;margin-top:20px;display:grid}.admin-academy-folder-list article{border:1px solid var(--border);background:#fff;border-radius:10px;grid-template-columns:34px minmax(0,1fr) minmax(110px,.6fr);align-items:center;gap:9px;padding:11px;display:grid}.admin-academy-folder-icon{color:#86620a;background:#fff7dc;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.admin-academy-folder-icon .material-symbols-rounded{font-size:20px}.admin-academy-folder-list article>div{gap:3px;min-width:0;display:grid}.admin-academy-folder-list strong,.admin-academy-folder-list small,.admin-academy-folder-list article>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-academy-folder-list strong{font-size:12px}.admin-academy-folder-list small,.admin-academy-folder-list article>span:last-child{color:var(--text-muted);font-size:10px}.admin-folder-back{flex:none}.admin-empty-state{min-height:130px;color:var(--text-muted);border:1px dashed var(--border-strong);text-align:center;background:#fbfcff;border-radius:12px;align-content:center;place-items:center;gap:7px;padding:18px;font-size:12px;display:grid}.admin-empty-state .material-symbols-rounded{color:var(--brand);font-size:25px}.admin-save-bar{border-top:1px solid var(--border);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:14px 28px;display:flex}.admin-save-bar>span{color:var(--text-secondary);font-size:12px}.admin-save-bar .admin-primary-action{width:auto;min-width:152px}@media (width<=980px){.admin-main{width:min(100% - 32px,900px);padding-top:28px}.admin-workspace{grid-template-columns:minmax(220px,1fr) minmax(0,3fr)}.admin-folder-layout{grid-template-columns:165px minmax(0,1fr)}.admin-member-detail-head{padding:22px}.admin-folder-content{padding:20px}.admin-save-bar{padding:14px 20px}}@media (width<=720px){.admin-login-shell{padding:16px}.admin-login-card{border-radius:23px;padding:28px 22px}.admin-login-card h1{font-size:30px}.admin-topbar{min-height:60px;padding:10px 16px}.admin-topbar>div>span{display:none}.admin-main{width:100%;padding:26px 16px 42px}.admin-page-head{flex-direction:column;align-items:flex-start;gap:16px}.admin-page-head h1{font-size:36px}.admin-page-head .admin-export-button{width:100%}.admin-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px}.admin-summary-grid article{padding:14px}.admin-workspace{border-radius:16px;min-height:0;display:block;overflow:visible}.admin-member-list{border-right:0;border-bottom:1px solid var(--border);height:296px}.admin-detail-pane{min-height:480px;overflow:visible}.admin-member-detail-head{flex-direction:column;padding:20px 16px}.admin-detail-actions{justify-content:stretch;width:100%}.admin-detail-actions>button{flex:1;padding-inline:8px}.admin-folder-layout{min-height:0;display:block}.admin-folder-tree{border-right:0;border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:12px}.admin-folder-tree>button,.admin-folder-tree-group>button{min-height:34px;padding:7px}.admin-folder-tree-group{display:contents}.admin-folder-tree-group>span{display:none}.admin-folder-content{padding:18px 16px}.admin-detail-heading h2{font-size:22px}.admin-period-editor{grid-template-columns:1fr 1fr}.admin-period-editor label:first-child{grid-column:1/-1}.admin-period-summary,.admin-folder-child-grid{grid-template-columns:1fr}.admin-academy-folder-list article{grid-template-columns:34px minmax(0,1fr)}.admin-academy-folder-list article>span:last-child{grid-column:2}.admin-save-bar{padding:13px 16px}.admin-save-bar>span{display:none}.admin-save-bar .admin-primary-action{width:100%}.admin-guardian-grid,.admin-child-profile-grid{grid-template-columns:1fr}}.child-link-header .button{margin-left:auto}.child-today-summary{grid-template-columns:auto minmax(250px,1fr);min-height:140px}.journal-date-picker{width:fit-content;min-height:38px;color:var(--brand-active);background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:12px;align-items:center;gap:7px;padding:5px 9px;display:inline-flex}.journal-date-picker .material-symbols-rounded{flex:none;font-size:19px}.journal-date-picker input{width:138px;min-width:0;color:var(--brand-active);font:inherit;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:0 0;border:0;outline:0;padding:3px 2px;font-size:13px;font-weight:700}.journal-entry-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;margin-top:4px;display:flex}.journal-entry-actions .button{min-height:36px;padding:7px 10px;font-size:12px}@media (width<=760px){.child-link-header .button{min-width:0;padding-inline:12px;font-size:13px}.child-link-header .button .material-symbols-rounded{font-size:20px}.child-today-summary{grid-template-columns:1fr;gap:12px;min-height:0}.journal-date-picker{min-height:36px}.child-schedule-row{grid-template-rows:auto auto;grid-template-columns:54px 4px minmax(0,1fr) auto}.child-schedule-row>div{grid-area:1/3/span 2;min-width:0}.child-schedule-row>span{grid-area:1/4/span 2;place-self:center end}}.journal-entry-detail{padding:0;display:block;overflow:hidden}.journal-entry-summary{width:100%;min-height:82px;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:52px minmax(0,1fr) 24px;align-items:center;gap:13px;padding:14px 15px;display:grid}.journal-entry-summary:hover{background:#ffffff7a}.journal-entry-summary .journal-entry-emotion{width:52px;height:52px;color:inherit;background:#fff;border-radius:16px;place-items:center;font-size:29px;line-height:1;display:grid}.journal-entry-copy{min-width:0;color:var(--ink);gap:3px;display:grid}.journal-entry-copy small{color:var(--brand-active);font-size:12px;font-style:normal;font-weight:700}.journal-entry-copy strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.journal-entry-copy em{color:var(--text-secondary);font-size:12px;font-style:normal;font-weight:500}.journal-entry-summary>.material-symbols-rounded{color:var(--text-muted);font-size:21px}.journal-entry-body{border-top:1px solid var(--brand-border);background:#ffffffb8;gap:8px;min-width:0;padding:13px 15px 15px 80px;display:grid}.journal-entry-body>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.6}@media (width<=760px){.journal-entry-summary{grid-template-columns:44px minmax(0,1fr) 22px;gap:10px;min-height:74px;padding:12px}.journal-entry-summary .journal-entry-emotion{border-radius:13px;width:44px;height:44px;font-size:25px}.journal-entry-body{padding:12px}}.child-comment-alert{color:var(--ink);border-color:var(--brand-border);background:linear-gradient(135deg,#eef5ff 0%,#fff 76%);gap:11px;padding:14px 15px;display:grid;box-shadow:0 9px 24px #0a64ec14}.child-comment-alert-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.child-comment-alert-head>div{align-items:center;gap:10px;min-width:0;display:flex}.child-comment-alert-head>div>span:last-child{gap:2px;min-width:0;display:grid}.child-comment-alert-head strong{color:var(--brand-active);font-size:15px}.child-comment-alert-head small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.child-comment-alert-icon{color:#fff;background:var(--brand);border-radius:13px;flex:0 0 42px;place-items:center;width:42px;height:42px;display:grid}.child-comment-alert-icon .material-symbols-rounded{font-size:23px}.child-comment-alert-close{width:34px;height:34px;color:var(--text-secondary);border:1px solid var(--border);background:#ffffffc7;border-radius:10px;flex:0 0 34px;place-items:center;padding:0;display:grid}.child-comment-alert-close:hover{color:var(--brand-active);border-color:var(--brand-border)}.child-comment-alert-close .material-symbols-rounded{font-size:20px}.child-comment-alert-list{overscroll-behavior:contain;gap:7px;max-height:224px;padding-right:4px;display:grid;overflow-y:auto}.child-comment-alert-row{border:1px solid var(--border);background:#ffffffe6;border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:70px;padding:10px 11px;display:grid}.child-comment-alert-row>div{gap:3px;min-width:0;display:grid}.child-comment-alert-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.child-comment-alert-row p{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.child-comment-alert-row .button{white-space:nowrap;justify-content:center;justify-self:end;min-width:58px}.child-journal-comments{margin-top:6px;padding-top:12px}.child-journal-comments .journal-comment{background:#fff}@media (width<=760px){.child-comment-alert{gap:10px;padding:12px}.child-comment-alert-row{min-height:68px;padding:9px 10px}}.dashboard-progress-list.by-academy{grid-template-columns:minmax(0,1fr)}.dashboard-progress-list.by-academy .dashboard-progress-row{gap:8px;width:100%;min-height:74px;padding:11px 12px}.dashboard-progress-list.by-academy .dashboard-progress-main{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:9px}.dashboard-progress-list.by-academy .dashboard-progress-mark{border-radius:10px;width:32px;height:32px}.dashboard-progress-list.by-academy .dashboard-progress-mark .material-symbols-rounded{font-size:18px}.dashboard-progress-list.by-academy .dashboard-progress-main strong{font-size:14px}.dashboard-progress-list.by-academy .dashboard-progress-main small{white-space:normal;font-size:12px}.dashboard-progress-list.by-academy .dashboard-progress-main em{padding-top:0;font-size:13px}.dashboard-progress-list.by-academy .dashboard-progress-track{height:6px}.child-schedule-dayoff{color:#b42318;background:#fff5f2;border:1px solid #fecdca;border-radius:12px;align-items:center;gap:10px;min-height:58px;padding:10px 12px;display:flex}.child-schedule-dayoff>.material-symbols-rounded{font-size:22px}.child-schedule-dayoff>span{gap:2px;min-width:0;display:grid}.child-schedule-dayoff strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.child-schedule-dayoff small{color:#b54708;font-size:12px}@media (width<=760px){.schedule-add-tabs{gap:3px}.schedule-add-tabs button{gap:4px;padding-inline:5px;font-size:12px}.schedule-add-tabs .material-symbols-rounded{font-size:16px}.academy-form-grid.one-off-event-basics,.one-off-event-datetime{grid-template-columns:1fr}.day-off-label{font-size:9px}.schedule-datetime-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.schedule-subject-row{grid-template-columns:1fr}.subject-day-list .mixiv-select-trigger{min-height:40px;padding-inline:7px;font-size:12px}.privacy-document-backdrop{align-items:end;padding:0}.privacy-document{width:100%;max-height:94dvh;padding:18px 16px calc(16px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.privacy-document h2{font-size:22px}.privacy-data-groups{grid-template-columns:1fr}.privacy-document-scroll footer{flex-direction:column;align-items:flex-start}}@media (width<=520px){.privacy-consent{grid-template-columns:1fr}.privacy-original-button{justify-content:center;width:100%}.privacy-document-intro{grid-template-columns:30px minmax(0,1fr);padding:12px}}.school-dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:14px;display:grid}.school-day-card{border-color:#dbe8f6;gap:15px;min-width:0;padding:18px;display:grid;overflow:hidden;box-shadow:0 10px 30px #15457112}.school-day-card>header{grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:11px;display:grid}.school-day-card>header>div{gap:3px;min-width:0;display:grid}.school-day-card>header strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.school-day-card>header small{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.school-day-icon{color:#fff;background:linear-gradient(145deg,#21a675,#087f5b);border-radius:14px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 8px 18px #087f5b33}.school-day-icon .material-symbols-rounded{font-size:23px}.school-sync-badge{color:#087f5b;white-space:nowrap;background:#ecfdf3;border:1px solid #abefc6;border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-size:11px;font-weight:800;display:inline-flex}.school-sync-badge i{background:#12b76a;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #12b76a1f}.school-day-empty{min-height:88px;color:var(--text-secondary);background:#f7f9fc;border:1px dashed #cdd7e5;border-radius:15px;justify-content:center;align-items:center;gap:12px;padding:17px;display:flex}.school-day-empty>.material-symbols-rounded{color:#6b86a3;font-size:28px}.school-day-empty>span{gap:3px;display:grid}.school-day-empty strong{color:var(--ink);font-size:14px}.school-day-empty small{font-size:12px;line-height:1.45}.school-day-empty-link{cursor:pointer;text-align:left;width:100%;transition:border-color .18s,background .18s,transform .18s;position:relative}.school-day-empty-link:hover{background:#f1f6fc;border-color:#91a9c4;transform:translateY(-1px)}.school-day-empty-link:focus-visible{outline-offset:2px;outline:3px solid #1267e533}.school-day-empty-arrow{color:var(--brand-active);justify-content:center;align-items:center;margin-left:auto;font-style:normal;display:inline-flex}.school-day-empty-arrow .material-symbols-rounded{font-size:21px}#school-information-settings{scroll-margin-top:16px}.meal-allergy-alert{color:#b42318;background:#fff3f0;border:1px solid #fecdca;border-radius:13px;align-items:center;gap:10px;padding:11px 13px;display:flex}.meal-allergy-alert>.material-symbols-rounded{flex:none;font-size:23px}.meal-allergy-alert>span{gap:2px;display:grid}.meal-allergy-alert strong{font-size:13px}.meal-allergy-alert small{color:#b54708;font-size:11px;font-weight:700}.school-event-strip{color:#4e369b;background:#f5f2ff;border-radius:11px;align-items:center;gap:8px;padding:9px 11px;font-size:12px;font-weight:700;display:flex}.school-event-strip .material-symbols-rounded{font-size:18px}.school-day-columns{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:14px;display:grid}.school-day-columns.single{grid-template-columns:minmax(0,1fr)}.school-day-columns>section{border:1px solid var(--border);background:#fbfcfe;border-radius:14px;align-content:start;gap:9px;min-width:0;padding:13px;display:grid}.school-day-columns h4{color:var(--ink);align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.school-day-columns h4 .material-symbols-rounded{color:var(--brand-active);font-size:18px}.school-day-columns h4 em{color:var(--text-muted);margin-left:auto;font-size:10px;font-style:normal;font-weight:600}.school-meal-card-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.school-meal-card-head h4{flex:1;min-width:0}.school-weekly-meal-button{min-height:30px;color:var(--brand-active);background:var(--brand-soft);white-space:nowrap;border:1px solid #c8d9fb;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:4px;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.school-weekly-meal-button:hover{background:#e7efff;border-color:#9bbaf3}.school-weekly-meal-button .material-symbols-rounded{font-size:15px}.school-timetable{flex-wrap:wrap;gap:6px;display:flex}.school-timetable span{color:#344054;background:#fff;border:1px solid #e3e9f0;border-radius:9px;align-items:center;gap:5px;padding:6px 8px;font-size:11px;font-weight:700;display:inline-flex}.school-timetable b{color:#fff;background:#5a7da0;border-radius:5px;place-items:center;width:17px;height:17px;font-size:10px;display:grid}.school-menu-list{flex-wrap:wrap;gap:6px;display:flex}.school-menu-list>span{color:#344054;background:#fff;border:1px solid #e3e9f0;border-radius:9px;align-items:center;gap:4px;padding:6px 8px;font-size:11px;display:inline-flex}.school-menu-list b{font-weight:700}.school-menu-list>span.warning{color:#b42318;background:#fff3f0;border-color:#fecdca}.school-menu-list>span>.material-symbols-rounded{font-size:14px}.school-menu-list small{color:#b54708;font-size:9px;font-weight:800}.school-no-data{color:var(--text-muted);margin:2px 0;font-size:11px}.calendar-event.school-event{cursor:default;border:0}.school-meal-modal{width:min(680px,100%);max-height:min(90vh,760px)}.school-meal-modal.week{width:min(1180px,100vw - 40px)}.school-meal-week-navigation{background:#f7f9fc;border:1px solid #e3e9f0;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 11px;display:grid}.school-meal-week-navigation button{min-height:36px;color:var(--brand-active);background:#fff;border:1px solid #c8d9fb;border-radius:10px;justify-content:center;align-items:center;gap:3px;padding:7px 10px;font-size:11px;font-weight:800;display:inline-flex}.school-meal-week-navigation button:hover:not(:disabled){background:var(--brand-soft);border-color:#9bbaf3}.school-meal-week-navigation button:disabled{color:var(--text-muted);cursor:wait;background:#f2f4f7;border-color:#e4e7ec}.school-meal-week-navigation button .material-symbols-rounded{font-size:18px}.school-meal-week-navigation>strong{min-width:0;color:var(--ink);text-align:center;font-size:13px}.school-meal-modal-scroll{gap:10px;min-height:0;padding:2px;display:grid;overflow:auto}.school-meal-week-grid{grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch}.school-meal-week-grid .school-meal-modal-status{grid-column:1/-1}.school-meal-modal-status{min-height:180px;color:var(--text-secondary);text-align:center;background:#f7f9fc;border:1px dashed #cdd7e5;border-radius:16px;align-content:center;place-items:center;gap:9px;font-size:13px;font-weight:700;display:grid}.school-meal-modal-status .material-symbols-rounded{color:var(--brand-active);font-size:28px;animation:1.2s linear infinite admin-spin}.school-meal-modal-status.error .material-symbols-rounded{color:#d92d20;animation:none}.school-meal-day{border:1px solid var(--border);background:#fbfcfe;border-radius:15px;align-content:start;gap:10px;min-width:0;padding:14px;display:grid}.school-meal-day.today{background:#f5f8ff;border-color:#b9cff6}.school-meal-day.warning{background:#fffaf8;border-color:#fecdca}.school-meal-day>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.school-meal-day-label{flex-wrap:wrap;align-items:center;gap:5px 7px;min-width:0;display:flex}.school-meal-day-label strong{color:var(--ink);font-size:18px}.school-meal-day-label>span{color:var(--text-secondary);font-size:10px;font-weight:700}.school-meal-day>header small{color:var(--brand-active);background:var(--brand-soft);border-radius:999px;padding:3px 6px;font-size:9px;font-weight:800}.school-meal-detail-button{min-height:28px;color:var(--brand-active);background:var(--brand-soft);border:1px solid #c8d9fb;border-radius:8px;flex:none;padding:5px 8px;font-size:10px;font-weight:800}.school-meal-detail-button:hover:not(:disabled){background:#e7efff;border-color:#9bbaf3}.school-meal-detail-button:disabled{color:var(--text-muted);cursor:default;background:#f2f4f7;border-color:#e4e7ec}.school-meal-calories{width:fit-content;color:var(--text-muted);font-size:10px;font-style:normal;font-weight:700}.school-meal-modal .school-menu-list{flex-direction:column;align-items:stretch}.school-meal-modal .school-menu-list>span{align-items:flex-start;width:100%;min-height:34px;padding:7px 8px;line-height:1.35}.school-meal-modal .school-menu-list b{overflow-wrap:anywhere;min-width:0}.school-meal-modal .school-menu-list small{margin-left:auto}.school-meal-day-warning{color:#b42318;background:#fff1ed;border-radius:9px;align-items:center;gap:6px;padding:8px 9px;font-size:10px;font-weight:800;display:flex}.school-meal-day-warning .material-symbols-rounded{font-size:16px}.school-meal-day-empty{color:var(--text-muted);text-align:center;background:#fff;border:1px dashed #d8e0eb;border-radius:10px;margin:0;padding:12px;font-size:11px}.school-meal-details{background:#fff;border:1px solid #e3e9f0;border-radius:10px;overflow:hidden}.school-meal-details summary{color:var(--text-secondary);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;font-size:10px;font-weight:800;list-style:none;display:flex}.school-meal-details summary::-webkit-details-marker{display:none}.school-meal-details summary .material-symbols-rounded{font-size:16px;transition:transform .18s}.school-meal-details[open] summary .material-symbols-rounded{transform:rotate(180deg)}.school-meal-details>div{gap:9px;padding:0 10px 10px;display:grid}.school-meal-details p{gap:3px;margin:0;display:grid}.school-meal-details p strong{color:var(--ink);font-size:10px}.school-meal-details p span{color:var(--text-secondary);white-space:pre-line;font-size:9px;line-height:1.55}.school-meal-detail-backdrop{z-index:230;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1717198f;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.school-meal-detail-modal{border-radius:22px;gap:14px;width:min(480px,100%);max-height:min(82dvh,620px);padding:20px;display:grid;overflow:hidden;box-shadow:0 28px 90px #1717194d}.school-meal-detail-modal>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.school-meal-detail-modal>header span{color:var(--brand-active);font-size:10px;font-weight:800}.school-meal-detail-modal>header h3{margin-top:3px;font-size:21px}.school-meal-detail-scroll{gap:10px;min-height:0;display:grid;overflow-y:auto}.school-meal-detail-scroll>section{border:1px solid var(--border);background:#f8fafc;border-radius:13px;gap:7px;padding:13px;display:grid}.school-meal-detail-scroll h4{align-items:center;gap:6px;font-size:13px;display:flex}.school-meal-detail-scroll h4 .material-symbols-rounded{color:var(--brand-active);font-size:18px}.school-meal-detail-scroll p{color:var(--text-secondary);white-space:pre-line;margin:0;font-size:11px;line-height:1.65}.school-meal-detail-scroll .school-meal-detail-calories{grid-template-columns:36px minmax(0,1fr);align-items:center}.school-meal-detail-calories>.material-symbols-rounded{color:#e45502;background:#fff1e8;border-radius:11px;place-items:center;width:36px;height:36px;display:grid}.school-meal-detail-calories>span{gap:1px;display:grid}.school-meal-detail-calories small{color:var(--text-muted);font-size:10px}.school-meal-detail-calories strong{font-size:15px}.school-meal-detail-modal>footer{display:grid}.school-meal-detail-modal>footer .button{justify-content:center;min-height:44px}.school-connector-field{gap:7px;display:grid;position:relative}.child-settings-grid .school-connector-field{grid-column:1/-1}.child-settings-grid .child-field-class{grid-column:span 3}.school-connector-field>span,.allergy-settings-panel header strong{color:var(--ink);font-size:13px;font-weight:700}.school-connector-field>div:first-of-type{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.school-connector-field>small{color:var(--text-muted);align-items:center;gap:5px;font-size:11px;line-height:1.4;display:flex}.school-connector-field>small.school-connected{color:#087f5b;font-weight:700}.school-connector-field>small .material-symbols-rounded{font-size:16px}.school-search-results{z-index:12;border:1px solid var(--border);background:#fff;border-radius:14px;max-height:280px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 18px 42px #10182829}.school-search-results>p{color:var(--text-secondary);background:var(--canvas);border-radius:9px;align-items:center;gap:6px;margin:0 4px 4px;padding:8px;font-size:11px;line-height:1.4;display:flex}.school-search-results>p .material-symbols-rounded{color:var(--brand-active);flex:none;font-size:16px}.school-search-results button{text-align:left;background:0 0;border:0;border-radius:9px;grid-template-columns:minmax(0,1fr) 20px;gap:3px 8px;min-width:0;padding:10px;display:grid}.school-search-results button:hover{background:var(--brand-soft)}.school-search-results strong,.school-search-results small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-search-results strong{color:var(--ink);font-size:13px}.school-search-results small{color:var(--text-secondary);font-size:10px}.school-search-results .material-symbols-rounded{color:var(--brand-active);grid-area:1/2/span 2;align-self:center;font-size:18px}.school-settings-layout{gap:14px;display:grid}.school-settings-card{background:#f8f9fc;border:1px solid #dce4ee;border-radius:18px;min-width:0;padding:18px}.school-settings-card-head{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:11px;margin-bottom:16px;display:grid}.school-settings-card-head>div{gap:3px;min-width:0;display:grid}.school-settings-card-head strong{color:var(--ink);font-size:16px}.school-settings-card-head p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.school-settings-card-icon{width:44px;height:44px;color:var(--brand-active);background:var(--brand-soft);border-radius:13px;place-items:center;display:grid}.school-settings-card-icon .material-symbols-rounded{font-size:23px}.school-profile-fields{gap:14px;display:grid}.school-profile-fields input{width:100%;min-height:46px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 11px;font-weight:400}.school-class-fields,.school-teacher-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.school-class-fields label,.school-teacher-fields label{gap:6px;min-width:0;display:grid}.school-class-fields label>span,.school-teacher-fields label>span{color:var(--text-secondary);font-size:12px;font-weight:700}.school-child-tabs small{max-width:100%;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.school-editor-actions{justify-content:flex-end}.school-lesson-editor{width:min(560px,100%)}.school-lesson-edit-summary{background:var(--brand-soft);border:1px solid var(--brand-border);border-radius:14px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.school-lesson-edit-summary>span{gap:3px;min-width:0;display:grid}.school-lesson-edit-summary strong,.school-lesson-edit-summary small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-lesson-edit-summary strong{font-size:14px}.school-lesson-edit-summary small{color:var(--text-secondary);font-size:11px}.school-lesson-edit-fields{background:var(--surface);border:1px solid var(--border);border-radius:16px;gap:14px;padding:16px;display:grid}.school-lesson-edit-fields>label{gap:6px;display:grid}.school-lesson-edit-fields label>span{color:var(--text-secondary);font-size:12px;font-weight:700}.school-lesson-edit-fields input{width:100%;min-height:46px;color:var(--ink);background:var(--canvas);border:1px solid var(--border-strong);border-radius:11px;padding:9px 11px}.school-lesson-time-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.school-sync-panel{background:#f7f9fc;border:1px solid #dce4ee;border-radius:17px;grid-column:1/-1;gap:13px;padding:16px;display:grid}.school-sync-panel>header{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;display:grid}.school-sync-panel>header>div{gap:3px;min-width:0;display:grid}.school-sync-panel>header strong{color:var(--ink);font-size:13px}.school-sync-panel>header p{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.45}.school-sync-panel-icon{width:42px;height:42px;color:var(--brand-active);background:#e7efff;border-radius:13px;place-items:center;display:grid}.school-sync-panel-icon .material-symbols-rounded{font-size:22px}.school-timetable-modal-backdrop{z-index:210;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#17171980;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.school-timetable-modal{border-radius:24px;grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:16px;width:min(780px,100%);height:min(90vh,780px);max-height:min(90vh,780px);padding:22px;display:grid;overflow:hidden;box-shadow:0 28px 90px #17171947}.school-timetable-modal>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.school-timetable-modal>header>div{min-width:0}.school-timetable-modal>header span{color:var(--brand-active);font-size:11px;font-weight:800}.school-timetable-modal>header h2{margin-top:4px;font-size:23px}.school-timetable-modal>header p{color:var(--text-muted);margin:4px 0 0;font-size:11px}.school-timetable-edit-help{color:var(--text-secondary);align-items:center;gap:5px;margin:-5px 0 -6px;font-size:10px;font-weight:700;display:flex}.school-timetable-edit-help .material-symbols-rounded{color:var(--brand-active);font-size:15px}.school-timetable-table-scroll{border:1px solid var(--border);border-radius:14px;min-width:0;min-height:0;overflow:auto}.school-timetable-table{border-collapse:separate;border-spacing:0;table-layout:fixed;width:100%;min-width:610px}.school-timetable-table th,.school-timetable-table td{border-right:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center;height:56px;padding:8px}.school-timetable-table tr>:last-child{border-right:0}.school-timetable-table tbody tr:last-child>*{border-bottom:0}.school-timetable-table thead th{z-index:1;height:42px;color:var(--text-secondary);background:#f7f9fc;font-size:12px;position:sticky;top:0}.school-timetable-table thead th:first-child,.school-timetable-table tbody th{width:92px}.school-timetable-table thead th:first-child{z-index:3;left:0}.school-timetable-table tbody th{z-index:2;color:var(--text-secondary);background:#fbfcfe;position:sticky;left:0}.school-timetable-table tbody th strong{font-size:11px;display:block}.school-timetable-table tbody th small{color:var(--text-muted);margin-top:2px;font-size:8px;line-height:1.25;display:block}.school-timetable-table td{color:var(--text-muted);background:#fff;font-size:12px;font-weight:600}.school-timetable-table td.has-subject{color:var(--brand-active);background:#f6f9ff;font-weight:800}.school-timetable-subject-edit{width:100%;min-height:40px;color:var(--brand-active);background:0 0;border:0;border-radius:8px;place-content:center;gap:2px;padding:3px;display:grid}.school-timetable-subject-edit:hover{background:#eaf1ff}.school-timetable-subject-edit strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.school-timetable-subject-edit small{color:var(--text-muted);justify-content:center;align-items:center;gap:2px;font-size:8px;font-weight:600;display:inline-flex}.school-timetable-subject-edit small .material-symbols-rounded{font-size:11px}.school-timetable-subject-input{width:100%;min-width:0;height:38px;color:var(--ink);border:2px solid var(--brand-active);text-align:center;background:#fff;border-radius:8px;outline:none;padding:5px 6px;font-size:12px;font-weight:700;box-shadow:0 0 0 3px #0d6efd1a}.school-timetable-lunch-row th{background:#fffaf2!important}.school-timetable-lunch-row td{color:#8a4b08;text-align:left;background:#fff8e8;padding-left:38px;position:relative}.school-timetable-lunch-row td>.material-symbols-rounded{color:#d97706;font-size:20px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.school-timetable-lunch-row td>strong{color:#8a4b08;font-size:12px;display:block}.school-timetable-lunch-row td>span{color:#a16207;margin-top:2px;font-size:9px;font-weight:500;display:block}.school-timetable-repeat-note{color:#344054;background:var(--brand-soft);border-radius:12px;align-items:flex-start;gap:9px;padding:11px 12px;display:flex}.school-timetable-repeat-note>.material-symbols-rounded{color:var(--brand-active);font-size:20px}.school-timetable-repeat-note div{gap:2px;display:grid}.school-timetable-repeat-note strong{font-size:11px}.school-timetable-repeat-note p{color:var(--text-secondary);margin:0;font-size:10px;line-height:1.45}.school-timetable-modal>footer{grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr);gap:8px;display:grid}.school-timetable-modal>footer .button{justify-content:center;min-height:46px}.school-sync-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.school-sync-action{min-width:0;min-height:118px;color:var(--ink);text-align:center;background:#fff;border:1px solid #d8e2f0;border-radius:14px;grid-template-rows:38px auto auto;align-content:center;place-items:center;gap:6px;padding:11px 7px;display:grid}.school-sync-action:hover:not(:disabled){background:#fbfdff;border-color:#adc3e8;transform:translateY(-1px)}.school-sync-action:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.68;background:#f1f3f7}.school-sync-action-icon{width:38px;height:38px;color:var(--brand-active);background:var(--brand-soft);border-radius:12px;place-items:center;display:grid}.school-sync-action-icon .material-symbols-rounded{font-size:21px}.school-sync-action:disabled .school-sync-action-icon{color:var(--text-muted);background:#e6e9ef}.school-sync-action>strong{min-width:0;color:inherit;font-size:11px;line-height:1.25}.school-sync-status{color:#536178;text-align:center;background:#f1f4f8;border:1px solid #e1e6ed;border-radius:999px;justify-content:center;align-items:center;gap:3px;min-width:0;max-width:100%;padding:5px 7px;font-size:8px;font-weight:700;line-height:1.2;display:inline-flex}.school-sync-status .material-symbols-rounded{flex:none;font-size:11px}.school-sync-status.active{color:#087f5b;background:#ecfdf3;border-color:#c7f0dc}.school-sync-help{color:var(--text-muted);align-items:center;gap:5px;font-size:10px;display:flex}.school-sync-help .material-symbols-rounded{font-size:15px}.allergy-settings-panel{background:linear-gradient(145deg,#fffaf5,#fff);border:1px solid #fedfbd;border-radius:17px;grid-column:1/-1;gap:14px;padding:16px;display:grid}.allergy-settings-panel>header{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.allergy-settings-panel>header>div{gap:3px;min-width:0;display:grid}.allergy-settings-panel header p{color:var(--text-secondary);margin:0;font-size:11px;line-height:1.45}.allergy-settings-icon{color:#b54708;background:#ffead5;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.allergy-settings-icon .material-symbols-rounded{font-size:22px}.allergy-chip-grid{flex-wrap:wrap;gap:7px;display:flex}.allergy-chip-grid button{color:#475467;background:#fff;border:1px solid #d0d5dd;border-radius:999px;align-items:center;gap:4px;min-height:34px;padding:7px 10px;font-size:11px;font-weight:700;display:inline-flex}.allergy-chip-grid button.active{color:#b42318;background:#fff1ed;border-color:#f97066;box-shadow:0 0 0 2px #f9706614}.allergy-chip-grid .material-symbols-rounded{font-size:15px}.allergy-settings-panel>footer{border-top:1px solid #fedfbd;align-items:center;gap:9px;padding-top:11px;display:flex}.allergy-settings-panel>footer>.material-symbols-rounded{color:#b54708;font-size:21px}.allergy-settings-panel>footer>span{gap:2px;display:grid}.allergy-settings-panel>footer strong{color:var(--ink);font-size:12px}.allergy-settings-panel>footer small{color:var(--text-secondary);font-size:10px}@media (width>=1201px){.manage-view .manage-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (width>=761px) and (width<=1200px){.manage-view .manage-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.manage-view .manage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-settings-head{align-items:stretch}.notification-school-note{white-space:normal;align-self:flex-start}.notification-bulk-card{padding:14px}.notification-bulk-card>header{grid-template-columns:42px minmax(0,1fr)}.notification-bulk-icon{width:42px;height:42px}.notification-count-pill{grid-column:1/-1;justify-self:start}.notification-bulk-options,.notification-academy-list{grid-template-columns:1fr}.notification-bulk-options>div{grid-template-columns:minmax(0,1fr) 120px}.notification-bulk-card>footer{grid-template-columns:1fr;display:grid}.notification-bulk-card>footer .button{width:100%}.academy-notification-detail{grid-template-columns:1fr}.academy-notification-detail>div{grid-template-columns:minmax(0,1fr) 120px}.push-settings-card{grid-template-columns:44px minmax(0,1fr);gap:11px;padding:15px}.push-settings-icon{border-radius:14px;width:44px;height:44px}.push-settings-copy>strong{font-size:15px}.push-settings-actions{grid-column:1/-1;grid-template-columns:1fr;min-width:0}.push-settings-actions .button{width:100%}.school-day-card{padding:14px}.school-day-card>header{grid-template-columns:40px minmax(0,1fr) 36px}.school-day-icon{border-radius:12px;width:40px;height:40px}.school-sync-badge{grid-column:1/-1;justify-self:start}.school-day-columns{grid-template-columns:1fr}.school-meal-card-head{align-items:flex-start}.school-weekly-meal-button{min-height:32px;padding-inline:7px}.school-meal-modal{max-height:92vh}.school-meal-modal.week{width:100%}.school-meal-week-navigation{gap:6px;padding:7px}.school-meal-week-navigation button{min-height:34px;padding-inline:7px;font-size:10px}.school-meal-week-navigation>strong{font-size:11px}.school-meal-week-grid{scroll-snap-type:x proximity;grid-template-columns:repeat(5,minmax(148px,1fr));align-items:stretch;padding-bottom:8px}.school-meal-week-grid .school-meal-day{scroll-snap-align:start}.school-meal-detail-backdrop{align-items:end;padding:0}.school-meal-detail-modal{width:100%;max-height:84dvh;padding:18px 16px calc(16px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0}.school-connector-field>div:first-of-type{grid-template-columns:1fr}.school-settings-card{padding:14px}.school-settings-card-head{grid-template-columns:40px minmax(0,1fr);margin-bottom:14px}.school-settings-card-icon{width:40px;height:40px}.school-class-fields,.school-teacher-fields{gap:8px}.school-profile-fields input{min-height:44px;padding-inline:9px;font-size:13px}.school-lesson-time-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.school-sync-panel{padding:13px}.school-sync-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.school-sync-action{min-height:112px;padding:9px 4px}.school-sync-action>strong{font-size:10px}.school-sync-status{width:100%;padding-inline:3px;font-size:7px}.school-timetable-modal-backdrop{align-items:end;padding:0}.school-timetable-modal{width:100%;height:92dvh;max-height:92dvh;padding:18px 16px calc(16px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;gap:13px}.school-timetable-modal>header h2{font-size:20px}.school-timetable-table{min-width:560px}.allergy-settings-panel{padding:13px}.allergy-settings-panel>header{grid-template-columns:38px minmax(0,1fr) auto}.allergy-settings-icon{width:38px;height:38px}}.demo-child-entry{background:linear-gradient(135deg,#f7fbff,#fff 58%,#fff9e9);border-color:#cfe0fb;gap:18px;padding:22px;display:grid}.demo-child-entry>header{align-items:center;gap:12px;display:flex}.demo-child-entry>header>div{gap:4px;min-width:0;display:grid}.demo-child-entry-icon{color:#fff;background:var(--brand);border-radius:14px;flex:0 0 46px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 8px 18px #1469e02e}.demo-child-entry-icon .material-symbols-rounded{font-size:24px}.demo-child-entry h3{letter-spacing:-.025em;font-size:20px}.demo-child-entry p{color:var(--text-secondary);font-size:13px;line-height:1.5}.demo-child-entry-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.demo-child-entry-list button{min-width:0;min-height:72px;color:var(--child-ink);background:var(--child-tint);border:1px solid var(--child-color);grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid;position:relative}@supports (color:color-mix(in lab, red, red)){.demo-child-entry-list button{border:1px solid color-mix(in srgb, var(--child-color) 38%, #fff)}}.demo-child-entry-list button{text-align:left;border-radius:16px;transition:transform .16s,border-color .16s,box-shadow .16s}.demo-child-entry-list button:hover{border-color:var(--child-color);box-shadow:0 9px 22px var(--child-color)}@supports (color:color-mix(in lab, red, red)){.demo-child-entry-list button:hover{box-shadow:0 9px 22px color-mix(in srgb, var(--child-color) 15%, transparent)}}.demo-child-entry-list button:hover{transform:translateY(-1px)}.demo-child-entry-list button:focus-visible{outline:3px solid var(--child-color)}@supports (color:color-mix(in lab, red, red)){.demo-child-entry-list button:focus-visible{outline:3px solid color-mix(in srgb, var(--child-color) 28%, transparent)}}.demo-child-entry-list button:focus-visible{outline-offset:2px}.demo-child-entry-list button>span{gap:3px;min-width:0;display:grid}.demo-child-entry-list button strong{color:var(--child-ink);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.demo-child-entry-list button small{color:var(--text-secondary);font-size:11px;font-weight:700}.demo-child-entry-list button>.material-symbols-rounded:last-child{color:var(--child-color);font-size:20px}.demo-child-mode-bar{background:linear-gradient(135deg,#eef6ff,#fff9e7);border:1px solid #cfe0fb;border-radius:16px;flex:none;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;display:flex}.demo-child-mode-bar>div{align-items:center;gap:10px;min-width:0;display:flex}.demo-child-mode-bar>div>.material-symbols-rounded{width:38px;height:38px;color:var(--brand-active);background:#fff;border-radius:12px;flex:0 0 38px;place-items:center;display:grid}.demo-child-mode-bar>div>span{gap:2px;min-width:0;display:grid}.demo-child-mode-bar strong{font-size:14px}.demo-child-mode-bar small{color:var(--text-secondary);font-size:11px}.demo-child-mode-bar .button{border-color:var(--brand-border);white-space:nowrap;flex:none;min-height:42px}@media (width<=760px){.demo-child-entry{gap:14px;padding:16px}.demo-child-entry-icon{flex-basis:42px;width:42px;height:42px}.demo-child-entry h3{font-size:18px}.demo-child-entry p{font-size:12px}.demo-child-entry-list{gap:7px}.demo-child-entry-list button{text-align:center;grid-template-columns:1fr;align-content:center;justify-items:center;gap:6px;min-height:112px;padding:12px 6px 10px}.demo-child-entry-list button>span{justify-items:center;gap:2px}.demo-child-entry-list button strong{max-width:100%;font-size:14px}.demo-child-entry-list button small{font-size:10px}.demo-child-entry-list button>.material-symbols-rounded:last-child{font-size:17px;position:absolute;top:8px;right:7px}.demo-child-mode-bar{flex-direction:column;align-items:stretch;gap:10px;padding:12px}.demo-child-mode-bar .button{justify-content:center;width:100%}}.backup-note .backup-save-status{color:#a34813;font-weight:600}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
