:root{
  --bg:#f5f6f8; --card:#fff; --text:#111; --muted:#6b7280;
  --accent:#2563eb; --accent-hover:#1e40af; --border:rgba(0,0,0,.08);
  --field:#f9fafb;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden}
a{color:var(--accent);text-decoration:none} a:hover{text-decoration:underline}
.wrap{min-height:100dvh;display:grid;place-items:center;padding:16px}
.card{max-width:900px;width:100%;margin:0 auto;background:var(--card);border:1px solid var(--border);
  border-radius:18px;padding:24px;box-shadow:0 4px 14px rgba(0,0,0,.08)}
header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:6px}
.brand{font-weight:800;letter-spacing:.2px}
.chip{display:inline-block;border:1px solid var(--border);border-radius:999px;padding:6px 10px;color:var(--muted);font-size:12px}
h1{margin:8px 0 8px;font-size:clamp(28px,4vw,40px)} p{margin:8px 0} .muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:10px}
.pill{border:1px solid var(--border);border-radius:14px;padding:14px;background:#fff}
input,textarea,select{width:100%;background:var(--field);border:1px solid #d1d5db;color:var(--text);padding:12px;border-radius:12px}
input[type=file]{padding:10px}
button{background:var(--accent);color:#fff;font-weight:700;border:none;padding:12px 16px;border-radius:12px;cursor:pointer;transition:background .2s}
button:hover{background:var(--accent-hover)}
.fine{font-size:12px;color:var(--muted);margin-top:6px}
.footer{margin-top:16px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--muted)}
.flash{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;padding:12px;border-radius:10px;margin:10px 0}
.hp{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
hr{border:none;border-top:1px solid var(--border);margin:18px 0}

/* Report-specific */
.checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.check{display:flex;gap:8px;align-items:center;border:1px solid var(--border);border-radius:12px;padding:10px;background:#fff}
.tick{width:10px;height:10px;border-radius:50%}
.tick.ok{background:#22c55e}.tick.warn{background:#f59e0b}.tick.bad{background:#ef4444}
.btnRow{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.btn{display:inline-block;padding:10px 14px;border-radius:12px;background:var(--accent);color:#fff;font-weight:700;text-decoration:none;border:none;cursor:pointer}
.btn.ghost{background:#fff;border:1px solid var(--border);color:var(--text)}
@media print{
  body{background:#fff;color:#000}
  .card{box-shadow:none;border:1px solid #ddd}
  .btnRow,.chip,a{display:none !important}
  .pill,.check{background:#fafafa;border-color:#ddd}
}

/* INTERVIEW POLISH */
.section-h2 {
  margin: 14px 0 8px;
  padding: 6px 0;
  font-weight: 800;
  font-size: 18px;
  border-bottom: 1px solid rgba(148,163,184,.35);
  color: #0f172a;
}
.qline {
  cursor: pointer;
  text-decoration: none;
  color: #0f172a;
  background: #f1f5f9;
  border: 1px solid rgba(148,163,184,.35);
  border-radius: 10px;
  padding: 10px 12px;
  margin: 10px 0;
}
.qline:hover { background: #e2e8f0; }
.inline-practice {
  background: #f8fafc;
  margin: 8px 0 16px;
  padding: 12px;
  border: 1px solid rgba(148,163,184,.35);
  border-radius: 12px;
}
.feedbackOut {
  background: #fff;
  border: 1px dashed rgba(148,163,184,.5);
  border-radius: 8px;
  padding: 10px;
}
.rubric {
  opacity: .8;
  font-style: italic;
  color: #475569;
  margin: 8px 0 14px;
}
