:root{--brand-primary: #163e6b;--brand-secondary: #2b6ba1;--brand-accent: #d35e2f;font-family:Bahnschrift,Trebuchet MS,sans-serif;color:#182235;background:linear-gradient(135deg,#f4f8ff,#eef6fb 52%,#f8fbff);line-height:1.5;font-weight:400}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh}button,input,select,textarea{font:inherit}small{display:block;margin-top:8px;color:#6a7590}button{cursor:pointer}input,.select-field,.text-area{width:100%;margin-top:8px;padding:13px 15px;border:1px solid #d7e2ef;border-radius:14px;background:#fbfdff;color:#172338}input[type=color]{min-width:54px;height:48px;padding:4px}.text-area{min-height:110px;resize:vertical}.loading-screen{display:grid;place-items:center;min-height:100vh;color:#173055;font-size:1.1rem}.page-shell,.dashboard-shell{min-height:100vh}.page-shell{padding:32px}.page-shell.narrow{max-width:1080px;margin:0 auto}.access-shell{display:grid;place-items:center}.login-shell{display:grid;align-items:center;min-height:100vh;padding:40px;background:linear-gradient(135deg,#eff6ffe6,#f6fbfff5),#f3f8fd}.login-stage{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(380px,.88fr);gap:20px;width:min(1420px,100%);margin:0 auto;padding:18px;border-radius:34px;background:#ffffffe0;border:1px solid #c9d9ee;box-shadow:0 28px 80px #152d4e24}.login-brand-panel,.login-card{border-radius:24px;border:1px solid rgba(21,39,67,.08)}.login-brand-panel{position:relative;display:grid;align-content:space-between;min-height:720px;padding:38px;overflow:hidden;color:#fff;background:linear-gradient(145deg,#0b2038,#173e68 58%,#235d97)}.login-card{display:grid;align-content:center;padding:46px;background:#fff}.login-card-header h2,.login-brand-panel h1{margin-bottom:14px;line-height:1.06}.login-brand-panel h1{max-width:520px;font-size:clamp(3rem,5vw,5rem);color:#fff}.login-card-header h2{font-size:clamp(2.2rem,4vw,3.8rem)}.login-brand-top{display:flex;align-items:center;gap:18px;position:relative;z-index:1}.login-brand-top strong,.login-brand-top span{display:block}.login-brand-top strong{font-size:2rem;line-height:1}.login-brand-top span{margin-top:4px;color:#ffffffb8;font-weight:700}.login-logo-tile{display:grid;place-items:center;width:112px;height:112px;padding:10px;border-radius:26px;background:#fff}.login-logo-tile img,.sidebar-logo-tile img{width:100%;height:100%;object-fit:contain}.login-visual-row{display:grid;grid-template-columns:minmax(0,1fr) 340px;align-items:center;gap:26px;position:relative;z-index:1}.login-logo-card{display:grid;place-items:center;min-height:270px;padding:28px;border-radius:38px;transform:rotate(15deg);background:#fff;box-shadow:0 22px #ffffff14,0 26px 50px #020b1647;border:8px solid rgba(255,255,255,.18)}.login-logo-card img{width:100%;max-height:210px;object-fit:contain}.login-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;position:relative;z-index:1}.login-feature-card{padding:20px;min-height:142px;border-radius:24px;border:1px solid rgba(255,255,255,.16);background:#ffffff1f;color:#fff}.login-feature-card strong,.login-reference-card strong{display:block;margin-bottom:8px;font-size:1.05rem}.login-feature-card p,.login-reference-card span{margin-bottom:0;color:#55627b}.login-feature-card span{display:block;margin-bottom:18px;font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#ffffffb8}.login-reference-card{margin:22px 0;padding:18px 20px;border-radius:20px;background:linear-gradient(180deg,#f5f8fc,#e9f0f9);border:1px solid rgba(18,39,69,.08)}.login-submit-button{min-height:56px;font-size:1.05rem}.login-card-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:28px;padding-top:18px;border-top:1px solid #d7e2ef;color:#6a7891}.link-button{padding:0;border:0;background:transparent;color:#145ac8;font-weight:800}.landing-hero,.portal-option,.info-card,.auth-card,.hero-card,.panel{border-radius:28px;border:1px solid rgba(21,39,67,.08);background:#ffffffdb;box-shadow:0 18px 50px #15274314;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;padding:32px}.eyebrow,.section-label,.sidebar-label{margin:0 0 10px;font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}h1,h2,h3,h4,p{margin-top:0}.lead{margin-bottom:0;color:#f8fbffdb}.lead.dark{color:#48556e}.credential-card,.sidebar-panel{padding:20px;border-radius:20px;background:linear-gradient(180deg,color-mix(in srgb,#ffffff 86%,var(--brand-secondary)),#edf4fb);border:1px solid rgba(18,39,69,.08)}.dashboard-sidebar .sidebar-panel{color:#fff;background:#ffffff14;border-color:#ffffff29}.environment-panel{margin-top:auto}.credential-card strong,.credential-card span{display:block}.portal-grid,.credential-grid,.field-row,.stats-grid,.module-grid,.card-grid,.stack-grid,.module-actions-grid{display:grid;gap:20px}.portal-grid,.credential-grid{margin-top:24px}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.credential-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid,.record-list{grid-template-columns:minmax(0,1fr)}.portal-option,.info-card,.auth-card,.hero-card,.panel{padding:28px}.portal-option.accent-option{color:#f8fbff;background:linear-gradient(145deg,var(--brand-primary),var(--brand-secondary))}.portal-option.accent-option p,.portal-option.accent-option h2,.portal-option.accent-option .section-label{color:inherit}.primary-button,.secondary-button,.sidebar-link{padding:12px 18px;border-radius:14px;border:none}.primary-button{color:#fff;background:linear-gradient(145deg,var(--brand-accent),color-mix(in srgb,var(--brand-accent) 76%,var(--brand-primary)))}.secondary-button{color:color-mix(in srgb,var(--brand-primary) 78%,#172338);background:color-mix(in srgb,var(--brand-secondary) 14%,#edf4fb)}.secondary-button.active-filter{color:#fff;background:linear-gradient(145deg,var(--brand-primary),var(--brand-secondary))}.secondary-button.light{color:#fff;background:#ffffff2e}.top-actions,.toolbar,.chip-row{display:flex;gap:12px;flex-wrap:wrap}.toolbar{align-items:center}.toolbar.align-end{align-items:end}.subsection-heading{display:flex;align-items:end;justify-content:space-between;gap:18px}.saafe-logo-block{display:flex;align-items:center;gap:18px;margin-bottom:12px}.search-field{min-width:280px}.top-actions{margin-bottom:16px}.form-grid,.list-stack{display:grid;gap:18px}.field-row{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-shell{display:grid;grid-template-columns:350px minmax(0,1fr);background:linear-gradient(135deg,#f5f9fe,#edf6fb)}.dashboard-sidebar{display:flex;flex-direction:column;gap:20px;min-height:100vh;padding:28px 18px;color:#f8fbff;background:linear-gradient(180deg,color-mix(in srgb,var(--brand-primary) 90%,#06111f),#0c2038 78%),var(--brand-primary)}.sidebar-brand{display:flex;align-items:center;gap:16px}.sidebar-logo-tile{display:grid;place-items:center;width:76px;height:76px;padding:8px;flex:0 0 auto;border-radius:24px;background:#fff}.sidebar-brand strong,.sidebar-brand span,.session-panel strong,.session-panel span,.environment-panel strong,.environment-panel span{display:block}.sidebar-brand strong{font-size:1.35rem}.sidebar-brand span,.session-panel span,.environment-panel span{color:#ffffffa8}.session-panel strong{margin:12px 0;font-size:1.08rem;overflow-wrap:anywhere}.nav-label{margin-top:6px;margin-bottom:-8px}.module-menu{display:grid;gap:10px;overflow-y:auto;padding-right:4px}.module-link{display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:14px;text-align:left;min-height:78px;padding:14px;border-radius:20px;border:1px solid rgba(255,255,255,.14);background:#ffffff0e;color:inherit}.module-link-copy{min-width:0}.module-link-copy span{display:block;margin-top:4px;font-size:.74rem;opacity:.76;text-transform:uppercase;letter-spacing:.12em}.module-initial,.section-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;color:#fff;font-weight:900;background:linear-gradient(145deg,color-mix(in srgb,var(--brand-secondary) 86%,#16a7b8),color-mix(in srgb,var(--brand-primary) 78%,#1763d7));box-shadow:inset 0 -10px 22px #0000001f}.module-link.active{background:#ffffff29;border-color:#ffffff47}.sidebar-link{width:100%;margin-top:10px;color:#173055;background:#fff}.dashboard-content{padding:24px 28px 40px;min-width:0;width:100%}.hero-card{display:grid;grid-template-columns:1.2fr .8fr;gap:24px}.operational-header{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);align-items:center;padding:26px 28px}.operational-title-row{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:20px}.operational-title-row h2{max-width:760px;margin-bottom:10px;font-size:clamp(1.45rem,2vw,2.1rem);line-height:1.18}.operational-title-row p{color:#687993}.section-mark{width:64px;height:64px;border-radius:18px;background:linear-gradient(145deg,var(--brand-secondary),color-mix(in srgb,var(--brand-accent) 42%,var(--brand-primary)))}.header-actions{display:grid;justify-items:end;gap:22px}.header-pills{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}.header-pills span{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 20px;border-radius:999px;color:#172338;background:#eef4fb;border:1px solid #d8e4f0;font-weight:800}.header-pills small{display:inline;margin:0;color:#6a7891;font-weight:500}.danger-button{padding:12px 18px;border:none;border-radius:999px;color:#fff;background:linear-gradient(145deg,#cc3a3a,#ad2424);font-weight:800}.single-column-grid{grid-template-columns:1fr;width:100%}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card{padding:18px;border-radius:20px;background:linear-gradient(180deg,#fff,#edf4fb);border:1px solid rgba(18,39,69,.08)}.stat-card span{display:block;margin-bottom:12px;color:#51617b}.stat-card strong{font-size:1.3rem;color:#102746}.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-grid.single-column-grid{grid-template-columns:minmax(0,1fr);width:100%}.stack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel{margin-top:24px;min-width:0;width:100%;overflow:visible}.panel-heading{margin-bottom:18px}.academic-workspace{width:100%;max-width:none}.academic-menu-block{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start;min-height:auto;padding:clamp(24px,3vw,42px);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand-secondary) 8%,#fff),#fff);border:1px solid rgba(18,39,69,.08)}.academic-action-grid{display:grid;width:100%;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.academic-action-grid .secondary-button{min-height:64px;font-size:1rem}.report-actions{margin-bottom:18px}.entity-card,.action-card,.info-card{display:grid;gap:10px;align-content:start;min-width:0;padding:18px;border-radius:18px;background:#fff;border:1px solid rgba(18,39,69,.08)}.entity-card p,.entity-card strong{overflow-wrap:anywhere;word-break:break-word}.entity-card .toolbar{margin-top:auto}.brand-mark{display:grid;place-items:center;width:68px;height:68px;margin-bottom:18px;border-radius:20px;font-size:1.25rem;font-weight:700;letter-spacing:.08em;color:#fff;background:linear-gradient(145deg,var(--brand-accent),var(--brand-secondary))}.brand-mark.large-mark{width:82px;height:82px;font-size:1.5rem}.info-inline,.mini-note{padding:14px 16px;border-radius:16px;background:#f7f9fc;border:1px solid rgba(18,39,69,.08);min-width:0}.soft-panel,.installment-panel,.legal-details{padding:16px;border-radius:18px;background:#f7f9fc;border:1px solid rgba(18,39,69,.08)}.installment-panel{display:grid;gap:14px}.installment-list{display:grid;gap:10px;max-height:360px;overflow:auto}.installment-row{display:grid;grid-template-columns:80px minmax(170px,1fr) repeat(3,minmax(110px,auto));gap:12px;align-items:center;padding:12px;border-radius:14px;background:#fff;border:1px solid rgba(18,39,69,.08)}.installment-row.compact{grid-template-columns:80px 1fr auto}.finance-card{gap:14px}.finance-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.finance-summary-grid span{padding:10px 12px;border-radius:12px;background:#edf4fb;color:#31425e;font-weight:700}.legal-details summary{cursor:pointer;font-weight:800}.legal-details pre{margin:14px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#24344f;font-family:inherit}.info-inline strong,.info-inline span,.mini-note strong{display:block}.info-inline span{margin-top:6px;color:#596886}.mini-note strong,.mini-note span{overflow-wrap:anywhere;word-break:break-word}.compact-stack{gap:10px}.assignment-item{overflow:hidden}.assignment-item span{display:block;margin-top:6px;color:#596886}.chip{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;max-width:100%;color:#173055;background:#edf4fb;font-size:.78rem;font-weight:700;text-transform:capitalize;overflow-wrap:anywhere;word-break:break-word;text-align:left}.removable-chip{border:none}.user-card-grid{grid-template-columns:minmax(0,1fr);align-items:stretch}.user-card{display:grid;grid-template-rows:auto auto auto auto 1fr auto;align-content:start;gap:10px;min-height:220px;overflow:hidden}.user-card p{margin-bottom:0}.user-card .toolbar{margin-top:auto}.selected-card{border-color:#163e6b57;box-shadow:0 10px 24px #163e6b1f}.color-control{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:end;gap:10px}.brand-preview{display:grid;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:14px;min-height:104px;padding:16px;border-radius:18px;color:#fff;background:linear-gradient(145deg,var(--brand-primary),var(--brand-secondary))}.brand-preview-logo{display:grid;place-items:center;width:76px;height:76px;padding:8px;border-radius:20px;background:#fff}.brand-preview-logo img{width:100%;height:100%;object-fit:contain}.brand-preview strong,.brand-preview span{display:block;overflow-wrap:anywhere}.brand-preview span{color:#ffffffbf}.crm-stage-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.crm-stage-card{display:grid;gap:8px;min-height:138px;padding:16px;text-align:left;border-radius:20px;border:1px solid color-mix(in srgb,var(--stage-color) 22%,#d9e4f0);background:linear-gradient(180deg,color-mix(in srgb,var(--stage-color) 10%,#fff),#fff);color:#172338}.crm-stage-card.active{border-color:var(--stage-color);box-shadow:0 14px 30px color-mix(in srgb,var(--stage-color) 18%,transparent)}.stage-short{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;color:#fff;background:var(--stage-color);font-weight:900}.applicant-list-button{position:relative;overflow:hidden}.applicant-list-button:before{content:"";position:absolute;inset:0 auto 0 0;width:8px;background:var(--stage-color)}.crm-progress-line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:8px 0 14px}.crm-progress-line span{padding:8px 10px;border-radius:999px;text-align:center;font-size:.76rem;font-weight:800;color:#5c6b83;background:#edf4fb}.crm-progress-line span.done{color:#fff;background:var(--stage-color)}.report-brand-banner{display:grid;grid-template-columns:92px minmax(0,1fr);gap:20px;align-items:center;margin-bottom:24px;padding:20px;border-radius:24px;color:#fff;background:linear-gradient(145deg,var(--brand-primary),var(--brand-secondary))}.report-brand-banner h3,.report-brand-banner p{color:inherit}.report-logo-box{display:grid;place-items:center;width:88px;height:88px;padding:10px;border-radius:22px;background:#fff}.report-logo-box img{width:100%;height:100%;object-fit:contain}.table-scroll{width:100%;overflow-x:auto;border:1px solid rgba(18,39,69,.08);border-radius:18px}.report-table{width:100%;min-width:920px;border-collapse:collapse;background:#fff}.report-table th,.report-table td{padding:14px 16px;border-bottom:1px solid rgba(18,39,69,.08);text-align:left;vertical-align:top}.report-table th{color:#5b6b83;background:#f4f8fc;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.report-table tr.academic-record-not-approved td{background:#fdecec;color:#7f1d1d}.projection-alert{border:1px solid #f1c58c;border-radius:18px;background:#fffaf3;overflow:hidden}.projection-alert summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;cursor:pointer;color:#7a4a11;font-weight:800;list-style:none}.projection-alert summary::-webkit-details-marker{display:none}.projection-alert[open] summary{border-bottom:1px solid #f4dcbd}.projection-alert .table-scroll{margin:0 18px 18px;width:calc(100% - 36px)}.projection-offers-table th:last-child,.projection-offers-table td:last-child{display:none}.compact-button{min-width:max-content;padding:.65rem .85rem;white-space:nowrap}.projection-student-panel{padding:20px;border:1px solid #c9d9ed;border-radius:22px;background:#f7fbff}.projection-student-panel .report-table{min-width:680px}.meta-label{font-weight:700}.checkbox-stack{display:grid;gap:12px;align-content:start}.checkbox-row{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid rgba(18,39,69,.08);border-radius:14px;background:#fff}.checkbox-row input{width:auto;margin:0}.message{margin-top:16px;padding:14px 16px;border-radius:16px;font-weight:700}.message.error{color:#7a1f18;background:#fde8e5}.message.success{color:#0d5a30;background:#e5f7ea}.empty-state{padding:16px;border-radius:18px;background:#f7f9fc;color:#44516a}.list-button{text-align:left;padding:16px;border-radius:18px;border:1px solid rgba(18,39,69,.08);background:#fff}.list-button span{display:block;color:#596886;margin-top:4px}.list-button.active{color:#fff;background:linear-gradient(145deg,var(--brand-primary),var(--brand-secondary))}.list-button.active span{color:#ffffffd1}.top-space{margin-top:18px}.student-life-dashboard{display:grid;gap:18px}.student-life-search{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:end;padding:20px;border:1px solid #c9d9ed;border-radius:22px;background:#f7fbff}.integrity-card{border-width:2px}.integrity-ok{border-color:#76c9a5;background:#f2fbf7}.integrity-warning{border-color:#e6a95f;background:#fff9ef}.integrity-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.integrity-check{display:grid;gap:4px;padding:12px;border:1px solid rgba(22,62,107,.14);border-radius:14px;background:#ffffffd1}.integrity-check strong{font-size:1.45rem}.integrity-check small,.source-file-list span{color:#596886}.source-file-list{display:grid;gap:6px;overflow-wrap:anywhere}.student-profile-card{display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,1.3fr);gap:24px;align-items:center}.student-profile-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.student-profile-details span{display:grid;gap:3px;padding:11px 13px;border-radius:13px;background:#f2f6fb;overflow-wrap:anywhere}.academic-progress-card progress{width:100%;height:18px;margin-top:14px;accent-color:var(--brand-primary)}.student-life-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.compact-academic-table{min-width:720px}.teacher-assignment-table{min-width:1420px}.teacher-assignment-table td{vertical-align:top}.status-pill{display:inline-flex;align-items:center;border-radius:999px;font-size:.76rem;font-weight:800;padding:6px 10px;white-space:nowrap}.status-active{background:#dcfce7;color:#166534}.status-inactive{background:#f1f5f9;color:#64748b}.compact-actions{min-width:165px}.correction-authorization-card{border:2px solid #f1b98a;background:#fffaf5}@media (max-width: 1200px){.login-stage,.login-visual-row,.landing-hero,.portal-grid,.credential-grid,.crm-stage-board,.crm-progress-line,.field-row,.hero-card,.module-grid,.stack-grid,.dashboard-shell,.card-grid{grid-template-columns:1fr}.subsection-heading{align-items:stretch;flex-direction:column}.operational-header,.operational-title-row,.report-brand-banner{grid-template-columns:1fr}.header-actions{justify-items:stretch}.header-pills{justify-content:flex-start}.color-control,.brand-preview{grid-template-columns:1fr}.search-field{min-width:0}.student-life-columns,.student-profile-card{grid-template-columns:1fr}}@media (max-width: 820px){.login-shell{padding:20px}.login-feature-grid{grid-template-columns:1fr}.login-stage{padding:10px}.login-brand-panel{min-height:auto;padding:26px}.login-logo-card{transform:none;min-height:180px}.login-card{padding:28px}.dashboard-content,.dashboard-sidebar{padding:18px}.header-pills span{width:100%;justify-content:center}.academic-menu-block{grid-template-columns:1fr;min-height:auto;padding:22px}.academic-action-grid,.student-life-search,.student-profile-details,.installment-row,.installment-row.compact{grid-template-columns:1fr}}
