:root{--navy:#041E42;--navy2:#082956;--teal:#007D8A;--teal2:#006c77;--orange:#FF8200;--gray:#D9D9D9;--bg:#f3f6f7;--card:#fff;--text:#172535;--muted:#687782;--line:#d9e2e5;--good:#167a52;--bad:#b33a3a;--warn:#9a6812;--shadow:0 9px 30px rgba(4,30,66,.08);--radius:15px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Montserrat,Arial,sans-serif;color:var(--text);background:var(--bg)}button,input,select,textarea{font:inherit}.hidden{display:none!important}button{cursor:pointer}.app{min-height:100vh;display:grid;grid-template-columns:255px 1fr}.sidebar{background:linear-gradient(180deg,var(--navy),#03162f);color:#fff;padding:18px 15px;position:sticky;top:0;height:100vh;overflow:auto}.brand{background:#fff;border-radius:13px;padding:17px 15px;border-bottom:4px solid var(--teal);margin-bottom:18px}.brand img{width:100%;display:block}.nav{display:grid;gap:5px}.nav button{border:0;background:transparent;color:#d6e1e7;text-align:left;padding:11px 12px;border-radius:9px;font-weight:700}.nav button:hover{background:rgba(255,255,255,.08);color:#fff}.nav button.active{background:rgba(0,125,138,.28);box-shadow:inset 3px 0 0 var(--orange);color:#fff}.side-foot{margin-top:25px;padding:12px;border-top:1px solid rgba(255,255,255,.12);font-size:11px;line-height:1.5;color:#afc3ca}main{padding:26px 30px 50px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px}.topbar h1{margin:0;color:var(--navy);font-size:27px;letter-spacing:-.025em}.subtitle{font-size:13px;color:var(--muted);margin-top:4px}.userbox{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 11px;box-shadow:var(--shadow)}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#fff;font-weight:850}.user-name{font-size:13px;font-weight:800}.user-role{font-size:11px;color:var(--muted)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:19px}.grid{display:grid;gap:16px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:18px}.kpi-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.kpi-value{font-size:27px;color:var(--navy);font-weight:850;margin-top:8px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}.toolbar-left,.toolbar-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.section-title{font-size:18px;color:var(--navy);font-weight:850}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:750}.btn-sm{padding:7px 9px;font-size:12px}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:var(--teal2)}.btn-dark{background:var(--navy);color:#fff}.btn-light{background:#eef7f7;color:var(--navy)}.btn-danger{background:#fdecec;color:var(--bad)}.btn-outline{background:#fff;color:var(--navy);border:1px solid var(--line)}.wide{width:100%;margin-top:12px}.input,.select,.textarea{width:100%;border:1px solid #ccd9dd;border-radius:9px;padding:10px 11px;background:#fff;outline:none}.textarea{min-height:100px;resize:vertical}.input:focus,.select:focus,.textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(0,125,138,.12)}label{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.045em;font-weight:800;margin:0 0 6px}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.span-2{grid-column:span 2}.span-all{grid-column:1/-1}.hint,.small{font-size:11px;color:var(--muted);line-height:1.5}.notice{padding:11px 13px;border-radius:11px;background:#eef7f7;color:#35555b;font-size:12px}.notice.warn{background:#fff6df;color:#74500d}.notice.bad{background:#fdecec;color:#8b2b2b}table{width:100%;border-collapse:collapse}th,td{padding:10px 9px;border-bottom:1px solid var(--line);font-size:13px;text-align:left;vertical-align:middle}th{font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:#fafcfc}.money{white-space:nowrap;font-variant-numeric:tabular-nums}.right{text-align:right}.pill{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef2f3;font-size:11px;font-weight:800}.pill.good{background:#e8f7ef;color:var(--good)}.pill.warn{background:#fff5d9;color:var(--warn)}.pill.bad{background:#fdecec;color:var(--bad)}.pill.teal{background:#e8f5f5;color:var(--teal2)}.empty{text-align:center;padding:28px;color:var(--muted)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px}.actions{display:flex;gap:6px;flex-wrap:wrap}.login-screen{position:fixed;inset:0;z-index:100;background:linear-gradient(135deg,var(--navy),#244d5c);display:grid;place-items:center;padding:20px}.login-card{width:min(470px,100%);background:#fff;border-radius:20px;padding:28px;box-shadow:0 25px 80px rgba(0,0,0,.26)}.login-logo{width:300px;max-width:100%;display:block;margin:0 auto 18px}.login-title{text-align:center;font-size:23px;color:var(--navy);font-weight:850}.login-sub{text-align:center;color:var(--muted);font-size:13px;margin:5px 0 18px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:#eef3f4;border-radius:10px;padding:4px;margin-bottom:16px}.auth-tab{border:0;background:transparent;padding:9px;border-radius:8px;font-weight:750;color:var(--muted)}.auth-tab.active{background:#fff;color:var(--navy);box-shadow:0 2px 8px rgba(4,30,66,.08)}.auth-form{display:grid;gap:8px}.msg{margin-top:12px;padding:10px 12px;border-radius:9px;background:#eef7f7;color:#28545a;font-size:12px}.msg.error{background:#fdecec;color:#8a2a2a}.modal-back{position:fixed;inset:0;z-index:80;background:rgba(10,28,40,.56);display:grid;place-items:center;padding:18px}.modal{background:#fff;width:min(900px,100%);max-height:92vh;overflow:auto;border-radius:17px;padding:20px;box-shadow:0 25px 80px rgba(0,0,0,.25)}.modal.wide-modal{width:min(1120px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.modal-title{font-size:19px;font-weight:850;color:var(--navy)}.modal-close{border:0;background:#eef3f4;border-radius:50%;width:34px;height:34px;font-size:20px}.contacts{display:grid;gap:8px}.contact-row{display:grid;grid-template-columns:1.1fr 1fr 1fr .8fr auto;gap:8px;padding:10px;background:#f8fbfb;border:1px solid var(--line);border-radius:10px}.discount-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.picker-grid{display:grid;grid-template-columns:minmax(240px,1fr) 220px;gap:10px}.picker-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.picker-tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;color:var(--navy)}.picker-tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.picker-results{max-height:56vh;overflow:auto;border:1px solid var(--line);border-radius:12px;margin-top:12px}.picker-item{display:grid;grid-template-columns:minmax(0,1fr) 135px 110px;gap:12px;align-items:center;padding:11px;border-bottom:1px solid var(--line)}.picker-item:hover{background:#fbfdfd}.picker-item:last-child{border-bottom:0}.quote-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.55fr);gap:17px}.sticky{position:sticky;top:16px;align-self:start}.quote-item-name{font-weight:750;color:var(--navy)}.quote-code{font-size:11px;color:var(--muted);margin-top:2px}.qty,.disc{width:78px;padding:7px;border:1px solid #ccd9dd;border-radius:8px}.summary-line{display:flex;justify-content:space-between;gap:10px;padding:7px 0;font-size:13px}.summary-line.total{border-top:2px solid var(--line);font-size:19px;font-weight:850;color:var(--navy);margin-top:5px;padding-top:12px}.summary-line.margin{color:var(--teal2);font-weight:750}.toast{position:fixed;right:22px;bottom:22px;z-index:120;background:var(--navy);color:#fff;padding:12px 15px;border-radius:10px;box-shadow:0 10px 35px rgba(0,0,0,.2);font-size:13px}.pdf-stage{position:fixed;left:-10000px;top:0;width:794px;background:#fff}.user-row.pending{background:#fffaf0}.clickable{cursor:pointer}.muted{color:var(--muted)}
.offer-sheet{width:794px;min-height:1123px;padding:34px 38px 28px;background:#fff;color:#172535;font-family:Arial,sans-serif;font-size:12px;line-height:1.35}.offer-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:15px;border-bottom:5px solid #007D8A}.offer-logo{width:190px;height:auto}.offer-company{text-align:right;color:#5f6d78;font-size:11px;line-height:1.45}.offer-company strong{display:block;color:#041E42;font-size:13px}.offer-titlebar{display:flex;justify-content:space-between;align-items:end;padding:17px 0 14px}.offer-eyebrow{font-size:10px;letter-spacing:.12em;color:#007D8A;font-weight:bold}.offer-number{font-size:22px;color:#041E42;font-weight:bold;margin-top:2px}.offer-date{text-align:right;font-size:11px;color:#5f6d78}.offer-client{display:grid;grid-template-columns:1.55fr 1fr;gap:18px;background:#f3f7f8;border:1px solid #D9D9D9;border-radius:5px;padding:13px 15px;margin-bottom:15px}.offer-label{font-size:9px;color:#007D8A;font-weight:bold;letter-spacing:.1em}.offer-client h2{font-size:15px;color:#041E42;margin:5px 0}.offer-conditions{border-left:1px solid #D9D9D9;padding-left:16px}.offer-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10px}.offer-table th{background:#041E42;color:#fff;padding:8px 5px;border:1px solid #041E42;text-align:center;font-size:9px}.offer-table td{border:1px solid #D9D9D9;padding:7px 5px;vertical-align:middle}.offer-table tbody tr:nth-child(even){background:#f8fafa}.offer-table .r{text-align:right;white-space:nowrap}.offer-table .c{text-align:center}.offer-table .disc-cell{color:#007D8A;font-weight:bold}.offer-table .prod{font-weight:bold;color:#041E42}.offer-table .code{font-size:8px;color:#647480;margin-top:2px}.offer-summary{display:grid;grid-template-columns:1fr 280px;gap:26px;margin-top:16px;align-items:start}.offer-terms p{margin:5px 0;font-size:10px}.offer-sum{width:100%;border-collapse:collapse}.offer-sum td{border:1px solid #D9D9D9;padding:8px}.offer-sum td:last-child{text-align:right;font-weight:bold}.offer-sum tr:last-child td{background:#041E42;color:#fff;border-color:#041E42;font-size:12px}.offer-warning{margin-top:14px;border-left:5px solid #007D8A;background:#eef7f7;color:#041E42;font-weight:bold;padding:9px 11px;font-size:9.5px}.offer-legal{margin-top:12px;padding-top:10px;border-top:1px solid #D9D9D9;color:#6b7880;font-size:8.5px}.offer-foot{display:flex;justify-content:space-between;gap:16px;margin-top:12px;color:#62717b;font-size:9px}.offer-foot strong{color:#041E42}
@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.quote-grid{grid-template-columns:1fr}.sticky{position:static}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.app{grid-template-columns:1fr}.sidebar{position:static;height:auto}.nav{grid-template-columns:repeat(2,1fr)}main{padding:18px}.topbar{align-items:flex-start}.userbox{max-width:50%}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.kpis{grid-template-columns:1fr 1fr}.contact-row{grid-template-columns:1fr}.discount-grid{grid-template-columns:1fr}.picker-grid{grid-template-columns:1fr}.picker-item{grid-template-columns:1fr auto}.picker-item .price{display:none}}
