/* ===== DASHBOARD ===== */
.section-title{font-size:26px;margin:8px 0 14px}

.table-wrap{
  background:#0f1526;border:1px solid var(--border);
  border-radius:18px; overflow:hidden; box-shadow:var(--shadow);
}

.thead, .trow{
  display:grid;
  grid-template-columns:1.2fr 1fr .9fr .8fr .9fr 1.2fr .6fr;
  gap:10px; align-items:center; padding:12px 16px;
}
.thead{
  position:sticky; top:68px; z-index:5;
  background:linear-gradient(180deg,#0f1629,#0e1426);
  border-bottom:1px solid var(--border); font-weight:800;
}
.trow{
  background:#0e1422; border-top:1px solid #192233;
}
.trow:hover{background:#111a2c}

.badge{
  display:inline-flex; align-items:center; gap:6px;
  height:28px; padding:0 10px; border-radius:999px; font-weight:700; font-size:12px;
  background:#0c1222; border:1px solid #263249; color:#dbe6ff;
}
.badge.dot::before{content:""; width:8px; height:8px; border-radius:999px; display:inline-block}

.status-NEW .badge.dot::before{background:var(--gray)}
.status-CONT .badge.dot::before{background:var(--blue)}
.status-REJ  .badge.dot::before{background:#ef4444}
.status-HIRE .badge.dot::before{background:var(--green)}

.status-NEW {box-shadow:inset 0 0 0 1px rgba(154,163,175,.25)}
.status-CONT{box-shadow:inset 0 0 0 1px rgba(31,122,224,.25)}
.status-REJ {box-shadow:inset 0 0 0 1px rgba(239,68,68,.25)}
.status-HIRE{box-shadow:inset 0 0 0 1px rgba(76,195,101,.25)}

.table-wrap form{margin:0}

.note-input{width:100%}

.action-btn{justify-self:flex-start}

@media (max-width: 980px){
  .thead, .trow{
    grid-template-columns:1.2fr 1fr .9fr .9fr;
    grid-auto-rows:auto;
  }
  .trow > :nth-child(5),
  .trow > :nth-child(6),
  .thead > :nth-child(5),
  .thead > :nth-child(6){display:none}
}


/* ====== Brand palette ====== */
:root{
  --blue:#1f7ae0; --green:#4cc365; --orange:#ff9a1a; --gray:#9aa3af;
  --bg:#0c0f19; --text:#e6eaf2; --muted:#b7c0d1; --border:#1e2433;
  --card:#121829; --shadow:0 18px 50px rgba(0,0,0,.35);
}

/* ====== Base ====== */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0; background:var(--bg); color:var(--text);
  font:16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, "Noto Sans", Arial;
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
.container{max-width:1120px;margin:0 auto;padding:0 20px}

/* ====== Header / Footer ====== */
.site-header{background:rgba(10,14,28,.6); backdrop-filter:saturate(120%) blur(6px); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:20}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-weight:900;letter-spacing:.2px}
.nav-link{color:#d6deed;text-decoration:none;padding:8px 14px;border-radius:12px;border:1px solid transparent}
.nav-link:hover{border-color:#2b3a4f;background:#0f1627}

.site-footer{border-top:1px solid var(--border); margin-top:48px; padding:22px 0; color:#9aa3af}

/* ====== Hero ====== */
.hero{
  position:relative; overflow:hidden;
  background:
    radial-gradient(1200px 500px at 10% -10%, rgba(31,122,224,.20), transparent 60%),
    radial-gradient(900px 400px at 110% 0%, rgba(76,195,101,.18), transparent 60%),
    linear-gradient(180deg, #0e1426 0%, #0b1020 100%);
}
.hero::before{
  /* soft low-poly vibe using layered gradients */
  content:""; position:absolute; inset:0; opacity:.35; pointer-events:none;
  background:
    conic-gradient(from 40deg at 20% 20%, rgba(255,154,26,.35), transparent 30%),
    conic-gradient(from 200deg at 80% 10%, rgba(31,122,224,.35), transparent 40%),
    conic-gradient(from 120deg at 60% 60%, rgba(76,195,101,.25), transparent 50%);
  mix-blend-mode:screen;
}
.hero-inner{display:grid; grid-template-columns:1.1fr .9fr; gap:32px; padding:72px 0}
.hero-copy h1{font-size:44px; line-height:1.18; margin:0 0 10px; letter-spacing:.2px}
.hero-copy p{margin:0 0 12px; color:#d4d9e6; max-width:58ch}
.hero-bullets{margin:14px 0 0 18px; color:#c7cfdf}
.hero-bullets li{margin:6px 0}

/* glass card for form */
.hero-card{display:flex; align-items:stretch; justify-content:flex-end}
.card{
  border:1px solid var(--border); border-radius:18px; padding:20px; background:var(--card);
  box-shadow:var(--shadow);
}
.card.glass{
  background:linear-gradient(180deg, rgba(18,24,41,.80), rgba(18,24,41,.92));
}

h2{margin:0 0 10px}

/* ====== Form ====== */
.grid{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.grid-2{display:flex; flex-direction:column; gap:6px}
.grid-full{grid-column:1/-1}
.checkbox{display:flex; align-items:center; gap:8px}

label{font-size:13px; color:#cbd5e1}
input,select,textarea{
  background:#0c1222; border:1px solid #263249; color:var(--text);
  border-radius:12px; padding:11px 12px; outline:none; width:100%;
  transition:border-color .15s, box-shadow .15s, transform .05s;
}
input:focus,select:focus,textarea:focus{border-color:var(--blue); box-shadow:0 0 0 3px rgba(31,122,224,.25)}
.btn-primary{
  margin-top:6px; background:linear-gradient(135deg,var(--blue),var(--green));
  border:none; color:#fff; padding:12px 16px; border-radius:12px; font-weight:900; letter-spacing:.2px; cursor:pointer;
  transition:transform .12s ease, filter .2s;
}
.btn-primary:hover{transform:translateY(-1px)}
.form-note{margin-top:8px; color:var(--muted); font-size:12px}

/* ====== Features ====== */
.features{background:linear-gradient(180deg,#0b1020 0%, #0b1020 100%); padding:32px 0 48px}
.feats-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:16px}
.feat{background:#0f1526;border:1px solid var(--border);border-radius:18px;padding:18px}
.feat h3{margin:8px 0 6px}
.feat p{color:#cdd6e5;margin:0}
.feat-icon{
  width:46px;height:46px;border-radius:999px;display:flex;align-items:center;justify-content:center;
  font-size:22px;margin-bottom:6px;background:#0c1222;border:1px solid #253148;
}
.ring{position:relative}
.ring::after{
  content:""; position:absolute; inset:-6px; border-radius:999px; border:2px dashed rgba(255,255,255,.06);
}
.ring-blue{box-shadow:0 0 0 2px rgba(31,122,224,.35) inset}
.ring-green{box-shadow:0 0 0 2px rgba(76,195,101,.35) inset}
.ring-orange{box-shadow:0 0 0 2px rgba(255,154,26,.35) inset}

/* ====== Flash ====== */
.flash .msg{background:#0b3b18;border:1px solid #175a2a;padding:10px 14px;border-radius:12px;margin:8px 0}

/* ====== Responsive ====== */
@media (max-width: 980px){
  .hero-inner{grid-template-columns:1fr; padding:56px 0}
  .feats-grid{grid-template-columns:1fr; gap:12px}
  .grid{grid-template-columns:1fr}
}
