html,body,#root{min-height:100%}#root{min-height:100vh}:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#1f252a;background:#eef2f4;--ink:#1f252a;--slate:#5f6b73;--teal:#0f7b8c;--blue:#1767af;--green:#249667;--line:#dae3e9;--muted:#677683;--pale:#f6f9fa;--shadow:0 13px 38px #1f252a0c}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.43;cursor:not-allowed}input,select,textarea{width:100%;min-width:0;border:1px solid #ccd8dd;border-radius:10px;background:#fff;padding:11px 12px;color:#1d2a31;outline:0}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #0f7b8c35;outline-offset:1px;border-color:var(--teal)}input[type=checkbox]{width:auto;accent-color:var(--teal)}textarea{resize:vertical;min-height:80px;line-height:1.55}h1,h2,h3,h4,p{margin:0}h1{font-size:28px;letter-spacing:-.9px}h2{font-size:20px;letter-spacing:-.4px}h3{font-size:15px}small,.muted{color:var(--muted)}a{color:var(--teal)}.shell{display:flex;min-height:100vh}.sidebar{width:249px;flex:0 0 249px;background:#18242b;color:#e8f3f6;padding:25px 15px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:auto}.sbrand{display:flex;gap:12px;align-items:center;padding:4px 10px 25px}.sbrand-mark{width:44px;height:44px;border-radius:14px;background:linear-gradient(140deg,#0f7b8c,#1560ac);display:grid;place-items:center;font-size:17px;font-weight:900;color:#fff}.sbrand b{font-size:18px;letter-spacing:.8px}.sbrand span{display:block;color:#8aadb7;font-size:10px;letter-spacing:2px;margin-top:4px;font-weight:700}.s-section{font-size:10px;letter-spacing:1.4px;font-weight:800;color:#73929d;padding:17px 14px 10px}.nav{border:0;display:flex;align-items:center;gap:11px;width:100%;text-align:left;padding:12px 13px;border-radius:11px;background:transparent;color:#b5c8d0;font-weight:600;margin:2px 0;font-size:13px}.nav .glyph{font-size:17px;width:23px;text-align:center}.nav.active{background:#146a79;color:#fff;box-shadow:inset 3px 0 #6bd0d8}.nav:hover:not(.active){background:#24363e;color:#fff}.numb{margin-left:auto;color:#a9d9db;font-size:11px}.side-bottom{margin-top:auto;background:#23333b;border:1px solid #334952;border-radius:13px;padding:15px;margin-inline:3px;font-size:12px;line-height:1.6;color:#cadbe1}.side-bottom strong{color:#fff}.green-dot{display:inline-block;width:7px;height:7px;background:#5bcaa1;border-radius:50%;margin-right:6px}.content{min-width:0;flex:1}.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;gap:15px;position:sticky;top:0;z-index:30}.breadcrumb{font-size:12px;color:#85949b}.breadcrumb strong{color:#1f252a;font-size:14px;display:block;margin-top:5px}.top-actions{display:flex;align-items:center;gap:10px}.company-switch{width:235px;padding:9px;font-weight:700;font-size:12px}.avatar{height:35px;width:35px;border-radius:50%;background:#e4f1f1;display:grid;place-items:center;color:var(--teal);font-weight:900}.wrap{max-width:1480px;margin:auto;padding:29px 32px 80px}.page{display:none}.page.active{display:block}.page-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:25px}.page-head p{margin-top:7px;line-height:1.55;color:var(--muted);font-size:13px}.action-row{display:flex;gap:9px;flex-wrap:wrap;align-items:center}.btn{border:1px solid #d5e1e6;border-radius:10px;padding:10px 14px;background:#fff;color:#263943;font-size:12px;font-weight:750;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:7px}.btn:hover{border-color:#0f7b8c;color:var(--teal)}.btn.primary{background:var(--teal);color:#fff;border-color:var(--teal)}.btn.primary:hover{background:#0a6774;color:#fff}.btn.dark{background:#22333d;color:#fff;border-color:#22333d}.btn.ghost{background:transparent}.btn.danger{color:#a53c35;border-color:#f1cac7}.btn.small{padding:7px 10px;font-size:11px}.btn:disabled{pointer-events:none}.hero{border-radius:19px;padding:28px 32px;background:linear-gradient(112deg,#1d2b35,#193946 56%,#0f7b8c 130%);color:#fff;min-height:188px;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden;position:relative}.hero:after{content:"";width:350px;height:350px;position:absolute;right:-60px;top:-190px;border:1px solid #ffffff36;border-radius:50%;box-shadow:0 0 0 45px #ffffff06,0 0 0 95px #ffffff05;pointer-events:none}.eyebrow{font-weight:800;font-size:10px;letter-spacing:1.7px;color:#80dbd6;text-transform:uppercase;margin-bottom:11px}.hero h2{font-size:29px;max-width:570px;line-height:1.22;letter-spacing:-1px}.hero p{margin-top:12px;font-size:12px;color:#c4dce4;max-width:550px;line-height:1.7}.hero .btn{margin-top:17px}.hero-logo{width:min(30%,310px);max-height:100px;object-fit:contain;background:#fff;padding:15px;border-radius:13px;z-index:1}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:19px 0 24px}.metric{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px 20px;box-shadow:var(--shadow)}.metric .iconbox{height:35px;width:35px;display:grid;place-items:center;border-radius:10px;background:#e7f5f5;color:#0b8192;font-size:19px;margin-bottom:13px}.metric small{font-size:11px;font-weight:700}.metric strong{font-size:27px;display:block;letter-spacing:-.8px;margin:5px 0}.metric .foot{font-size:11px;color:#6e7f86}.layout2{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:17px}.layout3{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.62fr);gap:17px}.card{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);overflow:hidden}.card-head{padding:19px 21px;border-bottom:1px solid #edf1f3;display:flex;justify-content:space-between;align-items:center;gap:13px}.card-head h3{font-size:14px}.card-body{padding:20px}.card-sub{font-size:11px;color:#78909b;margin-top:4px}.badge{display:inline-flex;align-items:center;gap:4px;border-radius:50px;padding:5px 10px;font-size:10px;font-weight:800;background:#ebf2f4;color:#586d78;white-space:nowrap}.badge.green{background:#e0f7ec;color:#18784b}.badge.amber{background:#fff4dc;color:#90600b}.badge.red{background:#fce9e7;color:#a6453b}.badge.blue{background:#e6f1fd;color:#2164a5}.badge.teal{background:#e3f7f7;color:#087581}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick{border:1px solid var(--line);border-radius:11px;padding:16px;text-align:left;background:#fafcfd}.quick:hover{border-color:var(--teal);background:#f0fbfb}.quick b{display:block;font-size:12px;margin:10px 0 4px}.quick span{font-size:11px;color:#73848b}.flowline{display:flex;gap:0;flex-wrap:wrap;align-items:center}.step{background:#f6f9fa;border:1px solid #dce7eb;border-radius:10px;padding:11px 13px;font-size:11px;font-weight:750}.arrow{font-size:15px;color:#9bb0b8;padding:0 7px}.activity{border-bottom:1px solid #edf0f1;padding:12px 0;display:flex;align-items:flex-start;gap:10px;font-size:12px}.activity:last-child{border:0}.activity i{width:9px;height:9px;border-radius:100%;background:#0f7b8c;flex:0 0 auto;margin-top:4px}.activity strong{display:block;margin-bottom:3px}.activity small{font-size:11px}.toolstrip{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:15px}.search{min-width:220px;flex:1}.toolstrip select{max-width:210px}.tablewrap{overflow:auto}.tbl{border-collapse:collapse;width:100%;font-size:12px}.tbl th{text-align:left;padding:13px 16px;background:#f7fafb;color:#687882;font-size:10px;letter-spacing:.45px;text-transform:uppercase;white-space:nowrap}.tbl td{padding:13px 16px;border-top:1px solid #ecf1f3;vertical-align:middle}.tbl tr:hover td{background:#fcfefe}.tbl td strong{font-size:12px}.tbl td small{display:block;margin-top:3px}.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.empty{text-align:center;padding:36px 20px;color:#74838c;font-size:13px;line-height:1.7}.empty .big{font-size:29px;display:block;margin-bottom:10px}.muted-note{background:#f1f7fa;border:1px solid #d9e7ed;padding:12px 14px;border-radius:10px;font-size:12px;line-height:1.6;color:#476371}.warning{background:#fff7e9;border:1px solid #f1dab0;color:#825919}.danger-note{background:#fff1ee;border:1px solid #f1c8c2;color:#a0443a}.grid-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid-fields .full{grid-column:1/-1}.field label{font-size:11px;color:#536774;font-weight:750;display:block;margin-bottom:6px}.field textarea{min-height:65px}.section-gap{margin-top:17px}.offer-layout{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(310px,.75fr);gap:18px;align-items:start}.offer-stack{display:grid;gap:16px}.mini-total{display:flex;justify-content:space-between;margin:12px 0;font-size:12px}.mini-total big{font-size:19px;font-weight:850}.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.spread{display:flex;justify-content:space-between;align-items:center;gap:10px}.entry{display:grid;grid-template-columns:minmax(0,1.4fr) 82px 106px 75px 72px 25px;gap:7px;align-items:end;margin-top:10px;border-bottom:1px solid #e7edf0;padding-bottom:13px}.entry label{display:block;font-size:9px;color:#6f8289;margin-bottom:4px;font-weight:800}.entry input{padding:9px;font-size:11px}.entry .check{text-align:center}.entry .check input{margin-top:13px}.offer-bullet{padding:12px 0;border-bottom:1px solid #ecf1f3}.offer-bullet:last-child{border:0}.offer-bullet b{font-size:12px}.offer-bullet small{display:block;margin-top:4px}.divider{border-top:1px solid #e5edf1;margin:18px 0}.hint{font-size:11px;line-height:1.65;color:#647985}.footerline{font-size:10px;color:#819096;margin-top:22px}.docs-layout{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.6fr);gap:16px;align-items:start}.docs-list .search{width:100%;margin-bottom:10px}.docs-rows{margin-top:12px;display:grid;gap:8px;max-height:calc(100vh - 340px);overflow:auto}.docs-row{border:1px solid var(--line);border-radius:11px;background:#fafcfd;padding:8px}.docs-row.on{border-color:#87c9cd;background:#f0fbfb}.docs-row>button{width:100%;text-align:left;border:0;background:transparent;padding:6px 4px}.docs-row b{display:block;font-size:12px}.docs-row small{display:block;margin-top:3px;color:#73848b;font-size:11px}.docs-row-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.docs-stage{min-width:0}.docs-toolbar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:12px}.docs-frame{width:100%;height:calc(100vh - 230px);min-height:640px;border:1px solid var(--line);border-radius:12px;background:#fff}@media(max-width:860px){.docs-layout{grid-template-columns:1fr}.docs-frame{min-height:520px;height:70vh}.docs-rows{max-height:none}}.sheet{background:#fff;border:1px solid #d8e0e3;width:100%;padding:32px 30px;box-shadow:0 10px 22px #132d3312;position:relative;min-height:445px;overflow:hidden}.sheet .doc-top{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #d9e3e7;padding-bottom:19px}.sheet .doc-top img{max-width:72mm;max-height:20mm;object-fit:contain;object-position:left top}.sheet .doc-title{font-size:22px;letter-spacing:-.6px;margin:15px 0 8px}.sheet .doc-row{display:flex;justify-content:space-between;gap:15px;font-size:10px;line-height:1.6}.sheet .doc-row>div{max-width:48%}.sheet .doc-line{display:grid;grid-template-columns:1.8fr .5fr .9fr;gap:10px;border-bottom:1px solid #e7edf0;padding:8px 0;font-size:10px}.sheet .doc-total{margin-left:auto;max-width:240px;font-size:11px}.sheet .doc-total div{display:flex;justify-content:space-between;margin-top:9px}.sheet .doc-footer{font-size:9px;color:#61747e;border-top:1px solid #dbe5e8;margin-top:32px;padding-top:11px}.sheet .ribbon{position:absolute;right:-47px;top:28px;transform:rotate(45deg);background:#d49c34;color:#fff;width:174px;text-align:center;padding:9px;font-weight:900;letter-spacing:2px;font-size:11px;box-shadow:0 2px 5px #2222}.doc-para{white-space:pre-wrap;line-height:1.65;font-size:10px;color:#3d535b;margin:12px 0}.inventory-red{color:#aa483e;font-weight:800}.inventory-green{color:#20885f;font-weight:800}.filter-pills{display:flex;gap:7px;flex-wrap:wrap}.chip{border:1px solid #d5e1e4;background:#fff;padding:7px 10px;border-radius:50px;font-size:11px;color:#536a75;font-weight:700}.chip.on{background:#dff3f3;border-color:#87c9cd;color:#0e7582}.integr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.integr-card{border:1px solid #dce5e9;border-radius:12px;padding:20px;background:#fff}.integr-card .badge{margin-bottom:18px}.integr-card h3{margin:12px 0 8px}.integr-card p{font-size:11px;line-height:1.65;color:#6b7e86}.integr-icon{width:49px;height:49px;display:grid;place-items:center;border-radius:12px;font-size:25px;background:#e7f4f5;color:var(--teal)}pre{background:#1b2b34;color:#d4eef0;font:11px/1.65 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;padding:17px;max-height:440px;overflow:auto}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#10232c9c;z-index:70;display:none;align-items:center;justify-content:center;padding:20px}.modal-back.show{display:flex}.modal{background:#fff;border-radius:17px;width:min(650px,100%);max-height:90vh;overflow:auto;box-shadow:0 20px 60px #0003}.modal .modal-head{padding:20px 23px;border-bottom:1px solid #edf0f2;display:flex;align-items:center;justify-content:space-between}.modal .modal-body{padding:23px}.modal .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:18px 23px;border-top:1px solid #edf0f2}.toast{position:fixed;bottom:24px;right:25px;background:#1d333d;color:#fff;border-radius:11px;padding:14px 20px;z-index:99;box-shadow:0 13px 45px #17293246;max-width:380px;font-size:12px;transform:translateY(120px);opacity:0;transition:.2s;pointer-events:none}.toast.show{transform:none;opacity:1}.save{font-size:10px;color:#66827a;font-weight:700}.status-flow{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.status-step{padding:9px 11px;border:1px solid #dbe6e9;background:#f7fafb;border-radius:9px;font-size:10px;font-weight:800;color:#72848e}.status-step.done{background:#e3f7ee;border-color:#c7e8d5;color:#187f57}.mobile-menu{display:none}.labelstrip{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.value-line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #eef2f3;font-size:12px}.value-line:last-child{border:0}.soft-stat{border:1px solid #e1eaed;padding:12px;border-radius:10px;background:#f9fbfc}.soft-stat b{font-size:16px;display:block;margin:4px 0}.right{text-align:right}.print-only,#print-doc{display:none}@media(max-width:1200px){.metrics{grid-template-columns:repeat(2,1fr)}.offer-layout{grid-template-columns:1fr}.integr-grid{grid-template-columns:1fr 1fr}}@media(max-width:860px){.sidebar{position:fixed;z-index:50;transform:translate(-100%);transition:.2s}.sidebar.show{transform:none}.mobile-menu{display:inline-flex}.topbar{padding:0 15px}.top-actions .save,.avatar{display:none}.company-switch{width:175px}.wrap{padding:22px 15px 65px}.layout2,.layout3{grid-template-columns:1fr}.hero-logo{display:none}.hero{padding:24px}.hero h2{font-size:24px}}@media(max-width:620px){.metrics,.quick-grid,.integr-grid,.grid-fields{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.entry{grid-template-columns:1fr 1fr 1fr;gap:8px}.entry>div:first-child{grid-column:1/-1}.topbar .breadcrumb{display:none}.company-switch{width:min(65vw,240px)}.sheet{padding:18px 14px}.sheet .doc-top img{max-width:80px}.sheet .doc-row{font-size:9px}.top-actions{width:100%;justify-content:flex-end}}@media print{@page{size:A4;margin:14mm}html,body,#print-doc,.print-sheet{background:#fff!important}body{background:#fff}.shell,.modal-back,.toast{display:none!important}#print-doc{display:block!important}.print-sheet{width:100%;font-family:Arial,sans-serif;color:#1f252a;font-size:10pt}.print-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #899ca4;padding-bottom:12px}.print-head img{max-width:72mm;max-height:20mm;object-fit:contain;object-position:left top}.print-head h1{font-size:24pt}.print-meta{font-size:9pt;line-height:1.65;text-align:right}.print-address{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:22px 0}.print-title{font-size:17pt;margin:16px 0 10px}.print-body{font-size:10pt;line-height:1.6;white-space:pre-wrap}.print-table{width:100%;border-collapse:collapse;font-size:9pt;margin:16px 0}.print-table th{background:#eef2f4;border-bottom:1px solid #aabac2;text-align:left;padding:7px}.print-table td{border-bottom:1px solid #e2e9ed;padding:7px;vertical-align:top}.print-table tr{break-inside:avoid}.print-totals{margin-left:auto;width:63%;font-size:10pt}.print-totals div{display:flex;justify-content:space-between;padding:7px;border-bottom:1px solid #e0e7ea}.print-totals div:last-child{font-weight:700;border-top:1px solid #7e929c}.print-section{break-inside:avoid;margin-top:25px}.print-foot{margin-top:45px;border-top:1px solid #9cabb2;padding-top:9px;font-size:8pt;line-height:1.5}.print-ribbon{position:fixed;top:19mm;right:-9mm;transform:rotate(45deg);background:#dfaa49!important;color:#fff!important;padding:7px 21mm;font-weight:700;letter-spacing:3px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-draftnote{margin:13px 0;padding:8px;border:1px solid #ba8d40;color:#8d6326}}.login-page{--cst-primary: #111111;--cst-surface: #f2f2f2;--cst-border: #dcdcdc;--cst-text: #111111;--cst-muted: #666666;--radius: 14px;--radius-sm: 10px;--shadow: 0 8px 25px rgba(0, 0, 0, .08);min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;position:relative;font-family:Arial,Helvetica,sans-serif;color:var(--cst-text);background:linear-gradient(180deg,#101c2252,#101c2285),url(/login/cst-bg.png) center / cover no-repeat,#1a2a32}.login-page,.login-page button,.login-page input,.login-page label,.login-page h1,.login-page p{font-family:Arial,Helvetica,sans-serif}.login-panel{width:100%;max-width:420px;background:#f2f2f2f5;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);position:relative;z-index:1}.login-logo{display:flex;justify-content:center;margin-bottom:6px}.login-logo img{max-width:220px;max-height:96px;width:auto;height:auto;object-fit:contain}.system-logo-corner{position:fixed;right:20px;bottom:18px;z-index:5;background:#ffffffeb;border:1px solid var(--cst-border);border-radius:12px;padding:8px 10px;box-shadow:0 6px 18px #00000014;max-width:min(280px,42vw)}.system-logo-corner img{display:block;width:100%;max-width:240px;height:auto;object-fit:contain}.login-kicker{text-align:center;font-size:13px;color:var(--cst-muted);margin:0 0 4px}.login-panel h1{margin:0 0 6px;text-align:center;font-size:20px;font-weight:700;letter-spacing:0;color:var(--cst-text)}.login-sub{text-align:center;font-size:13px;color:var(--cst-muted);margin:0 0 18px;line-height:1.4}.login-page .field{margin:10px 0}.login-page .field label{display:block;font-size:12px;color:#333;font-weight:400;margin-bottom:6px}.login-page .field input{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid #ccc;font-size:14px;background:#fff;color:#111}.login-page .field input:focus,.login-page .field input:focus-visible{outline:2px solid rgba(17,17,17,.2);outline-offset:0;border-color:#999}.login-page .btn-primary{width:100%;margin-top:14px;padding:11px 12px;border:none;border-radius:var(--radius-sm);background:var(--cst-primary);color:#fff;font-size:14px;font-weight:700;cursor:pointer}.login-page .btn-primary:hover{background:#000;color:#fff}.login-page .btn-primary:focus-visible{outline:2px solid rgba(17,17,17,.25);outline-offset:1px}.login-page .btn-primary:disabled{opacity:.43;cursor:not-allowed}.login-page .err{background:#ffeaea;border:1px solid #ffb3b3;color:#a40000;padding:10px;border-radius:10px;margin:10px 0;font-size:13px}.login-foot{margin-top:16px;text-align:center;font-size:12px;color:var(--cst-muted)}@media(max-width:720px){.login-page{padding:24px 14px;align-items:flex-start}.login-panel{padding:20px 16px}.login-panel h1{font-size:18px}.system-logo-corner{right:12px;bottom:12px;max-width:min(220px,55vw);padding:6px 8px}}.sheet{overflow:auto}.pdf-modal{width:min(980px,100%)}.pdf-frame{display:block;width:100%;height:min(78vh,920px);border:0;background:#4a5258}@media print{.pdf-modal,.modal-back,.pdf-print-frame{display:none!important}.print-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10mm!important}.print-brand{flex:0 0 72mm;max-width:72mm;overflow:hidden}.print-head img,.print-brand img{display:block!important;width:auto!important;max-width:72mm!important;max-height:20mm!important;height:auto!important;object-fit:contain!important;object-position:left top!important}.print-head h1{font-size:16pt!important;margin:0 0 4px!important;line-height:1.2!important}.print-meta{flex:1 1 auto;max-width:58%;text-align:right!important}}.sheet .doc-top{align-items:flex-start}.sheet .doc-top img{max-width:72mm!important;max-height:20mm!important;width:auto;height:auto;object-fit:contain;object-position:left top;display:block;flex:0 0 auto}.sbrand-photo{width:44px;height:44px;border-radius:14px;background:linear-gradient(140deg,#0f7b8c,#1560ac);display:grid;place-items:center;font-size:13px;font-weight:900;color:#fff;overflow:hidden;cursor:pointer;flex:0 0 44px;margin:0}.sbrand-photo img,.avatar img{width:100%;height:100%;object-fit:cover;display:block}.avatar{overflow:hidden;padding:0}.letter-stage{background:#c5cfd3;padding:18px 12px 22px;display:flex;justify-content:center;overflow:auto}.letter-stage .sheet{position:relative;width:210mm;min-height:297mm;max-width:none;margin:0 auto;padding:12mm 18mm 18mm 22mm;background:#fff;border:1px solid #c3ced3;box-shadow:0 10px 28px #14283229;overflow:visible;box-sizing:border-box}.sheet-fold,.sheet-hole{position:absolute;left:0;width:5mm;border-top:1px solid #8a9aa2;pointer-events:none}.sheet-fold.f1{top:105mm}.sheet-fold.f2{top:210mm}.sheet-hole{top:148.5mm;width:3.2mm;border-top-style:dotted}.doc-letterhead{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;min-height:24mm;margin-bottom:2mm}.doc-letterhead img{max-width:72mm!important;max-height:20mm!important;width:auto;height:auto;object-fit:contain;object-position:left top;display:block}.doc-letterhead-right{text-align:right;font-size:9px;color:#5b6c74;line-height:1.45}.doc-letterhead-right b{display:block;font-size:16px;color:#1f252a;letter-spacing:-.3px}.doc-zone{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-top:2mm;min-height:45mm}.doc-window{width:85mm;flex:0 0 85mm;max-width:85mm;min-height:42mm;padding:2.5mm 3mm 3mm;border:1px dashed #c5d2d7;box-sizing:border-box;overflow:hidden}.doc-sender{font-size:7pt;color:#53646c;border-bottom:1px solid #1f252a;padding-bottom:2.2mm;margin-bottom:4.5mm;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-recipient{font-size:10pt;line-height:1.3;color:#1f252a;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.doc-recipient b{display:block;font-size:10pt;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.doc-address{white-space:pre-wrap;overflow-wrap:anywhere}.doc-info{width:68mm;flex:0 0 68mm;max-width:68mm;min-width:0;font-size:9px;padding-top:2mm}.doc-info>div{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px}.doc-info span{color:#6a7b83}.doc-title{font-size:16px;letter-spacing:-.4px;margin:8mm 0 4mm;padding-top:2mm;border-top:1px solid #d7e0e4}@media print{@page{size:A4;margin:0}html,body,#print-doc{background:#fff!important}.print-sheet{position:relative;width:210mm;min-height:297mm;padding:12mm 18mm 16mm 25mm;box-sizing:border-box;font-family:Arial,Helvetica,sans-serif;color:#1f252a}.print-fold,.print-hole{position:absolute;left:2mm;width:5mm;border-top:.4pt solid #7d8c93}.print-fold.f1{top:105mm}.print-fold.f2{top:210mm}.print-hole{top:148.5mm;width:3.2mm;border-top-style:dotted}.print-zone{display:flex;justify-content:space-between;gap:8mm;min-height:42mm;margin:3mm 0 6mm}.print-window{width:85mm;flex:0 0 85mm;max-width:85mm;min-height:40mm;font-size:10pt;line-height:1.3;overflow:hidden}.print-window b{display:block;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.print-address-block{white-space:normal;overflow-wrap:anywhere}.print-sender{font-size:7pt;color:#555;border-bottom:.3pt solid #222;margin-bottom:4.5mm;padding-bottom:2.2mm;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.print-info{width:70mm;flex:0 0 70mm;max-width:70mm;min-width:0;font-size:9pt}.print-info>div{display:flex;justify-content:space-between;margin-bottom:3mm}.print-info span{color:#667780}}.offer-layout{grid-template-columns:minmax(0,1.18fr) minmax(360px,.92fr)}.offer-doc-preview-body{padding:10px!important}.offer-doc-preview{width:100%;overflow:auto;max-height:min(78vh,980px);background:#c5cfd3;border-radius:8px}.offer-doc-preview-frame{width:100%;overflow:hidden}.offer-doc-preview-scaler{transform-origin:top left}.offer-doc-preview .letter-stage{padding:8px 0 12px}@media(min-width:1201px){.offer-side{position:sticky;top:84px;max-height:calc(100vh - 96px);overflow:auto}}.pdf-modal{width:min(1120px,calc(100vw - 28px));max-height:94vh;display:flex;flex-direction:column}.pdf-modal .modal-head{flex:0 0 auto}.pdf-frame{display:block;width:100%;height:min(84vh,1020px);border:0;background:#3d454b}.pdf-frame.img-preview{object-fit:contain;background:#1b2428}fieldset.offer-lock{border:0;margin:0;padding:0;min-width:0;width:100%}fieldset.offer-lock:disabled .card-body{opacity:.78}.send-mail-modal{width:min(760px,100%)}.admin-hub{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}.admin-tile{display:flex;align-items:flex-start;gap:14px;text-align:left;background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px 16px;box-shadow:var(--shadow);width:100%;color:inherit}.admin-tile:hover{border-color:var(--teal);background:#f4fbfb;color:inherit}.admin-tile-icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:12px;background:#e7f5f5;font-size:21px}.admin-tile-body{min-width:0;flex:1}.admin-tile-body b{font-size:14px;letter-spacing:-.2px}.admin-tile-body span{display:block;margin-top:6px;font-size:12px;line-height:1.55;color:var(--muted);font-weight:500;white-space:normal}.admin-tile-go{color:var(--teal);font-weight:800;padding-top:8px}.item-picker{background:#f6f9fa;border:1px solid var(--line);border-radius:14px;padding:14px;margin-bottom:12px}.item-picker-search input{background:#fff;font-size:15px}.item-picker-filters,.item-picker-cats{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.item-picker-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0 8px}.item-picker-empty{margin:8px 0 0;padding:18px 12px;text-align:center;color:var(--muted);background:#fff;border:1px dashed var(--line);border-radius:12px}.item-picker-list{list-style:none;margin:0;padding:0;max-height:340px;overflow:auto;display:grid;gap:8px}.item-pick-row{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;text-align:left;background:#fff;border:1px solid var(--line);border-radius:12px;padding:11px 12px;color:inherit}.item-pick-row:hover:not(:disabled){border-color:var(--teal);background:#f4fbfb;color:inherit}.item-pick-main{min-width:0;flex:1}.item-pick-main b{display:block;font-size:14px;letter-spacing:-.2px}.item-pick-main small{display:block;margin-top:3px;color:var(--muted)}.item-pick-meta-row{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:6px;flex:0 1 auto}.item-pick-price{font-weight:750;font-variant-numeric:tabular-nums;min-width:5.5rem;text-align:right}.item-pick-add{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:#e7f5f5;color:var(--teal);font-weight:800}.item-pick-row:hover:not(:disabled) .item-pick-add{background:var(--teal);color:#fff}.offer-line-cat{margin-right:6px}details.section-gap>summary{cursor:pointer;list-style:none;margin-bottom:8px}details.section-gap>summary::-webkit-details-marker{display:none}details.section-gap>summary:before{content:"▸ ";color:var(--teal);font-weight:800}details.section-gap[open]>summary:before{content:"▾ "}@media(max-width:860px){.item-pick-row{flex-direction:column;align-items:stretch}.item-pick-meta-row{justify-content:flex-start}.item-pick-price{text-align:left;min-width:0}}.modal-back.file-preview{z-index:90}.letter-stage .sheet .doc-para{font-size:11.5px;line-height:1.58;color:#1f252a;margin:3.2mm 0}.letter-stage .sheet .doc-appointment-head{font-size:12px;font-weight:800;color:#000;margin:4.2mm 0 1.2mm}.letter-stage .sheet .doc-appointment{font-weight:800;color:#000}.letter-stage .sheet .doc-offer-title{font-size:12.5px;font-weight:750;letter-spacing:-.2px}.letter-stage .sheet .doc-line{font-size:11px;line-height:1.4;padding:2.4mm 0;color:#1f252a}.letter-stage .sheet .doc-line small{font-size:9.5px;color:#4d5e66}.doc-cat-block{margin:4.5mm 0 2mm}.doc-cat{margin:0 0 1.5mm;padding:2.2mm 3.2mm;background:#e8f1f3;border-left:3.5px solid #0f7b8c;font-size:12px;font-weight:800;letter-spacing:.1px;color:#14343c}.doc-cat-sum{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:11px;color:#1f252a;padding:3.6mm 0 1mm;border-top:.6pt solid #9eb0b7;margin-top:2.8mm;font-variant-numeric:tabular-nums}.doc-sum{margin:7mm 0 0 auto;width:92mm;background:#f3f7f8;border:1px solid #c5d2d7;padding:4mm 4.5mm 3.5mm;font-size:12px}.doc-sum-head{font-size:13px;font-weight:800;margin-bottom:3mm;color:#14343c}.doc-sum>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:2.4mm;font-variant-numeric:tabular-nums}.doc-sum>div>span:last-child{font-weight:700;min-width:32mm;text-align:right}.doc-sum-grand{margin-top:3mm!important;padding-top:2.5mm;border-top:1.2px solid #1f252a;font-size:13px;font-weight:800}.doc-sum-opt{color:#5a6d75;font-size:10px}@media print{.print-appointment-head,.print-appointment{font-weight:800!important;color:#000!important}.print-appointment-head{margin:12px 0 4px!important}.print-body{font-size:11pt!important;line-height:1.55!important;color:#1f252a}.print-table{font-size:10pt!important}.print-table tr.print-cat th{background:#e8f1f3!important;border-left:3pt solid #0f7b8c;font-size:11pt;letter-spacing:.1px;padding:6px 8px!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-cat-sum td{font-weight:700;border-bottom:1pt solid #9eb0b7!important;padding-top:14px!important;padding-bottom:8px!important}.print-totals{width:88mm!important;background:#f3f7f8;border:.6pt solid #c5d2d7;padding:3mm 4mm;font-size:11pt!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-totals-head{font-weight:800;font-size:12pt;padding:0 0 2mm!important;border:0!important;display:block}.print-totals div span:last-child{font-variant-numeric:tabular-nums;font-weight:700;min-width:32mm;text-align:right}.print-totals-grand{font-weight:800!important;font-size:12pt;border-top:1.2pt solid #1f252a!important;margin-top:2mm}}.btn.send-customer,button.btn.send-customer{background:#e36b12;border-color:#c85a0c;color:#fff!important;font-weight:800;box-shadow:0 2px #9c4308}.btn.send-customer:hover{background:#c85a0c;border-color:#a34b0b;color:#fff!important}.doc-line-note,.print-note{margin-top:2px;font-size:10px;line-height:1.45;color:#33464e;white-space:pre-wrap}.offer-bullet.is-optional{background:#f3f5f6;border-left:3px solid #c5d0d5;padding-left:10px;margin-left:-10px}.offer-bullet.is-optional b,.offer-bullet.is-optional small,.letter-stage .sheet .doc-line.is-optional,.sheet .doc-line.is-optional{color:#8a969c}.letter-stage .sheet .doc-line.is-optional small,.letter-stage .sheet .doc-line.is-optional .doc-line-note{color:#9aa6ac}@media print{.print-note{display:block;font-size:9.5pt;color:#1f252a;margin-top:2px}.print-table tr.print-opt td,.print-table tr.print-opt small,.print-table tr.print-opt .print-note{color:#8a8a8a!important}}.login-bell-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#fff;z-index:9999;opacity:0;pointer-events:none;transition:opacity .35s ease}.login-bell-overlay.show{opacity:1;pointer-events:auto}.bell-stage{display:flex;flex-direction:column;align-items:center;gap:22px;opacity:0;transform:translateY(8px) scale(.96)}.login-bell-overlay.show .bell-stage{opacity:1;transform:translateY(0) scale(1);transition:transform .35s ease}.bell-wrap{width:138px;height:138px;background:transparent;border:0;box-shadow:none;border-radius:0;display:flex;align-items:center;justify-content:center;transform-origin:50% 12%}.login-bell-overlay.show .bell-wrap{animation:cst-bell-ring 1.15s ease-in-out 2}.cst-bell-img{width:96px;height:96px;object-fit:contain;filter:none}.bell-caption{font-family:Arial,Helvetica,sans-serif;font-size:18px;font-weight:800;color:#111827;letter-spacing:.01em;text-align:center}@keyframes cst-bell-ring{0%{transform:rotate(0)}8%{transform:rotate(16deg)}16%{transform:rotate(-14deg)}24%{transform:rotate(12deg)}32%{transform:rotate(-10deg)}40%{transform:rotate(8deg)}48%{transform:rotate(-6deg)}56%{transform:rotate(4deg)}64%{transform:rotate(-2deg)}to{transform:rotate(0)}}@media(prefers-reduced-motion:reduce){.login-bell-overlay.show .bell-wrap{animation:none}.bell-stage,.login-bell-overlay.show .bell-stage{transform:none;transition:none}}.offer-overview .toolstrip{margin:0;padding:4px 16px 12px}.offer-overview .tablewrap{border-top:1px solid var(--line)}.offer-overview.collapsed .card-head{border-bottom:0}.maint-app .chip{min-height:42px;padding:10px 14px}.maint-app .btn{min-height:42px}.maint-app .offer-bullet{padding:14px 0}@media(max-width:620px){.maint-app .grid-fields{grid-template-columns:1fr}.maint-app .metrics{grid-template-columns:1fr 1fr}}
