@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--sp-4: 4px;--sp-8: 8px;--sp-12: 12px;--sp-16: 16px;--sp-20: 20px;--sp-24: 24px;--sp-32: 32px;--sp-40: 40px;--sp-48: 48px;--font-ui: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--fs-aux: 12px;--fs-label: 13px;--fs-body: 14px;--fs-card-title: 16px;--fs-section-title: 19px;--fs-page-title: 28px;--fs-display: 30px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fs-meta: var(--fs-aux);--h-control: 42px;--h-table-row: 48px;--h-menu-item: 40px;--h-table-header: 44px;--radius-sm: 8px;--radius-md: 8px;--radius-lg: 14px;--radius-xl: 16px;--border-width: 1px;--color-border: #E2E8F0;--color-row-divider: #EEF2F6;--shadow-1: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 3px rgba(15, 23, 42, .04);--shadow-2: 0 4px 10px rgba(15, 23, 42, .06), 0 2px 4px rgba(15, 23, 42, .04);--shadow-3: 0 16px 32px rgba(15, 23, 42, .12), 0 4px 8px rgba(15, 23, 42, .04);--motion-fast: .12s;--motion-base: .16s;--motion-slow: .2s;--motion-ease-in: cubic-bezier(.2, 0, 0, 1);--motion-ease-out: cubic-bezier(.4, 0, 1, 1);--color-primary: #2563EB;--color-primary-hover: #1D4ED8;--color-primary-light: #EFF6FF;--color-on-primary: #FFFFFF;--color-secondary: #1D4ED8;--color-on-secondary: #FFFFFF;--color-success: #16A34A;--color-on-success: #FFFFFF;--color-success-bg: #DCFCE7;--color-success-text: #166534;--color-warning: #D97706;--color-on-warning: #FFFFFF;--color-warning-bg: #FEF3C7;--color-warning-text: #92400E;--color-destructive: #DC2626;--color-on-destructive: #FFFFFF;--color-destructive-bg: #FEE2E2;--color-destructive-text: #B91C1C;--color-ring: #2563EB;--color-page-bg: #F8FAFC;--color-surface: #FFFFFF;--color-text: #0F172A;--color-text-secondary: #64748B;--sidebar-bg: #0F1C33;--sidebar-bg-elevated: #13213A;--sidebar-border: rgba(255, 255, 255, .08);--sidebar-text: #E2E8F0;--sidebar-text-muted: #94A3B8;--sidebar-active-bg: rgba(37, 99, 235, .22);--sidebar-active-indicator: #60A5FA;color-scheme:light;--layout-sidebar-width: 276px;--layout-sidebar-width-colapsada: 72px;--layout-header-height: 64px;--radius-control: var(--radius-md);--radius-card: var(--radius-lg);--font-mono: var(--font-ui);--color-danger: var(--color-destructive);--color-danger-bg: var(--color-destructive-bg);--badge-success-bg: var(--color-success-bg);--badge-success-text: var(--color-success-text);--badge-warning-bg: var(--color-warning-bg);--badge-warning-text: var(--color-warning-text)}@media (prefers-color-scheme: dark){:root{--color-border: #263041;--color-row-divider: #1B2433;--color-page-bg: #0B0F17;--color-surface: #121826;--color-text: #E2E8F0;--color-text-secondary: #94A3B8;--color-primary-on-dark: #93C5FD;--color-secondary-on-dark: #93C5FD;--color-success-on-dark: #6EE7B7;--color-warning-on-dark: #FBBF24;--color-destructive-on-dark: #FCA5A5;--color-ring: #60A5FA;--shadow-1: 0 0 0 1px rgba(255, 255, 255, .05);--shadow-2: 0 4px 16px rgba(0, 0, 0, .45), 0 0 0 1px rgba(255, 255, 255, .06);--shadow-3: 0 20px 48px rgba(0, 0, 0, .55), 0 0 0 1px rgba(255, 255, 255, .08);color-scheme:dark}}@theme inline{ --color-primary: var(--color-primary); --color-primary-hover: var(--color-primary-hover); --color-primary-light: var(--color-primary-light); --color-on-primary: var(--color-on-primary); --color-secondary: var(--color-secondary); --color-on-secondary: var(--color-on-secondary); --color-success: var(--color-success); --color-success-bg: var(--color-success-bg); --color-success-text: var(--color-success-text); --color-warning: var(--color-warning); --color-warning-bg: var(--color-warning-bg); --color-warning-text: var(--color-warning-text); --color-destructive: var(--color-destructive); --color-destructive-bg: var(--color-destructive-bg); --color-destructive-text: var(--color-destructive-text); --color-ring: var(--color-ring); --color-surface: var(--color-surface); --color-page-bg: var(--color-page-bg); --color-text: var(--color-text); --color-text-secondary: var(--color-text-secondary); --color-border: var(--color-border); --radius-sm: var(--radius-sm); --radius-md: var(--radius-md); --radius-lg: var(--radius-lg); --radius-xl: var(--radius-xl); --shadow-1: var(--shadow-1); --shadow-2: var(--shadow-2); --shadow-3: var(--shadow-3); --spacing-1: var(--sp-4); --spacing-2: var(--sp-8); --spacing-3: var(--sp-12); --spacing-4: var(--sp-16); --spacing-5: var(--sp-20); --spacing-6: var(--sp-24); --spacing-8: var(--sp-32); --spacing-10: var(--sp-40); --spacing-12: var(--sp-48); --font-sans: var(--font-ui); }/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}:root,:host{--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}.visible{visibility:visible}.absolute{position:absolute}.relative{position:relative}.static{position:static}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition\!{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))!important;transition-duration:var(--tw-duration,var(--default-transition-duration))!important}*,:before,:after{box-sizing:border-box}:focus-visible{outline:2px solid var(--color-ring);outline-offset:2px;border-radius:var(--radius-sm);box-shadow:0 0 0 4px #2563eb1f}html,body{margin:0;padding:0}body{font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--fw-regular);color:var(--color-text);background:var(--color-page-bg);-webkit-font-smoothing:antialiased;line-height:1.5}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-ui);font-weight:var(--fw-semibold);color:var(--color-text);margin:0 0 var(--sp-16);text-wrap:balance;line-height:1.3}h1{font-size:var(--fs-page-title)}h2,h3{font-size:var(--fs-card-title)}p{margin:0 0 var(--sp-12)}a{color:var(--color-secondary);text-decoration:none}a:hover{text-decoration:underline}fieldset{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card)}legend{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;padding:0 var(--sp-8)}.app-shell{min-height:100vh;display:flex}.app-sidebar{width:var(--layout-sidebar-width);background:var(--sidebar-bg);color:var(--sidebar-text);z-index:30;transition:transform var(--motion-slow) var(--motion-ease-in),width var(--motion-slow) var(--motion-ease-in);flex-direction:column;flex-shrink:0;display:flex;position:fixed;top:0;bottom:0;left:0}.app-sidebar__brand{align-items:center;gap:var(--sp-12);padding:var(--sp-20) var(--sp-16);border-bottom:var(--border-width) solid var(--sidebar-border);display:flex}.app-sidebar .app-sidebar__collapse-toggle{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--sidebar-text-muted);cursor:pointer;transition:background var(--motion-fast) var(--motion-ease-in),color var(--motion-fast) var(--motion-ease-in);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:inline-flex}.app-sidebar .app-sidebar__collapse-toggle:hover{color:var(--sidebar-text);background:#ffffff14}.app-sidebar--colapsada .app-sidebar__brand-text-group,.app-sidebar--colapsada .app-sidebar__link-label,.app-sidebar--colapsada .app-sidebar__group-toggle-label,.app-sidebar--colapsada .app-sidebar__group-chevron{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-sidebar--colapsada .app-sidebar__collapse-toggle{margin-left:0}.app-sidebar--colapsada .app-sidebar__brand{justify-content:center}.app-sidebar--colapsada .app-sidebar__link,.app-sidebar--colapsada .app-sidebar .app-sidebar__group-toggle{justify-content:center;padding:0}.app-sidebar--colapsada .app-sidebar__group-itens{display:none}.app-sidebar__brand-mark{border-radius:var(--radius-md);background:var(--sidebar-bg-elevated);border:var(--border-width) solid var(--sidebar-border);width:36px;height:36px;color:var(--sidebar-text);flex-shrink:0;place-items:center;display:grid}.app-sidebar__brand-text-group{flex-direction:column;min-width:0;line-height:1.25;display:flex}.app-sidebar__brand-text{font-size:var(--fs-body);font-weight:var(--fw-semibold);color:var(--sidebar-text)}.app-sidebar__brand-subtitle{font-size:var(--fs-aux);color:var(--sidebar-text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.app-sidebar__scroll{padding:var(--sp-16) var(--sp-12) var(--sp-24);flex:1;overflow-y:auto}.app-sidebar__footer{align-items:center;gap:var(--sp-8);padding:var(--sp-12) var(--sp-16);border-top:var(--border-width) solid var(--sidebar-border);color:var(--sidebar-text-muted);font-size:var(--fs-aux);flex-shrink:0;display:flex}.app-sidebar .app-sidebar__group-toggle{width:100%;height:var(--h-menu-item);padding:0 var(--sp-12);border-radius:var(--radius-control);color:var(--sidebar-text-muted);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--fw-regular);text-align:left;cursor:pointer;transition:background var(--motion-fast) var(--motion-ease-in),color var(--motion-fast) var(--motion-ease-in);background:0 0;border:none;border-left:3px solid #0000;justify-content:space-between;align-items:center;margin:1px 0;display:flex}.app-sidebar .app-sidebar__group-toggle:hover{color:var(--sidebar-text);background:#ffffff0f}.app-sidebar .app-sidebar__group-toggle--active{color:var(--sidebar-text);font-weight:var(--fw-medium)}.app-sidebar__group-chevron{font-size:var(--fs-aux);color:var(--sidebar-text-muted)}.app-sidebar__group-itens{padding-left:var(--sp-12);border-left:var(--border-width) solid var(--sidebar-border);margin:0 0 var(--sp-4) var(--sp-16);flex-direction:column;display:flex}.app-sidebar__link{align-items:center;gap:var(--sp-8);height:var(--h-menu-item);padding:0 var(--sp-12);border-radius:var(--radius-control);color:var(--sidebar-text-muted);font-size:var(--fs-body);font-weight:var(--fw-regular);transition:background var(--motion-fast) var(--motion-ease-in),color var(--motion-fast) var(--motion-ease-in);border-left:3px solid #0000;margin:1px 0;text-decoration:none;display:flex}.app-sidebar__link:hover{color:var(--sidebar-text);background:#ffffff0f;text-decoration:none}.app-sidebar__link--active{background:var(--sidebar-active-bg);border-left-color:var(--sidebar-active-indicator);color:var(--sidebar-text);font-weight:var(--fw-medium)}.app-header{height:var(--layout-header-height);border-bottom:var(--border-width) solid var(--color-border);background:var(--color-surface);padding:0 var(--sp-24);z-index:20;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.app-header .app-header__menu-toggle{border:var(--border-width) solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-control);width:var(--h-control);height:var(--h-control);font-size:var(--fs-card-title);cursor:pointer;color:var(--color-primary);display:none}.app-header__utility{align-items:center;gap:var(--sp-16);display:flex}.app-header__user{align-items:center;gap:var(--sp-8);display:flex}.app-header__avatar{background:var(--color-primary-light);width:32px;height:32px;color:var(--color-primary);font-size:var(--fs-label);font-weight:var(--fw-semibold);border-radius:999px;flex-shrink:0;place-items:center;display:grid}.app-header__tenant{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--color-text)}.app-header__utility .app-header__logout{align-items:center;gap:var(--sp-8);font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--color-text-secondary);border:none;border-left:var(--border-width) solid var(--color-border);cursor:pointer;padding:var(--sp-8) 0 var(--sp-8) var(--sp-16);background:0 0;display:inline-flex}.app-header__utility .app-header__logout:hover{color:var(--color-destructive)}.app-main{margin-left:var(--layout-sidebar-width);min-width:0;transition:margin-left var(--motion-slow) var(--motion-ease-in);flex-direction:column;flex:1;display:flex}@media (min-width:900px){.app-sidebar--colapsada{width:var(--layout-sidebar-width-colapsada)}.app-sidebar--colapsada~.app-main{margin-left:var(--layout-sidebar-width-colapsada)}}.app-main__inner{max-width:1180px;padding:var(--sp-32) var(--sp-32) var(--sp-32);width:100%}.app-sidebar__backdrop{display:none}@media (max-width:899px){.app-sidebar{transform:translate(-100%);width:var(--layout-sidebar-width)!important}.app-sidebar .app-sidebar__collapse-toggle{display:none}.app-sidebar--open{transform:translate(0)}.app-header .app-header__menu-toggle{justify-content:center;align-items:center;display:inline-flex}.app-main{margin-left:0}.app-main__inner{padding:var(--sp-24) var(--sp-16) var(--sp-24)}.app-sidebar__backdrop--visible{z-index:25;background:#0f172a66;display:block;position:fixed;top:0;right:0;bottom:0;left:0}}.auth-shell{justify-content:center;align-items:center;gap:var(--sp-24);min-height:100dvh;padding:var(--sp-16);background:var(--color-page-bg);flex-direction:column;display:flex}.auth-shell__brand{align-items:center;gap:var(--sp-12);font-size:var(--fs-card-title);font-weight:var(--fw-semibold);color:var(--color-text);display:flex}.auth-shell__brand-mark{border-radius:var(--radius-md);background:var(--color-primary);width:40px;height:40px;color:var(--color-on-primary);flex-shrink:0;place-items:center;display:grid}.auth-shell form{width:100%;max-width:380px;margin-top:0}.dashboard-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-16);margin-bottom:var(--sp-24);flex-wrap:wrap;display:flex}.dashboard-header h1{font-size:var(--fs-page-title);font-weight:var(--fw-bold);margin-bottom:var(--sp-4)}.dashboard-header__data{align-items:center;gap:var(--sp-8);color:var(--color-text-secondary);font-size:var(--fs-label);white-space:nowrap;margin-top:var(--sp-4);display:flex}.stat-card-grid{gap:var(--sp-16);margin-bottom:var(--sp-24);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.dashboard-grid{gap:var(--sp-16);margin-bottom:var(--sp-24);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.dashboard-grid .card h2{font-size:var(--fs-section-title);margin-bottom:var(--sp-16)}.status-bar{background:var(--color-page-bg);border-radius:999px;height:10px;display:flex;overflow:hidden}.status-bar__segment{height:100%}.status-legend{margin:var(--sp-16) 0 0;gap:var(--sp-12);flex-direction:column;padding:0;list-style:none;display:flex}.status-legend li{align-items:center;gap:var(--sp-8);font-size:var(--fs-body);color:var(--color-text);display:flex}.status-legend__dot{border-radius:999px;flex-shrink:0;width:8px;height:8px}.status-legend__valor{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin-left:auto}.dashboard-eventos{gap:var(--sp-16);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dashboard-eventos li{align-items:center;gap:var(--sp-12);font-size:var(--fs-body);color:var(--color-text);display:flex}.dashboard-eventos__data{min-width:44px;height:28px;padding:0 var(--sp-8);border-radius:var(--radius-sm);background:var(--color-primary-light);color:var(--color-primary);font-size:var(--fs-label);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;display:inline-flex}.page-header{justify-content:space-between;align-items:baseline;gap:var(--sp-16);margin-bottom:var(--sp-24);flex-wrap:wrap;display:flex}.page-header h1{margin-bottom:var(--sp-4)}.page-subtitle{color:var(--color-text-secondary);font-size:var(--fs-meta);margin:0}button{font-family:var(--font-ui)}form button[type=submit],button.btn-primary{height:var(--h-control);background:var(--color-primary);color:var(--color-on-primary);border:var(--border-width) solid var(--color-primary);border-radius:var(--radius-control);padding:0 var(--sp-16);font-size:var(--fs-body);font-weight:var(--fw-medium);cursor:pointer;margin-top:var(--sp-8);transition:background var(--motion-base) var(--motion-ease-in),border-color var(--motion-base) var(--motion-ease-in)}form button[type=submit]:hover,button.btn-primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}form button[type=submit]:disabled,button.btn-primary:disabled{background:var(--color-row-divider);border-color:var(--color-row-divider);color:var(--color-text-secondary);cursor:not-allowed}button[type=button]{height:var(--h-control);background:var(--color-surface);color:var(--color-secondary);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);padding:0 var(--sp-12);font-size:var(--fs-body);font-weight:var(--fw-regular);cursor:pointer;transition:border-color var(--motion-base) var(--motion-ease-in),color var(--motion-base) var(--motion-ease-in)}button[type=button]:hover{border-color:var(--color-secondary)}button.btn-danger,button[type=button].btn-danger{color:var(--color-destructive-text);border-color:var(--color-destructive-bg);background:var(--color-destructive-bg)}button.btn-danger:hover,button[type=button].btn-danger:hover{background:var(--color-destructive);border-color:var(--color-destructive);color:var(--color-on-destructive)}label{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--color-text);margin-top:var(--sp-16);margin-bottom:var(--sp-4);display:block}label:first-of-type{margin-top:0}label:has(+input:required):after,label:has(+select:required):after,label:has(+textarea:required):after{content:" *";color:var(--color-danger);font-weight:var(--fw-medium)}input,select,textarea{width:100%;height:var(--h-control);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--fw-regular);color:var(--color-text);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);padding:0 var(--sp-12);transition:border-color var(--motion-base) var(--motion-ease-in)}input:focus,select:focus,textarea:focus{border-color:var(--color-secondary);outline:none}input[type=checkbox]{width:auto;height:auto;margin-right:var(--sp-8)}textarea{height:auto;min-height:6rem;padding-top:var(--sp-8);padding-bottom:var(--sp-8);resize:vertical}form{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);padding:var(--sp-24);margin-top:var(--sp-24);max-width:640px;box-shadow:var(--shadow-1)}.filters{align-items:flex-end;gap:var(--sp-16);margin:0 0 var(--sp-16);padding:var(--sp-16) var(--sp-20);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);flex-wrap:wrap;display:flex}.filters label{margin:0 0 var(--sp-4)}.filters input,.filters select{width:auto;min-width:11rem}.aluno-lista__acoes{align-items:center;gap:var(--sp-12);margin-bottom:var(--sp-16);flex-wrap:wrap;display:flex}.aluno-lista__acoes button[type=button]{height:36px;padding:0 var(--sp-12)}.app-main__inner a+a{margin-left:var(--sp-16)}.table-wrapper{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-1);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--fs-body);font-variant-numeric:tabular-nums}thead tr{height:var(--h-table-header)}thead th{text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary);background:var(--color-page-bg);padding:0 var(--sp-16);border-bottom:var(--border-width) solid var(--color-border);white-space:nowrap}tbody tr{height:var(--h-table-row)}tbody td{padding:0 var(--sp-16);border-bottom:var(--border-width) solid var(--color-row-divider);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--color-page-bg)}thead th:last-child,tbody td:last-child{text-align:right}tbody td:last-child button{margin-left:var(--sp-8)}tbody td:last-child button:first-child{margin-left:0}.card-grid{gap:var(--sp-16);margin-top:var(--sp-24);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);padding:var(--sp-24);box-shadow:var(--shadow-1);transition:border-color var(--motion-fast) var(--motion-ease-in),box-shadow var(--motion-fast) var(--motion-ease-in),transform var(--motion-fast) var(--motion-ease-in)}@media (prefers-reduced-motion:reduce){a.card:hover{transform:none}}a.card{color:inherit;text-decoration:none;display:block}a.card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-2);text-decoration:none}.card__eyebrow{font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:.06em;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--sp-8)}.card__title{font-size:var(--fs-card-title);font-weight:var(--fw-medium);color:var(--color-text);margin-bottom:var(--sp-4)}.card__meta{font-size:var(--fs-meta);color:var(--color-text-secondary);margin:0}.card__value{font-family:var(--font-ui);font-variant-numeric:tabular-nums;font-size:var(--fs-display);font-weight:var(--fw-bold);color:var(--color-text);margin-bottom:var(--sp-4)}[role=alert]{background:var(--color-danger-bg);color:var(--color-danger);border:var(--border-width) solid var(--color-danger);border-radius:var(--radius-control);padding:var(--sp-12) var(--sp-16);font-size:var(--fs-body);font-weight:var(--fw-medium);margin-bottom:var(--sp-16)}.status-message{background:var(--badge-success-bg);color:var(--badge-success-text);border:var(--border-width) solid var(--badge-success-text);border-radius:var(--radius-control);padding:var(--sp-12) var(--sp-16);font-size:var(--fs-body);font-weight:var(--fw-medium);margin-bottom:var(--sp-16)}.loading-message{color:var(--color-text-secondary);font-size:var(--fs-body);padding:var(--sp-12) 0}.badge{font-size:var(--fs-meta);font-weight:var(--fw-medium);padding:0 var(--sp-8);background:var(--color-page-bg);color:var(--color-text-secondary);border-radius:999px;line-height:1.8;display:inline-block}.badge--success{background:var(--badge-success-bg);color:var(--badge-success-text)}.badge--warning{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.badge--danger{background:var(--color-danger-bg);color:var(--color-danger)}.aluno-form__secoes-nav{gap:var(--sp-8);padding-bottom:var(--sp-8);margin-bottom:var(--sp-8);max-width:960px;display:flex;overflow-x:auto}.aluno-form__secoes-nav a{align-items:center;gap:var(--sp-8);height:36px;padding:0 var(--sp-16);background:var(--color-surface);border:var(--border-width) solid var(--color-border);color:var(--color-text-secondary);font-size:var(--fs-label);font-weight:var(--fw-medium);white-space:nowrap;border-radius:999px;flex-shrink:0;display:inline-flex}.aluno-form__secoes-nav a:hover{border-color:var(--color-primary);color:var(--color-primary);text-decoration:none}.aluno-form__secao{scroll-margin-top:calc(var(--layout-header-height) + var(--sp-16))}.aluno-form{gap:var(--sp-24);max-width:960px;margin-top:var(--sp-24);background:0 0;border:none;flex-direction:column;padding:0;display:flex}.aluno-form .ui-card__body{gap:0 var(--sp-24);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.campo-form{flex-direction:column;display:flex}.campo-form--largo{grid-column:1/-1}.campo-form textarea{width:100%}.campo-form__checkbox{margin-top:var(--sp-16);align-items:center;display:flex}.aluno-form__foto-preview{border-radius:var(--radius-control);margin-bottom:var(--sp-8);display:block}.catalogo-picker{margin-top:var(--sp-16);grid-column:1/-1}.catalogo-picker:first-child{margin-top:0}.catalogo-picker__titulo{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--color-text);margin-bottom:var(--sp-8);display:block}.catalogo-picker__chips{gap:var(--sp-8);margin:0 0 var(--sp-8);flex-wrap:wrap;padding:0;list-style:none;display:flex}.catalogo-picker__chip{align-items:center;gap:var(--sp-8);height:var(--sp-24);padding:0 var(--sp-8);background:var(--color-page-bg);color:var(--color-text);font-size:var(--fs-meta);border-radius:999px;display:inline-flex}.catalogo-picker__chip button{color:var(--color-text-secondary);cursor:pointer;font-size:var(--fs-body);background:0 0;border:none;padding:0;line-height:1}.catalogo-picker__chip button:hover{color:var(--color-danger)}.catalogo-picker__painel{margin-top:var(--sp-8);padding:var(--sp-12);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);background:var(--color-page-bg);max-width:24rem}.catalogo-picker__opcoes{margin:var(--sp-8) 0 0;max-height:10rem;padding:0;list-style:none;overflow-y:auto}.catalogo-picker__opcoes button{text-align:left;width:100%;padding:var(--sp-8);cursor:pointer;border-radius:var(--radius-control);background:0 0;border:none;display:block}.catalogo-picker__opcoes button:hover{background:var(--color-surface)}.catalogo-picker__vazio{padding:var(--sp-8);color:var(--color-text-secondary);font-size:var(--fs-meta)}.aluno-form__responsavel{gap:0 var(--sp-24);padding:var(--sp-16);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);margin-bottom:var(--sp-16);grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.aluno-form__responsavel-titulo{font-weight:var(--fw-medium);grid-column:1/-1;margin:0}.aluno-form__acoes{gap:var(--sp-16);flex-wrap:wrap;align-items:center;display:flex}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.ui-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-8);height:var(--h-control);padding:0 var(--sp-16);border-radius:var(--radius-control);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--fw-medium);line-height:1;cursor:pointer;white-space:nowrap;transition:background var(--motion-base) var(--motion-ease-in),border-color var(--motion-base) var(--motion-ease-in),color var(--motion-base) var(--motion-ease-in)}.ui-button[data-variant=primary]{background:var(--color-primary);color:var(--color-on-primary);border:var(--border-width) solid var(--color-primary)}.ui-button[data-variant=primary]:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.ui-button[data-variant=secondary]{background:var(--color-surface);color:var(--color-text);border:var(--border-width) solid var(--color-border)}.ui-button[data-variant=secondary]:hover:not(:disabled){border-color:var(--color-secondary);color:var(--color-secondary)}.ui-button[data-variant=danger]{background:var(--color-destructive-bg);color:var(--color-destructive-text);border:var(--border-width) solid var(--color-destructive-bg)}.ui-button[data-variant=danger]:hover:not(:disabled){background:var(--color-destructive);border-color:var(--color-destructive);color:var(--color-on-destructive)}.ui-button:disabled{cursor:not-allowed;background:var(--color-row-divider);border-color:var(--color-row-divider);color:var(--color-text-secondary)}.ui-input,.ui-select{display:block;width:100%;height:var(--h-control);padding:0 var(--sp-12);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--fw-regular);color:var(--color-text);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);transition:border-color var(--motion-base) var(--motion-ease-in)}.ui-input:focus,.ui-select:focus{outline:none;border-color:var(--color-secondary)}.ui-input:disabled,.ui-select:disabled{background:var(--color-page-bg);color:var(--color-text-secondary);cursor:not-allowed}.ui-badge{display:inline-flex;align-items:center;height:var(--sp-16);padding:0 var(--sp-8);border-radius:999px;font-family:var(--font-ui);font-size:var(--fs-meta);font-weight:var(--fw-medium);line-height:1;white-space:nowrap}.ui-badge[data-variant=neutral]{background:var(--color-page-bg);color:var(--color-text-secondary)}.ui-badge[data-variant=success]{background:var(--badge-success-bg);color:var(--badge-success-text)}.ui-badge[data-variant=warning]{background:var(--badge-warning-bg);color:var(--badge-warning-text)}.ui-badge[data-variant=danger]{background:var(--color-destructive-bg);color:var(--color-destructive-text)}.ui-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);padding:var(--sp-24);box-shadow:var(--shadow-1)}.ui-card__title{display:flex;align-items:center;gap:var(--sp-8);font-size:var(--fs-card-title);font-weight:var(--fw-semibold);color:var(--color-text);margin:0 0 var(--sp-16);padding-bottom:var(--sp-12);border-bottom:var(--border-width) solid var(--color-border)}.ui-card__title svg{color:var(--color-primary);flex-shrink:0}.ui-card__body{font-size:var(--fs-body);font-weight:var(--fw-regular);color:var(--color-text)}.ui-table-wrapper{overflow-x:auto;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-1)}.ui-table{width:100%;border-collapse:collapse;font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--fw-regular);color:var(--color-text);font-variant-numeric:tabular-nums}.ui-table thead tr{height:var(--h-table-header)}.ui-table thead th{text-align:left;font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary);background:var(--color-page-bg);padding:0 var(--sp-16);border-bottom:var(--border-width) solid var(--color-border);white-space:nowrap}.ui-table tbody tr{height:var(--h-table-row)}.ui-table tbody tr:not(:last-child) td{border-bottom:var(--border-width) solid var(--color-row-divider)}.ui-table tbody tr:hover td{background:var(--color-page-bg)}.ui-table tbody td{padding:0 var(--sp-16);vertical-align:middle}.ui-table thead th:last-child,.ui-table tbody td:last-child{text-align:right}.ui-table__empty{text-align:center;color:var(--color-text-secondary);font-size:var(--fs-body);padding:var(--sp-32) var(--sp-16)}.ui-page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-16);flex-wrap:wrap;margin-bottom:var(--sp-24)}.ui-page-header__title-group{display:flex;align-items:center;gap:var(--sp-12)}.ui-page-header__title{font-size:var(--fs-page-title);font-weight:var(--fw-medium);color:var(--color-text);margin:0}.ui-page-header__count{display:inline-flex;align-items:center;height:var(--sp-24);padding:0 var(--sp-8);border-radius:999px;background:var(--color-page-bg);color:var(--color-text-secondary);font-size:var(--fs-meta);font-weight:var(--fw-medium)}.ui-page-header__action{display:flex;align-items:center;gap:var(--sp-8)}.ui-segmented{display:inline-flex;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-control);overflow:hidden}.ui-segmented .ui-segmented__option{height:var(--h-control);padding:0 var(--sp-16);border:none;background:var(--color-surface);color:var(--color-text-secondary);font-family:var(--font-ui);font-size:var(--fs-body);font-weight:var(--fw-regular);cursor:pointer}.ui-segmented .ui-segmented__option+.ui-segmented__option{border-left:var(--border-width) solid var(--color-border)}.ui-segmented .ui-segmented__option[aria-pressed=true]{background:var(--color-primary);color:var(--color-surface);font-weight:var(--fw-medium)}.ui-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;display:flex;align-items:flex-start;justify-content:center;padding:var(--sp-32) var(--sp-16);overflow-y:auto;z-index:50;animation:ui-modal-fade var(--motion-base) var(--motion-ease-in)}.ui-modal{background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:560px;box-shadow:var(--shadow-3);animation:ui-modal-enter var(--motion-slow) var(--motion-ease-in)}@media (prefers-reduced-motion: reduce){.ui-modal-overlay,.ui-modal{animation:none}}@keyframes ui-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ui-modal .ui-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-16);padding:var(--sp-16) var(--sp-24);border-bottom:var(--border-width) solid var(--color-border)}.ui-modal__title{font-size:var(--fs-card-title);font-weight:var(--fw-medium);color:var(--color-text);margin:0}.ui-modal .ui-modal__close{height:var(--h-control);width:var(--h-control);padding:0;border:none;background:none;color:var(--color-text-secondary);font-size:var(--fs-page-title);line-height:1;cursor:pointer}.ui-modal .ui-modal__close:hover{color:var(--color-text)}.ui-modal__body{padding:var(--sp-24)}.ui-modal__body form{margin-top:0;border:none;padding:0;max-width:none}.ui-stat-card{display:flex;align-items:center;gap:var(--sp-16);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg);padding:var(--sp-20);box-shadow:var(--shadow-1)}.ui-stat-card__icon{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary);flex-shrink:0}.ui-stat-card__value{font-size:var(--fs-display);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;color:var(--color-text);line-height:1.2}.ui-stat-card__label{font-size:var(--fs-label);color:var(--color-text-secondary);margin-top:var(--sp-4)}.ui-toast{display:flex;align-items:center;gap:var(--sp-12);max-width:24rem;padding:var(--sp-12) var(--sp-16);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-2);font-family:var(--font-ui);font-size:var(--fs-body);animation:ui-toast-enter var(--motion-slow) var(--motion-ease-in)}@media (prefers-reduced-motion: reduce){.ui-toast{animation:none}}@keyframes ui-toast-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.ui-toast[data-variant=success]{border-color:var(--color-success);background:var(--color-success-bg);color:var(--color-success-text)}.ui-toast[data-variant=warning]{border-color:var(--color-warning);background:var(--color-warning-bg);color:var(--color-warning-text)}.ui-toast[data-variant=danger]{border-color:var(--color-destructive);background:var(--color-destructive-bg);color:var(--color-destructive-text)}.ui-toast__message{flex:1}.ui-toast__close{border:none;background:none;color:inherit;opacity:.7;cursor:pointer;line-height:1;font-size:var(--fs-card-title);padding:0}.ui-toast__close:hover{opacity:1}.ui-pagination{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-16);margin-top:var(--sp-16)}.ui-pagination__status{font-size:var(--fs-meta);font-weight:var(--fw-regular);color:var(--color-text-secondary)}
