:root{
  --cv-primary:#0b5e55;
  --cv-primary-2:#0a3f3a;
  --cv-accent:#19a89a;
  --cv-bg:#f6f9f8;
  --cv-text:#0e1b1a;
  --cv-card:#ffffff;
  --cv-border:#e3ecea;
  --cv-warning:#ffc107;
}
*{box-sizing:border-box}
body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;margin:0;background:var(--cv-bg);color:var(--cv-text)}
.container{max-width:1100px;margin:0 auto;padding:24px 16px}
.nav{background:linear-gradient(90deg,var(--cv-primary),var(--cv-primary-2));color:#fff;border-bottom:1px solid rgba(255,255,255,.15)}
.nav-inner{max-width:1100px;margin:0 auto;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{display:flex;align-items:center;gap:12px;min-width:0}
.brand img{height:34px;width:auto}
.brand .title{display:flex;flex-direction:column;line-height:1.15;min-width:0}
.brand .title strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand .title span{font-size:12px;opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.small{font-size:12px;opacity:.9}
.card{background:var(--cv-card);border:1px solid var(--cv-border);border-radius:16px;padding:18px;box-shadow:0 10px 24px rgba(0,0,0,.05)}
h2{margin:0 0 14px}
label{display:block;font-weight:800;margin:12px 0 6px}
input,select,button,textarea{width:100%;padding:11px 12px;border-radius:12px;border:1px solid var(--cv-border);background:#fff;outline:none;font-size:14px}
textarea{resize:vertical;min-height:92px}
input:focus,select:focus,textarea:focus{border-color:var(--cv-accent);box-shadow:0 0 0 3px rgba(25,168,154,.15)}
.row{display:flex;gap:12px}
.row>div{flex:1}
.actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
a.link{color:var(--cv-primary);text-decoration:none;font-weight:900}
a.link:hover{text-decoration:underline}
.btn{background:var(--cv-primary);border:1px solid rgba(0,0,0,.05);color:#fff;font-weight:900;cursor:pointer}
.btn.secondary{background:#fff;color:var(--cv-primary);border:1px solid var(--cv-primary)}
.btn.warning{background:var(--cv-warning);color:#1d1d1d}
.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--cv-border);background:#fff}
.table{width:100%;border-collapse:separate;border-spacing:0;min-width:860px}
.table th,.table td{padding:12px 10px;border-bottom:1px solid var(--cv-border);text-align:left;font-size:14px;vertical-align:top}
.table th{background:#f0f6f5;color:#103332;position:sticky;top:0;z-index:1}
.table tr:last-child td{border-bottom:none}
.badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:12px;border:1px solid var(--cv-border);background:#f6fbfa;font-weight:800}
.badge.ok{border-color:rgba(25,168,154,.35);background:rgba(25,168,154,.12)}
.badge.wait{border-color:rgba(11,94,85,.25);background:rgba(11,94,85,.08)}
.badge.pending{border-color:rgba(255,193,7,.55);background:rgba(255,193,7,.22)}
.err{color:#b00020;font-weight:900}
.hr{height:1px;background:var(--cv-border);margin:14px 0}
@media (max-width:720px){
  .row{flex-direction:column}
  .actions{justify-content:stretch}
  .actions>*{flex:1}
  .nav-inner{flex-direction:column;align-items:flex-start}
  .brand img{height:32px}
}

.pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;}
.pill.ok{background:#e6f7ed;color:#1c7c45;border:1px solid #bce8cf;}
.pill.warn{background:#fff7e6;color:#9a6700;border:1px solid #ffe0a3;}
.btn.danger{background:#b42318;color:#fff;border-color:#b42318;}
.btn.danger:hover{filter:brightness(0.95);}
