.sob{--navy:#12233a;--red:#d51317;--line:#e4e8ee;--muted:#65758b;font-family:Arial,sans-serif;color:#1b2939}.sob *{box-sizing:border-box}.sob [hidden]{display:none!important}.sob button{border:0;border-radius:9px;background:var(--red);color:#fff;padding:12px 18px;cursor:pointer;font-weight:700}.sob button:hover{filter:brightness(.94)}.sob button.sob-secondary{background:#edf1f6;color:var(--navy)}.sob input,.sob textarea{width:100%;padding:11px 12px;border:1px solid #cbd4e0;border-radius:8px;background:#fff;color:#182638;font:inherit}.sob label{display:block;font-size:13px;font-weight:700;color:#415066}.sob label input,.sob label textarea{margin-top:7px}.sob-login{min-height:65vh;display:grid;place-items:center;background:#f4f6fa;padding:25px}.sob-login-card{background:#fff;padding:35px;max-width:420px;width:100%;border-radius:18px;box-shadow:0 12px 38px #12233a16}.sob-login-card form{display:grid;gap:12px}.sob-brand,.sob-header strong{font-size:22px;font-weight:900;color:var(--navy)}.sob-brand span,.sob-header strong span{color:var(--red)}.sob-header{background:var(--navy);color:white;display:flex;justify-content:space-between;align-items:center;padding:20px 28px}.sob-header strong{color:white}.sob-header small{display:block;letter-spacing:2px;color:#b6c4d6}.sob-content{background:#f4f6fa;padding:28px;max-width:1400px;margin:auto}.sob-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.sob-heading h2{margin:0}.sob-heading p,.sob-muted{color:var(--muted);font-size:13px}.sob-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.sob-panel{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;margin-bottom:18px}.sob-panel h3{margin:0 0 20px;color:var(--navy)}.sob-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.sob-wide{grid-column:1/-1}.sob-results{max-height:250px;overflow:auto;margin:12px 0}.sob-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border-bottom:1px solid var(--line)}.sob-result button{white-space:nowrap}.sob-result small{display:block;color:var(--muted)}.sob-table-wrap{overflow-x:auto}.sob-table{width:100%;border-collapse:collapse;min-width:740px}.sob-table th{text-align:left;color:var(--muted);font-size:12px}.sob-table td,.sob-table th{padding:10px 6px;border-bottom:1px solid var(--line)}.sob-table input{min-width:75px}.sob-table .sob-description{min-width:230px}.sob-table button{padding:8px 10px}.sob-totals>div{display:flex;justify-content:space-between;margin:14px 0}.sob-totals .sob-grand{border-top:2px solid var(--line);padding-top:18px;font-size:20px;color:var(--navy)}.sob-totals>button{width:100%}#sob-print{position:fixed;left:-100000px;top:0;width:794px;background:white;padding:48px;font:14px Arial,sans-serif;color:#1b2939}#sob-print .sob-print-top{display:flex;justify-content:space-between;border-bottom:4px solid #d51317;padding-bottom:25px}#sob-print h1{font-size:27px;margin:0;color:#12233a}#sob-print h1 span{color:#d51317}#sob-print .sob-print-customer{padding:25px 0;line-height:1.7;white-space:pre-line}#sob-print table{width:100%;border-collapse:collapse;font-size:12px}#sob-print th{background:#12233a;color:white;text-align:left;padding:12px 8px}#sob-print td{padding:11px 8px;border-bottom:1px solid #ddd}#sob-print .sob-print-totals{margin:25px 0 20px auto;width:270px;line-height:2}#sob-print .sob-print-totals>div{display:flex;justify-content:space-between}#sob-print .sob-print-notes{white-space:pre-line;margin-top:30px}#sob-print footer{border-top:1px solid #ddd;margin-top:50px;padding-top:15px;text-align:center;color:#65758b}@media(max-width:800px){.sob-grid{grid-template-columns:1fr}.sob-content{padding:12px}.sob-panel{padding:15px}.sob-header{padding:16px}.sob-fields{grid-template-columns:1fr}.sob-heading{gap:10px}.sob-heading h2{font-size:22px}}

/* Browser-native PDF printing; no third-party scripts required. */
@media print {
 @page { size: A4 portrait; margin: 12mm; }
 body * { visibility: hidden !important; }
 #sob-print, #sob-print * { visibility: visible !important; }
 #sob-print { position: absolute !important; left: 0 !important; top: 0 !important; width: 100% !important; max-width: 100% !important; padding: 0 !important; margin: 0 !important; background: #fff !important; color: #1b2939 !important; }
 #sob-print table { width: 100%; }
 #sob-print thead { display: table-header-group; }
 #sob-print tr { break-inside: avoid; page-break-inside: avoid; }
 #sob-print .sob-print-totals, #sob-print .sob-print-notes { break-inside: avoid; }
 #sob-print th { background: #12233a !important; color: white !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

/* Uppercase customer details in the editor; actual value is also normalized in JavaScript. */
#sob-customer,#sob-address{text-transform:uppercase!important}
