*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy: #1F4E79;--navy-light: #D6E4F0;--red: #C00000;--gray-bg: #F8F9FA;--gray-border: #DEE2E6;--gray-text: #6C757D;--success: #198754;--warning: #FFC107;--danger: #DC3545;--white: #FFFFFF;--font: "Segoe UI", Arial, sans-serif;--radius: 8px;--shadow: 0 1px 3px rgba(0,0,0,.1)}body{font-family:var(--font);font-size:14px;color:#212529;background:var(--gray-bg)}.btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:var(--radius);border:1px solid transparent;font-size:13px;cursor:pointer;font-family:var(--font);transition:opacity .15s,background .15s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--navy);color:#fff}.btn-primary:hover:not(:disabled){background:#174069}.btn-secondary{background:white;color:#212529;border-color:var(--gray-border)}.btn-secondary:hover:not(:disabled){background:var(--gray-bg)}.btn-danger{background:var(--danger);color:#fff}.btn-success{background:var(--success);color:#fff}.btn-sm{padding:4px 10px;font-size:12px}.btn-lg{padding:10px 20px;font-size:15px}.card{background:white;border:1px solid var(--gray-border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-header{padding:12px 16px;border-bottom:1px solid var(--gray-border);font-weight:600;font-size:14px;color:var(--navy)}.card-body{padding:16px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:12px;color:var(--gray-text);margin-bottom:4px;font-weight:500}.form-group label.required:after{content:" *";color:var(--danger)}input,select,textarea{width:100%;padding:7px 10px;border:1px solid var(--gray-border);border-radius:var(--radius);font-size:13px;font-family:var(--font);transition:border-color .15s;background:white}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 2px #1f4e7926}input[readonly],input:disabled{background:var(--gray-bg);color:var(--gray-text)}textarea{resize:vertical;min-height:60px}.table-wrapper{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;padding:9px 12px;font-size:12px;font-weight:600;color:var(--gray-text);border-bottom:2px solid var(--gray-border);background:var(--gray-bg);white-space:nowrap}td{padding:9px 12px;border-bottom:1px solid var(--gray-border);vertical-align:middle}tr:last-child td{border-bottom:none}tbody tr:hover td{background:#F8FAFC}.badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600}.badge-draft{background:#FFF3CD;color:#856404}.badge-sent{background:#D1E7DD;color:#0a3622}.badge-admin{background:#CFE2FF;color:#084298}.badge-sales{background:var(--navy-light);color:var(--navy)}.page{min-height:100vh}.topbar{background:white;border-bottom:1px solid var(--gray-border);padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:var(--shadow)}.topbar-brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--navy);font-size:15px}.topbar-right{display:flex;align-items:center;gap:12px}.content{padding:24px;max-width:1200px;margin:0 auto}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.upload-zone{border:2px dashed var(--gray-border);border-radius:var(--radius);padding:20px;text-align:center;cursor:pointer;transition:all .15s}.upload-zone:hover{border-color:var(--navy);background:var(--navy-light)}.upload-zone.loaded{border-color:var(--success);background:#D1E7DD}.upload-zone-icon{font-size:24px;margin-bottom:6px}.upload-zone-text{font-size:13px;color:var(--gray-text)}.upload-zone-sub{font-size:11px;color:#adb5bd;margin-top:2px}.upload-zone-ok{font-size:13px;color:var(--success);font-weight:600}.alert{padding:10px 14px;border-radius:var(--radius);font-size:13px;margin-bottom:12px}.alert-danger{background:#F8D7DA;color:#842029;border:1px solid #F5C2C7}.alert-success{background:#D1E7DD;color:#0a3622;border:1px solid #BADBCC}.alert-warning{background:#FFF3CD;color:#664d03;border:1px solid #FFECB5}.alert-info{background:var(--navy-light);color:var(--navy);border:1px solid #B6D4FE}.spinner{width:20px;height:20px;border:2px solid var(--navy-light);border-top-color:var(--navy);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.totals-box{background:var(--gray-bg);border:1px solid var(--gray-border);border-radius:var(--radius);padding:14px 16px}.totals-row{display:flex;justify-content:space-between;padding:4px 0;font-size:13px}.totals-row.grand{font-weight:700;font-size:16px;border-top:1px solid var(--gray-border);margin-top:8px;padding-top:10px;color:var(--navy)}.section-title{font-size:11px;font-weight:700;color:var(--gray-text);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.disc-hint{font-size:10px;color:#adb5bd;margin-top:2px}@media (max-width: 768px){.grid-2,.grid-3,.grid-4,.grid-5{grid-template-columns:1fr}.content{padding:16px}}
