:root{
  --brand:#1e3a8a;
  --brand2:#6d28d9;
  --accent:#f97316;
}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;}
.brand-gradient{background:linear-gradient(135deg,#1e3a8a 0%,#6d28d9 55%,#f97316 130%);}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;border-radius:.55rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:.15s;border:1px solid transparent;}
.btn-primary{background:var(--brand);color:#fff;}
.btn-primary:hover{background:#1e40af;}
.btn-accent{background:var(--accent);color:#fff;}
.btn-accent:hover{background:#ea580c;}
.btn-ghost{background:#fff;color:#334155;border-color:#cbd5e1;}
.btn-ghost:hover{background:#f1f5f9;}
.btn-danger{background:#fee2e2;color:#b91c1c;}
.btn-danger:hover{background:#fecaca;}
.input,.textarea,.select{width:100%;border:1px solid #cbd5e1;border-radius:.5rem;padding:.5rem .7rem;font-size:.875rem;background:#fff;}
.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--brand2);box-shadow:0 0 0 3px rgba(109,40,217,.12);}
.label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:.25rem;display:block;}
.card{background:#fff;border-radius:.85rem;box-shadow:0 1px 3px rgba(0,0,0,.08),0 8px 24px -12px rgba(0,0,0,.12);}
.badge{padding:.15rem .6rem;border-radius:99px;font-size:.7rem;font-weight:700;}
.badge-Draft{background:#e2e8f0;color:#475569;}
.badge-Sent{background:#dbeafe;color:#1d4ed8;}
.badge-Accepted{background:#dcfce7;color:#15803d;}
.badge-Rejected{background:#fee2e2;color:#b91c1c;}

/* PDF / print document */
#pdf-doc{width:794px;background:#fff;color:#0f172a;font-size:13px;}
#pdf-doc .pdf-table th{background:#1e3a8a;color:#fff;padding:9px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.03em;text-align:left;}
#pdf-doc .pdf-table td{padding:8px 10px;border-bottom:1px solid #e2e8f0;vertical-align:top;}
#pdf-doc .pdf-table tr:nth-child(even) td{background:#f8fafc;}
.spinner{border:3px solid #e2e8f0;border-top-color:var(--brand2);border-radius:50%;width:34px;height:34px;animation:spin .8s linear infinite;}
@keyframes spin{to{transform:rotate(360deg)}}
