/* NPS Admin / Login - Light theme */
*{margin:0;padding:0;box-sizing:border-box}
html,body{background:#F4F6FA;color:#1F2937;font-family:'Inter','Segoe UI',system-ui,sans-serif;font-size:14px;min-height:100vh}
body{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;position:relative}

:root{
  --bg:#F4F6FA;
  --surface:#FFFFFF;
  --border:#E5E7EB;
  --text:#1F2937;
  --text-mut:#6B7280;
  --text-light:#9CA3AF;
  --brand:#C4A265;
  --brand-d:#9C7F3F;
  --red:#DC2626;
  --red-l:#FEE2E2;
  --amber:#D97706;
  --green:#16A34A;
  --green-l:#DCFCE7;
}

.wrap{width:100%;max-width:480px}
.wrap.wide{max-width:920px}

.brand{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:36px}
.eva-svg{height:54px;width:auto;filter:invert(1) grayscale(1) contrast(1.2)}
.brand-line{height:2px;width:120px;background:linear-gradient(90deg,transparent,var(--brand),transparent)}
.brand-sub{font-size:11px;font-weight:600;color:var(--text-mut);letter-spacing:3px;text-transform:uppercase}

.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:32px 28px;box-shadow:0 4px 20px rgba(0,0,0,.04)}
.card-t{font-size:22px;font-weight:700;margin-bottom:4px;color:var(--text)}
.card-t b{color:var(--brand-d)}
.card-s{font-size:13px;color:var(--text-mut);margin-bottom:24px}

.form-grp{margin-bottom:16px}
.lab{display:block;font-size:11px;font-weight:700;color:var(--text-mut);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:6px}
.inp{width:100%;background:#FFFFFF;border:1px solid var(--border);border-radius:6px;padding:11px 13px;color:var(--text);font:inherit;font-size:14px;font-weight:500;transition:all .15s;outline:none}
.inp:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(196,162,101,.15)}
.inp::placeholder{color:var(--text-light)}

.btn{width:100%;background:var(--text);color:#FFFFFF;border:none;border-radius:6px;padding:12px 16px;font:inherit;font-size:13px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;cursor:pointer;transition:all .15s}
.btn:hover{background:#000000}
.btn:disabled{opacity:.5;cursor:not-allowed}
.btn-sec{background:transparent;color:var(--text);border:1px solid var(--border)}
.btn-sec:hover{background:var(--bg);border-color:var(--text-mut)}

.err{background:var(--red-l);border:1px solid var(--red);border-radius:6px;padding:10px 12px;color:var(--red);font-size:13px;font-weight:500;margin-bottom:16px}
.ok{background:var(--green-l);border:1px solid var(--green);border-radius:6px;padding:10px 12px;color:var(--green);font-size:13px;font-weight:500;margin-bottom:16px}

.topbar{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:920px;margin-bottom:22px}
.topbar .eva-svg{height:38px;filter:invert(1) grayscale(1) contrast(1.2)}
.topbar-r{display:flex;align-items:center;gap:14px}
.topbar-user{font-size:12px;color:var(--text-mut)}
.topbar-user b{color:var(--text);font-weight:600}
.btn-logout{background:#FFFFFF;border:1px solid var(--border);color:var(--text-mut);padding:7px 14px;border-radius:6px;font:inherit;font-size:11px;font-weight:600;letter-spacing:.8px;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:all .15s}
.btn-logout:hover{border-color:var(--brand);color:var(--brand)}

.drop{border:2px dashed var(--border);border-radius:10px;padding:42px 24px;text-align:center;transition:all .15s;cursor:pointer;background:#FAFBFD}
.drop:hover,.drop.over{border-color:var(--brand);background:#FBF8F1}
.drop-i{font-size:42px;color:var(--text-light);margin-bottom:10px;line-height:1}
.drop-t{font-size:15px;font-weight:600;color:var(--text);margin-bottom:4px}
.drop-s{font-size:12px;color:var(--text-mut)}
.drop input{display:none}

.preview{margin-top:22px;background:#FAFBFD;border:1px solid var(--border);border-radius:8px;padding:20px;display:none}
.preview.show{display:block;animation:slideUp .35s ease}
@keyframes slideUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.preview h3{font-size:11px;font-weight:700;color:var(--brand-d);text-transform:uppercase;letter-spacing:1.8px;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.preview h3::before{content:"";width:6px;height:6px;background:var(--brand);border-radius:50%}

.pv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:16px}
.pv-stat{background:#fff;padding:11px 13px;border-radius:6px;border:1px solid var(--border)}
.pv-l{font-size:10px;color:var(--text-mut);text-transform:uppercase;letter-spacing:1.2px;font-weight:600;margin-bottom:3px}
.pv-v{font-size:18px;font-weight:700;color:var(--text)}

.pv-tbl{width:100%;border-collapse:collapse;margin-bottom:12px}
.pv-tbl th{font-size:10px;text-align:left;padding:7px 10px;color:var(--text-mut);font-weight:600;text-transform:uppercase;letter-spacing:.8px;border-bottom:1px solid var(--border)}
.pv-tbl td{font-size:13px;padding:8px 10px;border-bottom:1px solid var(--border);font-weight:500;color:var(--text)}
.pv-tbl td:not(:first-child){text-align:right;font-variant-numeric:tabular-nums}

.pv-section{margin-bottom:16px}
.pv-section-t{font-size:11px;font-weight:700;color:var(--text-mut);text-transform:uppercase;letter-spacing:1.4px;margin-bottom:6px}

.actions{display:flex;gap:10px;margin-top:14px}
.actions .btn{flex:1}

.status-row{margin-bottom:20px;padding:14px 16px;background:#FAFBFD;border:1px solid var(--border);border-radius:8px;display:flex;justify-content:space-between;align-items:center}
.status-l{font-size:10px;color:var(--text-mut);text-transform:uppercase;letter-spacing:1.2px;font-weight:600;margin-bottom:3px}
.status-v{font-size:14px;color:var(--text);font-weight:600}
.status-v.ok{color:var(--green)}
.status-v.warn{color:var(--amber)}

.tips{margin-top:20px;font-size:12px;color:var(--text-mut);line-height:1.65;background:#FBF8F1;padding:12px 14px;border-radius:6px;border-left:3px solid var(--brand)}
.tips b{color:var(--text)}

.syb-bot{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;z-index:99;opacity:.85}
.syb-mark{display:inline-flex;gap:2px}
.syb-mark .sq{width:11px;height:8px;background:var(--red);border-radius:1px}
.syb-txt{font-size:10px;font-weight:600;color:var(--text-mut);text-transform:uppercase;letter-spacing:2px}
.syb-txt b{color:var(--text);font-weight:800}

.fline{display:none}

.link{color:var(--brand-d);text-decoration:none;font-size:12px;font-weight:600}
.link:hover{text-decoration:underline}

.spin{display:inline-block;width:13px;height:13px;border:2px solid var(--border);border-top-color:var(--brand);border-radius:50%;animation:spin .8s linear infinite;vertical-align:middle;margin-right:6px}
@keyframes spin{to{transform:rotate(360deg)}}
