*{box-sizing:border-box}
:root{
  --bg:#0b1220;
  --surface:#0f172a;
  --muted:#8ea0bd;
  --text:#e6edf7;
  --border:#1f2b45;
  --brand:var(--brand-color,#3b82f6);
  --brand-2:#0ea5e9;
  --radius:14px;
}
html,body{height:100%}
body{
  margin:0;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
  background:radial-gradient(1000px 450px at 10% 0%, rgba(14,165,233,.25), transparent 60%),
             radial-gradient(800px 380px at 90% 0%, rgba(59,130,246,.25), transparent 70%),
             var(--bg);
  color:var(--text);
}
.app-header{
  position:sticky;top:0;z-index:10;
  backdrop-filter:saturate(1.2) blur(10px);
  background:linear-gradient(90deg, rgba(59,130,246,.3), rgba(14,165,233,.3));
  border-bottom:1px solid rgba(255,255,255,.08);
}
.container{width:100%;max-width:none;margin:0 auto;padding:0}
.header{display:flex;align-items:center;gap:16px;padding:18px 24px}
.brand{font-size:20px;font-weight:700;letter-spacing:.2px}
.logo{height:42px;border-radius:8px}
.card{
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.12);
  border-radius:var(--radius);
  box-shadow:0 20px 60px rgba(2,8,23,.6);
  padding:22px;
  margin:18px 0;
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
}
.title{font-size:18px;font-weight:700;margin-bottom:14px;color:#e6edf7}
.row{display:flex;gap:16px;flex-wrap:wrap}
.col{flex:1 1 300px}
label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}
input,select,textarea{
  width:100%;padding:12px 14px;border:1px solid var(--border);border-radius:12px;
  background:#0b1328;color:var(--text);transition:.2s border-color,.2s box-shadow;
}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px rgba(59,130,246,.2)}
.btn{
  display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.08);
  cursor:pointer;font-weight:700;letter-spacing:.2px;transition:.2s transform,.2s box-shadow,.2s background;
}
.btn-primary{background:linear-gradient(180deg,var(--brand),var(--brand-2));color:#fff;box-shadow:0 18px 40px rgba(14,165,233,.35)}
.btn-primary:hover{transform:translateY(-1px)}
.btn-danger{background:#ef4444;color:#fff;border-color:#ef4444}
.btn-secondary{background:#1f2937;color:#fff}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden}
.table th{padding:12px;background:rgba(255,255,255,.06);color:#cbd5e1;text-align:left;white-space:nowrap}
.table td{padding:12px;border-top:1px solid rgba(255,255,255,.06);text-align:left}
.muted{color:var(--muted)}
.footer{padding:24px;color:var(--muted)}
.notice{padding:12px;border-radius:12px;background:rgba(250,204,21,.12);color:#facc15;border:1px solid rgba(250,204,21,.25)}
.success{padding:12px;border-radius:12px;background:rgba(34,197,94,.15);color:#86efac;border:1px solid rgba(34,197,94,.35)}
.signature-pad{border:1px dashed rgba(255,255,255,.18);border-radius:12px;background:#0b1328}
.actions{display:flex;gap:10px;margin-top:12px}
.nav{display:flex;gap:10px;margin-bottom:16px}
.nav a{
  padding:8px 12px;border-radius:10px;background:rgba(255,255,255,.08);color:#e6edf7;text-decoration:none;border:1px solid rgba(255,255,255,.12)
}
.nav a.active{background:linear-gradient(180deg,var(--brand),var(--brand-2));border-color:transparent}
