:root{color:#1a2937;font-synthesis:none;--nav:#122432;--green:#087b66;--border:#e4e9ed;--muted:#74828e;background:#f3f5f7;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:14px;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;transition:background .15s,box-shadow .15s;display:inline-flex}button:disabled{opacity:.4;cursor:not-allowed}button:not(:disabled):active{transform:translateY(1px)}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,tr:focus-visible{outline-offset:3px;outline:3px solid #42b5a0}h1,h2,h3,p{margin:0}h1{letter-spacing:-.9px;font-size:27px}h2{letter-spacing:-.4px;font-size:18px}h3{font-size:15px}p{color:#71808c;line-height:1.6}small{font-size:12px}strong{font-weight:600}kbd{color:#6d7d89;background:#f4f6f8;border:1px solid #dce3e8;border-radius:5px;justify-content:center;align-items:center;min-width:24px;padding:4px 6px;font:11px Segoe UI,Arial,sans-serif;display:inline-flex;box-shadow:0 1px #d8e0e5}.shell{min-height:100vh;display:flex}.sidebar{background:var(--nav);color:#b7c4cd;z-index:10;flex-direction:column;width:224px;padding:32px 18px 15px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:#fff;align-items:center;gap:11px;padding:0 10px;display:flex}.brand-icon{color:#fff;background:#1b8d75;border-radius:12px;place-items:center;width:41px;height:43px;display:grid}.brand strong{letter-spacing:-.6px;font-size:22px;line-height:1.1}.brand strong>span{letter-spacing:3.6px;text-transform:uppercase;color:#b5c7cb;margin-top:6px;font-size:10px;font-weight:400;display:block}.workspace{color:#e0e8ec;border-top:1px solid #ffffff12;border-bottom:1px solid #ffffff12;align-items:center;gap:10px;margin:31px 8px 26px;padding:19px 0;font-size:12px;display:flex}.workspace small{color:#7e949f;margin-top:5px;font-size:10px;display:block}.workspace span{text-overflow:ellipsis;max-width:140px;overflow:hidden}.nav-caption{letter-spacing:1.7px;color:#6c8391;margin:0 15px 12px;font-size:9px}nav{flex-direction:column;gap:7px;display:flex}nav button{color:#93a7b3;background:0 0;border-radius:9px;justify-content:start;gap:13px;padding:13px 14px;font-size:13px}nav button:hover{color:#fff;background:#ffffff08}nav button.active{color:#64d1b3;background:#1c8d742a;box-shadow:inset 3px 0 #35bb99}nav button b{background:#ffffff0c;border-radius:4px;margin-left:auto;padding:2px 5px;font-size:10px}.sidebar-bottom{margin-top:auto}.shortcut-guide{color:#90a6b3;background:0 0;padding:18px 10px;font-size:11px}.user{border-top:1px solid #ffffff13;align-items:center;gap:9px;padding:20px 6px 0;display:flex}.avatar{color:#354c43;background:#d1d9c6;border-radius:50%;place-items:center;width:32px;height:32px;font-size:10px;font-weight:700;display:grid}.user strong{color:#e7edf0;font-size:12px}.user small{color:#7d939f;margin-top:4px;font-size:9px;display:block}.user .icon-button{color:#889faa;margin-left:auto}.shell>main{width:calc(100% - 224px);min-width:0;margin-left:224px;padding:28px 30px 16px}header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px;display:flex}.eyebrow{color:#82939f;letter-spacing:1.7px;margin-bottom:9px;font-size:9px;font-weight:600;display:block}.header-actions{align-items:center;gap:13px;display:flex}.connection{color:#75828d;align-items:center;gap:6px;font-size:10px;display:flex}.connection i,.shift-pill i{background:#20a780;border-radius:50%;width:6px;height:6px}.connection.down i{background:#d68a34}.terminal-label{color:#81909c;flex-direction:column;gap:2px;font-size:9px;display:flex}.terminal-label select{color:#344959;background:0 0;border:0;max-width:110px;padding:0;font-size:12px;font-weight:600}.icon-button{color:#8a99a4;background:0 0;border-radius:7px;width:32px;height:32px;padding:0}.icon-button:hover{background:#e8edf0}.user .icon-button:hover{background:#ffffff10}.page-line{justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px;display:flex}.page-line p{font-size:12px}.shift-pill{color:#08785c;background:#edf8f3;border:1px solid #c6e4da;border-radius:20px;padding:8px 11px;font-size:11px}.shift-pill.closed{color:#946727;background:#fff7e8;border-color:#eadab9}.shift-pill.closed i{background:#c79235}.pos{grid-template-columns:minmax(440px,1fr) 307px;align-items:start;gap:22px;display:grid}.pos-left{min-width:0}.search-card{border:1px solid var(--border);background:#fff;border-radius:12px;margin-bottom:18px;padding:19px 20px 12px;position:relative}.search-card>label{color:#526876;align-items:center;gap:8px;margin-bottom:10px;font-size:11px;font-weight:600;display:flex}.barcode{color:#71a591;border:1.5px solid #63ac99;border-radius:7px;align-items:center;padding:4px 10px 4px 13px;display:flex;box-shadow:0 0 0 3px #e8f4ef}.barcode input{color:#263d4b;background:0 0;border:0;width:100%;height:44px;padding:8px 12px;font-size:12px;outline:none!important}.barcode input::placeholder{color:#96a3ac}.barcode kbd{color:#6a9082;background:#f6faf8;border-color:#d8e9e2}.search-hint{color:#9aa6ae;margin-top:10px;font-size:9px;display:block}.search-results{z-index:5;background:#fff;border:1px solid #d5e2df;border-radius:9px;padding:5px;position:absolute;top:112px;left:20px;right:20px;box-shadow:0 10px 25px #12243220}.search-results button{text-align:left;background:#fff;border-radius:6px;justify-content:start;width:100%;padding:11px}.search-results button.highlight,.search-results button:hover{background:#ecf6f1}.search-results span{flex:1}.search-results strong{font-size:12px}.search-results small{color:#8c9b9f;margin-top:4px;font-size:10px;display:block}.search-results b{font-size:12px}.search-results p{padding:16px}.cart-panel{border:1px solid var(--border);background:#fff;border-radius:12px;overflow:hidden}.panel-title{justify-content:space-between;align-items:center;gap:12px;padding:20px;display:flex}.panel-title h2{align-items:center;gap:9px;font-size:14px;display:flex}.panel-title h2 span{color:#87969f;background:#f0f3f5;border-radius:5px;padding:4px 7px;font-size:10px}.panel-title p{margin-top:6px;font-size:12px}.text-button{color:#7c8c96;background:0 0;padding:6px;font-size:11px}.text-button:hover{color:var(--green)}.danger{color:#b35153}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%}th{letter-spacing:.7px;color:#91a0aa;background:#f9fafb;border-block:1px solid #edf0f2;padding:13px 18px;font-size:9px;font-weight:500}td{color:#61737f;border-bottom:1px solid #f0f2f4;padding:15px 18px;font-size:12px}td strong{color:#283d4b}td small{color:#99a7af;margin-top:5px;font-size:10px;display:block}.cart-table th:first-child{width:47%}.cart-table th,.cart-table td{padding-left:12px;padding-right:12px}.cart-table th:first-child,.cart-table td:first-child{padding-left:20px}.cart-table th:not(:first-child){white-space:nowrap}.cart-table td{white-space:nowrap;height:77px}.cart-table td:first-child{white-space:normal}.cart-table tr.selected{background:#f0f8f4}.cart-table tr.selected td:first-child{box-shadow:inset 3px 0 #26a583}.item-name{align-items:center;gap:12px;min-width:0;display:flex}.item-index{color:#a0adb5;font-size:10px}.item-name strong{font-size:12px;line-height:1.4;display:block}.quantity{background:#fff;border:1px solid #e4e9e9;border-radius:6px;align-items:center;width:86px;display:flex}.quantity button{color:#7e969f;background:0 0;flex-shrink:0;width:24px;height:28px}.quantity input{text-align:center;appearance:textfield;color:#385260;background:0 0;border:0;width:34px;height:28px;padding:0;font-size:12px}.quantity input::-webkit-inner-spin-button{appearance:none}.quantity input::-webkit-outer-spin-button{appearance:none}.remove:hover{color:#b35153;background:#f9ebeb}.empty-cart{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:302px;display:flex}.empty-cart>div{color:#6fa58e;background:#f0f6f3;border-radius:50%;place-items:center;width:78px;height:78px;margin-bottom:18px;display:grid}.empty-cart h3{color:#3d5260;margin-bottom:10px;font-size:16px}.empty-cart p{color:#93a0a9;font-size:12px;line-height:1.7}.empty-cart>span{color:#97a5ae;align-items:center;gap:7px;margin-top:20px;font-size:10px;display:flex}.cart-foot{color:#91a0aa;background:#fcfdfd;border-top:1px solid #edf0f2;justify-content:space-between;padding:15px 20px;font-size:9px;display:flex}.quick-products{margin-top:8px}.quick-products .panel-title{padding:18px 0 13px}.quick-products h3{color:#596f7d;font-size:12px}.quick-products .panel-title>span{color:#99a6af;font-size:9px}.quick-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.quick-grid button{text-align:left;border:1px solid var(--border);background:#fff;border-radius:9px;grid-template-rows:auto auto;grid-template-columns:30px 1fr 12px;gap:5px 7px;min-width:0;padding:12px 10px;display:grid}.quick-grid button:hover{background:#f6faf8;border-color:#8ccab3}.quick-grid strong{white-space:nowrap;text-overflow:ellipsis;color:#566d79;font-size:10px;overflow:hidden}.quick-grid small{color:#84989f;grid-column:2;font-size:10px}.quick-grid button>svg{color:#87a399;grid-area:1/3/3}.product-symbol{color:#80a78e;background:#edf5f0;border-radius:7px;grid-row:1/3;place-items:center;width:30px;height:35px;display:grid}.tone1{color:#b99d6d;background:#f8f3e9}.tone2{color:#899fb4;background:#edf2f8}.empty-catalog{text-align:center;border:1px dashed #cbd8d3;border-radius:10px;padding:20px}.empty-catalog p{margin-bottom:10px}.summary{border:1px solid var(--border);background:#fff;border-radius:12px;padding:22px;position:sticky;top:20px}.summary-top{color:#8fa1ad;justify-content:space-between;align-items:center;display:flex}.summary-top>span{letter-spacing:1.2px;font-size:9px;font-weight:600}.sale-number{border-bottom:1px solid #e9eef0;justify-content:space-between;align-items:center;margin-top:24px;padding-bottom:23px;display:flex}.sale-number>span{font-size:13px;font-weight:600}.sale-number small{color:#82929e;font-size:10px}.summary-lines{padding:22px 0 12px}.summary-lines>div{color:#83939e;justify-content:space-between;margin-bottom:17px;font-size:11px;display:flex}.summary-lines b{color:#344e5b;font-weight:500}.total{background:#f0f7f3;border:1px solid #e1eee6;border-radius:10px;margin-bottom:23px;padding:23px 16px 21px}.total>span{letter-spacing:1px;color:#6a8d7e;font-size:9px;font-weight:600}.total strong{color:#155d45;letter-spacing:-1.7px;overflow-wrap:anywhere;margin:10px 0;font-size:42px;font-weight:700;display:block}.total small{color:#99aea3;font-size:9px}.pay-button{background:var(--green);color:#fff;text-align:left;border-radius:8px;justify-content:space-between;width:100%;padding:15px 13px;box-shadow:0 4px 10px #087b661b}.pay-button:hover{background:#066552}.pay-button span{font-size:12px;font-weight:600}.pay-button small{color:#a2d4c6;margin-top:4px;font-size:9px;font-weight:400;display:block}.pay-button kbd{color:#b4e2d5;box-shadow:none;background:#ffffff0b;border-color:#ffffff2a;font-size:9px}.open-summary{color:#a17531;background:0 0;width:100%;margin-top:12px;font-size:10px}.summary-note{color:#93a69d;align-items:start;gap:8px;margin:24px 2px;display:flex}.summary-note svg{flex-shrink:0}.summary-note p{color:#96a5ab;font-size:9px;line-height:1.7}.summary-note strong{font-weight:500}.keys{border-top:1px solid #edf0f2;flex-wrap:wrap;gap:9px;padding-top:18px;display:flex}.keys span{color:#9ba7b1;align-items:center;gap:4px;font-size:8px;display:flex}.keys kbd{min-width:18px;padding:3px;font-size:8px}.primary,.secondary{border-radius:7px;padding:12px 16px;font-size:12px;font-weight:600}.primary{background:var(--green);color:#fff}.primary:hover{background:#066552}.secondary{color:#537367;background:#fff;border:1px solid #d8e5df}.secondary:hover{background:#f1f7f4}.full{width:100%;margin-top:12px}.panel{border:1px solid var(--border);background:#fff;border-radius:12px;padding:23px;overflow:hidden}.panel>.panel-title{padding:0 0 22px}.panel table{margin-top:8px}.blank{text-align:center;padding:35px}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.badge{color:#478166;white-space:nowrap;background:#ecf7f0;border-radius:6px;padding:5px 8px;font-size:10px;display:inline-block}.badge.amber{color:#9e773c;background:#fff4df}.badge.muted{color:#8a9ba7;background:#f1f3f6}.register-grid{grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:22px;display:grid}.register{text-align:left;color:#6b8793;background:#fff;border:1px solid #e1e8eb;border-radius:10px;grid-template-columns:30px 1fr auto;gap:10px;padding:20px;display:grid}.register strong{color:#3e5864;font-size:14px}.register small{color:#8fa0a9;grid-column:2/4;font-size:10px}.register.current{background:#f4faf6;border:2px solid #44a78c;padding:19px}.history-total{color:#246b51;font-size:24px}.setting-row{color:#81a492;border-bottom:1px solid #edf0f2;align-items:center;gap:17px;padding:26px 0;display:flex}.setting-row>div{flex:1}.setting-row h3{color:#3b5361;margin-bottom:5px}.setting-row p{font-size:12px}.info-note{color:#977745;background:#faf6ec;border:1px solid #eee4d0;border-radius:7px;align-items:start;gap:8px;margin:16px 0;padding:13px;font-size:11px;line-height:1.7;display:flex}.info-note>svg{flex-shrink:0;margin-top:2px}.section-subtitle{margin-top:28px;margin-bottom:7px}.profile-list>div{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;font-size:12px;display:flex}footer{color:#a1aeb6;justify-content:space-between;margin-top:10px;padding-top:25px;font-size:9px;display:flex}footer b{letter-spacing:1px;color:#adb8be;margin-left:5px;font-size:7px}.alert{border-radius:8px;align-items:center;gap:10px;margin:0 0 15px;padding:13px 15px;font-size:12px;line-height:1.5;display:flex}.alert.error{color:#ad524a;background:#fff0ee;border:1px solid #f0d4cf}.alert.success{color:#32734d;background:#e8f6ed;border:1px solid #cfe7d5}.alert span{flex:1}.alert button{color:inherit;background:0 0;margin-left:auto;font-size:20px}.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:40;background:#0b202e85;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.modal{background:#fff;border:1px solid #e7ecef;border-radius:16px;width:min(480px,100%);max-height:calc(100vh - 50px);padding:26px;overflow:auto;box-shadow:0 25px 80px #10263240}.modal.wide{width:min(630px,100%)}.modal-head{justify-content:space-between;align-items:center;margin-bottom:23px;display:flex}.modal-head h2{font-size:24px}.modal-head .eyebrow{font-size:8px}.modal form{flex-direction:column;gap:15px;display:flex}label{color:#607783;font-size:12px}label input,label select,label textarea{color:#263e4c;background:#fcfdfd;border:1px solid #dce5e9;border-radius:7px;width:100%;margin-top:7px;padding:12px;font-size:13px;display:block}.form-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal textarea{resize:vertical;font:12px/1.6 Consolas,monospace}.modal form p{font-size:11px}.payment-value{background:#f1f7f3;border:1px solid #e2eee7;border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:22px;display:flex}.payment-value>span{letter-spacing:1.6px;color:#86a291;font-size:9px}.payment-value strong{letter-spacing:-1.5px;color:#176246;font-size:43px}.payment-value small{color:#8eaa9c;font-size:10px}.payment-options{grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0;display:grid}.payment-options button{color:#859ba6;background:#fff;border:1px solid #e2e8ec;border-radius:9px;flex-direction:column;gap:8px;padding:15px 10px;display:flex}.payment-options button span{font-size:12px}.payment-options .chosen{color:#1c7859;background:#f1f9f4;border:2px solid #238d6f;padding:14px 9px}.payment-options kbd{padding:2px 5px;font-size:9px}.cash-inputs{grid-template-columns:1fr 1fr;gap:18px;display:grid}.cash-inputs input{padding:12px 14px;font-size:24px;font-weight:600}.change{background:#f8fafb;border-radius:8px;align-self:end;padding:13px 18px}.change span{letter-spacing:1px;color:#8b9faa;font-size:8px;display:block}.change strong{color:#416b59;margin-top:8px;font-size:24px;display:block}.confirm-check{align-items:center;gap:10px;margin:20px 0;line-height:1.6;display:flex}.confirm-check input{width:18px;height:18px;accent-color:var(--green);flex-shrink:0;margin:0}.finish{width:100%;padding:17px 10px;font-size:13px}.modal-foot{color:#9aacb4;justify-content:space-between;margin-top:18px;font-size:9px;display:flex}.modal-foot kbd{padding:3px;font-size:8px}.shortcut-list>div{color:#738995;border-bottom:1px solid #edf1f2;align-items:center;gap:20px;padding:12px 0;font-size:12px;display:flex}.shortcut-list kbd{min-width:92px}.receipt-print{color:#333;font:12px/1.6 Consolas,monospace}.receipt-print h2{margin-bottom:9px;font-size:18px}.receipt-print>strong{font-size:12px}.receipt-print p{color:#555;margin:12px 0}.receipt-print small{font-size:10px}.receipt-print hr{border:0;border-top:1px dashed #bbb;margin:14px 0}.receipt-line{justify-content:space-between;gap:16px;margin:10px 0;display:flex}.login{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.login-art{color:#dcece4;background:radial-gradient(at 100% 100%,#255442,#102b39 70%);flex-direction:column;justify-content:space-between;padding:70px;display:flex}.login-art .brand{padding:0}.login-art h1{letter-spacing:-2.6px;color:#fff;margin:22px 0;font-size:60px;font-weight:500;line-height:1.1}.login-art .eyebrow{color:#7ea998}.login-art p{color:#a1bbbc;font-size:16px;line-height:1.8}.login-art>small{color:#9cb8ae;align-items:center;gap:9px;font-size:11px;display:flex}.login-form{width:100%;max-width:380px;margin:auto;padding:25px}.login-form h2{margin:12px 0;font-size:32px}.login-form p{margin-bottom:28px;font-size:12px}.login-form form{flex-direction:column;gap:18px;display:flex}.login-form .primary{justify-content:space-between;margin-top:10px}.login-form>small{color:#a6b2bb;margin-top:30px;font-size:9px;display:block}@media (width>=1500px){.shell>main{padding:32px 40px}.pos{grid-template-columns:minmax(530px,1fr) 350px}.total strong{font-size:49px}.cart-table td{height:84px}.empty-cart{height:335px}}@media (width<=1200px){.sidebar{width:184px;padding:25px 12px}.shell>main{width:calc(100% - 184px);margin-left:184px;padding:23px 20px}.brand strong{font-size:19px}.workspace span{max-width:110px}.pos{grid-template-columns:minmax(410px,1fr) 270px;gap:14px}.summary{padding:18px}.total{padding:22px 12px}.total strong{font-size:37px}.cart-table td,.cart-table th{padding-left:8px;padding-right:8px}.connection{display:none}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.sidebar{align-items:center;width:74px;padding:25px 8px}.brand strong,.workspace,.nav-caption,nav button span,nav button b,.user>div,.user .icon-button,.shortcut-guide span{display:none}.brand{padding:0}.sidebar nav{width:100%;margin-top:40px}nav button{justify-content:center;padding:15px}.sidebar-bottom{width:100%}.shortcut-guide{width:100%;padding:12px 0}.user{justify-content:center;padding:18px 0}.shell>main{width:calc(100% - 74px);margin-left:74px}.pos{grid-template-columns:minmax(380px,1fr) 250px}.summary{padding:16px}.total strong{font-size:33px}.item-name{gap:8px}.item-index{display:none}.cart-table td:first-child,.cart-table th:first-child{padding-left:12px}}@media (width<=790px){.pos{grid-template-columns:1fr}.summary{position:static}.summary-lines{display:none}.total strong{font-size:42px}.header-actions{gap:4px}header h1{font-size:22px}.page-line p{max-width:58%;font-size:11px}.summary-note{margin:17px 0}.register-grid{grid-template-columns:repeat(2,1fr)}.register{grid-template-columns:20px 1fr;padding:14px}.register.current{padding:13px}.register .badge,.register small{grid-column:2}.setting-row{flex-wrap:wrap}.login{grid-template-columns:1fr}.login-art{display:none}.login-form{padding:30px}.shell>main{padding:20px 14px}.panel{padding:17px}}@media print{body>*{visibility:hidden}.receipt-print,.receipt-print *{visibility:visible}.receipt-print{width:75mm;padding:3mm;position:fixed;top:0;left:0}.overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.modal{box-shadow:none;border:0;overflow:visible}.receipt-print p{font-size:10px}@page{margin:5mm}}.demo-banner{color:#513b00;background:#fff3cd;border:1px solid #e5c264;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.demo-banner strong,.demo-banner span{display:block}.demo-banner span{margin-top:4px;font-size:13px}@media (width<=700px){.demo-banner{flex-direction:column;align-items:stretch}}
