:root{--navy:#13233f;--navy-2:#1b3155;--ink:#172033;--muted:#728096;--line:#e6eaf0;--bg:#f5f7fa;--blue:#315be8;--teal:#19a789;--white:#fff;--radius:16px;--shadow:0 10px 30px rgba(25,39,70,.07)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"DM Sans",sans-serif;color:var(--ink)}body{background:var(--bg)}button,input{font:inherit}.app-body{display:flex;min-height:100vh}.sidebar{width:260px;position:fixed;inset:0 auto 0 0;background:var(--navy);color:#d9e2f1;padding:28px 18px 20px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;padding:0 8px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#4b71f1;color:#fff;font:800 22px Manrope;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.brand>span:last-child{display:flex;flex-direction:column}.brand strong{font:700 18px Manrope;letter-spacing:-.4px}.brand small{font-size:11px;color:#8fa1bd;margin-top:1px}.main-nav{margin-top:34px;overflow:auto}.nav-label{font-size:10px;font-weight:700;letter-spacing:1.3px;color:#7387a6;margin:26px 12px 9px}.nav-item{height:43px;display:flex;align-items:center;gap:11px;padding:0 12px;border-radius:10px;color:#becae0;text-decoration:none;font-size:13px;font-weight:500;margin:3px 0}.nav-item.active{color:#fff;background:rgba(79,115,235,.19);box-shadow:inset 3px 0 #5d7df0}.nav-item-muted{cursor:default}.nav-item-muted small{margin-left:auto;font-size:9px;color:#6f82a1;opacity:0;transition:.2s}.nav-item-muted:hover{background:rgba(255,255,255,.04)}.nav-item-muted:hover small{opacity:1}.nav-icon{display:grid;place-items:center;width:23px;color:#90a3bf;font-size:18px}.nav-icon.initials{font-size:9px;font-weight:700;letter-spacing:-.3px;border:1px solid #526782;border-radius:6px;height:22px}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding-top:18px}.sidebar-help{display:flex;align-items:center;gap:11px;padding:8px}.sidebar-help>span{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#21395f;font-weight:700}.sidebar-help div{display:flex;flex-direction:column}.sidebar-help strong{font-size:12px}.sidebar-help small{font-size:10px;color:#8194b2;margin-top:2px}.main-content{margin-left:260px;width:calc(100% - 260px)}.topbar{height:92px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;position:sticky;top:0;z-index:4}.eyebrow{margin:0 0 5px;color:#8793a7;font-size:9px;font-weight:800;letter-spacing:1.5px}.topbar h1{margin:0;font:700 21px Manrope}.topbar-actions,.user-menu{display:flex;align-items:center}.topbar-actions{gap:18px}.icon-button{width:38px;height:38px;border:1px solid var(--line);background:#fff;border-radius:10px;position:relative;color:#748198}.icon-button span{position:absolute;width:6px;height:6px;border-radius:50%;background:#ed596a;right:8px;top:7px}.user-menu{gap:10px;padding-left:18px;border-left:1px solid var(--line)}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#e8edff;color:#315be8;font-weight:800}.user-menu>div{display:flex;flex-direction:column;min-width:135px}.user-menu strong{font-size:12px}.user-menu small{font-size:10px;color:#8a95a8;margin-top:2px}.logout-button{border:0;background:transparent;color:#7a879c;font-size:11px;cursor:pointer;padding:7px}.logout-button:hover{color:#d24e5b}.page-content{padding:30px 36px 48px;max-width:1540px;margin:auto}.welcome-banner{position:relative;overflow:hidden;background:linear-gradient(125deg,#182d4f,#254978);color:#fff;border-radius:18px;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;box-shadow:var(--shadow)}.welcome-banner:after{content:"";position:absolute;width:270px;height:270px;border:55px solid rgba(255,255,255,.05);border-radius:50%;right:110px;top:-110px}.status-pill{display:inline-flex;align-items:center;gap:7px;font-size:10px;font-weight:600;color:#b9c9df;background:rgba(255,255,255,.08);padding:6px 10px;border-radius:20px}.status-pill i{width:6px;height:6px;background:#43d5aa;border-radius:50%;box-shadow:0 0 0 4px rgba(67,213,170,.13)}.welcome-banner h2{font:700 25px Manrope;margin:16px 0 6px}.welcome-banner p{margin:0;color:#bfcce0;font-size:13px}.banner-date{z-index:1;min-width:115px;display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center;padding-left:25px;border-left:1px solid rgba(255,255,255,.15)}.banner-date>span{grid-column:1/-1;font-size:10px;text-transform:uppercase;color:#a9bad2}.banner-date strong{font:800 38px Manrope}.banner-date small{font-size:11px;color:#c4d0e0}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.metric-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:19px;display:flex;align-items:center;gap:14px;box-shadow:0 3px 13px rgba(20,35,65,.025)}.metric-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:10px;font-weight:800}.metric-icon.blue{background:#eaf0ff;color:#315be8}.metric-icon.green{background:#e7f8f3;color:#15967c}.metric-icon.purple{background:#f0ebff;color:#7755d8}.metric-icon.orange{background:#fff1e5;color:#df7a25}.metric-card>div:nth-child(2){display:flex;flex-direction:column}.metric-card span{font-size:11px;color:#7f8b9d}.metric-card strong{font:800 25px Manrope;margin-top:2px}.metric-arrow{margin-left:auto!important;font-size:15px!important;color:#a1acbc!important}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:18px}.panel-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;min-height:315px}.panel-heading{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid #edf0f4}.panel-heading h3,.quick-start h3{font:700 16px Manrope;margin:0}.text-link{font-size:10px;color:#728096;background:#f5f7fa;border-radius:20px;padding:6px 9px}.empty-state{height:235px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-state.compact{height:230px}.empty-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:#edf2ff;color:#4968d7;font-size:11px;font-weight:800;margin-bottom:12px}.empty-state h4{font:700 13px Manrope;margin:0 0 6px}.empty-state p{font-size:11px;color:#8490a2;max-width:320px;line-height:1.55;margin:0}.section-list{display:flex;flex-direction:column}.section-row{display:grid;grid-template-columns:38px minmax(160px,1fr) 80px 120px;gap:12px;align-items:center;padding:14px 2px;border-bottom:1px solid #f0f2f5}.course-badge{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#eef2ff;color:#4965cd;font-size:9px;font-weight:800}.section-name,.section-period{display:flex;flex-direction:column}.section-name strong{font-size:12px}.section-name small,.section-period span{font-size:10px;color:#8b96a8;margin-top:3px}.section-period strong{font-size:11px;margin-top:2px}.seat-progress>span{display:block;text-align:right;color:#8290a3;font-size:9px;margin-bottom:6px}.seat-progress>span b{color:#354056}.seat-progress>div{height:5px;background:#edf0f4;border-radius:10px;overflow:hidden}.seat-progress i{display:block;height:100%;background:#4d72eb;border-radius:10px}.period-list{padding-top:4px}.period-row{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;padding:13px 0;border-bottom:1px solid #f0f2f5}.period-date{width:40px;height:43px;border:1px solid var(--line);border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center}.period-date strong{font:800 15px Manrope}.period-date span{font-size:8px;color:#8591a3}.period-row>div:nth-child(2){display:flex;flex-direction:column}.period-row>div:nth-child(2) strong{font-size:11px}.period-row>div:nth-child(2) small{font-size:9px;color:#8c97a8;margin-top:3px}.period-status{font-size:8px;padding:5px 7px;border-radius:10px;background:#eef1f5;color:#647086}.period-status.active{background:#e5f7f1;color:#16826f}.quick-start{margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:center}.quick-start p{font-size:11px;color:#8190a3;line-height:1.5;margin:6px 0 0}.step-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.step-list>div{border:1px solid var(--line);border-radius:12px;padding:13px;display:flex;flex-direction:column}.step-list span{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#edf2ff;color:#3e61d3;font-size:9px;font-weight:800;margin-bottom:9px}.step-list strong{font-size:10px}.step-list small{font-size:8px;color:#9aa4b2;margin-top:3px}
.login-body{min-height:100vh;background:#fff;display:grid;grid-template-columns:minmax(420px,46%) 1fr}.login-panel{position:relative;overflow:hidden;background:linear-gradient(145deg,#10213c 0%,#1b3b66 100%);padding:42px 7vw;color:#fff;display:flex;flex-direction:column}.brand-dark{padding:0;position:relative;z-index:2}.login-copy{position:relative;z-index:2;margin:auto 0;max-width:520px}.login-kicker{font-size:10px;letter-spacing:2px;font-weight:700;color:#8da6cc}.login-copy h1{font:800 clamp(36px,4.2vw,62px)/1.08 Manrope;margin:20px 0}.login-copy h1 em{font-style:normal;color:#7f9cff}.login-copy p{font-size:15px;line-height:1.7;color:#b5c4da;max-width:480px}.login-stat-row{position:relative;z-index:2;display:flex;gap:45px;border-top:1px solid rgba(255,255,255,.12);padding-top:22px}.login-stat-row div{display:flex;flex-direction:column}.login-stat-row strong{font:700 20px Manrope}.login-stat-row span{font-size:10px;color:#899dbb;margin-top:3px}.orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-one{width:300px;height:300px;right:-120px;top:11%;border:65px solid rgba(90,126,245,.12)}.orb-two{width:180px;height:180px;left:-80px;bottom:16%;background:rgba(42,190,164,.06)}.grid-decoration{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,transparent,#000,transparent)}.login-form-side{display:flex;align-items:center;justify-content:center;padding:50px}.login-form-wrap{width:100%;max-width:410px}.mobile-brand{display:none}.login-form-wrap h2{font:800 30px Manrope;margin:6px 0 8px;letter-spacing:-.7px}.form-intro{color:#7f8a9d;font-size:13px;margin:0 0 32px}.login-form label{display:block;font-size:11px;font-weight:700;margin:18px 0 8px}.label-row{display:flex;justify-content:space-between;align-items:end}.label-row label{margin-bottom:8px}.label-row span{font-size:9px;color:#98a1ae;margin-bottom:8px}.input-wrap{height:50px;border:1px solid #dfe4eb;border-radius:11px;display:flex;align-items:center;padding:0 14px;transition:.2s}.input-wrap:focus-within{border-color:#5575e7;box-shadow:0 0 0 3px rgba(85,117,231,.1)}.input-wrap>span{color:#8794a8;font-weight:700;margin-right:11px}.input-wrap input{border:0;outline:0;width:100%;font-size:12px;color:#273247;background:transparent}.input-wrap input::placeholder{color:#adb5c1}.remember-row{display:flex!important;align-items:center;gap:8px!important;font-weight:500!important;color:#647186!important;margin:16px 0!important}.remember-row input{accent-color:#365edc}.primary-button{width:100%;height:50px;border:0;border-radius:11px;background:#315be8;color:#fff;font-weight:700;font-size:12px;display:flex;justify-content:center;align-items:center;gap:12px;cursor:pointer;box-shadow:0 8px 20px rgba(49,91,232,.2);transition:.2s}.primary-button:hover{background:#284fcf;transform:translateY(-1px)}.primary-button span{font-size:17px}.form-error{background:#fff0f1;border:1px solid #f5cbd0;color:#bc4451;font-size:11px;border-radius:9px;padding:10px 12px;margin-top:12px}.demo-access{margin-top:24px;padding:12px 14px;background:#f6f8fb;border:1px dashed #d9dfe8;border-radius:10px}.demo-access>span{display:block;color:#8a95a5;font-size:9px;text-transform:uppercase;letter-spacing:1px;font-weight:700}.demo-access p{font-size:11px;color:#4c596d;margin:5px 0 0}.login-footer{text-align:center;font-size:9px;color:#a1a9b5;margin-top:28px}
@media(max-width:1050px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.quick-start{grid-template-columns:1fr}.login-panel{padding:36px}.login-body{grid-template-columns:43% 1fr}.login-copy h1{font-size:38px}.login-stat-row{gap:18px}}
@media(max-width:760px){.sidebar{display:none}.main-content{margin-left:0;width:100%}.topbar{padding:0 18px;height:76px}.topbar h1{font-size:17px}.user-menu>div,.icon-button{display:none}.page-content{padding:18px}.metrics-grid{grid-template-columns:1fr 1fr}.welcome-banner{padding:22px}.banner-date{display:none}.step-list{grid-template-columns:1fr 1fr}.section-row{grid-template-columns:38px 1fr 90px}.section-period{display:none}.login-body{display:block}.login-panel{display:none}.login-form-side{min-height:100vh;padding:28px}.mobile-brand{display:flex;align-items:center;gap:10px;margin-bottom:70px;font:700 18px Manrope}.mobile-brand .brand-mark{width:38px;height:38px}.login-form-wrap h2{font-size:27px}}
@media(max-width:470px){.metrics-grid{grid-template-columns:1fr}.step-list{grid-template-columns:1fr}.section-row{grid-template-columns:38px 1fr}.seat-progress{display:none}.topbar-actions{gap:5px}.user-menu{padding-left:8px}}

.step-list>a{border:1px solid var(--line);border-radius:12px;padding:13px;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:.2s}.step-list>a:hover{border-color:#cbd5f6;transform:translateY(-1px);box-shadow:0 5px 15px rgba(35,58,100,.06)}.step-list>a small{color:#7589c4}
.alert{display:flex;align-items:center;gap:11px;border-radius:12px;padding:13px 16px;margin-bottom:16px;font-size:12px}.alert>span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;font-weight:800}.alert.success{background:#eaf8f4;color:#177a68;border:1px solid #c7ebdf}.alert.success>span{background:#ccf0e5}.alert.error{background:#fff1f2;color:#ad3f4d;border:1px solid #f4d0d4}.alert.error>span{background:#f8d9dd}.alert>div{display:flex;flex-direction:column}.alert small{margin-top:2px}.settings-hero{background:linear-gradient(135deg,#fff,#f8faff);border:1px solid var(--line);border-radius:var(--radius);padding:24px 26px;margin-bottom:18px;display:flex;align-items:center;justify-content:space-between}.settings-hero h2{font:800 22px Manrope;margin:4px 0 6px}.settings-hero p{font-size:12px;color:#7d899b;margin:0}.institution-selector{display:flex;flex-direction:column;gap:7px;min-width:250px}.institution-selector label{font-size:9px;font-weight:700;color:#8490a2;text-transform:uppercase;letter-spacing:.8px}.institution-selector select,.field input,.field select{height:43px;border:1px solid #dfe4eb;border-radius:9px;background:#fff;padding:0 12px;color:#344056;font-size:11px;outline:none}.institution-selector select:focus,.field input:focus,.field select:focus{border-color:#5878e8;box-shadow:0 0 0 3px rgba(88,120,232,.09)}.settings-layout{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:18px;align-items:start}.settings-main{display:flex;flex-direction:column;gap:18px}.form-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}.form-card.onboarding-card{max-width:880px;margin:0 auto}.form-card-heading{display:flex;align-items:center;gap:13px;padding-bottom:18px;border-bottom:1px solid #edf0f4}.form-card-heading>div{display:flex;flex-direction:column}.form-card-heading h3{font:700 16px Manrope;margin:0}.form-card-heading p{font-size:10px;color:#8995a7;margin:4px 0 0}.section-symbol,.step-number{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#edf2ff;color:#4161d2;font-size:10px;font-weight:800}.section-symbol.teal{background:#e7f7f3;color:#198a75}.section-symbol.orange{background:#fff0e4;color:#ce7024}.form-card-heading .record-status,.form-card-heading .count-badge{margin-left:auto}.settings-form{padding-top:20px}.form-grid{display:grid;gap:14px}.two-columns{grid-template-columns:1fr 1fr}.three-columns{grid-template-columns:repeat(3,1fr)}.span-two-field{grid-column:span 2}.field{display:flex;flex-direction:column;gap:7px}.field label{font-size:10px;font-weight:700;color:#546176}.field input::placeholder{color:#b0b8c5}.switch-field{display:flex;align-items:center;gap:10px;margin-top:17px;cursor:pointer;width:max-content}.switch-field>input[type=checkbox]{display:none}.switch-field>span{position:relative;width:34px;height:19px;border-radius:20px;background:#cdd4de;transition:.2s}.switch-field>span:after{content:"";position:absolute;width:13px;height:13px;border-radius:50%;background:#fff;left:3px;top:3px;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.2s}.switch-field>input:checked+span{background:#3b65e2}.switch-field>input:checked+span:after{left:18px}.switch-field>div{display:flex;flex-direction:column}.switch-field strong{font-size:10px}.switch-field small{font-size:9px;color:#929dab;margin-top:2px}.small-switch{margin-top:13px}.form-actions{display:flex;justify-content:flex-end;margin-top:17px;padding-top:16px;border-top:1px solid #edf0f4}.secondary-button{height:37px;border:1px solid #d8deea;border-radius:9px;background:#fff;color:#42506a;font-size:10px;font-weight:700;padding:0 16px;cursor:pointer}.secondary-button:hover{border-color:#9aace8;color:#315be8}.compact-button{width:auto;height:39px;padding:0 18px;font-size:10px}.record-list{padding:7px 0}.editable-record{border-bottom:1px solid #edf0f4}.editable-record summary{list-style:none;display:flex;align-items:center;gap:11px;padding:13px 2px;cursor:pointer}.editable-record summary::-webkit-details-marker{display:none}.record-avatar{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:#eef3ff;color:#4a66c9;font-size:9px;font-weight:800}.editable-record summary>div{display:flex;flex-direction:column;min-width:0}.editable-record summary strong{font-size:11px}.editable-record summary small{font-size:9px;color:#8b97a8;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.record-status{font-size:8px;padding:5px 8px;border-radius:12px;background:#f0f2f5;color:#778396;margin-left:auto}.record-status.active{background:#e5f7f1;color:#14816e}.edit-hint{font-size:8px;color:#8b97a7;min-width:45px;text-align:right}.inline-edit-form{background:#f8f9fb;border-radius:11px;padding:16px;margin:0 0 14px 46px}.inline-edit-form .secondary-button{margin-top:14px}.create-disclosure{margin-top:12px;border:1px dashed #ccd5e3;border-radius:12px}.create-disclosure>summary{list-style:none;padding:13px 15px;color:#4863ba;font-size:10px;font-weight:700;cursor:pointer}.create-disclosure>summary::-webkit-details-marker{display:none}.create-disclosure>summary span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:6px;background:#eaf0ff;margin-right:7px}.nested-form{padding:4px 15px 16px}.mini-empty{display:flex;align-items:center;justify-content:center;gap:11px;padding:25px}.mini-empty>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#f0f3f9;color:#8190a8;font-size:9px;font-weight:800}.mini-empty>div{display:flex;flex-direction:column}.mini-empty strong{font-size:10px}.mini-empty small{font-size:9px;color:#909bab;margin-top:3px}.period-calendar{display:flex;flex-direction:column;align-items:center;justify-content:center;width:40px;height:42px;border:1px solid #e0e5ed;border-radius:9px}.period-calendar b{font-size:10px}.period-calendar small{font-size:8px!important;text-transform:uppercase}.current-badge{font-size:8px;padding:5px 7px;border-radius:10px;background:#edf1ff;color:#4562c6;margin-left:auto}.period-record .record-status{margin-left:0}.settings-aside{position:sticky;top:112px}.progress-card,.new-institution-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:19px}.progress-ring{width:92px;height:92px;border-radius:50%;display:grid;place-items:center;margin:15px auto 20px;background:conic-gradient(#4068e4 0 67%,#e8ecf2 67%);position:relative}.progress-ring:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;background:#fff}.progress-ring strong{position:relative;z-index:1;font:800 17px Manrope}.check-row{display:flex;align-items:center;gap:8px;color:#909bab;font-size:9px;padding:7px 0}.check-row span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#f0f2f5}.check-row.done{color:#425068}.check-row.done span{background:#ddf5ed;color:#15806c}.new-institution-card{margin-top:14px;padding:0}.new-institution-card>summary{list-style:none;padding:15px 17px;font-size:10px;font-weight:700;color:#4961b5;cursor:pointer}.new-institution-card>summary::-webkit-details-marker{display:none}.aside-form{padding:0 14px 14px}.aside-form .form-grid{grid-template-columns:1fr}.aside-form .switch-field{width:auto}.aside-form .secondary-button{margin-top:12px;width:100%}
@media(max-width:1100px){.settings-layout{grid-template-columns:1fr}.settings-aside{position:static}.progress-card{display:none}}
@media(max-width:760px){.settings-hero{align-items:flex-start;gap:18px;flex-direction:column}.institution-selector{width:100%;min-width:0}.two-columns,.three-columns{grid-template-columns:1fr}.span-two-field{grid-column:auto}.inline-edit-form{margin-left:0}.period-record .current-badge{display:none}}
.dependency-empty{background:#fff;border:1px solid var(--line);border-radius:var(--radius);min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.dependency-empty>span{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:#edf2ff;color:#4564cf;font-size:11px;font-weight:800}.dependency-empty h3{font:700 16px Manrope;margin:14px 0 5px}.dependency-empty p{font-size:11px;color:#8995a7;margin:0 0 18px}.dependency-empty a{display:flex}.offer-top-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.program-list,.compact-course-list{padding-top:7px}.program-row{display:flex;align-items:center;gap:11px;padding:12px 9px;text-decoration:none;color:inherit;border-bottom:1px solid #edf0f4;border-radius:9px}.program-row:hover,.program-row.selected{background:#f4f7ff}.program-row>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#edf2ff;color:#4260c8;font-size:9px;font-weight:800}.program-row>div{display:flex;flex-direction:column}.program-row strong{font-size:11px}.program-row small{font-size:9px;color:#8a96a7;margin-top:3px}.program-row>b{margin-left:auto;color:#98a3b3}.section-symbol.purple{background:#f0ebff;color:#7253d0}.selected-program-card{margin-top:18px}.program-edit{border-bottom:1px solid #edf0f4}.program-edit>summary{list-style:none;color:#5068b9;font-size:9px;font-weight:700;padding:12px 2px;cursor:pointer}.program-edit>summary::-webkit-details-marker{display:none}.subsection-heading{display:flex;align-items:center;justify-content:space-between;margin-top:18px}.subsection-heading h4{font:700 14px Manrope;margin:0}.subsection-heading>span{font-size:9px;color:#8793a5}.curricula-tabs{display:flex;gap:10px;align-items:flex-start;overflow:auto;padding-top:13px}.curricula-tabs>a{min-width:155px;border:1px solid var(--line);border-radius:11px;padding:12px;text-decoration:none;color:inherit;display:flex;flex-direction:column}.curricula-tabs>a.active{border-color:#7890e7;background:#f5f7ff;box-shadow:inset 0 0 0 1px #7890e7}.curricula-tabs>a strong{font-size:10px}.curricula-tabs>a small{font-size:9px;color:#8894a6;margin:3px 0 8px}.curricula-tabs>a span{font-size:8px;color:#52705f}.new-plan{min-width:155px;border:1px dashed #ccd5e3;border-radius:11px}.new-plan>summary{list-style:none;padding:14px;color:#5269bc;font-size:10px;font-weight:700;cursor:pointer}.new-plan>summary::-webkit-details-marker{display:none}.new-plan[open]{min-width:430px}.new-plan .settings-form{padding:10px 14px 14px}.curriculum-workspace{display:grid;grid-template-columns:260px 1fr;gap:18px;margin-top:18px;align-items:start}.cycle-list{padding-top:8px}.cycle-list>div{display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;padding:10px 2px;border-bottom:1px solid #edf0f4}.cycle-list>div>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#fff1e7;color:#c66c27;font-size:9px;font-weight:800}.cycle-list strong{font-size:10px}.cycle-list small{font-size:8px;color:#909bab}.plan-course-list{padding-top:7px}.plan-course-row{display:grid;grid-template-columns:31px 1fr auto;gap:11px;align-items:center;padding:12px 2px;border-bottom:1px solid #edf0f4}.plan-course-row>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#e9f7f3;color:#168573;font-size:9px;font-weight:800}.plan-course-row>div{display:flex;flex-direction:column}.plan-course-row strong{font-size:11px}.plan-course-row small{font-size:9px;color:#8b97a7;margin-top:3px}.plan-course-row>b{font-size:8px;color:#667388;background:#f1f3f6;border-radius:10px;padding:5px 7px}.offer-top-grid .inline-edit-form{margin-left:0}.offer-top-grid .form-card{min-width:0}
@media(max-width:1050px){.offer-top-grid,.curriculum-workspace{grid-template-columns:1fr}.cycle-panel{position:static}.cycle-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cycle-list>div{border:1px solid var(--line);border-radius:9px;padding:9px}}
@media(max-width:600px){.offer-top-grid{grid-template-columns:1fr}.cycle-list{grid-template-columns:1fr}.new-plan[open]{min-width:300px}.curricula-tabs{flex-direction:column}.curricula-tabs>a,.new-plan{width:100%}}
.directory-header{background:linear-gradient(135deg,#182d4f,#285080);color:#fff;border-radius:var(--radius);padding:25px 28px;display:flex;align-items:center;justify-content:space-between}.directory-header h2{font:800 22px Manrope;margin:4px 0 5px}.directory-header p{font-size:11px;color:#bdcadc;margin:0}.directory-header .eyebrow{color:#9db1cd}.directory-header .primary-button{background:#fff;color:#294c80;box-shadow:none}.directory-filters{display:grid;grid-template-columns:minmax(260px,1fr) 220px 160px auto;gap:10px;margin:16px 0}.directory-filters select,.search-box{height:43px;border:1px solid var(--line);border-radius:10px;background:#fff}.directory-filters select{padding:0 11px;font-size:10px;color:#536176}.search-box{display:flex;align-items:center;padding:0 12px}.search-box span{color:#8c98a8;font-size:17px;margin-right:8px}.search-box input{border:0;outline:0;width:100%;font-size:11px;color:#38455a}.directory-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.directory-summary{display:flex;align-items:baseline;gap:6px;padding:17px 20px;border-bottom:1px solid #edf0f4}.directory-summary strong{font:800 17px Manrope}.directory-summary span{font-size:10px;color:#8591a2}.directory-row{display:grid;grid-template-columns:minmax(240px,1.4fr) .55fr 1fr .45fr 50px;gap:14px;align-items:center}.directory-labels{padding:10px 20px;background:#f8f9fb;color:#8995a6;text-transform:uppercase;font-size:8px;font-weight:800;letter-spacing:.7px}.directory-record{border-bottom:1px solid #edf0f4}.directory-record>summary{list-style:none;padding:14px 20px;cursor:pointer;font-size:10px}.directory-record>summary::-webkit-details-marker{display:none}.directory-record>summary:hover{background:#fafbfc}.directory-record>summary>b{font-size:8px;color:#8e99a9;text-align:right}.person-cell{display:flex;align-items:center;gap:11px;min-width:0}.person-cell>span{display:grid;place-items:center;flex:0 0 auto;width:37px;height:37px;border-radius:11px;background:#eaf0ff;color:#4263d0;font-size:9px;font-weight:800}.person-cell.teacher-avatar>span{background:#e6f7f2;color:#168673}.person-cell>div{display:flex;flex-direction:column;min-width:0}.person-cell strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person-cell small{font-size:9px;color:#8b97a8;margin-top:3px}.directory-edit{padding:18px 20px 20px;background:#f8f9fb;border-top:1px solid #edf0f4}.profile-fields{margin:14px 0}.directory-empty{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center}.directory-empty>span{display:grid;place-items:center;width:47px;height:47px;border-radius:13px;background:#edf2ff;color:#4664ce;font-size:10px;font-weight:800}.directory-empty h3{font:700 13px Manrope;margin:12px 0 4px}.directory-empty p{font-size:10px;color:#8b97a7;margin:0}.pagination-wrap{padding:12px 20px}.pagination-wrap nav{font-size:10px}.form-dialog{width:min(920px,calc(100% - 30px));max-height:90vh;border:0;border-radius:17px;padding:0;box-shadow:0 25px 80px rgba(16,29,53,.24);color:var(--ink)}.form-dialog::backdrop{background:rgba(13,25,46,.58);backdrop-filter:blur(3px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 23px;border-bottom:1px solid var(--line)}.dialog-heading h3{font:700 18px Manrope;margin:0}.dialog-heading button{width:32px;height:32px;border:0;border-radius:9px;background:#f1f3f6;color:#7a8798;font-size:19px;cursor:pointer}.dialog-body{padding:22px;overflow:auto}.form-divider{display:flex;align-items:center;margin:22px 0 15px;color:#526075;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.form-divider:after{content:"";height:1px;background:#e6eaf0;flex:1;margin-left:12px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;padding:15px 22px;border-top:1px solid var(--line);background:#fafbfc}.form-dialog .primary-button{width:auto}.form-dialog form{margin:0}
@media(max-width:950px){.directory-filters{grid-template-columns:1fr 1fr}.directory-row{grid-template-columns:minmax(220px,1.3fr) .6fr 1fr .5fr}.directory-row>*:last-child{display:none}}
@media(max-width:680px){.directory-header{align-items:flex-start;gap:18px;flex-direction:column}.directory-filters{grid-template-columns:1fr}.directory-row{grid-template-columns:1fr .55fr}.directory-row>*:nth-child(3),.directory-row>*:nth-child(4){display:none}.directory-labels span:nth-child(2){display:block}.dialog-body{padding:16px}}
.no-institution-notice{display:flex;align-items:center;gap:11px;margin:16px 0 0;padding:13px 16px;background:#fff8e9;border:1px solid #f1dfb6;border-radius:11px}.no-institution-notice>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#ffedc7;color:#a86c1c;font-size:9px;font-weight:800}.no-institution-notice>div{display:flex;flex-direction:column}.no-institution-notice strong{font-size:10px}.no-institution-notice small{font-size:9px;color:#8c7a5d;margin-top:2px}.no-institution-notice a{margin-left:auto;text-decoration:none;color:#8e5d19;font-size:9px;font-weight:700}
.plan-edit,.cycle-edit,.plan-course-edit{border-bottom:1px solid #edf0f4}.plan-edit>summary{list-style:none;padding:12px 2px;color:#4f68bd;font-size:9px;font-weight:700;cursor:pointer}.plan-edit>summary::-webkit-details-marker,.cycle-edit>summary::-webkit-details-marker,.plan-course-edit>summary::-webkit-details-marker{display:none}.plan-edit>form,.plan-course-edit>form{padding:15px;background:#f8f9fb;border-radius:10px;margin-bottom:10px}.cycle-list>.cycle-edit{display:block}.cycle-edit>summary{list-style:none;display:grid;grid-template-columns:28px 1fr auto;gap:9px;align-items:center;padding:10px 2px;cursor:pointer}.cycle-edit>summary>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:#fff1e7;color:#c66c27;font-size:9px;font-weight:800}.cycle-edit>summary strong{font-size:10px}.cycle-edit>summary small{font-size:8px;color:#7e8ba0}.cycle-edit>form{padding:12px;background:#f8f9fb;border-radius:9px}.cycle-edit>form .field{margin-bottom:10px}.plan-course-edit>summary{list-style:none;cursor:pointer}.plan-course-edit[open]{background:#f8f9fb;border-radius:10px}.plan-course-edit[open]>.plan-course-row{padding-left:10px;padding-right:10px}.plan-course-edit>form{margin:0 10px 12px}.plan-course-row b{white-space:nowrap}
.form-dialog[open]{display:flex;flex-direction:column}.form-dialog>form{display:flex;flex-direction:column;min-height:0}.form-dialog .dialog-body{flex:1;min-height:0;overflow:auto}.form-dialog .dialog-actions{flex:0 0 auto}
.settings-form>button,.nested-form>button,.inline-edit-form>button,.directory-edit>button{margin-top:22px}.settings-form>.switch-field+button,.nested-form>.switch-field+button{margin-top:24px}.create-disclosure .nested-form{padding-bottom:20px}.dialog-actions button{margin-top:0}
.danger-button{height:35px;border:1px solid #f0c9ce;border-radius:9px;background:#fff5f6;color:#bd4a57;font-size:9px;font-weight:700;padding:0 13px;cursor:pointer}.danger-button:hover{background:#ffecef;border-color:#e6aeb5}.split-actions,.inline-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.inline-actions{margin-top:20px}.inline-actions button{margin-top:0!important}.trash-hero{background:linear-gradient(135deg,#182d4f,#294e7d);border-radius:var(--radius);color:#fff;padding:25px 28px;display:flex;align-items:center;justify-content:space-between}.trash-hero h2{font:800 22px Manrope;margin:4px 0 5px}.trash-hero p{font-size:11px;color:#bdcadc;margin:0}.trash-hero .eyebrow{color:#9db1cd}.trash-total{display:flex;flex-direction:column;align-items:center;font:800 28px Manrope;border-left:1px solid rgba(255,255,255,.15);padding-left:30px}.trash-total small{font:500 9px "DM Sans";color:#aebed5}.trash-filters{display:flex;gap:7px;overflow:auto;padding:16px 0}.trash-filters a{white-space:nowrap;text-decoration:none;color:#657287;background:#fff;border:1px solid var(--line);border-radius:20px;padding:7px 10px;font-size:9px;font-weight:600}.trash-filters a span{margin-left:5px;color:#929cab}.trash-filters a.active{background:#315be8;border-color:#315be8;color:#fff}.trash-filters a.active span{color:#dce4ff}.trash-card,.active-records-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.trash-group-heading{display:flex;align-items:center;justify-content:space-between;padding:11px 18px;background:#f8f9fb;border-bottom:1px solid #edf0f4}.trash-group-heading strong{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:#667388}.trash-group-heading span{font-size:8px;color:#8e99aa}.trash-row{display:flex;align-items:center;gap:11px;padding:13px 18px;border-bottom:1px solid #edf0f4}.trash-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f1f3f7;color:#758399;font-size:9px;font-weight:800}.trash-row>div{display:flex;flex-direction:column;min-width:0}.trash-row strong{font-size:11px}.trash-row small{font-size:9px;color:#8c97a8;margin-top:3px}.deleted-date{margin-left:auto;font-size:9px;color:#8c97a8}.restore-button{height:33px;border:1px solid #cad7fb;border-radius:9px;background:#f3f6ff;color:#4663c8;font-size:9px;font-weight:700;padding:0 13px;cursor:pointer}.trash-empty{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center}.trash-empty>span{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#e6f7f1;color:#16836f;font-weight:800}.trash-empty h3{font:700 13px Manrope;margin:12px 0 4px}.trash-empty p{font-size:10px;color:#8d98a8;margin:0}.active-records-card{margin-top:18px}.active-records-heading{padding:20px 22px;border-bottom:1px solid #edf0f4}.active-records-heading h3{font:700 15px Manrope;margin:0}.active-records-heading p{font-size:10px;color:#8995a6;margin:4px 0 0}.active-trash-row .danger-button{margin-left:auto}
/* Identidad BitCollege */
.brand-logo{width:44px;height:44px;object-fit:cover;border-radius:11px;background:#fff;box-shadow:0 4px 14px rgba(3,19,61,.22);flex:0 0 auto}.brand-dark .brand-logo{width:54px;height:54px}.mobile-brand .brand-logo{width:42px;height:42px}
.topbar-title{display:flex;align-items:center;gap:12px}.topbar-logo{width:40px;height:40px;object-fit:cover;border-radius:10px;background:#fff;border:1px solid var(--line);box-shadow:0 3px 10px rgba(24,45,79,.08);flex:0 0 auto}
@media(max-width:760px){.topbar-title{gap:9px}.topbar-logo{width:34px;height:34px;border-radius:9px}}
