:root{color-scheme:light;font-family:Inter,Segoe UI Variable,Aptos,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--page);color:var(--ink);--white: #ffffff;--page: #f8f7f9;--page-start: #fbfafc;--page-middle: #f7f5f8;--page-end: #f3f1f4;--claret: #8a0f73;--claret-bright: #9b167f;--claret-action: #95127b;--claret-action-end: #7c1069;--claret-deep: #741060;--claret-hover: #731061;--claret-soft: #f3e8f1;--claret-mist: #fbf7fa;--gold: #c7a32a;--gold-soft: #f6f1df;--gold-muted: #eee6c8;--gold-wash: #faf7eb;--cream-soft: #fbf9f1;--cream-muted: #fbfaf5;--gold-text: #67551a;--green: #3f7d58;--green-soft: #e8f4ed;--ink: #211a25;--body-copy: #46404b;--muted: #67616c;--placeholder: #8a838e;--line: #e4dfe6;--border: var(--line);--surface: #ffffff;--surface-soft: rgba(255, 255, 255, .9);--surface-muted: #faf8fb;--surface-disabled: #f1edf2;--progress-track: #ebe6ed;--danger: #ad343e;--danger-strong: #b42318;--danger-soft: #fff5f5;--success-soft: #f2faf5;--blue-soft: rgba(67, 108, 163, .12);--blue-text: #436ca3;--rose-soft: rgba(174, 45, 92, .12);--rose-text: #9f2c55;--warning: #d97706;--postit-yellow-bg: #fff8cf;--postit-yellow-pin: #d8bd61;--postit-blue-bg: #edf8ff;--postit-blue-pin: #8bbdd4;--postit-green-bg: #f0fae8;--postit-green-pin: #95bd86;--postit-rose-bg: #fff0f5;--postit-rose-pin: #d99ab1;--postit-purple-bg: #f5efff;--postit-purple-pin: #b8a2dc;--radius-control: 12px;--radius-card: 18px;--radius-feature: 24px;--shadow-card: 0 1px 1px rgba(36, 27, 42, .035), 0 18px 48px rgba(49, 35, 54, .075);--shadow-subtle: 0 10px 28px rgba(49, 35, 54, .055);--shadow-raised: 0 1px 1px rgba(36, 27, 42, .04), 0 30px 78px rgba(49, 35, 54, .12)}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;margin:-1px;padding:0}html,body{max-width:100%;margin:0;overflow-x:hidden;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{line-height:1.45;background:linear-gradient(180deg,var(--page-start) 0%,var(--page-middle) 52%,var(--page-end) 100%);background-attachment:fixed}body:before{position:fixed;z-index:0;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(138,15,115,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(138,15,115,.012) 1px,transparent 1px);background-size:40px 40px;content:"";pointer-events:none}#root{position:relative;z-index:1;max-width:100%;overflow-x:hidden}button,a,input,select,textarea{box-sizing:border-box;font:inherit;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease,transform .16s ease}input[type=date],input[type=datetime-local]{-webkit-appearance:none;-moz-appearance:none;appearance:none;inline-size:100%;max-inline-size:100%;min-height:44px;line-height:1.2;padding-block:9px}input[type=datetime-local]{overflow:hidden;text-align:left}input[type=datetime-local]::-webkit-date-and-time-value{min-width:0;text-align:left}input[type=datetime-local]::-webkit-datetime-edit{min-width:0}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid rgba(138,15,115,.22);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.58}input::placeholder,textarea::placeholder{color:var(--placeholder)}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:#8a0f7347}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;background:var(--surface-disabled);color:var(--muted)}.secondary-action:hover:not(:disabled),.demo-switcher button:hover:not(:disabled){box-shadow:var(--shadow-subtle);transform:translateY(-1px)}.primary-action:active:not(:disabled),.secondary-action:active:not(:disabled),.ghost-action:active:not(:disabled),.demo-switcher button:active:not(:disabled),.quick-actions a:active{transform:translateY(0) scale(.985)}.app-shell{width:100%;min-width:0;max-width:100%;min-height:100vh;display:grid;grid-template-columns:272px minmax(0,1fr);overflow-x:hidden}.skip-link{position:fixed;z-index:100;top:12px;left:12px;width:1px;height:1px;overflow:hidden;border-radius:var(--radius-control);padding:10px 14px;background:var(--ink);color:var(--white);font-weight:800;text-decoration:none;clip-path:inset(50%);white-space:nowrap}.skip-link:focus{width:auto;height:auto;overflow:visible;clip-path:none}.login-shell,.loading-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,var(--page-start),var(--page-end))}.loading-shell{gap:12px;color:var(--claret);font-weight:800}.app-error-shell{justify-items:center;text-align:center}.app-error-shell p{max-width:32rem;margin:0;color:var(--body-copy);font-weight:600}.login-panel{width:min(100%,560px);background:#fffffff5;border:1px solid rgba(228,223,230,.86);border-radius:var(--radius-feature);box-shadow:var(--shadow-raised);display:grid;gap:28px;padding:clamp(24px,5vw,42px)}.install-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:flex-start;border:1px solid rgba(138,15,115,.12);border-radius:var(--radius-card);padding:18px;background:var(--claret-mist);color:var(--body-copy)}.install-card.installed{border-color:#3f7d5838;background:var(--success-soft)}.install-card svg{color:var(--claret)}.install-card.installed svg{color:var(--green)}.install-card strong{display:block;color:var(--ink);font-size:.98rem}.install-card p{margin:5px 0 0}.install-card ol{margin:10px 0 0;padding-left:20px}.install-card li+li{margin-top:4px}.web-push-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.inline-success,.inline-error{display:block;font-size:.9rem;font-weight:800;margin-top:8px}.inline-success{color:var(--green)}.inline-error{color:var(--danger)}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;min-width:0;background:#fffffff0;border-right:1px solid var(--line);padding:26px 22px;display:flex;flex-direction:column;gap:34px}.brand-mark{display:flex;align-items:center;gap:14px}.brand-symbol{width:48px;height:48px;border-radius:16px;background:url(/icon-512.png?v=claretconecta-4) center / cover no-repeat;box-shadow:0 12px 28px #8a0f7329;flex:0 0 auto}.brand-mark strong,.brand-mark small{display:block}.brand-mark small,.eyebrow,.lead,.class-card p,.today-card p,.record-row span,.notice-row span,.story-preview p,.metric-card span,.metric-card small{color:var(--muted)}.lead{margin-bottom:0;line-height:1.6}.nav-list{min-width:0;max-width:100%;display:grid;gap:8px}.nav-caption{padding:0 14px 4px;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.nav-list a{position:relative;color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:12px;min-height:48px;border:1px solid transparent;border-radius:var(--radius-control);padding:0 14px;font-weight:700}.nav-label{min-width:0}.nav-badge{min-width:24px;margin-left:auto;border:1px solid var(--gold-muted);border-radius:999px;background:var(--gold-wash);color:var(--gold-text);padding:2px 7px;font-size:.72rem;font-weight:900;line-height:1.25;text-align:center}.nav-label-short{display:none}.nav-list a.active,.nav-list a[aria-current=page],.nav-list a:hover{border-color:#8a0f731c;background:var(--claret-mist);color:var(--claret)}.nav-list a.active:before,.nav-list a[aria-current=page]:before{position:absolute;width:3px;height:22px;left:-7px;border-radius:999px;background:var(--claret);content:""}.session-card{margin-top:auto;border:1px solid var(--line);border-radius:var(--radius-card);padding:16px;display:grid;gap:8px;background:#ffffffa8;box-shadow:0 12px 32px #3f24420e}.session-card span{color:var(--claret);font-size:.78rem;font-weight:800;text-transform:uppercase}.content{min-width:0;max-width:100%;padding:clamp(24px,4vw,48px);display:grid;gap:24px;align-content:start;background:transparent}.content.with-student-context,.content.with-family-context{scroll-padding-top:96px}.content>section,.content>article,.content>.panel{width:100%;justify-self:stretch}.topbar{display:flex;justify-content:space-between;gap:18px;align-items:center;padding-bottom:4px}.topbar-actions{display:flex;align-items:center;gap:10px}.menu-toggle,.floating-menu-toggle,.sidebar-close,.menu-scrim{display:none}.topbar-context-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}.topbar-module-chip,.topbar-state,.topbar-user{min-height:32px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:#ffffffb8;padding:0 11px;color:var(--muted);font-size:.82rem;font-weight:850}.topbar-module-chip{border-color:#8a0f7324;background:var(--claret-soft);color:var(--claret)}.topbar-state{border-color:#3f7d5829;background:var(--green-soft);color:var(--green)}.topbar-state.pending{border-color:#d6b3003d;background:var(--gold-soft);color:var(--gold-text)}.student-return-bar{position:sticky;z-index:6;top:12px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(138,15,115,.16);border-radius:var(--radius-card);background:var(--claret-soft);color:var(--ink);padding:12px 14px;box-shadow:var(--shadow-subtle)}.student-active-context-bar,.mobile-student-focus-bar{position:sticky;z-index:70;top:14px;align-self:start;display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto;align-items:center;gap:10px;margin-bottom:18px;border:1px solid rgba(138,15,115,.16);border-radius:var(--radius-card);background:linear-gradient(145deg,#fffffffa,#fbf6faf5),radial-gradient(circle at 92% 0%,rgba(214,179,0,.1),transparent 11rem),var(--surface);padding:12px 14px;box-shadow:var(--shadow-subtle);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:translateZ(0)}.student-active-context-bar details,.mobile-student-focus-bar details{position:relative}.student-active-context-bar summary,.mobile-student-focus-bar summary,.student-context-aula-action,.student-context-profile-action{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--claret);padding:0 11px;font-size:.82rem;font-weight:900;cursor:pointer;list-style:none;font:inherit}.student-active-context-bar summary::-webkit-details-marker,.mobile-student-focus-bar summary::-webkit-details-marker{display:none}.student-active-context-bar details>div,.mobile-student-focus-bar details>div{position:absolute;z-index:20;right:0;top:calc(100% + 8px);width:min(420px,86vw);display:grid;gap:8px;border:1px solid rgba(138,15,115,.14);border-radius:18px;background:var(--surface);padding:10px;box-shadow:0 20px 48px #3f244229}.student-context-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.student-context-controls label{min-width:0;display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:900}.student-context-search{grid-column:1 / -1}.student-active-context-bar select,.mobile-student-focus-bar select{min-width:0;width:100%;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:8px 10px;font-weight:850}.student-context-class-inline,.student-context-student-inline{min-width:min(220px,22vw);display:grid;gap:4px;color:var(--muted);font-size:.72rem;font-weight:900}.student-context-class-inline span,.student-context-student-inline span{padding-left:4px}.student-context-family>div span{min-width:0;display:grid;gap:3px;color:var(--muted);font-size:.82rem;font-weight:800}.student-context-family>div strong{color:var(--ink);font-size:.84rem}.student-context-results{grid-column:1 / -1;display:grid;gap:6px;max-height:260px;overflow-y:auto;padding-top:2px}.student-context-results button{min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:7px 8px;text-align:left}.student-context-results button.selected{border-color:#8a0f7357;background:var(--claret-soft);color:var(--claret)}.student-context-results img,.student-context-results button>span{width:30px;height:30px;grid-row:span 2;display:grid;place-items:center;border-radius:10px;background:var(--claret-soft);color:var(--claret);font-size:.78rem;font-weight:950;object-fit:cover}.student-context-results strong,.student-context-results small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-return-main{min-width:0;display:flex;align-items:center;gap:12px}.student-return-main>span:last-child{min-width:0;display:grid;gap:2px}.student-return-bar strong,.student-return-bar small{overflow-wrap:anywhere}.student-return-bar small{color:var(--muted);font-weight:800}.student-context-photo-action{position:relative;flex:0 0 auto;cursor:pointer}.student-context-photo-action input{display:none}.student-context-photo-badge{position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;display:grid;place-items:center;border:2px solid var(--surface);border-radius:999px;background:var(--claret);color:var(--white);box-shadow:0 6px 16px #3f244229}.student-return-avatar{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;border:1px solid rgba(138,15,115,.16);border-radius:16px;background:var(--claret-mist);color:var(--claret);font-size:1.05rem;font-weight:900;object-fit:cover}.student-return-alert{max-width:min(320px,34vw);display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(173,52,62,.14);border-radius:999px;background:#ad343e14;color:var(--danger);padding:7px 10px;font-size:.78rem;font-weight:900}.eyebrow{margin:0 0 8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.055em;font-weight:800}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1;letter-spacing:-.042em}h2{margin-bottom:12px;font-size:1.6rem;line-height:1.15;letter-spacing:-.02em}h3{margin-bottom:8px;line-height:1.25;letter-spacing:-.01em}.lead,.panel-heading p,.section-heading p{max-width:72ch}.primary-action,.secondary-action,.ghost-action,.danger-action,.quick-actions a,.demo-switcher button{border:0;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:var(--radius-control);font-weight:800;text-decoration:none}.primary-action{background:linear-gradient(135deg,var(--claret-action),var(--claret-action-end));color:var(--white);padding:0 18px}.primary-action:hover:not(:disabled){background:var(--claret-hover);box-shadow:0 10px 24px #8a0f7333;transform:translateY(-1px)}.secondary-action{background:var(--claret-soft);color:var(--claret);padding:0 18px}.ghost-action{background:#ffffffb8;color:var(--ink);border:1px solid var(--line)}.danger-action{background:var(--danger-soft);color:var(--danger);border:1px solid rgba(173,52,62,.2);padding:0 18px}.danger-action.compact,.secondary-action.compact,.primary-action.compact,.ghost-action.compact{min-height:40px;padding:0 14px;font-size:.9rem}.login-form{display:grid;gap:14px}.login-error-message{display:flex;align-items:flex-start;gap:8px;border:1px solid rgba(173,52,62,.22);border-radius:var(--radius-control);background:var(--danger-soft);padding:11px 12px;line-height:1.35}.login-error-message svg{flex:0 0 auto;margin-top:1px}.login-form label{display:grid;gap:8px;color:var(--ink);font-weight:800}.login-form input,.compact-form input,.compact-form select,.compact-form textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);min-height:48px;padding:0 14px;color:var(--ink);background:var(--surface-muted)}.login-form input:focus,.compact-form input:focus,.compact-form select:focus,.compact-form textarea:focus{border-color:var(--claret);outline:3px solid rgba(138,15,115,.14)}.password-reset-panel{border-top:1px solid var(--line);padding-top:4px}.password-reset-panel summary{cursor:pointer;color:var(--claret);font-weight:900}.password-reset-form{display:grid;gap:10px;margin-top:12px}.password-reset-form p{margin:0;color:var(--muted);font-size:.9rem}.password-reset-form label{display:grid;gap:6px;color:var(--ink);font-size:.86rem;font-weight:900}.password-reset-form input{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);min-height:42px;background:var(--surface-muted);color:var(--ink);padding:0 12px}.compact-form textarea{grid-column:1 / -1;min-height:88px;padding-top:12px;resize:vertical}.demo-switcher{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:8px}.demo-switcher button{min-height:96px;display:grid;align-content:center;justify-items:center;gap:5px;background:var(--surface-muted);border:1px solid var(--line);color:var(--ink);padding:10px;text-align:center}.demo-switcher button.selected{background:var(--claret-soft);border-color:#8a0f7352;color:var(--claret)}.demo-switcher-icon{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--muted)}.demo-switcher button.selected .demo-switcher-icon,.demo-switcher button[aria-pressed=true] .demo-switcher-icon{border-color:#8a0f733d;background:var(--white);color:var(--claret)}.demo-switcher strong,.demo-switcher small{display:block}.demo-switcher small{color:var(--muted);font-size:.72rem;font-weight:800;line-height:1.2}.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr);gap:20px}.today-card,.family-preview,.class-card,.panel,.metric-card{background:var(--surface);border:1px solid rgba(228,223,230,.82);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.today-card{min-height:300px;padding:30px;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:24px;align-items:end;background:var(--surface)}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.next-step-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:18px;border:1px solid rgba(138,15,115,.14);border-radius:var(--radius-control);background:#ffffffb8;padding:12px;box-shadow:var(--shadow-subtle)}.next-step-card.pending{border-color:var(--gold-muted);background:var(--cream-soft)}.next-step-card.done{border-color:#3f7d5838;background:var(--success-soft)}.next-step-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;background:var(--claret-soft);color:var(--claret)}.next-step-card.pending .next-step-icon{background:var(--gold-soft);color:var(--gold-text)}.next-step-card.done .next-step-icon{background:var(--green-soft);color:var(--green)}.next-step-card>span:nth-child(2){min-width:0;display:grid;gap:3px}.next-step-card small{color:var(--claret);font-size:.72rem;font-style:normal;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.next-step-card strong{color:var(--ink);font-size:1rem;overflow-wrap:anywhere}.next-step-card em{color:var(--muted);font-size:.86rem;font-style:normal;font-weight:750;line-height:1.35}.next-step-card a{border:1px solid rgba(138,15,115,.2);border-radius:999px;background:var(--claret-soft);color:var(--claret);padding:9px 12px;text-decoration:none;font-size:.84rem;font-weight:900;white-space:nowrap}.next-step-card a:hover,.next-step-card a:focus-visible{border-color:#8a0f7357;background:var(--surface);box-shadow:var(--shadow-subtle);transform:translateY(-1px)}.quick-actions a{position:relative;background:linear-gradient(145deg,#ffffffeb,#f8f3f9e0);color:var(--ink);border:1px solid var(--line);min-height:80px;flex-direction:column;text-decoration:none}.family-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));align-content:stretch}.family-quick-actions a{min-height:104px;align-items:flex-start;justify-content:space-between;border-color:#8a0f731c;border-radius:22px;background:#ffffffdb;padding:15px;text-align:left;box-shadow:0 14px 30px #3f24420e}.family-quick-actions a:nth-child(1),.family-quick-actions a:nth-child(2){background:var(--surface)}.family-quick-actions a span:last-of-type{color:var(--ink);font-size:.92rem;font-weight:950;line-height:1.15}.family-quick-actions .quick-action-icon{width:44px;height:44px;border-radius:16px}.quick-action-icon{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:14px;background:var(--claret-soft);color:var(--claret)}.quick-action-badge{position:absolute;top:9px;right:9px;min-width:24px;border:1px solid rgba(214,179,0,.28);border-radius:999px;background:var(--gold-soft);color:var(--gold-text);padding:2px 7px;font-size:.72rem;font-weight:950;line-height:1.2;text-align:center}.quick-actions a:hover,.ghost-action:hover,.danger-action:hover:not(:disabled){border-color:#8a0f7352;color:var(--claret);transform:translateY(-1px)}.danger-action:hover:not(:disabled){border-color:#ad343e47;color:var(--danger-strong)}.family-preview{min-width:0;padding:26px;display:grid;gap:18px;align-content:start;border-color:#8a0f731a;background:radial-gradient(circle at 95% 0%,rgba(138,15,115,.08),transparent 14rem),linear-gradient(180deg,var(--white) 0%,rgba(252,249,253,.98) 100%)}.family-home{display:grid;gap:18px}.family-diary-card{width:100%}.family-child-focus{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px}.family-child-avatar{width:96px;height:96px;flex:0 0 auto;display:inline-grid;place-items:center;border:4px solid var(--white);border-radius:30px;background:radial-gradient(circle at 28% 20%,rgba(255,255,255,.22),transparent 38%),var(--claret);color:var(--white);box-shadow:0 22px 44px #3f244229;font-size:1.8rem;font-weight:950;object-fit:cover}.family-child-focus>span:last-child{min-width:0;display:grid;gap:2px}.family-child-focus .eyebrow{margin:0}.family-child-focus strong{min-width:0;color:var(--ink);font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.05;overflow-wrap:anywhere}.family-child-focus small{display:inline-flex;align-items:center;max-width:100%;border:1px solid rgba(138,15,115,.12);border-radius:999px;background:#ffffffad;color:var(--muted);padding:5px 9px;font-size:.76rem;font-weight:800;line-height:1.18;overflow-wrap:anywhere}.family-child-meta{display:flex;flex-wrap:wrap;gap:6px}.family-child-status-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.family-child-status-row small.done{border-color:#327a522e;background:var(--green-soft);color:var(--green)}.family-child-status-row small.pending{border-color:#8a0f732e;background:var(--claret-soft);color:var(--claret)}.family-priority-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.family-priority-strip a{min-width:0;display:grid;grid-template-columns:minmax(0,1fr);gap:7px;border:1px solid rgba(138,15,115,.12);border-radius:20px;background:#ffffffe0;color:var(--ink);padding:12px;text-decoration:none;box-shadow:0 12px 26px #3f24420b}.family-priority-strip a:hover,.family-priority-strip a:focus-visible{border-color:#8a0f734d;outline:none;transform:translateY(-1px)}.family-priority-strip a>span{width:44px;height:44px;display:inline-grid;place-items:center;border-radius:15px}.family-priority-strip a>span.done{background:var(--green-soft);color:var(--green)}.family-priority-strip a>span.pending{background:var(--gold-soft);color:var(--gold-text)}.family-priority-strip a>span.quiet{background:var(--surface-muted);color:var(--muted)}.family-priority-strip small{min-width:0;color:var(--muted);font-size:.7rem;font-weight:950;letter-spacing:.05em;text-transform:uppercase}.family-priority-strip strong{min-width:0;color:var(--ink);font-size:.94rem;line-height:1.12;overflow-wrap:anywhere}.family-current-record{border-radius:22px;display:grid;gap:12px;margin:-8px;padding:8px;scroll-margin-block:18vh}.family-current-record.is-highlighted{animation:family-record-focus 1.8s ease}@keyframes family-record-focus{0%{background:#8a0f7300;box-shadow:0 0 #8a0f7300}22%{background:#8a0f730e;box-shadow:0 0 0 3px #8a0f7324}to{background:#8a0f7300;box-shadow:0 0 #8a0f7300}}.family-timeline-view,.family-notices-view{display:grid;gap:18px}.family-timeline-panel,.family-notices-panel{width:100%;max-width:none}.family-day-timeline{display:grid;gap:12px}.family-day-card{min-width:0;display:grid;gap:12px}.family-day-card-heading{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center}.family-day-card-heading>span{width:42px;height:42px;display:inline-grid;place-items:center;border-radius:14px;background:var(--gold-soft);color:var(--gold-text)}.family-day-card-heading div{min-width:0;display:grid;gap:2px}.family-day-card-heading small{color:var(--muted);font-size:.72rem;font-weight:950;letter-spacing:.05em;text-transform:uppercase}.family-day-card-heading strong{color:var(--ink);font-size:1.2rem;line-height:1.12;overflow-wrap:anywhere}.family-notice-groups{display:grid;gap:16px}.family-notice-group{min-width:0;display:grid;gap:10px}.family-notice-group h3{margin:0;color:var(--ink);font-size:1.02rem}.family-notice-group.resolved{border-top:1px solid var(--line);padding-top:14px}.family-notice-row{align-items:flex-start}.family-notice-row.pending{border-color:#c7a32a38;background:var(--cream-muted)}.family-notice-row.done{background:var(--surface-muted);color:var(--muted);box-shadow:none}.family-notice-row.done .notice-row-icon{background:var(--green-soft);color:var(--green)}.family-day-title{margin-top:2px}.family-active-context-bar{position:sticky;top:14px;z-index:70;align-self:start;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;margin-bottom:18px;border:1px solid rgba(138,15,115,.14);border-radius:var(--radius-card);background:radial-gradient(circle at 0% 0%,rgba(138,15,115,.08),transparent 14rem),#fffffff0;box-shadow:var(--shadow-subtle);padding:14px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:translateZ(0)}.family-active-main{min-width:0;display:flex;align-items:center;gap:12px}.family-active-avatar{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(138,15,115,.18);border-radius:20px;background:var(--claret-soft);color:var(--claret);font-size:1.35rem;font-weight:950;object-fit:cover}.family-active-main>span{min-width:0;display:grid;gap:3px}.family-active-main strong{color:var(--ink);font-size:1.08rem;line-height:1.1;min-width:0;overflow-wrap:anywhere}.family-active-main small{color:var(--muted);font-weight:850;min-width:0;overflow-wrap:anywhere}.family-active-status{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.family-active-status small{border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:900;white-space:nowrap}.family-active-status small.done{background:var(--green-soft);color:var(--green)}.family-active-status small.pending{background:var(--gold-soft);color:var(--gold-text)}.family-active-switcher{position:relative;justify-self:end}.family-active-switcher summary{max-width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(138,15,115,.2);border-radius:999px;background:var(--claret-soft);color:var(--claret);padding:0 14px;cursor:pointer;font-weight:900;line-height:1.15;list-style:none;text-align:center;white-space:normal}.family-active-switcher summary::-webkit-details-marker{display:none}.family-active-switcher>div{position:absolute;z-index:30;right:0;top:calc(100% + 8px);width:min(320px,78vw);display:grid;gap:8px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow-card);padding:10px}.family-active-switcher button{min-width:0;min-height:52px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;border:1px solid var(--line);border-radius:16px;background:var(--surface-muted);color:var(--ink);padding:8px;cursor:pointer;text-align:left}.family-active-switcher button.selected,.family-active-switcher button[aria-pressed=true]{border-color:#8a0f7357;background:var(--claret-soft);color:var(--claret)}.family-active-switcher img,.family-active-switcher button>span{width:34px;height:34px;display:grid;place-items:center;overflow:hidden;border-radius:12px;background:var(--white);color:var(--claret);font-weight:950;object-fit:cover}.family-active-switcher strong{min-width:0;overflow-wrap:anywhere;white-space:normal}.daily-summary{display:grid;gap:10px}.daily-summary span{min-height:40px;border-radius:var(--radius-control);background:#ffffffc7;display:flex;align-items:center;gap:10px;padding:10px 14px;color:var(--body-copy)}.metric-grid,.class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.direction-dashboard{display:grid;gap:20px;scroll-margin-top:20px}.direction-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.direction-summary-grid .metric-card svg{color:var(--claret)}.direction-work-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(340px,.8fr);gap:20px}.direction-coverage,.direction-alerts{display:grid;gap:18px}.direction-class-list,.direction-alert-list{display:grid;gap:10px}.direction-class-row,.direction-alert-row{min-width:0;display:grid;align-items:center;gap:14px;border-top:1px solid var(--line);padding-top:14px}.direction-class-row{grid-template-columns:auto minmax(0,1fr) auto}.direction-class-row .class-dot{margin:0}.direction-class-row div,.direction-alert-row div{min-width:0;display:grid;gap:4px}.direction-class-row small,.direction-alert-row small{color:var(--muted)}.direction-class-row .progress-track{margin:5px 0 0}.direction-alert-row{grid-template-columns:auto minmax(0,1fr) auto auto;border-radius:var(--radius-control);color:var(--body-copy);padding:12px;text-decoration:none;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}.direction-alert-row:hover,.direction-alert-row:focus-visible{border-color:#8a0f732e;background:var(--surface-soft);box-shadow:var(--shadow-subtle);outline:none;transform:translateY(-1px)}.direction-alert-icon{width:34px;height:34px;display:inline-grid;place-items:center;border-radius:13px;background:var(--green-soft);color:var(--green)}.direction-alert-icon.pending{background:var(--gold-soft);color:var(--gold-text)}.direction-alert-copy{min-width:0;display:grid;gap:4px}.direction-alert-action{color:var(--claret);font-weight:900;justify-self:end}.operational-health{margin-bottom:18px}.health-check-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.health-check-row{align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-muted);display:grid;gap:10px;grid-template-columns:auto minmax(0,1fr) auto;padding:12px}.health-check-row div{display:grid;gap:4px;min-width:0}.health-check-row small{color:var(--muted);line-height:1.45}.metric-card{padding:22px;display:grid;gap:4px;overflow:hidden;position:relative}.metric-card:after{position:absolute;width:74px;height:74px;right:-30px;bottom:-34px;border-radius:999px;background:#8a0f730e;content:""}.metric-card strong{font-size:2.2rem;line-height:1}.class-card{padding:22px}.class-dot{width:14px;height:14px;border-radius:999px;display:block;margin-bottom:18px}.progress-track{height:8px;border-radius:999px;overflow:hidden;background:var(--progress-track);margin:16px 0 10px}.progress-track span{display:block;height:100%;background:var(--claret)}.work-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:20px}.management-section{display:grid;gap:20px;scroll-margin-top:20px}.daily-register{min-width:0;display:grid;gap:14px;scroll-margin-top:20px;overflow:hidden}.panel-heading-subtitle{max-width:620px;margin:5px 0 0;color:var(--muted);font-size:.92rem;font-weight:750;line-height:1.45}.register-view-tabs{min-width:0;max-width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:1px solid rgba(63,36,66,.1);border-radius:20px;background:#ffffffc7;padding:6px;box-shadow:var(--shadow-subtle)}.register-view-tabs button{min-width:0;min-height:56px;display:inline-grid;grid-template-columns:auto auto;justify-content:center;gap:2px 8px;align-items:center;border:1px solid transparent;border-radius:16px;background:transparent;color:var(--muted);font:inherit;font-weight:950;cursor:pointer}.register-view-tabs button small{grid-column:1 / -1;color:inherit;font-size:.74rem;font-weight:800}.register-view-tabs button[aria-selected=true]{border-color:#8a0f732e;background:var(--surface);color:var(--claret);box-shadow:0 10px 24px #3f244214}.register-classroom-overview{min-width:0;max-width:100%;display:grid;gap:12px;border:1px solid rgba(63,36,66,.1);border-radius:24px;background:var(--surface);padding:14px;box-shadow:0 18px 42px #3f24420f}.register-classroom-overview-heading{min-width:0;display:flex;align-items:end;justify-content:space-between;gap:12px}.register-classroom-overview-heading h3,.register-classroom-overview-heading p{margin:0}.register-classroom-overview-heading h3{color:var(--ink);font-size:1.04rem}.register-classroom-overview-heading small{max-width:340px;color:var(--muted);font-weight:800;line-height:1.35}.register-classroom-view-filter{display:inline-flex;gap:6px;border:1px solid var(--line);border-radius:999px;background:var(--surface-muted);padding:4px}.register-classroom-view-filter button{min-height:34px;border:0;border-radius:999px;background:transparent;color:var(--muted);padding:0 12px;font:inherit;font-size:.78rem;font-weight:950;cursor:pointer}.register-classroom-view-filter button[aria-pressed=true]{background:var(--surface);color:var(--claret);box-shadow:0 8px 18px #3f244214}.register-classroom-cell{min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:40px;border-radius:999px;padding:6px 9px;font-size:.76rem;font-weight:950;white-space:nowrap}button.register-classroom-cell{border:0;font-family:inherit;cursor:pointer}button.register-classroom-cell:hover,button.register-classroom-cell:focus-visible{outline:3px solid rgba(138,15,115,.12);outline-offset:1px}.register-classroom-cell-label{display:none}.register-classroom-cell-state{display:inline-flex;align-items:center;justify-content:center;gap:5px}.register-classroom-cell-state svg{display:none}.register-classroom-cell-icon{width:26px;height:26px;display:inline-grid;place-items:center;background-position:center;background-repeat:no-repeat;background-size:contain;flex:0 0 auto;margin:-2px 1px -2px 0}.register-classroom-cell-icon.fallback{border-radius:10px;background:#ffffff9e}.register-classroom-state-text{display:inline}.register-classroom-cell.pending{background:var(--gold-soft);color:var(--gold-text)}.register-classroom-cell.published{background:var(--green-soft);color:var(--green)}.register-classroom-cell.changes{background:var(--claret-soft);color:var(--claret)}.register-classroom-grid{min-width:0;overflow-x:auto;border:1px solid var(--line);border-radius:18px}.register-classroom-grid-row{min-width:1040px;display:grid;grid-template-columns:minmax(180px,1.1fr) repeat(5,minmax(110px,.7fr)) minmax(260px,1fr);gap:8px;align-items:center;border-top:1px solid rgba(63,36,66,.07);padding:8px}.register-classroom-grid-row.just-published{animation:published-row-flash 1.15s ease-out}.register-classroom-empty{margin:10px}@keyframes published-row-flash{0%{background:#428b5b2e}to{background:transparent}}.register-classroom-grid-row:first-child{border-top:0}.register-classroom-grid-row.header{position:sticky;top:0;z-index:1;background:var(--surface-muted);color:var(--muted);font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.05em}.register-classroom-student{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 8px;align-items:center;border:0;border-radius:14px;background:transparent;color:var(--ink);padding:7px 8px;text-align:left;cursor:pointer}.register-classroom-student:hover,.register-classroom-student:focus-visible{outline:3px solid rgba(138,15,115,.1);background:#8a0f730b}.register-classroom-student strong,.register-classroom-student small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.register-classroom-student small{color:var(--muted);font-weight:800}.register-classroom-student .student-picker-status{grid-row:1 / span 2;grid-column:2}.register-classroom-action{display:flex;gap:7px;justify-content:flex-end}.register-classroom-action .secondary-action{min-width:0;flex:1 1 0;white-space:nowrap}.register-classroom-action .register-classroom-edit{background:var(--surface)}.progress-track.compact{margin:0}.student-profile{display:grid;gap:16px;scroll-margin-top:20px}.student-profile-heading{align-items:center}.student-selector.student-profile-selector,.daily-register .student-selector{position:static}.class-roster-card{min-width:0;display:grid;gap:12px;border:1px solid rgba(138,15,115,.14);border-radius:var(--radius-card);background:var(--surface);padding:14px;box-shadow:var(--shadow-subtle)}.class-roster-card[open] .batch-card-chevron{transform:rotate(90deg)}.class-roster-heading{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;cursor:pointer;list-style:none}.class-roster-heading::-webkit-details-marker{display:none}.class-roster-body{display:grid;gap:12px;border-top:1px solid var(--line);padding-top:12px}.class-roster-heading strong{display:block;color:var(--ink);font-size:1.08rem}.class-roster-heading small{color:var(--muted);font-weight:850}.class-roster-metrics{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.class-roster-metrics span{min-height:32px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--ink);font-size:.82rem;font-weight:950;padding:0 9px}.class-roster-list{min-width:0;display:grid;gap:8px}.class-roster-list button{min-width:0;min-height:64px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);color:var(--ink);display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:9px;text-align:left}.class-roster-list button:hover,.class-roster-list button:focus-visible{border-color:#8a0f734d;box-shadow:var(--shadow-subtle);transform:translateY(-1px)}.class-roster-list button.selected{border-color:#8a0f735c;background:var(--claret-soft)}.class-roster-order{width:28px;height:28px;display:grid;place-items:center;border-radius:999px;background:var(--surface);color:var(--muted);font-size:.78rem;font-weight:950}.class-roster-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(145deg,var(--claret-bright),var(--claret-deep));color:var(--white);font-weight:950;object-fit:cover}.class-roster-name{min-width:0;display:grid;gap:2px}.class-roster-name strong,.class-roster-name small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.class-roster-name small{color:var(--muted);font-weight:850}.class-roster-tags{min-width:0;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.student-context-avatar{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:14px;background:var(--claret);color:var(--white);font-weight:950}.student-context-avatar.photo,.student-avatar.photo,.admin-student-photo{object-fit:cover}.student-context-avatar.photo{display:block}.student-context-copy{min-width:0;display:grid;gap:2px}.student-context-copy strong,.student-context-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-context-copy strong{color:var(--ink);font-size:.98rem;font-weight:950}.student-context-copy small{color:var(--muted);font-size:.78rem;font-weight:850}.student-work-context{position:sticky;z-index:14;top:12px;display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1fr);gap:12px;align-items:center;border:1px solid rgba(138,15,115,.16);border-radius:var(--radius-card);background:linear-gradient(145deg,#fffffff5,#fbf6faeb),var(--surface);padding:10px 12px;box-shadow:var(--shadow-subtle);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.student-work-context.with-return-context{top:92px}.student-work-fields{min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-work-fields.single{grid-template-columns:minmax(0,1fr)}.student-work-fields label{min-width:0;display:grid;gap:4px;color:var(--muted);font-size:.72rem;font-weight:950;text-transform:uppercase;letter-spacing:.045em}.student-work-fields select{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:9px 10px;font-size:.86rem;font-weight:850}.student-work-active{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.student-profile-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;border:1px solid rgba(138,15,115,.14);border-radius:var(--radius-card);background:#ffffffd1;padding:8px;box-shadow:var(--shadow-subtle)}.student-profile-tabs button{min-width:0;min-height:42px;display:flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:var(--radius-control);background:transparent;color:var(--muted);padding:9px 6px;text-align:center;cursor:pointer}.student-profile-tabs button[aria-selected=true]{border-color:#8a0f7333;background:var(--claret-soft);color:var(--claret)}.student-profile-tabs span{min-width:0;overflow:hidden;font-weight:950;text-overflow:ellipsis;white-space:nowrap}.student-profile-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:14px}.student-focus-card{min-width:0;display:grid;gap:18px;align-content:start;border:1px solid rgba(138,15,115,.14);border-radius:var(--radius-card);background:var(--surface);padding:20px;box-shadow:var(--shadow-subtle)}.student-focus-main{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center}.student-focus-alerts{display:flex;flex-wrap:wrap;gap:8px}.student-focus-family{display:grid;gap:5px;border-top:1px solid var(--line);padding-top:12px}.student-focus-family summary{display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--ink);cursor:pointer;list-style:none}.student-focus-family summary::-webkit-details-marker{display:none}.student-focus-family[open] .batch-card-chevron{transform:rotate(90deg)}.student-focus-family summary>span{min-width:0;display:grid;gap:2px}.student-focus-family strong{color:var(--ink)}.student-focus-family small{color:var(--muted);font-weight:800;overflow-wrap:anywhere}.student-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-contact-grid article{min-width:0;display:grid;gap:4px;border:1px solid rgba(138,15,115,.12);border-radius:var(--radius-control);background:#ffffffc7;padding:10px}.student-contact-grid article>span{display:flex;flex-wrap:wrap;gap:6px;color:var(--muted);font-size:.75rem;font-weight:900}.student-contact-grid b,.student-contact-grid a,.student-contact-grid small,.student-contact-grid p{min-width:0;margin:0;overflow-wrap:anywhere}.student-contact-grid b{color:var(--ink)}.student-contact-grid a{color:var(--claret);font-weight:900;text-decoration:none}.student-contact-grid small,.student-contact-grid p{color:var(--muted);font-weight:800}.student-inline-actions{display:flex;flex-wrap:wrap;gap:8px}.student-photo-actions{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));align-items:center;gap:8px}.student-profile-card{min-width:0;border:1px solid rgba(138,15,115,.14);border-radius:var(--radius-card);background:var(--surface);overflow:hidden}.student-profile-card summary{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;cursor:pointer;list-style:none}.student-profile-card summary::-webkit-details-marker{display:none}.student-profile-card[open] .batch-card-chevron{transform:rotate(90deg)}.student-identity-heading{padding:18px 18px 0}.student-identity-card{background:var(--surface)}.student-profile-main{min-width:0;display:grid;gap:4px}.student-profile-main>strong{color:var(--ink);font-size:1.45rem;line-height:1.2}.student-profile-main>span:not(.eyebrow){color:var(--muted)}.student-avatar{width:68px;height:68px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(145deg,var(--claret-bright),var(--claret-deep));color:var(--white);font-size:1.8rem;font-weight:900;box-shadow:0 16px 34px #8a0f732e}.student-avatar.photo{display:block}.student-photo-action{cursor:pointer}.student-photo-action input{display:none}.student-profile-photo-action{position:relative;display:inline-grid;width:fit-content}.student-photo-inline-action{cursor:pointer}.student-photo-inline-action input{display:none}.student-profile-photo-action .student-context-photo-badge{position:absolute;right:-4px;bottom:-4px;width:22px;height:22px;display:grid;place-items:center;border:2px solid var(--surface);border-radius:999px;background:var(--claret);color:var(--white);box-shadow:0 8px 18px #3f244229}.student-photo-remove-action{min-height:34px;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid rgba(196,54,88,.24);border-radius:12px;background:#c4365814;color:var(--danger);padding:0 10px;font-size:.78rem;font-weight:900;cursor:pointer;white-space:nowrap}.student-photo-remove-action:disabled{cursor:wait;opacity:.55}.admin-student-photo{width:52px;height:52px;border-radius:14px;box-shadow:inset 0 0 0 1px #8a0f731f}.student-alert{width:fit-content;max-width:100%;display:inline-flex;align-items:center;gap:8px;border-radius:999px;background:var(--danger-soft);color:var(--danger);font-size:.82rem;font-weight:900;padding:7px 11px}.student-identification-detail{display:grid;gap:14px;padding:18px}.student-data-photo-row{display:grid;gap:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);padding:12px}.student-data-photo-row>span{display:grid;gap:3px}.student-data-photo-row strong{color:var(--ink)}.student-data-photo-row small{color:var(--muted);font-weight:800}.student-data-photo-row .student-photo-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.student-data-photo-row .student-photo-inline-action,.student-data-photo-row .student-photo-remove-action{width:100%}.student-basic-detail,.student-family-detail article{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.student-basic-detail span,.student-family-detail article{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);padding:10px}.student-basic-detail strong,.student-family-detail strong{display:block;color:var(--ink);font-size:.78rem;font-weight:900}.student-family-detail{display:grid;gap:8px}.student-family-detail>strong{color:var(--ink)}.student-family-detail article{align-items:start}.student-edit-form{display:grid;grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px dashed rgba(138,15,115,.22);border-radius:var(--radius-control);background:#ffffffb8;padding:12px}.student-edit-form.family{margin-top:4px}.student-edit-form label{min-width:0;display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:900}.student-edit-form input,.student-edit-form select{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:10px 11px}.student-edit-form .secondary-action{justify-self:start;min-height:40px}.student-family-detail span,.student-family-detail p{min-width:0;margin:0;color:var(--muted);overflow-wrap:anywhere}.student-family-detail a{color:var(--claret);font-weight:900;text-decoration:none}.student-family-detail a:hover,.student-family-detail a:focus-visible{text-decoration:underline}.student-profile-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.student-profile-hero .student-profile-actions{grid-template-columns:1fr}.student-profile-actions button{--action-accent: var(--claret);--action-soft: var(--claret-soft);min-height:82px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);color:var(--ink);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:flex-start;justify-content:flex-start;gap:9px;padding:12px;text-align:left;font-weight:900}.student-action-icon{flex:0 0 auto;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--action-accent) 16%,transparent);border-radius:13px;background:var(--action-soft);color:var(--action-accent)}.student-action-icon svg{color:currentColor}.student-action-copy{min-width:0;display:grid;gap:3px}.student-action-copy strong,.student-action-copy small{display:block;overflow-wrap:anywhere}.student-action-copy small{color:var(--muted);font-size:.78rem;font-weight:800;line-height:1.25}.student-action-status{align-self:start;border:1px solid color-mix(in srgb,var(--action-accent) 18%,transparent);border-radius:999px;background:var(--surface);color:var(--action-accent);font-size:.68rem;font-weight:950;line-height:1;padding:6px 8px;text-align:center;white-space:nowrap}.student-action-status.pending{background:var(--gold-soft);color:var(--gold-text)}.student-action-status.done{background:var(--green-soft);color:var(--green)}.student-action-status.neutral{background:var(--surface-muted);color:var(--muted)}.student-profile-actions button:hover{border-color:color-mix(in srgb,var(--action-accent) 28%,transparent);color:var(--action-accent);box-shadow:var(--shadow-subtle);transform:translateY(-1px)}.student-profile-actions .primary-student-action{--action-accent: var(--white);--action-soft: rgba(255, 255, 255, .16);border-color:#8a0f7352;background:var(--claret);color:var(--white)}.student-profile-actions .primary-student-action small{color:currentColor}.student-profile-actions .primary-student-action .student-action-status{border-color:#ffffff3d;background:#ffffff29;color:var(--white)}.student-profile-actions .primary-student-action .student-action-icon{border-color:#fff3;color:var(--white)}.student-profile-actions .action-notice{--action-accent: var(--gold-text);--action-soft: var(--gold-soft)}.student-profile-actions .action-message{--action-accent: var(--blue-text);--action-soft: var(--blue-soft)}.student-profile-actions .action-milestone{--action-accent: var(--rose-text);--action-soft: var(--rose-soft)}.student-profile-actions .action-authorization{--action-accent: var(--green);--action-soft: var(--green-soft)}.student-more-details{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);box-shadow:var(--shadow-subtle);overflow:hidden}.student-more-details>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;cursor:pointer;list-style:none}.student-more-details>summary::-webkit-details-marker{display:none}.student-more-details[open] .batch-card-chevron{transform:rotate(90deg)}.student-more-details>summary span{display:grid;gap:3px}.student-more-details>summary strong{color:var(--ink)}.student-more-details>summary small{color:var(--muted);font-weight:800}.student-more-details .student-profile-grid{padding:0 16px 16px}.student-today-panel{display:grid;gap:12px;border:1px solid var(--gold-muted);border-radius:var(--radius-card);background:var(--cream-muted);padding:16px;box-shadow:var(--shadow-subtle)}.student-today-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-today-heading h3{margin-bottom:0}.student-today-heading.compact{padding-top:12px;border-top:1px solid rgba(214,179,0,.24)}.student-daily-summary{display:grid;gap:12px}.student-daily-actions{display:flex;flex-wrap:wrap;gap:8px}.student-attention-block{display:grid;gap:10px}.student-task-list{display:grid;gap:8px}.student-task-list button,.student-task-empty{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:11px 12px;text-align:left}.student-task-list button{cursor:pointer}.student-task-list button:hover,.student-task-list button:focus-visible{border-color:#8a0f7347;color:var(--claret);outline:none;box-shadow:var(--shadow-subtle)}.student-task-list button>svg:first-child,.student-task-empty>svg{color:var(--claret)}.student-task-list span,.student-task-empty span{min-width:0;display:grid;gap:2px}.student-task-list strong,.student-task-list small,.student-task-empty strong,.student-task-empty small{overflow-wrap:anywhere}.student-task-list small,.student-task-empty small{color:var(--muted);font-weight:800}.student-task-empty{grid-template-columns:auto minmax(0,1fr);background:var(--surface-soft)}.student-today-panel>.student-task-empty{grid-template-columns:1fr;justify-items:start;gap:12px}.student-today-panel>.student-task-empty span{width:100%}.student-today-panel>.student-task-empty strong,.student-today-panel>.student-task-empty small{overflow-wrap:normal;word-break:normal}.student-profile-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.student-profile-metrics .metric-card strong{font-size:1.85rem}.student-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.student-profile-section{min-width:0;scroll-margin-top:100px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft);box-shadow:var(--shadow-subtle);padding:16px}.student-profile-section.wide{grid-column:1 / -1}.student-profile-section .panel-heading{margin-bottom:12px}.student-profile-list{display:grid;gap:9px}.student-profile-list article{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);padding:10px}.student-profile-list article>div{min-width:0}.student-profile-list article>.secondary-action{align-self:center}.student-profile-list svg{color:var(--claret)}.student-profile-list div{min-width:0;display:grid;gap:3px}.student-profile-list span,.student-profile-list small{color:var(--muted);overflow-wrap:anywhere}.student-profile-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stories-manager{display:grid;gap:24px;scroll-margin-top:20px}.story-panel-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px solid rgba(138,15,115,.12);border-radius:22px;background:#ffffffd1;padding:8px;box-shadow:var(--shadow-subtle)}.story-panel-tabs button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:17px;background:transparent;color:var(--muted);font:inherit;font-weight:950;cursor:pointer}.story-panel-tabs button[aria-selected=true]{border-color:#8a0f7338;background:var(--claret-soft);color:var(--claret);box-shadow:0 12px 26px #8a0f731a}.system-panel-tabs,.comedor-panel-tabs,.purchase-panel-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.comedor-panel-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.comedor-email-field{align-items:stretch}.comedor-email-field textarea,.comedor-email-field input{width:100%}.comedor-time-field{align-self:start;max-width:180px}.comedor-time-field input[type=time]{width:100%;min-height:44px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);padding:9px 12px}.comedor-time-field input[type=date],.comedor-test-recipient-field input[type=email]{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);min-height:44px;padding:9px 12px}.comedor-school-calendar{margin-top:4px}.material-notices{display:grid;gap:20px;scroll-margin-top:20px}.messages-panel,.calendar-panel{display:grid;gap:18px;scroll-margin-top:20px}.daily-register>.panel-heading>select,.material-notices>.panel-heading>select,.notice-heading-tools select,.register-toolbar select{min-width:180px;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 12px;background:var(--surface-muted)}.notice-heading-tools{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.notice-heading-tools label{display:grid;gap:4px;color:var(--muted);font-size:.78rem;font-weight:900}.notice-heading-search{min-width:min(260px,100%)}.notice-heading-search .search-input-shell{min-height:42px;background:var(--surface-muted)}.notice-heading-search input{width:100%;border:0;background:transparent;color:var(--ink);padding:10px 0}.notice-pending-section{display:grid;gap:12px}.notice-pending-filters{display:grid;grid-template-columns:minmax(180px,360px) auto auto;align-items:end;gap:10px;border:1px solid rgba(138,15,115,.12);border-radius:var(--radius-card);background:var(--surface-soft);padding:12px}.notice-pending-filters label{display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:900}.notice-pending-filters select{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:10px 12px}.notice-pending-filters .primary-action,.notice-pending-filters .secondary-action{white-space:nowrap}.register-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,220px);align-items:center;gap:10px;min-width:0}.register-toolbar select{flex:0 0 auto}.date-navigator{display:grid;grid-template-columns:minmax(88px,auto) minmax(210px,1fr) minmax(88px,auto) auto;align-items:stretch;gap:8px;min-width:0;max-width:100%}.date-navigator button,.date-navigator label{min-width:0;min-height:44px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius-control);padding:8px 10px;background:var(--surface-soft);color:var(--ink);font-weight:800;white-space:nowrap}.date-input-card{min-width:0;position:relative;justify-content:center;overflow:hidden;cursor:pointer}.date-input-card>span{width:100%;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;color:var(--claret);overflow:visible;text-align:center;text-overflow:clip;white-space:normal;line-height:1.15}.date-input-card:focus-within{border-color:#8a0f7342;box-shadow:0 0 0 4px #8a0f7314}.date-navigator button span{min-width:0;overflow-wrap:anywhere}.date-navigator button{cursor:pointer}.date-navigator button:disabled{cursor:not-allowed;opacity:.48}.date-navigator input{box-sizing:border-box;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;flex:1 1 auto;border:0;min-height:28px;padding:0;background:transparent;color:transparent;cursor:pointer;font:inherit;line-height:1.2;opacity:0}.batch-form,.notice-form,.register-form,.story-form,.calendar-form,.milestone-form{display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius-card);background:linear-gradient(145deg,#ffffffc7,#f8f3f9d1),var(--surface-muted);padding:14px}.batch-card{border:1px solid rgba(63,36,66,.1);border-radius:22px;background:var(--surface);overflow:hidden}.batch-card summary{min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;color:var(--ink);cursor:pointer;list-style:none}.batch-card summary::-webkit-details-marker{display:none}.batch-card summary:hover{background:#8a0f730b}.batch-card summary span{min-width:0;display:grid;gap:2px}.batch-card summary small{color:var(--muted);font-weight:700}.batch-card-icon{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:15px;background:var(--claret-soft);color:var(--claret)}.batch-card-chevron{color:var(--muted);transition:transform .16s ease}.batch-card[open] .batch-card-chevron{transform:rotate(90deg)}.batch-scope-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:10px;align-items:end;border-top:1px solid rgba(63,36,66,.08);background:#ffffff9e;padding:12px 14px 0}.batch-scope-card>span,.batch-scope-card label{min-width:0;display:grid;gap:4px;color:var(--muted);font-size:.78rem;font-weight:900}.batch-scope-card strong{color:var(--ink);font-size:.94rem}.batch-scope-card small{overflow-wrap:anywhere}.batch-scope-card select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:8px 10px;font-weight:850}.batch-form{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;border:0;border-top:1px solid var(--line);border-radius:0;background:#ffffff6b;box-shadow:none}.batch-form.batch-wizard{grid-template-columns:1fr;gap:12px}.batch-step{min-width:0;display:grid;gap:8px;border:1px solid rgba(138,15,115,.1);border-radius:18px;background:#ffffffb8;padding:10px}.batch-feature-select{grid-template-columns:minmax(0,1fr) minmax(160px,260px);align-items:center}.batch-step strong,.batch-step small{display:block}.batch-step small{color:var(--muted);font-size:.78rem;font-weight:850}.batch-feature-select select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:9px 11px;font-weight:900}.batch-step-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.batch-picker-actions{display:inline-flex;gap:6px}.batch-student-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:7px}.batch-student-grid button{min-width:0;min-height:58px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 7px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink);padding:7px;text-align:left;cursor:pointer}.batch-student-grid button.selected{border-color:#8a0f7347;background:var(--claret-soft);box-shadow:inset 3px 0 0 var(--claret)}.batch-student-check{grid-row:1 / span 2;width:24px;height:24px;display:inline-grid;place-items:center;border:1px solid rgba(138,15,115,.18);border-radius:999px;color:var(--claret);background:var(--surface)}.batch-student-grid strong,.batch-student-grid small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.batch-student-grid strong{font-size:.86rem}.batch-student-grid small{color:var(--muted);font-size:.72rem;font-weight:800}.batch-number-field,.batch-submit-action{grid-column:1 / -1}.batch-form .visual-field,.batch-form .visual-options{gap:5px}.batch-form .visual-option{min-height:74px;gap:3px;padding:5px 3px}.batch-form .visual-option-icon{width:46px;height:46px;border-radius:14px}.batch-form .visual-option strong{font-size:.74rem}.batch-form .visual-option small{display:none}.batch-observation-field{grid-column:1 / -1;display:grid;gap:8px;border:1px solid rgba(138,15,115,.1);border-radius:18px;background:#ffffffb8;padding:10px}.batch-observation-field>span{color:var(--ink);font-weight:950}.batch-observation-field textarea{min-height:86px}.batch-form>.secondary-action{min-height:46px}.batch-observation-save{background:var(--claret-soft);color:var(--claret)}.register-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-items:start}.register-section-heading{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;margin-top:2px}.register-section-heading-icon{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:13px;background:var(--claret-soft);color:var(--claret)}.register-section-heading h3,.register-section-heading p,.register-section-heading small{margin:0}.register-section-heading h3{color:var(--ink);font-size:1.02rem;line-height:1.15}.register-section-heading small{display:block;margin-top:2px;color:var(--muted);font-size:.84rem;font-weight:800;line-height:1.35}.register-selection-bar{min-width:0;display:grid;grid-template-columns:minmax(170px,.7fr) minmax(220px,1fr) minmax(250px,1fr) minmax(220px,.9fr) auto;gap:10px;align-items:end;border:1px solid rgba(63,36,66,.1);border-radius:20px;background:#ffffffd1;padding:12px;box-shadow:var(--shadow-subtle)}.register-selection-bar>div:first-child,.register-selection-bar label{min-width:0;display:grid;gap:6px;color:var(--muted);font-size:.8rem;font-weight:900}.register-selection-bar>div:first-child strong{color:var(--ink);font-size:.94rem}.register-selection-bar>div:first-child small{min-width:0;overflow:hidden;color:var(--muted);font-weight:800;text-overflow:ellipsis;white-space:nowrap}.register-selection-bar>div:first-child .selection-hint{color:var(--claret);font-size:.76rem;white-space:normal}.register-student-select select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:10px 11px;font-weight:850}.batch-form>strong{grid-column:1 / -1}.batch-form>button{grid-column:span 2;justify-self:stretch}.batch-form label,.notice-form label,.register-form label,.story-form label,.calendar-form label,.milestone-form label{min-width:0;display:grid;gap:7px;color:var(--muted);font-size:.84rem;font-weight:800}.batch-form input,.batch-form select,.notice-form input,.notice-form select,.register-form input,.register-form select,.register-form textarea,.story-form input,.story-form select,.story-form textarea,.calendar-form input,.calendar-form select,.calendar-form textarea,.milestone-form input,.milestone-form select,.milestone-form textarea{box-sizing:border-box;min-width:0;width:100%;max-width:100%;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 11px;background:var(--surface);color:var(--ink)}.batch-form input:focus,.batch-form select:focus,.notice-form input:focus,.notice-form select:focus,.register-form input:focus,.register-form select:focus,.register-form textarea:focus,.story-form input:focus,.story-form select:focus,.story-form textarea:focus,.calendar-form input:focus,.calendar-form select:focus,.calendar-form textarea:focus,.milestone-form input:focus,.milestone-form select:focus,.milestone-form textarea:focus,.message-compose textarea:focus,.internal-notice-form input:focus,.internal-notice-form select:focus,.internal-notice-form textarea:focus,.internal-notice-edit-form input:focus,.internal-notice-edit-form textarea:focus,.internal-message-edit-form textarea:focus,.new-conversation select:focus{border-color:var(--claret);outline:3px solid rgba(138,15,115,.12);outline-offset:1px}.notice-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:14px;border:1px solid var(--line);border-radius:var(--radius-card);background:linear-gradient(145deg,#ffffffc7,#f8f3f9d1);padding:18px}.notice-form>strong{grid-column:1 / -1}.notice-material-shortcuts,.notice-student-shortcuts,.notice-active-summary{grid-column:1 / -1}.notice-material-shortcuts,.notice-student-shortcuts{display:grid;gap:8px}.notice-material-shortcuts{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch}.notice-student-shortcuts{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.notice-student-shortcuts{align-items:center;border:1px solid rgba(138,15,115,.12);border-radius:var(--radius-control);background:#ffffff9e;padding:10px}.notice-student-shortcuts>span{color:var(--muted);font-size:.78rem;font-weight:900}.notice-material-shortcuts button,.notice-student-shortcuts button{border:1px solid var(--line);min-height:40px;border-radius:var(--radius-control);background:var(--surface);color:var(--ink);display:inline-flex;align-items:center;gap:7px;padding:7px 10px;font-weight:850;cursor:pointer}.notice-material-shortcuts button:hover,.notice-material-shortcuts button:focus-visible,.notice-student-shortcuts button:hover,.notice-student-shortcuts button:focus-visible{border-color:#8a0f734d;outline:3px solid rgba(138,15,115,.16);outline-offset:2px;box-shadow:var(--shadow-subtle)}.notice-material-shortcuts button.selected,.notice-material-shortcuts button[aria-pressed=true],.notice-student-shortcuts button.selected,.notice-student-shortcuts button[aria-pressed=true]{border-color:#8a0f736b;background:var(--claret-soft);color:var(--claret)}.notice-material-shortcuts button{border-radius:999px;min-height:38px;justify-content:center;padding:6px 9px;font-size:.86rem;line-height:1.1;white-space:nowrap}.notice-student-copy{min-width:0;display:grid;gap:1px;text-align:left}.notice-student-copy strong,.notice-student-copy small{min-width:0;max-width:126px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notice-student-copy small{color:var(--muted);font-size:.72rem;font-weight:850}.notice-student-shortcuts button.selected .notice-student-copy small,.notice-student-shortcuts button[aria-pressed=true] .notice-student-copy small{color:var(--claret)}.notice-student-count{min-width:22px;border-radius:999px;padding:2px 7px;background:var(--gold-soft);color:var(--gold-text);font-size:.74rem;text-align:center}.notice-active-summary{margin:0;border-radius:var(--radius-control);background:var(--claret-soft);color:var(--claret);padding:9px 11px;font-weight:800}.notice-active-summary.warning{background:var(--gold-soft);color:var(--gold-text)}.authorization-active-summary{display:grid;gap:6px;border:1px solid rgba(63,125,88,.18);border-radius:var(--radius-control);background:var(--green-soft);color:var(--green);padding:12px}.authorization-active-summary strong,.authorization-active-summary span{color:var(--green)}.authorization-active-summary span{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;font-weight:800}.authorization-draft-review{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;border:1px solid rgba(63,125,88,.18);border-radius:var(--radius-control);background:linear-gradient(135deg,#ffffffe0,#f2faf5c2),var(--surface-soft);padding:12px}.authorization-draft-review>div{min-width:0;display:grid;gap:6px}.authorization-review-icon{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:14px;background:var(--green-soft);color:var(--green)}.notice-manage-row{align-items:center}.notice-manage-row div{flex:1}.messages-layout{display:grid;grid-template-columns:minmax(220px,.42fr) minmax(0,1fr);gap:16px}.messages-layout.single-thread{grid-template-columns:minmax(0,1fr)}.internal-communication{margin-top:6px}.conversation-list{display:grid;align-content:start;gap:10px}.conversation-sidebar{min-width:0;display:grid;align-content:start;gap:10px}.conversation-tools{display:grid;gap:8px;border:1px solid rgba(138,15,115,.12);border-radius:var(--radius-control);background:var(--surface-soft);padding:10px}.conversation-tools label{display:grid;gap:5px;color:var(--muted);font-size:.76rem;font-weight:900}.conversation-tools input{width:100%;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);padding:9px 12px}.conversation-tools button{min-height:38px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--claret);display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;font-size:.84rem;font-weight:900}.conversation-tools button:hover,.conversation-tools button:focus-visible,.conversation-tools button.selected,.conversation-tools button[aria-pressed=true]{border-color:#8a0f734d;background:var(--claret-soft);box-shadow:var(--shadow-subtle)}.conversation-list button{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);color:var(--ink);padding:12px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;text-align:left}.conversation-list button:hover,.student-picker button:hover{border-color:#8a0f7347;box-shadow:var(--shadow-subtle);transform:translateY(-1px)}.conversation-list button.selected{border-color:var(--claret);box-shadow:0 0 0 3px #8a0f731a}.conversation-status-icon{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:12px;background:var(--green-soft);color:var(--green)}.conversation-status-icon.pending{background:var(--gold-soft);color:var(--gold-text)}.conversation-copy,.conversation-heading div{min-width:0;display:grid;gap:4px}.conversation-copy strong,.conversation-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-list small,.conversation-heading small,.message-bubble small{color:var(--muted)}.conversation-status{grid-column:2;justify-self:start;border-radius:999px;background:var(--green-soft);color:var(--green);font-size:.72rem;font-weight:950;line-height:1;padding:5px 8px}.conversation-status.pending{background:var(--gold-soft);color:var(--gold-text)}.conversation-thread{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-muted);box-shadow:var(--shadow-subtle);overflow:hidden}.conversation-empty-thread{min-height:260px;display:grid;place-items:center;align-content:center;justify-items:center;gap:14px;padding:24px;text-align:center}.conversation-empty-thread h3,.conversation-empty-thread p{margin:0}.conversation-empty-thread p:not(.eyebrow){color:var(--muted)}.conversation-heading{display:flex;align-items:flex-start;gap:12px;border-bottom:1px solid var(--line);padding:14px 16px;background:var(--surface-soft)}.message-list{min-height:220px;max-height:420px;overflow:auto;padding:16px;display:grid;align-content:start;gap:10px}.internal-board{display:grid;gap:12px;border-bottom:1px solid var(--line);background:#ffffff7a;padding:14px}.internal-notice-form{display:grid;grid-template-columns:minmax(160px,.75fr) minmax(220px,1fr) auto auto;gap:10px;align-items:end}.internal-notice-form input,.internal-notice-form select,.internal-notice-form textarea,.internal-notice-edit-form input,.internal-notice-edit-form textarea,.internal-message-edit-form textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:10px 11px}.internal-notice-form label{min-width:0;display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:900}.internal-notice-form .inline-checkbox{min-height:42px;display:inline-flex;align-items:center;gap:7px;color:var(--ink)}.internal-notice-form .inline-checkbox input{width:auto}.internal-notice-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.internal-notice-list article{--postit-bg: var(--postit-yellow-bg);--postit-border: rgba(185, 139, 40, .22);--postit-pin: var(--postit-yellow-pin);position:relative;border:1px solid var(--postit-border);border-radius:6px 14px 8px;background:linear-gradient(180deg,rgba(255,255,255,.34),transparent 44px),var(--postit-bg);padding:18px 14px 14px;box-shadow:0 12px 24px #3f24421a,inset 0 -18px 28px #3f244209;transform:rotate(-.35deg)}.internal-notice-list article:before{content:"";position:absolute;top:7px;left:50%;width:34px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--postit-pin) 78%,white);box-shadow:0 2px 5px #3f24421f;transform:translate(-50%) rotate(1deg)}.internal-notice-list article:nth-child(5n+2){--postit-bg: var(--postit-blue-bg);--postit-border: rgba(63, 113, 145, .2);--postit-pin: var(--postit-blue-pin);transform:rotate(.45deg)}.internal-notice-list article:nth-child(5n+3){--postit-bg: var(--postit-green-bg);--postit-border: rgba(63, 125, 88, .2);--postit-pin: var(--postit-green-pin);transform:rotate(-.15deg)}.internal-notice-list article:nth-child(5n+4){--postit-bg: var(--postit-rose-bg);--postit-border: rgba(184, 27, 82, .18);--postit-pin: var(--postit-rose-pin);transform:rotate(.3deg)}.internal-notice-list article:nth-child(5n){--postit-bg: var(--postit-purple-bg);--postit-border: rgba(138, 15, 115, .16);--postit-pin: var(--postit-purple-pin);transform:rotate(-.5deg)}.internal-notice-list article.pinned{border-color:color-mix(in srgb,var(--postit-pin) 46%,var(--postit-border));box-shadow:0 14px 30px #3f244224,inset 0 -18px 28px #3f244209}.internal-notice-list article.pinned:before{height:10px;background:var(--postit-pin)}.internal-notice-list article div{display:grid;gap:3px}.internal-notice-list article p{margin:8px 0 0;color:var(--ink);line-height:1.45;overflow-wrap:anywhere}.internal-notice-list article small{color:color-mix(in srgb,var(--ink) 58%,var(--postit-pin));font-weight:800}.internal-notice-edit-form,.internal-message-edit-form{display:grid;gap:8px}.notice-card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.message-card-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:4px}.message-card-actions .icon-action{width:30px;height:30px;min-height:30px;padding:0;border-radius:10px}.message-bubble{max-width:min(76%,620px);border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--surface);box-shadow:0 4px 14px #3f24420a}.message-bubble.centro{margin-left:auto;background:var(--claret-soft);border-color:#8a0f732e}.message-bubble.deleted{opacity:.72}.message-bubble.deleted p{font-style:italic}.message-bubble p{margin:6px 0;line-height:1.5;overflow-wrap:anywhere}.message-compose{border-top:1px solid var(--line);background:var(--surface-soft);padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end}.message-compose-main{display:grid;gap:8px}.message-draft-status{margin:0;border-radius:999px;background:var(--claret-soft);color:var(--claret);display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:6px 10px;font-size:.78rem;font-weight:900}.message-draft-status.warning{background:var(--gold-soft);color:var(--gold-text)}.message-compose-actions{display:flex;align-items:flex-end;gap:8px}.message-compose textarea,.conversation-empty-thread select,.new-conversation select{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 11px;background:var(--surface);color:var(--ink)}.conversation-empty-thread select{max-width:360px}.new-conversation{display:flex;gap:12px;justify-content:flex-end}.new-conversation select{max-width:320px}.student-selector{position:sticky;z-index:5;top:12px;display:grid;gap:11px;border:1px solid rgba(63,36,66,.1);border-radius:22px;padding:12px;background:var(--surface);box-shadow:0 16px 34px #3f24420f}.daily-register .register-workspace .student-selector{position:sticky;top:12px}.student-selector-summary{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;cursor:pointer;list-style:none;min-height:42px}.student-selector-summary::-webkit-details-marker{display:none}.student-selector-summary>div{min-width:0;display:grid;gap:3px}.student-selector-summary strong,.student-selector-summary small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-selector-summary small{color:var(--muted);font-weight:850}.student-selector-chevron{color:var(--muted);transition:transform .18s ease}.student-selector[open] .student-selector-chevron{transform:rotate(90deg)}.student-selector-body{display:grid;gap:10px;padding-top:10px}.student-selector-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.42fr);gap:10px;align-items:end}.student-selector-heading div{min-width:0;display:grid;gap:3px}.student-selector-heading small{color:var(--muted);font-weight:800}.student-filter-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.register-selection-bar .student-filter-chips{grid-template-columns:repeat(4,minmax(0,1fr));align-self:end}.student-filter-chips button{min-width:0;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:999px;padding:0 9px;background:var(--surface);color:var(--muted);font-size:.84rem;font-weight:850;cursor:pointer}.student-filter-chips button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-filter-chips button:hover,.student-filter-chips button:focus-visible{border-color:#8a0f7347;outline:3px solid rgba(138,15,115,.12);outline-offset:2px;background:var(--claret-soft)}.student-filter-chips button.active{border-color:#8a0f7357;background:var(--surface);color:var(--claret);box-shadow:inset 0 0 0 1px #8a0f7314}.student-selector select{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 11px;background:var(--surface);color:var(--ink)}.student-search input{width:100%;border:0;padding:10px 0;background:transparent;color:var(--ink)}.student-search{display:grid;gap:6px;color:var(--muted);font-size:.84rem;font-weight:900}.register-selection-bar .student-search input{min-height:40px}.register-selection-bar .student-picker-status{align-self:end;min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:5px;white-space:nowrap}.active-student-block-summary{grid-column:1 / -1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.active-student-block-summary span{min-width:0;min-height:38px;display:inline-grid;grid-template-columns:auto minmax(0,auto);align-items:center;justify-content:center;gap:4px;border-radius:999px;padding:6px 7px;font-size:.72rem;font-weight:950}.active-student-block-summary span.pending{background:var(--gold-soft);color:var(--gold-text)}.student-picker-icon.partial,.student-picker-status.partial,.register-status-chip.partial{background:var(--blue-soft);color:var(--blue-text)}.active-student-block-summary span.published{background:var(--green-soft);color:var(--green)}.active-student-block-summary span.changes{background:var(--rose-soft);color:var(--rose-text)}.active-student-block-summary strong,.active-student-block-summary small{min-width:0;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.active-student-block-summary small{display:none;grid-column:auto;opacity:.9}.register-student-cards{grid-column:1 / -1;display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-inline:contain;padding:2px 2px 8px;scroll-snap-type:x proximity;scrollbar-gutter:stable}.register-student-cards button{min-width:188px;max-width:230px;flex:0 0 188px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:16px;background:#ffffffc7;color:var(--ink);padding:8px;text-align:left;scroll-snap-align:start;cursor:pointer}.register-student-cards button:hover,.register-student-cards button:focus-visible{border-color:#8a0f7342;outline:3px solid rgba(138,15,115,.1);outline-offset:1px;background:var(--surface)}.register-student-cards button.selected{border-color:#8a0f7375;background:var(--claret-soft);box-shadow:inset 4px 0 0 var(--claret)}.register-student-cards .student-picker-status{grid-column:2;justify-self:start}.student-picker{display:grid;grid-template-columns:minmax(0,1fr);gap:7px}.daily-register .student-picker{max-height:320px;overflow:auto;overscroll-behavior:contain;padding-right:2px;scrollbar-gutter:stable}.student-picker button{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:16px;padding:9px;background:#ffffffbd;color:var(--ink);text-align:left;cursor:pointer}.student-picker button:hover,.student-picker button:focus-visible{border-color:#8a0f7338;outline:3px solid rgba(138,15,115,.1);outline-offset:1px;background:var(--surface)}.student-picker button.selected{border-color:var(--claret);box-shadow:inset 4px 0 0 var(--claret),0 0 0 3px #8a0f731a;background:var(--surface)}.student-picker-icon{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:11px;background:var(--surface-muted);color:var(--muted)}.student-picker-icon img{width:100%;height:100%;border-radius:inherit;object-fit:cover}.student-picker-icon.base,.student-picker-status.base{background:var(--blue-soft);color:var(--blue-text)}.student-picker-icon.pending,.student-picker-status.pending{background:var(--gold-soft);color:var(--gold-text)}.student-picker-icon.ready,.student-picker-status.ready,.student-picker-icon.published,.student-picker-status.published{background:var(--green-soft);color:var(--green)}.student-picker-icon.changes,.student-picker-status.changes{background:var(--claret-soft);color:var(--claret)}.student-picker-copy{min-width:0;display:grid;gap:2px}.student-picker-copy strong,.student-picker-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-picker-copy small{color:var(--muted);font-size:.76rem;font-weight:800}.student-picker-status{grid-column:auto;justify-self:end;border-radius:999px;background:var(--surface-muted);color:var(--muted);font-size:.68rem;font-weight:950;line-height:1;padding:5px 7px}.register-status-chip{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 11px;font-size:.78rem;font-weight:900}.register-form-heading .register-status-chip{margin-left:auto}.register-status-chip-mobile{display:none;justify-self:start}.register-status-chip.pending{background:var(--gold-soft);color:var(--gold-text)}.active-student-block-summary span.partial,.register-status-chip.base{background:var(--blue-soft);color:var(--blue-text)}.register-status-chip.ready,.register-status-chip.published{background:var(--green-soft);color:var(--green)}.register-status-chip.changes{background:var(--claret-soft);color:var(--claret)}.register-status-chip.draft{background:var(--surface-disabled);color:var(--muted)}.empty-state.compact{padding:10px 12px;border-radius:var(--radius-control);box-shadow:none}.register-form{grid-template-columns:1fr;align-items:start;gap:10px;border-color:#3f24421a;border-radius:24px;background:var(--surface)}.register-form-heading,.register-form .wide-field{grid-column:1 / -1}.register-observation-field{border:1px solid rgba(138,15,115,.12);border-radius:var(--radius-control);background:#ffffffad;padding:12px}.register-family-preview{grid-column:1 / -1;min-width:0;display:grid;border:1px solid rgba(138,15,115,.11);border-radius:20px;background:linear-gradient(145deg,#fffffffa,#fbf7fae6),var(--surface);overflow:hidden}.register-family-preview summary{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;cursor:pointer;list-style:none}.register-family-preview summary::-webkit-details-marker{display:none}.register-family-preview summary svg{color:var(--claret);transition:transform .16s ease}.register-family-preview[open] summary svg{transform:rotate(90deg)}.register-family-preview p,.register-family-preview strong{min-width:0;margin:0}.register-family-preview summary strong{color:var(--ink);font-size:.96rem}.register-family-preview .record-visual-summary,.register-family-preview>.empty-state{margin:0 12px 12px}.dictation-field{display:grid;gap:8px;border-radius:18px;transition:background .2s ease,box-shadow .2s ease}.dictation-field.recording{background:#b81b520f;box-shadow:0 0 0 3px #b81b5214}.dictation-field textarea{width:100%}.dictation-field.recording textarea{border-color:#b81b525c;box-shadow:0 0 0 4px #b81b5214,0 14px 32px #b81b521a}.dictation-button{width:fit-content;min-height:34px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid rgba(138,15,115,.14);border-radius:999px;background:var(--surface);color:var(--claret);padding:0 11px;font-size:.78rem;font-weight:950;touch-action:none;user-select:none;-webkit-user-select:none}.dictation-button.listening{width:100%;min-height:48px;border-color:#b81b5252;background:linear-gradient(135deg,var(--rose-text),var(--claret));color:var(--white);box-shadow:0 16px 32px #b81b5238;transform:translateY(-1px)}.dictation-recording-dot{width:9px;height:9px;border-radius:50%;background:currentColor;box-shadow:0 0 #b81b5247;animation:recording-pulse 1.35s ease-out infinite}.dictation-status{min-height:18px;color:var(--muted);font-size:.77rem;font-weight:800}.dictation-status.active{color:var(--rose-text)}.dictation-live-indicator{width:100%;min-height:42px;display:inline-flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(184,27,82,.2);border-radius:18px;background:#b81b5214;color:var(--rose-text);padding:8px 11px;font-size:.78rem;font-weight:950}.dictation-wave{display:inline-flex;align-items:center;gap:4px}.dictation-wave i{width:4px;height:18px;border-radius:999px;background:currentColor;animation:voice-level .82s ease-in-out infinite}.dictation-wave i:nth-child(2){animation-delay:.12s}.dictation-wave i:nth-child(3){animation-delay:.24s}.dictation-wave i:nth-child(4){animation-delay:.36s}.dictation-wave i:nth-child(5){animation-delay:.48s}@keyframes voice-level{0%,to{transform:scaleY(.45);opacity:.55}50%{transform:scaleY(1.18);opacity:1}}@keyframes recording-pulse{0%{box-shadow:0 0 #b81b5247}70%{box-shadow:0 0 0 8px #b81b5200}to{box-shadow:0 0 #b81b5200}}.register-form .visual-field,.register-form .optional-detail{grid-column:1 / -1}.register-form>label:not(.optional-detail):not(.wide-field):not(.check-field){grid-column:1 / -1}.register-block{grid-column:1 / -1;display:grid;gap:8px;border:1px solid rgba(63,36,66,.1);border-radius:18px;background:var(--surface-soft);padding:10px;box-shadow:none}.register-block-heading{display:flex;justify-content:space-between;gap:10px;align-items:center}.register-block-heading>strong,.register-block-heading>span:first-child{color:var(--ink);font-size:.92rem;font-weight:950}.register-block-status{display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:999px;padding:5px 8px;font-size:.72rem;font-weight:950;white-space:nowrap}.register-block-status.pending{background:var(--gold-soft);color:var(--gold-text)}.register-block-status.published{background:var(--green-soft);color:var(--green)}.register-block-status.changes{background:var(--rose-soft);color:var(--rose-text)}.register-block-support{display:grid;grid-template-columns:1fr;gap:8px}.register-block-support.with-extra{grid-template-columns:minmax(122px,.18fr) minmax(0,1fr)}.register-block-extra{min-width:0}.compact-number-field{height:100%;align-content:start;border:1px solid var(--line);border-radius:var(--radius-control);background:#ffffffb8;padding:9px 10px}.compact-number-field input{min-height:39px;padding:8px 10px;text-align:center;font-size:1rem;font-weight:950}.register-block-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.register-block-actions .primary-action,.register-block-actions .secondary-action{min-height:34px;padding:0 10px;font-size:.78rem}.register-block-actions .secondary-action{border-color:#3f24421a;background:transparent;color:var(--muted);box-shadow:none}.register-block-actions .secondary-action:hover,.register-block-actions .secondary-action:focus-visible{background:var(--surface);color:var(--ink)}.register-block-actions .primary-action{min-width:96px;box-shadow:0 8px 18px #8a0f731f}.visual-field{min-width:0;display:grid;gap:7px;border:0;margin:0;padding:0}.visual-field legend{color:var(--ink);font-size:.86rem;font-weight:900}.visual-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.visual-option{position:relative;min-width:0;min-height:112px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border:1px solid rgba(63,36,66,.1);border-radius:20px;padding:10px 7px;background:#ffffffe0;color:var(--ink);cursor:pointer;overflow:hidden;text-align:center;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.visual-option:hover{transform:translateY(-1px);box-shadow:0 14px 28px #3f244214}.visual-option input{position:absolute;inline-size:1px;block-size:1px;opacity:0}.visual-option:has(input:checked){border-color:currentColor;background:var(--surface);box-shadow:inset 0 -3px 0 currentColor,0 0 0 3px #8a0f7314}.visual-option-icon{position:relative;width:78px;height:78px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:0;border-radius:22px;background:#ffffff70;opacity:1}.visual-option-png{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;border-radius:inherit;background-position:center;background-repeat:no-repeat;background-size:contain}.visual-option-symbol{display:inline-flex;align-items:center;justify-content:center;color:currentColor;font-size:1.25rem;font-weight:900;line-height:1}.visual-option strong{color:var(--ink);min-width:0;max-width:100%;overflow:hidden;font-size:.88rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.visual-option small{display:none;color:var(--muted);font-weight:800}.tone-green .visual-option-icon,.record-visual-card.tone-green .visual-option-icon{color:var(--green)}.tone-gold .visual-option-icon,.record-visual-card.tone-gold .visual-option-icon{color:var(--gold-text)}.tone-blue .visual-option-icon,.record-visual-card.tone-blue .visual-option-icon{color:var(--blue-text)}.tone-rose .visual-option-icon,.record-visual-card.tone-rose .visual-option-icon{color:var(--rose-text)}.tone-neutral .visual-option-icon,.record-visual-card.tone-neutral .visual-option-icon{color:var(--muted)}.optional-detail{align-self:stretch;border:1px solid rgba(63,36,66,.1);border-radius:var(--radius-control);background:#ffffffc2;padding:0}.optional-detail summary{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--muted);cursor:pointer;font-size:.82rem;font-weight:900;list-style:none;padding:0 10px}.optional-detail summary::-webkit-details-marker{display:none}.optional-detail summary svg{color:var(--claret);transition:transform .16s ease}.optional-detail[open] summary svg{transform:rotate(90deg)}.optional-detail label{padding:0 10px 10px}.record-visual-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.record-visual-summary-rows{grid-template-columns:1fr}.record-visual-summary-rows .record-visual-card{align-items:center;border-radius:20px;padding:12px 14px}.record-visual-summary-rows .record-visual-card .visual-option-icon{width:66px;height:66px}.record-visual-summary-rows .record-visual-card strong{font-size:1.08rem}.record-visual-summary-family .record-visual-card:first-child{border-color:#8a0f7329;background:linear-gradient(145deg,#fffffffa,#fbf7faf2)}.record-visual-summary-family .record-visual-card:first-child .visual-option-icon{width:72px;height:72px;border-radius:22px}.record-visual-card{min-width:0;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border:1px solid rgba(63,36,66,.09);border-radius:18px;padding:11px;background:var(--surface);box-shadow:0 12px 26px #3f24420e}.record-visual-card.wide{grid-column:1 / -1;border-color:#8a0f7321;background:linear-gradient(145deg,#fffffffa,#fcf8fceb)}.record-visual-card small{display:block;color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.035em;text-transform:uppercase}.record-visual-card strong{display:block;margin-top:2px;color:var(--ink);font-size:1rem;line-height:1.15}.record-visual-card p{margin:7px 0 0;color:var(--body-copy);font-size:.92rem;font-weight:750;line-height:1.42}.record-visual-card p span{display:block;margin-bottom:2px;color:var(--muted);font-size:.7rem;font-weight:900;letter-spacing:.035em;text-transform:uppercase}.record-visual-card .visual-option-icon{width:58px;height:58px;border-radius:18px}.record-visual-card.wide p{border-left:3px solid var(--claret);margin-top:8px;padding-left:10px;color:var(--ink)}.record-visual-summary-family .record-visual-card.wide{border-color:#8a0f7329;background:var(--claret-mist)}.story-form,.calendar-form,.milestone-form{grid-template-columns:repeat(2,minmax(0,1fr))}.milestone-form input[type=date],.milestone-form input[type=file]{min-inline-size:0;overflow:hidden;text-overflow:ellipsis}.milestone-form input[type=date]{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:block}.milestones-panel,.birthdays-panel{display:grid;gap:18px;scroll-margin-top:20px}.birthdays-work-grid{grid-template-columns:minmax(0,1fr)}.birthday-toolbar{display:flex;flex-wrap:wrap;align-items:end;gap:12px;border:1px solid var(--line);border-radius:var(--radius-card);background:#ffffffb8;padding:12px}.birthday-toolbar label{display:grid;min-width:min(100%,190px);gap:5px;color:var(--muted);font-size:.78rem;font-weight:900}.birthday-toolbar select{min-height:38px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);padding:0 10px;font-weight:850}.birthday-view-toggle{display:inline-flex;flex-wrap:wrap;gap:8px}.birthday-view-toggle button{min-height:38px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:#ffffffe6;color:var(--muted);padding:0 12px;font-weight:900;cursor:pointer}.birthday-view-toggle button.active,.birthday-view-toggle button[aria-pressed=true]{border-color:#8a0f7357;background:var(--claret-soft);color:var(--claret)}.birthday-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:12px}.birthday-card{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft);box-shadow:var(--shadow-subtle);color:inherit;padding:12px;text-align:left}button.birthday-card{cursor:pointer}button.birthday-card:hover,button.birthday-card:focus-visible{border-color:#8a0f7347;outline:3px solid rgba(138,15,115,.12);outline-offset:2px;background:var(--surface)}button.birthday-card:disabled{color:inherit;cursor:default;opacity:1}.birthday-avatar{width:58px;height:58px;border:1px solid rgba(138,15,115,.16);border-radius:18px;object-fit:cover}.birthday-avatar-placeholder{display:inline-grid;place-items:center;background:var(--claret-soft);color:var(--claret);font-size:1.35rem;font-weight:900}.birthday-card>div{min-width:0;display:grid;justify-items:start;gap:5px}.birthday-card strong,.birthday-card small{overflow-wrap:anywhere}.birthday-card strong{color:var(--ink);font-size:1rem;line-height:1.2}.birthday-card small{color:var(--muted);font-weight:750;line-height:1.35}.birthday-calendar{display:grid;gap:10px}.birthday-calendar-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.birthday-calendar-heading strong{color:var(--ink);font-size:1rem;text-transform:capitalize}.birthday-calendar-heading small{color:var(--muted);font-weight:850}.birthday-calendar-weekdays,.birthday-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.birthday-calendar-weekdays span{color:var(--muted);font-size:.76rem;font-weight:900;text-align:center}.birthday-day{min-height:86px;display:grid;align-content:start;gap:6px;border:1px solid var(--line);border-radius:12px;background:#ffffffad;padding:8px}.birthday-day>strong{color:var(--muted);font-size:.84rem;line-height:1}.birthday-day.has-birthday{border-color:#d5b25861;background:var(--gold-soft)}.birthday-day button{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;border:0;border-radius:999px;background:#ffffffc7;color:var(--ink);padding:4px 6px 4px 4px;font-size:.74rem;font-weight:900;text-align:left;cursor:pointer}.birthday-day button:disabled{color:inherit;cursor:default;opacity:1}.birthday-day-gift{width:24px;height:24px;display:inline-grid;place-items:center;border-radius:999px;background:var(--surface);color:var(--ink);box-shadow:0 6px 16px #3f244214}.birthday-day-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.birthday-day button small{color:var(--claret);font-size:.7rem}.milestone-list{display:grid;gap:12px}.milestone-status-filter,.story-status-filter,.calendar-status-filter,.authorization-status-filter{display:flex;flex-wrap:wrap;gap:8px}.story-status-filter{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.milestone-status-filter button,.story-status-filter button,.calendar-status-filter button,.authorization-status-filter button{min-height:38px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--muted);padding:0 12px;font-size:.84rem;font-weight:850;cursor:pointer}.milestone-status-filter button:hover,.milestone-status-filter button:focus-visible,.story-status-filter button:hover,.story-status-filter button:focus-visible,.calendar-status-filter button:hover,.calendar-status-filter button:focus-visible,.authorization-status-filter button:hover,.authorization-status-filter button:focus-visible{border-color:#8a0f7347;outline:3px solid rgba(138,15,115,.12);outline-offset:2px;background:var(--claret-soft);box-shadow:var(--shadow-subtle)}.milestone-status-filter button.active,.milestone-status-filter button[aria-pressed=true],.story-status-filter button.active,.story-status-filter button[aria-pressed=true],.calendar-status-filter button.active,.calendar-status-filter button[aria-pressed=true],.authorization-status-filter button.active,.authorization-status-filter button[aria-pressed=true]{border-color:#8a0f7357;background:var(--claret-soft);color:var(--claret)}.milestone-status-filter strong,.story-status-filter strong,.calendar-status-filter strong,.authorization-status-filter strong{min-width:23px;border-radius:999px;background:#8a0f7314;color:var(--claret);padding:2px 7px;font-size:.75rem;text-align:center}.milestone-item{display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:16px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft);box-shadow:var(--shadow-subtle);padding:14px}.milestone-item>img,.milestone-category-visual{width:112px;height:86px;border-radius:10px;color:var(--claret);background:var(--claret-soft)}.milestone-item>img{object-fit:cover}.milestone-photo-gallery{width:112px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.milestone-photo-gallery .story-preview-photo{width:100%;min-height:40px;height:40px;max-height:40px;border-radius:9px}.milestone-category-visual{display:inline-grid;place-items:center;padding:22px}.milestone-item>div{display:grid;justify-items:start;gap:6px}.milestone-item p{margin:0;color:var(--muted);line-height:1.5}.milestone-item small{color:var(--muted)}.milestone-item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:2px}.milestone-status-icon{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:12px;background:var(--gold-soft);color:var(--gold-text)}.milestone-status-icon.published{background:var(--green-soft);color:var(--green)}.milestone-publish-review{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;border:1px solid var(--gold-muted);border-radius:var(--radius-control);background:var(--cream-muted);padding:12px}.milestone-publish-review>div{min-width:0;display:grid;gap:6px}.milestone-review-icon{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:14px;background:var(--gold-soft);color:var(--gold-text)}.milestone-review-icon.published{background:var(--green-soft);color:var(--green)}.calendar-list{display:grid;gap:12px}.calendar-event{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:16px;align-items:center;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft);box-shadow:var(--shadow-subtle);padding:14px}.calendar-event time{min-height:70px;display:grid;place-items:center;align-content:center;gap:3px;border-radius:10px;background:var(--claret-soft);color:var(--claret);text-align:center}.calendar-event time strong{font-size:1.05rem;text-transform:capitalize}.calendar-event time span,.calendar-event small,.calendar-event p{color:var(--muted)}.calendar-event>div{display:grid;justify-items:start;gap:6px}.calendar-event-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.calendar-status-icon{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:12px;background:var(--gold-soft);color:var(--gold-text)}.calendar-status-icon.published{background:var(--green-soft);color:var(--green)}.calendar-event p{margin:0;line-height:1.5}.calendar-event b{color:var(--gold-text);font-size:.86rem}.calendar-photo-gallery{width:min(100%,420px);grid-template-columns:repeat(auto-fit,minmax(118px,1fr));margin-bottom:6px}.calendar-photo-gallery .story-preview-photo{width:100%;min-height:126px;max-height:170px}.calendar-publish-review{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;border:1px solid rgba(63,125,88,.16);border-radius:var(--radius-control);background:linear-gradient(135deg,#ffffffdb,#f2faf5c2),var(--surface-soft);padding:12px}.calendar-publish-review>div{min-width:0;display:grid;gap:6px}.calendar-review-icon{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:14px;background:var(--surface-muted);color:var(--muted)}.calendar-review-icon.published{background:var(--green-soft);color:var(--green)}.story-form-heading{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(138,15,115,.1);border-radius:22px;background:linear-gradient(135deg,#fffffff5,#fbf7fae0),var(--surface);padding:14px 16px;box-shadow:var(--shadow-subtle)}.story-form-heading div{display:grid;gap:4px}.story-form-heading span,.story-form small,.story-item small,.story-item p{color:var(--muted)}.story-consent-info,.story-students{margin:0;border:1px solid var(--line);border-radius:10px;padding:14px}.story-consent-info{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--surface-muted)}.story-consent-info>div:first-child{display:grid;gap:3px}.story-consent-info strong{color:var(--ink)}.story-consent-info span{color:var(--muted);font-size:.9rem;font-weight:700}.story-publish-review{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;border:1px solid rgba(63,125,88,.16);border-radius:var(--radius-control);background:linear-gradient(135deg,#ffffffdb,#f2faf5c2),var(--surface-soft);padding:12px}.story-publish-review>div{min-width:0;display:grid;gap:6px}.story-photo-preview-grid,.story-gallery,.story-preview-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px}.story-photo-preview{position:relative;min-width:0;overflow:hidden;border:1px solid rgba(138,15,115,.12);border-radius:14px;background:var(--surface);box-shadow:var(--shadow-subtle)}.story-photo-preview img{width:100%;height:112px;display:block;object-fit:cover}.story-photo-preview span{position:absolute;top:7px;left:7px;min-width:26px;min-height:26px;display:inline-grid;place-items:center;border-radius:999px;background:#ffffffe6;color:var(--claret);font-size:.72rem;font-weight:950}.story-photo-preview button{width:100%;min-height:36px;border:0;border-top:1px solid var(--line);background:var(--surface-soft);color:var(--danger);font-weight:900;cursor:pointer}.story-review-icon{width:38px;height:38px;display:inline-grid;place-items:center;border-radius:14px;background:var(--surface-muted);color:var(--muted)}.story-review-icon.published{background:var(--green-soft);color:var(--green)}.story-list-controls{display:grid;grid-template-columns:minmax(180px,.32fr) minmax(0,1fr);gap:12px;align-items:stretch;margin:4px 0 14px;border:1px solid rgba(138,15,115,.1);border-radius:20px;background:#ffffffc7;padding:12px;box-shadow:var(--shadow-subtle)}.story-list-controls label{display:grid;gap:6px;align-content:end;color:var(--muted);font-size:.78rem;font-weight:900}.story-list-controls select{width:100%;min-height:40px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:0 11px;font-weight:850}.consent-summary-list{grid-column:1 / -1;display:grid;gap:6px;border-top:1px solid var(--line);padding-top:10px}.consent-summary-list span{overflow-wrap:anywhere}.story-students legend{color:var(--ink);font-weight:800}.story-students p{color:var(--muted);margin:0 0 12px;font-size:.86rem}.story-students>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.student-consent{display:flex!important;align-items:center;grid-template-columns:auto 1fr;gap:9px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);padding:10px}.student-consent input{width:auto}.student-consent span{display:grid;gap:2px}.allowed{color:var(--green)!important}.blocked{color:var(--danger)!important}.story-list{display:grid;gap:12px}.family-story-list{display:grid;gap:18px}.family-stories-feed .story-preview{display:grid;grid-template-columns:1fr;gap:0;overflow:hidden;border-color:#8a0f731f;border-radius:30px;background:linear-gradient(180deg,#fffffffa,#fbf9fcf0),var(--surface);padding:0;box-shadow:0 20px 54px #31233614;margin:0}.family-story-author{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:18px 20px 14px}.family-story-author>span{width:48px;height:48px;display:inline-grid;place-items:center;border:1px solid var(--gold-muted);border-radius:999px;background:var(--cream-soft);color:var(--ink);font-weight:900}.story-author-photo{width:48px;height:48px;display:block;object-fit:cover;border:1px solid rgba(138,15,115,.16);border-radius:999px;background:var(--surface-soft);box-shadow:0 8px 20px #31233614}.family-story-author>div{min-width:0;display:grid;gap:2px}.family-story-author strong{overflow:hidden;color:var(--ink);font-size:clamp(1.12rem,3.6vw,1.35rem);line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.family-story-author small{color:var(--muted);font-size:.86rem;font-weight:850}.family-story-copy{display:grid;gap:10px;padding:18px 20px 20px}.family-story-copy strong{color:var(--ink);font-size:clamp(1.25rem,3.8vw,1.55rem);line-height:1.1}.family-story-copy p{margin:0;color:var(--body-copy);font-size:1rem;line-height:1.62}.milestone-family-story{display:grid;grid-template-columns:1fr;margin:0}.milestone-family-story>.milestone-category-visual{width:100%;height:180px;border-radius:24px}.family-stories-feed .story-preview-gallery{width:100%;grid-template-columns:1fr;gap:0}.milestone-family-story .story-preview-gallery{width:100%;grid-template-columns:1fr;gap:12px}.story-preview-frame{position:relative;margin:0}.story-preview-photo-button{width:100%;display:block;border:0;background:transparent;padding:0;cursor:zoom-in}.story-preview-photo-button:focus-visible{outline:3px solid rgba(138,15,115,.18);outline-offset:3px}.story-preview-frame figcaption{position:absolute;top:14px;right:14px;min-width:46px;border-radius:999px;background:#211a25ad;color:var(--white);padding:7px 10px;font-size:.82rem;font-weight:950;line-height:1;text-align:center}.family-stories-feed .story-preview-gallery .story-preview-photo,.milestone-family-story .story-preview-gallery .story-preview-photo{width:100%;height:auto;max-height:none;display:block;object-fit:initial;border:0;border-radius:0;background:var(--surface-muted);padding:0;box-shadow:none}.milestone-family-story .story-preview-frame{overflow:hidden;border:1px solid rgba(138,15,115,.12);border-radius:24px;background:var(--surface-muted);box-shadow:var(--shadow-subtle)}.milestone-family-story .story-download-link{width:100%;min-height:46px;justify-content:center;border-width:1px 0 0;border-radius:0}.story-photo-lightbox{position:fixed;z-index:130;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--ink);color:var(--white);padding:max(76px,env(safe-area-inset-top)) 0 max(92px,env(safe-area-inset-bottom))}.story-photo-lightbox img{width:100vw;height:calc(100dvh - 180px);max-height:calc(100dvh - 180px);display:block;object-fit:contain}.story-lightbox-close,.story-lightbox-nav,.story-lightbox-download,.story-lightbox-counter{position:fixed;z-index:1}.story-lightbox-close,.story-lightbox-nav{display:inline-grid;place-items:center;border:0;border-radius:999px;background:#f3e8f129;color:var(--white);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.story-lightbox-close{top:max(18px,env(safe-area-inset-top));left:18px;width:58px;height:58px}.story-lightbox-counter{top:max(24px,env(safe-area-inset-top));right:18px;border-radius:999px;background:#f3e8f129;padding:10px 14px;font-size:.95rem;font-weight:950;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.story-lightbox-nav{top:50%;width:48px;height:48px;transform:translateY(-50%)}.story-lightbox-nav.previous{left:12px}.story-lightbox-nav.next{right:12px}.story-lightbox-download{left:50%;bottom:max(22px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:10px;min-height:52px;border-radius:999px;border:0;background:#f3e8f129;color:var(--white);padding:0 22px;font:inherit;font-weight:950;text-decoration:none;transform:translate(-50%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer}.story-download-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,max-content));gap:10px;margin-top:6px}.story-item{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;border:1px solid var(--line);border-radius:var(--radius-card);padding:16px;background:var(--surface-soft);box-shadow:var(--shadow-subtle)}.story-item-copy{min-width:0}.story-item-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px}.story-status-icon{width:32px;height:32px;display:inline-grid;place-items:center;border-radius:12px;background:var(--gold-soft);color:var(--gold-text)}.story-status-icon.published{background:var(--green-soft);color:var(--green)}.story-status-icon.warning{background:var(--danger-soft);color:var(--danger)}.story-meta-chips{min-width:0;display:flex;flex-wrap:wrap;gap:6px}.story-meta-chip{display:inline-flex;align-items:center;gap:4px;border-radius:999px;background:var(--surface-muted);color:var(--muted)!important;font-size:.72rem;font-weight:950;line-height:1;padding:6px 8px}.story-meta-chip.done{background:var(--green-soft);color:var(--green)!important}.story-meta-chip.pending{background:var(--gold-soft);color:var(--gold-text)!important}.story-meta-chip.warning{background:var(--danger-soft);color:var(--danger)!important}.story-meta-chip-button{border:0;cursor:pointer;font-family:inherit}.story-meta-chip-button:focus-visible{outline:3px solid rgba(138,15,115,.22);outline-offset:2px}.story-item-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:8px}.story-item-actions>button,.story-item-actions>a{width:100%;min-width:0}.story-item-actions>a{text-decoration:none}.story-download-link{width:fit-content;min-height:46px;border:1px solid rgba(138,15,115,.12);border-radius:16px;background:linear-gradient(135deg,#ffffff9e,#f3e8f1eb),var(--claret-soft);color:var(--claret);padding:0 16px;box-shadow:0 10px 24px #8a0f731a;font-size:.95rem;font-weight:950;text-decoration:none}.story-download-link:hover,.story-download-link:focus-visible{border-color:#8a0f733d;outline:3px solid rgba(138,15,115,.12);outline-offset:2px;transform:translateY(-1px)}.item-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.calendar-event-actions{align-self:stretch}.inline-edit-form{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);padding:14px}.inline-edit-form label{display:grid;gap:7px;color:var(--muted);font-size:.84rem;font-weight:800}.inline-edit-form input,.inline-edit-form select,.inline-edit-form textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px 11px;background:var(--white);color:var(--ink)}.inline-edit-form .story-students,.inline-edit-form .story-photo-preview-grid{grid-column:1 / -1}.inline-actions{display:flex;flex-wrap:wrap;gap:8px}.story-publication-author{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin-bottom:12px}.story-publication-author>span{width:46px;height:46px;display:inline-grid;place-items:center;border:1px solid var(--gold-muted);border-radius:999px;background:var(--cream-soft);color:var(--ink);font-weight:950}.story-publication-author .story-author-photo{width:46px;height:46px}.story-publication-author>div{min-width:0;display:grid;gap:2px}.story-publication-author strong{overflow:hidden;color:var(--ink);font-size:1.05rem;line-height:1.12;text-overflow:ellipsis;white-space:nowrap}.story-publication-author small{overflow:hidden;color:var(--muted);font-size:.84rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.story-gallery{width:100%;grid-template-columns:1fr;gap:0;margin-bottom:14px}.story-thumbnail{width:100%;height:auto;display:block;object-fit:initial;border:0;border-radius:0;background:var(--surface-muted);padding:0;box-shadow:none}.story-item .story-preview-frame{width:100%;overflow:hidden;border:1px solid rgba(138,15,115,.12);border-radius:24px;background:var(--surface-muted);box-shadow:var(--shadow-subtle)}.story-item .story-preview-photo-button,.story-item .story-thumbnail{width:100%}.story-preview-gallery{width:min(260px,40%);flex:0 0 auto;grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.story-preview-gallery .story-preview-photo{width:100%;min-height:112px;max-height:132px}.story-item-meta{display:flex;align-items:center;gap:10px;margin-bottom:10px}.story-item p{margin:7px 0 0;line-height:1.5}.register-form-heading,.register-actions{display:flex;justify-content:space-between;gap:12px;align-items:center}.register-form-heading{position:sticky;z-index:4;top:12px;border:1px solid rgba(138,15,115,.14);border-radius:22px;background:linear-gradient(145deg,#fffffff5,#fcf7fbeb),var(--surface);padding:12px;box-shadow:0 16px 36px #3f244212;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.register-student-heading{min-width:0;display:flex;align-items:center;gap:11px}.register-student-heading>span:last-child{min-width:0;display:grid;gap:1px}.register-student-heading h3{margin:0;font-size:1.12rem;line-height:1.18}.register-student-heading small{color:var(--muted);font-size:.8rem;font-weight:800}.register-student-avatar{width:46px;height:46px;flex:0 0 auto;display:grid;place-items:center;border:1px solid rgba(138,15,115,.14);border-radius:15px;background:var(--claret-mist);color:var(--claret);font-weight:950;object-fit:cover}.wide-field,.register-form-heading{grid-column:1 / -1}.check-field{display:flex!important;grid-template-columns:auto 1fr;align-items:center}.check-field input{width:auto}.register-actions{justify-content:flex-end;position:sticky;z-index:6;bottom:10px;border:1px solid rgba(138,15,115,.12);border-radius:22px;background:#ffffffeb;padding:10px;box-shadow:0 18px 38px #3f24421a;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.register-actions .primary-action,.register-actions .secondary-action{min-height:44px}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:end}.management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:20px}.management-full-panel{grid-column:1 / -1}.users-workspace{display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.75fr);gap:20px;align-items:start}.users-command-panel,.users-directory-column{display:grid;gap:16px}.users-summary-panel{background:linear-gradient(145deg,var(--surface),var(--claret-mist))}.users-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:14px}.users-kpi-grid div{min-width:0;border:1px solid rgba(138,15,115,.1);border-radius:var(--radius-control);background:#ffffffc2;padding:10px}.users-kpi-grid strong{display:block;color:var(--claret);font-size:1.35rem;line-height:1}.users-kpi-grid span,.users-warning-note{color:var(--muted);font-size:.8rem;font-weight:800}.users-warning-note{border:1px solid rgba(214,179,0,.26);border-radius:var(--radius-control);background:var(--gold-soft);margin:0 0 14px;padding:10px 12px;line-height:1.35}.users-summary-panel .primary-action,.users-create-form .primary-action{width:100%}.users-summary-panel .primary-action:disabled{background:var(--surface-disabled);color:var(--muted);box-shadow:none;opacity:1}.access-template-panel{padding:0}.access-template-panel summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;color:var(--ink);font-weight:950;list-style:none;padding:16px 18px}.access-template-panel summary::-webkit-details-marker{display:none}.access-template-panel summary span{display:inline-flex;align-items:center;gap:8px}.access-template-panel[open] summary{border-bottom:1px solid var(--line)}.access-template-panel-body{display:grid;gap:12px;padding:16px 18px 18px}.users-directory-list{display:grid;gap:10px}.users-directory-row{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(116px,.42fr) auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);padding:10px 12px}.users-access-state{justify-content:flex-start}.admin-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;border:1px solid var(--line);border-radius:var(--radius-control);background:#ffffffad;margin:4px 0 18px;padding:6px;box-shadow:var(--shadow-subtle)}.admin-tabs button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto;gap:8px;min-height:46px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--body-copy);padding:0 10px;text-align:left;box-shadow:none;cursor:pointer}.admin-tabs svg{align-self:center}.admin-tab-count{align-self:center;justify-self:end;min-width:28px;border:1px solid rgba(138,15,115,.12);border-radius:999px;background:var(--claret-mist);color:var(--claret);padding:4px 7px;font-size:.74rem;font-weight:950;line-height:1;text-align:center}.admin-tabs button:hover,.admin-tabs button:focus-visible{border-color:#8a0f7352;outline:none}.admin-tabs button.active,.admin-tabs button[aria-current=page]{border-color:#8a0f7380;background:var(--claret-soft);color:var(--claret)}.admin-tabs span{min-width:0;font-weight:900;line-height:1.12}.admin-tabs small{display:block;grid-column:2 / 3;color:var(--muted);font-size:.72rem;font-weight:800;line-height:1.15}.admin-tabs button.active small,.admin-tabs button[aria-current=page] small{color:var(--claret)}.admin-tabs button.active .admin-tab-count,.admin-tabs button[aria-current=page] .admin-tab-count{border-color:#8a0f7333;background:var(--surface)}.admin-control-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin:0 0 18px}.admin-search{display:grid;gap:7px;color:var(--ink);font-size:.86rem;font-weight:900}.admin-search input{border:0;background:transparent;color:var(--body-copy);min-height:44px;padding:0}.search-input-shell{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--muted);padding:0 12px}.search-input-shell input{min-width:0;outline:none}.search-input-shell:focus-within{border-color:#8a0f7366;box-shadow:0 0 0 3px #8a0f731a;color:var(--claret)}.admin-search-summary{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);box-shadow:var(--shadow-subtle)}.admin-search-summary{min-height:44px;display:flex;gap:8px;align-items:center;padding:0 10px;white-space:nowrap}.admin-search-summary strong{color:var(--claret);font-size:1.12rem}.admin-search-summary span{color:var(--muted);font-size:.82rem;font-weight:800}.admin-filter-strip{grid-column:1 / -1;display:grid;grid-template-columns:repeat(3,minmax(160px,1fr)) auto;gap:10px;align-items:end;border:1px solid rgba(138,15,115,.1);border-radius:var(--radius-control);background:#ffffffad;padding:10px}.admin-filter-strip label{display:grid;gap:5px;color:var(--ink);font-size:.78rem;font-weight:900}.admin-filter-strip select{width:100%;min-width:0;min-height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:0 11px}.admin-family-contact-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;border:1px solid rgba(138,15,115,.1);border-radius:var(--radius-control);margin:0;padding:12px}.admin-family-contact-group legend{color:var(--claret);font-size:.78rem;font-weight:950;padding:0 4px}.admin-family-emergency-field{align-self:end;min-height:48px}.admin-crud-list{display:grid;gap:12px}.management-full-panel .admin-crud-list{grid-template-columns:repeat(auto-fit,minmax(560px,1fr))}.admin-crud-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px solid rgba(138,15,115,.1);border-radius:var(--radius-control);background:var(--surface-soft);padding:14px;box-shadow:var(--shadow-subtle)}.student-management-shell{display:grid;gap:14px}.student-detail-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;background:#18121c6b;padding:24px}.student-admin-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface)}.student-admin-table{width:100%;border-collapse:collapse;min-width:820px}.student-admin-table th,.student-admin-table td{border-bottom:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:middle}.student-admin-table th{color:var(--muted);font-size:.76rem;font-weight:950;text-transform:uppercase}.student-admin-table tr:last-child td{border-bottom:0}.student-admin-table tr.selected td{background:var(--claret-mist)}.student-table-person{min-width:0;display:flex;align-items:center;gap:10px}.student-table-person>div{min-width:0;display:grid;gap:2px}.student-table-person strong{color:var(--ink);overflow-wrap:anywhere}.student-table-person span,.student-admin-table td{color:var(--muted);font-size:.86rem;font-weight:750}.student-detail-editor{display:grid;gap:14px;border:1px solid rgba(138,15,115,.14);border-radius:var(--radius-control);background:linear-gradient(135deg,#fffffff0,#fcf6fbf5),var(--surface);padding:14px;box-shadow:var(--shadow-subtle)}.student-detail-dialog{width:min(1080px,100%);max-height:min(780px,calc(100vh - 48px));overflow:auto;box-shadow:0 24px 70px #1e142242}.student-detail-editor-heading,.student-detail-section-title,.student-detail-actions{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.student-detail-section{display:grid;gap:10px;border-top:1px solid rgba(138,15,115,.1);padding-top:12px}.student-detail-section-title{align-items:baseline}.student-detail-section-title strong{color:var(--ink)}.student-detail-section-title span{color:var(--muted);font-size:.84rem;font-weight:750}.student-detail-grid,.student-family-inline-card{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.student-detail-editor label{display:grid;gap:5px;color:var(--ink);font-size:.78rem;font-weight:900}.student-image-consent-field{display:flex!important;align-items:center;gap:8px;min-height:40px}.student-image-consent-field input{width:auto}.student-image-consent-field .story-meta-chip{margin-left:auto}.student-detail-editor input,.student-detail-editor select{width:100%;min-width:0;min-height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);padding:0 11px}.student-detail-editor input:focus,.student-detail-editor select:focus{border-color:#8a0f7380;outline:3px solid rgba(138,15,115,.12)}.student-family-inline-list{display:grid;gap:10px}.student-family-inline-card{border:1px solid var(--line);border-radius:var(--radius-control);background:#ffffffbd;padding:10px}.student-family-inline-card .email-field{grid-column:span 2}.student-family-inline-card legend{color:var(--claret);font-size:.78rem;font-weight:950;padding:0 4px}.student-detail-editor .check-field input{width:auto;accent-color:var(--claret)}.student-detail-actions-split{align-items:center;border-top:1px solid rgba(138,15,115,.1);padding-top:12px}.student-detail-primary-actions,.student-detail-danger-actions{display:flex;gap:10px;flex-wrap:wrap}.student-detail-danger-actions{margin-left:auto;padding-left:12px;border-left:1px solid rgba(194,64,75,.16)}.educator-class-picker{margin:0;background:#ffffffbd}.team-admin-card{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-crud-card label{display:grid;gap:5px;color:var(--ink);font-size:.78rem;font-weight:900}.admin-crud-card input,.admin-crud-card select{width:100%;border:1px solid var(--line);border-radius:10px;min-height:40px;min-width:0;background:var(--surface);color:var(--ink);padding:0 11px}.admin-crud-card input:focus,.admin-crud-card select:focus{border-color:#8a0f7380;outline:3px solid rgba(138,15,115,.12)}.admin-inline-grid{display:grid;grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-crud-title,.admin-crud-actions,.admin-class-picker{grid-column:1 / -1}.admin-crud-title{display:flex;justify-content:space-between;gap:12px;align-items:start;padding-bottom:2px}.admin-crud-title>div{min-width:0;display:grid;gap:3px}.admin-crud-title strong{color:var(--ink);overflow-wrap:anywhere}.admin-crud-title span:not(.state){color:var(--muted);font-size:.84rem;font-weight:700;overflow-wrap:anywhere}.admin-crud-title>.admin-entity-heading,.admin-entity-heading,.record-row .admin-entity-heading{min-width:0;display:flex;align-items:flex-start;gap:10px}.admin-entity-icon{width:34px;height:34px;flex:0 0 auto;display:inline-grid;place-items:center;border-radius:13px;background:var(--claret-soft);color:var(--claret)}.admin-entity-icon.active{background:var(--green-soft);color:var(--green)}.admin-entity-icon.inactive,.admin-entity-icon.warning{background:var(--gold-soft);color:var(--gold-text)}.admin-entity-copy,.record-row .admin-entity-copy{min-width:0;display:grid;gap:4px}.admin-crud-title .story-meta-chips,.admin-state-row .story-meta-chips{margin-top:2px}.admin-crud-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.admin-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.muted-action-label{min-height:36px;display:inline-flex;align-items:center;color:var(--muted);font-size:.82rem;font-weight:900}.panel-intro{margin:0 0 12px;color:var(--muted)}.admin-class-picker{display:flex;gap:8px;flex-wrap:wrap;border:1px solid var(--line);border-radius:var(--radius-control);padding:10px}.admin-class-picker legend{color:var(--ink);font-size:.78rem;font-weight:900;padding:0 4px}.admin-class-picker label{display:inline-flex;min-height:34px;align-items:center;gap:6px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);padding:0 10px;font-size:.82rem}.admin-class-picker input,.admin-crud-card .check-field input{width:auto;accent-color:var(--claret)}.module-settings-list{display:grid;gap:12px}.module-settings-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px solid rgba(138,15,115,.1);border-radius:var(--radius-card);background:var(--surface-soft);padding:14px;box-shadow:var(--shadow-subtle)}.module-settings-card>label:not(.module-toggle-card){display:grid;gap:7px;color:var(--ink);font-size:.86rem;font-weight:900}.storage-admin-panel{background:linear-gradient(145deg,var(--surface),rgba(244,248,246,.92))}.storage-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.system-health-panel{display:grid;gap:14px;margin-bottom:18px}.server-resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.server-resource-card{display:grid;gap:10px;border:1px solid rgba(69,125,89,.18);border-radius:var(--radius-control);background:#ffffffd6;padding:12px}.server-resource-card-warning{border-color:#d6b3005c}.server-resource-card-error{border-color:#ad414866}.server-resource-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.server-resource-card-header strong,.server-resource-card-header span{display:block}.server-resource-card-header strong{color:var(--ink);font-weight:950}.server-resource-card-header span,.server-resource-threshold{color:var(--muted);font-size:.78rem;line-height:1.3}.server-resource-value{color:var(--ink);font-size:1.65rem;font-weight:950;line-height:1}.server-resource-bar{overflow:hidden;height:8px;border-radius:999px;background:#75717c24}.server-resource-bar:before{display:block;width:var(--resource-progress, 0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--gold));content:""}.server-resource-card-warning .server-resource-bar:before{background:var(--gold)}.server-resource-card-error .server-resource-bar:before{background:var(--danger)}.system-health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.system-health-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;border:1px solid rgba(69,125,89,.18);border-radius:var(--radius-control);background:#ffffffc7;padding:12px}.system-health-card-warning{border-color:#d6b3005c}.system-health-card-error{border-color:#ad414866}.system-health-backup-card{grid-template-columns:minmax(0,1fr)}.system-health-card strong,.system-health-card span{display:block}.system-health-card strong{color:var(--ink);font-weight:950}.system-health-card span{margin-top:3px;color:var(--muted);font-size:.84rem;line-height:1.35}.storage-admin-card{display:grid;gap:14px;border:1px solid rgba(138,15,115,.12);border-radius:var(--radius-control);background:#ffffffd1;padding:14px}.storage-admin-card-aviso{border-color:#d6b3006b}.storage-admin-card-alto,.storage-admin-card-critico{border-color:#ad41486b}.storage-status-pill{align-self:start;border:1px solid rgba(69,125,89,.24);border-radius:999px;background:#ecf7efe6;color:var(--green);padding:5px 8px;font-size:.72rem;font-weight:900;line-height:1}.storage-status-pill.aviso{border-color:#d6b30057;background:var(--gold-soft);color:var(--gold-text)}.storage-status-pill.alto,.storage-status-pill.critico,.storage-status-pill.error{border-color:#ad414852;background:#fff0f0eb;color:var(--danger)}.storage-status-pill.warning,.storage-status-pill.revisar{border-color:#d6b30057;background:var(--gold-soft);color:var(--gold-text)}.storage-status-pill.unknown{border-color:#75717c42;background:#f7f7f8f2;color:var(--muted)}.storage-admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}@media (max-width: 980px){.server-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 620px){.server-resource-grid{grid-template-columns:minmax(0,1fr)}}.storage-admin-metrics div{min-width:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);padding:10px}.storage-admin-metrics small,.storage-admin-metrics strong{display:block}.storage-admin-metrics small{color:var(--muted);font-size:.72rem;font-weight:850}.storage-admin-metrics strong{margin-top:3px;color:var(--ink);font-size:1rem;line-height:1.12}.storage-progress{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.storage-progress .progress-track{margin:0}.storage-progress strong{color:var(--claret);font-size:.86rem;font-weight:950}.module-toggle-card{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);padding:12px;cursor:pointer}.module-toggle-card input{width:20px;height:20px;accent-color:var(--claret)}.module-toggle-card span{display:grid;gap:2px}.module-toggle-card strong{color:var(--ink);font-size:.92rem}.module-toggle-card small{color:var(--muted);font-weight:700}.class-crud-list{display:grid;gap:10px}.class-crud-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(120px,.7fr) minmax(80px,.4fr) 74px minmax(120px,auto) auto;gap:10px;align-items:end;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);padding:12px}.class-crud-row label{display:grid;gap:5px;color:var(--ink);font-size:.78rem;font-weight:900}.class-crud-row input{min-width:0}.class-crud-row input[type=color]{padding:3px}.class-crud-meta{align-self:center;color:var(--muted);font-weight:800;overflow-wrap:anywhere}.class-crud-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.class-color-swatch{display:inline-block;width:42px;height:22px;border:1px solid var(--line);border-radius:8px;box-shadow:inset 0 0 0 2px #ffffffb8;vertical-align:middle}.class-assignment-summary{display:grid;grid-template-columns:minmax(150px,.35fr) minmax(0,1fr);gap:10px}.class-assignment-summary span{min-width:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-soft);color:var(--muted);font-weight:850;padding:10px 12px;overflow-wrap:anywhere}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);padding:18px;box-shadow:var(--shadow-subtle)}.settings-card h3{margin:0 0 14px;color:var(--ink);font-size:1rem}.settings-account-card{display:grid;gap:16px}.settings-account-heading,.settings-card-heading{display:flex;align-items:flex-start;gap:12px}.settings-account-heading>div,.settings-card-heading>div{min-width:0;display:grid;gap:3px}.settings-account-heading h3,.settings-card-heading h3{margin:0}.settings-account-heading span,.settings-card-heading p{margin:0;color:var(--muted);font-size:.88rem;font-weight:700;overflow-wrap:anywhere}.settings-account-icon,.settings-card-icon{width:38px;height:38px;flex:0 0 auto;display:inline-grid;place-items:center;border-radius:14px;background:var(--claret-soft);color:var(--claret)}.settings-card-icon{background:var(--gold-soft);color:var(--gold-text)}.settings-profile-photo{width:54px;height:54px;flex:0 0 auto;object-fit:cover;border:2px solid rgba(138,15,115,.18);border-radius:999px;background:var(--surface-soft);box-shadow:var(--shadow-subtle)}.settings-photo-actions{display:flex;flex-wrap:wrap;gap:8px}.settings-data{display:grid;gap:12px;margin:0}.settings-data div{display:grid;gap:2px;border-bottom:1px solid var(--line);padding-bottom:10px}.settings-data div:last-child{border-bottom:0;padding-bottom:0}.settings-data dt{color:var(--muted);font-size:.82rem;font-weight:800;text-transform:uppercase}.settings-data dd{margin:0;color:var(--ink);font-weight:800;overflow-wrap:anywhere}.settings-password-form{grid-template-columns:1fr}.settings-password-form label{display:grid;gap:8px;color:var(--ink);font-weight:800}.settings-muted{display:block;margin-top:8px;color:var(--muted);font-size:.9rem}.settings-grid .web-push-card{grid-column:1 / -1}.import-panel{display:grid;gap:14px}.import-template-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.import-form{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:center}.import-file-field{display:grid;gap:6px;color:var(--ink);font-size:.86rem;font-weight:900}.import-file-field small{color:var(--muted);font-size:.78rem;font-weight:700;line-height:1.35}.import-file-field input[type=file]{min-width:0;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);padding:9px 10px;color:var(--body-copy)}.import-summary{display:grid;gap:10px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-muted);padding:14px}.import-applied-panel{align-items:center;display:flex;justify-content:space-between;gap:14px;border:1px solid rgba(63,125,88,.22);border-radius:var(--radius-control);background:var(--success-soft);padding:14px}.import-applied-panel>div{display:grid;gap:4px;min-width:0}.import-applied-panel strong{color:var(--ink)}.import-applied-panel span{color:var(--muted);font-weight:800}.import-summary span,.import-summary p{margin:0;color:var(--muted);line-height:1.5}.import-summary-heading{align-items:start;display:flex;justify-content:space-between;gap:14px}.import-summary-heading>div:first-child{display:grid;gap:3px;min-width:0}.import-summary-heading strong{overflow-wrap:anywhere}.import-stats{display:flex;flex-wrap:wrap;gap:8px}.import-stats span{border-radius:var(--radius-control);background:var(--surface);padding:6px 10px;font-weight:800}.import-stats .import-stat-ok{background:#2884531f;color:var(--success)}.import-stats .import-stat-error{background:#b932411a;color:var(--danger)}.import-history-list{display:flex;flex-wrap:wrap;gap:8px}.import-history-item{display:grid;gap:8px;max-width:min(100%,280px);border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:10px 12px}.import-history-select{display:grid;gap:3px;border:0;background:transparent;color:inherit;padding:0;text-align:left}.import-history-item.active{border-color:#8a0f7357;background:var(--claret-soft);color:var(--claret)}.import-history-select strong,.import-history-select span{overflow-wrap:anywhere}.import-history-select span{color:var(--muted);font-size:.78rem;font-weight:800}.import-detail{display:grid;gap:10px}.import-detail summary{cursor:pointer;color:var(--ink);font-weight:800}.import-row-list{display:grid;max-height:340px;overflow:auto;gap:8px;padding-right:4px}.import-resolution-box{display:grid;gap:10px;border:1px solid rgba(192,142,42,.28);border-radius:var(--radius-control);background:#c08e2a14;padding:12px}.import-resolution-box p{margin:0;color:var(--ink);font-weight:800;line-height:1.45}.import-retry-form{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(220px,1fr) auto}.import-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,auto);gap:10px;align-items:start;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);padding:10px}.import-row.has-errors{border-color:#b9324138;background:#b932410a}.import-row-main{display:grid;gap:3px;min-width:0}.import-row-main strong,.import-row-main span{overflow-wrap:anywhere}.import-row ul{margin:0;padding-left:18px;color:var(--danger);line-height:1.45}.compact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.compact-form .primary-action{grid-column:1 / -1}.panel{padding:24px}.panel-note{display:block;max-width:720px;margin-top:6px;color:var(--muted);font-size:.9rem;font-weight:700;line-height:1.45}.panel-heading{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:18px}.status-pill,.state{max-width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:30px;border-radius:999px;padding:0 12px;font-size:.78rem;font-weight:800;line-height:1.2;overflow-wrap:anywhere;text-align:center}.status-pill{background:var(--claret-soft);color:var(--claret)}.status-pill.gold{background:var(--gold-soft);color:var(--gold-text)}.state.done{background:var(--green-soft);color:var(--green)}.state.pending{background:var(--gold-soft);color:var(--gold-text)}.state.blocked{background:#ae2d2d1f;color:var(--danger)}.record-list,.notice-list{display:grid;gap:10px}.daily-reports{display:grid;gap:18px}.report-sync-status{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:var(--radius-card);background:#fffc;padding:14px 16px;margin-bottom:16px}.report-sync-status.done{border-color:#317a543d;background:var(--green-soft)}.report-sync-status.pending{border-color:#d5b2584d;background:var(--gold-soft)}.report-sync-status.blocked{border-color:#ae2d2d3d;background:#ae2d2d14}.report-sync-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:50%;background:#ffffffc7;color:var(--claret)}.report-sync-status strong,.report-sync-status span,.report-sync-status small{display:block}.report-sync-status strong{color:var(--ink);font-size:.98rem}.report-sync-status span,.report-sync-status small{color:var(--muted);font-size:.82rem;font-weight:800}.report-sync-error{color:var(--danger)!important;margin-top:4px}.report-summary-strip{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;margin-bottom:12px}.report-summary-strip article{min-width:132px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffc2;padding:9px 11px}.report-summary-strip small,.report-summary-strip span{display:block;color:var(--muted);font-size:.78rem;font-weight:800}.report-summary-strip strong{display:block;color:var(--claret);font-size:1.28rem;line-height:1.1}.report-summary-money strong{color:var(--gold-strong);white-space:nowrap}.report-tabs{display:inline-flex;flex-wrap:wrap;gap:4px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffc2;padding:4px;margin-bottom:12px}.report-tabs button{min-height:34px;border:0;border-radius:calc(var(--radius-sm) - 3px);background:transparent;color:var(--muted);padding:0 13px;font-weight:900}.report-tabs button.active,.report-tabs button[aria-selected=true]{background:var(--claret);color:var(--white);box-shadow:var(--shadow-subtle)}.report-tab-panel{display:grid;gap:12px}.report-filters{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0;padding:9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffb8}.report-filter-group{display:flex;flex:1 1 460px;flex-wrap:wrap;align-items:center;gap:8px}.report-filter-group span,.report-filter-select,.report-filter-toggle{color:var(--muted);font-size:.78rem;font-weight:900}.report-filter-group button{min-height:34px;border:1px solid var(--line);border-radius:999px;background:#ffffffe6;color:var(--ink);padding:0 12px;font-weight:900}.report-filter-group button.active,.report-filter-group button[aria-pressed=true]{border-color:#8a0f735c;background:var(--claret-soft);color:var(--claret)}.report-filter-select,.report-filter-toggle{display:inline-flex;align-items:center;gap:8px}.report-filter-select select{min-height:34px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);padding:0 10px;font-weight:800}.report-filter-toggle input{width:18px;height:18px;accent-color:var(--claret)}.report-service-list{display:grid;gap:12px}.report-service-section{border:1px solid var(--line);border-radius:var(--radius-sm);background:#ffffffd1;overflow:hidden}.report-monthly-section{border:1px solid rgba(213,178,88,.32);border-radius:var(--radius-sm);background:#ffffffd1;overflow:hidden}.report-service-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,#8a0f7317,#d5b2581f)}.report-service-heading h3{margin:0;color:var(--ink);font-size:.95rem}.report-service-heading span{display:block;margin-top:2px;color:var(--muted);font-size:.78rem;font-weight:800}.report-service-heading strong{flex:0 0 auto;border-radius:999px;background:var(--surface);color:var(--claret);padding:6px 10px;font-size:.82rem}.report-table-wrap{overflow-x:auto}.report-table{width:100%;min-width:720px;border-collapse:collapse;font-size:.84rem}.report-table-compact{min-width:620px}.report-table th,.report-table td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.report-table th{color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase}.report-col-count{width:1%;text-align:center!important;white-space:nowrap}.report-col-money{text-align:right!important;white-space:nowrap}.report-cell-empty{color:transparent}.report-table tbody tr:last-child td{border-bottom:0}.report-table td strong{color:var(--ink)}.report-allergy{display:inline-flex;border-radius:999px;background:#ae2d2d1f;color:var(--danger);padding:5px 9px;font-weight:900}.report-muted{color:var(--muted);font-weight:700}.report-extra-list{display:grid;gap:4px}.report-extra-list small{color:var(--ink);font-weight:800}.purchase-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:18px}.purchase-management-layout{grid-template-columns:1fr}.purchase-main-panel{min-width:0}.purchase-cart-panel{border-color:#8a0f7342;box-shadow:0 18px 40px #3f24421f}.purchase-form,.purchase-product-form{align-items:end;grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-product-form{grid-template-columns:repeat(3,minmax(0,1fr))}.purchase-special-form{align-items:end;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.purchase-special-tabs{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.purchase-special-classes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;border:1px solid var(--line);border-radius:var(--radius-card);padding:12px}.purchase-special-classes legend{padding:0 6px;color:var(--muted);font-size:.78rem;font-weight:900}.purchase-special-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.4fr);gap:16px;align-items:start}.purchase-special-list,.purchase-special-report{display:grid;gap:10px}.purchase-price-preview{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft);padding:12px 14px;min-height:48px}.purchase-price-preview span{color:var(--muted);font-size:.8rem;font-weight:800}.purchase-price-preview strong{color:var(--claret);font-size:1.1rem}.purchase-payment-actions{display:flex;gap:10px}.purchase-payment-actions>button{flex:1;justify-content:center}.purchase-date-input{display:block;max-width:100%;min-width:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;text-align:left}.field-help{display:block;color:var(--muted);font-size:.76rem;font-weight:800;line-height:1.35}.required-chip{width:fit-content;border:1px solid rgba(138,15,115,.18);border-radius:999px;background:var(--claret-mist);color:var(--claret);padding:3px 8px;font-size:.68rem;font-weight:900;text-transform:uppercase}.purchase-list{display:grid;gap:10px}.purchase-legal-box{display:grid;gap:8px;border:1px solid rgba(138,15,115,.16);border-radius:var(--radius-card);background:#ffffffb8;padding:12px}.purchase-legal-box strong{color:var(--ink)}.purchase-legal-box p{margin:0;color:var(--muted);font-size:.82rem;font-weight:720;line-height:1.45}.purchase-terms-check{margin-top:2px}.purchase-row{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);padding:12px}.purchase-row.editable{align-items:flex-start}.purchase-row div{display:grid;min-width:0;gap:3px}.purchase-row strong{color:var(--ink)}.purchase-row span,.purchase-row small{color:var(--muted);font-weight:750}.purchase-inline-price{max-width:180px;margin-top:8px}.purchase-inline-price input{min-height:40px}.purchase-inline-edit-fields{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:8px;margin-top:10px}.purchase-inline-edit-fields label{display:grid;gap:4px;color:var(--muted);font-size:.8rem;font-weight:900}.purchase-inline-edit-fields input{width:100%;min-height:40px;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--ink);padding:8px 10px;font:inherit;font-weight:800}.purchase-special-edit-fields{grid-template-columns:repeat(2,minmax(140px,1fr))}.purchase-special-edit-fields .wide-field{grid-column:1 / -1}.purchase-product-fields{display:grid;gap:8px;margin-top:8px}.purchase-product-field{display:grid;gap:5px;border-left:3px solid rgba(138,15,115,.2);padding-left:10px}.purchase-product-field-heading{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px}.purchase-product-field-heading strong{font-size:.86rem}.purchase-product-field-heading span,.purchase-product-field small{color:var(--muted);font-size:.75rem;font-weight:850}.purchase-product-options{display:flex;flex-wrap:wrap;gap:5px}.purchase-product-options span{border:1px solid rgba(138,15,115,.14);border-radius:999px;background:var(--claret-soft);color:var(--claret);padding:4px 8px;font-size:.74rem;font-weight:850}.purchase-row-state{display:grid;flex:0 0 auto;gap:3px;text-align:right}.purchase-row-state strong{color:var(--claret);white-space:nowrap}.purchase-admin-panel{grid-column:1 / -1}.purchase-admin-summary,.purchase-admin-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.purchase-order-filters{grid-template-columns:minmax(260px,1.45fr) repeat(3,minmax(150px,1fr))}.purchase-order-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.purchase-admin-summary article,.purchase-summary-action{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface-soft);padding:12px}.purchase-summary-action{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;color:inherit;text-align:left}.purchase-summary-action:not(:disabled){cursor:pointer}.purchase-summary-action:not(:disabled):hover,.purchase-summary-action.is-active{border-color:#97077e52;background:#97077e14}.purchase-summary-action:disabled{cursor:default}.purchase-admin-summary article.purchase-summary-warning,.purchase-summary-action.purchase-summary-warning{border-color:#ad343e42;background:var(--danger-soft)}.purchase-admin-summary article.purchase-summary-warning strong,.purchase-summary-action.purchase-summary-warning strong{color:var(--danger)}.purchase-admin-summary small,.purchase-admin-summary span{display:block;color:var(--muted);font-size:.76rem;font-weight:850}.purchase-admin-summary strong{display:block;margin:2px 0;color:var(--claret);font-size:1.25rem}.purchase-admin-filters label{display:grid;gap:5px;color:var(--muted);font-size:.78rem;font-weight:900}.purchase-admin-filters select,.purchase-admin-filters input{min-height:38px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);padding:0 10px;font-weight:850}.purchase-order-search{grid-column:span 2}.purchase-order-search .search-input-shell{min-height:38px;border-radius:var(--radius-sm)}.purchase-order-search .search-input-shell input{min-height:0;border:0;padding:0;background:transparent}.purchase-export-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:2px 0 14px}.purchase-review-note{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;border:1px solid rgba(173,52,62,.24);border-radius:var(--radius-card);background:var(--danger-soft);color:var(--danger);padding:11px 13px;font-size:.82rem;font-weight:850}.purchase-review-note button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--claret);cursor:pointer;font:inherit;text-decoration:underline}.purchase-review-note button:disabled{color:var(--muted);cursor:not-allowed;text-decoration:none}.purchase-review-note-actions{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:12px}.purchase-admin-total-col{min-width:172px}.purchase-admin-total{display:block;margin-bottom:10px;white-space:nowrap}.purchase-invoice-action{gap:9px;justify-self:end;margin-top:8px;min-width:130px;padding-inline:15px 17px}.purchase-admin-table-wrap{overflow-x:auto}.purchase-admin-table{width:100%;min-width:820px;border-collapse:collapse;font-size:.84rem}.purchase-admin-table th,.purchase-admin-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.purchase-admin-table th{color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase}.purchase-admin-table td strong,.purchase-admin-table td small{display:block}.purchase-admin-table td small{margin-top:2px;color:var(--muted);font-weight:750}.purchase-row-warning{background:#ad343e09}.purchase-admin-table td small.purchase-review-text{color:var(--danger)}.record-row,.notice-row,.story-preview,.empty-state{border:1px solid var(--line);border-radius:var(--radius-card);padding:14px;background:var(--surface-soft);box-shadow:var(--shadow-subtle)}.record-row,.notice-row,.story-item,.calendar-event,.milestone-item{transition:border-color .16s ease,box-shadow .16s ease}.record-row:hover,.notice-row:hover,.story-item:hover,.calendar-event:hover,.milestone-item:hover{border-color:#8a0f7338;box-shadow:0 12px 30px #3f244214}.record-row{display:flex;align-items:center;justify-content:space-between;gap:14px}.admin-state-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto}.record-row div,.notice-row div{min-width:0;display:grid;gap:4px}.record-row strong,.notice-row strong,.story-preview strong{color:var(--ink)}.record-row span,.notice-row span{overflow-wrap:anywhere}.notice-row,.story-preview,.empty-state{display:flex;gap:12px}.notice-row-icon,.story-preview svg,.empty-state svg{flex:0 0 auto}.notice-row-icon{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:14px;background:var(--claret-soft);color:var(--claret)}.notice-row-icon svg,.story-preview svg,.empty-state svg{color:var(--claret)}.notice-manage-row{align-items:flex-start}.notice-manage-row.selected{border-color:#8a0f7357;background:linear-gradient(145deg,#f3e8f1b8,#fffffff5),var(--surface)}.notice-manage-row>div{flex:1}.notice-manage-row .secondary-action{flex:0 0 auto}.notice-select-check{min-height:44px;display:inline-grid;place-items:center;flex:0 0 auto}.notice-select-check input{width:20px;height:20px;accent-color:var(--claret)}.story-preview{align-items:flex-start}.story-preview>div{min-width:0}.story-preview-photo{width:min(220px,36%);min-height:132px;max-height:170px;flex:0 0 auto;object-fit:cover;border:1px solid rgba(138,15,115,.12);border-radius:16px;background:var(--claret-soft);box-shadow:var(--shadow-subtle)}.story-preview p{margin:8px 0;line-height:1.55}.empty-state{align-items:center;color:var(--muted);min-width:0;overflow-wrap:anywhere}.empty-state>div{min-width:0}.empty-state p{overflow-wrap:anywhere}.dashboard-load-state{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}.dashboard-load-state h2,.dashboard-load-state p{margin:0}.dashboard-load-state p:not(.eyebrow){color:var(--muted)}.empty-state-icon{width:38px;height:38px;display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;border-radius:12px;background:var(--claret-soft);color:var(--claret)}.empty-state-icon svg{color:currentColor}.error-message,.error-banner,.success-banner{color:var(--danger);font-weight:700}.error-banner{border:1px solid rgba(173,52,62,.22);background:var(--danger-soft);border-radius:var(--radius-control);padding:12px 14px}.success-banner{color:var(--green);border:1px solid rgba(63,125,88,.22);background:var(--success-soft);border-radius:var(--radius-control);padding:12px 14px}.modal-backdrop{position:fixed;z-index:90;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow-y:auto;background:#2619296b;padding:16px}.student-photo-crop-modal{width:min(94vw,560px);max-height:min(96dvh,720px);display:grid;grid-template-rows:auto minmax(180px,auto) auto auto;gap:12px;overflow:hidden;border:1px solid rgba(138,15,115,.16);border-radius:var(--radius-card);background:var(--surface);padding:14px;box-shadow:0 28px 80px #2619293d}.student-photo-crop-modal .panel-heading{gap:10px}.student-photo-crop-modal .panel-heading h2{margin-bottom:4px;font-size:1.25rem}.student-photo-crop-modal .panel-heading-subtitle{margin:0;font-size:.86rem;line-height:1.3}.student-photo-crop-preview{position:relative;width:min(100%,360px,45dvh);aspect-ratio:1;justify-self:center;overflow:hidden;cursor:grab;border:1px solid rgba(138,15,115,.18);border-radius:999px;background:linear-gradient(90deg,rgba(138,15,115,.06) 1px,transparent 1px),linear-gradient(180deg,rgba(138,15,115,.06) 1px,transparent 1px),var(--surface-soft);background-size:33.333% 33.333%;touch-action:none;-webkit-user-select:none;user-select:none}.student-photo-crop-preview:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgba(255,255,255,.86);border-radius:999px;box-shadow:inset 0 0 0 1px #8a0f733d;pointer-events:none}.student-photo-crop-preview img{width:100%;height:100%;display:block;object-fit:cover;transform-origin:center;pointer-events:none;will-change:transform}.student-photo-crop-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.student-photo-reset-action{justify-self:start;grid-column:1 / -1}.student-photo-crop-controls label{display:grid;gap:6px;color:var(--muted);font-size:.82rem;font-weight:900}.student-photo-crop-controls input[type=range]{width:100%;accent-color:var(--claret)}.student-photo-crop-modal .modal-actions{margin-top:0}@media (max-width: 560px),(max-height: 720px){.modal-backdrop{padding:8px}.student-photo-crop-modal{width:min(100%,480px);max-height:calc(100dvh - 16px);gap:8px;padding:10px}.student-photo-crop-preview{width:min(100%,300px,38dvh);border-radius:999px}.student-photo-crop-controls{gap:6px 10px}.student-photo-crop-controls label{gap:3px;font-size:.76rem}.student-photo-crop-modal .secondary-action,.student-photo-crop-modal .primary-action,.student-photo-crop-modal .ghost-action{min-height:38px}}@media (max-width: 1080px){.student-detail-modal-backdrop{align-items:stretch;padding:12px}.student-detail-dialog{max-height:calc(100vh - 24px)}.hero-grid,.today-card,.work-grid,.direction-work-grid,.student-profile-hero,.student-profile-grid,.student-profile-columns,.student-profile-actions,.student-contact-grid,.management-grid,.users-workspace,.users-directory-row,.admin-control-bar,.admin-filter-strip,.admin-family-contact-group,.admin-inline-grid,.management-full-panel .admin-crud-list,.admin-crud-card,.student-detail-grid,.student-family-inline-card,.module-settings-card,.settings-grid,.class-crud-row,.batch-form,.notice-form,.register-selection-bar,.register-workspace,.class-roster-heading,.messages-layout{grid-template-columns:1fr}.student-family-inline-card .email-field{grid-column:auto}.student-detail-danger-actions{width:100%;margin-left:0;padding-left:0;border-left:0;border-top:1px solid rgba(194,64,75,.16);padding-top:10px}.batch-form>button{grid-column:1 / -1}.batch-feature-select,.batch-step-heading{grid-template-columns:1fr;align-items:stretch}.batch-step-heading{display:grid}.batch-picker-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.batch-student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.register-classroom-overview-heading{align-items:stretch;flex-direction:column}.register-selection-bar{align-items:stretch}.register-selection-bar .student-filter-chips{grid-template-columns:repeat(4,minmax(0,1fr))}.student-inline-actions>button,.student-profile-list article>.secondary-action{width:100%}.student-profile-list article{grid-template-columns:auto minmax(0,1fr)}.student-profile-actions button{grid-template-columns:auto minmax(0,1fr)}.student-profile-tabs{gap:5px;padding:5px}.student-profile-tabs button{min-height:40px;padding:8px 3px}.student-profile-tabs span{font-size:.82rem}.student-action-status{grid-column:2;justify-self:start}.student-work-context{grid-template-columns:1fr;top:8px}.student-work-context.with-return-context{top:96px}.student-work-active,.class-roster-metrics{justify-content:flex-start}.class-roster-list button{grid-template-columns:auto auto minmax(0,1fr) auto}.class-roster-tags{grid-column:3 / -1;justify-content:flex-start}.student-profile-list article>.secondary-action{grid-column:1 / -1}.admin-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.register-toolbar{width:100%;grid-template-columns:minmax(0,1fr)}.date-navigator{grid-template-columns:minmax(88px,auto) minmax(190px,1fr) minmax(88px,auto) auto}.sidebar{padding:18px 12px}.brand-mark{justify-content:center}.brand-mark>div,.session-card,.nav-caption{display:none}.nav-list{display:grid;grid-template-columns:1fr;gap:6px}.nav-list a{min-height:58px;justify-content:center;gap:5px;padding:8px 6px;flex-direction:column;font-size:.72rem;text-align:center}.nav-label-full{display:none}.nav-label-short{display:block;max-width:100%;overflow-wrap:anywhere}.nav-list a.active:before,.nav-list a[aria-current=page]:before{inset:7px auto auto 50%;width:26px;height:3px;transform:translate(-50%)}}@media (min-width: 741px) and (max-width: 1080px){.app-shell{grid-template-columns:92px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto}}@media (max-width: 740px){input,select,textarea{font-size:16px}.login-shell{align-items:start;min-height:100svh;padding:calc(18px + env(safe-area-inset-top)) 14px calc(18px + env(safe-area-inset-bottom))}.login-panel{width:min(100%,520px);gap:18px;border-radius:26px;padding:22px}.login-panel .brand-mark{justify-content:flex-start}.login-panel h1{font-size:clamp(1.8rem,8vw,2.35rem);line-height:1.02}.login-panel .lead{display:none}.login-form{gap:12px}.login-form label{gap:7px}.login-form input{min-height:54px;border-radius:18px;font-size:1rem}.demo-switcher{grid-template-columns:1fr}.demo-switcher button{min-height:70px;grid-template-columns:auto minmax(0,1fr);justify-items:start;align-content:center;gap:3px 12px;padding:12px;text-align:left}.demo-switcher-icon{grid-row:1 / span 2}.demo-switcher strong,.demo-switcher small{max-width:100%;overflow-wrap:anywhere}.demo-switcher small{font-size:.78rem;line-height:1.25}.install-card{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px}.install-card p{font-size:.92rem;line-height:1.4}.install-card ol{display:none}.app-shell{grid-template-columns:1fr}.content{padding:calc(18px + env(safe-area-inset-top)) 20px 20px;padding-bottom:calc(120px + env(safe-area-inset-bottom));scroll-padding-top:calc(18px + env(safe-area-inset-top));scroll-padding-bottom:calc(120px + env(safe-area-inset-bottom))}.content.with-mobile-student-focus{padding-top:calc(124px + env(safe-area-inset-top));scroll-padding-top:calc(124px + env(safe-area-inset-top))}.content.with-mobile-student-focus .student-profile-section,.content.with-mobile-student-focus .student-profile-heading,.content.with-mobile-student-focus .panel,.content.with-mobile-student-focus section[id]{scroll-margin-top:calc(124px + env(safe-area-inset-top))}.student-profile-heading .lead{display:none}.student-profile-heading .register-toolbar{margin-top:6px}.student-selector{position:static}.student-active-context-bar,.mobile-student-focus-bar{position:fixed;right:0;left:0;z-index:66;top:env(safe-area-inset-top);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:6px 8px;margin:0 auto;width:min(100%,680px);max-width:none;border:0;border-bottom:1px solid rgba(138,15,115,.14);border-radius:0 0 24px 24px;background:linear-gradient(145deg,#fffffffa,#fbf6faf5),radial-gradient(circle at 90% 10%,rgba(214,179,0,.12),transparent 12rem),var(--surface);padding:6px 14px 8px;box-shadow:0 12px 34px #3f24421f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.student-active-context-bar details,.mobile-student-focus-bar details{position:relative}.student-active-context-bar .student-return-main,.mobile-student-focus-bar .student-return-main{grid-column:1 / 3;flex:1 1 auto;min-width:0;gap:8px}.student-active-context-bar .student-return-avatar,.mobile-student-focus-bar .student-return-avatar{width:42px;height:42px;border-radius:14px;font-size:1.02rem}.student-context-photo-action{position:relative;flex:0 0 auto;cursor:pointer}.student-context-photo-action input{display:none}.student-context-photo-badge{position:absolute;right:-3px;bottom:-3px;width:17px;height:17px;display:grid;place-items:center;border:2px solid var(--surface);border-radius:999px;background:var(--claret);color:var(--white);box-shadow:0 6px 16px #3f244229}.student-active-context-bar strong,.mobile-student-focus-bar strong{display:block;font-size:clamp(.88rem,4vw,.98rem);line-height:1.05}.student-active-context-bar small,.mobile-student-focus-bar small{display:block;color:var(--muted);font-size:.68rem;font-weight:800}.student-active-context-bar .secondary-action,.mobile-student-focus-bar .secondary-action{min-height:36px;padding:0 10px}.student-context-family{grid-column:1;min-width:0;justify-self:stretch}.student-context-profile-action,.student-context-aula-action,.student-context-family summary,.student-context-switcher summary{min-height:31px;display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(138,15,115,.14);border-radius:999px;background:var(--surface);color:var(--claret);padding:0 6px;font-size:.7rem;font-weight:950;cursor:pointer;list-style:none;width:100%;justify-content:center;white-space:nowrap}.student-context-profile-action{grid-column:3;justify-self:stretch;font:inherit}.student-context-aula-action{grid-column:2;justify-self:start}.mobile-student-focus-bar.with-register-aula-action{grid-template-columns:repeat(3,minmax(0,1fr))}.mobile-student-focus-bar.with-register-aula-action .student-return-main{grid-column:1 / 3}.mobile-student-focus-bar.with-register-aula-action .student-context-profile-action{grid-column:3}.mobile-student-focus-bar.with-register-aula-action .student-context-family,.mobile-student-focus-bar.with-register-aula-action .student-context-aula-action,.mobile-student-focus-bar.with-register-aula-action .student-context-switcher{grid-column:auto;justify-self:stretch}.mobile-student-focus-bar.with-register-aula-action .student-context-family summary,.mobile-student-focus-bar.with-register-aula-action .student-context-aula-action,.mobile-student-focus-bar.with-register-aula-action .student-context-switcher summary{width:100%;padding:0 8px;white-space:nowrap}.student-context-class-inline,.student-context-student-inline{min-width:0}.student-context-class-inline span{display:initial}.student-context-class-inline select{min-height:38px}.student-context-profile-action[aria-current=page],.student-context-aula-action[aria-current=page]{border-color:#3f7d5833;background:var(--green-soft);color:var(--green)}.student-context-family summary::-webkit-details-marker,.student-context-switcher summary::-webkit-details-marker{display:none}.student-context-family>div,.student-context-switcher>div{position:absolute;top:calc(100% + 8px);z-index:3;display:grid;gap:7px;margin-top:0;border:1px solid var(--line);border-radius:var(--radius-control);background:#ffffffd1;padding:10px;box-shadow:var(--shadow-subtle)}.student-context-family>div{left:0;width:min(78vw,320px)}.student-context-switcher{grid-column:3;min-width:0;justify-self:stretch}.student-context-switcher summary{justify-content:center}.student-context-switcher>div{right:0;width:min(88vw,360px);max-height:min(70vh,520px);overflow-y:auto}.student-context-family span{min-width:0;display:grid;gap:2px;color:var(--muted);font-size:.8rem;font-weight:800;overflow-wrap:anywhere}.student-context-family strong{color:var(--ink);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.student-context-family a{color:var(--claret);font-weight:950;text-decoration:none}.student-context-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.student-context-controls label{min-width:0;display:grid;gap:3px;color:var(--muted);font-size:.64rem;font-weight:950;text-transform:uppercase;letter-spacing:.045em}.student-context-controls select,.student-context-search input{min-height:38px;width:100%;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:7px 8px;font-size:.78rem;font-weight:850}.student-context-search{grid-column:1 / -1}.student-context-search .search-input-shell input{border:0}.student-context-results{grid-column:1 / -1;display:grid;gap:6px;max-height:42svh;overflow-y:auto;padding-top:2px}.student-context-results button{min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);padding:7px 8px;text-align:left}.student-context-results button.selected{border-color:#8a0f7357;background:var(--claret-soft);color:var(--claret)}.student-context-results img,.student-context-results button>span{width:28px;height:28px;grid-row:span 2;display:grid;place-items:center;border-radius:10px;background:var(--claret-soft);color:var(--claret);font-size:.78rem;font-weight:950;object-fit:cover}.student-context-results strong,.student-context-results small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-return-bar,.student-profile-selector{display:none}.student-scope-control{display:none!important}.class-roster-card{padding:12px}.class-roster-heading{grid-template-columns:minmax(0,1fr) auto;gap:8px}.class-roster-metrics{grid-column:1 / -1;justify-content:flex-start}.class-roster-body{gap:10px}.class-roster-body .student-search{display:none}.class-roster-list button{min-height:68px;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:10px}.class-roster-list button>svg:last-child,.class-roster-order{display:none}.class-roster-avatar{width:42px;height:42px;border-radius:15px}.class-roster-tags{grid-column:2;justify-content:flex-start}.material-notices .notice-student-shortcuts,.student-profile-selector .student-picker{display:none}.student-profile-hero{gap:10px}.student-focus-card{gap:10px;padding:14px}.student-focus-main{display:none}.student-focus-family{border-top:0;padding-top:0}.student-focus-family strong{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}.student-contact-grid{grid-template-columns:1fr}.student-contact-grid p{padding:0}.student-work-context{display:none}.student-work-context.with-return-context{top:calc(250px + env(safe-area-inset-top))}.student-work-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.student-work-fields label{gap:3px;font-size:.64rem}.student-work-fields select{min-height:38px;padding:7px 8px;font-size:.78rem}.student-work-active{justify-content:flex-start;gap:8px}.student-work-active .student-return-avatar{width:36px;height:36px;border-radius:13px;font-size:.9rem}.student-work-active strong{font-size:.92rem}.student-work-active small{font-size:.76rem}.next-step-card{grid-template-columns:auto minmax(0,1fr)}.next-step-card a{grid-column:1 / -1;justify-self:stretch;text-align:center}.menu-toggle,.floating-menu-toggle,.sidebar-close{border:1px solid var(--line);min-height:46px;align-items:center;justify-content:center;gap:8px;border-radius:var(--radius-control);background:var(--surface);color:var(--ink);font-weight:800}.menu-toggle{display:inline-flex}.floating-menu-toggle{position:fixed;z-index:68;left:16px;right:16px;top:auto;bottom:calc(12px + env(safe-area-inset-bottom));display:inline-flex;width:auto;min-height:54px;justify-content:center;border-color:#8a0f733d;border-radius:20px;background:linear-gradient(145deg,#fffffff5,#fbf6fae6),var(--surface);color:var(--claret);padding:0 18px;box-shadow:0 12px 32px #3f244224;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.floating-menu-toggle svg{flex:0 0 auto}.floating-menu-toggle span{font-size:.88rem;font-weight:900}.floating-menu-toggle.student-aware{top:auto;bottom:calc(12px + env(safe-area-inset-bottom))}.sidebar-close{display:inline-flex;width:100%}.menu-scrim{position:fixed;z-index:69;top:0;right:0;bottom:0;left:0;display:block;border:0;background:#26192952}.sidebar{position:fixed;z-index:70;inset:auto 0 0;width:auto;max-height:min(78vh,680px);border:1px solid var(--line);border-right:0;border-bottom:0;border-left:0;border-radius:26px 26px 0 0;padding:16px 18px calc(18px + env(safe-area-inset-bottom));overflow-y:auto;background:var(--surface);box-shadow:0 -18px 42px #3f24422e;transform:translateY(calc(100% + 24px));transition:transform .2s ease}.sidebar.mobile-open{transform:translateY(0)}.brand-mark{display:flex;justify-content:flex-start}.brand-mark>div{display:block}.nav-list{grid-template-columns:1fr;gap:8px}.nav-list a{display:flex;min-height:48px;justify-content:flex-start;flex-direction:row;gap:10px;padding:0 12px;font-size:.9rem;text-align:left}.nav-label-full{display:block}.nav-label-short{display:none}.nav-caption{display:block;padding-left:0}.session-card{display:grid}.topbar,.section-heading,.panel-heading,.student-return-bar,.record-row{align-items:stretch;flex-direction:column}.panel-heading{gap:10px;margin-bottom:16px}.panel-heading h2{font-size:clamp(1.28rem,6vw,1.55rem);line-height:1.12;overflow-wrap:anywhere}.birthday-toolbar{gap:10px;padding:10px}.birthday-toolbar label{min-width:100%}.birthday-view-toggle{width:100%}.birthday-view-toggle button{flex:1 1 120px;justify-content:center}.birthday-calendar{gap:8px}.birthday-calendar-weekdays,.birthday-calendar-grid{gap:5px}.birthday-day{min-height:auto;aspect-ratio:.78;gap:5px;border-radius:11px;padding:7px 5px}.birthday-day>strong{font-size:.78rem}.birthday-day button{width:100%;min-height:32px;display:flex;justify-content:center;gap:3px;border-radius:10px;padding:3px}.birthday-day-gift{width:24px;height:24px}.birthday-day-name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.birthday-day button small{min-width:12px;color:var(--claret);font-size:.78rem;line-height:1}.report-summary-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.report-summary-strip article{min-width:0}.report-summary-strip small,.report-summary-strip span{font-size:.68rem}.report-summary-strip strong{font-size:1.08rem}.report-tabs{width:100%}.report-tabs button{flex:1 1 120px}.report-summary-strip .secondary-action{grid-column:1 / -1}.report-service-heading{align-items:flex-start;flex-direction:column}.report-table-wrap{overflow:visible}.report-table{min-width:0}.report-table thead{display:none}.report-table,.report-table tbody,.report-table tr,.report-table td{display:block;width:100%}.report-table tr{padding:9px 12px;border-bottom:1px solid var(--line)}.report-table tr:last-child{border-bottom:0}.report-table td{display:grid;grid-template-columns:minmax(90px,34%) minmax(0,1fr);gap:10px;padding:5px 0;border-bottom:0}.report-col-count,.report-col-money{text-align:left!important}.report-cell-empty{display:none!important}.report-table td:before{content:attr(data-label);color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.purchase-layout,.purchase-form,.purchase-product-form,.purchase-special-form,.purchase-special-grid,.purchase-admin-summary,.purchase-admin-filters,.purchase-special-classes{grid-template-columns:1fr}.purchase-panel-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.purchase-special-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-panel-tabs button{min-height:44px;gap:5px;padding-inline:6px;font-size:.84rem}.purchase-order-search{grid-column:auto}.purchase-export-actions{align-items:stretch;flex-direction:column}.purchase-row{align-items:flex-start;flex-direction:column}.purchase-inline-price{max-width:100%}.purchase-inline-edit-fields{grid-template-columns:1fr}.purchase-row-state{width:100%;text-align:left}.purchase-payment-actions{flex-direction:column}.purchase-cart-panel{position:relative;border-width:2px}.purchase-admin-table-wrap{overflow:visible}.purchase-admin-table{min-width:0}.purchase-admin-table thead{display:none}.purchase-admin-table,.purchase-admin-table tbody,.purchase-admin-table tr,.purchase-admin-table td{display:block;width:100%}.purchase-admin-table tr{padding:10px 12px;border-bottom:1px solid var(--line)}.purchase-admin-table td{display:grid;grid-template-columns:minmax(96px,34%) minmax(0,1fr);gap:10px;padding:5px 0;border-bottom:0}.purchase-admin-table td:before{content:attr(data-label);color:var(--muted);font-size:.72rem;font-weight:900;text-transform:uppercase}.student-return-main{width:100%}.student-return-alert{max-width:none;width:100%;justify-content:center}.notice-heading-tools{align-items:stretch;flex-direction:column}.notice-material-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.notice-material-shortcuts button{min-height:40px;justify-content:flex-start;padding:7px 9px;font-size:.82rem;white-space:normal}.notice-pending-filters{grid-template-columns:1fr}.notice-manage-row{display:grid;grid-template-columns:auto 44px minmax(0,1fr);align-items:start;gap:10px;padding:12px}.notice-manage-row>div{min-width:0;gap:7px}.notice-manage-row strong{font-size:1rem;line-height:1.15}.notice-manage-row .story-meta-chips{gap:5px}.notice-manage-row .story-meta-chip{max-width:100%;min-height:28px;font-size:.78rem;line-height:1.15;white-space:normal}.notice-manage-row .secondary-action{grid-column:1 / -1;width:100%;min-height:44px}.notice-select-check{min-height:40px}.notice-row-icon{width:44px;height:44px}.admin-state-row{grid-template-columns:1fr}.admin-row-actions{justify-content:stretch}.admin-row-actions button{flex:1 1 160px;justify-content:center}.class-crud-row{align-items:stretch}.admin-crud-title{align-items:stretch;flex-direction:column}.class-crud-actions,.admin-crud-actions{justify-content:stretch}.class-crud-actions button,.admin-crud-actions button{flex:1 1 140px}.admin-tabs{grid-template-columns:1fr}.admin-tabs button{min-height:58px}.direction-alert-row{grid-template-columns:auto minmax(0,1fr) auto}.direction-alert-action{grid-column:2 / -1;justify-self:start}.dashboard-load-state{grid-template-columns:1fr}.dashboard-load-state .secondary-action,.primary-action{width:100%}.topbar-actions{width:100%;display:flex;align-items:center;justify-content:flex-end}.register-toolbar{display:grid;grid-template-columns:1fr;min-width:0}.register-toolbar select{width:100%}.date-navigator{width:100%;max-width:100%;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden}.date-navigator button,.date-navigator label{min-height:42px;justify-content:center;gap:5px;padding:8px 6px;font-size:clamp(.78rem,3.45vw,.9rem);line-height:1.12;text-align:center;white-space:normal}.date-navigator button svg,.date-input-card svg{width:16px;height:16px;flex:0 0 auto}.register-view-tabs button{min-height:42px;gap:1px 6px;padding-inline:6px}.register-view-tabs button small{display:none}.register-classroom-overview{padding:12px;border-radius:22px}.register-classroom-view-filter{width:100%}.register-classroom-view-filter button{flex:1 1 0;padding:0 8px}.register-classroom-grid{display:grid;gap:10px;overflow:visible;border:0;border-radius:0}.register-classroom-grid-row.header{display:none}.register-classroom-grid-row{min-width:0;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:10px 8px}.register-classroom-cell{width:100%;min-width:0;min-height:78px;height:78px;flex-direction:column;justify-content:center;gap:4px;border-radius:16px;padding:6px 2px;font-size:.6rem;font-weight:950;text-align:center;white-space:normal}.register-classroom-cell-icon{width:32px;height:32px;margin:0}.register-classroom-cell-label{display:inline;color:currentColor;max-width:100%;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.register-classroom-cell-state{gap:3px}.register-classroom-cell-state svg{width:16px;height:16px}.register-classroom-state-text{display:none}.register-classroom-student,.register-classroom-action{grid-column:1 / -1}.register-classroom-student{position:relative;grid-template-columns:minmax(0,1fr);gap:2px;align-items:center;padding-right:118px}.register-classroom-student strong{grid-column:1;grid-row:1;max-width:100%}.register-classroom-student small{grid-column:1;grid-row:2;max-width:100%}.register-classroom-student .student-picker-status{position:absolute;top:50%;right:8px;max-width:108px;transform:translateY(-50%)}.register-classroom-action{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.register-classroom-action .secondary-action{min-height:42px;gap:6px;padding-inline:8px;font-size:.88rem;white-space:nowrap}.register-family-preview{overflow:hidden}.register-family-preview summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px;padding:10px}.register-family-preview .record-visual-summary-rows{gap:6px}.register-family-preview .record-visual-summary-rows .record-visual-card{grid-template-columns:42px minmax(0,1fr);gap:8px;padding:8px}.register-family-preview .record-visual-summary-rows .record-visual-card .visual-option-icon,.register-family-preview .record-visual-summary-family .record-visual-card:first-child .visual-option-icon{width:42px;height:42px;border-radius:14px}.register-family-preview .record-visual-card small{font-size:.62rem}.register-family-preview .record-visual-card strong{font-size:.9rem}.batch-scope-card{grid-template-columns:1fr}.register-selection-bar{display:none}.active-student-block-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.active-student-block-summary span:last-child{grid-column:auto}.date-input-card{grid-column:1 / -1;order:-1}.date-input-card>span{gap:5px;padding:0 4px;overflow-wrap:anywhere}.date-step{justify-content:center}.date-today{grid-column:auto;justify-content:center}.student-selector-heading{grid-template-columns:1fr}.student-picker{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}.daily-register .student-picker{grid-template-columns:minmax(0,1fr);gap:6px;max-height:min(38vh,280px)}.daily-register .student-picker button{gap:7px;border-radius:16px;padding:8px}.daily-register .student-picker-icon{width:26px;height:26px;border-radius:9px}.daily-register .student-picker-copy strong{font-size:.86rem}.daily-register .student-picker-copy small,.daily-register .student-picker-status{font-size:.66rem}.daily-register .student-picker-status{grid-column:2;justify-self:start}.family-active-context-bar{grid-template-columns:1fr;align-items:stretch;gap:10px;margin-bottom:14px;overflow:visible;padding:12px}.family-active-main{min-width:0;gap:10px}.family-active-avatar{width:64px;height:64px;flex-basis:64px;border-radius:22px}.family-active-main strong{font-size:clamp(.98rem,4.3vw,1.08rem);line-height:1.12}.family-active-status{justify-content:flex-start;gap:6px}.family-active-switcher{justify-self:stretch}.family-active-switcher summary{width:100%;min-height:42px;padding:8px 10px;font-size:clamp(.9rem,4vw,1rem);overflow-wrap:anywhere}.family-active-switcher>div{position:static;width:100%;margin-top:8px;box-shadow:none}.quick-actions,.class-grid,.metric-grid,.direction-summary-grid,.student-profile-metrics,.student-basic-detail,.student-family-detail article,.student-edit-form,.demo-switcher,.compact-form,.register-form,.story-form,.calendar-form,.milestone-form,.health-check-row,.import-form,.import-retry-form,.import-row{grid-template-columns:1fr}.wide-field,.register-form-heading,.story-form-heading,.student-profile-section.wide{grid-column:auto}.register-form .visual-field,.register-form .optional-detail,.register-form>label:not(.optional-detail):not(.wide-field):not(.check-field){grid-column:auto}.register-block{padding:8px;border-radius:18px}.register-block-support.with-extra{grid-template-columns:1fr}.visual-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;width:100%;min-width:0}.visual-option{min-height:clamp(82px,21vw,92px);gap:4px;padding:6px 2px;border-radius:17px}.visual-option-icon{width:clamp(48px,13.2vw,56px);height:clamp(48px,13.2vw,56px);border-radius:16px}.visual-option-symbol{font-size:1.08rem}.visual-option strong{max-width:100%;font-size:clamp(.68rem,2.9vw,.74rem);line-height:1.05}.register-form-heading,.register-actions,.story-preview,.story-item,.calendar-event,.milestone-item,.new-conversation{align-items:stretch;flex-direction:column}.register-form-heading{display:none}.register-status-chip-mobile{display:inline-flex;margin-top:-2px;padding:5px 8px;font-size:.72rem}.story-preview-photo{width:100%;min-height:190px;max-height:240px}.calendar-event{grid-template-columns:1fr}.calendar-event-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-event-actions .secondary-action,.calendar-event-actions .danger-action{min-width:0;min-height:44px;gap:6px;padding:0 8px;font-size:.82rem;white-space:nowrap}.calendar-event-actions svg{width:16px;height:16px;flex:0 0 auto}.milestone-item{grid-template-columns:1fr}.milestone-item .item-actions{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.milestone-item .item-actions .secondary-action,.milestone-item .item-actions .danger-action{min-width:0;min-height:38px;justify-content:center;gap:4px;padding:0 5px;font-size:.74rem;white-space:nowrap}.milestone-item .item-actions svg{width:16px;height:16px;flex:0 0 auto}.message-compose{grid-template-columns:1fr}.message-compose-actions{align-items:stretch;flex-direction:column}.new-conversation select{max-width:none}.today-card,.family-preview,.panel{padding:20px}h1{font-size:2.05rem}}@media (max-width: 420px){.date-navigator{gap:5px}.date-navigator button,.date-navigator label{min-height:40px;gap:4px;padding:7px 5px;font-size:.8rem}.date-navigator button svg,.date-input-card svg{width:15px;height:15px}.student-profile-tabs{gap:4px;padding:4px}.student-profile-tabs button{min-height:38px;padding:7px 2px}.student-profile-tabs span{font-size:.76rem}.family-active-context-bar{padding:11px}.register-selection-bar .student-filter-chips{grid-template-columns:1fr}.register-form .visual-options{gap:4px}.register-form .visual-option{min-height:78px;padding:5px 1px}.register-form .visual-option-icon{width:clamp(44px,12.8vw,50px);height:clamp(44px,12.8vw,50px);border-radius:15px}.register-student-cards{display:grid;grid-template-columns:1fr;overflow:visible;padding-bottom:2px}.register-student-cards button{max-width:none;min-width:0;flex-basis:auto}.active-student-block-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.active-student-block-summary span{min-height:44px;grid-template-columns:1fr;gap:2px;border-radius:14px;padding:5px 2px;text-align:center}.active-student-block-summary svg{justify-self:center}.active-student-block-summary strong{font-size:.62rem}.family-active-avatar{width:58px;height:58px;flex-basis:58px}.status-pill,.state,.family-active-status small{font-size:.72rem}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.safety-forms,.safety-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.safety-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;border:1px solid var(--border);border-left:4px solid var(--gold);border-radius:14px;background:var(--surface-soft);box-shadow:var(--shadow-subtle)}.safety-item>div{display:grid;gap:5px}.safety-status-icon{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:13px;background:var(--gold-soft);color:var(--gold-text)}.safety-status-icon.done{background:var(--green-soft);color:var(--green)}.safety-status-icon.draft{background:var(--surface-muted);color:var(--muted)}.safety-status-icon.cancelled{background:var(--danger-soft);color:var(--danger)}.safety-item-meta{display:flex;flex-wrap:wrap;gap:6px}.safety-meta-chip{border-radius:999px;background:var(--gold-soft);color:var(--gold-text);display:inline-flex;align-items:center;gap:5px;font-size:.72rem;font-weight:950;line-height:1;padding:6px 8px}.safety-meta-chip.done{background:var(--green-soft);color:var(--green)}.safety-meta-chip.draft,.safety-meta-chip.neutral{background:var(--surface-muted);color:var(--muted)}.safety-meta-chip.severity-urgente,.safety-meta-chip.cancelled{background:var(--danger-soft);color:var(--danger)}.safety-item p{margin:0}.safety-item.severity-moderada{border-left-color:var(--warning)}.safety-item.severity-urgente{border-left-color:var(--danger-strong)}@media (max-width: 980px){.safety-forms,.safety-lists,.internal-notice-form{grid-template-columns:1fr}}@media (max-width: 740px){.safety-item,.internal-notice-list{grid-template-columns:1fr}}@media (max-width: 740px){.hero-grid{grid-template-columns:1fr}.family-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.family-quick-actions a{min-height:96px;border-radius:20px;padding:13px}.family-preview{gap:16px;padding:16px}.family-home,.family-timeline-view,.family-notices-view{gap:12px}.family-diary-card,.family-timeline-panel,.family-notices-panel{max-width:none;width:100%}.family-child-focus{align-items:flex-start;gap:12px}.family-child-avatar{width:72px;height:72px;border-radius:22px}.family-child-focus strong{font-size:clamp(1.18rem,6.5vw,1.65rem);line-height:1.08}.family-child-meta,.family-child-status-row{gap:5px}.family-child-focus small,.family-active-status small,.status-pill,.state{min-height:auto;padding:6px 8px;white-space:normal}.family-priority-strip{grid-template-columns:1fr;gap:8px}.family-priority-strip a{grid-template-columns:auto minmax(0,1fr);align-items:center;border-radius:18px;padding:10px}.family-priority-strip a>span{grid-row:span 2;width:38px;height:38px;border-radius:13px}.record-visual-summary-rows .record-visual-card{grid-template-columns:52px minmax(0,1fr);gap:9px;padding:10px}.record-visual-summary-rows .record-visual-card .visual-option-icon{width:52px;height:52px;border-radius:16px}.record-visual-summary-rows .record-visual-card strong{font-size:.98rem;line-height:1.18}.record-visual-summary-family .record-visual-card:first-child .visual-option-icon{width:56px;height:56px;border-radius:18px}.family-day-card-heading strong{font-size:1.05rem}.family-notice-groups{gap:13px}.story-list-controls{grid-template-columns:1fr;border-radius:18px;padding:10px}.inline-edit-form{grid-template-columns:1fr;gap:10px;border-radius:20px;padding:12px}.inline-edit-form label,.inline-edit-form .story-photo-preview-grid,.inline-edit-form .inline-actions,.inline-edit-form .wide-field{grid-column:1 / -1}.inline-edit-form .story-photo-preview-grid{grid-template-columns:1fr}.inline-edit-form .story-photo-preview img{height:auto;max-height:220px;object-fit:contain;background:var(--surface-muted)}.inline-edit-form .inline-actions{display:grid;grid-template-columns:1fr}.inline-edit-form .inline-actions>button{width:100%}.family-day-title{font-size:1.35rem;line-height:1.14}.family-stories-feed .story-preview{border-radius:24px;padding:0}.family-stories-feed .story-preview-gallery .story-preview-photo{height:auto;max-height:none;border-radius:20px;padding:6px}.story-download-actions{grid-template-columns:1fr}.story-download-link{width:100%}.story-item{grid-template-columns:1fr}.story-item-actions{width:100%;display:grid;grid-template-columns:1fr}.story-item-actions>button{width:100%;min-width:0}}
