/* CUA brand colors remain distinct from the high-contrast workflow signals. */
:root{color-scheme:light;--red:#a6192e;--navy:#12345b;--ink:#17202a;--muted:#5f6b78;--line:#dce3ea;--soft-line:#e1e7ec;--canvas:#f1f3f5;--paper:#fff;--limestone:#efebe9;--sandstone:#f7f3ed;--sidebar:220px;--masthead:72px;--radius:4px;--cardinal:var(--red);--ink-soft:#344b5d;--success:#067647;--success-text:#067647;--success-soft:#ecfdf3;--success-line:#a9d5bf;--warning:#875000;--warning-fill:#f4b400;--warning-soft:#fff9e9;--warning-line:#e3a500;--error:#b42318;--error-soft:#fff4f4;--error-line:#b42318;--info:#005eb8;--info-soft:#f1f7fd;--info-line:#005eb8;--ease:cubic-bezier(.2,.6,.3,1);--motion:160ms;--header-bg:var(--navy);--header-fg:#fff;--header-muted:#d6e3ee;--header-line:#45647e;--side-bg:#fff;--side-text:#293d4e;--side-muted:#586b7b;--side-line:#d2dce4;--side-active-bg:var(--navy);--side-active-text:#fff}
body[data-theme="navy-sidebar"],body[data-theme="light"]{--header-bg:#fff;--header-fg:var(--navy);--header-muted:#526473;--header-line:#ccd6de}
body[data-theme="navy-sidebar"]{--side-bg:var(--navy);--side-text:#f4f7fa;--side-muted:#c4d5e3;--side-line:#365a77;--side-active-bg:#1c537c;--side-active-text:#fff}
*{box-sizing:border-box}
html{min-width:280px;scroll-behavior:smooth;scroll-padding-top:calc(var(--masthead) + 18px)}
body{margin:0;font:14px/1.55 Arial,Helvetica,sans-serif;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased}
button,input,textarea,select{font:inherit}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{color:inherit}
button:not(:disabled),summary{cursor:pointer}
button:disabled{cursor:not-allowed;opacity:.55}
a{color:var(--navy);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:3px}
:focus-visible{outline:3px solid #668eaf;outline-offset:3px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--navy);outline-offset:1px;border-color:var(--navy)}
button svg,a svg{pointer-events:none}
img,svg{max-width:100%}
svg{vertical-align:middle}
h1,h2,h3,h4,p{margin:0}
h1,h2,h3,h4{color:var(--navy);line-height:1.3;font-weight:700}
h1{font-size:30px;letter-spacing:-.45px}
h2{font-size:20px;letter-spacing:-.2px}
h3{font-size:16px}
h4{font-size:14px}
p{color:var(--muted)}
small{font-size:12px}
hr{margin:24px 0;border:0;border-top:1px solid var(--line)}
ul,ol{margin-top:0}
[hidden]{display:none!important}
::selection{background:#dce7ef;color:var(--navy)}
.icon{display:inline-block;flex:0 0 auto;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.muted,.text-muted{color:var(--muted)}
.text-small,.help-text{font-size:12px;color:var(--muted);line-height:1.6}
.text-link{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:var(--navy);font-size:12px;font-weight:600;line-height:1.5}
.text-link:hover{text-decoration:underline;text-underline-offset:3px}
.text-link>.icon{width:15px;height:15px}
.eyebrow{display:block;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase}
.stack{display:flex;flex-direction:column;gap:18px}
.inline{display:flex;align-items:center;gap:10px}
.spacer{flex:1}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;z-index:200;top:10px;left:10px;padding:10px 15px;border:2px solid var(--navy);border-radius:3px;color:var(--navy);background:white;transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
/* Official masthead and navigation */
.institution-header{position:sticky;top:0;z-index:80;display:flex;align-items:center;gap:20px;height:var(--masthead);width:100%;padding:5px 24px;background:var(--header-bg);color:var(--header-fg);border-top:3px solid var(--red);border-bottom:1px solid var(--header-line)}
.institution-logo{flex:0 0 auto;display:flex;align-items:center;padding:4px 9px;background:white;border:1px solid #fff;border-radius:3px}
.institution-logo img{display:block;width:220px;max-width:100%;height:auto;object-fit:contain}
.institution-title{display:flex;flex-direction:column;justify-content:center;gap:3px;min-height:39px;padding-left:20px;border-left:1px solid var(--header-line)}
.institution-title>span{display:block;color:var(--header-muted);font-size:10px;letter-spacing:.7px}
.institution-title>strong{display:block;color:var(--header-fg);font-size:18px;line-height:1.3;font-weight:700}
.institution-actions{display:flex;align-items:center;gap:14px;margin-left:auto}
.institution-actions .badge{font-size:9px;letter-spacing:.4px;padding:4px 6px;color:var(--header-muted);background:transparent;border-color:var(--header-line)}
.institution-actions .btn,.institution-actions .icon-button{color:var(--header-fg);border-color:var(--header-line);background:transparent;font-size:12px;min-height:34px}
.institution-actions .btn:hover,.institution-actions .icon-button:hover{color:var(--header-fg);background:rgb(128 150 170 / 17%);border-color:var(--header-muted)}
.header-clock{display:flex;align-items:center;gap:9px;min-width:112px;line-height:1.3;color:var(--header-fg)}
.header-clock>.icon{width:19px;height:19px;color:var(--header-muted)}
.header-clock>div{display:flex;flex-direction:column}
.header-clock time{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-size:16px;font-weight:600;letter-spacing:.2px;white-space:nowrap}
.header-clock small{color:var(--header-muted);font-size:10px;margin-top:4px;white-space:nowrap}
body[data-clock="off"] .header-clock{display:none}
.sidebar{position:fixed;top:var(--masthead);left:0;bottom:0;width:var(--sidebar);z-index:40;display:flex;flex-direction:column;padding:20px 12px 15px;border-right:1px solid var(--side-line);background:var(--side-bg);overflow-y:auto}
.sidebar-heading,.workspace-label{padding:0 12px;margin-bottom:14px;color:var(--side-muted);font-size:10px;font-weight:700;letter-spacing:.8px}
.sidebar .nav-item{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:11px;width:100%;min-height:42px;padding:10px 12px;margin-bottom:4px;color:var(--side-text);font-size:13px;font-weight:500;line-height:1.5;background:transparent;border:0;border-radius:3px;position:relative}
.sidebar .nav-item:hover{background:rgb(128 150 170 / 13%);color:var(--side-text);text-decoration:none}
.sidebar .nav-item.active{color:var(--side-active-text);background:var(--side-active-bg);font-weight:700}
.sidebar .nav-item.active::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:3px;background:var(--red)}
.nav-item .icon{width:18px;height:18px}
.nav-section-label{margin:23px 0 10px;padding:0 12px;color:var(--side-muted);font-size:9px;font-weight:700;letter-spacing:.75px}
.nav-dot,.badge-dot,.status-dot{flex:0 0 auto;width:5px;height:5px;border-radius:50%;background:currentColor;display:inline-block}
.nav-dot{color:var(--red);margin-left:auto}
.sidebar-bottom{margin-top:auto;padding-top:23px}
.sidebar-cycle{padding:15px 10px;border-top:1px solid var(--side-line);color:var(--side-muted);font-size:12px}
.sidebar-cycle strong{display:block;color:var(--side-text);font-size:12px;font-weight:700;margin-bottom:4px}
.sidebar-cycle span{display:block;font-size:11px}
.sidebar-bottom .profile-card{display:flex;align-items:center;gap:9px;padding:15px 7px 0;border-top:1px solid var(--side-line)}
.profile-card>div{flex:1;min-width:0}
.profile-card strong{display:block;color:var(--side-text);font-size:12px;font-weight:700}
.profile-card>div>span{display:block;color:var(--side-muted);font-size:10px;margin-top:3px}
.sidebar-bottom .profile-card .icon-button{width:26px;min-height:28px;padding:4px;color:var(--side-muted)}
.avatar{display:grid;place-items:center;flex:0 0 auto;width:34px;height:34px;border-radius:50%;background:#e8edf2;border:1px solid #dce3eb;color:var(--navy);font-size:11px;font-weight:600}
.avatar.avatar-sm{width:30px;height:30px;font-size:10px}
.workspace{min-height:calc(100vh - var(--masthead));margin-left:var(--sidebar)}
.topbar{height:42px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 26px;border-bottom:1px solid var(--line);background:white}
.breadcrumb{display:flex;align-items:center;gap:9px;font-size:11px;color:var(--muted)}
.breadcrumb strong{color:#4d6073;font-weight:500}
.breadcrumb>.icon{width:13px;height:13px}
.topbar-actions{display:flex;align-items:center;gap:14px}
.topbar .icon-button{position:relative}
.topbar .tour-button{font-size:12px}
.cycle-pill{display:inline-block;color:#6c7886;font-size:11px;padding:4px 8px;border:1px solid #e0e4e9;border-radius:3px;background:#f8f9fa}
.notification-dot{position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px white}
.page-content{max-width:1360px;margin:0 auto;padding:0 26px 28px}
.page-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0 18px}
.page-header h1{font-size:27px;letter-spacing:-.4px}
.page-header .eyebrow{font-size:9px;letter-spacing:.9px;margin-bottom:4px}
.page-header p{margin-top:5px;font-size:13px}
.page-header-actions{display:flex;align-items:center;flex:0 0 auto;flex-wrap:wrap;gap:10px}
.workspace-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;max-width:1300px;margin:0 30px;border-top:1px solid var(--line);padding:17px 0 22px;color:#86919b;font-size:11px}
.workspace-footer .text-link{font-size:11px;color:#6f7f8d;font-weight:400}
.topbar .mobile-menu,.mobile-backdrop{display:none}
/* Shared controls */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;min-height:40px;border:1px solid transparent;border-radius:4px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap;text-decoration:none;transition:background var(--motion) var(--ease),border-color var(--motion) var(--ease),box-shadow var(--motion) var(--ease)}
.btn:hover{text-decoration:none}
.btn>.icon{height:16px;width:16px}
.btn-primary{color:white;background:var(--navy);border-color:var(--navy)}
.btn-primary:hover{background:#072640;border-color:#072640}
.btn-cardinal{color:white;background:var(--red);border-color:var(--red)}
.btn-cardinal:hover{background:#941a25;border-color:#941a25}
.btn-secondary{color:var(--navy);background:white;border-color:#cbd4dd}
.btn-secondary:hover{background:#f3f6f8;border-color:#9aabb9}
.btn-ghost{color:#617285;border-color:transparent;background:transparent}
.btn-ghost:hover{background:#edf1f5;color:var(--navy)}
.btn-light{color:var(--navy);border-color:white;background:white}
.btn-sm{min-height:32px;padding:6px 10px;font-size:12px}
.btn-block,.btn-full{width:100%}
.btn-danger{color:var(--red);border-color:#e4bbc0;background:#fff7f8}
.btn-success{color:white;background:var(--success);border-color:var(--success)}
.btn-success:hover{background:#006d00;border-color:#006d00}
.btn-warning{color:var(--warning);border-color:var(--warning-line);background:var(--warning-soft)}
.btn[aria-busy=true]{cursor:progress}
.icon-button{display:inline-grid;place-items:center;width:33px;height:33px;min-height:33px;padding:5px;background:transparent;color:#67798a;border:1px solid transparent;border-radius:4px}
.icon-button:hover{color:var(--navy);background:#edf1f5}
.icon-button>.icon{width:17px;height:17px}
.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:3px;border:1px solid transparent;font-size:11px;font-weight:700;line-height:1.4;white-space:nowrap}
.badge>.icon{width:12px;height:12px}
.badge-neutral{color:#415462;background:#edf0f3;border-color:#cbd5de}
.badge-navy,.badge-info{color:white;background:var(--info);border-color:var(--info)}
.badge-success{color:#375246;background:#fff;border-color:#c3d5c8}
.badge-success>.icon,.badge-success>.badge-dot{color:var(--success)}
.badge-success:not(:has(.icon,.badge-dot))::before{content:"";display:block;flex-shrink:0;width:5px;height:5px;border-radius:50%;background:var(--success)}
.badge-warning{color:#352800;background:var(--warning-fill);border-color:var(--warning-fill)}
.badge-cardinal,.badge-error{color:white;background:var(--error);border-color:var(--error)}
.status-success{--state-color:var(--success);--state-soft:var(--success-soft);--state-line:var(--success-line)}
.status-warning{--state-color:var(--warning);--state-soft:var(--warning-soft);--state-line:var(--warning-line)}
.status-error{--state-color:var(--error);--state-soft:var(--error-soft);--state-line:var(--error-line)}
.status-info{--state-color:var(--info);--state-soft:var(--info-soft);--state-line:var(--info-line)}
.status-neutral{--state-color:#627381;--state-soft:#f4f6f8;--state-line:#dce3e9}
.status-success,.status-warning,.status-error,.status-info,.status-neutral{color:var(--state-color)}
.card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:white}
.card-header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 21px 0}
.card-header h2{font-size:17px}
.card-header h3{font-size:15px}
.card-header p{margin-top:5px;font-size:12px}
.card-header>.icon{width:18px;height:18px;color:#8190a0}
.card-header:has(.document-actions){flex-wrap:wrap}
.card-header>.document-actions{min-width:0;max-width:100%}
.card-body{padding:18px 21px 21px}
.card-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 23px;border-top:1px solid var(--line);background:#fbfcfd}
.card-footer>.help-text{display:inline-flex;align-items:center;gap:6px}
.card-footer>.help-text>.icon{width:13px;height:13px}
.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.section-title h2{font-size:18px}
.section-divider{height:1px;background:var(--line);margin:23px 0}
.section-divider+h3{margin-bottom:13px}
.page-content>.card+.card,.page-content>.integration-grid+.card,.page-content>.card+.notice{margin-top:22px}
.page-content>.review-layout{margin-top:22px}
.page-content>.stats-row{margin-bottom:22px}
.notice{display:flex;align-items:flex-start;gap:10px;padding:13px 15px;margin-bottom:18px;background:white;border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:3px;color:#344e63;font-size:12px;line-height:1.7}
.notice p{color:inherit;font-size:inherit}
.notice>.icon{width:17px;height:17px;margin-top:2px}
.notice.success{background:white;color:var(--success-text);border-color:var(--line);border-left-color:var(--success)}
.notice.warning{color:#724100;background:white;border-color:var(--line);border-left-color:var(--warning-fill)}
.notice.error{color:#ae0000;background:white;border-color:var(--line);border-left-color:var(--error)}
.notice.info{color:#164b78;background:white;border-color:var(--line);border-left-color:var(--info)}
.notice h3{color:inherit;margin-bottom:5px}
.notice .btn{margin-top:12px}
.save-status{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#4c6254;font-size:11px;font-weight:600}
.save-status .icon{width:14px;height:14px}
.save-status>.icon{width:17px;height:17px;padding:3px;background:var(--success);color:#fff;border-radius:50%;stroke-width:2.3}
.save-status.saving{color:var(--warning)}
.save-status.error{color:var(--error)}
.save-status.saving>.icon{background:var(--warning-fill);color:#352800}
.save-status.error>.icon{background:var(--error);color:white}
/* Overview */
.dashboard-grid,.status-layout,.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 284px;align-items:start;gap:20px}
.main-column,.aside-column{display:flex;flex-direction:column;gap:18px;min-width:0}
.application-card{border-top:3px solid var(--navy)}
.application-card .card-header{padding-top:17px}
.application-card .card-header .eyebrow{margin-bottom:5px}
.application-card .card-header h2{font-size:18px}
.application-summary{display:grid;grid-template-columns:1.15fr 1fr 1.2fr;gap:12px;padding-bottom:16px;margin-bottom:17px;border-bottom:1px solid var(--line)}
.application-summary>div{--metadata-accent:var(--navy);min-width:0;padding:11px 12px;border:1px solid #d5dee5;border-top:3px solid var(--metadata-accent);border-radius:3px;background:#fff}
.application-summary>.metadata-program,.application-summary>div:nth-child(1){--metadata-accent:var(--navy)}
.application-summary>.metadata-year,.application-summary>div:nth-child(2){--metadata-accent:#6b4a9a}
.application-summary>.metadata-credits,.application-summary>div:nth-child(3){--metadata-accent:#946200}
.application-summary>div>span{display:block;font-size:9px;color:#566b7b;letter-spacing:.4px;margin-bottom:6px}
.application-summary>div>strong{display:block;color:var(--metadata-accent);font-size:14px;font-weight:700;line-height:1.5}
.application-summary>div>strong small{color:#526473;font-size:11px;font-weight:400;white-space:nowrap}
.application-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:18px;color:#71808f;font-size:12px}
.application-meta>span{display:inline-flex;align-items:center;gap:6px}
.application-meta .icon{width:14px;height:14px}
.progress-label{display:flex;align-items:center;justify-content:space-between;gap:13px;margin:2px 0 10px;font-size:12px}
.progress-label>span{color:#788795}
.progress-label>strong{font-weight:600}
.progress-track{overflow:hidden;height:7px;background:#e0e6eb;border-radius:2px}
.progress-bar{height:100%;border-radius:2px;background:var(--navy);transition:width 180ms var(--ease)}
.application-next{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0 4px;margin-top:3px}
.application-next strong{display:block;font-size:13px;font-weight:600;color:var(--navy)}
.application-next p{font-size:12px;margin-top:3px}
.application-next .btn{flex-shrink:0}
.section-list{display:block;margin:0;padding:0 21px 18px}
.task-group+.task-group{margin-top:18px}
.task-group-title,.application-section-heading{padding:9px 0 8px;color:#263e52;font-size:11px;font-weight:700;letter-spacing:.45px;border-bottom:2px solid var(--navy)}
.section-list-item{display:flex;align-items:center;gap:12px;width:100%;min-height:61px;padding:11px 2px;border:0;border-bottom:1px solid var(--line);background:white;text-align:left;color:var(--navy)}
.section-list-item:hover{background:#f3f6f8}
.section-list-item:last-child{border-bottom:0}
.section-list-number{flex:0 0 auto;display:grid;place-items:center;width:26px;height:26px;border:1px solid #a9b7c3;border-radius:50%;color:#4b606f;font-size:11px;font-weight:600;background:white}
.section-list-number .icon{height:13px;width:13px}
.section-list-item.complete .section-list-number{background:var(--success);color:white;border:5px solid white}
.section-list-item.complete .section-list-number>.icon{width:11px;height:11px;stroke-width:2.2}
.section-list-copy{display:block;min-width:0;flex:1}
.section-list-copy strong{display:block;font-size:13px;font-weight:700;color:#1c3549}
.section-list-copy small{display:block;color:#536777;font-size:11px;margin-top:3px;line-height:1.5}
.section-list-item.complete .section-list-copy small{color:#536777}
.section-list-item.active .section-list-number{color:white;background:var(--info);border-color:var(--info)}
.section-list-item.active{box-shadow:inset 3px 0 0 var(--info);padding-left:10px;background:#f5f8fb}
.section-row-status{flex-shrink:0;display:inline-block;min-width:72px;text-align:center;font-size:10px;font-weight:700;line-height:1.4;padding:4px 7px;border:1px solid #c6d0d8;border-radius:3px;background:#f1f4f6;color:#465c6b}
.section-row-status.complete{background:transparent;border-color:transparent;color:#526473;font-weight:500}
.section-row-status.active{background:var(--info);border-color:var(--info);color:white}
.application-progress-number{display:flex;align-items:center;gap:14px;margin:2px 0 13px}
.application-progress-number>strong{color:var(--navy);font-size:32px;font-weight:700;line-height:1.15;letter-spacing:-1px;white-space:nowrap}
.application-progress-number>strong>span{font-size:20px;letter-spacing:-.3px;color:#566a79;font-weight:400}
.application-progress-number>div{flex:1;min-width:0}
.application-progress-number b{display:block;font-size:12px;color:var(--ink);font-weight:700}
.application-progress-number small{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:3px}
.application-progress-number>span{font-variant-numeric:tabular-nums;color:#40586a;font-size:12px;font-weight:700}
.section-list-item.error .section-list-number{color:white;background:var(--error);border-color:var(--error)}
.section-list-item.error .section-list-copy small{color:var(--error)}
.section-list-item>.icon{width:14px;height:14px;margin-left:auto;color:#95a4b0}
.deadline-card{background:white}
.deadline-card .card-body{padding:21px}
.deadline-card .eyebrow{color:var(--muted);font-size:10px}
.deadline-heading{display:flex;align-items:center;gap:14px;margin:17px 0}
.deadline-heading h3{font-size:13px;margin-bottom:6px;font-weight:600}
.deadline-heading>div>strong{display:block;font-size:14px;color:var(--ink);margin-bottom:5px;font-weight:700}
.deadline-heading p{font-size:12px;line-height:1.65}
.date-tile{flex-shrink:0;min-width:58px;border:1px solid #dce3e9;border-radius:4px;text-align:center;background:white;overflow:hidden}
.date-tile>span{display:block;padding:4px 8px;color:var(--red);background:#fbf2f3;font-size:10px;font-weight:600;letter-spacing:1px;border-bottom:1px solid #e8d5d8}
.date-tile>strong{display:block;padding:5px 8px;color:var(--navy);font-size:26px;font-weight:500;line-height:1.3}
.deadline-foot{display:flex;align-items:center;gap:6px;padding-top:13px;border-top:1px solid var(--line);color:#86919b;font-size:11px}
.deadline-foot .icon{width:13px;height:13px}
.portal-notice{padding:21px;background:white;border:1px solid var(--line);border-radius:4px}
.portal-notice h3{font-size:15px;margin-bottom:10px}
.portal-notice p{font-size:12px;line-height:1.8;margin-bottom:13px}
.portal-notice .btn{padding-left:0}
.requirements-list{margin:0;padding-left:17px;list-style:disc}
.requirements-list li{padding:4px 0;color:#6c8090;font-size:12px;line-height:1.7}
.requirements-list+.text-link{margin-top:15px}
.demo-tools{padding:17px 19px;background:#eef1f4;border:1px solid #dfe5ea;border-radius:4px}
.demo-tools h3{font-size:13px;margin-bottom:8px}
.demo-tools p{font-size:12px;line-height:1.7;margin-bottom:12px}
.demo-tools .btn{width:100%;margin-top:7px;justify-content:flex-start;font-size:12px;background:white;border-color:#d2dce4}
.demo-tools>.eyebrow{margin-bottom:9px}
.demo-tip{display:flex;align-items:flex-start;gap:9px;padding:4px}
.demo-tip>.icon{width:16px;height:16px;color:#8a98a4;margin-top:2px}
.demo-tip p,.demo-tip .text-link{font-size:12px;line-height:1.7}
.demo-tip .text-link{display:inline;text-decoration:underline;font-weight:500}
.timeline{margin:0;padding:0;list-style:none}
.timeline-item{display:flex;align-items:flex-start;gap:13px;padding-bottom:18px;position:relative}
.timeline-item:last-child{padding-bottom:0}
.timeline-item:not(:last-child)::after{content:"";position:absolute;left:12px;top:27px;bottom:1px;width:1px;background:#e0e6eb}
.timeline-dot{display:grid;place-items:center;position:relative;z-index:1;flex:0 0 auto;width:25px;height:25px;border:1px solid #d8e3ec;border-radius:50%;color:#507791;background:#eff4f8}
.timeline-dot .icon{width:12px;height:12px}
.timeline-dot[class*="status-"]{color:white;background:var(--state-color);border-color:var(--state-color)}
.timeline-dot.status-success{border:4px solid white;color:white;background:var(--success)}
.timeline-dot.status-warning{color:#352800;background:var(--warning-fill);border-color:var(--warning-fill)}
.timeline-dot.status-neutral{color:#506372;background:white;border-color:#a8b8c4}
.timeline-content{flex:1;min-width:0;padding-top:1px}
.timeline-content>div{display:flex;justify-content:space-between;align-items:baseline;gap:13px}
.timeline-content strong{font-size:12px;font-weight:600}
.timeline-content time{flex-shrink:0;color:#627381;font-size:11px}
.timeline-content p{font-size:12px;line-height:1.7;margin-top:5px}
.status-legend{display:flex;align-items:center;flex-wrap:wrap;gap:9px 18px;padding:12px 0;font-size:11px;color:var(--muted)}
.status-legend>span{display:inline-flex;align-items:center;gap:6px}
.status-legend .status-dot{width:6px;height:6px}
.process-flow{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:22px;list-style:none;margin:0 0 18px;padding:15px 19px 18px;background:white;border:1px solid var(--line);border-radius:var(--radius)}
.process-step{position:relative;display:flex;align-items:center;gap:10px;min-width:0;--step-color:#536777;--step-soft:#fff;--step-line:#cbd5de}
.process-step::after{content:"";position:absolute;top:auto;bottom:-18px;left:0;right:0;height:3px;background:var(--step-line)}
.process-marker{display:grid;place-items:center;position:relative;z-index:1;flex-shrink:0;width:28px;height:28px;margin:0;border:1px solid #aabac6;border-radius:50%;background:white;color:var(--step-color);font-size:12px;font-weight:700}
.process-marker>.icon{width:15px;height:15px}
.process-step>div{min-width:0}
.process-step strong{display:block;color:#253c4d;font-size:12px;font-weight:700;line-height:1.5}
.process-step small{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:2px}
.process-step.complete{--step-color:var(--navy);--step-soft:#fff;--step-line:#9cafbd}
.process-step.current{--step-color:var(--info);--step-soft:var(--info-soft);--step-line:var(--info-line)}
.process-step.current .process-marker{color:white;background:var(--info);border-color:var(--info);box-shadow:none}
.process-step.complete .process-marker{color:white;background:var(--success);border:5px solid white}
.process-step.complete .process-marker>.icon{width:12px;height:12px;stroke-width:2.2}
.process-step.attention .process-marker{color:#352800;background:var(--warning-fill);border-color:var(--warning-fill)}
.process-step.error .process-marker{color:white;background:var(--error);border-color:var(--error)}
.process-step.attention{--step-color:var(--warning);--step-soft:var(--warning-soft);--step-line:var(--warning-line)}
.process-step.error{--step-color:var(--error);--step-soft:var(--error-soft);--step-line:var(--error-line)}
.process-step.upcoming::after{background:#cbd5de}
.process-step.current::after{background-color:var(--info);background-image:linear-gradient(110deg,transparent 15%,rgb(255 255 255 / 58%) 35%,transparent 55%);background-size:200% 100%;animation:process-travel 2.8s linear infinite}
.process-step.attention::after{background:var(--warning-fill)}
@keyframes process-travel{from{background-position:160% 0}to{background-position:-60% 0}}
.checklist{display:flex;flex-direction:column;gap:16px;list-style:none;padding:0;margin:0}
.checklist-item{display:flex;align-items:flex-start;gap:10px}
.checklist-item>.icon{width:16px;height:16px;color:#64839b;margin-top:2px}
.checklist-item strong{display:block;color:var(--ink);font-size:12px;font-weight:600}
.checklist-item p{font-size:12px;margin-top:4px;line-height:1.7}
.number-circle,.checklist-mark{display:grid;place-items:center;flex:0 0 auto;width:23px;height:23px;margin-top:1px;border:1px solid #d8e3eb;border-radius:50%;background:#f1f5f8;color:#4b718b;font-size:11px}
.checklist-mark .icon{width:12px;height:12px}
/* Form */
.form-layout{display:grid;grid-template-columns:210px minmax(0,1fr);align-items:start;gap:20px}
.form-steps{position:sticky;top:calc(var(--masthead) + 20px);background:white;border:1px solid var(--line);border-radius:4px;padding:15px 10px}
.form-progress{padding:2px 9px 17px;margin-bottom:10px;border-bottom:1px solid var(--line)}
.form-progress strong{display:block;font-size:13px;font-weight:600}
.form-progress>span{display:block;margin:4px 0 11px;color:#8a97a3;font-size:12px}
.form-step{display:flex;align-items:center;gap:10px;width:100%;padding:11px 9px;min-height:42px;color:#657787;background:white;border:0;border-radius:3px;text-align:left;font-size:12px}
.form-step:hover{background:#f5f7f9;color:var(--navy)}
.form-step.active{background:var(--navy);color:white;font-weight:700;box-shadow:inset 3px 0 0 var(--red)}
.step-number{display:grid;place-items:center;flex:0 0 auto;width:23px;height:23px;font-size:11px;background:#f8fafb;border:1px solid #dce3e9;border-radius:50%}
.step-number .icon{width:12px;height:12px}
.form-step.active .step-number{color:var(--navy);background:white;border-color:white}
.form-step.complete:not(.active) .step-number{background:var(--success);color:white;border:4px solid white}
.form-step.complete:not(.active) .step-number>.icon{width:11px;height:11px;stroke-width:2.2}
.form-step.error:not(.active) .step-number{background:var(--error);color:white;border-color:var(--error)}
.form-step>.icon{width:12px;height:12px;margin-left:auto}
.form-step-help{display:flex;align-items:flex-start;gap:8px;padding-top:15px;margin:15px 9px 0;border-top:1px solid var(--line)}
.form-step-help>.icon{width:14px;height:14px;color:#8193a2;margin-top:2px}
.form-step-help p{font-size:11px;color:#8b98a3;line-height:1.7}
.form-panel{min-width:0;border-top:3px solid var(--navy)}
.form-panel>.card-header{padding:18px 23px 16px;border-bottom:1px solid var(--line);align-items:flex-start}
.form-panel .card-header .eyebrow{font-size:10px;margin-bottom:6px}
.form-panel .card-header h2{font-size:22px}
.form-panel .card-header p{margin-top:5px;font-size:12px}
.form-panel .card-header .save-status{margin-top:6px}
.form-panel .card-body{padding:21px 23px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.field{min-width:0}
.field.full{grid-column:1/-1}
.form-grid>.full{grid-column:1/-1}
.field label,.field-label{display:block;margin-bottom:7px;color:#3f5366;font-size:12px;font-weight:600}
.required{color:var(--red)}
.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,.input{width:100%;display:block;min-height:42px;padding:10px 11px;border:1px solid #cbd5de;border-radius:4px;background:white;color:var(--ink);font-size:13px;line-height:1.5}
.field input:hover,.field select:hover,.field textarea:hover{border-color:#a5b5c2}
.field input::placeholder,.field textarea::placeholder{color:#9aa6af;opacity:1}
.field input[readonly],.field input:disabled,.field select:disabled{color:#728393;background:#f5f7f9}
.field textarea{min-height:110px;resize:vertical}
.field .help-text{margin-top:6px;font-size:11px}
.field-error{display:block;color:var(--red);font-size:12px;margin-top:6px}
.field-error:empty{margin-top:0}
.field [aria-invalid=true],.field:has(.field-error:not(:empty)) input,.field:has(.field-error:not(:empty)) select,.field:has(.field-error:not(:empty)) textarea{border-color:var(--error);background:#fffafb}
.field [aria-invalid=true]:focus-visible{outline-color:var(--error)}
.form-navigation{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 26px;background:#fbfcfd;border-top:1px solid var(--line)}
.form-navigation>.help-text{font-size:11px;text-align:center}
.back-button>.icon{transform:rotate(180deg)}
.section-intro{margin-bottom:22px;font-size:13px;line-height:1.8}
.repeat-card{margin-bottom:16px;padding:19px;border:1px solid var(--line);background:#fbfcfd;border-radius:4px}
.repeat-header{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:17px}
.repeat-header strong{color:var(--navy);font-size:13px;font-weight:600}
.repeat-header .icon-button{min-height:26px;height:26px;width:26px;padding:4px}
.repeat-card .form-grid{gap:16px}
.repeat-card .checkbox-label{margin-top:13px;font-size:12px;color:var(--ink-soft)}
.repeat-card .checkbox-label input{accent-color:var(--success)}
.repeat-card .current-checkbox,.repeat-card .current-role{display:flex;align-items:center;gap:8px;margin-top:13px;font-size:12px;color:var(--ink-soft)}
.repeat-card .current-checkbox input,.repeat-card .current-role input{margin:0;accent-color:var(--success)}
.repeat-card+.btn+.notice,.form-grid+.notice{margin-top:22px}
.checkbox-label{display:flex;align-items:flex-start;gap:10px;color:#4e6273;font-size:12px;line-height:1.8;cursor:pointer}
input[type=checkbox],input[type=radio]{width:16px;height:16px;accent-color:var(--navy);cursor:pointer}
.checkbox-label input{flex-shrink:0;margin:4px 0 0}
.course-summary{display:flex;align-items:center;justify-content:space-between;gap:17px;padding:15px 18px;margin-bottom:22px;background:#f4f7fa;border:1px solid #dee6ee;border-radius:4px}
.course-summary strong{font-size:13px;font-weight:600}
.course-summary p{margin-top:5px;font-size:12px}
.credit-total{flex-shrink:0;text-align:right}
.credit-total>strong{display:block;font-size:24px;color:var(--navy);line-height:1.25}
.credit-total>span{display:block;font-size:11px;color:#8193a3;margin-top:3px}
.course-group{margin-top:23px}
.semester-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px;color:var(--navy);font-size:13px;font-weight:600}
.semester-title>span:last-child{color:#8c99a5;font-size:11px;font-weight:400}
.course-row{display:flex;align-items:flex-start;gap:12px;padding:13px 14px;margin-top:-1px;border:1px solid #dfe5ea;background:white}
.course-row:first-of-type{border-top-left-radius:4px;border-top-right-radius:4px}
.course-row:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px}
.course-row:hover{background:#f9fbfc}
.course-row.selected{position:relative;background:#f7f9fb;border-color:#a7bac9;box-shadow:inset 3px 0 0 var(--navy)}
.course-row.selected input[type=checkbox]{accent-color:var(--success)}
.course-row.selected .course-credits{color:var(--navy);background:#e4ebf1;font-weight:700}
.course-choice{display:flex;align-items:flex-start;flex:1;min-width:0;gap:11px;cursor:pointer}
.course-choice>input{flex-shrink:0;margin:4px 0 0}
.course-choice>span{min-width:0}
.course-choice strong{display:block;color:#375b76;font-size:12px;font-weight:600}
.course-choice>span>span{display:block;margin-top:3px;font-size:12px;line-height:1.5;color:#7f8f9c}
.course-credits{flex-shrink:0;margin-left:auto;color:#5c768b;font-size:12px;white-space:nowrap;background:#eaf0f5;padding:3px 7px;border-radius:3px}
.course-credit-input{display:flex;flex-direction:column;gap:5px;flex-shrink:0;max-width:105px;color:#7a8b99;font-size:10px}
.course-credit-input input{width:80px;height:32px;max-width:100%;padding:5px 7px;font-size:12px;border:1px solid #c7d4df;border-radius:3px;color:var(--navy);background:white}
.course-credit-input input:disabled{background:#f0f3f6;color:#9eabb5}
.course-group+.field-error+.help-text{margin-top:16px}
.semester-total{display:flex;align-items:center;justify-content:flex-end;gap:9px;padding:11px 14px;border:1px solid var(--line);border-top:0;background:#f5f7f9;border-radius:0 0 4px 4px;color:var(--navy);font-size:12px;font-weight:600;text-align:right}
.semester-total strong{font-size:13px}
.course-choice .course-session,.course-session{display:block;color:var(--muted);font-size:11px;font-weight:400;line-height:1.6;margin-top:4px}
.course-add-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;padding-top:15px;margin-bottom:4px}
.course-add-actions>.help-text{flex-basis:100%;margin-top:1px}
.narrative-prompt{padding:17px 19px;margin-bottom:22px;border-left:3px solid var(--navy);background:#f3f6f9}
.narrative-prompt .eyebrow{font-size:10px}
.narrative-prompt h3{font-size:17px;margin:10px 0}
.narrative-prompt p{font-size:12px;line-height:1.8}
.word-count{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:9px 0 15px;color:#83929e;font-size:11px}
.narrative-readonly{font-size:13px;line-height:1.9;color:#607486;white-space:pre-wrap}
.signature-preview{display:flex;align-items:center;justify-content:center;min-height:90px;margin:18px 0;border:1px solid #dce4eb;border-bottom:2px solid #b4c5d2;border-radius:3px;background:#fafcfd;color:var(--navy);font-family:"Times New Roman",Times,serif;font-style:italic;font-size:30px}
.signature-methods{display:flex;align-items:stretch;flex-wrap:wrap;gap:9px;padding:0;margin:19px 0 20px;border:0;min-width:0}
.signature-methods legend{padding:0;margin-bottom:9px;color:var(--ink-soft);font-size:12px;font-weight:600}
.signature-methods>label{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;min-width:90px;min-height:42px;padding:9px 12px;border:1px solid #ccd7e0;border-radius:4px;background:white;color:var(--ink-soft);font-size:12px;font-weight:500;cursor:pointer;transition:background var(--motion) var(--ease),border-color var(--motion) var(--ease)}
.signature-methods>label:hover{background:#f6f9fc;border-color:#97b4cb}
.signature-methods>label:has(input:checked){color:var(--info);background:var(--info-soft);border-color:#82b0d0;box-shadow:inset 0 0 0 1px #82b0d0}
.signature-methods>label:has(input:focus-visible){outline:2px solid var(--navy);outline-offset:3px}
.signature-methods input[type=radio]{flex-shrink:0;margin:0;accent-color:var(--info)}
.signature-upload{margin:16px 0}
.signature-upload input[type=file],input.signature-upload[type=file]{display:block;width:100%;min-height:44px;padding:9px;border:1px dashed #a8bbc9;border-radius:4px;background:#f8fafc;color:var(--muted);font-size:12px}
.signature-upload input[type=file]::file-selector-button,input.signature-upload[type=file]::file-selector-button{border:1px solid #c4d1dc;border-radius:3px;padding:7px 11px;margin-right:11px;background:white;color:var(--navy);font:inherit;font-weight:600;cursor:pointer}
.signature-upload input[type=file]::file-selector-button:hover,input.signature-upload[type=file]::file-selector-button:hover{background:var(--info-soft);border-color:#94afc3}
.signature-upload>.help-text{margin-top:7px}
.signature-canvas{margin:14px 0 10px}
.signature-canvas canvas,canvas.signature-canvas{display:block;width:100%;height:auto;max-height:180px;aspect-ratio:auto 10/3;touch-action:none;border:1px solid #aebfcd;border-bottom:2px solid #829eaf;border-radius:4px;background:white;cursor:crosshair}
.signature-canvas canvas:focus-visible,canvas.signature-canvas:focus-visible{outline:2px solid var(--info);outline-offset:3px}
.signature-image{display:flex;align-items:center;justify-content:center;min-height:90px;padding:14px;margin:14px 0;border:1px solid var(--line);border-radius:4px;background:white}
.signature-image img,img.signature-image{display:block;width:auto;max-width:100%;height:auto;max-height:140px;object-fit:contain}
.signature-image img{margin:0}
.signature-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:10px 0 18px}
.signature-actions .help-text{font-size:11px}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.review-item{min-width:0;padding:15px 17px;background:#f9fbfc;border:1px solid #e1e7ec;border-radius:4px}
.review-item.full{grid-column:1/-1}
.review-item>span,.review-item>small{display:block;font-size:11px;color:#81919e;margin-bottom:6px}
.review-item>strong{display:block;font-size:13px;line-height:1.7;color:#3f5b72;font-weight:500;overflow-wrap:anywhere}
.review-item p{font-size:12px;margin-top:5px;overflow-wrap:anywhere}
.review-item .text-link{margin-top:8px}
.review-section{margin-top:18px;border:1px solid var(--line);border-radius:4px;background:white;overflow:hidden}
.review-section>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;min-height:50px;padding:15px 18px;color:var(--navy);font-size:14px;font-weight:600;background:#f8fafc}
.review-section>summary::-webkit-details-marker{display:none}
.review-section>summary:hover{background:#f0f5f9}
.review-section>summary:not(:has(.icon))::after{content:"+";font-size:20px;font-weight:400;line-height:1;color:#68859b}
.review-section[open]>summary:not(:has(.icon))::after{content:"−"}
.review-section>summary>.icon{width:17px;height:17px;color:#68859b;transition:transform var(--motion) var(--ease)}
.review-section[open]>summary{border-bottom:1px solid var(--line)}
.review-section[open]>summary>.icon{transform:rotate(180deg)}
.review-section>.review-section-body,.review-section>div{padding:18px}
.review-section>div>.text-link{margin-top:16px}
.review-section>div>ul{padding-left:18px;margin-bottom:0;color:var(--ink-soft);font-size:13px;line-height:1.8}
.review-section>div>ul>li+li{margin-top:12px}
.review-section>div>p{font-size:13px;line-height:1.8}
.review-section>.review-grid,.review-section>.repeat-card,.review-section>.narrative-readonly,.review-section>.help-text,.review-section>.signature-image{margin:18px}
.review-section>.table-wrap{border:0;border-radius:0}
.review-section-body>.repeat-card:last-child{margin-bottom:0}
.review-section-body>.table-wrap,.review-section-body>.review-grid{margin-bottom:0}
.verification-strip{display:flex;align-items:flex-start;gap:10px;padding:15px;margin-top:23px;border:1px solid #dfe7ed;border-radius:4px;background:#f7fafc}
.verification-strip>.icon{width:18px;height:18px;color:#6d8ca3;margin-top:2px}
.verification-strip>div{flex:1}
.verification-strip strong{font-size:12px;font-weight:600}
.verification-strip p{font-size:11px;line-height:1.7;margin-top:4px}
.verification-strip .badge{font-size:10px}
/* Receipts, documents, and review */
.receipt-card .card-body{padding:26px}
.receipt-icon{display:grid;place-items:center;width:38px;height:38px;margin-bottom:15px;border-radius:50%;border:1px solid #cad6cf;background:white;color:var(--success)}
.receipt-icon .icon{width:20px;height:20px}
.receipt-card h2{font-size:23px;margin:8px 0 11px}
.receipt-card p{font-size:13px;line-height:1.8}
.receipt-details{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;padding:17px 18px;margin:22px 0;border:1px solid #dce6ee;background:#f6f9fb;border-radius:4px}
.receipt-details>div>span{display:block;color:#8193a1;font-size:10px;margin-bottom:6px;letter-spacing:.4px}
.receipt-details>div>strong{display:block;font-size:13px;font-weight:600;color:#3f607a;overflow-wrap:anywhere}
.receipt-actions{display:flex;align-items:center;flex-wrap:wrap;gap:13px}
.receipt-actions .help-text{font-size:11px}
.offer-card{display:flex;align-items:flex-start;gap:17px;padding:25px;border:1px solid var(--line);border-top:3px solid var(--navy);border-radius:4px;background:white}
.offer-card>div:last-child{min-width:0;flex:1}
.offer-icon{display:grid;place-items:center;width:37px;height:37px;flex-shrink:0;background:white;border:1px solid var(--line);border-radius:50%;color:var(--navy)}
.offer-icon .icon{width:20px;height:20px}
.offer-card .eyebrow{font-size:10px}
.offer-card h2{font-size:23px;margin:9px 0 10px}
.offer-card p{font-size:13px;line-height:1.8}
.offer-amount{color:var(--navy);font-size:35px;font-weight:600;margin:20px 0;line-height:1.2}
.offer-amount span{display:block;color:#8999a6;font-size:12px;font-weight:400;margin-top:8px}
.offer-card .help-text{margin-top:13px;font-size:11px}
/* Award letter and acceptance use the same restrained document hierarchy. */
.offer-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:22px}
.offer-letter-preview{min-width:0;border-top:3px solid var(--navy)}
.offer-letter-header{display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:27px 30px 22px;border-bottom:2px solid var(--navy);background:white}
.offer-letter-header>img{display:block;width:278px;max-width:100%;height:auto}
.offer-letter-header>div{width:100%;min-width:0}
.offer-letter-header .eyebrow{font-size:9px;letter-spacing:.8px;margin-bottom:7px}
.offer-letter-header h2{font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:600;line-height:1.3;letter-spacing:0}
.offer-letter-body{padding:23px 30px 27px;color:#273d4e;font:14px/1.8 Georgia,"Times New Roman",serif}
.offer-letter-meta{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;padding-bottom:17px;margin-bottom:21px;border-bottom:1px solid var(--line);color:#586b79;font:10px/1.5 Arial,Helvetica,sans-serif}
.offer-letter-meta>span:last-child{text-align:right;overflow-wrap:anywhere}
.offer-letter-body>p{color:inherit;font:inherit;margin:0 0 17px}
.offer-letter-body>h3{color:var(--navy);font:600 17px/1.4 Georgia,"Times New Roman",serif;margin:23px 0 11px}
.offer-allocation-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:22px 0;font:12px/1.5 Arial,Helvetica,sans-serif;border:1px solid #aabcc9;color:var(--ink)}
.offer-allocation-table th,.offer-allocation-table td{padding:11px 13px;border:1px solid #bac9d4;vertical-align:top;overflow-wrap:anywhere}
.offer-allocation-table thead th{background:#edf1f5;color:var(--navy);text-align:left;font-size:11px;font-weight:700}
.offer-allocation-table th:first-child,.offer-allocation-table td:first-child{width:57%}
.offer-allocation-table th:last-child,.offer-allocation-table td:last-child{text-align:right;font-variant-numeric:tabular-nums}
.offer-allocation-table tfoot th,.offer-allocation-table tfoot td{border-top:2px solid var(--navy);background:#f6f8fa;color:var(--navy);font-weight:700}
.offer-conditions{margin:0 0 22px;padding-left:19px;color:inherit;font:inherit}
.offer-conditions>li{padding-left:2px;margin-bottom:9px}
.offer-letter-signature{padding:18px 20px;margin:24px 0 20px;border:1px solid #cbd6de;border-top:2px solid var(--navy);border-radius:3px;background:white;font:12px/1.7 Arial,Helvetica,sans-serif}
.offer-letter-signature>.eyebrow{font-size:9px;letter-spacing:.75px}
.offer-letter-signature>p{margin:11px 0;color:#445b6c;font-size:12px;line-height:1.7}
.offer-letter-signature>small{display:block;color:var(--muted);font-size:10px;line-height:1.6}
.offer-typed-signature{display:block;color:var(--navy);font-family:"Times New Roman",Times,serif;font-size:31px;font-weight:400;font-style:italic;line-height:1.5;overflow-wrap:anywhere}
.offer-letter-signature>.offer-typed-signature{margin-top:9px}
.offer-letter-body>.offer-demo-note{padding-top:16px;margin:24px 0 0;border-top:1px solid var(--line);color:#667886;font:9px/1.65 Arial,Helvetica,sans-serif;letter-spacing:.5px}
.offer-letter-preview>.card-footer{padding:15px 23px;background:#f9fafb}
.offer-letter-preview>.card-footer>.document-actions{margin-left:0;justify-content:flex-start;flex-wrap:wrap;max-width:100%}
.offer-letter-preview .document-actions>.btn{white-space:normal;text-align:center}
.offer-sign-panel{display:flex;flex-direction:column;gap:18px;min-width:0}
.offer-sign-panel>.card{border-top:3px solid var(--navy)}
.offer-sign-panel .card-header{padding:18px 19px 0;gap:10px}
.offer-sign-panel .card-header h2{font-size:17px}
.offer-sign-panel .card-body{padding:18px 19px 20px}
.offer-sign-steps{padding-left:18px;margin:0 0 21px;color:#445b6c;font-size:12px;line-height:1.7}
.offer-sign-steps>li{padding-left:3px;margin-bottom:6px}
.offer-sign-panel .field-label,.offer-sign-panel .field label{font-size:12px}
.offer-sign-panel .field input{font-size:14px}
.offer-sign-panel .field .help-text{font-size:11px}
.offer-signature-preview{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:104px;padding:16px 13px;margin:18px 0;border:1px solid #c3d0da;border-bottom:2px solid #718ca0;border-radius:3px;background:white}
.offer-signature-preview>.offer-typed-signature{max-width:100%;font-size:27px;text-align:center}
.offer-signature-preview>small{display:block;color:#607686;font-size:10px;margin-top:8px;line-height:1.5}
.offer-consent{padding:13px;border:1px solid #d5dfe6;border-radius:3px;background:#fafbfc;font-size:11px;line-height:1.75;color:#3c5365}
.offer-consent input{margin-top:3px;accent-color:var(--navy)}
.offer-sign-panel .field-error{font-size:11px;line-height:1.6}
.offer-sign-panel .btn-block{margin-top:15px;font-size:12px;min-height:42px}
.offer-sign-panel .btn-block+.help-text{margin-top:12px;font-size:10px;line-height:1.7}
.offer-sign-panel .notice{padding:12px;font-size:12px}
.offer-sign-panel .notice p{font-size:11px;line-height:1.7;margin-top:4px}
.offer-record-facts{display:flex;flex-direction:column;margin:18px 0 20px;border-top:1px solid var(--line)}
.offer-record-facts>div{padding:10px 0;border-bottom:1px solid var(--line)}
.offer-record-facts dt{margin-bottom:4px;color:var(--muted);font-size:10px}
.offer-record-facts dd{margin:0;color:var(--ink);font-size:12px;line-height:1.6;font-weight:600;overflow-wrap:anywhere}
.offer-sign-panel .document-actions{justify-content:flex-start;margin-left:0;max-width:100%;gap:8px}
.offer-sign-panel .document-actions .btn{flex-basis:100%;font-size:11px;padding:9px 12px;white-space:normal}
.offer-document-record{margin-top:23px}
.offer-document-record>.card-header{flex-wrap:wrap;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid var(--line)}
.offer-document-record .card-header .eyebrow{font-size:9px;margin-bottom:7px;overflow-wrap:anywhere}
.offer-document-record .card-header h2{font-size:17px}
.offer-document-record .document-row{flex-wrap:wrap;gap:13px 15px;padding:20px 21px}
.offer-document-record .document-description{min-width:170px}
.offer-document-record .document-description>small{display:block;color:var(--muted);font-size:10px;line-height:1.7;max-width:390px}
.offer-document-record .document-actions{min-width:0;max-width:100%;flex-wrap:wrap}
.offer-document-record .document-actions>.btn{font-size:11px;padding:9px 12px}
.card-body>.offer-document-record .card-header h2{font-size:15px}
.document-row{display:flex;align-items:center;gap:16px;padding:25px 23px}
.document-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:49px;color:#63819a;border:1px solid #dce5ed;border-radius:4px;background:#f4f8fb}
.document-icon .icon{width:23px;height:23px}
.document-row h3{font-size:14px}
.document-row p{font-size:12px;margin:5px 0 8px}
.document-row>.btn{margin-left:auto}
.document-row+.document-row{border-top:1px solid var(--soft-line)}
.document-icon[class*="status-"]{color:white;background:var(--state-color);border-color:var(--state-color)}
.document-icon.status-success{color:var(--navy);background:white;border-color:#b2c3d1}
.document-icon.status-warning{color:#352800;background:var(--warning-fill);border-color:var(--warning-fill)}
.document-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-left:auto}
.document-actions>.document-actions{display:contents}
.document-description{flex:1;min-width:0}
.document-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:11px;color:var(--muted);margin-top:8px}
.document-meta .badge{font-size:10px}
.download-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.download-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:white;overflow:hidden}
.download-card-header{display:flex;align-items:flex-start;gap:13px;padding:21px 21px 0}
.download-card-header .document-icon{width:36px;height:42px}
.download-card-header .document-icon>.icon{width:20px;height:20px}
.download-card-header h3{font-size:15px;margin:1px 0 6px}
.download-card-header p{font-size:12px;line-height:1.7}
.download-card-body{padding:16px 21px 20px;flex:1;font-size:12px}
.download-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:14px 21px;background:#fbfcfd;border-top:1px solid var(--line)}
.download-card-footer .help-text{font-size:11px}
.download-card-footer .btn{min-height:35px;font-size:12px}
.download-note{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.7;color:var(--muted);padding:16px 0}
.download-note>.icon{flex-shrink:0;width:16px;height:16px;margin-top:2px}
.document-feature{display:grid;grid-template-columns:184px minmax(0,1fr);align-items:center;gap:28px;padding:24px;border-top:3px solid var(--navy)}
.document-preview{display:flex;align-items:center;justify-content:center;align-self:stretch;min-height:214px;background:#e9eef2;border:1px solid #d5dee6;border-radius:3px}
.document-sheet{position:relative;display:flex;flex-direction:column;width:140px;min-height:180px;padding:13px 11px 23px;background:white;border:1px solid #aebfcf;box-shadow:3px 4px 0 #d2dce4}
.document-sheet img{width:115px;height:auto;margin-bottom:11px}
.document-sheet strong{font-family:Georgia,serif;font-size:10px;line-height:1.35;color:var(--navy)}
.document-sheet>span{font-size:6px;color:#5e6d78;line-height:1.5;margin-top:5px}
.paper-rule{height:2px;background:var(--navy);margin:9px 0 7px}
.paper-table{height:31px;margin-bottom:7px;border:1px solid #bac8d3;background:repeating-linear-gradient(0deg,transparent,transparent 9px,#c9d4dd 9px,#c9d4dd 10px),linear-gradient(90deg,#ecf1f5 34%,#bbc9d4 34%,#bbc9d4 35%,transparent 35%)}
.paper-table.short{height:22px;margin:0}
.document-sheet>b{position:absolute;right:10px;bottom:8px;padding:1px 4px;font-size:7px;letter-spacing:.5px;color:#fff;background:var(--red)}
.document-feature-content{min-width:0}
.document-feature-content>.eyebrow{font-size:9px;letter-spacing:.7px;margin-bottom:8px}
.document-feature-content>h2{font-size:23px;line-height:1.3;margin-bottom:10px}
.document-feature-content>p{font-size:13px;line-height:1.7;max-width:610px}
.document-feature-content>.document-meta{margin-top:13px;gap:8px 13px;font-size:11px}
.document-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:17px 0;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.document-facts>div{min-width:0}
.document-facts dt{font-size:10px;color:var(--muted);margin-bottom:5px}
.document-facts dd{margin:0;color:var(--ink);font-size:12px;font-weight:600;line-height:1.5}
.document-feature-content>.document-actions{margin:0;justify-content:flex-start}
.document-feature+.download-grid{margin-top:18px}
.document-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
.stats-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.stat-card{padding:18px;border:1px solid var(--line);border-radius:4px;background:white}
.stat-label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#748698;font-size:12px}
.stat-label .icon{width:16px;height:16px;color:#8599a9}
.stat-value{color:var(--navy);font-size:29px;font-weight:600;line-height:1.2;margin:11px 0 7px}
.stat-value>span{font-size:12px;font-weight:400;margin-left:5px;color:#8395a3}
.stat-card>p{color:#8898a5;font-size:12px}
.table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:4px;background:white}
.data-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}
.data-table th{padding:12px 16px;border-bottom:1px solid var(--line);background:var(--navy);color:#fff;font-size:11px;font-weight:700;white-space:nowrap}
.data-table tfoot th,.data-table tfoot td{background:#f0f3f6;color:var(--navy);border-top:2px solid var(--navy)}
.data-table td{padding:17px;border-bottom:1px solid var(--soft-line);vertical-align:middle;color:#4b6479}
.data-table tbody tr:last-child td{border-bottom:0}
.data-table tbody tr:hover{background:#fafcfd}
.data-table tr.selected{background:#f0f5f9}
.data-table td strong{display:block;font-size:12px;font-weight:600}
.table-subtext{display:block;color:#8b9aa6;font-size:11px;margin-top:4px;line-height:1.6}
.table-person{display:flex;align-items:center;gap:11px}
.filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:7px;padding:18px 23px 16px}
.filter-pill{padding:6px 10px;border:1px solid #d8e1e8;border-radius:3px;color:#6d8497;background:white;font-size:12px}
.filter-pill:hover{border-color:#93afc3}
.filter-pill.active{background:var(--navy);color:white;border-color:var(--navy)}
.card>.table-wrap{border:0;border-top:1px solid var(--line);border-radius:0}
.staff-actions{display:flex;flex-direction:column;gap:11px}
.staff-actions .btn{width:100%;text-align:left;justify-content:flex-start}
.staff-actions .help-text{margin-bottom:6px}
.review-layout .card-body>h3{margin-bottom:15px;font-size:15px}
.empty-state{padding:42px 24px;text-align:center}
.empty-state>.icon{width:30px;height:30px;margin-bottom:14px;color:#9db0bf}
.empty-state h2{font-size:23px;margin-bottom:11px}
.empty-state h3{font-size:17px;margin-bottom:10px}
.empty-state p{max-width:440px;font-size:13px;line-height:1.8;margin:0 auto 18px}
.empty-state.compact{padding:22px 15px}
.empty-state.compact p{margin-bottom:0}
/* Connections and help */
.integration-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.integration-card .card-body{padding:22px}
.integration-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:17px}
.integration-icon{display:inline-grid;place-items:center;flex:0 0 auto;width:36px;height:36px;background:#f0f5f8;border:1px solid #dce7ee;border-radius:4px;color:#597d97}
.integration-icon .icon{width:19px;height:19px}
.integration-card h2{font-size:17px;margin-bottom:5px}
.integration-provider{color:#899da9;font-size:12px}
.integration-card p{color:#718896;font-size:12px;line-height:1.8;margin-top:12px}
.integration-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;padding:12px 20px;background:#fbfcfd;border-top:1px solid var(--line)}
.integration-footer>span{display:flex;align-items:center;gap:6px;color:#879ba8;font-size:11px}
.integration-footer .status-dot{color:#a6b7c2}
.integration-footer .btn{padding:4px 2px;min-height:25px;font-size:11px}
.integration-grid>.card>.card-body>.integration-icon+h2{margin-top:16px;font-size:18px}
.integration-grid>.card>.card-body>h2+p{margin-top:11px;font-size:13px;line-height:1.8}
.integration-grid>.card>.card-body>p+.btn{margin-top:15px;padding-left:0}
.connection-flow{display:grid;grid-template-columns:1fr 20px 1fr 20px 1fr;align-items:center;gap:15px;padding:24px;margin-bottom:22px;border:1px solid var(--line);border-radius:4px;background:white}
.connection-flow>div{text-align:center;padding:3px 10px}
.connection-flow>div>.icon{display:block;width:23px;height:23px;margin:0 auto 11px;color:#6b8da6}
.connection-flow>div>strong{display:block;font-size:13px;margin-bottom:7px;font-weight:600}
.connection-flow>div>span{color:#869ba9;font-size:12px;line-height:1.6}
.connection-flow>.icon{width:18px;height:18px;color:#a7bcca}
.activity-list{margin:0;padding:0;list-style:none}
.outbox-message{display:flex;align-items:flex-start;gap:13px;padding:18px;margin-bottom:14px;border:1px solid #dee7ee;border-radius:4px;background:#f8fbfc}
.outbox-message:last-child{margin-bottom:0}
.outbox-message>.icon{width:18px;height:18px;margin-top:2px;color:#7197ad}
.outbox-message>div{flex:1;min-width:0}
.outbox-message strong{display:block;font-size:13px;margin-bottom:8px;font-weight:600}
.outbox-message p{white-space:pre-wrap;line-height:1.8;font-size:13px}
.outbox-message .help-text{display:block;margin-top:12px;font-size:11px;overflow-wrap:anywhere}
.demo-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.demo-controls .help-text{flex-basis:100%}
.faq-list details{padding:17px 0;border-bottom:1px solid var(--line)}
.faq-list details:first-child{padding-top:0}
.faq-list details:last-child{padding-bottom:0;border-bottom:0}
.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:15px;list-style:none;color:#4c6a80;font-size:13px;font-weight:600}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary>.icon{color:#8dabbf;width:16px;height:16px}
.faq-list details[open] summary>.icon{transform:rotate(45deg)}
.faq-list p{margin-top:12px;font-size:13px;line-height:1.85;max-width:750px}
/* Sign-in */
.signin-page{min-height:100vh;background:var(--canvas);display:flex;flex-direction:column}
.signin-main{width:calc(100% - 60px);max-width:1060px;margin:59px auto 65px;display:grid;grid-template-columns:minmax(0,1fr) 440px;align-items:start;gap:68px}
.signin-intro{padding-top:12px}
.signin-intro .eyebrow{margin-bottom:14px;font-size:11px;color:#7b8b98}
.signin-intro h1{font-size:36px;line-height:1.2;letter-spacing:-.6px}
.signin-intro>p{margin-top:20px;font-size:15px;line-height:1.85;max-width:430px;color:#677b8b}
.signin-facts{display:flex;flex-direction:column;gap:24px;margin-top:35px}
.signin-facts>div{display:flex;gap:13px;align-items:flex-start}
.signin-facts>div>.icon{width:20px;height:20px;color:#728da2;margin-top:2px}
.signin-facts strong{display:block;color:#3f5c73;font-size:13px;font-weight:600;margin-bottom:5px}
.signin-facts p{font-size:13px;line-height:1.7;max-width:360px}
.signin-panel{min-width:0}
.signin-panel.card,.signin-panel>.card{border-top:3px solid var(--navy)}
.signin-panel .card-header{display:block;padding:25px 27px 20px;border-bottom:1px solid var(--line)}
.signin-panel .card-header h2{font-size:22px}
.signin-panel .card-header p{margin-top:8px;font-size:13px;line-height:1.7}
.signin-panel .card-body{padding:25px 27px}
.signin-panel .card-body>p{font-size:12px;line-height:1.8}
.signin-panel .card-body>.provider-button{margin-top:16px;margin-bottom:14px}
.signin-demo{margin-top:25px;padding:19px;background:#f5f7f9;border:1px solid #dfe6ec;border-radius:4px}
.signin-demo>.eyebrow{font-size:10px;margin-bottom:13px}
.signin-demo>.btn+.btn{margin-top:9px}
.signin-demo>.help-text{font-size:12px;margin-top:15px;line-height:1.8;color:#6d7f8d}
.signin-intro>.signin-deadline{font-size:12px;margin-top:29px;padding-top:20px;border-top:1px solid var(--line);color:#788b99}
.signin-deadline strong{color:#4d687b;font-weight:600}
.provider-button{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 14px;min-height:45px;background:white;border:1px solid #c7d5df;border-radius:4px;color:var(--navy);font-size:12px;font-weight:600}
.provider-button:hover{background:#f7fafc;border-color:#9db3c4}
.provider-button>.icon{width:15px;height:15px;margin-left:auto;color:#8da5b5}
.google-mark{font-family:Arial,sans-serif;color:#426a97;font-size:19px;font-weight:700;line-height:1}
.login-divider,.signin-divider{display:flex;align-items:center;gap:13px;margin:22px 0;color:#92a1ac;font-size:10px;font-weight:500;letter-spacing:.7px}
.login-divider::before,.login-divider::after,.signin-divider::before,.signin-divider::after{content:"";height:1px;flex:1;background:#e0e7ed}
.demo-login-note{font-size:12px;line-height:1.8;margin:14px 0 20px;color:#8294a2}
.login-staff,.signin-staff{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:21px;padding-top:18px;border-top:1px solid var(--line);color:#8497a6;font-size:12px}
.login-staff .btn,.signin-staff .btn{font-size:12px;padding:4px 0}
.signin-panel .notice{font-size:12px;margin-top:20px;margin-bottom:0}
.signin-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;width:calc(100% - 60px);max-width:1060px;margin:auto auto 0;padding:22px 0 26px;border-top:1px solid var(--line);color:#8a9ba8;font-size:12px}
.signin-footer .text-link{font-size:12px;font-weight:400}
/* Dialogs and feedback */
.display-settings>p{font-size:13px;line-height:1.7;margin-bottom:18px}
.theme-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0;padding:0;margin:0 0 23px;border:0}
.theme-options legend{font-size:12px;font-weight:700;color:var(--ink);padding:0;margin-bottom:10px}
.theme-option{display:grid;grid-template-columns:15px minmax(0,1fr);align-items:center;gap:10px 8px;min-width:0;padding:12px 10px;border:1px solid #b7c6d2;border-radius:4px;background:white;cursor:pointer}
.theme-option:hover{border-color:var(--info)}
.theme-option:has(input:checked){border-color:var(--info);box-shadow:inset 0 0 0 1px var(--info)}
.theme-option input{width:15px;height:15px;margin:0;accent-color:var(--info)}
.theme-option>span:last-child{grid-column:1/-1}
.theme-option strong{display:block;font-size:12px;line-height:1.4;color:var(--navy)}
.theme-option small{display:block;color:var(--muted);font-size:10px;line-height:1.5;margin-top:5px}
.theme-swatch{position:relative;display:block;height:46px;overflow:hidden;border:1px solid #c2cfd9;border-radius:2px;background:#eef1f4}
.theme-swatch i{position:absolute;top:0;left:0;right:0;height:14px;background:var(--navy);border-bottom:1px solid #bccbd6}
.theme-swatch i::before{content:"";position:absolute;top:3px;left:5px;width:24px;height:7px;background:white;border:1px solid #d3dbe2}
.theme-swatch b{position:absolute;top:14px;left:0;bottom:0;width:20px;background:white;border-right:1px solid #c2cfd9}
.theme-swatch::after{content:"";position:absolute;left:26px;right:7px;top:21px;height:2px;background:#b8c7d2;box-shadow:0 6px 0 #d0dbe2,0 12px 0 #d0dbe2}
.theme-swatch.navy-sidebar i,.theme-swatch.light i{background:white}
.theme-swatch.navy-sidebar b{background:var(--navy)}
.preference-row{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 0;border-top:1px solid var(--line);cursor:pointer}
.preference-row strong{display:block;font-size:13px;color:var(--ink);font-weight:600}
.preference-row small{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:4px}
.preference-row input[type=checkbox]{appearance:none;position:relative;flex-shrink:0;width:38px;height:22px;border:1px solid #748b9c;border-radius:15px;background:#879ba9;margin:0;transition:background var(--motion) var(--ease),border-color var(--motion) var(--ease)}
.preference-row input[type=checkbox]::after{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;background:white;border-radius:50%;transition:transform var(--motion) var(--ease)}
.preference-row input[type=checkbox]:checked{background:var(--success);border-color:var(--success)}
.preference-row input[type=checkbox]:checked::after{transform:translateX(16px)}
.display-settings>.help-text{padding-top:12px;border-top:1px solid var(--line);font-size:11px;margin:0}
.modal-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:24px;background:rgb(7 32 53 / 42%)}
.modal{width:100%;max-width:570px;max-height:calc(100dvh - 48px);overflow-y:auto;border:1px solid #d6e1e9;border-radius:6px;background:white;box-shadow:0 12px 45px rgb(7 32 53 / 17%)}
.modal.wide{max-width:820px}
.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 25px 18px;border-bottom:1px solid var(--line)}
.modal-header h2{font-size:22px}
.modal-header p{margin-top:7px;font-size:13px}
.modal-header .icon-button{margin:-3px -6px 0 0}
.modal-body{padding:23px 25px}
.modal-body>p{font-size:13px;line-height:1.8;margin-bottom:19px}
.modal-body>.eyebrow+p{margin-top:13px}
.modal-body>.checklist+p{margin-top:18px}
.modal-body .field{margin-bottom:18px}
.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:17px 25px;border-top:1px solid var(--line);background:#fbfcfd}
.tour-list{list-style:none;padding:0;counter-reset:tour-step}
.tour-list li{counter-increment:tour-step;position:relative;padding:2px 0 18px 39px;font-size:13px;line-height:1.8;color:#70899a}
.tour-list li::before{content:counter(tour-step);position:absolute;left:0;top:3px;display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#edf4f8;border:1px solid #d6e4ed;color:#5b7e96;font-size:11px}
.tour-list li strong{display:block;font-size:13px;color:#375c76;font-weight:600}
.toast{position:fixed;left:calc(50% + 110px);bottom:23px;transform:translateX(-50%);z-index:150;display:flex;align-items:flex-start;gap:10px;width:max-content;max-width:calc(100vw - 35px);padding:13px 19px;border:1px solid var(--navy);border-radius:4px;background:var(--navy);color:white;box-shadow:0 4px 17px rgb(7 32 53 / 16%);font-size:13px;line-height:1.7}
.toast .icon{width:17px;height:17px;margin-top:2px;color:#d0eadc}
.toast.error,.toast.toast-error{color:white;border-color:var(--error);background:var(--error)}
.toast.toast-info,.toast.info{color:white;border-color:var(--info);background:var(--info)}
.toast.toast-info .icon,.toast.info .icon{color:#d4e8f7}
.toast.error .icon,.toast.toast-error .icon{color:#f0c4ca}
.loading-state{display:flex;align-items:center;justify-content:center;gap:15px;min-height:70vh;color:#7d95a7;padding:30px}
.brand-mark{width:38px;height:44px;flex-shrink:0;color:var(--red);font-size:33px}
.brand-mark svg{display:block;width:38px;height:44px}
.spinner{width:23px;height:23px;border:2px solid #dee7ed;border-top-color:var(--navy);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
/* Immediate feedback; motion never delays an action. */
.form-progress>span,.form-step-help p,.semester-title>span:last-child,.credit-total>span,.review-item>span,.review-item>small,.stat-card>p,.table-subtext,.integration-provider,.integration-card p,.offer-amount span{color:var(--muted)}
.course-choice>span>span{color:#41586b}
.document-feature-content .document-meta>span:not(.badge){color:var(--muted)}
.sidebar .nav-item,.form-step,.section-list-item,.course-row,.filter-pill,.provider-button,.data-table tbody tr{transition:background var(--motion) var(--ease),border-color var(--motion) var(--ease),color var(--motion) var(--ease)}
.field input,.field select,.field textarea{transition:border-color var(--motion) var(--ease),box-shadow var(--motion) var(--ease),background var(--motion) var(--ease)}
.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 3px rgb(34 93 137 / 9%)}
.field [aria-invalid=true]:focus{box-shadow:0 0 0 3px rgb(165 35 50 / 9%)}
.text-link .icon,.btn .icon{transition:transform var(--motion) var(--ease)}
.text-link:hover .icon,.btn:hover .icon{transform:translateX(1px)}
.back-button:hover>.icon{transform:rotate(180deg) translateX(1px)}
.icon-button:hover .icon{transform:none}
.modal,.toast{animation:appear var(--motion) var(--ease) both}
.loading-skeleton{position:relative;overflow:hidden;border-radius:4px;background:#e8edf1;color:transparent;min-height:16px}
.loading-skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgb(255 255 255 / 55%),transparent);transform:translateX(-100%);animation:skeleton-sweep 1.2s ease-in-out infinite}
.loading-skeleton.line{height:13px;margin:12px 0}
.loading-skeleton.short{width:45%}
@keyframes appear{from{opacity:0}to{opacity:1}}
@keyframes skeleton-sweep{to{transform:translateX(100%)}}
/* Responsive */
@media(min-width:1640px){.workspace-footer{margin-left:auto;margin-right:auto}}
@media(max-width:1180px){
.institution-header{gap:16px;padding-left:18px;padding-right:18px}.institution-logo img{width:210px}.institution-title{padding-left:16px}.institution-title>span{font-size:10px}.institution-title>strong{font-size:17px}.institution-actions{gap:12px}.header-clock time{font-size:14px}.header-clock{min-width:106px;gap:7px}
.dashboard-grid,.status-layout,.review-layout{grid-template-columns:minmax(0,1fr) 280px;gap:18px}.page-content{padding-left:24px;padding-right:24px}.topbar{padding-left:24px;padding-right:24px}.workspace-footer{margin-left:24px;margin-right:24px}
.page-header h1{font-size:27px}.page-header-actions .save-status{display:none}.application-summary{column-gap:13px}.application-next{align-items:flex-start;gap:12px}.application-next .btn{font-size:11px;padding:9px 12px}
.form-layout{grid-template-columns:196px minmax(0,1fr);gap:18px}.form-step{gap:7px;padding-left:7px;padding-right:7px}.form-panel>.card-header{padding-left:23px;padding-right:23px}.form-panel .card-body,.form-panel .form-navigation{padding-left:23px;padding-right:23px}.form-navigation>.help-text{display:none}.signin-main{gap:43px}
}
@media(max-width:1100px){.offer-workspace{grid-template-columns:minmax(0,1fr)}.offer-sign-panel{display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:start;gap:18px}.offer-sign-panel .document-actions .btn{flex-basis:auto}.offer-letter-header>img{width:285px}.offer-letter-body{font-size:14px}}
@media(max-width:1020px){
.institution-actions .badge{font-size:8px}.institution-logo img{width:200px}.institution-title{padding-left:12px}.institution-title>strong{font-size:15px}.institution-title>span{font-size:9px}.institution-actions{gap:10px}.institution-actions .display-button{padding:7px 9px}.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-grid .aside-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.dashboard-grid .aside-column>:last-child:nth-child(odd){grid-column:1/-1}
.status-layout,.review-layout{grid-template-columns:minmax(0,1fr)}.form-layout{grid-template-columns:minmax(0,1fr);gap:17px}.form-steps{position:static;display:flex;flex-direction:row;overflow-x:auto;padding:9px;scrollbar-width:thin;gap:4px}.form-progress,.form-step-help{display:none}.form-step{width:auto;flex:0 0 auto;padding:8px 10px}.form-step>.icon{display:none}
.signin-main{grid-template-columns:minmax(0,1fr) 390px;gap:32px;margin-top:45px}.signin-intro h1{font-size:33px}.signin-panel .card-header,.signin-panel .card-body{padding-left:23px;padding-right:23px}.signin-panel .provider-button{font-size:11px}.topbar-actions{gap:10px}.process-flow{gap:16px}.process-step{gap:8px}.process-step small{font-size:9px}.document-feature{grid-template-columns:150px minmax(0,1fr);gap:22px;padding:21px}.document-preview{min-height:205px}.document-feature-content>h2{font-size:21px}
}
@media(max-width:760px){
:root{--masthead:64px}.institution-header{height:var(--masthead);flex-wrap:nowrap;gap:14px;padding:4px 16px}.institution-logo{flex-basis:auto;padding:4px 7px}.institution-logo img{width:200px}.institution-title{display:none}.institution-actions{margin-left:auto;align-self:center;gap:12px}.institution-actions>.badge{display:none}.institution-actions .display-button{padding:6px;width:33px;min-height:33px}.display-button>span{display:none}.header-clock{min-width:102px}.header-clock time{font-size:14px}.header-clock small{font-size:9px}
.sidebar{visibility:hidden;transform:translateX(-100%);transition:transform .18s;z-index:70;width:230px;padding-top:22px}.sidebar.open{visibility:visible;transform:translateX(0);box-shadow:6px 0 22px rgb(7 32 53 / 10%)}.mobile-backdrop{display:block;position:fixed;inset:var(--masthead) 0 0;z-index:65;background:rgb(7 32 53 / 32%);border:0}.workspace{margin-left:0}
.topbar{height:42px;padding:0 20px;gap:12px}.breadcrumb{font-size:11px;gap:7px}.topbar .mobile-menu{display:inline-flex;align-items:center;justify-content:center;min-height:31px;width:28px;margin-left:-4px;padding:4px}.mobile-menu>.icon{height:20px;width:20px}.topbar-actions{gap:8px}.topbar .tour-button{padding:4px}.tour-button>span{display:none}.cycle-pill{font-size:10px;padding:3px 6px}
.page-content{padding:0 20px 25px}.page-header{padding:18px 0 17px;align-items:flex-start;flex-wrap:wrap;gap:13px}.page-header h1{font-size:25px}.page-header p{font-size:12px}.page-header-actions{flex-shrink:1}.page-header .eyebrow{font-size:9px;margin-bottom:4px}.workspace-footer{margin:0 20px;font-size:10px;padding-top:15px}.workspace-footer .text-link{font-size:10px}
.main-column,.aside-column{gap:18px}.card-header{padding:20px 20px 0}.card-header h2{font-size:17px}.card-body{padding:19px 20px 21px}.card-footer{padding:14px 20px;flex-wrap:wrap}.card-footer>.help-text{font-size:11px}.application-card .card-header h2{font-size:18px}.application-summary{gap:13px}.application-summary>div>span{font-size:10px}.application-summary>div>strong{font-size:12px}
.section-list{padding:0 20px 16px}.section-list-copy strong{font-size:13px}.section-list-item{gap:10px}.section-list-copy small{font-size:11px}.timeline-content>div{flex-wrap:wrap;gap:2px}.timeline-content time{font-size:10px}.application-progress-number>strong{font-size:30px}.application-progress-number small{font-size:10px}
.form-panel>.card-header{padding:21px 21px 17px}.form-panel .card-header h2{font-size:22px}.form-panel .card-header .save-status{font-size:11px;gap:4px}.form-panel .card-header .save-status .icon{width:13px;height:13px}.form-panel .card-body{padding:21px}.form-panel .form-navigation{padding:16px 21px;gap:10px}.form-grid{gap:18px 15px}
.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,.input{font-size:16px;padding:9px 10px}.form-navigation .btn{font-size:12px;padding:9px 12px}.repeat-card{padding:17px}.course-credit-input input{font-size:16px}.verification-strip{flex-wrap:wrap}.verification-strip>div{flex-basis:calc(100% - 40px)}.verification-strip .badge{margin-left:28px}.review-grid{gap:12px}.review-item{padding:14px}
.signature-methods{gap:7px}.signature-methods>label{padding:10px;min-height:44px;gap:7px}.review-section>summary{padding:14px 16px}.review-section>.review-section-body,.review-section>div{padding:16px}.review-section>.review-grid,.review-section>.repeat-card,.review-section>.narrative-readonly,.review-section>.help-text,.review-section>.signature-image{margin:16px}
.receipt-card .card-body{padding:23px}.receipt-details{padding:15px;gap:13px}.receipt-details>div>strong{font-size:12px}.offer-card{padding:22px;gap:13px}.offer-icon{height:32px;width:32px}.offer-card h2{font-size:22px}.offer-amount{font-size:32px}.document-row{padding:23px 20px;gap:13px;flex-wrap:wrap}.document-row>div:nth-child(2){flex:1;min-width:0}.document-row>.btn{margin-left:55px}
.process-flow{gap:15px;padding:13px 17px 16px}.process-step::after{bottom:-16px}.document-row>.document-actions{flex-basis:100%;justify-content:flex-start;margin-left:55px}.card-header>.document-actions,.receipt-actions>.document-actions{justify-content:flex-start;margin-left:0}.download-grid{gap:15px}.download-card-header,.download-card-body,.download-card-footer{padding-left:18px;padding-right:18px}.document-feature{grid-template-columns:130px minmax(0,1fr);gap:20px;padding:19px}.document-sheet{width:110px;min-height:154px;padding:11px 9px 20px}.document-sheet img{width:90px;margin-bottom:9px}.document-sheet strong{font-size:8px}.document-sheet>span{font-size:5px}.document-preview{min-height:185px}.paper-table{height:23px}.paper-table.short{height:17px}.document-feature-content>h2{font-size:20px}.document-facts{gap:9px}.document-facts dd{font-size:11px}.document-feature-content>.document-actions{gap:7px}.document-feature-content .btn{font-size:11px;padding:9px 11px}
.stats-row{gap:10px}.stat-card{padding:15px 13px}.stat-label{font-size:11px}.stat-label .icon{width:14px;height:14px}.stat-value{font-size:25px}.stat-card>p{font-size:11px}.data-table td{padding:15px 14px}.data-table th{padding:12px 14px}.table-person{min-width:175px}.table-person strong,.table-person .table-subtext{white-space:nowrap}.filter-row{padding-left:20px;padding-right:20px}
.connection-flow{gap:7px;padding:21px 15px;grid-template-columns:1fr 14px 1fr 14px 1fr}.connection-flow>div{padding-left:0;padding-right:0}.connection-flow>div>strong{font-size:12px}.connection-flow>div>span{font-size:11px}.connection-flow>.icon{width:13px;height:13px}.integration-grid{gap:15px}.integration-card .card-body{padding:20px}.integration-heading{flex-wrap:wrap}.integration-footer{padding:12px 18px;flex-wrap:wrap}.integration-footer>span{font-size:10px}
.signin-main{width:calc(100% - 40px);max-width:540px;margin:30px auto 38px;grid-template-columns:minmax(0,1fr);gap:30px}.signin-intro{padding-top:0}.signin-intro h1{font-size:31px}.signin-intro>p{font-size:14px;margin-top:16px;max-width:none}.signin-facts{gap:17px;margin-top:25px}.signin-facts>div{gap:11px}.signin-facts strong{font-size:13px;margin-bottom:3px}.signin-facts p{font-size:12px;max-width:none}
.signin-panel .card-header{padding:23px 24px 19px}.signin-panel .card-body{padding:23px 24px}.signin-panel .provider-button{font-size:12px}.signin-footer{max-width:540px;width:calc(100% - 40px);font-size:11px;flex-wrap:wrap;gap:12px}.signin-footer .text-link{font-size:11px}
.modal-overlay{padding:15px}.modal{max-height:calc(100dvh - 30px)}.modal-header{padding:21px 21px 17px}.modal-header h2{font-size:21px}.modal-body{padding:21px}.modal-footer{padding:16px 21px;flex-wrap:wrap}.toast{left:50%;bottom:17px;font-size:12px;padding:12px 16px}
.offer-workspace{gap:18px}.offer-sign-panel{display:flex;flex-direction:column;gap:16px}.offer-letter-header{padding:23px 25px 20px;gap:17px}.offer-letter-header>img{width:260px}.offer-letter-header h2{font-size:23px}.offer-letter-body{padding:22px 25px}.offer-sign-panel>.card,.offer-sign-panel>.portal-notice{width:100%}.offer-sign-panel .field input{font-size:16px}.offer-sign-panel .document-actions .btn{flex-basis:auto}.offer-document-record>.card-header{padding-bottom:15px}.offer-document-record .document-row{padding:19px 20px}.offer-document-record .document-description{min-width:150px}.offer-document-record .document-row>.document-actions{margin-left:0}
}
@media(max-width:480px){
.institution-header{padding-left:12px;padding-right:12px;gap:10px}.institution-logo{padding:5px 6px}.institution-logo img{width:160px}.institution-actions{gap:9px}.header-clock{min-width:88px;gap:0}.header-clock>.icon{display:none}.header-clock time{font-size:12px}.header-clock small{font-size:8px;letter-spacing:-.1px}.institution-actions .display-button{width:30px;min-height:32px;padding:6px}.topbar{padding-left:16px;padding-right:16px}.topbar-actions{gap:7px}.cycle-pill{display:none}.page-content{padding-left:16px;padding-right:16px}.page-header h1{font-size:23px}.page-header{gap:12px}.workspace-footer{margin-left:16px;margin-right:16px;align-items:flex-start;flex-direction:column;gap:8px}
.dashboard-grid .aside-column{grid-template-columns:minmax(0,1fr)}.dashboard-grid .aside-column>:last-child:nth-child(odd){grid-column:auto}.card-header{gap:10px}.card-header h2{font-size:16px}.application-card .card-header h2{font-size:17px}.application-card .card-header .badge{font-size:10px}
.application-summary{grid-template-columns:minmax(0,1fr);gap:8px}.application-summary>div{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding:10px 11px;border-top:1px solid #d5dee5;border-left:3px solid var(--metadata-accent)}.application-summary>div>span{margin-bottom:0}.application-summary>div>strong{text-align:right;font-size:12px}.application-next{flex-wrap:wrap;gap:12px;padding-top:14px}.application-next .btn{width:100%;font-size:12px}.section-list{margin-top:0;padding:0 16px 15px}.section-list-item{gap:8px;padding:11px 0;min-height:62px}.section-list-item.active{padding-left:8px}.section-list-copy strong{font-size:12px}.section-list-copy small{font-size:10px;line-height:1.4}.section-list-number{width:23px;height:23px;font-size:10px}.section-list-number>.icon{width:12px;height:12px}.section-row-status{font-size:9px;min-width:58px;padding:4px 5px}.section-list-item>.icon{display:none}.task-group+.task-group{margin-top:13px}.task-group-title{font-size:10px}.application-progress-number{gap:11px}.application-progress-number>strong{font-size:29px}.application-progress-number>strong>span{font-size:18px}.application-progress-number b{font-size:11px}.application-progress-number small{font-size:10px}.card-footer .btn{width:100%}
.form-grid,.review-grid{grid-template-columns:minmax(0,1fr)}.form-panel>.card-header{padding-left:18px;padding-right:18px}.form-panel .card-body,.form-panel .form-navigation{padding-left:18px;padding-right:18px}.form-panel .card-header h2{font-size:21px}.form-panel .card-header .save-status{font-size:10px;gap:3px}.form-panel .card-header .save-status .icon{width:12px;height:12px}
.course-row{padding:12px 10px;gap:9px}.course-choice{gap:8px}.course-choice strong,.course-choice>span>span{font-size:11px}.course-credit-input{max-width:77px;font-size:10px}.course-credits{font-size:11px;padding:3px 5px}.course-summary{padding:14px}.course-summary strong{font-size:12px}.credit-total>strong{font-size:22px}.credit-total>span{font-size:10px}
.signature-methods>label{min-width:74px;font-size:11px;padding:9px 7px}.signature-methods input[type=radio]{width:15px;height:15px}.signature-preview{font-size:25px}.signature-upload input[type=file],input.signature-upload[type=file]{font-size:11px;padding:7px}.signature-upload input[type=file]::file-selector-button,input.signature-upload[type=file]::file-selector-button{padding:7px 8px;margin-right:7px}.signature-actions{align-items:flex-start}.signature-actions .help-text{flex-basis:100%}.semester-total{padding:10px;font-size:11px}.semester-total strong{font-size:12px}.course-add-actions>.btn{flex:1;min-width:0;font-size:11px;white-space:normal;text-align:center}.review-section>summary{font-size:13px}
.receipt-details{grid-template-columns:minmax(0,1fr);gap:16px}.receipt-card h2{font-size:21px}.receipt-actions>.btn{width:100%}.offer-card{flex-wrap:wrap}.offer-card>div:last-child{flex-basis:100%}.offer-icon{margin-bottom:0}.document-row>.btn{width:100%;margin-left:0}.document-row h3{font-size:13px}.stat-label{font-size:10px}.stat-label .icon{display:none}.stat-card{padding:13px 11px}.stat-card>p{font-size:10px}.stat-value{font-size:23px}
.process-flow{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 14px;padding:14px 15px 20px}.process-step{align-items:flex-start;gap:9px}.process-step>div{min-width:0}.process-marker{width:25px;height:25px;margin:0;font-size:11px}.process-marker>.icon{width:13px;height:13px}.process-step::after{display:block;bottom:-9px;height:2px}.process-step strong{margin-top:1px;font-size:11px}.process-step small{margin-top:2px;font-size:10px;line-height:1.4}.status-legend{gap:8px 13px}.document-row>.document-actions,.document-actions{margin-left:0;gap:8px}.document-actions>.btn{flex:1;min-width:0}.download-grid,.document-grid{grid-template-columns:minmax(0,1fr)}.download-card-footer .btn{flex:1}.document-feature{grid-template-columns:minmax(0,1fr);padding:20px}.document-preview{display:none}.document-feature-content>h2{font-size:21px}.document-feature-content>p{font-size:12px}.document-facts{gap:12px}.document-facts dd{font-size:11px}.theme-options{grid-template-columns:minmax(0,1fr);gap:9px;margin-bottom:17px}.theme-option{grid-template-columns:15px 63px minmax(0,1fr);gap:10px;padding:10px 12px}.theme-option>span:last-child{grid-column:auto}.theme-option small{margin-top:3px;font-size:10px}.theme-swatch{height:42px}.preference-row{padding:13px 0;gap:15px}.preference-row small{font-size:10px}
.timeline-content>div{gap:0}.timeline-content time{display:block;width:100%;margin:3px 0}.integration-grid{grid-template-columns:minmax(0,1fr)}.integration-heading{flex-wrap:nowrap}.integration-footer{flex-wrap:nowrap}.connection-flow{gap:4px;padding-left:10px;padding-right:10px;grid-template-columns:1fr 12px 1fr 12px 1fr}.connection-flow>div>strong{font-size:11px}.connection-flow>div>span{font-size:10px}.connection-flow>.icon{width:11px;height:11px}
.signin-main{width:calc(100% - 32px)}.signin-intro h1{font-size:29px}.signin-panel .card-header,.signin-panel .card-body{padding-left:20px;padding-right:20px}.signin-panel .provider-button{font-size:11px}.signin-footer{width:calc(100% - 32px)}.modal-footer .btn{flex:1}
.offer-letter-header{padding:21px 20px 18px;gap:16px}.offer-letter-header>img{width:235px}.offer-letter-header h2{font-size:21px}.offer-letter-header .eyebrow{font-size:8px}.offer-letter-body{padding:20px;font-size:13px;line-height:1.8}.offer-letter-meta{flex-direction:column;gap:4px;margin-bottom:17px;padding-bottom:13px;font-size:9px}.offer-letter-meta>span:last-child{text-align:left}.offer-allocation-table{font-size:11px;margin:19px 0}.offer-allocation-table th,.offer-allocation-table td{padding:9px 10px}.offer-allocation-table thead th{font-size:10px}.offer-letter-body>h3{font-size:16px}.offer-conditions{padding-left:17px}.offer-letter-signature{padding:15px;margin-top:20px}.offer-typed-signature{font-size:27px}.offer-letter-preview>.card-footer{padding:14px 18px}.offer-letter-preview>.card-footer>.document-actions{width:100%}.offer-letter-preview .document-actions>.btn{font-size:11px;min-height:40px;padding:8px 10px}.offer-sign-panel .card-header{padding-left:18px;padding-right:18px}.offer-sign-panel .card-body{padding:17px 18px 19px}.offer-sign-panel .card-header h2{font-size:17px}.offer-sign-panel .document-actions .btn{flex-basis:100%}.offer-consent{font-size:11px}.offer-document-record .card-header h2{font-size:16px}.offer-document-record .card-header .eyebrow{font-size:8px}.offer-document-record .document-description{min-width:140px}.offer-document-record .document-row{padding:18px}.offer-document-record .document-actions>.btn{white-space:normal;text-align:center;padding:8px 10px}
}
@media(max-width:360px){.institution-header{padding-left:9px;padding-right:9px;gap:7px}.institution-logo img{width:140px}.institution-logo{padding-left:5px;padding-right:5px}.institution-actions{gap:6px}.header-clock{min-width:82px}.header-clock small{font-size:7.5px}.institution-actions .display-button{width:28px}.section-row-status{min-width:50px;font-size:8px}.section-list-item{gap:7px}.section-list-copy small{font-size:9px}.application-progress-number small{display:none}}
html:has(body[data-motion="off"]){scroll-behavior:auto}
body[data-motion="off"] *,body[data-motion="off"] *::before,body[data-motion="off"] *::after{animation:none!important;transition:none!important}
body[data-motion="off"] .loading-skeleton::after{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.loading-skeleton::after{display:none}.text-link:hover .icon,.btn:hover .icon{transform:none}.back-button:hover>.icon{transform:rotate(180deg)}}
@media print{body{background:white;font-size:11px}.institution-actions,.sidebar,.topbar,.page-header-actions,.btn,.form-steps,.toast,.mobile-menu,.workspace-footer,.skip-link{display:none!important}.institution-header{position:static;height:72px;padding-left:0;padding-right:0;background:white;color:var(--navy);border-top:3px solid var(--red);border-bottom:1px solid var(--line)}.institution-title{display:flex}.institution-title>strong,.institution-title>span{color:var(--navy)}.institution-logo img{width:240px}.workspace{margin:0}.page-content{padding:0;max-width:none}.status-layout,.dashboard-grid,.review-layout{display:block}.card,.process-flow,.download-card{break-inside:avoid;margin-bottom:16px}.process-step::after{animation:none}}

/* Keep the award editor compact while preserving full labels. */
.modal:has(.award-form){max-width:660px}
.award-form,.award-allocation-fields{gap:14px 16px;margin-top:18px;margin-bottom:16px}
.award-allocation-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
.award-form .field,.award-allocation-fields .field{margin-bottom:0}
#award-allocation-total{margin-bottom:18px}
@media(max-width:480px){.award-allocation-fields{grid-template-columns:1fr}.award-form{grid-template-columns:1fr}}

/* Original Apps Script form palette and instructional hierarchy. */
.form-panel>.card-header h2{color:var(--red);font-family:Georgia,"Times New Roman",serif;font-size:23px;line-height:1.25}
.form-panel>.card-header .eyebrow{color:var(--red)}
.form-panel>.card-header{border-top:3px solid var(--red)}
.form-panel .section-intro{margin-bottom:18px}
.form-step{line-height:1.4}
.form-step>span:nth-child(2){flex:1;min-width:0}
.form-panel .btn-cardinal{background:var(--navy);border-color:var(--navy)}
.form-panel .btn-cardinal:hover{background:#0c2949}
.form-panel .notice{background:#eef6fc;border-color:#b8cde0;color:var(--navy)}
.repeat-header{background:#f3f6f9}
.semester-title{padding:12px 14px;margin:0;border:1px solid var(--line);border-bottom:0;background:#f3f6f9;border-radius:4px 4px 0 0;color:var(--navy)}
.course-table-head{display:flex;justify-content:space-between;padding:8px 14px;color:#4b5968;border:1px solid var(--line);border-bottom:0;background:#fbfcfd;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.course-table-head+ .course-row{border-top-left-radius:0;border-top-right-radius:0}
.semester-total{background:#eaf2f8;color:var(--navy)}
.course-row.selected{background:#f6f9fc;border-color:#b8cde0}
.course-session{margin-top:6px}
.session-note{margin:0 0 17px;padding:12px 14px;border-left:4px solid var(--red);border-radius:3px;background:#fff4f4;color:#5f3036;font-size:12px;line-height:1.6}
.session-badge{display:inline-block;max-width:100%;margin-top:7px;padding:3px 7px;border:1px solid #d9a5ab;border-radius:12px;background:#fff0f1;color:#7d1724;font-size:10px;font-weight:600;line-height:1.5}
.session-badge.single{background:#eef5fb;color:#173b63;border-color:#a9bfd4}
.session-badge.start-two{background:#fff3db;color:#7a4a00;border-color:#edc57d}
.signature-methods>label:has(input:checked){color:white;background:var(--navy);border-color:var(--navy);box-shadow:none}
.signature-methods input[type=radio]{accent-color:var(--navy)}
.signature-methods>label:has(input:checked) input[type=radio]{accent-color:white}
.offer-signature-methods{gap:5px;margin-top:17px;margin-bottom:13px}
.offer-signature-methods>label{min-width:65px;padding:9px 5px;font-size:11px}
.offer-signature-entry{margin-bottom:18px}
#offer-signature-canvas{aspect-ratio:5/2;max-height:none;min-height:120px;background:#fff}
.offer-signature-entry .signature-upload{margin-top:0}
.offer-signature-entry .signature-image{padding:9px}
.offer-signature-entry .signature-image img{max-height:100px}
.offer-letter-signature .signature-image{max-width:340px;justify-content:flex-start;border:0;border-bottom:1px solid #718ca0;padding:8px 0;background:transparent}
.offer-letter-signature .signature-image img{max-height:110px}
.demo-choice-buttons{display:flex;flex-wrap:wrap;gap:8px}
.demo-tools .demo-choice-buttons{margin:12px 0 6px}
.page-header-actions>.demo-choice-buttons{padding-left:10px;border-left:1px solid var(--line)}
.application-deadlines{display:grid;gap:15px}
.application-deadlines .deadline-entry{padding-left:12px;border-left:3px solid var(--red)}
.application-deadlines .deadline-entry>strong{display:block;margin:5px 0;color:var(--navy);font-family:Georgia,serif;font-size:20px}
.application-deadlines .deadline-entry>p{font-size:11px;line-height:1.6;margin-top:4px}
.application-deadlines .deadline-entry>.eyebrow{font-size:9px;line-height:1.6}
.application-deadlines .deadline-guidance{font-size:11px;line-height:1.7}
.application-deadlines>.text-link{font-size:11px;justify-self:start}
.application-deadlines.compact{margin-bottom:20px;padding:15px;border:1px solid var(--line);border-radius:4px;background:#f8fafc}
.signin-deadline .application-deadlines{margin-bottom:0;max-width:550px}
.signin-deadline .application-deadlines .deadline-entry>strong{font-size:18px}
.document-case-history{margin-top:24px}
.application-summary>.metadata-year,.application-summary>div:nth-child(2){--metadata-accent:var(--red)}
.application-summary>.metadata-credits,.application-summary>div:nth-child(3){--metadata-accent:#946200}
@media(max-width:600px){.form-panel>.card-header h2{font-size:21px}.page-header-actions>.demo-choice-buttons{padding-left:0;border-left:0}.demo-choice-buttons .btn{flex:1}.session-badge{border-radius:5px;font-size:9px}.application-deadlines.compact{padding:12px}.offer-signature-methods>label{min-width:60px}}

.tuition-only-consent{padding:13px 14px;border:1px solid #dce3ea;border-left:3px solid #d8a928;border-radius:3px;background:#fff9e9;margin-bottom:14px}
.policy-guidance{margin-bottom:24px}.policy-guidance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.policy-guidance-grid h3{font-size:14px;margin-bottom:7px}.policy-guidance-grid p{font-size:12px;line-height:1.7}.policy-guidance .application-deadlines{grid-template-columns:repeat(2,minmax(0,1fr))}.policy-guidance .deadline-guidance,.policy-guidance .application-deadlines>.text-link{grid-column:1/-1}
@media(max-width:600px){.policy-guidance-grid,.policy-guidance .application-deadlines{grid-template-columns:1fr}.tuition-only-consent{padding:11px;font-size:12px}}

/* Draft and saved applications share the same section layout. */
.autosave-explainer{display:flex;align-items:center;gap:9px;margin:-7px 0 18px;color:#506477;font-size:12px;line-height:1.55}
.autosave-explainer .icon{width:16px;height:16px;flex-shrink:0}
.save-status{display:flex;align-items:center;gap:7px;text-align:right;flex-shrink:0}
.save-status>span{display:grid;gap:3px}.save-status small{font-size:10px;font-weight:400;color:#64748b;white-space:nowrap}
.save-status.error>span strong{color:var(--red)}.save-status .btn{margin-left:4px}
.submitted-record-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 19px;margin-bottom:20px;background:white;border:1px solid var(--border);border-radius:5px}
.submitted-record-bar>div:first-child{display:grid;gap:5px}.submitted-record-bar>div:first-child>span{font-size:12px;color:var(--muted)}
.submitted-fields{border:0;padding:0;margin:0;min-width:0}
.submitted-fields input:disabled,.submitted-fields select:disabled,.submitted-fields textarea:disabled{opacity:1;color:#243c53;-webkit-text-fill-color:#243c53;background:#f8fafc;cursor:default}
.submitted-fields .field-error{display:none}.submitted-fields .signature-preview{background:#f8fafc}
.submitted-fields .required{display:none}.submitted-fields textarea{resize:vertical}
.empty-section{padding:18px;border:1px solid #d9e1e9;border-radius:4px;color:#586c7f;background:#f8fafc}
.recorded-signature{margin-top:23px}.recorded-acknowledgments{margin-top:22px;padding-top:12px;border-top:1px solid #dce3e9}
.recorded-acknowledgments p{display:flex;align-items:flex-start;gap:8px;font-size:13px}.recorded-acknowledgments .icon{width:17px;flex-shrink:0;color:var(--navy)}
.course-request-total{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:24px 0 14px;padding:20px 22px;border:1px solid #c8d5e1;border-top:3px solid var(--navy);border-radius:4px;background:#edf3f8;color:var(--navy)}
.course-request-total>div{display:grid;gap:6px}.course-request-total>div>span{font-size:12px;color:#52697d}.course-request-total>div:last-child{text-align:right}.course-request-total #credit-total-bottom{font-size:28px;line-height:1}
.notification-button{position:relative}.notification-count{position:absolute;right:1px;top:0;min-width:17px;height:17px;padding:1px 4px;border-radius:10px;background:var(--red);color:white;font-size:10px;line-height:15px;font-weight:700}
.notification-explainer{display:flex;gap:12px;padding:14px;background:#edf3f8;border:1px solid #d8e2ec;border-radius:4px;margin-bottom:17px}.notification-explainer>.icon{flex-shrink:0;width:20px}.notification-explainer p{margin:0;font-size:12px;line-height:1.6}.notification-explainer strong{display:block;margin-top:5px}
.notification-heading{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.outbox-message>div{min-width:0;flex:1}.outbox-message.unread{border-left:3px solid var(--navy);background:#f7fafd}.notification-delivery{display:block;margin-top:5px;font-size:10px;color:#697d8e}.notification-empty{text-align:center;padding:25px 15px}.notification-empty>.icon{width:28px;height:28px;color:#7b8ea1}.notification-empty h3{margin-top:12px}
@media(max-width:700px){.submitted-record-bar{align-items:flex-start;flex-direction:column}.submitted-record-bar .document-actions{flex-wrap:wrap}.save-status{max-width:180px;text-align:left;flex-wrap:wrap}.save-status small{white-space:normal}.form-panel>.card-header{gap:12px}.autosave-explainer{font-size:11px}.course-request-total{padding:17px}.notification-heading{flex-wrap:wrap}}
@media(max-width:600px){.form-panel .form-grid{grid-template-columns:1fr}.form-panel .field.full{grid-column:auto}.form-panel .card-header{align-items:flex-start}.submitted-record-bar .document-actions{justify-content:flex-start}}

/* Contact details remain editable throughout the scholarship journey. */
.contact-update-notice{display:flex;gap:12px;padding:15px 16px;margin-bottom:23px;border:1px solid #cfdae4;border-left:3px solid var(--navy);border-radius:4px;background:#f3f7fb;color:var(--navy)}
.contact-update-notice>.icon{flex-shrink:0;margin-top:2px;width:19px}.contact-update-notice strong{font-size:13px}.contact-update-notice p{font-size:12px;line-height:1.6;margin:5px 0 7px}.contact-update-notice .text-link{font-size:12px}
.contact-delivery-summary{display:flex;align-items:center;gap:18px;border:1px solid #c9d6e2;border-radius:5px;background:#edf3f8;padding:20px 23px;margin-bottom:24px;color:var(--navy)}
.contact-delivery-summary>.icon{width:25px;height:25px;flex-shrink:0}.contact-delivery-summary>div{min-width:0;flex:1}.contact-delivery-summary strong{display:block;font-size:20px;line-height:1.5;overflow-wrap:anywhere;margin-top:4px}.contact-delivery-summary p{font-size:12px;margin:4px 0 0}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:24px}.contact-layout .card{margin-bottom:0}.contact-layout .card-header h2{font-size:19px}.contact-layout .card-header p{font-size:12px;margin:5px 0 0}.contact-email-card .card-body{padding:0 25px}.contact-email-row{padding:24px 0}.contact-email-row+.contact-email-row{border-top:1px solid var(--line)}.contact-email-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.contact-email-heading h3{margin:0;font-size:14px}.contact-email-heading .badge{font-size:9px}.contact-email-row .contact-address{font-size:17px;font-weight:600;color:var(--navy);overflow-wrap:anywhere;margin:13px 0 7px}.contact-email-row p{font-size:12px;line-height:1.65}.contact-email-row .btn{margin-top:15px}.contact-copy-option{align-items:flex-start;padding:18px 0;margin:16px 0 3px;border-top:1px solid var(--line)}.contact-copy-option input{margin-top:4px}.contact-copy-option strong{font-size:12px;display:block}.contact-copy-option small{display:block;line-height:1.7;margin-top:5px;color:#5c6c7d}.contact-save-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:8px}.contact-save-row>.help-text{font-size:10px}.contact-footnotes{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:24px 3px}.contact-footnotes>div{display:flex;gap:10px;color:#5c6c7d}.contact-footnotes .icon{width:17px;flex-shrink:0;margin-top:2px}.contact-footnotes p{font-size:11px;line-height:1.8;margin:0}.contact-footnotes strong{color:#344d64}.contact-email-entry{margin-top:21px}.demo-verification-code{padding:18px 20px;border:1px solid #c9d6e2;background:#f1f5f9;border-radius:4px;margin:20px 0}.demo-verification-code>strong{display:block;letter-spacing:.22em;font-size:28px;color:var(--navy);margin:10px 0}.demo-verification-code>p{font-size:12px;margin:0}.current-contact-summary{background:#f0f5fa;border:1px solid #d1dce6;border-radius:4px;padding:17px;margin-bottom:22px}.current-contact-summary>div{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.current-contact-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0 10px}.current-contact-summary dt{font-size:10px;color:#536c82;margin-bottom:4px}.current-contact-summary dd{font-size:12px;margin:0;overflow-wrap:anywhere;color:var(--navy)}
@media(max-width:1000px){.contact-layout{grid-template-columns:1fr}.contact-footnotes{grid-template-columns:1fr;gap:15px}}
@media(max-width:600px){.contact-delivery-summary{padding:17px;gap:11px;flex-wrap:wrap}.contact-delivery-summary strong{font-size:16px}.contact-delivery-summary>.badge{margin-left:36px}.contact-email-card .card-body{padding:0 18px}.contact-email-heading{align-items:flex-start}.contact-email-row .contact-address{font-size:15px}.contact-layout .card-header h2{font-size:17px}.current-contact-summary dl{grid-template-columns:1fr}.contact-update-notice{padding:13px}.contact-save-row{align-items:flex-start;flex-direction:column}}

.notification-delivery{overflow-wrap:anywhere}

/* Online student account controls. Keep the established institutional header compact. */
.account-menu { position:relative; }
.account-menu summary { display:flex; align-items:center; gap:8px; cursor:pointer; list-style:none; border-radius:6px; padding:4px 6px; color:var(--navy); }
.account-menu summary::-webkit-details-marker { display:none; }
.account-menu summary:hover,.account-menu[open] summary { background:#eef3f8; }
.account-menu summary:focus-visible { outline:2px solid var(--navy); outline-offset:3px; }
.account-menu summary>.icon { width:14px; height:14px; transform:rotate(90deg); }
.account-menu[open] summary>.icon { transform:rotate(-90deg); }
.account-name { max-width:170px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; font-weight:600; }
.topbar .breadcrumb { min-width:0; flex:1; }
.topbar .breadcrumb strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.topbar-actions { flex-shrink:0; }
.cycle-pill { white-space:nowrap; }
@media(max-width:1100px) { .account-name { display:none; } }
.account-dropdown { position:absolute; right:0; top:calc(100% + 8px); z-index:80; width:260px; max-width:calc(100vw - 32px); padding:15px; background:white; border:1px solid var(--line); border-radius:8px; box-shadow:0 10px 28px #12345b20; }
.account-dropdown>strong,.account-dropdown>span { display:block; overflow-wrap:anywhere; }
.account-dropdown>strong { font-size:14px; }
.account-dropdown>span { color:var(--muted); font-size:12px; margin:4px 0 12px; }
.account-dropdown>button { display:flex; align-items:center; gap:10px; width:100%; min-height:40px; padding:8px; text-align:left; border:0; background:transparent; border-radius:4px; color:var(--navy); font:inherit; font-size:13px; cursor:pointer; }
.account-dropdown>button:hover,.account-dropdown>button:focus-visible { background:#eef3f8; }
.account-dropdown>button[data-action="signout"] { color:#a6192e; border-top:1px solid var(--line); border-radius:0; margin-top:4px; }
.footer-links { display:flex; align-items:center; flex-wrap:wrap; gap:18px; }
.footer-links [data-action="signout"] { display:inline-flex; align-items:center; gap:5px; }
.footer-links .icon { width:14px; height:14px; }
.nav-attention-slot { display:inline-flex; align-items:center; justify-content:flex-end; min-width:0; margin-left:auto; }
.nav-update-count { display:inline-grid; place-items:center; min-width:20px; height:20px; padding:0 5px; border:1px solid #fff; border-radius:999px; background:var(--red); color:#fff; box-shadow:0 1px 3px #071f3524; font-size:10px; font-weight:800; line-height:1; font-variant-numeric:tabular-nums; }
.sidebar .nav-item.active .nav-update-count { border-color:#fff; }
.form-panel .card-body>.field { margin-bottom:18px; }
@media(max-width:600px) { .account-name { display:none; } .account-menu summary { gap:4px; padding:2px; } }
@media(max-width:600px) {
  .form-panel>.card-header { flex-direction:column; align-items:flex-start; }
  .form-panel .card-header .save-status { margin-top:0; max-width:100%; }
}
@media(max-width:380px) {
  .topbar { gap:8px; }
  .breadcrumb>span,.breadcrumb>.icon { display:none; }
}

/* Typed dates stay primary; calendar selection is an optional compact control. */
.date-input-control { display:flex; position:relative; min-width:0; align-items:stretch; gap:6px; }
.date-input-control>input[data-date-precision] { flex:1; width:0; min-width:0; font-variant-numeric:tabular-nums; }
.date-picker-button { flex:0 0 40px; width:40px; min-height:40px; display:grid; place-items:center; border:1px solid var(--line); border-radius:4px; background:#f5f8fb; color:var(--navy); cursor:pointer; }
.date-picker-button:hover,.date-picker-button:focus-visible { background:#eaf0f6; outline:2px solid var(--navy); outline-offset:2px; }
.date-input-control>.date-native-picker { position:absolute; right:0; bottom:0; width:1px; height:1px; padding:0; border:0; opacity:0; pointer-events:none; }
.date-format { margin-top:5px; }
.whole-dollar-input { appearance:textfield; -moz-appearance:textfield; }
.whole-dollar-input::-webkit-inner-spin-button,.whole-dollar-input::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }

/* Account creation and email confirmation use the same compact field layout. */
.auth-fields { display:grid; gap:14px; }
#registration-code { font-size:1.4rem; letter-spacing:.25em; font-variant-numeric:tabular-nums; max-width:100%; }
.bot-widget{min-height:78px;display:flex;align-items:center;justify-content:center;margin:12px 0}

/* Public account entry: campus identity, focused account form, a quiet deadline band. */
.login-home { min-height:100svh; display:flex; flex-direction:column; background:#fff; }
.login-home .institution-header { height:72px; padding-inline:32px; }
.login-home .institution-title { display:none; }
.login-home .institution-logo { padding:3px 8px; }
.login-home .institution-logo img { width:240px; }
.login-home .signin-main { width:100%; max-width:1440px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(380px,.9fr); grid-template-areas:"intro account" "support support"; gap:0; align-items:stretch; }
.login-home .signin-intro { grid-area:intro; display:flex; flex-direction:column; min-width:0; padding:0; background:#10324f; }
.login-photo { flex:0 0 auto; width:100%; height:clamp(220px,22vw,320px); overflow:hidden; background:#dce6eb; }
.login-photo>img { display:block; width:100%; height:100%; object-fit:cover; object-position:45% center; transition:transform 900ms var(--ease); }
.login-hero-copy { flex:1; padding:38px clamp(32px,4.5vw,64px) 43px; border-top:4px solid var(--red); }
.login-home .login-hero-copy>.eyebrow { color:#d7e0e8; font-size:11px; letter-spacing:1.7px; margin-bottom:20px; font-weight:500; }
.login-home .signin-intro h1 { color:#fff; font-family:Georgia,"Times New Roman",serif; font-size:clamp(44px,4.1vw,59px); font-weight:400; line-height:1.06; letter-spacing:-1.5px; margin:0; }
.login-home .login-hero-copy>p { max-width:360px; color:#e1e8ed; font-size:15px; line-height:1.65; margin:21px 0 0; }
.login-home .signin-panel { grid-area:account; min-width:0; width:100%; margin:0; background:#fff; border:0; border-radius:0; box-shadow:none; }
.login-home .signin-panel>.card-body { width:100%; max-width:460px; margin:0 auto; padding:52px 38px 44px; }
.login-home .signin-panel h2 { font-size:30px; font-weight:600; letter-spacing:-.65px; line-height:1.2; }
.login-home .signin-panel .login-panel-intro { font-size:14px; line-height:1.65; margin:10px 0 27px; }
.login-home .login-pilot { margin-bottom:22px; }
.login-home .login-pilot .badge { background:#fff8e9; border-color:#e7d4ae; color:#775415; border-radius:3px; font-size:10px; font-weight:500; padding:5px 8px; }
.login-home #auth-error:empty { display:none; }
.login-home #auth-error:not(:empty) { margin:0 0 20px; }
.login-home .auth-fields { gap:19px; }
.login-home .auth-fields input { min-height:49px; border:1px solid #afbdc9; border-radius:3px; background:#fff; font-size:16px; padding:12px; transition:border-color 180ms var(--ease),box-shadow 180ms var(--ease); }
.login-home .auth-fields input:focus-visible { border-color:var(--navy); box-shadow:0 0 0 3px #12345b0b; }
.login-home .auth-fields .field>label { margin-bottom:8px; color:#273d50; font-size:13px; font-weight:600; }
.login-home .auth-fields .help-text { font-size:12px; margin-top:7px; }
.login-home .auth-fields .btn-primary { min-height:49px; font-size:14px; margin-top:5px; border-radius:3px; background:var(--red); border-color:var(--red); }
.login-home .auth-fields .btn-primary>.icon { width:18px; height:18px; margin-left:3px; transition:transform 220ms var(--ease); }
.login-home .login-account-actions { margin-top:24px; padding-top:17px; border-top:1px solid #e1e6ea; }
.login-home .login-account-actions>.btn { margin:0; min-height:40px; padding:10px 5px; font-size:13px; white-space:normal; }
.login-home .login-account-actions>[data-action="toggle-signup"] { color:var(--navy); }
.login-home .login-account-actions>[data-action="password-reset"] { color:#536675; font-size:12px; font-weight:400; }
.login-home .signin-panel .btn { transition:background 180ms var(--ease),border-color 180ms var(--ease),box-shadow 180ms var(--ease); }
.login-home .login-support { grid-area:support; display:grid; grid-template-columns:145px minmax(0,1fr) minmax(170px,.45fr); align-items:start; column-gap:26px; padding:27px 40px; border-bottom:1px solid #e0e5e9; background:#f5f7f9; }
.login-support>h2 { align-self:center; color:var(--navy); font-size:14px; font-weight:600; line-height:1.45; }
.login-deadlines { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
.login-deadline { min-width:0; padding-left:22px; border-left:1px solid #cbd5dd; }
.login-deadline>span { display:block; color:#526473; font-size:12px; line-height:1.5; margin-bottom:5px; }
.login-deadline>time { display:block; color:var(--navy); font-size:18px; line-height:1.4; font-weight:600; font-variant-numeric:tabular-nums; }
.login-guidance { min-width:0; margin:0; }
.login-guidance>summary { min-height:49px; display:flex; align-items:center; justify-content:space-between; gap:15px; padding:8px 0; color:var(--navy); font-size:12px; font-weight:600; list-style:none; }
.login-guidance>summary::-webkit-details-marker { display:none; }
.login-guidance>summary>.icon { width:16px; height:16px; transition:transform 200ms var(--ease); }
.login-guidance[open]>summary>.icon { transform:rotate(45deg); }
.login-guidance>div { padding:13px 0 5px; }
.login-guidance p { margin:0 0 12px; font-size:12px; line-height:1.7; }
.login-guidance .text-link { min-height:32px; }
.login-home .login-support:has(.login-guidance[open]) { grid-template-rows:auto auto; }
.login-guidance[open] { grid-column:1 / -1; margin-top:20px; border-top:1px solid #d4dde4; }
.login-guidance[open]>div { columns:2; column-gap:40px; }
.login-guidance[open] p,.login-guidance[open] .text-link { break-inside:avoid; }
.login-home .signin-footer { width:calc(100% - 80px); max-width:1360px; display:flex; justify-content:space-between; align-items:center; gap:15px; margin:auto auto 0; padding:17px 0; border:0; color:#617180; font-size:11px; }
.login-home .signin-footer .btn { font-size:11px; white-space:normal; }
@keyframes login-copy-reveal { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes login-form-reveal { from { opacity:0; } to { opacity:1; } }
.login-enter .login-hero-copy { animation:login-copy-reveal 450ms var(--ease) both; }
.login-enter .signin-panel>.card-body { animation:login-form-reveal 350ms var(--ease) both; }
@media(hover:hover) and (pointer:fine) {
  .login-photo:hover>img { transform:scale(1.025); }
  .login-home .auth-fields .btn-primary:not(:disabled):hover { background:#871326; border-color:#871326; box-shadow:0 3px 9px #a6192e20; }
  .login-home .auth-fields .btn-primary:not(:disabled):hover>.icon { transform:translateX(4px); }
  .login-guidance>summary:hover { color:var(--red); }
}
@media(max-width:1000px) and (min-width:761px) {
  .login-home .signin-main { grid-template-columns:minmax(0,1fr) minmax(360px,1fr); }
  .login-home .signin-panel>.card-body { padding:40px 30px; }
  .login-home .login-hero-copy { padding:32px 30px; }
  .login-home .signin-intro h1 { font-size:44px; }
  .login-home .login-support { grid-template-columns:112px minmax(0,1fr); padding:25px 30px 16px; gap:16px 22px; }
  .login-guidance { grid-column:1 / -1; border-top:1px solid #d4dde4; }
  .login-guidance[open] { margin-top:0; }
}
@media(max-width:760px) {
  .login-home .institution-header { height:64px; padding-inline:16px; }
  .login-home .institution-logo img { width:174px; }
  .login-home .institution-logo { padding:3px 5px; }
  .login-home .signin-main { display:grid; grid-template-columns:minmax(0,1fr); grid-template-areas:"intro" "account" "support"; }
  .login-home .signin-intro { display:grid; grid-template-columns:minmax(0,1fr) 35%; min-height:154px; }
  .login-photo { grid-column:2; grid-row:1; min-height:100%; height:100%; width:100%; }
  .login-photo>img { object-position:43% center; }
  .login-hero-copy { grid-column:1; grid-row:1; border:0; padding:25px 22px; }
  .login-home .login-hero-copy>.eyebrow { margin-bottom:12px; font-size:9px; letter-spacing:1.1px; }
  .login-home .signin-intro h1 { font-size:33px; letter-spacing:-.7px; line-height:1.1; }
  .login-home .login-hero-copy>p { display:none; }
  .login-home .signin-panel>.card-body { max-width:460px; padding:30px 24px; }
  .login-home .signin-panel h2 { font-size:28px; }
  .login-home .login-pilot { margin-bottom:20px; }
  .login-home .signin-panel .login-panel-intro { margin-bottom:23px; }
  .login-home .login-support { display:grid; grid-template-columns:minmax(0,1fr); padding:23px 24px 12px; gap:17px; }
  .login-support>h2 { font-size:13px; }
  .login-support>h2>br { display:none; }
  .login-deadlines { gap:14px; }
  .login-deadline { padding-left:14px; }
  .login-deadline>span { font-size:11px; }
  .login-deadline>time { font-size:16px; }
  .login-guidance { border-top:1px solid #d4dde4; }
  .login-guidance[open] { margin-top:0; }
  .login-guidance[open]>div { columns:auto; }
  .login-home .signin-footer { width:calc(100% - 48px); max-width:460px; flex-wrap:wrap; gap:4px; padding:13px 0; font-size:10px; }
  .login-home .signin-footer .btn { padding-left:0; font-size:10px; }
}
@media(max-width:360px) {
  .login-home .institution-header { padding-inline:10px; }
  .login-home .institution-logo img { width:140px; }
  .login-hero-copy { padding-inline:18px; }
  .login-home .signin-intro h1 { font-size:29px; }
  .login-home .login-hero-copy>.eyebrow { font-size:8px; }
  .login-home .signin-panel>.card-body { padding-inline:20px; }
  .login-home .login-support { padding-inline:20px; }
  .login-deadline { padding-left:10px; }
  .login-deadline>time { font-size:15px; }
}
body[data-motion="off"] .login-home .btn>.icon,body[data-motion="off"] .login-photo>img { transform:none!important; }
@media(prefers-reduced-motion:reduce) { .login-home .btn>.icon,.login-photo>img { transform:none!important; } }

/* Persistent document feedback stays visible through long provider requests. */
.document-progress { position:fixed; right:24px; bottom:24px; z-index:110; display:flex; align-items:flex-start; gap:12px; width:370px; max-width:calc(100vw - 32px); padding:17px 20px; background:#fff; border:1px solid #c9d4df; border-left:4px solid var(--navy); border-radius:5px; box-shadow:0 5px 24px #12345b20; }
.document-progress>.icon { margin-top:2px; color:var(--navy); }
.document-progress strong { color:var(--navy); font-size:14px; }
.document-progress p { margin-top:4px; font-size:12px; line-height:1.6; }
@media(max-width:600px) { .document-progress { right:16px; bottom:16px; } }

/* The pilot sample is visually distinct from an issued scholarship award. */
.pilot-offer-card{display:flex;align-items:center;gap:20px;padding:22px 24px;border-left:4px solid #ba8c2a;margin-bottom:24px}
.pilot-offer-card>div:nth-child(2){flex:1;min-width:0}
.pilot-offer-card h2{font-size:20px;margin:5px 0 7px}
.pilot-offer-card p{margin:0;color:var(--muted);line-height:1.6}
.pilot-offer-symbol{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;background:#fbf5e6;color:#815e17;border-radius:50%}
.pilot-offer-notice{margin-bottom:22px}
.sample-letter-banner{padding:12px 20px;background:#fff7e6;border-bottom:1px solid #d5bd86;color:#654b13;text-align:center;font-size:12px;font-weight:800;letter-spacing:1.4px}
@media(max-width:600px){.pilot-offer-card{flex-wrap:wrap;padding:20px;gap:14px}.pilot-offer-card>div:nth-child(2){flex-basis:calc(100% - 62px)}.pilot-offer-card>.btn{width:100%}.pilot-offer-card h2{font-size:18px}}
@media print{
  @page{size:letter;margin:0.6in}
  body.printing-pilot-offer> :not(#app){display:none!important}
  body.printing-pilot-offer .institution-header,body.printing-pilot-offer .sidebar,body.printing-pilot-offer .topbar,body.printing-pilot-offer .workspace-footer,body.printing-pilot-offer .offer-sign-panel,body.printing-pilot-offer .pilot-sample-letter>.card-footer{display:none!important}
  body.printing-pilot-offer #main-content> :not(.offer-workspace){display:none!important}
  body.printing-pilot-offer .portal-shell,body.printing-pilot-offer .workspace,body.printing-pilot-offer .page-content,body.printing-pilot-offer .offer-workspace{display:block!important;margin:0!important;padding:0!important;width:auto!important;min-height:0!important;max-width:none!important}
  body.printing-pilot-offer .pilot-sample-letter{border:0;box-shadow:none;margin:0;break-inside:auto}
  body.printing-pilot-offer .sample-letter-banner{border:2px solid #856322;background:white;color:#352a17;padding:8px;font-size:11px}
  body.printing-pilot-offer .offer-letter-header{padding:18px 0 12px;gap:10px}
  body.printing-pilot-offer .offer-letter-header>img{width:250px}
  body.printing-pilot-offer .offer-letter-header h2{font-size:21px}
  body.printing-pilot-offer .offer-letter-body{padding:14px 0 0;font-size:11px;line-height:1.5}
  body.printing-pilot-offer .offer-letter-body>p{margin-bottom:10px}
  body.printing-pilot-offer .offer-letter-body>h3{font-size:14px;margin:15px 0 8px}
  body.printing-pilot-offer .offer-allocation-table{font-size:11px;margin:12px 0;break-inside:avoid}
  body.printing-pilot-offer .offer-allocation-table th,body.printing-pilot-offer .offer-allocation-table td{padding:7px 10px}
  body.printing-pilot-offer .offer-letter-signature{break-inside:avoid;margin-top:14px;padding:12px}
  body.printing-pilot-offer .offer-letter-signature .signature-image img{max-height:65px;max-width:230px}
  body.printing-pilot-offer .offer-typed-signature{font-size:26px}
  body.printing-pilot-offer .offer-demo-note{font-size:9px;margin-top:12px;padding-top:10px}
}

/* PDF readiness stays compact beneath the unified application-status history. */
.pdf-readiness{display:flex;flex-direction:column;align-items:flex-start;gap:8px;max-width:440px}
.pdf-readiness small{line-height:1.6;color:var(--muted)}

/* Full signer names remain readable for every signature method and in print. */
.offer-signer-name { display: grid; gap: 4px; margin: 16px 0; min-width: 0; }
.offer-signer-name > span { font-size: 11px; color: var(--muted); }
.offer-signer-name > strong { font-size: 14px; line-height: 1.5; }
.offer-signer-name strong, .offer-typed-signature, .offer-record-facts dd { min-width: 0; overflow-wrap: anywhere; white-space: normal; }

/* Signed-in pages use one visible masthead. The public sign-in header stays unchanged. */
.portal-shell{--masthead:60px}
.portal-shell>.institution-header{height:var(--masthead);padding:3px 18px;gap:14px}
.portal-shell>.institution-header .institution-logo{padding:3px 7px}
.portal-shell>.institution-header .institution-logo img{width:190px}
.portal-shell>.institution-header .institution-title{min-height:34px;padding-left:14px;gap:1px}
.portal-shell>.institution-header .institution-title>strong{font-size:15px}
.portal-shell>.institution-header .institution-title>span{font-size:9px}
.portal-shell>.institution-header .institution-actions{display:none}
.portal-shell .topbar{position:fixed;z-index:90;top:3px;left:405px;right:12px;height:57px;padding:0 6px 0 12px;border:0;background:transparent;color:var(--header-fg)}
.portal-shell .topbar .breadcrumb{min-width:0;color:var(--header-muted)}
.portal-shell .topbar .breadcrumb strong{color:var(--header-fg);font-weight:600}
.portal-shell .topbar-actions{gap:7px}
.portal-shell .topbar .icon-button,.portal-shell .account-menu summary{color:var(--header-fg);border-color:transparent;background:transparent}
.portal-shell .topbar .icon-button:hover,.portal-shell .account-menu summary:hover,.portal-shell .account-menu[open] summary{color:var(--header-fg);background:rgb(128 150 170 / 17%)}
.portal-shell .topbar .notification-button{position:relative}
.portal-shell .topbar .avatar{border-color:rgb(255 255 255 / 45%);background:#fff;color:var(--navy)}
.portal-shell .topbar .account-dropdown{color:var(--ink)}
.portal-shell .topbar .account-dropdown .icon{color:inherit}
.portal-shell .portal-clock{min-width:101px;gap:7px}
.portal-shell .portal-clock>.icon{width:17px;height:17px}
.portal-shell .portal-clock time{font-size:13px}
.portal-shell .portal-clock small{font-size:8px;margin-top:2px}
.portal-shell .workspace{min-height:calc(100vh - var(--masthead))}

/* One status history explains the current stage and completed activity. */
.case-history-panel{margin:0 0 18px;border-left:4px solid var(--navy)}
.case-history-panel .card-header{align-items:flex-start;padding:18px 21px 14px}
.case-history-panel .card-header h2{font-size:19px}
.case-history-panel .card-header p{margin-top:4px;font-size:12px}
.case-history-panel .card-body{padding:0 21px 18px}
.case-history-panel .timeline{margin:0}
.case-history-panel .timeline-item{padding-bottom:16px}
.case-history-panel .timeline-item:last-child{padding-bottom:0}
.case-history-panel .timeline-content p{margin-top:3px}
.status-history-timeline>.current-status-item{align-items:flex-start;margin:0 -21px 16px;padding:18px 21px 19px;background:#f5f8fb;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.status-history-timeline>.current-status-item::after{left:33px;top:44px;bottom:-17px;background:#b9c9d7}
.current-status-item>.timeline-dot{margin-top:2px;border-width:1px;box-shadow:0 0 0 4px #fff}
.current-status-item>.timeline-content{padding-top:0}
.current-status-heading{display:flex!important;align-items:center!important;justify-content:flex-start!important;flex-wrap:wrap;gap:8px!important;margin-bottom:5px}
.current-status-label{color:var(--navy);font-size:10px;font-weight:800;letter-spacing:1.25px;text-transform:uppercase}
.current-status-item h3{font-size:20px;line-height:1.35;color:var(--navy)}
.current-status-item .timeline-content>p{max-width:760px;margin:5px 0 0;color:var(--muted);font-size:13px;line-height:1.65}
.status-history-reference{display:flex;flex-wrap:wrap;gap:7px 18px;margin-top:11px;color:var(--muted);font-size:11px}
.status-history-reference strong{color:var(--navy);overflow-wrap:anywhere}
.status-history-action{flex:0 0 auto;margin-left:18px}
.status-history-action .btn{white-space:nowrap}
.completed-history-item .timeline-content>div{align-items:center}
.history-event-meta{display:flex;align-items:center;gap:8px;flex-shrink:0;color:var(--muted);font-size:10px}
.history-event-meta>span{padding:2px 6px;border:1px solid #c9d8ce;border-radius:999px;color:#28623e;background:#f2f8f4;font-size:9px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.history-event-meta time{color:var(--muted);font-size:10px}
.documents-list-card{margin-bottom:18px}
.documents-list-card>.card-header{padding:18px 21px 14px}
.documents-list-card>.card-header h2{font-size:19px}
.documents-list-card>.card-header p{margin-top:4px;font-size:12px}
.document-link-list{display:grid}
.document-link-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 21px;border-top:1px solid var(--line)}
.document-link-row .document-icon{width:38px;height:42px}
.document-link-row .document-icon>.icon{width:19px;height:19px}
.document-link-copy{min-width:0}
.document-link-copy h3{font-size:14px;line-height:1.4}
.document-link-copy p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.compact-document-actions{justify-content:flex-end;gap:2px;margin:0}
.document-link-action{min-height:34px;padding:6px 8px;color:var(--navy);font-size:12px;text-decoration:none}
.document-link-action:hover{text-decoration:underline;background:#f3f6f9}
.document-link-action-wrap{display:flex;justify-content:flex-end;min-width:0}
.document-link-action-wrap a{display:inline-flex;align-items:center;gap:6px;max-width:330px;color:var(--navy);font-size:12px;font-weight:650;line-height:1.45;text-align:right;text-decoration:none}
.document-link-action-wrap a:hover{text-decoration:underline}
.compact-document-state{max-width:270px;margin:0;text-align:right}
.compact-document-state small{margin-top:4px;font-size:10px;line-height:1.4}

@media(max-width:1020px){
  .portal-shell>.institution-header .institution-title{display:none}
  .portal-shell .topbar{left:230px}
  .portal-shell .topbar .breadcrumb>span{display:none}
  .portal-shell .topbar .breadcrumb>.icon{display:none}
  .portal-shell .account-name{display:none}
}
@media(max-width:760px){
  .portal-shell{--masthead:58px}
  .portal-shell>.institution-header{height:var(--masthead);padding-inline:12px}
  .portal-shell>.institution-header .institution-logo img{width:180px}
  .portal-shell .topbar{left:214px;right:7px;height:55px;padding:0 3px}
  .portal-shell .topbar .mobile-menu{display:inline-flex;margin:0}
  .portal-shell .topbar .breadcrumb>strong{display:none}
}
@media(max-width:600px){
  .portal-shell>.institution-header .institution-logo img{width:120px}
  .portal-shell .topbar{left:148px}
  .portal-shell .portal-help,.portal-shell .portal-display{display:none}
  .portal-shell .portal-clock{min-width:52px;gap:0}
  .portal-shell .portal-clock>.icon,.portal-shell .portal-clock small{display:none}
  .portal-shell .portal-clock time{font-size:11px}
  .portal-shell .topbar-actions{gap:2px}
  .portal-shell .topbar .icon-button{width:31px;min-height:31px;padding:5px}
  .portal-shell .topbar .account-menu summary{padding:1px}
  .portal-shell .topbar .avatar{width:29px;height:29px}
  .case-history-panel .card-header{gap:10px}
  .status-history-timeline>.current-status-item{flex-wrap:wrap;padding-inline:17px;margin-inline:-17px}
  .status-history-timeline>.current-status-item::after{left:29px}
  .current-status-item>.timeline-content{min-width:calc(100% - 38px)}
  .status-history-action{width:calc(100% - 38px);margin:2px 0 0 38px}
  .status-history-action .btn{width:100%}
  .status-history-reference{flex-direction:column;gap:4px}
  .completed-history-item .timeline-content>div{align-items:flex-start}
  .history-event-meta{width:100%;margin-top:3px}
  .document-link-row{grid-template-columns:38px minmax(0,1fr);gap:11px;padding:15px 17px}
  .document-link-row>.document-actions,.document-link-row>.document-link-action-wrap,.document-link-row>.pdf-readiness{grid-column:2;justify-content:flex-start;text-align:left}
  .compact-document-actions{flex-wrap:wrap}
  .compact-document-state{max-width:none}
  .document-link-action-wrap a{max-width:none;text-align:left}
}
@media(max-width:360px){
  .portal-shell>.institution-header .institution-logo img{width:90px}
  .portal-shell .topbar{left:116px;right:4px}
  .portal-shell .portal-clock{min-width:46px}
  .portal-shell .portal-clock time{font-size:10px}
}
