:root{--blue:#315f9f;--navy:#17365d;--light:#eef4fb;--border:#cbd5e1;--text:#172033;--muted:#5b6573;--green:#287a4b;--red:#a61b1b;--shadow:0 8px 28px rgba(23,54,93,.08)}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:#f7f9fc;line-height:1.5}.wrap{width:min(1160px,calc(100% - 32px));margin:0 auto}.site-header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.header-inner{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.brand-wrap{display:flex;align-items:center;gap:12px}.brand-logo{width:82px;height:60px;object-fit:contain}.brand{font-family:Georgia,serif;font-size:25px;font-weight:700;color:var(--navy)}.tagline{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}nav{display:flex;gap:20px}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}main{padding:34px 0 60px}.hero{padding:36px 0}.hero.compact{padding:18px 0}.hero h1{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:5px 0 10px;color:var(--navy)}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;color:var(--blue);margin:0}.card,.form-section{background:#fff;border:1px solid var(--border);border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:var(--shadow)}.job-card{display:flex;justify-content:space-between;gap:24px;align-items:center}.job-card h2{margin-top:0}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--blue);background:#fff;color:var(--blue);border-radius:7px;padding:10px 15px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.button:hover{text-decoration:none;filter:brightness(.98)}.button.primary{background:var(--blue);color:#fff}.button.secondary{border-color:var(--border);color:var(--navy)}.button.large{padding:13px 20px}.notice{background:#fff8dd;border:1px solid #ebd38a;border-radius:9px;padding:15px 17px;margin-bottom:20px}.notice.small{font-size:14px;margin-top:8px}.notice.success{background:#edf8f1;border-color:#add3ba}.message{padding:13px 16px;border-radius:8px;margin-bottom:18px;background:#eef4fb}.message.error{background:#fff0f0;color:#7a1111;border:1px solid #e5b4b4}.message.success{background:#edf8f1;border:1px solid #add3ba}.form-section h2{margin:-24px -24px 22px;padding:11px 18px;background:var(--blue);color:#fff;border-radius:11px 11px 0 0;font-family:Georgia,serif;font-size:21px}.form-grid{display:grid;gap:15px;margin-bottom:15px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.span2{grid-column:span 2}.span3{grid-column:span 3}label{display:block;font-weight:700;margin-bottom:5px;font-size:14px}input,select,textarea{width:100%;border:1px solid #aeb9c7;border-radius:6px;padding:10px 11px;background:#fff;color:var(--text);font:inherit}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:3px solid rgba(49,95,159,.16);border-color:var(--blue)}input[type=checkbox],input[type=radio]{width:auto}.checkbox-row{display:flex;align-items:flex-start;gap:8px;padding:8px 0}.checkbox-row label{margin:0}.help{font-size:13px;color:var(--muted);margin-top:4px}.errorlist{list-style:none;margin:5px 0 0;padding:0;color:var(--red);font-size:13px;font-weight:600}.repeat-table{overflow-x:auto}.repeat-head,.repeat-row{display:grid;gap:8px;min-width:760px;margin-bottom:8px}.repeat-head{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase}.repeat-head,.repeat-row.five,.repeat-row.reference{grid-template-columns:1.1fr 2.1fr .7fr 1.5fr 1.6fr}.repeat-head.cert,.repeat-row.four{grid-template-columns:2.2fr .8fr 1.3fr 1.2fr}.repeat-card{border:1px solid var(--border);border-radius:9px;padding:18px;margin:16px 0}.repeat-card legend{font-weight:800;color:var(--navy);padding:0 8px}.sensitive{border-left:5px solid #d6a938}.authorization{background:#f8fafc;border:1px solid var(--border);padding:15px;border-radius:8px;font-size:14px}.required{font-weight:700}.signature-section canvas{display:block;width:100%;max-width:720px;height:180px;border:2px dashed #8b9aab;border-radius:8px;background:#fff;touch-action:none}.signature-actions{margin-top:8px}.submit-panel{background:var(--navy);color:#fff;border-radius:12px;padding:22px;display:flex;justify-content:space-between;align-items:center;gap:20px}.submit-panel p{margin:0}.success-card{text-align:center;max-width:720px;margin:40px auto}.success-icon{width:70px;height:70px;border-radius:50%;background:#e7f6ec;color:var(--green);display:grid;place-items:center;font-size:38px;font-weight:800;margin:0 auto}.confirmation-number{display:inline-block;background:var(--navy);color:#fff;padding:10px 16px;border-radius:8px;font-family:ui-monospace,monospace;font-size:19px;letter-spacing:.05em}.stats-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:20px}.stat{background:#fff;border:1px solid var(--border);border-radius:10px;padding:15px;box-shadow:var(--shadow)}.stat strong{font-size:28px;display:block;color:var(--navy)}.stat span{font-size:12px;color:var(--muted)}.card-header,.staff-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.card-header h2{margin:0}.staff-heading{margin-bottom:20px}.actions{display:flex;gap:10px;flex-wrap:wrap}.responsive-table{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:11px;border-bottom:1px solid var(--border);font-size:14px}th{font-size:12px;text-transform:uppercase;color:var(--muted)}.status{background:var(--light);color:var(--navy);padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.staff-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.detail-list{display:grid;grid-template-columns:160px 1fr;margin:0}.detail-list dt,.detail-list dd{padding:8px 0;border-bottom:1px solid #edf0f3}.detail-list dt{font-weight:700;color:var(--muted)}.detail-list dd{margin:0}.hash{font-family:ui-monospace,monospace;word-break:break-all;font-size:12px}.timeline{border-left:2px solid #d9e3ef;margin-left:8px;padding-left:22px}.timeline-item{position:relative;padding:5px 0 18px}.timeline-item:before{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--blue);left:-28px;top:10px}.timeline-item h3{margin:5px 0}.email-body{background:#f8fafc;border:1px solid var(--border);padding:12px;border-radius:7px;overflow:auto}.letter-card{max-width:850px;margin-left:auto;margin-right:auto}.letter-preview{font-family:Georgia,serif;font-size:16px;line-height:1.7}.offer-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:var(--light);padding:15px;border-radius:8px;margin:18px 0}.site-footer{background:#fff;border-top:1px solid var(--border);color:var(--muted);font-size:13px;padding:22px 0}.meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:15px;margin:20px 0}.prose{margin-bottom:22px}.muted{color:var(--muted)}.status-approved{background:#edf8f1;color:var(--green)}.status-superseded{background:#f0f1f3;color:var(--muted)}
@media(max-width:900px){.stats-grid{grid-template-columns:repeat(3,1fr)}.staff-grid{grid-template-columns:1fr}.form-grid.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.wrap{width:min(100% - 20px,1160px)}.site-header{position:static}.header-inner,.job-card,.staff-heading,.submit-panel{align-items:flex-start;flex-direction:column}.form-grid.two,.form-grid.three,.form-grid.four,.meta-grid,.offer-facts{grid-template-columns:1fr}.span2,.span3{grid-column:span 1}.stats-grid{grid-template-columns:repeat(2,1fr)}.form-section{padding:18px}.form-section h2{margin:-18px -18px 18px}.detail-list{grid-template-columns:1fr}.detail-list dd{padding-top:0}}
.auth-card{max-width:680px;margin:38px auto}.auth-card h1{color:var(--navy);font-size:36px;margin:.25rem 0 1rem}.applicant-hero{display:flex;justify-content:space-between;align-items:center;gap:20px}.application-card h2{margin:.2rem 0}.status-large{font-size:14px;padding:8px 12px;white-space:nowrap}.applicant-detail-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}.applicant-current-status{display:inline-block;background:var(--navy);color:#fff;font-size:20px;font-weight:800;padding:10px 14px;border-radius:8px;margin:5px 0 16px}
@media(max-width:750px){.applicant-hero{align-items:flex-start;flex-direction:column}.applicant-detail-grid{grid-template-columns:1fr}}
