/*
File name: site.css
Path: /static/css/site.css
Version: 1.0
Description: Core EngHire interface styles for Phase 1.
*/
:root {
    --navy: #071827;
    --graphite: #222831;
    --steel: #5d6975;
    --line: #d8e0e8;
    --blue: #0b74ff;
    --green: #13a66b;
    --bg: #f5f7fa;
}
body { background: var(--bg); color: var(--graphite); }
.nav-technical { background: var(--navy); border-bottom: 3px solid var(--blue); }
.btn-accent { background: var(--blue); color: #fff; border-color: var(--blue); }
.btn-accent:hover { background: #075bd0; color: #fff; }
.hero-technical {
    color: #fff;
    background-color: var(--navy);
    background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
    background-size: 28px 28px;
}
.hero-technical h1 { font-size: clamp(2rem, 4vw, 4rem); max-width: 980px; }
.eyebrow { text-transform: uppercase; letter-spacing: 0; font-weight: 700; color: var(--green); }
.record-card, .form-panel, .confirmation-panel, .opportunity-strip, .metric-card {
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 1rem;
}
.signal-panel {
    border-top: 3px solid var(--blue);
    padding-top: .75rem;
}
.opportunity-meta { display: flex; flex-wrap: wrap; gap: .5rem; margin: .75rem 0 1rem; }
.opportunity-meta span {
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: .2rem .55rem;
    font-size: .85rem;
    color: var(--steel);
    background: #f8fbff;
}
.auth-width { max-width: 760px; }
.preserve-lines { white-space: pre-line; }
.metric-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: .75rem; }
.metric-card span { display: block; color: var(--steel); font-size: .85rem; }
.metric-card strong { font-size: 1.25rem; }
.filter-panel {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: .75rem;
    align-items: center;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 1rem;
}
.score-badge { display: inline-block; background: #e7f2ff; color: #064c9d; border: 1px solid #b8d8ff; border-radius: 999px; padding: .15rem .5rem; font-weight: 700; }
.score-list { display: grid; grid-template-columns: 1fr auto; gap: .35rem .75rem; }
.score-list dd { margin: 0; }
.message-row { border-bottom: 1px solid var(--line); padding: .5rem 0; }
.message-row:last-child { border-bottom: 0; }
.footer-band { background: #fff; border-top: 1px solid var(--line); }
input, select, textarea { max-width: 100%; }
/* end */
