@import url("https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=JetBrains+Mono:wght@400;500&display=swap");.app-shell,:root{--blue-900:#0b2a6b;--blue-800:#0f3a93;--blue-700:#1246ae;--blue-600:#1650c8;--blue-500:#2f68dc;--blue-400:#6e96e9;--blue-300:#a8c1f2;--blue-200:#d3e0f9;--blue-100:#e9f0fd;--blue-50:#f4f8fe;--navy-900:#121626;--navy-800:#1c1b39;--navy-700:#262a48;--navy-600:#363b60;--navy-400:#6b7091;--ink-900:#1a1a1a;--ink-700:#3d4451;--ink-500:#5b6b7b;--ink-400:#8a95a3;--grey-300:#d7d9dd;--grey-200:#edebeb;--grey-100:#f2f3f5;--grey-50:#f7f8fa;--lime:#ddfd2c;--lime-dark:#c4e200;--lime-ink:#4a5600;--lime-200:#edfbb4;--lime-100:#f6fdde;--lavender:#cd8bff;--lavender-200:#ebdbff;--lavender-100:#f5edff;--lavender-ink:#6b2fa8;--mint:#98ff98;--mint-200:#dcffdc;--mint-ink:#0e6b3c;--amber:#f9bc16;--amber-200:#ffeec9;--amber-ink:#8a5b05;--coral:#d92d20;--coral-200:#fce6e4;--coral-ink:#a31b10;--bg-app:#f5f7fc;--bg-canvas:#f0f6fa;--surface-card:#fff;--surface-nav:#fff;--surface-accent:var(--blue-50);--surface-hero:linear-gradient(120deg,#eaf1fd,#f4f0ff 52%,#fff);--gradient-hero:linear-gradient(135deg,#e9f0fd,#f4f8fe 45%,#fff);--text-title:var(--ink-900);--ds-text-body:var(--ink-700);--text-muted:var(--ink-500);--text-subtle:var(--ink-400);--text-link:var(--blue-600);--text-link-hover:var(--blue-800);--text-on-primary:#fff;--border-subtle:var(--grey-200);--border-strong:var(--grey-300);--action-primary:var(--blue-600);--action-primary-hover:var(--blue-700);--action-primary-active:var(--blue-800);--action-primary-soft:var(--blue-100);--nav-ink:var(--ink-500);--nav-ink-active:var(--blue-700);--nav-active-bg:var(--blue-100);--state-success:var(--mint-ink);--state-success-bg:var(--mint-200);--state-warning:var(--amber-ink);--state-warning-bg:var(--amber-200);--state-danger:var(--coral);--state-danger-bg:var(--coral-200);--state-info:var(--blue-600);--state-info-bg:var(--blue-100);--font-display:"Onest",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-sans:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--fs-h1:30px;--lh-h1:38px;--fs-h2:24px;--lh-h2:32px;--fs-h3:20px;--lh-h3:28px;--fs-body-lg:17px;--lh-body-lg:26px;--fs-body:15px;--lh-body:24px;--fs-body-sm:14px;--lh-body-sm:22px;--fs-caption:13px;--lh-caption:18px;--fs-micro:11px;--lh-micro:16px;--fs-control:16px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--ls-display:-0.02em;--ls-heading:-0.01em;--ls-body:0;--ls-eyebrow:0.08em;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:8px;--radius-sm:12px;--radius-control:16px;--radius-card:24px;--radius-hero:32px;--radius-pill:999px;--shadow-1:0 2px 6px rgba(18,22,38,.05);--shadow-2:0 10px 30px rgba(18,22,38,.07);--shadow-3:0 24px 60px rgba(18,22,38,.14);--shadow-nav:0 8px 24px rgba(18,22,38,.08);--ring-focus:0 0 0 3px rgba(22,80,200,.22);--ring-danger:0 0 0 3px rgba(217,45,32,.18);--dur-instant:80ms;--dur-fast:140ms;--dur-base:200ms;--dur-slow:320ms;--ease-standard:cubic-bezier(0.2,0,0,1);--ease-entrance:cubic-bezier(0.05,0.7,0.1,1);--transition-control:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);--rail-w:96px;--ctx-w:240px;--page-max:1320px;--topbar-h:64px;--brand:var(--action-primary);--brand-hover:var(--action-primary-hover);--brand-active:var(--action-primary-active);--brand-disabled:var(--blue-300);--brand-subtle:var(--blue-100);--brand-surface:var(--blue-50);--brand-ring:rgba(22,80,200,.22);--surface:var(--surface-card);--surface-muted:var(--bg-app);--surface-sunken:var(--grey-100);--surface-inverse:var(--navy-900);--content:var(--ds-text-body);--content-strong:var(--text-title);--content-label:var(--ink-700);--content-muted:var(--text-muted);--content-subtle:var(--text-subtle);--content-disabled:var(--ink-400);--content-inverse:#fff;--line:var(--border-subtle);--line-strong:var(--border-strong);--line-subtle:var(--grey-100);--success:var(--state-success);--success-surface:var(--state-success-bg);--warning:var(--state-warning);--warning-surface:var(--state-warning-bg);--danger:var(--state-danger);--danger-surface:var(--state-danger-bg);--info:var(--state-info);--info-surface:var(--state-info-bg);--radius-md:var(--radius-xs);--radius-lg:var(--radius-control);--radius-xl:var(--radius-card);--radius-full:var(--radius-pill);--shadow-sm:var(--shadow-1);--shadow-md:var(--shadow-2);--shadow-lg:var(--shadow-2);--shadow-xl:var(--shadow-3);--ring-brand:var(--ring-focus);--duration-micro:var(--dur-fast);--duration-default:var(--dur-base);--duration-overlay:var(--dur-base);--ease-default:var(--ease-standard);--ease-out:var(--ease-entrance);--text-h1:var(--fs-h1);--leading-h1:var(--lh-h1);--weight-h1:var(--fw-semibold);--text-h2:var(--fs-h3);--leading-h2:var(--lh-h3);--weight-h2:var(--fw-semibold);--text-h3:var(--fs-body);--leading-h3:var(--lh-body);--weight-h3:var(--fw-semibold);--text-body:var(--fs-body);--leading-body:var(--lh-body);--text-body-sm:var(--fs-body-sm);--leading-body-sm:var(--lh-body-sm);--text-label:var(--fs-body-sm);--leading-label:var(--lh-body-sm);--text-caption:var(--fs-caption);--leading-caption:var(--lh-caption);--text-micro:var(--fs-micro);--leading-micro:var(--lh-micro);--weight-regular:var(--fw-regular);--weight-medium:var(--fw-medium);--weight-semibold:var(--fw-semibold);--weight-bold:var(--fw-bold);--tracking-section:var(--ls-eyebrow);--content-max:var(--page-max);--overlay:rgba(18,22,38,.45)}body{background:var(--bg-app);color:var(--ds-text-body);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body)}h1,h2{font-family:var(--font-display);letter-spacing:var(--ls-display)}h1,h2,h3,h4{color:var(--text-title);font-weight:var(--fw-semibold);text-wrap:pretty}h3,h4{font-family:var(--font-sans)}a{color:var(--text-link)}a:hover{color:var(--text-link-hover)}[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--ring-focus)}.app-shell .card,.card{background:var(--surface-card);border:1px solid rgba(18,22,38,.05);border-radius:var(--radius-card);box-shadow:var(--shadow-2);padding:var(--space-6);margin-bottom:var(--space-6)}.card-header h2,.card>h2,.modal-header h2{font-family:var(--font-sans);font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:0}.app-shell .btn,.btn{min-height:40px;padding:9px 16px;gap:8px;border-radius:var(--radius-control);background:var(--action-primary);color:var(--text-on-primary);font-family:var(--font-sans);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium);transition:var(--transition-control),transform var(--dur-instant) var(--ease-standard)}.app-shell .btn:hover:not(:disabled),.btn:hover:not(:disabled){background:var(--action-primary-hover);color:var(--text-on-primary);opacity:1}.btn:active:not(:disabled){background:var(--action-primary-active);transform:scale(.98)}.app-shell .btn.secondary,.btn.secondary{background:var(--surface-card);border-color:var(--border-strong);color:var(--text-title)}.app-shell .btn.secondary:hover:not(:disabled),.btn.secondary:hover:not(:disabled){background:var(--surface-card);border-color:var(--blue-300);color:var(--text-link)}.app-shell .btn.ghost,.btn.ghost{background:transparent;color:var(--text-link)}.app-shell .btn.ghost:hover:not(:disabled),.btn.ghost:hover:not(:disabled){background:var(--action-primary-soft);color:var(--text-link-hover)}.app-shell .btn.accent,.btn.accent{background:var(--lime-200);border-color:rgba(74,86,0,.14);color:var(--lime-ink)}.app-shell .btn.accent:hover:not(:disabled),.btn.accent:hover:not(:disabled){background:var(--lime);color:var(--lime-ink)}.app-shell .btn.danger,.btn.danger{background:var(--state-danger);color:#fff}.app-shell .btn.sm,.btn.sm{min-height:32px;padding:5px 12px;border-radius:var(--radius-sm);font-size:var(--fs-caption);line-height:var(--lh-caption)}.app-shell .btn.lg,.btn.lg{min-height:48px;padding:12px 24px;font-size:var(--fs-body)}.app-shell .input,.input{min-height:46px;padding:10px 14px;border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface-card);color:var(--ds-text-body);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);transition:var(--transition-control)}.app-shell .input:focus,.input:focus{border-color:var(--action-primary);outline:none;box-shadow:var(--ring-focus)}.app-shell .input[aria-invalid=true]:focus,.input[aria-invalid=true]:focus{border-color:var(--state-danger);box-shadow:var(--ring-danger)}.field label{color:var(--text-title);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium)}.field .hint,.muted{color:var(--text-muted)}.badge,.chip{border-radius:var(--radius-pill)}.app-shell .badge.info,.badge.info{background:var(--state-info-bg);color:var(--state-info)}.app-shell .badge.success,.badge.success{background:var(--state-success-bg);color:var(--state-success)}.app-shell .badge.warning,.badge.warning{background:var(--state-warning-bg);color:var(--state-warning)}.app-shell .badge.danger,.badge.danger{background:var(--state-danger-bg);color:var(--state-danger)}.app-shell table.table th,table.table,table.table th{font-size:var(--fs-body-sm);line-height:var(--lh-body-sm)}.app-shell table.table th,table.table th{color:var(--text-muted);font-weight:var(--fw-semibold);letter-spacing:0;text-transform:none}table.table tbody tr:hover{background:var(--grey-50)}.modal{border:1px solid rgba(18,22,38,.05);border-radius:var(--radius-card);box-shadow:var(--shadow-3)}.modal-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-shell .kpi-card__value,.app-shell .stat-value,.stat-value{color:var(--text-title);font-family:var(--font-display);font-size:36px;line-height:42px;font-weight:var(--fw-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:var(--ls-display)}.app-shell .kpi-card,.app-shell .stat-card{border:1px solid rgba(18,22,38,.05);border-radius:var(--radius-card);box-shadow:var(--shadow-2)}.app-shell .stat-card:before{display:none}.progress>span,.score-bar>span{background:var(--action-primary)}.app-shell{--el-brand-700:var(--blue-800);--el-brand-600:var(--blue-700);--el-brand-500:var(--blue-600);--el-brand-400:var(--blue-400);--el-brand-200:var(--blue-200);--el-brand-100:var(--blue-100);--el-green-700:var(--mint-ink);--el-green-500:var(--mint-ink);--el-green-200:var(--mint-200);--el-green-accent:var(--mint);--el-blue:var(--blue-500);--el-blue-ink:var(--blue-700);--el-blue-bg:var(--blue-100);--el-purple:var(--lavender-ink);--el-purple-bg:var(--lavender-100);--el-red:var(--coral);--el-red-bg:var(--coral-200);--el-ink:var(--text-title);--el-body:var(--ds-text-body);--el-muted:var(--text-muted);--el-hairline:var(--border-subtle);--el-subtle:var(--grey-50);--el-shadow-card:var(--shadow-2);--el-shadow-pop:var(--shadow-3);--el-ring:var(--ring-focus);--el-ring-danger:var(--ring-danger);--el-bg-grad:var(--bg-app);--el-radius-control:var(--radius-control);--el-radius-card:var(--radius-card);--el-radius-chip:var(--radius-pill);--color-bg:var(--bg-app);--color-surface:var(--surface-card);--color-border:var(--border-subtle);--color-text:var(--ds-text-body);--color-text-muted:var(--text-muted);--color-primary:var(--action-primary);--color-primary-ink:var(--text-link);--color-primary-hover:var(--action-primary-hover);--color-success:var(--state-success);--color-success-bg:var(--state-success-bg);--color-danger:var(--state-danger);--color-danger-bg:var(--state-danger-bg);--color-warning:var(--state-warning);--color-warning-bg:var(--state-warning-bg);--tt-primary-100:var(--blue-100);--tt-primary-50:var(--blue-50);height:100dvh;padding:16px 0 16px 16px;gap:12px;background:var(--bg-app);color:var(--ds-text-body);font-size:var(--fs-body);line-height:var(--lh-body)}.app-shell .sidebar{width:auto;height:calc(100dvh - 32px);align-self:stretch;flex:none;flex-direction:row;gap:12px;overflow:visible;background:transparent;border:0;z-index:calc(var(--z-drawer) + 1)}.app-shell .rail{width:var(--rail-w);height:100%;flex:none;position:static;align-self:stretch;padding:14px 8px;gap:4px;overflow:hidden;background:var(--surface-nav);border:1px solid rgba(18,22,38,.05);border-radius:var(--radius-hero);box-shadow:var(--shadow-2)}.app-shell .rail-logo{width:58px;height:52px;margin:0 auto 8px;padding:4px;border-radius:0;background:transparent}.app-shell .rail-logo img{display:block;width:100%;height:100%;object-fit:contain}.app-shell .ctx-brand-link,.app-shell .mobile-nav-logo,.app-shell a.rail-ic,.app-shell a.rail-logo{text-decoration:none}.app-shell .ctx-brand-link{display:block;width:-moz-fit-content;width:fit-content;max-width:100%}.app-shell :is(.rail-logo,.ctx-brand-link,.mobile-nav-logo):focus-visible{outline:3px solid var(--blue-300);outline-offset:4px;border-radius:8px}.app-shell .rail-nav{width:100%;gap:4px;overflow-y:auto;scrollbar-width:none}.app-shell .rail-ic{min-height:58px;padding:7px 2px;gap:4px;border:1px solid transparent;border-radius:var(--radius-control);color:var(--nav-ink);font-family:var(--font-sans);transition:var(--transition-control)}.app-shell .rail-ic:hover{background:var(--grey-50);color:var(--nav-ink-active)}.app-shell .rail-ic.active{background:var(--nav-active-bg);color:var(--nav-ink-active)}.app-shell .rail-ic.active:before{content:"";position:absolute;left:2px;top:50%;width:3px;height:20px;border-radius:var(--radius-pill);background:var(--action-primary);transform:translateY(-50%)}.app-shell .rail-ic.is-open{border-color:var(--blue-300)}.app-shell .rail-ic__txt{max-width:100%;color:inherit;font-size:11px;line-height:14px;font-weight:var(--fw-medium);letter-spacing:0;overflow-wrap:anywhere}.product-icon{display:inline-flex;width:22px;height:22px}.product-icon img{display:block;width:22px;height:22px}.product-icon__active{display:none!important}.rail-ic.active .product-icon__base,.rail-ic:hover .product-icon__base{display:none}.rail-ic.active .product-icon__active,.rail-ic:hover .product-icon__active{display:block!important}.app-shell .rail-foot{width:100%;gap:4px;padding-top:8px;border-top:1px solid var(--border-subtle)}.app-shell .ctx{margin-left:0;width:var(--ctx-w);height:100%;flex:none;align-self:stretch;overflow:hidden;flex-direction:column;padding:0;background:var(--surface-card);border:1px solid rgba(18,22,38,.05);border-radius:var(--radius-hero);box-shadow:var(--shadow-2)}.app-shell .ctx,.app-shell .sidebar.is-open .ctx{display:flex;position:static;transform:none;visibility:visible}.app-shell .ctx__head{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;padding:18px 16px 12px;border-bottom:1px solid var(--border-subtle)}.app-shell .sidebar-brand{flex:1 1 130px;min-width:0;padding:0}.ctx-brand-logo{display:block;width:124px;height:auto}.app-shell .sidebar-school{display:block;margin-top:8px;padding:0;background:transparent}.app-shell .sidebar-school__name{color:var(--text-muted);font-size:var(--fs-caption);line-height:var(--lh-caption)}.app-shell .sidebar-school__meta{color:var(--text-subtle)}.ctx-actions{display:flex;gap:4px}.ctx-action{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:1px solid var(--border-subtle);border-radius:var(--radius-xs);background:var(--surface-card);color:var(--text-muted);cursor:pointer;transition:var(--transition-control)}.ctx-action.is-active,.ctx-action:hover{border-color:var(--blue-300);background:var(--nav-active-bg);color:var(--text-link)}.app-shell .ctx-title{flex:1 0 100%;order:3;margin:4px 0 0;padding:0;color:var(--text-title);font-family:var(--font-sans);font-size:var(--fs-h3);line-height:var(--lh-h3);font-weight:var(--fw-semibold);letter-spacing:0;text-transform:none}.app-shell .ctx .sidebar-nav{padding:8px 12px 16px}.app-shell .ctx-group{margin-top:24px}.app-shell .ctx-group:first-child{margin-top:4px}.app-shell .ctx-group-label{padding:0 10px 6px;color:var(--text-subtle);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow)}.app-shell .ctx a{min-height:44px;padding:10px;border-radius:var(--radius-control);color:var(--nav-ink);font-size:var(--fs-body-sm);line-height:var(--lh-body-sm);font-weight:var(--fw-medium);transition:var(--transition-control)}.app-shell .ctx a:hover{background:var(--grey-50);color:var(--nav-ink-active)}.app-shell .ctx a.active{background:var(--nav-active-bg);color:var(--nav-ink-active);box-shadow:none}.app-shell .ctx .sidebar-user{display:none}.app-content,.app-shell .app-content{min-width:0;overflow:hidden}.app-shell .app-content{background:transparent;border:0;border-radius:0;box-shadow:none}.app-shell .app-topbar,.app-topbar{display:flex;min-height:var(--topbar-h);padding:10px clamp(16px,3vw,32px);gap:12px;position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-page-header);background:var(--bg-app);border:0;-webkit-backdrop-filter:none;backdrop-filter:none}.app-shell .app-topbar__brand-link,.app-shell .app-topbar__burger{display:none}.app-shell .app-topbar__logo{width:112px;height:auto}.app-shell .nav-drawer__logo{width:128px;height:auto}.app-shell .nav-drawer__icon-btn{width:44px;height:44px}.app-shell .app-topbar :is(a,button):focus-visible{outline:3px solid var(--blue-300);outline-offset:2px}.app-shell .app-topbar__profile-text{max-width:220px}.app-shell .app-topbar__profile-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:1023px){.app-shell .app-topbar{height:auto;flex-wrap:wrap;padding:10px 16px;gap:8px}.app-shell .app-topbar__burger{display:inline-flex;width:44px;height:44px}.app-shell .app-topbar__brand-link{display:inline-flex;align-items:center;min-height:44px}.app-shell .app-topbar__spacer{display:block}.app-shell .app-topbar .overview-search{order:2;flex:1 0 100%;width:100%}.app-shell .app-topbar .overview-search__results{position:absolute;top:calc(100% + 8px);left:0;right:0}.app-shell .app-topbar__profile{min-width:44px;min-height:44px;justify-content:center}.app-shell .sidebar-scrim.is-open{display:block}}.app-topbar__burger{width:40px;height:40px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-card);color:var(--text-muted)}.app-topbar__burger:hover{border-color:var(--blue-300);background:var(--nav-active-bg);color:var(--text-link)}.app-topbar__text{justify-content:center}.app-topbar__brand{color:var(--text-title);font-family:var(--font-display);font-weight:var(--fw-semibold)}.app-topbar__spacer{flex:1 1}.app-topbar__icon-link,.app-topbar__profile{display:inline-flex;align-items:center;color:var(--text-muted);text-decoration:none}.app-topbar__icon-link{justify-content:center;width:40px;height:40px;border-radius:var(--radius-sm)}.app-topbar__icon-link:hover,.app-topbar__profile:hover{background:var(--surface-card);color:var(--text-link);text-decoration:none}.app-topbar__profile{gap:10px;padding:4px 10px 4px 6px;border-left:1px solid var(--border-subtle)}.app-topbar__profile-text{display:flex;flex-direction:column;line-height:1.2}.app-topbar__profile-text strong{color:var(--text-title);font-size:var(--fs-body-sm);font-weight:var(--fw-medium)}.app-topbar__profile-text small{color:var(--text-muted);font-size:var(--fs-caption)}.app-shell main.app-main,main.app-main{padding:20px clamp(16px,3vw,32px) 56px}.crm-page-header,.page-header{margin-bottom:var(--space-6)}.app-shell .crm-page-header h1,.crm-page-header h1,.page-header h1{font-family:var(--font-display);font-size:var(--fs-h1);line-height:var(--lh-h1);font-weight:var(--fw-semibold);letter-spacing:var(--ls-display)}.app-shell .sidebar-scrim.is-open,.sidebar-scrim.is-open{display:block;background:transparent;z-index:var(--z-drawer)}main.auth-main{display:grid;align-items:stretch;grid-template-columns:minmax(360px,.9fr) minmax(420px,1.1fr);min-height:100dvh;max-width:none;padding:0;background:var(--surface-card)}main.auth-main>*{width:auto;max-width:none}.auth-panel{display:flex;flex-direction:column;justify-content:center;padding:48px clamp(24px,6vw,80px)}.auth-panel>.card{width:min(100%,440px);margin:0;border:0;box-shadow:none;padding:0}.auth-brand{width:min(100%,440px);margin:0 0 40px;text-align:left}.auth-brand img{display:block;width:168px;height:auto}.auth-showcase{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:48px;background:var(--gradient-hero);border-left:1px solid var(--border-subtle)}.auth-showcase:after,.auth-showcase:before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;filter:blur(4px);pointer-events:none}.auth-showcase:before{right:-120px;top:-120px;background:rgba(205,139,255,.18)}.auth-showcase:after{left:-160px;bottom:-170px;background:rgba(22,80,200,.1)}.auth-showcase__content{position:relative;z-index:1;max-width:500px}.auth-showcase__eyebrow{display:inline-flex;padding:6px 14px;border-radius:var(--radius-pill);background:var(--lime-200);color:var(--lime-ink);font-size:var(--fs-micro);line-height:var(--lh-micro);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);text-transform:uppercase}.auth-showcase h2{max-width:480px;margin-top:20px;font-family:var(--font-display);font-size:clamp(32px,4vw,44px);line-height:1.14;font-weight:var(--fw-semibold);letter-spacing:var(--ls-display)}.auth-showcase p{margin-top:16px;color:var(--text-muted);font-size:var(--fs-body-lg);line-height:var(--lh-body-lg)}@media (max-width:1023px){.app-shell{padding:0;gap:0}.app-shell .sidebar{position:fixed;inset:0 auto 0 0;width:min(360px,88vw);max-width:88vw;height:100dvh;gap:0;transform:translateX(-100%);visibility:hidden;transition:transform var(--dur-base) var(--ease-entrance),visibility var(--dur-base)}.app-shell .sidebar.is-open{transform:translateX(0);visibility:visible}.app-shell .rail{width:100%;height:100%;border:0;border-right:1px solid var(--border-subtle);border-radius:0;box-shadow:none}.app-shell .ctx,.app-shell .sidebar.is-open .ctx{display:flex;width:auto;min-width:0;height:100%;flex:1 1 auto;border:0;border-radius:0;box-shadow:none}.app-shell .sidebar-scrim.is-open{background:var(--overlay);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-topbar__profile-text{display:none}.app-topbar__profile{padding-right:4px;border-left:0}.app-shell main.app-main,main.app-main{padding:16px 16px 48px}}.app-shell main.app-main--workspace{padding:0}@media (max-width:1279px){.ctx-action--pin{display:none}}@media (max-width:760px){main.auth-main{display:block}.auth-panel{min-height:100dvh;padding:32px 24px}.auth-showcase{display:none}.auth-brand{margin-bottom:32px}.app-shell .crm-page-header h1,.crm-page-header h1,.page-header h1{font-size:var(--fs-h2);line-height:var(--lh-h2)}.app-shell .kpi-card__value,.app-shell .stat-value,.stat-value{font-size:28px;line-height:36px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app-shell,:root{--font-body:var(--font-sans);--tt-font-sans:var(--font-sans);--tt-font-size-body:var(--fs-body);--tt-line-body:var(--lh-body);--tt-text-title:var(--text-title);--tt-text-primary:var(--text-title);--tt-text-body:var(--ds-text-body);--tt-text-secondary:var(--text-muted);--tt-text-placeholder:var(--text-subtle);--tt-text-link:var(--text-link);--tt-text-link-hover:var(--text-link-hover);--tt-primary-700:var(--blue-800);--tt-primary-600:var(--blue-600);--tt-primary-500:var(--blue-700);--tt-primary-400:var(--blue-400);--tt-primary-300:var(--blue-300);--tt-primary-200:var(--blue-200);--tt-primary-100:var(--blue-100);--tt-primary-50:var(--blue-50);--tt-neutral-700:var(--ink-900);--tt-neutral-600:var(--ink-700);--tt-neutral-500:var(--ink-500);--tt-neutral-400:var(--ink-400);--tt-neutral-300:var(--grey-300);--tt-neutral-200:var(--grey-200);--tt-neutral-100:var(--grey-100);--tt-neutral-50:var(--grey-50);--tt-border:var(--border-subtle);--tt-border-strong:var(--border-strong);--tt-border-hover:var(--blue-400);--tt-divider:var(--border-subtle);--tt-success-700:var(--mint-ink);--tt-success-600:var(--mint-ink);--tt-success-200:var(--mint-200);--tt-success-100:var(--mint-200);--tt-warning-700:var(--amber-ink);--tt-warning-600:var(--amber-ink);--tt-warning-200:var(--amber-200);--tt-warning-100:var(--amber-200);--tt-danger-700:var(--coral-ink);--tt-danger-600:var(--coral);--tt-danger-500:var(--coral-ink);--tt-danger-200:var(--coral-200);--tt-danger-100:var(--coral-200);--tt-info-700:var(--blue-700);--tt-info-600:var(--blue-600);--tt-info-200:var(--blue-100);--tt-info-100:var(--blue-50);--tt-radius-xs:var(--radius-xs);--tt-radius-sm:var(--radius-control);--tt-radius-md:var(--radius-card);--tt-radius-pill:var(--radius-pill);--tt-shadow-dropdown:var(--shadow-2);--tt-ring:0 0 0 3px var(--blue-200);--tt-ring-danger:0 0 0 3px var(--coral-200)}.tt-card{min-width:0;border:1px solid var(--border-subtle);border-radius:var(--radius-card);box-shadow:var(--shadow-2);font-family:var(--font-body)}.tt-card__header{flex-wrap:wrap;gap:16px;padding:20px 24px}.tt-card__title{font-family:var(--font-display)}.tt-card__extra{min-width:0;max-width:100%}.tt-card__body{padding:24px}.tt-card--flush .tt-card__body{padding:0}.tt-field{min-width:0;border-radius:var(--radius-control);font-family:var(--font-body)}.tt-field--sm{height:36px}.tt-field--md{height:44px}.tt-field--lg{height:52px}.tt-field:focus-within{border-color:var(--blue-600);box-shadow:var(--tt-ring)}.tt-field.is-error,.tt-field.is-invalid{border-color:var(--coral)}.tt-field.is-error:focus-within,.tt-field.is-invalid:focus-within{box-shadow:var(--tt-ring-danger)}.tt-field.is-disabled{background:var(--grey-100);border-color:var(--border-subtle);color:var(--text-subtle);box-shadow:none}.tt-field__input{height:100%}.tt-btn--sm{height:36px}.tt-btn--md{height:44px}.tt-btn--lg{height:52px}.tt-tag{border-radius:var(--radius-pill);font-family:var(--font-body)}.tt-table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain}.tt-table-wrap:focus-visible{outline:2px solid var(--blue-600);outline-offset:-3px}.tt-table{font-family:var(--font-body)}.tt-table th{background:var(--blue-50);color:var(--text-muted)}.app-shell .toolbar__search{position:relative;min-width:0;max-width:100%}.app-shell .toolbar__search>svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);pointer-events:none}.app-shell .toolbar__search>.input{width:100%;padding-left:40px}.users-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:100%}.users-filters__search{flex:1 1 240px;min-width:0}.users-filters__status{flex:1 1 160px;min-width:0}.walk-in-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.walk-in-grid--guardian{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.walk-in-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.walk-in-grid--student{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr)}.walk-in-grid .input,.walk-in-grid>*{min-width:0;max-width:100%}.inbox-layout{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);grid-gap:16px;gap:16px;align-items:start}.inbox-detail,.inbox-list{min-width:0;overflow-wrap:anywhere}.app-shell .sidebar .ctx[hidden],.app-shell .sidebar .rail[hidden],.inbox-back{display:none}@media (max-width:1023px){.app-shell .sidebar:not(.is-open),.app-shell .sidebar:not(.is-open) .ctx{visibility:hidden}.app-shell .rail{width:100%;flex:1 1 auto;padding:16px;border:0}.app-shell .rail-logo{display:none}.app-shell .rail-nav{align-items:stretch;width:100%;gap:6px}.app-shell .rail-ic{flex-direction:row;justify-content:flex-start;gap:12px;width:100%;min-height:48px;height:auto;padding:12px;flex-shrink:0}.app-shell .rail-ic__txt{font-size:14px;line-height:20px;text-align:left;white-space:normal}.app-shell .rail-foot{width:100%}.mobile-section-chevron{margin-left:auto;flex-shrink:0}.mobile-nav-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-bottom:20px}.mobile-nav-logo{width:140px;max-width:calc(100% - 56px)}.mobile-nav-heading img{display:block;width:100%}.app-shell .ctx-action{min-width:44px;min-height:44px}.mobile-nav-back{display:flex;align-items:center;gap:8px;min-height:44px;width:100%;margin:0 0 16px;padding:8px 0;border:0;background:transparent;color:var(--text-link);font:500 14px/20px var(--font-body);cursor:pointer}.mobile-nav-back:focus-visible{outline:2px solid var(--blue-600);outline-offset:3px;border-radius:var(--radius-xs)}.app-shell .ctx__head{position:relative}}@media (max-width:767px){.inbox-layout{grid-template-columns:minmax(0,1fr)}.inbox-detail,.inbox-layout--detail .inbox-list{display:none}.inbox-layout--detail .inbox-detail{display:block}.inbox-back{display:inline-flex;margin-bottom:12px}.tt-card__header{padding:16px}.tt-card__extra,.users-filters{width:100%}.tt-field__input{font-size:16px}}@media (max-width:640px){.walk-in-grid{grid-template-columns:minmax(0,1fr)}}