:root{--bg:#f3f5f8;--panel:#ffffff;--panel-soft:#dff0f6;--panel-soft-2:#eaf5f9;--line:#cad5e3;--line-strong:#87a9bf;--text:#1f2a37;--muted:#607086;--brand:#0f7a8a;--brand-dark:#0b5e6a;--danger:#b42318;--ok:#047857}
*{box-sizing:border-box}body{margin:0;font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif;background:linear-gradient(180deg,#f7f9fb 0%,#eef3f7 100%);color:var(--text);font-size:15px}.wrap{max-width:1100px;margin:0 auto;padding:24px}.login{max-width:420px;margin:8vh auto;background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px;box-shadow:0 18px 50px rgba(31,42,55,.08)}h1,h2{margin:0 0 18px;color:#16324f}h2{font-size:28px}.top{background:#fff;border-bottom:1px solid var(--line);box-shadow:0 8px 22px rgba(17,24,39,.05)}.nav{display:flex;gap:8px;align-items:center;justify-content:space-between;max-width:1100px;margin:auto;padding:14px 24px}.nav strong{font-size:19px;color:#16324f}.nav a,.btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;color:var(--text);text-decoration:none;border-radius:8px;padding:9px 12px;cursor:pointer;font-size:14px;transition:.18s ease}.nav a:hover,.btn:hover{transform:translateY(-1px);border-color:var(--line-strong)}.nav .actions a{font-weight:600;box-shadow:0 2px 10px rgba(31,42,55,.04)}.nav .actions a:nth-child(1){background:#e6f4ea;border-color:#a7d3b0;color:#1d5f2f}.nav .actions a:nth-child(2){background:#e7f0ff;border-color:#9ebbe9;color:#1f4f93}.nav .actions a:nth-child(3){background:#fff3df;border-color:#e5c58a;color:#8a5a0a}.nav .actions a:nth-child(4){background:#f2efff;border-color:#c6b8f2;color:#5641a3}.nav .actions a:nth-child(5){background:#eef7ff;border-color:#a7d0ef;color:#245f91}.nav .actions a:nth-child(6){background:#f6f4ff;border-color:#c6bdf4;color:#5d4ea6}.nav .actions a:last-child{background:#fff0ed;border-color:#e4b3a7;color:#9a3f2a}.btn.primary{background:linear-gradient(180deg,var(--brand) 0%,var(--brand-dark) 100%);border-color:var(--brand-dark);color:#fff}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.small{padding:6px 9px;font-size:13px}.panel{background:var(--panel);border:1px solid #dbe4ee;border-radius:14px;padding:22px;margin-bottom:18px;box-shadow:0 16px 36px rgba(31,42,55,.06)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.form-section{border-radius:14px;padding:18px;margin-bottom:18px;border:1px solid #cddce8}.section-document{background:#eef6fa}.section-client{background:#fff3da;border-color:#e8d19f}.section-items{background:#eaf7ef;border-color:#bfe1cb}.section-client label{background:#ffe5a8;border-color:#e3c16e;color:#684a00}.section-items label{background:#d4f0dc;border-color:#9bd0aa;color:#155b2b}.section-document label{background:#dcecf4;border-color:#c4dbe7;color:#174569}label{display:block;font-weight:700;margin-bottom:7px;color:#174569;letter-spacing:.01em;background:#dcecf4;padding:6px 10px;border-radius:8px;border:1px solid #c4dbe7}input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--line-strong)!important;border-radius:8px;background:var(--panel-soft)!important;-webkit-appearance:none;appearance:none;font:inherit;color:var(--text);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.section-client input,.section-client select,.section-client textarea{background:#fff7e6!important;border-color:#d3ad58!important}.section-items input,.section-items select,.section-items textarea{background:#f3fff6!important;border-color:#8fc29d!important}.section-document input,.section-document select,.section-document textarea{background:#dff0f6!important;border-color:#87a9bf!important}input[type="date"]{background:var(--panel-soft)!important}select{background:var(--panel-soft)!important}textarea{background:var(--panel-soft)!important;min-height:86px}input[readonly]{background:var(--panel-soft-2)!important;color:#31546a;font-weight:600}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand)!important;box-shadow:0 0 0 4px rgba(15,122,138,.12);background:#fff!important}table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden}th,td{border-bottom:1px solid #e6edf5;padding:10px;text-align:left;vertical-align:top}th{font-size:13px;color:var(--muted);background:#f4f8fc}.actions{display:flex;gap:6px;flex-wrap:wrap}.flash{padding:12px;border-radius:10px;margin-bottom:16px}.flash.ok{background:#ecfdf3;color:var(--ok)}.flash.err{background:#fef3f2;color:var(--danger)}.muted{color:var(--muted)}.totalBox{text-align:right;font-size:28px;font-weight:800;color:#16324f;margin:18px 0;padding:14px 16px;background:#d9f0df;border:1px solid #9bd0aa;border-radius:12px}.item-row{display:grid;grid-template-columns:1.3fr 2fr .75fr .85fr .9fr auto;gap:10px;align-items:end;margin-bottom:14px;padding:16px;border:1px solid #bfe1cb;border-radius:12px;background:#f7fffa}.hidden{display:none}.logo-preview{max-height:70px;max-width:180px;border:1px solid var(--line);padding:4px;background:#fff}.section-title{margin:28px 0 14px;color:#16324f;font-size:30px}@media(max-width:760px){.grid,.grid3{grid-template-columns:1fr}.item-row{grid-template-columns:1fr}.nav{align-items:flex-start;flex-direction:column}.wrap{padding:14px}table{display:block;overflow:auto}.panel{padding:16px}.totalBox{font-size:24px}}
.section-document input,.section-document select,.section-document textarea,.section-document input[type="date"]{background:#dff0f6!important;border-color:#87a9bf!important}.section-client input,.section-client select,.section-client textarea{background:#fff7e6!important;border-color:#d3ad58!important}.section-items input,.section-items select,.section-items textarea{background:#f3fff6!important;border-color:#8fc29d!important}
.btn-pdf{background:#2f80ed;border-color:#2f80ed;color:#fff}
.btn-email{background:#f59e0b;border-color:#f59e0b;color:#fff}
.btn-edit{background:#8b5cf6;border-color:#8b5cf6;color:#fff}
.btn-create{background:#16a34a;border-color:#16a34a;color:#fff}
.btn-lock{background:#ea580c;border-color:#ea580c;color:#fff}
