/* The shared resume uploader (plan 09 Phase 3): drop zone, reading view and refusals, in full and compact sizes. */
.hq-upload{display:block;color:var(--text)}
.hq-upload [hidden]{display:none!important}
.hq-upload .hq-upload-zone{border:2px dashed color-mix(in srgb,var(--primary) 45%,var(--line));background:var(--tint);border-radius:14px;padding:44px 28px;text-align:center;transition:border-color .15s,background .15s}
.hq-upload .hq-upload-zone.is-over{border-color:var(--primary);background:color-mix(in srgb,var(--tint) 75%,var(--primary) 12%)}
.hq-upload .hq-upload-icon{width:60px;height:60px;border-radius:16px;background:var(--surface);border:1px solid color-mix(in srgb,var(--primary) 30%,var(--line));display:grid;place-items:center;margin:0 auto 14px;font-size:26px;color:var(--primary-ink)}
.hq-upload .hq-upload-title{display:block;font-size:24px;line-height:1.25;margin:0 0 4px}
.hq-upload .hq-upload-or{margin:6px 0 14px;color:var(--muted)}
.hq-upload .hq-upload-limits{margin:12px 0 0;color:var(--muted)}
.hq-upload .hq-upload-links{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:14px 2px 0}
.hq-upload .hq-upload-link{border:0;background:none;padding:0;color:var(--text);text-decoration:underline;font:inherit;font-weight:600;cursor:pointer}
.hq-upload .hq-upload-privacy{margin:14px 2px 0;color:var(--muted);max-width:720px}
.hq-upload .hq-upload-note{margin:0 0 12px;color:var(--muted)}
.hq-upload .hq-upload-message{margin:0 0 12px;font-weight:600}
.hq-upload .hq-upload-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hq-upload .hq-upload-label{display:block;font-weight:600}
.hq-upload .hq-upload-area{display:block;width:100%;margin-top:8px;min-height:180px;font:inherit;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text)}
.hq-upload .hq-upload-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:14px}
.hq-upload.is-compact .hq-upload-zone{display:flex;align-items:center;gap:16px;padding:16px 18px;text-align:left}
.hq-upload.is-compact .hq-upload-icon{margin:0;width:44px;height:44px;font-size:20px;flex:none}
.hq-upload.is-compact .hq-upload-title{font-size:15px}
.hq-upload.is-compact .hq-upload-limits{margin:2px 0 0}
.hq-upload.is-compact .hq-upload-buttons{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.hq-upload.is-compact .hq-upload-choose,.hq-upload.is-compact .hq-upload-paste{white-space:nowrap}
/* Reading */
.hq-upload .hq-upload-reading{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:start;border:1px solid var(--line);border-radius:12px;padding:24px;background:var(--surface)}
.hq-upload.is-compact .hq-upload-reading{grid-template-columns:76px minmax(0,1fr);gap:16px;padding:16px}
.hq-upload .hq-upload-frame{position:relative;aspect-ratio:1/1.414;border:1px solid var(--line);border-radius:4px;background:#fff;box-shadow:0 8px 24px #1b243322;overflow:hidden}
.hq-upload .hq-upload-frame img{display:block;width:100%;height:100%;object-fit:cover;object-position:top}
.hq-upload .hq-upload-blank{position:absolute;inset:0;padding:16% 12%;display:grid;align-content:start;gap:7%}
.hq-upload .hq-upload-blank span{display:block;height:5px;border-radius:3px;background:#e2e5eb;animation:hq-upload-pulse 1.6s ease-in-out infinite}
.hq-upload .hq-upload-blank span:first-child{height:9px;width:70%;background:#c9ced8}
.hq-upload .hq-upload-blank span:nth-child(3n){width:80%}
@keyframes hq-upload-pulse{50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.hq-upload .hq-upload-blank span{animation:none}.hq-upload .hq-upload-bar span{transition:none}}
.hq-upload .hq-upload-caption{margin:10px 0 0;text-align:center;color:var(--muted)}
.hq-upload .hq-upload-eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;color:var(--primary-ink);margin:0 0 6px}
.hq-upload .hq-upload-name{display:block;font-size:26px;line-height:1.2;margin:0;overflow-wrap:anywhere}
.hq-upload.is-compact .hq-upload-name{font-size:16px}
.hq-upload.is-compact .hq-upload-eyebrow{display:none}
.hq-upload .hq-upload-lead{margin:6px 0 0;color:var(--muted)}
.hq-upload .hq-upload-stages{list-style:none;margin:14px 0 0;padding:0}
.hq-upload .hq-upload-stages li{display:grid;grid-template-columns:30px minmax(0,1fr);gap:12px;align-items:start;padding:11px 0;border-bottom:1px solid var(--line)}
.hq-upload .hq-upload-stages li:last-child{border-bottom:0}
.hq-upload.is-compact .hq-upload-stages li{padding:7px 0}
.hq-upload .hq-upload-dot{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:700;border:2px solid var(--line);color:var(--muted)}
.hq-upload li.is-done .hq-upload-dot{border-color:transparent;background:color-mix(in srgb,var(--success) 16%,var(--surface));color:var(--success)}
.hq-upload li.is-now .hq-upload-dot{border-color:var(--primary);background:var(--primary);color:#fff}
.hq-upload li.is-next{color:var(--muted)}
.hq-upload .hq-upload-stage{display:grid;gap:2px}
.hq-upload .hq-upload-meta{color:var(--muted)}
.hq-upload .hq-upload-meta:empty{display:none}
.hq-upload .hq-upload-bar{height:6px;border-radius:3px;background:var(--soft);overflow:hidden;margin-top:6px}
.hq-upload .hq-upload-bar span{display:block;height:100%;width:0;background:var(--primary);border-radius:3px;transition:width .9s linear}
.hq-upload .hq-upload-leave{margin-top:16px;padding:12px 14px;background:var(--soft);border-radius:10px;display:flex;gap:14px;align-items:center;font-size:14px}
.hq-upload .hq-upload-leave .hq-upload-cancel{margin-left:auto}
/* A file that cannot be used */
.hq-upload .hq-upload-problem{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;border:1px solid #f0d49b;background:#fff8ea;border-radius:14px;padding:24px}
body.dark .hq-upload .hq-upload-problem{background:#2c2618;border-color:#5b4a22}
.hq-upload .hq-upload-sign{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:18px;color:#9a5b00;background:var(--surface);border:1px solid #f0d49b}
.hq-upload .hq-upload-problem-title{display:block;font-size:22px;margin:0 0 4px}
.hq-upload.is-compact .hq-upload-problem-title{font-size:16px}
.hq-upload .hq-upload-problem p{margin:0;overflow-wrap:anywhere}
@media(max-width:640px){
 .hq-upload .hq-upload-zone{padding:30px 18px}
 .hq-upload .hq-upload-reading,.hq-upload.is-compact .hq-upload-reading{grid-template-columns:1fr;gap:14px;padding:16px}
 .hq-upload .hq-upload-page{display:flex;gap:14px;align-items:center}
 .hq-upload .hq-upload-page .hq-upload-frame{width:76px;flex:none}
 .hq-upload .hq-upload-caption{text-align:left;margin:0}
 .hq-upload .hq-upload-name{font-size:22px}
 .hq-upload .hq-upload-leave{flex-direction:column;align-items:flex-start}
 .hq-upload .hq-upload-leave .hq-upload-cancel{margin-left:0}
 .hq-upload.is-compact .hq-upload-zone{flex-wrap:wrap}
 .hq-upload.is-compact .hq-upload-buttons{margin-left:0;justify-content:flex-start}
 .hq-upload .hq-upload-links{flex-direction:column;align-items:flex-start;gap:10px}
 .hq-upload .hq-upload-sep{display:none}
}
/* Review 11 (U24): a visible hint under the paste box. */
.hq-upload .hq-upload-hint{margin:8px 2px 0;font-weight:600;color:#a5233c}
body.dark .hq-upload .hq-upload-hint{color:#ff9aae}
