:root{--bg:#f6f7f9;--card:#fff;--text:#1d2433;--muted:#667085;--line:#e1e5ec;--brand:#172554;--accent:#2563eb;--primary:var(--accent);--border:var(--line);--good:#15803d;--warn:#b45309;--bad:#dc2626}.generated-link{color:var(--primary);overflow-wrap:anywhere;margin-top:8px;font-size:12px;line-height:1.45;display:block}.lead-actions,.queue-action-form{gap:8px;min-width:170px;display:grid}.lead-action-buttons{flex-wrap:wrap;gap:6px;display:flex}.lead-action-buttons .btn,.queue-action-form .btn{min-height:34px;padding:7px 10px;font-size:12px}.no-margin{margin:0}.bank-group{min-width:0}.bank-group-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;display:flex}.bank-count{color:var(--muted);white-space:nowrap;font-size:13px}.bank-campus-list{gap:8px;display:grid}.bank-campus-list a{border:1px solid var(--border);min-width:0;color:var(--text);border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;text-decoration:none;display:flex}.bank-campus-list a:hover{background:#f7f9ff;border-color:#9db1dc}.public-flow{background:#f3f6fb;min-height:100vh;padding:28px 18px 48px}.public-flow-header,.public-flow-card{width:min(920px,100%);margin-inline:auto}.public-flow-header{align-items:center;gap:16px;margin-bottom:18px;display:flex}.public-flow-header img{object-fit:contain;width:62px;height:62px}.public-flow-header h1{margin:0 0 4px;font-size:24px}.public-flow-header p{color:var(--muted);margin:0}.public-flow-card{border:1px solid var(--border);background:#fff;border-radius:8px;padding:26px;box-shadow:0 8px 26px #1c2d5214}.countdown-panel,.profile-summary-band,.notice-band,.flow-success,.flow-locked{color:#17345f;background:#f4f7fd;border:1px solid #b8c8e7;border-left:4px solid #315da8;border-radius:6px;padding:14px 16px}.countdown-panel{justify-content:space-between;align-items:center;gap:14px;margin-bottom:22px;display:flex}.countdown-panel strong{font-variant-numeric:tabular-nums}.countdown-panel.expired,.notice-band.warning,.flow-locked{color:#75400b;background:#fff8eb;border-color:#e7c27f #e7c27f #e7c27f #c87914}.flow-success{color:#0c6545;background:#eefbf6;border-color:#93d8bf #93d8bf #93d8bf #16845b}.form-section-heading{border-top:1px solid var(--border);margin:26px 0 14px;padding-top:20px;font-size:17px}.block-status{margin-top:12px;display:block}.flow-submit{min-width:190px;margin-top:20px}.signature-field{gap:8px;display:grid}.signature-canvas{cursor:crosshair;touch-action:none;background:#fff;border:1px solid #9aaccd;border-radius:4px;width:min(100%,620px);height:190px;display:block}.signature-clear{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;text-decoration:underline}.choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.choice-option{border:1px solid var(--border);background:#fff;border-radius:6px;grid-template-columns:18px minmax(0,1fr);align-items:flex-start;gap:9px;min-width:0;padding:12px;display:grid}.choice-option input,.inline-check input{flex:none;width:auto;margin:3px 0 0}.choice-option>span{gap:3px;min-width:0;display:grid}.choice-option strong,.choice-option small{overflow-wrap:anywhere}.choice-option strong{line-height:1.25}.choice-option small{color:var(--muted);line-height:1.4}.agreement-scroll{border:1px solid var(--border);background:#fafbfd;border-radius:6px;max-height:430px;margin:12px 0 16px;padding:18px;line-height:1.55;overflow-y:auto}.agreement-scroll h3,.agreement-scroll h4{margin:18px 0 8px}.agreement-scroll li+li{margin-top:6px}.upload-zone{background:#f8faff;border:1px dashed #9fb1d1;border-radius:6px;gap:8px;padding:18px;display:grid}.upload-zone input[type=file]{width:100%}.profile-summary-band{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:20px;display:grid}.profile-summary-band span{color:var(--muted);text-transform:uppercase;font-size:12px;display:block}.size-guide{border:1px solid var(--border);width:min(100%,820px);height:auto;margin:12px 0}.color-input{min-height:42px;padding:4px}.recurrence-panel{border:1px solid var(--border);background:#f8f9fc;border-radius:6px;gap:10px;padding:14px;display:grid}.calendar-dot,.agenda-color{border-radius:50%;flex:0 0 10px;width:10px;height:10px;display:inline-block}.notice-band{margin-bottom:16px}.course-message-list{display:grid}.course-message{border-bottom:1px solid var(--border);padding:13px 0}.course-message:first-child{padding-top:0}.course-message:last-child{border-bottom:0;padding-bottom:0}.course-message>div{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.course-message time{color:var(--muted);flex:none;font-size:12px}.course-message p{color:var(--text);white-space:pre-wrap;margin:7px 0 0;line-height:1.55}.submission-preview{border-left:4px solid var(--accent);background:var(--bg);margin:12px 0;padding:13px 14px}.submission-preview p{white-space:pre-wrap;margin:7px 0}.table-file-link{width:fit-content;margin-top:7px;display:block}.calendar-legend{color:var(--muted);flex-wrap:wrap;gap:10px 18px;margin-bottom:14px;font-size:13px;display:flex}.calendar-legend span{align-items:center;gap:6px;display:inline-flex}.calendar-card{padding:0;overflow:hidden}.calendar-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex}.calendar-heading h2{margin:0;font-size:18px}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.month-grid.week-heading{color:var(--muted);text-align:center;background:#f5f7fb;font-size:12px;font-weight:700}.month-grid.week-heading>div{border-right:1px solid var(--border);padding:9px 4px}.month-day{border-top:1px solid var(--border);border-right:1px solid var(--border);background:#fff;min-width:0;min-height:118px;padding:8px}.month-day:nth-child(7n){border-right:0}.month-day.empty{background:#f8f9fb}.day-number{color:#42516b;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.month-event{color:#2c3d5c;text-overflow:ellipsis;white-space:nowrap;background:#f3f6fb;border-left:3px solid;border-radius:3px;width:100%;margin-bottom:4px;padding:4px 6px;font-size:11px;line-height:1.25;display:block;overflow:hidden}.more-events{color:var(--muted);font-size:11px}.calendar-agenda,.request-list{gap:9px;display:grid}.agenda-row,.request-row{border:1px solid var(--border);background:#fff;border-radius:6px;align-items:center;gap:12px;padding:12px;display:grid}.agenda-row{grid-template-columns:auto 70px minmax(0,1fr) auto}.agenda-date{color:var(--muted);font-size:12px;font-weight:700}.agenda-copy,.request-row>div{min-width:0}.agenda-copy strong,.agenda-copy span,.request-row strong,.request-row span{display:block}.agenda-copy span,.request-row span{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:12px}.request-row{grid-template-columns:minmax(0,1fr) auto}.confidential-detail{white-space:normal;max-width:430px}.time-clock-panel{gap:18px;display:grid}.live-clock{text-align:center;background:#f3f7ff;border:1px solid #abc1e5;border-radius:6px;padding:22px}.live-clock strong,.live-clock span{display:block}.live-clock strong{color:#173d7c;font-variant-numeric:tabular-nums;font-size:34px}.live-clock span{color:var(--muted);margin-top:4px}.clock-in-button{background:#147a52}.clock-out-button{background:#aa3030}@media (max-width:780px){.public-flow{padding:18px 10px 36px}.public-flow-card{padding:18px}.public-flow-header{align-items:flex-start}.public-flow-header h1{font-size:20px}.choice-grid,.profile-summary-band{grid-template-columns:1fr}.countdown-panel,.calendar-heading,.request-row{grid-template-columns:1fr;align-items:flex-start}.month-grid{min-width:0}.calendar-card{overflow:hidden}.month-day{min-height:96px;padding:5px}.month-event{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;max-height:2.6em;padding:3px;font-size:10px}.agenda-row{grid-template-columns:auto 62px minmax(0,1fr)}.agenda-row .btn{grid-column:2/-1;justify-self:start}}@media (max-width:520px){.public-flow-header img{width:48px;height:48px}.public-flow-card{padding:14px}.signature-canvas{height:160px}.calendar-heading{padding:13px}.month-grid.week-heading>div{padding:7px 1px;font-size:10px}.month-day{min-height:76px;padding:4px}.day-number{margin-bottom:3px;font-size:10px}.month-event{border-left-width:2px;font-size:9px}.agenda-row{grid-template-columns:auto minmax(0,1fr)}.agenda-date,.agenda-copy,.agenda-row .btn{grid-column:2}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit}.shell{grid-template-columns:270px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--brand);color:#fff;flex-direction:column;padding:24px 18px;display:flex}.brand-block{align-items:center;gap:12px;margin-bottom:24px;display:flex}.brand-mark{width:44px;height:44px;color:var(--brand);background:#fff;border-radius:8px;place-items:center;font-weight:800;display:grid}.brand-logo{object-fit:contain;background:#fff;border-radius:8px;width:54px;height:54px;padding:3px}.logo{font-size:21px;font-weight:800;line-height:1.1}.tagline{opacity:.8;margin-top:6px;font-size:12px}.nav{flex:1}.nav a{color:#dbeafe;border-radius:8px;align-items:center;gap:10px;margin:5px 0;padding:12px 14px;text-decoration:none;display:flex}.nav a:hover,.nav a.active{color:#fff;background:#ffffff24}.nav-icon{background:#ffffff1f;border-radius:6px;place-items:center;width:22px;height:22px;font-size:12px;font-weight:800;display:grid}.main{min-width:0;padding:26px}.topbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.filters{grid-template-columns:1fr 1fr;gap:10px;min-width:360px;display:grid}.grid{gap:18px;display:grid}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:18px;box-shadow:0 8px 24px #0f172a0a}.metric{margin:8px 0 0;font-size:30px;font-weight:800}.metric-card{min-height:134px}.label{color:var(--muted);font-size:13px;line-height:1.45}.roomy{margin-bottom:18px;font-size:14px}.title{margin:0;font-size:28px}.subtitle{color:var(--muted);margin-top:6px;line-height:1.45}.btn{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:10px 14px;font-weight:700;text-decoration:none;display:inline-block}.btn.secondary{color:#1e3a8a;background:#eef2ff}.full-width{width:100%}.text-link{color:var(--accent);font-size:14px;font-weight:700;text-decoration:none}.table{border-collapse:collapse;width:100%}.table th,.table td{border-bottom:1px solid var(--line);text-align:left;padding:12px 10px;font-size:14px}.table th{color:var(--muted);text-transform:uppercase;font-size:12px}.badge{white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;display:inline-block}.badge.good{color:#166534;background:#dcfce7}.badge.warn{color:#92400e;background:#fef3c7}.badge.info{color:#1e40af;background:#dbeafe}.badge.neutral{color:#475569;background:#f1f5f9}.badge-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.trend{margin-top:10px;font-size:13px;font-weight:700}.trend.good{color:var(--good)}.trend.warn{color:var(--warn)}.trend.info{color:#1d4ed8}.login{background:linear-gradient(135deg,#172554,#2563eb);place-items:center;min-height:100vh;display:grid}.login-card{background:#fff;border-radius:8px;width:420px;padding:30px;box-shadow:0 20px 60px #0003}.wide-login-card{width:min(760px,94vw)}.login-card h1{margin-top:0}.login-logo{width:min(100%,330px);height:auto;margin:0 auto 16px;display:block}input,select,textarea{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;margin:8px 0 14px;padding:12px;font-size:14px}textarea{min-height:110px}.section-title{margin:0 0 12px;font-size:18px;font-weight:800}.section-header{justify-content:space-between;align-items:center;gap:16px;margin:28px 0 14px;display:flex}.section-header h2{margin:0;font-size:18px}.module-card,.launcher-card{align-items:flex-start;gap:14px;min-height:164px;text-decoration:none;display:flex}.module-card h3,.launcher-card h3{margin:0 0 6px}.module-card:hover,.launcher-card:hover,.action-card:hover,.company-card:hover{border-color:#b6c5f5;box-shadow:0 10px 28px #2563eb14}.module-icon{color:#1e3a8a;background:#eef2ff;border-radius:8px;place-items:center;width:42px;min-width:42px;height:42px;font-weight:800;display:grid}.module-logo{border:1px solid var(--line);object-fit:contain;background:#fff;border-radius:8px;width:54px;min-width:54px;height:54px}.company-portal-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-bottom:18px;display:grid}.company-card{flex-direction:column;min-width:0;min-height:250px;text-decoration:none;display:flex;overflow:hidden}.company-card h2{overflow-wrap:anywhere;margin:4px 0 0;font-size:18px;line-height:1.25}.company-card-top{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:14px;margin-bottom:12px;display:grid}.company-logo{border:1px solid var(--line);object-fit:contain;background:#fff;border-radius:8px;width:96px;height:70px}.action-card{gap:8px;min-height:96px;text-decoration:none;display:grid}.status-dot{background:var(--good);border-radius:99px;width:10px;height:10px;margin-right:8px;display:inline-block}.spaced,.lower-grid{margin-top:18px}.form-card{margin-bottom:18px}.form-grid{gap:12px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-status{color:var(--muted);margin-left:12px;font-size:13px;font-weight:700;display:inline-block}.inline-check{align-items:center;gap:10px;margin:8px 0 14px;display:flex}.inline-check input{width:auto;margin:0}.checkbox-row{flex-wrap:wrap;gap:12px;margin:2px 0 14px;display:flex}.checkbox-row label{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:700;display:flex}.checkbox-row input{width:auto;margin:0}.lecturer-admin-grid{align-items:start}.lecturer-program-manager{min-width:0}.program-campus-groups{gap:14px;margin-top:6px;display:grid}.program-campus-group{border:1px solid var(--line);border-radius:8px;min-width:0;padding:13px}.program-campus-group legend{color:var(--muted);padding:0 6px;font-size:12px;font-weight:800}.program-check-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.program-check{border:1px solid var(--line);cursor:pointer;border-radius:6px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:9px;min-width:0;margin:0;padding:10px;display:grid}.program-check:hover{border-color:#8da7d8}.program-check input{width:auto;margin:2px 0 0}.program-check span{gap:3px;min-width:0;display:grid}.program-check strong{overflow-wrap:anywhere;font-size:13px}.program-check small{color:var(--muted);font-size:11px}.lecturer-program-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;display:flex}.lecturer-program-actions .form-status{margin-left:0}.lecturer-course-manager{min-width:0}.lecturer-course-manager label{gap:6px;margin-top:12px;display:grid}.assignment-chip-list{gap:8px;display:grid}.assignment-chip{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.assignment-remove-control{align-items:center;gap:6px;display:inline-flex}.btn.assignment-remove-button{color:#991b1b;background:#fee2e2;padding:7px 10px;font-size:12px}.btn.assignment-remove-button:disabled{cursor:wait;opacity:.65}.assignment-remove-error{color:#b91c1c;max-width:180px;margin:0;font-size:11px}.lecturer-course-assignment-table{max-height:520px;overflow:auto}.ecosystem-hero{grid-template-columns:minmax(260px,380px) 1fr;align-items:start;gap:22px;display:grid}.ecosystem-image-wrap{border:1px solid var(--line);background:#f8fafc;border-radius:8px;max-height:760px;overflow:auto}.ecosystem-image{width:100%;min-width:720px;height:auto;display:block}.brand-strip{grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:18px;margin-top:18px;display:grid}.brand-strip-item{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:center;align-items:center;height:108px;padding:12px;display:flex}.brand-strip-item img{object-fit:contain;max-width:100%;max-height:84px}.page-brand-heading{align-items:center;gap:16px;display:flex}.page-brand-logo{border:1px solid var(--line);object-fit:contain;background:#fff;border-radius:8px;width:112px;height:82px}.priority-grid{align-items:stretch}.priority-card{flex-direction:column;justify-content:space-between;min-height:180px;display:flex}.priority-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.priority-card h3{margin:0 0 4px;font-size:17px}.outcome-list{flex-wrap:wrap;gap:10px;display:flex}.outcome-pill{color:#1e3a8a;background:#eef2ff;border:1px solid #c7d2fe;border-radius:999px;padding:8px 10px;font-size:13px;font-weight:700}.support-row{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:14px;padding:14px 0 0;display:flex}.support-row:first-of-type{border-top:0;padding-top:0}.portal-sidebar-footer{border-top:1px solid #ffffff2e;margin-top:22px;padding-top:18px}.portal-signout{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff47;border-radius:8px;width:100%;margin-top:12px;padding:10px 12px;font-size:13px;font-weight:700}.portal-signout:hover{background:#fff3}.eyebrow{color:#0f766e;letter-spacing:0;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:800}.portal-welcome{background:#eaf7f3;border:1px solid #b7dfd4;border-radius:8px;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.portal-welcome h2{margin:0;font-size:22px}.portal-welcome p{color:#526168;margin:6px 0 0;line-height:1.45}.welcome-action{flex:none}.portal-section{scroll-margin-top:18px}.section-header.compact{margin:0 0 14px}.task-list,.grade-list{display:grid}.task-row{border-top:1px solid var(--line);grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:14px 0;text-decoration:none;display:grid}.task-row:first-child,.grade-row:first-child{border-top:0;padding-top:4px}.task-row:hover strong{color:var(--accent)}.task-date{color:#0f766e;font-size:12px;font-weight:800}.task-copy{gap:4px;min-width:0;display:grid}.task-copy strong,.task-copy span{overflow-wrap:anywhere}.task-copy span,.grade-row span{color:var(--muted);font-size:12px}.task-score{color:var(--muted);white-space:nowrap;font-size:12px}.grade-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.grade-row>div:first-child,.grade-value{gap:4px;display:grid}.grade-value{color:var(--good);text-align:right;font-size:17px;font-weight:800}.grade-value span{font-weight:400}.empty-state{color:var(--muted);padding:18px 0;font-size:14px;line-height:1.5}.course-card{flex-direction:column;gap:16px;min-width:0;min-height:252px;text-decoration:none;display:flex}.course-card:hover{border-color:#9db7ee;box-shadow:0 10px 28px #2563eb14}.course-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.course-card h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:18px}.course-card p{color:var(--muted);overflow-wrap:anywhere;margin:0;line-height:1.45}.course-progress-copy{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:auto;font-size:12px;display:flex}.course-progress-copy strong{color:var(--text)}.progress-track{background:#e7ebf1;border-radius:4px;width:100%;height:7px;overflow:hidden}.progress-track span{background:#0f766e;height:100%;display:block}.lecturer-course-card{min-height:286px}.course-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:auto;display:grid}.course-stat-grid span{color:var(--muted);gap:3px;font-size:11px;display:grid}.course-stat-grid strong{color:var(--text);font-size:17px}.table-wrap{max-width:100%;overflow-x:auto}.table-wrap .table{min-width:700px}.locked-field{border:1px solid var(--line);color:#475569;background:#f5f7fa;border-radius:8px;margin:8px 0 14px;padding:12px;font-size:14px;font-weight:700;display:block}.table-note{color:#475569;white-space:normal;max-width:420px;margin-top:5px;font-size:12px;line-height:1.45}@media (max-width:1100px){.grid.cols-4,.grid.cols-3,.company-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ecosystem-hero{grid-template-columns:1fr}.brand-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.main{padding:18px}.grid.cols-4,.grid.cols-3,.grid.cols-2,.company-portal-grid{grid-template-columns:1fr}.topbar{display:block}.filters{grid-template-columns:1fr;min-width:0;margin-top:14px}.login-card{width:92%}.form-grid.two,.form-grid.three,.form-grid.four{grid-template-columns:1fr}.ecosystem-image{min-width:560px}.priority-card-header,.support-row{display:grid}.brand-strip{grid-template-columns:1fr}.page-brand-heading,.portal-welcome{align-items:flex-start;display:grid}.welcome-action{justify-self:start}.task-row{grid-template-columns:68px minmax(0,1fr)}.task-score{grid-column:2}.course-stat-grid{grid-template-columns:repeat(3,minmax(70px,1fr))}}.sheet-toolbar{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px;display:flex}.sheet-toolbar h2{margin:3px 0 2px;font-size:20px}.sheet-toolbar p{color:var(--muted);margin:0;font-size:13px}.country-register{min-width:0}.student-register-table .student-record-link{color:#1f56a8;text-underline-offset:3px;font-weight:800;text-decoration:underline}.student-register-table .student-record-link:hover{color:#123a78}.profile-metric{color:var(--brand);overflow-wrap:anywhere;margin-top:8px;font-size:21px;font-weight:800}.profile-data-grid{border:1px solid var(--line);background:var(--line);border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.profile-data-grid>div{background:#fff;min-width:0;padding:13px 14px}.profile-data-grid dt{color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:800}.profile-data-grid dd{color:var(--text);overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.4}.profile-data-grid .profile-data-wide{grid-column:span 2}.contact-list{gap:9px;display:grid}.contact-row{border:1px solid var(--line);border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);gap:16px;padding:12px 14px;display:grid}.contact-row strong,.contact-row span{overflow-wrap:anywhere;display:block}.contact-row span{color:var(--muted);margin-top:3px;font-size:12px}@media (max-width:900px){.sheet-toolbar{display:grid}.sheet-toolbar .btn{justify-self:start}.profile-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.profile-data-grid{grid-template-columns:1fr}.profile-data-grid .profile-data-wide{grid-column:auto}.contact-row{grid-template-columns:1fr}}.admin-record-editor{background:#f7f9fd;border:1px solid #b8c8e7;border-left:4px solid #315da8;border-radius:6px;padding:18px}.admin-editor-toolbar{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.admin-editor-toolbar h2{margin:3px 0 4px;font-size:19px}.admin-editor-toolbar p{color:var(--muted);margin:0;font-size:13px}.admin-editor-grid{border-top:1px solid #cbd5e5;grid-template-columns:minmax(0,1.5fr) minmax(320px,.7fr);gap:20px;margin-top:20px;padding-top:20px;display:grid}.admin-edit-form{border:1px solid var(--line);background:#fff;border-radius:6px;align-content:start;gap:14px;min-width:0;padding:16px;display:grid}.admin-edit-form h3{margin:0;font-size:17px}.admin-edit-form .btn{justify-self:start}.legacy-import-form{gap:18px;display:grid}#import-existing-student{scroll-margin-top:18px}.form-fieldset{border:1px solid var(--line);border-radius:6px;min-width:0;margin:0;padding:16px 16px 2px}.form-fieldset legend{color:var(--text);padding:0 8px;font-size:14px;font-weight:800}.form-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.form-actions .form-status{margin-left:0}.import-confirmation{margin:0}.import-success{color:#0c6545;background:#eefbf6;border:1px solid #93d8bf;border-left:4px solid #16845b;border-radius:6px;justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.import-success div{gap:4px;display:grid}.import-success span{font-size:13px}.settings-grid{align-items:stretch}.settings-card{min-width:0}.theme-segmented{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.theme-option{border:1px solid var(--line);background:var(--card);min-width:0;min-height:72px;color:var(--text);text-align:left;cursor:pointer;border-radius:6px;grid-template-columns:24px minmax(0,1fr);gap:2px 9px;padding:11px;display:grid}.theme-option:hover{border-color:#8da7d8}.theme-option.active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.theme-option strong{overflow-wrap:anywhere;align-self:center}.theme-option small{color:var(--muted);grid-column:2;line-height:1.3}.theme-swatch{border:1px solid #7c8797;border-radius:50%;grid-row:span 2;align-self:start;width:24px;height:24px}.theme-swatch.light{background:#f8fafc}.theme-swatch.dark{background:#171a1f}.theme-swatch.system{background:#f8fafc;border-right:12px solid #171a1f}html[data-theme=dark]{--bg:#111317;--card:#1b1f25;--text:#f4f5f7;--muted:#aab2bd;--line:#343b46;--brand:#101b3e;--accent:#70a7ff;--good:#58c486;--warn:#f1b95f;--bad:#ff7b7b}html[data-theme=dark] body{background:var(--bg)}html[data-theme=dark] input,html[data-theme=dark] select,html[data-theme=dark] textarea{border-color:var(--line);color:var(--text);background:#12161c}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#7f8997}html[data-theme=dark] input:disabled,html[data-theme=dark] select:disabled,html[data-theme=dark] textarea:disabled{color:#8993a1;background:#242932}html[data-theme=dark] .login-card,html[data-theme=dark] .public-flow-card,html[data-theme=dark] .choice-option,html[data-theme=dark] .brand-strip-item,html[data-theme=dark] .profile-data-grid>div,html[data-theme=dark] .admin-edit-form{background:var(--card);color:var(--text)}html[data-theme=dark] .public-flow,html[data-theme=dark] .ecosystem-image-wrap,html[data-theme=dark] .agreement-scroll,html[data-theme=dark] .locked-field{color:var(--text);background:#15191f}html[data-theme=dark] .btn.secondary,html[data-theme=dark] .module-icon,html[data-theme=dark] .outcome-pill{color:#d8e5ff;background:#27344f;border-color:#40547d}html[data-theme=dark] .portal-welcome{background:#17312f;border-color:#315e59}html[data-theme=dark] .portal-welcome p{color:#b8cac7}html[data-theme=dark] .admin-record-editor,html[data-theme=dark] .countdown-panel,html[data-theme=dark] .notice-band,html[data-theme=dark] .profile-summary-band{color:#d7e5ff;background:#1b2940;border-color:#40547d}html[data-theme=dark] .flow-success,html[data-theme=dark] .import-success{color:#a9e7c8;background:#17362b;border-color:#34745d}html[data-theme=dark] .countdown-panel.expired,html[data-theme=dark] .notice-band.warning,html[data-theme=dark] .flow-locked{color:#f2d5a5;background:#352919;border-color:#7b6238}html[data-theme=dark] .bank-campus-list a:hover{background:#202a3a;border-color:#536b99}html[data-theme=dark] .badge.good{color:#9fe0b7;background:#173c28}html[data-theme=dark] .badge.warn{color:#f4ce82;background:#45361a}html[data-theme=dark] .badge.info{color:#b8d2ff;background:#20375e}html[data-theme=dark] .badge.neutral{color:#c5ccd6;background:#303640}html[data-theme=dark] .task-date,html[data-theme=dark] .eyebrow{color:#67c7bb}html[data-theme=dark] .student-register-table .student-record-link{color:#8dbaff}html[data-theme=dark] .month-grid.week-heading,html[data-theme=dark] .month-day.empty,html[data-theme=dark] .month-event{background:#15191f}html[data-theme=dark] .month-day,html[data-theme=dark] .agenda-row{background:var(--card)}html[data-theme=dark] .day-number,html[data-theme=dark] .month-event{color:var(--text)}html[data-theme=dark] .profile-metric{color:#d7e4ff}.healthcare-calendar{gap:16px;min-width:0;display:grid}.healthcare-calendar-title{align-items:flex-end}.healthcare-calendar-title .calendar-legend{margin:0}.calendar-key{border-radius:50%;width:10px;height:10px;display:inline-block}.calendar-key.appointment{background:#0f766e}.calendar-key.holiday{background:#ca8a04}.calendar-controls{align-items:center;gap:8px;display:flex}.calendar-nav-button{border:1px solid var(--line);background:var(--card);width:38px;height:38px;color:var(--text);cursor:pointer;border-radius:6px;place-items:center;font-size:24px;line-height:1;display:inline-grid}.calendar-nav-button:hover{border-color:var(--accent);color:var(--accent)}.calendar-today-button{min-height:38px;padding:8px 13px}.calendar-grid-scroll{min-width:0}.healthcare-calendar .month-day.today{box-shadow:inset 0 0 0 2px #0f766e}.healthcare-month-event span,.healthcare-month-event small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.healthcare-month-event small{color:var(--muted);margin-top:2px;font-size:10px}.healthcare-month-event.holiday{background:#fff8df}.healthcare-month-agenda{padding:18px}.healthcare-month-agenda .section-header{margin-bottom:12px}.healthcare-agenda-row{grid-template-columns:76px 10px minmax(0,1fr) auto}.healthcare-agenda-row .agenda-date strong,.healthcare-agenda-row .agenda-date span{display:block}html[data-theme=dark] .healthcare-month-event.holiday{background:#352919}@media (max-width:1050px){.admin-editor-grid{grid-template-columns:1fr}}@media (max-width:620px){.healthcare-calendar-title,.healthcare-calendar-heading{align-items:flex-start;display:grid}.calendar-grid-scroll{overflow-x:auto}.calendar-grid-scroll>.month-grid{min-width:680px}.healthcare-calendar .calendar-card,.healthcare-month-agenda{min-width:0}.healthcare-agenda-row{grid-template-columns:70px 10px minmax(0,1fr)}.healthcare-agenda-row .agenda-date,.healthcare-agenda-row .agenda-copy{grid-column:auto}.healthcare-agenda-row>.badge{grid-column:3;justify-self:start}.admin-editor-toolbar{display:grid}.admin-editor-toolbar .btn{justify-self:start}.admin-record-editor,.admin-edit-form{padding:13px}.theme-segmented{grid-template-columns:1fr}.import-success{align-items:flex-start;display:grid}.program-check-grid{grid-template-columns:1fr}}.helpdesk-launcher{z-index:80;color:#17305f;min-height:46px;font:inherit;cursor:pointer;background:#fff;border:1px solid #a8bddf;border-radius:24px;align-items:center;gap:9px;padding:8px 15px 8px 9px;font-weight:800;display:inline-flex;position:fixed;bottom:22px;right:22px;box-shadow:0 10px 30px #0f172a33}.helpdesk-launcher-icon{color:#fff;background:#17305f;border-radius:50%;place-items:center;width:28px;height:28px;font-size:17px;display:inline-grid}.helpdesk-overlay{z-index:100;background:#080f1f9e;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.helpdesk-dialog{border:1px solid var(--line);background:var(--card);width:min(720px,100%);max-height:calc(100vh - 44px);color:var(--text);border-radius:8px;overflow-y:auto;box-shadow:0 24px 70px #00000047}.helpdesk-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:22px 24px 18px;display:flex}.helpdesk-header h2,.helpdesk-header p{margin:0}.helpdesk-header h2{margin-top:3px;font-size:22px}.helpdesk-header p{color:var(--muted);margin-top:6px;font-size:13px}.helpdesk-close{border:1px solid var(--line);background:var(--card);width:36px;height:36px;color:var(--text);cursor:pointer;border-radius:50%;flex:0 0 36px;place-items:center;padding:0;font-size:25px;line-height:1;display:inline-grid}.helpdesk-form{gap:16px;padding:22px 24px 24px;display:grid}.helpdesk-form label{color:var(--text);gap:7px;font-size:13px;font-weight:700;display:grid}.helpdesk-form input,.helpdesk-form select,.helpdesk-form textarea{width:100%}.helpdesk-privacy{color:var(--muted);margin:-4px 0 0;font-size:12px}.helpdesk-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}html[data-theme=dark] .helpdesk-launcher{color:#e5edff;background:#27344f;border-color:#40547d}html[data-theme=dark] .helpdesk-launcher-icon{color:#101725;background:#70a7ff}@media (max-width:620px){.helpdesk-launcher{bottom:14px;right:14px}.helpdesk-overlay{align-items:end;padding:0}.helpdesk-dialog{border-bottom:0;border-left:0;border-right:0;width:100%;max-height:92vh}.helpdesk-header,.helpdesk-form{padding-left:16px;padding-right:16px}.helpdesk-form .form-grid.two{grid-template-columns:1fr}.helpdesk-actions{align-items:stretch;display:grid}.helpdesk-actions .btn{width:100%}}
