@import url("https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;1,9..40,300&family=DM+Serif+Display:ital@0;1&display=swap");:root{--c-bg:#f6f6f7;--c-surface:#fff;--c-border:#e4e0d8;--c-border-dark:#c9c4ba;--c-ink:#1a1916;--c-ink-muted:#524f49;--c-ink-faint:#7c7a73;--c-accent:#2b4fff;--c-accent-dim:#eef1ff;--c-accent-dark:#1a36cc;--c-success:#1a7a4a;--c-success-bg:#edfaf3;--c-error:#c0392b;--c-error-bg:#fef0ee;--c-warning:#92600a;--c-warning-bg:#fef8ed;--c-info:#1254a4;--c-info-bg:#eef4fd;--c-status-sent:#1254a4;--c-status-sent-bg:#eef4fd;--c-status-viewed:#92600a;--c-status-viewed-bg:#fef8ed;--c-status-rejected:#c0392b;--c-status-rejected-bg:#fef0ee;--c-status-accepted:#1a7a4a;--c-status-accepted-bg:#edfaf3;--font-body:"DM Sans",sans-serif;--font-display:"DM Serif Display",serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--shadow-sm:0 1px 3px rgba(26,25,22,.06),0 1px 2px rgba(26,25,22,.04);--shadow-md:0 4px 16px rgba(26,25,22,.08),0 1px 4px rgba(26,25,22,.05);--shadow-lg:0 12px 40px rgba(26,25,22,.12),0 4px 12px rgba(26,25,22,.06);--shadow-nav:0 8px 32px rgba(26,25,22,.18),0 2px 8px rgba(26,25,22,.1);--nav-w:270px;--nav-bg:#1a1916;--layout-pad-v:32px;--layout-pad-h:28px;--layout-gap:24px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:10px;-webkit-font-smoothing:antialiased}body{background:var(--c-bg);color:var(--c-ink);font-family:var(--font-body);font-size:15px;line-height:1.6;min-height:100vh}a{color:var(--c-accent);text-decoration:none}a:hover{text-decoration:underline}.btn{align-items:center;border:1.5px solid transparent;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:14px;font-weight:500;gap:10px;padding:12px 24px;text-decoration:none!important;transition:background .15s,border-color .15s,box-shadow .15s,transform .1s;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn--primary{background:var(--c-accent);border-color:var(--c-accent);color:#fff}.btn--primary:hover{background:var(--c-accent-dark);border-color:var(--c-accent-dark);box-shadow:0 4px 14px rgba(43,79,255,.3)}.btn--secondary{background:var(--c-surface);border-color:var(--c-border-dark);color:var(--c-ink)}.btn--secondary:hover{border-color:var(--c-ink-muted);box-shadow:var(--shadow-sm)}.btn--ghost{background:transparent;border-color:transparent;color:var(--c-ink-muted)}.btn--ghost:hover{background:var(--c-border);color:var(--c-ink)}.btn--danger{background:var(--c-error-bg);border-color:#f5c5c0;color:var(--c-error)}.btn--danger:hover{background:#fde0dc}.btn--full{justify-content:center;width:100%}.btn--sm{font-size:13px;padding:7px 16px}.btn--lg{font-size:16px;padding:16px 36px}.form-group{display:flex;flex-direction:column;gap:7px;margin-bottom:22px}.form-group label,.form-group>label{color:var(--c-ink-muted);font-size:13px;font-weight:500;letter-spacing:.02em}.form-hint{color:var(--c-ink-faint);display:block;font-size:12px;margin-top:3px}.form-group input[type=email],.form-group input[type=number],.form-group input[type=password],.form-group input[type=tel],.form-group input[type=text],.form-group select,.form-group textarea{background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--radius-md);color:var(--c-ink);font-family:var(--font-body);font-size:15px;outline:none;padding:12px 16px;transition:border-color .15s,box-shadow .15s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px rgba(43,79,255,.12)}.form-group input.is-invalid,.form-group select.is-invalid{border-color:var(--c-error);box-shadow:0 0 0 3px rgba(192,57,43,.1)}.form-group input[type=file]{background:var(--c-bg);border:2px dashed var(--c-border-dark);cursor:pointer;font-size:14px;padding:10px 14px}.form-group input[type=file]:hover{border-color:var(--c-accent)}.form-row{display:grid;gap:20px;grid-template-columns:1fr 1fr}@media (max-width:560px){.form-row{grid-template-columns:1fr}}.form-group--inline{align-items:center;flex-direction:row;gap:10px}.form-group--inline label{color:var(--c-ink);font-size:14px;font-weight:400;margin:0}.form-group--inline input[type=checkbox]{accent-color:var(--c-accent);cursor:pointer;height:20px;width:20px}.form-errors-list,ul.form-errors{list-style:none;margin-top:5px}.form-errors-list li,span.form-error-message,ul.form-errors li{color:var(--c-error);font-size:12px}.flash{align-items:flex-start;border-left:4px solid;border-radius:var(--radius-md);display:flex;font-size:14px;font-weight:500;gap:12px;margin-bottom:20px;padding:14px 20px}.flash:before{flex-shrink:0;font-size:15px;line-height:1}.flash--success{background:var(--c-success-bg);border-color:var(--c-success);color:var(--c-success)}.flash--success:before{content:"✓";position:relative;top:3px}.flash--error{background:var(--c-error-bg);border-color:var(--c-error);color:var(--c-error)}.flash--error:before{content:"!";position:relative;top:3px}.flash--warning{background:var(--c-warning-bg);border-color:var(--c-warning);color:var(--c-warning)}.flash--warning:before{content:"⚠";font-size:13px}.flash--info{background:var(--c-info-bg);border-color:var(--c-info);color:var(--c-info)}.flash--info:before{content:"i";font-weight:700}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:500;letter-spacing:.02em;padding:4px 12px;white-space:nowrap}.badge--sent{background:var(--c-status-sent-bg);color:var(--c-status-sent)}.badge--viewed{background:var(--c-status-viewed-bg);color:var(--c-status-viewed)}.badge--rejected{background:var(--c-status-rejected-bg);color:var(--c-status-rejected)}.badge--accepted{background:var(--c-status-accepted-bg);color:var(--c-status-accepted)}.auth-page{align-items:center;background:#f6f6f7;display:flex;flex-wrap:wrap;gap:32px;justify-content:center;min-height:80vh;padding:48px 24px}.auth-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px rgba(0,0,0,.07),0 1px 4px rgba(0,0,0,.04);flex-shrink:0;max-width:520px;padding:48px 52px;width:100%}.auth-card h1{color:var(--c-ink);font-family:var(--font-body);font-size:22px;font-weight:700;letter-spacing:-.01em;margin-bottom:4px}.auth-sub{align-items:center;color:var(--c-ink-muted);display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:32px}.auth-sub a{color:var(--c-accent);font-weight:600}.auth-sub a:hover{text-decoration:underline}.auth-card .form-group{margin-bottom:12px}.auth-card .form-group label{display:none}.auth-card .form-group input[type=email],.auth-card .form-group input[type=password],.auth-card .form-group input[type=text]{background:#fff;border:1.5px solid #d8d9dc;border-radius:10px;color:var(--c-ink);font-family:var(--font-body);font-size:15px;height:60px;outline:none;padding:0 20px;transition:border-color .15s,box-shadow .15s;width:100%}.auth-card .form-group input::placeholder{color:#a0a3a8;font-weight:400}.auth-card .form-group input:focus{border-color:var(--c-accent);box-shadow:0 0 0 3px rgba(43,79,255,.1)}.auth-card .form-group input.is-invalid{border-color:var(--c-error);box-shadow:0 0 0 3px rgba(192,57,43,.08)}.auth-card .form-error,.auth-card .form-errors{color:var(--c-error);font-size:12px;margin-top:4px;padding-left:4px}.auth-card .form-group--inline{align-items:center;flex-direction:row;gap:10px;margin-bottom:0;margin-top:4px}.auth-card .form-group--inline label{color:var(--c-ink-muted);display:block;font-size:14px;font-weight:400}.auth-card .form-group--inline input[type=checkbox]{accent-color:var(--c-accent);border:none;border-radius:0;box-shadow:none;cursor:pointer;height:16px;padding:0;width:16px}.auth-card .btn--primary{background:var(--global-blue);border-color:transparent;border-radius:999px;font-size:15px;font-weight:600;height:48px;letter-spacing:.01em;margin-top:28px;padding:0 36px;transition:background .2s,box-shadow .2s;width:auto}.auth-card .btn--primary:focus,.auth-card .btn--primary:hover{background:var(--global-blue-hover);border-color:var(--global-blue-hover);box-shadow:0 4px 14px rgba(43,79,255,.28)}.auth-actions{align-items:center;display:flex;flex-wrap:wrap;gap:24px;margin-top:28px}.auth-actions .btn--primary{margin-top:0}.auth-help-link{color:var(--c-accent);font-size:14px;font-weight:600}.auth-help-link:hover{text-decoration:underline}.auth-card .flash{font-size:14px;margin-bottom:20px}.auth-aside{flex-shrink:0;max-width:440px;width:100%}.auth-aside-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px rgba(0,0,0,.07);overflow:hidden}.auth-aside-card img{display:block;height:234px;object-fit:cover;width:100%}.auth-aside-card__body{padding:24px 28px 32px}.auth-aside-card__date{color:var(--c-ink-faint);font-size:12px;letter-spacing:.04em;margin-bottom:8px}.auth-aside-card__title{color:var(--c-ink);font-size:17px;font-weight:700;line-height:1.4;margin-bottom:10px}.auth-aside-card__text{color:var(--c-ink-muted);font-size:14px;line-height:1.6}@media (max-width:960px){.auth-aside{display:none}}@media (max-width:600px){.auth-page{align-items:flex-start;padding:24px 16px}.auth-card{border-radius:12px;padding:36px 24px}.auth-card h1{font-size:20px}}.candidate-wrapper{align-items:flex-start;display:flex;gap:var(--layout-gap);margin:0 auto;max-width:1400px;min-height:calc(100vh - var(--layout-pad-v)*2);padding:var(--layout-pad-v) var(--layout-pad-h)}.candidate-nav{animation:navSlideIn .35s cubic-bezier(.22,1,.36,1) both;background:var(--nav-bg);background:#fff;border:1.5px solid #e9e7e4;border-radius:var(--radius-xl);display:flex;flex-direction:column;flex-shrink:0;max-height:calc(100vh - var(--layout-pad-v)*2);overflow:hidden;overflow-y:auto;padding:25px 10px;position:sticky;top:var(--layout-pad-v);width:var(--nav-w)}@keyframes navSlideIn{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}.candidate-nav__logo{border-bottom:1px solid hsla(0,0%,100%,.07);color:#fff;display:block;font-family:var(--font-display);font-size:17px;line-height:1.2;margin-bottom:8px;padding:26px 22px 20px;text-decoration:none!important}.candidate-nav__logo span{color:hsla(0,0%,100%,.38);display:block;font-family:var(--font-body);font-size:11.5px;font-style:italic;margin-top:3px}.candidate-nav a:not(.candidate-nav__logo){align-items:center;border-radius:var(--radius-md);color:hsla(0,0%,100%,.48);color:#16161a;display:flex;font-size:13.5px;font-weight:400;gap:12px;margin:2px 8px;padding:11px 18px;position:relative;text-decoration:none!important;transition:color .15s,background .15s}.candidate-nav a svg{position:relative;top:-1px}.candidate-nav a:not(.active) svg{color:#001961;opacity:.7}.candidate-nav a:hover svg{color:inherit;opacity:1}.candidate-nav a.active,.candidate-nav a:not(.candidate-nav__logo):hover{background:#f7f6f3;color:var(--global-blue)}.candidate-nav a.active{font-weight:600}.candidate-nav a .nav-icon,.candidate-nav a svg{flex-shrink:0;opacity:.5;transition:opacity .15s}.candidate-nav a:hover .nav-icon,.candidate-nav a:hover svg{opacity:.8}.candidate-nav a.active .nav-icon,.candidate-nav a.active svg{opacity:1}.candidate-nav__spacer{flex:1;min-height:14px}.candidate-nav__footer{border-top:1px solid hsla(0,0%,100%,.07);margin-top:6px;padding:14px 18px 18px}.candidate-nav__footer a{background:transparent!important;color:hsla(0,0%,100%,.28)!important;font-size:12px;gap:9px;margin:0!important;padding:7px 0!important}.candidate-nav__footer a:hover{color:hsla(0,0%,100%,.55)!important}.candidate-main{animation:contentFadeIn .4s ease .08s both;flex:1;min-width:0}@keyframes contentFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.candidate-main h1{color:var(--c-ink);font-family:var(--font-display);font-size:28px;font-weight:400;letter-spacing:-.02em;margin-bottom:32px}.candidate-main h2{color:var(--c-ink);font-size:14px;font-weight:600;letter-spacing:.01em;margin-bottom:20px}@media (max-width:900px){.candidate-wrapper{gap:0;padding:20px 16px}.candidate-nav{display:none}.candidate-main{width:100%}}.applications-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;margin-bottom:28px}.applications-count{color:var(--c-ink-muted);font-size:14px}.applications-count strong{color:var(--c-ink);font-weight:600}.applications-list{display:flex;flex-direction:column;gap:14px}.application-card{align-items:start;background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--radius-lg);display:grid;gap:5px 20px;grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:22px 26px;transition:border-color .15s,box-shadow .15s,transform .15s}.application-card:hover{border-color:var(--c-border-dark);box-shadow:var(--shadow-md)}.application-card__header{align-items:center;display:flex;flex-wrap:wrap;gap:14px;grid-column:1}.application-card__header h2{color:var(--c-ink);font-size:15px;font-weight:500;letter-spacing:-.01em;margin:0}.application-card__badge-col{align-items:flex-end;display:flex;flex-direction:column;gap:10px;grid-column:2;grid-row:1/3}.application-card__meta{align-items:center;display:flex;flex-wrap:wrap;gap:18px;grid-column:1}.application-card__company{color:var(--global-dark-blue-text);font-size:13px;font-weight:600;margin:5px 0}.application-card__date,.application-card__location{color:var(--c-ink-faint);font-size:12px}.application-card__location{align-items:center;display:flex;gap:5px}.application-card__link{color:var(--c-accent);font-weight:500;margin:0}.empty-state{background:var(--c-surface);border:1.5px dashed var(--c-border-dark);border-radius:var(--radius-xl);padding:88px 28px;text-align:center}.empty-state__icon{filter:grayscale(1);font-size:40px;margin-bottom:18px;opacity:.4}.empty-state p{color:var(--c-ink-muted);font-size:15px;margin-bottom:26px}.status-filters{display:flex;flex-wrap:wrap;gap:7px}.status-filter{background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:999px;color:var(--c-ink-muted);cursor:pointer;font-size:12.5px;font-weight:500;padding:6px 16px;text-decoration:none!important;transition:all .15s}.status-filter:hover{border-color:var(--c-accent);color:var(--c-accent)}.status-filter.is-active{background:var(--c-accent);border-color:var(--c-accent);color:#fff}.documents-section{background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--radius-lg);margin-bottom:24px;padding:30px 34px}.documents-section h2{border-bottom:1px solid var(--c-border);margin-bottom:22px;padding-bottom:18px}.document-preview{align-items:center;background:var(--c-bg);border:1.5px solid var(--c-border);border-radius:var(--radius-md);display:flex;gap:22px;margin-bottom:24px;padding:18px 22px}.document-preview__icon{align-items:center;background:#fff;border:1.5px solid var(--c-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);display:flex;flex-shrink:0;font-size:20px;height:66px;justify-content:center;width:56px}.document-preview__info{flex:1}.document-preview__name{color:var(--c-ink);font-size:14px;font-weight:500;margin-bottom:3px}.document-preview__meta{color:var(--c-ink-faint);font-size:12px}.document-preview__actions{display:flex;gap:10px}.upload-form{margin-top:4px}.upload-drop-zone{border:2px dashed var(--c-border-dark);border-radius:var(--radius-md);cursor:pointer;padding:44px 28px;position:relative;text-align:center;transition:border-color .15s,background .15s}.upload-drop-zone.is-dragover,.upload-drop-zone:hover{background:var(--c-accent-dim);border-color:var(--c-accent)}.upload-drop-zone input[type=file]{background:transparent!important;border:none!important;box-shadow:none!important;cursor:pointer;height:100%;inset:0;opacity:0;position:absolute;width:100%}.upload-drop-zone__icon{font-size:30px;margin-bottom:13px;opacity:.5}.upload-drop-zone__label{color:var(--c-ink);font-size:14px;font-weight:500;margin-bottom:5px}.upload-drop-zone__hint{color:var(--c-ink-faint);font-size:12.5px}.info-text{color:var(--c-ink-muted);font-size:14px;margin-bottom:22px}.doc-grid{display:grid;gap:14px;grid-template-columns:1fr 1fr;margin-bottom:24px}@media (max-width:600px){.doc-grid{grid-template-columns:1fr}}.doc-card{align-items:center;background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--radius-md);display:flex;gap:13px;padding:18px;transition:border-color .15s}.doc-card:hover{border-color:var(--c-border-dark)}.doc-card__icon{flex-shrink:0;font-size:18px}.doc-card__label{color:var(--c-ink-muted);font-size:12px}.doc-card__name{color:var(--c-ink);font-size:13.5px;font-weight:500}.settings-form{max-width:620px}.settings-section{background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--radius-lg);margin-bottom:18px;padding:30px 34px}.settings-section h2{border-bottom:1px solid var(--c-border);color:var(--c-ink);font-size:11.5px;font-weight:600;letter-spacing:.07em;margin-bottom:22px;padding-bottom:18px;text-transform:uppercase}.settings-actions{display:flex;gap:14px;justify-content:flex-end;margin-top:10px}.avatar-row{border-bottom:1px solid var(--c-border);gap:22px;margin-bottom:26px;padding-bottom:26px}.avatar-circle,.avatar-row{align-items:center;display:flex}.avatar-circle{background:var(--c-accent-dim);border:2px solid var(--c-border);border-radius:50%;color:var(--c-accent);flex-shrink:0;font-family:var(--font-display);font-size:20px;height:76px;justify-content:center;width:76px}.avatar-info{flex:1}.avatar-info p{color:var(--c-ink-muted);font-size:13px;margin-top:5px}.danger-zone{background:var(--c-error-bg);border-color:#f5c5c0}.danger-zone h2{border-color:#f5c5c0;color:var(--c-error)}.danger-zone-item{align-items:center;display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between}.danger-zone-item p{color:var(--c-error);font-size:14px;max-width:360px}.page-header{margin-bottom:34px}.page-header__breadcrumb{align-items:center;color:var(--c-ink-faint);display:flex;font-size:12.5px;gap:7px;margin-bottom:7px}.page-header__breadcrumb a{color:var(--c-ink-muted);text-decoration:none}.page-header__breadcrumb a:hover{color:var(--c-ink)}.page-header__breadcrumb:after{content:"/"}.page-header h1{margin-bottom:0}.page-header__sub{color:var(--c-ink-muted);font-size:14px;margin-top:5px}.mt-0{margin-top:0}.mt-8{margin-top:10px}.mt-16{margin-top:20px}.mt-24{margin-top:28px}.mt-32{margin-top:40px}.mb-0{margin-bottom:0}.mb-8{margin-bottom:10px}.mb-16{margin-bottom:20px}.mb-24{margin-bottom:28px}.text-muted{color:var(--c-ink-muted)}.text-faint{color:var(--c-ink-faint)}.text-small{font-size:13px}.text-center{text-align:center}.divider{border:none;border-top:1px solid var(--c-border);margin:28px 0}.form-error ul{padding-left:20px}.form-error li,.form-errors li{color:red;font-size:1.4rem;margin:2px 0}