body{min-height:100svh;font-size:15px;color-scheme:light}button,input,textarea{font:inherit}button:disabled{cursor:wait;opacity:.55}.apply-header{max-width:1160px;margin:auto;padding:32px 40px 24px}.apply-header .brand{font-size:49px}.apply-shell{max-width:596px;margin:20px auto 64px;padding:0 24px}.apply-shell h1{font-size:40px;font-weight:530;letter-spacing:-.06em;line-height:1.1;max-width:none;margin:0 0 14px;text-align:left}.apply-shell h2{font-size:28px;font-weight:530;letter-spacing:-.045em;max-width:none;margin:0 0 24px}.role{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 34px}
.apply-shell form{display:flex;flex-direction:column;gap:20px}.apply-shell label{display:block;font-size:12px;font-weight:500;line-height:1.6;color:var(--soft-ink)}.optional{font-size:11px;color:var(--muted);font-weight:400;margin-left:5px}.name-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.name-fields>label{min-width:0}.apply-shell input:not([type=hidden],[type=file]),.apply-shell textarea{display:block;width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:rgb(255 255 255 / .5);padding:14px 15px;margin:7px 0 0;color:var(--ink);font-size:15px;line-height:1.5;transition:border-color var(--d2) var(--ease),box-shadow var(--d2) var(--ease),background var(--d2) var(--ease)}.apply-shell input::placeholder{color:#969188;opacity:1}.apply-shell input:focus,.apply-shell textarea:focus{outline:0;border-color:#918b82;background:rgb(255 255 255 / .8);box-shadow:0 0 0 3px rgb(25 25 29 / .04)}
.dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:174px;padding:22px 16px;border:1px dashed #c5bfb4;border-radius:18px;background:rgb(255 255 255 / .28);color:var(--ink);text-align:center;transition:border-color var(--d2) var(--ease),background var(--d2) var(--ease),box-shadow var(--d2) var(--ease)}.dropzone:hover,.dropzone.is-dragging{border-color:#918b82;background:rgb(255 255 255 / .7)}.dropzone.is-dragging{box-shadow:0 0 0 3px rgb(25 25 29 / .06)}.upload-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--beige);margin-bottom:10px}.upload-icon svg{width:19px;height:19px;fill:none;stroke:var(--soft-ink);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.drop-title{font-size:13px;line-height:1.6;font-weight:500}.browse{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#aaa397}.drop-description{font-size:12px;color:var(--muted);margin-top:3px;line-height:1.6}.drop-help{font-size:10px;color:var(--muted);margin-top:10px;line-height:1.6}
.file-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:7px}.file-list:empty{display:none}.file-list li{display:flex;align-items:center;gap:11px;background:rgb(255 255 255 / .55);border:1px solid var(--line);border-radius:12px;padding:6px 8px 6px 14px;min-width:0}.file-icon{width:19px;height:19px;fill:none;stroke:var(--muted);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.file-info{display:flex;flex:1;min-width:0;flex-direction:column;gap:1px}.file-name{font-size:12px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.file-size{font-size:10px;color:var(--muted)}.file-list button{border:0;background:none;display:grid;place-items:center;color:var(--muted);width:36px;height:36px;flex-shrink:0;border-radius:50%;transition:background var(--d2) var(--ease),color var(--d2) var(--ease)}.file-list button:hover{background:var(--beige);color:var(--ink)}.file-list button svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.5;stroke-linecap:round}
.primary{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:54px;padding:15px 18px;border:0;border-radius:999px;background:var(--ink);color:var(--paper);font-size:14px;font-weight:500;letter-spacing:-.01em;box-shadow:0 1px 2px rgb(25 25 29 / .1);transition:background var(--d2) var(--ease),box-shadow var(--d3) var(--ease)}.primary:hover{background:#2e2d2a;box-shadow:0 10px 24px -18px rgb(25 25 29 / .6)}.primary:active{background:#000}.primary svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.text-button{align-self:center;border:0;background:none;font-size:12px;color:var(--muted);min-height:36px;padding:6px 16px}.text-button:hover{color:var(--ink)}.trap{display:none}.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}
#loading-step{padding:24px 0}#loading-status{font-size:14px;color:var(--muted)}.apply-shell #application{margin-top:0;resize:vertical;min-height:350px;font-size:14px;line-height:1.85}.sources{font-size:12px;line-height:1.7;color:var(--muted)}.sources summary{cursor:pointer;width:fit-content;padding:6px 0}.sources ul{padding-left:16px;overflow-wrap:anywhere}#success-step p{font-size:14px;color:var(--muted);line-height:1.7}.error{font-size:13px;line-height:1.7;color:#944030;margin:20px 0 0}
@media(max-width:600px){.apply-header{padding:28px 24px 24px}.apply-shell{margin:14px auto 40px;padding:0 24px}.apply-shell h1{font-size:34px}.role{font-size:13px;margin-bottom:28px}.name-fields{gap:12px}.apply-shell input:not([type=hidden],[type=file]),.apply-shell textarea,.apply-shell #application{font-size:16px;padding:13px 12px}.apply-shell form{gap:18px}.dropzone{min-height:164px}.primary{font-size:13px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.materials{border:0;padding:0;margin:8px 0 0;min-width:0}.materials legend{width:100%;font-size:16px;font-weight:600;line-height:1.5;letter-spacing:-.02em;color:var(--ink);padding:0 0 12px}.materials legend .optional{float:right;font-size:12px;font-weight:500;line-height:2;letter-spacing:0;margin-left:16px;color:var(--soft-ink)}.materials-composer{border:1px solid var(--line);border-radius:18px;background:rgb(255 255 255 / .45);overflow:hidden;transition:border-color var(--d2) var(--ease),box-shadow var(--d2) var(--ease)}.materials-composer:focus-within{border-color:#aaa297;box-shadow:0 0 0 3px rgb(25 25 29 / .025)}.apply-shell .materials-composer textarea{border:0;border-radius:0;margin:0;padding:16px;min-height:95px;resize:vertical;background:transparent;font-size:14px;box-shadow:none}.materials-composer textarea:focus{background:transparent;box-shadow:none}.materials-composer .upload-area{padding:0 12px 12px}.materials-composer .dropzone{border-color:var(--line);border-radius:12px;min-height:146px;background:rgb(247 245 240 / .5);padding:16px}.materials-composer .dropzone:hover,.materials-composer .dropzone.is-dragging{background:var(--beige);border-color:#b8b0a4}.materials-composer .upload-icon{width:32px;height:32px;margin-bottom:7px}.materials-composer .drop-help{margin-top:7px}.materials-composer .file-list li{background:rgb(247 245 240 / .6)}
.apply-shell #loading-step{padding:44px 0 52px;max-width:390px;margin:auto;outline:0}.apply-shell #loading-title{font-size:24px;font-weight:500;letter-spacing:-.045em;margin:0 0 25px}.progress-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin-bottom:10px}.progress-meta #loading-percent{font-variant-numeric:tabular-nums;font-size:12px;color:var(--soft-ink)}#loading-progress{display:block;width:100%;height:6px;appearance:none;-webkit-appearance:none;overflow:hidden;border:0;border-radius:999px;background:var(--beige);color:var(--ink)}#loading-progress::-webkit-progress-bar{background:var(--beige);border-radius:999px}#loading-progress::-webkit-progress-value{background:var(--ink);border-radius:999px;transition:width 180ms linear}#loading-progress::-moz-progress-bar{background:var(--ink);border-radius:999px;transition:width 180ms linear}.sources .sources-label{font-size:11px;font-weight:500;color:var(--muted);margin:0 0 8px}.sources ol{margin:0;padding-left:18px;overflow-wrap:anywhere}.sources li{padding:2px 0;font-size:12px}.sources a{color:var(--soft-ink)}
@media(max-width:600px){.apply-shell .materials-composer textarea{font-size:16px;padding:14px;min-height:100px}.apply-shell #loading-step{padding-top:30px}.materials-composer .dropzone{min-height:143px}}
@media(prefers-reduced-motion:reduce){#loading-progress::-webkit-progress-value,#loading-progress::-moz-progress-bar{transition:none}}
