
:root{
  --cv-primary:#012169;
  --cv-accent:#C8102E;
  --cv-light:#F6F8FC;
  --cv-border:#D9DFEB;
  --cv-text:#1C2434;
  --cv-muted:#5D6B85;
}
.cv-wrap,.cv-admin-wrap{max-width:1200px}
.cv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin:18px 0}
.cv-card{
  background:#fff;border:1px solid var(--cv-border);border-radius:18px;padding:22px;
  box-shadow:0 10px 24px rgba(1,33,105,.06);margin:16px 0;color:var(--cv-text)
}
.cv-admin-stats .cv-card{min-height:140px}
.cv-big{font-size:34px;font-weight:700;line-height:1.1;margin:8px 0 0;color:var(--cv-primary)}
.cv-badge-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.cv-badge-admin-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.cv-badge-list{display:flex;flex-wrap:wrap;gap:8px}
.cv-badge{
  display:inline-block;background:rgba(1,33,105,.08);color:var(--cv-primary);
  border:1px solid rgba(1,33,105,.14);padding:8px 12px;border-radius:999px;font-weight:600;font-size:13px
}
.cv-badge-large{font-size:15px;padding:10px 14px}
.cv-login-card{text-align:center;background:linear-gradient(180deg,#fff,#f9fbff)}
.cv-form p{margin:0 0 14px}
.cv-form input[type="text"], .cv-form input[type="url"], .cv-form select, .cv-form textarea,
.cv-card input[type="text"], .cv-card input[type="number"], .cv-card textarea, .cv-card select{
  width:100%;max-width:100%;padding:12px 14px;border:1px solid var(--cv-border);border-radius:12px;background:#fff
}
.cv-button, .cv-card .button-primary, .cv-card .button{
  display:inline-block;background:var(--cv-primary);color:#fff;border:none;border-radius:12px;
  padding:12px 18px;text-decoration:none;cursor:pointer;font-weight:600
}
.cv-card .button{background:#eef3ff;color:var(--cv-primary);border:1px solid var(--cv-border)}
.cv-card .button:hover,.cv-card .button-primary:hover,.cv-button:hover{opacity:.92;color:#fff}
.cv-inline-form p{margin:8px 0 0}
.cv-inline-header{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
.cv-tabs{display:flex;gap:8px;flex-wrap:wrap}
.cv-tab{
  display:inline-block;padding:8px 12px;border-radius:999px;border:1px solid var(--cv-border);
  background:#fff;color:var(--cv-primary);text-decoration:none;font-weight:600
}
.cv-tab.is-active{background:var(--cv-primary);color:#fff}
.cv-table{width:100%;border-collapse:collapse}
.cv-table th,.cv-table td{padding:12px 10px;border-bottom:1px solid var(--cv-border);text-align:left}
.cv-activity-list{list-style:none;padding:0;margin:0}
.cv-activity-list li{
  padding:12px 0;border-bottom:1px solid var(--cv-border);display:flex;gap:12px;justify-content:space-between;align-items:center;flex-wrap:wrap
}
.cv-activity-list li span{font-weight:700;color:var(--cv-primary)}
.cv-activity-list li small{color:var(--cv-muted)}
.cv-status{
  display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700
}
.cv-status-pending{background:#fff6dd;color:#8a6100}
.cv-status-approved{background:#e8f8ed;color:#1d6b36}
.cv-status-rejected{background:#fdecec;color:#9b2020}
.cv-mini-profile h3{margin-top:0}
.cv-message{padding:14px 16px;border-radius:14px;margin:16px 0;font-weight:600}
.cv-success{background:#e8f8ed;color:#1d6b36;border:1px solid #cbead2}
.cv-error{background:#fdecec;color:#9b2020;border:1px solid #f0caca}
@media (max-width: 782px){
  .cv-card{padding:18px;border-radius:16px}
  .cv-big{font-size:30px}
  .cv-table th,.cv-table td{font-size:14px;padding:10px 8px}
}
