@font-face{font-family:Red Hat Display;src:url(/fonts/RedHatDisplay-Regular.woff) format("woff");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Red Hat Display;src:url(/fonts/RedHatDisplay-Bold.woff) format("woff");font-style:normal;font-weight:700;font-display:swap}:root{color:#050537;background:#f3f3f6;font-family:Red Hat Display,Segoe UI,sans-serif;font-synthesis:none;--navy: #050537;--violet: #261766;--red: #d13137;--red-dark: #bb0006;--paper: #fff;--surface: #f3f3f6;--muted: #56566f;--line: #d9d9e3}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0;background:linear-gradient(145deg,#fff,#f3f3f6 70%)}body:before{position:fixed;top:0;right:0;width:min(32vw,360px);height:min(40vw,450px);pointer-events:none;content:"";background:linear-gradient(135deg,#f0313717,#2617660a);clip-path:polygon(100% 0,100% 100%,0 0)}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--red);outline-offset:3px}.shell{position:relative;display:grid;grid-template-rows:auto 1fr auto;width:min(100% - 48px,800px);min-height:100vh;margin:0 auto;padding:34px 0 24px}.brand{display:flex;align-items:center;gap:16px;margin-bottom:30px}.brand-logo{display:block;width:146px;height:auto}.brand-divider{width:1px;height:28px;background:var(--line)}.brand-label{color:var(--violet);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.card{align-self:center;padding:clamp(28px,6vw,60px);border:1px solid #e5e5ed;border-top:4px solid var(--red);border-radius:4px;background:var(--paper);box-shadow:0 28px 70px #05053717}.eyebrow{margin-bottom:14px;color:var(--red-dark);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}h1,h2{margin:0;color:var(--navy);letter-spacing:-.035em}h1{font-size:clamp(40px,8vw,64px);line-height:1.02}h2{font-size:clamp(28px,5vw,38px);line-height:1.1}.intro{max-width:510px;margin:22px 0 30px;color:var(--muted);line-height:1.65}.state{animation:appear .35s ease-out}.hidden{display:none!important}.centered{text-align:center}.dropzone{display:flex;align-items:center;flex-direction:column;width:100%;padding:38px 20px 30px;border:2px dashed #a9a9c2;border-radius:4px;cursor:pointer;background:#f7f7fa;transition:border-color .2s,background .2s,transform .2s}.dropzone:hover,.dropzone:focus-visible,.dropzone.dragging{border-color:var(--red);background:#fff7f7;transform:translateY(-2px)}.dropzone strong{margin:16px 0 5px;font-size:19px}.dropzone>span:not(.upload-symbol):not(.select-link){color:var(--muted);font-size:14px}.select-link{margin-top:18px;color:var(--red-dark);font-size:14px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.upload-symbol{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;color:#fff;background:var(--violet)}.upload-symbol svg,.success-icon svg{width:30px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.limit-row,.progress-meta{display:flex;justify-content:space-between;margin-top:12px;color:var(--muted);font-size:13px}.expiry{margin:24px 0 0;color:var(--muted);font-size:13px;text-align:center}.file-panel{display:flex;align-items:center;gap:14px;padding:18px;border:1px solid var(--line);border-radius:4px;background:#f7f7fa}.file-icon{display:grid;flex:0 0 46px;place-items:center;height:52px;border-radius:3px;color:#fff;background:var(--violet);font-size:10px;font-weight:700;letter-spacing:.06em}.file-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:4px}.file-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-copy small{color:var(--muted)}.percentage{color:var(--navy);font-weight:700}.progress-track{overflow:hidden;height:8px;margin-top:20px;border-radius:10px;background:#e6e6ee}.progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--violet),var(--red));transition:width .15s linear}.button{width:100%;margin-top:22px;padding:14px 20px;border:1px solid var(--red);border-radius:4px;cursor:pointer;font-weight:700;transition:background .2s,color .2s,border-color .2s}.button.primary{color:#fff;background:var(--red)}.button.primary:hover{border-color:var(--red-dark);background:var(--red-dark)}.button.secondary{border-color:var(--violet);color:var(--violet);background:transparent}.button.secondary:hover{color:#fff;background:var(--violet)}#resume>p,#error>p{color:var(--muted);line-height:1.6}.status-icon{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 24px;border-radius:50%;font-size:30px;font-weight:700}.success-icon{color:var(--violet);background:#e9e7f2}.error-icon{color:#fff;background:var(--red)}.success-icon+.eyebrow{margin-top:28px}#success p{color:var(--muted);line-height:1.6}.close-note{margin-top:28px;font-size:13px}.spinner{display:block;width:38px;height:38px;margin:20px auto;border:3px solid var(--line);border-top-color:var(--red);border-radius:50%;animation:spin .8s linear infinite}footer{display:flex;justify-content:center;gap:24px;margin-top:24px;color:var(--muted);font-size:12px}footer span:before{content:"✓";margin-right:6px;color:var(--red);font-weight:700}@keyframes spin{to{transform:rotate(360deg)}}@keyframes appear{0%{opacity:0;transform:translateY(6px)}}@media(max-width:560px){.shell{width:min(100% - 24px,800px);padding-top:20px}.brand{gap:10px;margin-bottom:20px}.brand-logo{width:112px}.brand-label{font-size:11px;letter-spacing:.04em}.brand-divider{height:22px}.card{padding:28px 20px}footer{align-items:center;flex-direction:column;gap:7px}.file-panel{padding:14px}.percentage{font-size:13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.admin-shell{width:min(100% - 40px,1080px)}.admin-header{justify-content:space-between}.admin-header>.brand{margin:0}.account{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:13px}.account button,.text-button{padding:0;border:0;cursor:pointer;color:var(--violet);background:transparent;font-weight:700;text-decoration:underline;text-underline-offset:4px}.account button:hover,.text-button:hover{color:var(--red-dark)}.admin-login{width:min(100%,720px);margin:auto}.admin-content{display:grid;gap:24px}.admin-hero{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:42px 8px 24px;border-bottom:1px solid var(--line)}.admin-hero>p{max-width:370px;margin:0 0 6px;color:var(--muted);line-height:1.65}.admin-card{align-self:initial;padding:clamp(26px,5vw,44px)}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.link-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.link-form label{display:flex;flex-direction:column;gap:8px;color:var(--navy);font-size:13px;font-weight:700}.link-form label small{color:var(--muted);font-weight:400}.link-form input,.copy-row input{width:100%;padding:13px 14px;border:1px solid #b4b4c3;border-radius:4px;color:var(--navy);background:#fff}.link-form input:focus,.copy-row input:focus{border-color:var(--violet)}.wide{grid-column:1 / -1}.link-form .button{margin-top:2px}.form-error{margin:0;padding:12px 14px;border-left:3px solid var(--red);color:#84232a;background:#fff1f1;font-size:13px}.created-link{margin-top:28px;padding:22px;border-left:4px solid var(--red);border-radius:4px;background:#f3f3f6}.created-link .eyebrow{margin-bottom:5px}.created-link>p{margin:10px 0 0;color:var(--muted);font-size:12px}.copy-row{display:flex;gap:8px;margin-top:15px}.copy-row button{padding:0 18px;border:0;border-radius:4px;cursor:pointer;color:#fff;background:var(--violet);font-weight:700}.copy-row button:hover{background:var(--navy)}.links-card{margin-bottom:24px}.links-list{display:grid}.link-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 4px;border-top:1px solid var(--line)}.link-main{display:flex;min-width:0;flex-direction:column;gap:6px}.link-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-main span{color:var(--muted);font-size:12px}.link-actions{display:flex;align-items:center;gap:14px}.status-badge{padding:5px 9px;border-radius:3px;font-size:11px;font-weight:700;white-space:nowrap;background:#eeeef3}.status-available{color:#326046;background:#e1efe3}.status-uploading{color:#765b13;background:#f5edcc}.status-completed{color:#fff;background:var(--violet)}.status-expired,.status-revoked,.status-failed{color:#55556f;background:#ececf1}.text-button.danger{color:var(--red-dark);font-size:12px}.empty-state{padding:42px 10px;border-top:1px solid var(--line);color:var(--muted);text-align:center}@media(max-width:700px){.admin-shell{width:min(100% - 24px,1080px)}.admin-hero{align-items:start;flex-direction:column;gap:18px;padding-top:24px}.link-form{grid-template-columns:1fr}.wide{grid-column:auto}.link-row{align-items:start;flex-direction:column}.link-actions{width:100%;justify-content:space-between}.account span{display:none}.copy-row{flex-direction:column}.copy-row button{padding:12px}}
