/* MIHNOVA polish: contrast, tap targets, upload control, consent clarity. Loaded last so it overrides earlier rules. */
:root{--mn-teal:#087572;--mn-teal-dark:#075f5d;--mn-muted:#4f6671}
.muted,.cv-score-subtitle{color:var(--mn-muted)}
.button,.hero .button{background:var(--mn-teal);color:#fff}
.button:hover,.hero .button:hover{background:var(--mn-teal-dark)}
.button.secondary{background:#e3f4f0;color:#0f4a47}
.button.secondary:hover{background:#d3ece7}
.button,button.button{min-height:46px}
.hero .button.secondary{background:#e9f7f4;color:#0f4a47}
.hero .button:not(.secondary){background:#0f9a95;color:#04201f}
.hero .button:not(.secondary):hover{background:#14b0aa}

/* Upload: a real button instead of the browser default, and no duplicate "no file" text. */
#cvfile{max-width:340px;width:100%;color:transparent;font-size:14px;padding:8px;background:#fff;border:1px solid #9fcfca;border-radius:12px;cursor:pointer}
#cvfile::file-selector-button{margin-inline-end:12px;border:0;border-radius:10px;padding:11px 18px;background:var(--mn-teal);color:#fff;font:inherit;font-weight:700;cursor:pointer}
#cvfile:hover::file-selector-button{background:var(--mn-teal-dark)}
#fileinfo{font-weight:600;word-break:break-word}

/* Checkboxes: comfortable tap target and aligned text. */
input[type=checkbox]{width:22px!important;height:22px;flex:none;accent-color:var(--mn-teal);margin:0;cursor:pointer}
label:has(>input[type=checkbox]){display:flex;align-items:flex-start;gap:10px;font-weight:600;line-height:1.7;cursor:pointer}

/* Long placeholders must not be cut mid-word. */
input,textarea{text-overflow:ellipsis}
input::placeholder,textarea::placeholder{color:#6b7f85;opacity:1}

/* Links in footer/nav: 44px tap height without changing how they read. */
footer a,.site-footer a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px}
footer a[hidden],.site-footer a[hidden]{display:none}
.site-footer{line-height:1.4}

/* An empty preview should invite the upload, not occupy a full screen. */
.preview:has(.resume-empty){min-height:200px}
.resume-empty{padding:56px 12px;color:#5b7078;font-size:15px}

/* Short hint text must stay readable on small screens. */
@media(max-width:780px){.hero p{font-size:16px}.heading{font-size:25px}}
#startInterview[hidden]+.personalize{display:none}.personalize{display:flex;align-items:center;gap:8px;margin-top:8px}
