@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Thai:wght@400;500;600;700&display=swap";
:root{--ink:#17212b;--muted:#6d7a86;--line:#dce4e8;--paper:#f6f8f7;--white:#fff;--teal:#0e6770;--teal-dark:#084d57;--mint:#dff1eb;--orange:#ef8554}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);margin:0;font-family:IBM Plex Sans Thai,sans-serif}.shell{min-height:100vh;display:flex}.sidebar{color:#dbecee;background:#103f49;flex-direction:column;width:256px;padding:28px 18px 20px;display:flex}.brand{color:#fff;align-items:center;gap:11px;padding:0 10px 42px;display:flex}.brand-mark{color:#9ce0d1;border:2px solid #8ad2c5;border-radius:11px 11px 11px 3px;place-items:center;width:35px;height:35px;font:700 21px IBM Plex Sans Thai;display:grid}.brand strong{letter-spacing:1.7px;font:700 17px IBM Plex Sans Thai;display:block}.brand span{letter-spacing:2.4px;color:#86aeb3;margin-top:1px;font-size:9px;display:block}.eyebrow{letter-spacing:1.4px;color:#8a989d;font:700 10px IBM Plex Sans Thai}.workspace{border-top:1px solid #34616a;border-bottom:1px solid #34616a;margin-bottom:20px;padding:18px 10px 20px}.workspace .eyebrow{color:#80aeb3}.store-switch{color:#fff;background:0 0;border:0;align-items:center;gap:15px;padding:8px 0 0;font:600 14px inherit;display:flex}nav{gap:5px;display:grid}.nav-item{color:#a9c5c8;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;padding:12px;font:500 14px inherit;display:flex}.nav-item.active{color:#104d57;background:#e0f2ec;font-weight:700}.nav-item i{color:#fff;background:#ef8554;border-radius:20px;margin-left:auto;padding:2px 7px;font-size:11px;font-style:normal}.sidebar-bottom{gap:6px;margin-top:auto;display:grid}.dot{background:#ee8b56;border-radius:50%;width:7px;height:7px;margin-left:auto}.profile{border-top:1px solid #34616a;align-items:center;gap:10px;margin-top:14px;padding:18px 8px 0;display:flex}.avatar,.mini-avatar{color:#fff;background:#ef8554;border-radius:50%;place-items:center;font-weight:700;display:grid}.avatar{width:34px;height:34px}.profile strong{color:#fff;font-size:12px;display:block}.profile span{color:#8bb0b4;margin-top:2px;font-size:10px;display:block}.profile svg{margin-left:auto}.content{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:116px;padding:25px 42px;display:flex}.breadcrumb{color:#87949a;font-size:12px}.breadcrumb b{color:#c7d0d2;padding:0 10px}.topbar h1{letter-spacing:-.6px;margin:8px 0 0;font-size:25px}.top-actions{align-items:center;gap:24px;display:flex}.sync{color:#587277;align-items:center;gap:7px;font-size:12px;display:flex}.sync small{color:#9ca9ac}.pulse{background:#4eb694;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #e3f5ed}.icon-button{color:#658086;background:0 0;border:0;position:relative}.icon-button em{background:#ef8554;border-radius:50%;width:6px;height:6px;position:absolute;top:0;right:-1px}.mini-avatar{width:31px;height:31px}.sales-layout{grid-template-columns:minmax(520px,1fr) 430px;gap:28px;padding:34px 42px;display:grid}.section-head,.cart-head{justify-content:space-between;align-items:flex-end;display:flex}.section-head h2,.cart-head h2{margin:5px 0 0;font-size:23px}.outline{color:#21616a;background:#fff;border:1px solid #bfd2d4;border-radius:8px;align-items:center;gap:7px;padding:9px 11px;font:600 12px inherit;display:flex}.toggle{background:#a9d8cb;border-radius:20px;width:32px;height:18px;margin-left:3px;padding:3px}.toggle i{background:#fff;border-radius:50%;width:12px;height:12px;margin-left:14px;display:block}.searchbar{border:1px solid var(--line);color:#8ea0a4;background:#fff;border-radius:9px;align-items:center;gap:12px;height:49px;margin:24px 0 17px;padding:0 15px;display:flex}.searchbar input{color:var(--ink);border:0;outline:0;flex:1;font:14px inherit}kbd{border:1px solid var(--line);color:#9da9ac;border-radius:5px;padding:3px 6px;font-size:10px}.category-row{gap:7px;margin-bottom:20px;display:flex;overflow:auto}.category{color:#78868b;white-space:nowrap;background:0 0;border:0;border-radius:7px;padding:7px 12px;font:500 12px inherit}.category.selected{color:#15555e;background:#dcefe9;font-weight:700}.category b{margin-left:5px;font-size:10px}.product-grid{grid-template-columns:repeat(4,minmax(130px,1fr));gap:13px;display:grid}.product-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e0e7e8;border-radius:10px;padding:8px;transition:all .18s;box-shadow:0 2px 5px #103f4908}.product-card:hover{border-color:#91cfc1;transform:translateY(-2px);box-shadow:0 7px 18px #103f4915}.product-image{color:#fff8;letter-spacing:-1px;border-radius:7px;justify-content:center;align-items:center;height:145px;font:700 24px IBM Plex Sans Thai;display:flex;position:relative;overflow:hidden}.product-image:after{content:"";background:#ffffff1c;border-radius:40% 40% 8px 8px;width:75px;height:125px;position:absolute;top:22px;transform:rotate(-12deg)}.product-image.navy{background:linear-gradient(145deg,#193640,#55767a)}.product-image.sky{color:#fff;background:linear-gradient(145deg,#c5dfe3,#f3f4ef)}.product-image.sand{background:linear-gradient(145deg,#bca78e,#e1cdb3)}.product-image.rose{background:linear-gradient(145deg,#a9b7b1,#e2e7dd)}.stock-pill{z-index:2;color:#47716f;background:#ffffffd9;border-radius:5px;padding:3px 6px;font:600 9px inherit;position:absolute;top:8px;right:7px}.product-info{padding:10px 3px 3px}.product-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.product-info span{color:#8b989b;margin:4px 0 10px;font-size:10px;display:block}.product-info div{justify-content:space-between;align-items:center;display:flex}.product-info b{font-size:14px}.product-info small{color:#a2adaf;font-size:9px}.scanner-note{color:#5a817f;background:#eff9f5;border:1px dashed #a8d6cb;border-radius:8px;align-items:center;gap:9px;margin-top:22px;padding:12px 14px;font-size:11px;display:flex}.scanner-note svg{color:#2c9d81}.scanner-note strong{color:#187461;margin-right:4px}.cart-panel{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:650px;padding:23px 22px;box-shadow:0 5px 20px #103f490b}.cart-head h2 span{color:#9aa7aa;margin-left:6px;font:500 11px IBM Plex Sans Thai}.more{color:#6c898b;background:#f3f7f6;border:0;border-radius:7px;padding:4px 9px}.customer-card{background:#f1f7f5;border:1px solid #dcece6;border-radius:8px;align-items:center;gap:10px;margin:23px 0 20px;padding:12px;display:flex}.customer-avatar{color:#287466;background:#d0e9df;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.customer-card div:nth-child(2){flex:1}.customer-card span,.customer-card strong{display:block}.customer-card span{color:#77918f;font-size:10px}.customer-card strong{color:#257168;margin-top:3px;font-size:12px}.customer-card button{color:#398c7d;background:0 0;border:0}.line-head{border-bottom:1px solid var(--line);color:#4e666a;justify-content:space-between;padding-bottom:10px;font-size:12px;display:flex}.line-head button{color:#c87558;background:0 0;border:0;font:500 11px inherit}.cart-line{border-bottom:1px solid #edf1f1;gap:10px;padding:14px 0;display:flex}.line-thumb{color:#fffa;border-radius:6px;flex:none;place-items:center;width:47px;height:47px;font:700 9px IBM Plex Sans Thai;display:grid}.line-thumb.navy{background:#315761}.line-thumb.sky{background:#c7dfe0}.line-thumb.sand{background:#c7ad91}.line-thumb.rose{background:#b8c6be}.line-copy{flex:1;min-width:0}.line-copy strong{white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;display:block;overflow:hidden}.line-copy span{color:var(--ink);margin:3px 0 8px;font-size:12px;font-weight:700;display:block}.qty{align-items:center;gap:9px;display:flex}.qty button{color:#39786f;background:#fff;border:1px solid #d9e4e3;border-radius:4px;width:19px;height:19px;line-height:15px}.qty b{font-size:11px}.line-price{text-align:right;white-space:nowrap;font-size:12px;font-weight:700}.line-price button{color:#bb8c81;background:0 0;border:0;margin:7px 0 0 auto;font-size:14px;display:block}.totals{gap:12px;margin-top:21px;font-size:12px;display:grid}.totals>div{justify-content:space-between;display:flex}.totals span{color:#809093}.discount{color:#3e927c;background:#eef7f3;border:0;border-radius:4px;padding:4px 8px;font:500 10px inherit}.grand{border-top:1px solid var(--line);align-items:center;margin-top:4px;padding-top:15px}.grand span{color:#385e60;font-weight:600}.grand strong{color:#124f58;font-size:24px}.pay-button{color:#fff;cursor:pointer;background:#0e6770;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;margin-top:22px;padding:14px 15px;font:600 14px inherit;display:flex}.pay-button b{margin-left:auto;font:700 17px IBM Plex Sans Thai}.print-row{gap:9px;margin-top:10px;display:flex}.print-row button{border:1px solid var(--line);color:#557276;background:#fff;border-radius:7px;flex:1;justify-content:center;align-items:center;gap:5px;padding:9px 6px;font:500 11px inherit;display:flex}.empty-state{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;max-width:500px;margin:100px auto;padding:60px}.empty-icon{color:#5cb49a}.empty-state h2{margin:18px 0 5px}.empty-state p{color:var(--muted);font-size:13px}.primary{background:var(--teal);color:#fff;border:0;border-radius:7px;margin-top:18px;padding:11px 20px;font:600 13px inherit}@media (max-width:1100px){.sidebar{width:210px}.sales-layout{grid-template-columns:minmax(420px,1fr) 380px;padding:25px 22px}.product-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:800px){.sidebar{width:70px;padding:20px 10px}.brand{padding:0 7px 35px}.brand>div:last-child,.workspace,.nav-item:not(.active):after,.nav-item{font-size:0}.nav-item svg{font-size:18px}.nav-item{justify-content:center;padding:12px 5px}.nav-item.active{font-size:0}.nav-item.active svg{font-size:18px}.profile div:not(.avatar),.profile svg{display:none}.profile{justify-content:center;padding:15px 0 0}.content .topbar{padding:20px}.sales-layout{display:block}.cart-panel{margin-top:25px}.top-actions .sync{display:none}}.product-card{isolation:isolate;animation:.42s cubic-bezier(.22,1,.36,1) both surface-in;animation-delay:var(--delay,0s);position:relative}.spotlight-card:before{content:"";border-radius:inherit;background:radial-gradient(220px circle at var(--mx,50%) var(--my,50%),#64bea52e,transparent 62%);opacity:0;pointer-events:none;z-index:-1;transition:opacity .2s;position:absolute;top:0;bottom:0;left:0;right:0}.spotlight-card:hover:before{opacity:1}.product-card:active{transform:scale(.985)}button,input{font-family:inherit}.nav-item,.outline,.category,.product-card,.icon-button,.customer-card button,.qty button,.line-price button,.print-row button,.pay-button,.primary{transition:color .18s,background-color .18s,border-color .18s,box-shadow .18s,transform .18s}.nav-item:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.outline:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.category:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.product-card:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.icon-button:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.qty button:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.pay-button:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.primary:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.print-row button:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.searchbar input:focus-visible{outline-offset:3px;outline:3px solid #f0a26f}.pay-button:hover,.primary:hover{background:var(--teal-dark);box-shadow:0 8px 18px #0e67702e}.pay-button:active,.primary:active{transform:translateY(1px)}@keyframes surface-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.dashboard,.settings-page{padding:34px 42px}.dashboard-intro,.settings-intro{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;margin-bottom:26px;display:flex}.dashboard-intro h2,.settings-intro h2{margin:6px 0;font-size:26px}.dashboard-intro p,.settings-intro p{color:var(--muted);margin:0;font-size:13px}.primary{cursor:pointer;align-items:center;gap:8px;display:flex}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.metric,.panel{border:1px solid var(--line);background:#fff;border-radius:12px}.metric{padding:18px 19px}.metric>span{color:#5f777b;font-size:12px}.metric strong{margin:8px 0;font:700 26px IBM Plex Sans Thai;display:block}.metric small{color:#548a78;align-items:center;gap:5px;font-size:10px;display:flex}.tone-1 small{color:#5689a2}.tone-2 small{color:#d27a57}.tone-3 small{color:#bd6a76}.dashboard-grid,.role-grid{grid-template-columns:1.5fr 1fr;gap:16px;margin-top:18px;display:grid}.panel{padding:20px}.panel-heading{justify-content:space-between;align-items:flex-start;display:flex}.panel h3{margin:0;font-size:16px}.panel p{color:var(--muted);margin:5px 0 0;font-size:11px}.select-button,.tab,.table-action{border:1px solid var(--line);color:#557276;background:#fff;border-radius:6px;padding:7px 10px;font:500 11px inherit}.chart{height:200px;margin-top:20px}.chart-bars{border-bottom:1px solid var(--line);align-items:end;gap:18px;height:165px;padding:0 10px;display:flex}.chart-bars span{background:#b8ded2;border-radius:5px 5px 0 0;flex:1;max-width:38px}.chart-bars span.today{background:var(--teal)}.chart-labels{color:#93a2a4;justify-content:space-around;padding-top:8px;font-size:10px;display:flex}.task{text-align:left;width:100%;color:var(--ink);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #edf1f1;align-items:center;gap:10px;padding:17px 0;display:flex}.task:last-child{border-bottom:0}.task-icon{color:#358876;background:#e8f5f0;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.task span:nth-child(2){flex:1}.task strong,.task small{display:block}.task strong{font-size:12px}.task small{color:#87999b;margin-top:3px;font-size:10px}.task>b{color:#9ab0af}.activity-panel{margin-top:18px}.text-button{color:var(--teal);background:0 0;border:0;font:600 11px inherit}.activity{color:#42967e;border-top:1px solid #edf1f1;grid-template-columns:25px 1fr auto auto;align-items:center;gap:10px;padding:14px 0;display:grid}.activity strong,.activity b{color:var(--ink);font-size:12px}.activity small{color:#8b9a9c;font-size:10px}.settings-tabs{border-bottom:1px solid var(--line);gap:24px;margin-bottom:18px;display:flex}.tab{border:0;border-bottom:2px solid #0000;border-radius:0;padding:10px 2px}.tab.active{color:var(--teal);border-color:var(--teal);font-weight:700}.staff-row{border-top:1px solid var(--line);grid-template-columns:1fr 190px 130px 100px;align-items:center;gap:16px;margin-top:18px;padding-top:18px;display:grid}.staff-user{align-items:center;gap:10px;display:flex}.staff-user strong,.staff-user small{display:block}.staff-user strong{font-size:13px}.staff-user small{color:var(--muted);margin-top:3px;font-size:10px}.staff-row select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;padding:8px;font:500 12px inherit}.status{color:#388872;font-size:11px}.status i{background:#4eb694;border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.table-action{color:var(--teal);background:#edf7f3;border:0}.permission{border-bottom:1px solid #edf1f1;align-items:center;gap:10px;padding:14px 0;font-size:12px;display:flex}.permission input{accent-color:var(--teal);width:16px;height:16px}.role-help{background:#e8f5f0;border-color:#cce6dd}.role-help h3{color:#165a61}.role-help p{color:#517b7b;line-height:1.7}.empty-state{margin:100px auto}.mini-avatar{place-items:center;display:grid}.sales-ready{color:var(--teal);align-items:center;gap:16px;margin-top:22px;padding:34px;display:flex}.sales-ready h3{margin:0;font-size:17px}.sales-ready p{color:var(--muted);margin:5px 0 0;font-size:12px}.empty-cart{text-align:center;color:#90a2a3;place-items:center;gap:6px;min-height:130px;padding:22px;font-size:11px;display:grid}.empty-cart svg{color:#69b89f}.modal-backdrop{z-index:20;background:#103f4966;place-items:center;padding:20px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.edit-modal{background:#fff;border-radius:14px;width:min(460px,100%);padding:24px;box-shadow:0 24px 60px #103f4933}.modal-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modal-head h3{margin:0;font-size:18px}.modal-close{color:#557276;cursor:pointer;background:#eef5f3;border:0;border-radius:6px;width:36px;height:36px;font-size:20px}.edit-modal label{color:#597174;gap:6px;margin-top:13px;font-size:11px;display:grid}.edit-modal input,.edit-modal select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:10px;font:13px inherit}.modal-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.modal-actions .primary{margin:0}.stock-row{cursor:pointer;border-bottom:1px solid #eef2f3;grid-template-columns:92px 1fr 110px 92px 60px 100px 34px;align-items:center;gap:12px;padding:13px 4px;font-size:13px;display:grid}.stock-row:hover{background:#f8fbfa}.stock-head{letter-spacing:1.2px;color:#8a989d;cursor:default;text-transform:uppercase;font:700 10px IBM Plex Sans Thai}.stock-head:hover{background:0 0}.stock-row .right{text-align:right}.stock-row .muted,.variant-row .muted{color:#8b989b}.stock-row .negative,.variant-row .negative{color:#c9503a;font-weight:700}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.variant-box{background:#f8fbfa;border:1px solid #e6eeef;border-radius:9px;margin:0 0 12px;padding:6px 14px 14px}.variant-row{border-bottom:1px solid #edf3f3;grid-template-columns:80px 112px 88px 88px 84px 1fr 150px;align-items:center;gap:12px;padding:9px 0;font-size:12.5px;display:grid}.variant-row:last-of-type{border-bottom:0}.variant-head{letter-spacing:1.1px;color:#93a1a4;text-transform:uppercase;font:700 9px IBM Plex Sans Thai}.variant-row .right{text-align:right}.add-variant{margin-top:12px;font-size:12px}.hint{color:#3d6f6a;background:#eff9f5;border:1px dashed #a8d6cb;border-radius:8px;align-items:center;gap:7px;margin:4px 0 2px;padding:10px 12px;font-size:11.5px;display:flex}.qr-modal{width:min(330px,100%)}.qr-label{text-align:center;border:1px solid var(--line);border-radius:10px;padding:18px}.qr-label img{width:190px;height:190px}.qr-label strong{margin-top:8px;font-size:14px;display:block}.qr-label span{color:var(--ink);margin-top:6px;font-size:17px;font-weight:700;display:block}.qr-label b{margin-top:8px;font-size:17px;display:block}.qr-label small{color:#9aa6a9;margin-top:6px;display:block}.table-action{transition:background .12s,color .12s}.table-action:hover:not(:disabled){color:#15555e;background:#d7ede4}.receipt-head.tag-add{grid-template-columns:1fr auto;align-items:end;margin-bottom:14px}.receipt-head.tag-add button{white-space:nowrap}.receipt-head.consign-item-row{grid-template-columns:1fr 100px 120px auto;align-items:end;margin-top:10px}.receipt-head.consign-item-row button{white-space:nowrap}.category-tag{border-bottom:1px solid #edf3f3;justify-content:space-between;align-items:center;padding:7px 4px;font-size:12.5px;display:flex}.category-tag:last-of-type{border-bottom:0}.category-tag button{color:#8b989b;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px;display:flex}.category-tag button:hover{color:#c9503a;background:#f8ece9}@media print{body *{visibility:hidden}.print-area,.print-area *{visibility:visible}.print-area{border:0;width:100%;max-height:none;position:absolute;top:0;left:0;overflow:visible}.no-print{display:none!important}.qr-label{break-inside:avoid;page-break-inside:avoid}}.receipt-form{padding-bottom:8px}.receipt-head{grid-template-columns:170px 1fr 1fr;gap:14px;display:grid}.receipt-head label{color:#597174;gap:6px;font-size:11px;display:grid}.receipt-head input,.receipt-head select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:10px;font:13px inherit}.receipt-head select{-webkit-appearance:none;appearance:none;cursor:pointer;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236d7a86' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 11px center/12px no-repeat;padding-right:32px}.receipt-head select:hover{border-color:#bfd2d4}.receipt-line{border-bottom:1px solid #eef2f3;grid-template-columns:1fr 70px 80px 110px 110px 100px 40px;align-items:center;gap:10px;padding:8px 0;font-size:12.5px;display:grid}.receipt-line-head{letter-spacing:1.1px;color:#93a1a4;text-transform:uppercase;font:700 9px IBM Plex Sans Thai}.receipt-line .right{text-align:right}.receipt-line input.cell{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:6px;padding:7px 8px;font:12.5px inherit}.receipt-line input.cell.right{text-align:right}.receipt-total{color:#5a6f74;justify-content:space-between;align-items:center;padding:14px 0 4px;font-size:13px;display:flex}.receipt-total strong{color:var(--ink);font-size:19px}.choice-box{background:#f7fbfa;border:1px solid #d9e6e4;border-radius:9px;gap:6px;margin-bottom:16px;padding:12px 14px;display:grid}.choice{text-align:left;cursor:pointer;background:#fff;border:1px solid #e6eeef;border-radius:7px;grid-template-columns:1fr 90px 150px;align-items:center;gap:10px;padding:9px 11px;font:13px inherit;display:grid}.choice:hover{border-color:#91cfc1}.receipt-row{grid-template-columns:120px 110px 1fr 90px 120px 140px}.consign-row{grid-template-columns:140px 100px 1fr 90px 230px}.receipt-detail{grid-template-columns:1fr 110px 80px 110px 110px}.cancelled{color:#c9503a;font-size:12px;font-weight:700}.intro-actions{align-items:center;gap:10px;display:flex}.variant-actions{flex-wrap:wrap;gap:9px;margin-top:14px;display:flex}.variant-actions .outline{font-size:12px}.category-line{grid-template-columns:42px minmax(0,1fr) 66px 58px 42px;align-items:center;gap:8px;margin-top:9px;display:grid}.category-line input{border:1px solid var(--line);min-width:0;color:var(--ink);background:#fff;border-radius:7px;padding:9px 10px;font:13px inherit}.category-line .muted{color:#8b989b;font-size:11px}.sheet-modal{width:min(760px,100%)}.qr-sheet{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;max-height:56vh;padding:4px;display:grid;overflow:auto}.qr-sheet .qr-label{padding:10px}.qr-sheet .qr-label img{width:104px;height:104px}.qr-sheet .qr-label strong{font-size:11px}.qr-sheet .qr-label span{margin-top:4px;font-size:13px}.qr-sheet .qr-label b{margin-top:5px;font-size:13px}.qr-sheet .qr-label small{font-size:8px}.row-actions{justify-content:flex-end;gap:6px;display:flex}.row-actions .table-action{white-space:nowrap}button.customer-card{text-align:left;width:100%;font:inherit;cursor:pointer}.held-count{color:#fff;background:#ef8554;border-radius:20px;margin-left:6px;padding:1px 7px;font-size:10px}.product-panel{min-height:220px;max-height:420px;overflow:auto}.bill-summary{border-top:1px solid var(--line);color:#4e666a;margin-top:14px;padding-top:12px;font-size:12.5px}.bill-summary>div{justify-content:space-between;padding:4px 0;display:flex}.bill-summary .bill-total{border-top:1px dashed var(--line);color:var(--ink);margin-top:6px;padding-top:8px;font-size:15px}.discount-row{justify-content:space-between;align-items:center;gap:10px;padding:4px 0;display:flex}.discount-row input{text-align:right;border:1px solid var(--line);width:90px;color:var(--ink);border-radius:6px;padding:6px 8px;font:12.5px inherit}.method-row{gap:10px;margin:12px 0;display:flex}.method{border:1px solid var(--line);color:#557276;cursor:pointer;background:#fff;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:7px;padding:12px;font:600 13px inherit;display:flex}.method.selected{border-color:var(--teal);background:var(--mint);color:var(--teal-dark)}.change-line{color:#257168;margin:2px 0 10px;font-size:13px;font-weight:700}.receipt-modal{width:min(820px,100%)}.receipt-slip .receipt-head{text-align:center;display:block}.slip-modal{width:min(340px,100%)}.slip-modal .receipt-slip{font-size:11.5px;line-height:1.5}.slip-modal .receipt-head strong{font-size:13px;line-height:1.35}.slip-modal .receipt-head span{font-size:9px;line-height:1.4}.receipt-slip{border:1px solid var(--line);border-radius:10px;padding:18px;font-size:12px}.print-area .receipt-slip~.receipt-slip{display:none}.receipt-head{text-align:center;margin-bottom:10px}.receipt-head strong{font-size:16px;display:block}.receipt-head span{color:#8b989b;margin-top:2px;font-size:10px;display:block}.receipt-meta{border-bottom:1px dashed var(--line);color:#5a6f74;flex-direction:column;gap:2px;margin-bottom:10px;padding-bottom:10px;display:flex}.receipt-lines{border-bottom:1px dashed var(--line);flex-direction:column;gap:5px;margin-bottom:10px;padding-bottom:10px;display:flex}.receipt-line-print{justify-content:space-between;gap:8px;display:flex}.receipt-totals>div{justify-content:space-between;padding:2px 0;display:flex}.receipt-totals .grand{border-top:1px solid var(--line);margin-top:4px;padding-top:6px;font-size:15px;font-weight:700}.receipt-giftnote{color:#5a6f74;margin:2px 0 0;font-size:10px;font-style:italic}.bill-row{grid-template-columns:128px 62px 1fr 66px 96px 106px 86px}.bill-head{letter-spacing:1.2px;color:#8a989d;cursor:default;text-transform:uppercase;font:700 10px IBM Plex Sans Thai}.bill-head:hover{background:0 0}.bill-detail{grid-template-columns:1fr 70px 96px 106px}.bill-foot{border-top:1px dashed var(--line);color:#5a6f74;justify-content:space-between;align-items:center;margin-top:10px;padding-top:11px;font-size:12px;display:flex}.bill-foot strong{color:var(--ink);font-size:15px}.date-pick{color:#597174;gap:6px;font-size:11px;display:grid}.date-pick input{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:9px 10px;font:13px inherit}.date-pick input:disabled{color:#9aa6a9;background:#f2f5f5}.clear-search{color:#8ea0a4;cursor:pointer;background:0 0;border:0;align-items:center;display:flex}.finance-metrics{margin-bottom:20px}.wide-modal{width:min(560px,100%)}.edit-line{border-bottom:1px solid #eef2f3;grid-template-columns:1fr 80px 100px 40px;align-items:center;gap:10px;padding:9px 0;font-size:12.5px;display:grid}.edit-line input.cell{border:1px solid var(--line);width:100%;color:var(--ink);text-align:right;background:#fff;border-radius:6px;padding:7px 8px;font:12.5px inherit}.edit-line .right{text-align:right}.closeout-lines{border:1px solid var(--line);color:#5a6f74;border-radius:9px;margin-bottom:4px;padding:14px;font-size:12.5px}.closeout-lines>div{justify-content:space-between;padding:3px 0;display:flex}.closeout-lines .grand{border-top:1px dashed var(--line);color:var(--ink);margin-top:7px;padding-top:9px;font-size:15px;font-weight:700}.closed-note{margin-bottom:16px}.locked-note{align-self:center;font-size:12px}@media print{html[data-print=receipt80] .print-area{color:#000;width:72mm;padding:3mm 2mm 8mm;font-family:IBM Plex Sans Thai,sans-serif;font-size:11px;line-height:1.45}html[data-print=receipt80] .receipt-slip{border:0;border-radius:0;padding:0}html[data-print=receipt80] .receipt-head strong{font-size:16px}html[data-print=receipt80] .receipt-head span{color:#000;font-size:9px}html[data-print=receipt80] .receipt-meta{color:#000;gap:1px;font-size:10px}html[data-print=receipt80] .receipt-logo{filter:grayscale()contrast(1.7);width:17mm}html[data-print=receipt80] .receipt-meta-row{border-bottom:1px dashed #000}html[data-print=receipt80] .receipt-qr{width:20mm;height:20mm}html[data-print=receipt80] .receipt-lines{border-bottom:1px dashed #000;gap:3px}html[data-print=receipt80] .receipt-line-print{font-size:11px}html[data-print=receipt80] .receipt-totals .grand{border-top:1px solid #000;font-size:14px}html[data-print=receipt80] .receipt-foot{text-align:center;color:#000;border-top:1px dashed #000;margin-top:4mm;padding-top:2.5mm;font-size:8.5px;line-height:1.45;display:block}html[data-print=receipt80] .receipt-foot span{display:block}html[data-print=receipt80] .receipt-policy{font-size:11px;line-height:1.4}html[data-print=receipt80] .receipt-policy strong{margin-bottom:1mm;font-size:12.5px}html[data-print=receipt80] .receipt-shop{color:#000;margin-bottom:1mm;font-size:11px;font-weight:700}html[data-print=receipt80] .receipt-logo{margin-bottom:2mm}html[data-print=receipt80] .shell{min-height:0;display:block}html[data-print=receipt80] .content{min-height:0;padding:0;display:block;overflow:visible}html[data-print=receipt80] .sidebar,html[data-print=receipt80] .topbar,html[data-print=receipt80] .sales-layout>:not(.modal-backdrop){display:none!important}html[data-print=receipt80] .sales-layout{gap:0;padding:0;display:block}html[data-print=receipt80] .modal-backdrop{background:0 0;padding:0;display:block;position:static}html[data-print=receipt80] .edit-modal{max-height:none;box-shadow:none;border-radius:0;width:auto;padding:0;overflow:visible}html[data-print=receipt80] .print-area{position:static}html[data-print=receipt80] .print-area .receipt-slip~.receipt-slip{display:block}html[data-print=receipt80] .print-area .receipt-slip{break-after:page;page-break-after:always}html[data-print=receipt80] .print-area .receipt-slip:last-child{break-after:auto;page-break-after:auto}}.receipt-foot{display:none}.receipt-slip .receipt-foot{text-align:center;border-top:1px dashed var(--line);color:#7a8c8f;gap:2px;margin-top:12px;padding-top:9px;font-size:9.5px;line-height:1.5;display:grid}.receipt-shop{letter-spacing:.08em;text-transform:uppercase;color:var(--ink);margin-bottom:3px;font-weight:700;display:block}.receipt-logo{width:58px;height:auto;margin:0 auto 4px;display:block}.receipt-slip .receipt-meta-row{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;padding-bottom:10px;display:flex}.receipt-slip .receipt-meta{border-bottom:0;flex:1;min-width:0;margin-bottom:0;padding-bottom:0}.receipt-qr{flex:none;width:74px;height:74px}.receipt-policy{color:var(--ink);gap:3px;font-size:11.5px;line-height:1.4;display:grid}.receipt-policy strong{font-size:12.5px}.receipt-policy p{margin:0}.student-hit{grid-template-columns:1fr 110px 90px 100px}.grade-tag{color:#15555e;background:#dcefe9;border-radius:5px;margin-top:4px;padding:2px 7px;font-size:10px;font-style:normal;display:inline-block}.bill-date-move{align-items:center;gap:7px;display:inline-flex}.bill-date-move input[type=date]{width:140px;padding:6px 8px;font-size:12px}.bill-date-move input:not([type=date]){width:190px;padding:6px 8px;font-size:12px}.bill-date-warn{color:#c9503a;font-size:11.5px;font-style:normal;font-weight:600}.split-note{color:#a15a1f;background:#fdf3e9;border-radius:7px;margin:6px 0 0;padding:7px 9px;font-size:11px;line-height:1.5}.consign-tag{color:#a15a1f;vertical-align:middle;background:#fbe8d6;border-radius:5px;margin-left:8px;padding:2px 7px;font-size:9.5px;font-style:normal;font-weight:600;display:inline-block}.section-divider{border-top:1px solid var(--line);letter-spacing:1.3px;color:#8a989d;text-transform:uppercase;margin:18px 0 2px;padding-top:14px;font:700 10px IBM Plex Sans Thai}.section-tabs{gap:8px;padding:22px 42px 0;display:flex}.section-tab{border:1px solid var(--line);color:#66807f;cursor:pointer;background:#fff;border-radius:8px;padding:9px 18px;font:600 13px inherit;transition:all .18s}.section-tab:hover{border-color:#91cfc1}.section-tab.selected{background:var(--teal);border-color:var(--teal);color:#fff}.stock-section>.settings-page{padding-top:18px}.label-setup{padding:18px 20px}.label-options{grid-template-columns:1fr 190px 170px;align-items:end;gap:16px;display:grid}.label-options label{color:#597174;gap:6px;font-size:11px;display:grid}.label-options select,.label-options input[type=text],.label-options input:not([type=checkbox]){border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:10px;font:13px inherit}.label-options .permission{color:#4e666a;align-items:center;gap:8px;padding-bottom:10px;font-size:12.5px;display:flex}.label-product{border-bottom:1px solid #eef2f3;padding:14px 4px}.label-product:last-child{border-bottom:0}.label-product-head{justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.label-quick{align-items:center;gap:7px;display:flex}.label-sizes{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px;margin-top:11px;display:grid}.label-size{background:#f8fbfa;border:1px solid #e6eeef;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;display:flex}.label-size input.cell{text-align:right;border:1px solid var(--line);width:56px;color:var(--ink);background:#fff;border-radius:6px;padding:6px 7px;font:12.5px inherit}.label-preview{border:1px solid var(--line);background:#fafcfb;border-radius:9px;max-height:40vh;padding:10px;overflow:auto}.label-sheet{grid-template-columns:repeat(var(--label-cols),var(--label-w));column-gap:var(--gap-x);row-gap:var(--gap-y);padding-top:var(--sheet-top);padding-left:var(--sheet-left);display:grid}.label-sheet.is-preview{transform-origin:0 0;transform:scale(.8)}.label-cell{width:var(--label-w);height:var(--label-h);box-sizing:border-box;align-items:center;gap:1.5mm;padding:1.5mm;display:flex;overflow:hidden}.label-cell.is-blank{visibility:hidden}.label-cell img{width:var(--label-qr);height:var(--label-qr);flex:none}.label-cell.layout-qr-only{justify-content:center}.label-cell.layout-stacked{flex-direction:column;justify-content:center;gap:.8mm}.label-text{min-width:0;line-height:1.25}.label-text strong{white-space:nowrap;text-overflow:ellipsis;font-size:7.5pt;display:block;overflow:hidden}.label-text span{color:#111;font-size:9pt;font-weight:700;display:block}.label-text b{margin-top:.5mm;font-size:9pt;display:block}.label-text small{color:#555;font-size:5.5pt;display:block}.label-sheet.is-preview .label-cell{outline:1px dashed #cfdcdb}@media print{html[data-print=label] .shell{display:none!important}html[data-print=label] .label-print{width:auto;position:static}html[data-print=label] .label-sheet{break-after:page;page-break-after:always;break-inside:avoid}html[data-print=label] .label-sheet:last-child{break-after:auto;page-break-after:auto}html[data-print=label] .label-cell{break-inside:avoid;page-break-inside:avoid}html[data-print=label] .label-text strong,html[data-print=label] .label-text span,html[data-print=label] .label-text b,html[data-print=label] .label-text small{color:#000}}.pickup-row{gap:10px;margin-bottom:16px;display:grid}.pickup-row label{color:#6d7a86;gap:5px;font-size:11px;display:grid}.pickup-row input,.pickup-row select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:9px 10px;font:13px inherit}.slip-qr{text-align:center;margin:12px 0 4px}.slip-qr img{width:34mm;height:34mm}.slip-qr small{margin-top:4px;font-size:10px;display:block}.table-action.danger{color:#b4553c;border-color:#e6c3b8}.restock-row{border-bottom:1px solid #eef2f3;grid-template-columns:86px 1fr 60px 78px 72px 78px 96px 150px;align-items:center;gap:10px;padding:11px 4px;font-size:13px;display:grid}.restock-row .right{text-align:right}.restock-row .muted{color:#8b989b}.restock-row .cancelled{color:#b4553c}.restock-head{letter-spacing:1.2px;color:#8a989d;text-transform:uppercase;font:700 10px IBM Plex Sans Thai}.restock-total{border-bottom:0;border-top:2px solid var(--line);font-weight:700}.restock-refs{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.restock-print-head{display:none}@media print{.restock-print-head{justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:12px;display:flex}}.restock-row .ready{color:#2c9d81;font-size:11px;font-weight:600}.alert-settings{flex-wrap:wrap;align-items:flex-end;gap:22px;display:flex}.alert-setting{gap:5px;min-width:250px;display:grid}.alert-setting label{color:#4e666a;gap:6px;font-size:12px;font-weight:600;display:grid}.alert-setting input{border:1px solid var(--line);border-radius:7px;width:120px;padding:10px 11px;font:15px inherit}.alert-setting .hint{margin:0;font-size:10px}.alert-settings .primary{margin-top:0}.alert-head{margin-bottom:6px}.alert-head h3{margin:4px 0 0;font-size:17px}.alert-count{color:#fff;background:#ef8554;border-radius:20px;padding:2px 10px;font:700 12px inherit}.alert-row{border-bottom:1px solid #eef2f3;grid-template-columns:92px 1fr 56px 96px 84px 96px 88px;align-items:center;gap:10px;padding:11px 4px;font-size:13px;display:grid}.alert-row.pickup-row{grid-template-columns:112px 1fr 110px 190px 130px 110px 110px}.alert-row .right{text-align:right}.alert-row .muted{color:#8b989b}.alert-row .cancelled{color:#b4553c}.alert-row .ready{color:#2c9d81;font-size:11px;font-weight:600}.alert-row-head{letter-spacing:1.2px;color:#8a989d;text-transform:uppercase;font:700 10px IBM Plex Sans Thai}.category-grid{grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;display:grid}.category-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e0e7e8;border-radius:10px;padding:9px;transition:all .18s;box-shadow:0 2px 5px #103f4908}.category-card:hover{border-color:#91cfc1;transform:translateY(-2px);box-shadow:0 7px 18px #103f4915}.category-mark{color:#fffc;letter-spacing:-.5px;border-radius:8px;place-items:center;width:100%;height:128px;font:700 34px IBM Plex Sans Thai;display:grid}.category-mark.navy{background:linear-gradient(145deg,#193640,#55767a)}.category-mark.sky{color:#123840;background:linear-gradient(145deg,#7fa3ab,#c5dfe3)}.category-mark.sand{color:#4a3a24;background:linear-gradient(145deg,#bca78e,#e1cdb3)}.category-mark.rose{color:#2a352f;background:linear-gradient(145deg,#8fa39b,#c9d3c8)}.category-mark.consign{color:#fff;background:linear-gradient(145deg,#a15a1f,#e6a15f)}.category-info{padding:11px 4px 4px}.category-info strong{white-space:nowrap;text-overflow:ellipsis;font-size:15px;display:block;overflow:hidden}.category-info span{color:#8b989b;margin-top:4px;font-size:11px;display:block}.category-search{grid-column:1/-1;margin:6px 0 0}.catalog-crumb{align-items:center;gap:12px;margin-bottom:14px;display:flex}.catalog-crumb .back-button{color:#21616a;cursor:pointer;background:#fff;border:1px solid #bfd2d4;border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font:600 12px inherit;display:flex}.catalog-crumb .back-button:hover{background:#f3f7f6}.catalog-crumb span{color:#124f58;font:700 15px IBM Plex Sans Thai}.category-thumb{cursor:pointer;border:1px solid var(--line);background:#eef2f3;border-radius:8px;flex:none;justify-content:center;align-items:center;width:42px;height:42px;display:flex;position:relative;overflow:hidden}.category-thumb img{object-fit:cover;width:100%;height:100%}.category-thumb-fallback{color:#8b989b;font:700 12px IBM Plex Sans Thai}.category-thumb-loading{color:#8b989b;font-size:10px}.category-thumb-hint{color:#5a817f;background:#fffc;border-radius:4px;padding:1px;position:absolute;bottom:2px;right:2px}.invisible{visibility:hidden}.category-mark-img{object-fit:contain;background:#d9e6e4;border-radius:8px;width:100%;height:128px;padding:6px;display:block}.category-line .table-action{white-space:nowrap;padding:6px}.category-add-row{gap:8px;display:flex}.category-add-row input{flex:1;min-width:0}.category-add-row .primary{white-space:nowrap;align-items:center;gap:5px;margin-top:0;display:flex}.category-add-row .primary:disabled{opacity:.5;cursor:default}.intro-actions .primary,.variant-actions .primary{margin-top:0}.intro-actions select{-webkit-appearance:none;appearance:none;border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236d7a86' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 11px center/12px no-repeat;border-radius:7px;padding:0 32px 0 12px;font:13px inherit}.intro-actions select:hover{border-color:#bfd2d4}.intro-actions select:focus{border-color:var(--teal);outline:0}.intro-actions select:disabled{color:#9aa6a9;cursor:default;background-color:#f2f5f5}.intro-actions select,.date-pick input{height:44px}.chart-bars,.chart-labels{grid-auto-columns:1fr;grid-auto-flow:column;gap:18px;padding-left:10px;padding-right:10px;display:grid}.chart-bars span{justify-self:center;width:100%;max-width:38px}.chart-labels{justify-content:initial;text-align:center}.clock-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:16px 0 4px;display:grid}.clock-card{background:#f8fbfa;border:1px solid #e6eeef;border-radius:9px;padding:13px 15px}.clock-card span{color:#6d7a86;align-items:center;gap:6px;font-size:11px;display:flex}.clock-card strong{margin:6px 0 4px;font:600 15px IBM Plex Sans Thai;display:block}.clock-card small{color:#8b989b;font-size:10px}.tz-picker{color:#4e666a;gap:6px;max-width:340px;margin-top:16px;font-size:12px;font-weight:600;display:grid}.tz-picker select{border:1px solid var(--line);height:44px;color:var(--ink);cursor:pointer;background:#fff;border-radius:7px;padding:0 12px;font:13px inherit}.tz-picker input{border:1px solid var(--line);height:44px;color:var(--ink);background:#fff;border-radius:7px;padding:0 12px;font:13px inherit}.tz-picker textarea{border:1px solid var(--line);font:11px/1.5 var(--font-mono,ui-monospace,monospace);color:var(--ink);resize:vertical;word-break:break-all;background:#fff;border-radius:7px;padding:10px 12px}.tz-picker:has(textarea){max-width:620px}.head-actions{align-items:center;gap:8px;display:flex}.exchange-strip{color:#8a5637;background:#fdf3ec;border:1px solid #f0d9c8;border-radius:10px;gap:3px;margin:10px 0 0;padding:11px 13px;font-size:12px;display:grid}.exchange-strip strong{letter-spacing:.06em;color:#b4573a;text-transform:uppercase;font-size:11px}.credit-row{color:#b4573a;justify-content:space-between;align-items:baseline;display:flex}.credit-row b{font-weight:700}.bill-head-line{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;margin-top:14px;padding-bottom:9px;display:flex}.bill-head-line strong{font-size:15px}.bill-head-line span{color:#6b8286;font-size:12px}.exchange-line{background:#fff;border:1px solid #e6eeef;border-radius:8px;align-items:center;gap:14px;margin-top:8px;padding:11px 13px;display:flex}.exchange-line-copy{flex:1;gap:3px;min-width:0;display:grid}.exchange-line-copy strong{font-size:13.5px;line-height:1.35}.exchange-line-copy span{color:#6b8286;font-size:11.5px;line-height:1.5}.exchange-line .qty{flex:none}.exchange-line.blocked{background:#f7f9f9;border-style:dashed}.exchange-line.blocked .exchange-line-copy span{color:#93a5a8}.exchange-credit{border-top:1px dashed var(--line);color:#5a6f74;justify-content:space-between;align-items:baseline;gap:12px;margin-top:14px;padding-top:11px;font-size:13px;display:flex}.exchange-credit b{color:var(--ink);font-size:17px}.choice.blocked{opacity:.62;cursor:default}.tz-actions{margin-top:14px}.tz-actions .primary{margin-top:0}.reservation-row{text-align:left;width:100%;font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-bottom:1px solid #eef2f3;grid-template-columns:118px minmax(0,1fr) minmax(120px,200px) 84px 92px 96px;align-items:center;gap:12px;padding:13px 4px;font-size:13px;display:grid}.reservation-row:hover{background:#f8fbfa}.reservation-row:last-of-type{border-bottom:0}.reservation-row .cancelled{color:#b4553c}.reservation-row b{text-align:right}.sync{font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px}.sync small{color:#9ca9ac;margin-left:2px}.sync:disabled{cursor:default}.sync-quiet{color:#98a5a8;font-weight:400}.sync-ok{color:#38806f}.sync-ok .pulse{background:#4eb694;box-shadow:0 0 0 4px #e3f5ed}.sync-down{color:#b4553c}.sync-down .pulse{background:#d4694a;box-shadow:0 0 0 4px #f7e7e1}.sync-off{color:#8b989b}.sync-off .pulse{background:#b4b2a9;box-shadow:0 0 0 4px #eef0f0}.edit-line{grid-template-columns:minmax(0,1fr) 76px 92px 36px}.link-action{color:var(--teal);cursor:pointer;background:0 0;border:0;margin-left:8px;padding:0;font:600 11px inherit;text-decoration:underline}.link-action:hover{color:var(--teal-dark)}.add-line{margin:14px 0 4px}.add-line .table-action{white-space:nowrap}.edit-modal{max-height:calc(100vh - 40px);padding:0 24px;overflow-y:auto}.edit-modal .modal-head{z-index:2;border-bottom:1px solid var(--line);background:#fff;margin:0 -24px 14px;padding:22px 24px 13px;position:-webkit-sticky;position:sticky;top:0}.edit-modal .modal-actions{z-index:2;border-top:1px solid var(--line);background:#fff;margin:22px -24px 0;padding:15px 24px 18px;position:-webkit-sticky;position:sticky;bottom:0}@media print{.edit-modal{max-height:none;overflow:visible}}.a4-receipt{color:#1a1a1a;background:#fff;flex-direction:column;width:190mm;max-width:100%;min-height:277mm;font-family:IBM Plex Sans Thai,sans-serif;font-size:10.5px;line-height:1.45;display:flex}.a4-body{flex:auto;min-height:0}.a4-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.a4-logo{width:26mm;height:auto}.a4-accredit{width:72mm;height:auto}.a4-titlerow{justify-content:space-between;align-items:flex-start;gap:16px;margin-top:2mm;display:flex}.a4-titlerow h1{margin:0;font-size:19px;font-weight:700}.a4-school{text-align:right;font-size:9.5px}.a4-school p{margin:0}.a4-midrow{justify-content:space-between;align-items:flex-start;gap:16px;margin-top:3mm;display:flex}.a4-received{border:1px solid #111;border-radius:5px;flex:92mm;align-items:flex-start;gap:10px;max-width:92mm;min-height:26mm;padding:7px 10px;display:flex}.a4-received-label{white-space:nowrap;font-size:8.5px;line-height:1.25}.a4-received strong{font-size:12px}.a4-docmeta{text-align:right;align-self:flex-end;font-size:11px}.a4-docmeta p{margin:0 0 4px}.a4-table{border-collapse:collapse;width:100%;margin-top:4mm}.a4-table th{text-align:center;background:#e9e9e9;border:0;padding:6px 8px;font-weight:400}.a4-table td{text-align:center;border:0;padding:5px 8px}.a4-table .a4-item{text-align:left}.a4-table .a4-num{text-align:right}.a4-footrow{justify-content:space-between;gap:16px;margin-top:6mm;display:flex}.a4-payment{flex:96mm;min-width:0;max-width:96mm}.a4-paidby{margin:0 0 6px;font-size:11px}.a4-giftnote{color:#555;margin:-3px 0 6px;font-size:9.5px;font-style:italic}.a4-cheque{border:1px dashed #999;border-radius:5px;padding:8px 10px;font-size:9px}.a4-cheque p{margin:0}.a4-totals{flex:auto;min-width:0;font-size:11px}.a4-totals>div{justify-content:space-between;gap:18px;padding:2px 0;display:flex}.a4-totals>.a4-cash{border-top:1px solid #d8dee0;margin-top:4px;padding-top:5px}.a4-totals>.a4-sign{text-align:center;margin-top:12mm;display:block}.a4-signline{border-bottom:1px solid #111;width:58mm;margin:0 auto 4px;display:block}.a4-sign b{margin-top:3px;font-weight:400;display:block}.a4-sign span:last-child{display:block}.a4-note{margin-top:6mm;font-size:10px}.a4-exchange{border:1px dashed #999;border-radius:1.5mm;gap:1mm;margin-top:5mm;padding:2.5mm 3mm;font-size:9.5px;line-height:1.5;display:grid}.a4-exchange b{font-size:10px}.a4-foot{color:#333;margin-top:8mm;font-size:8.5px}.a4-foot p{margin:0}.receipt-modal .a4-receipt{width:100%;max-width:190mm;margin:0 auto}@media print{html[data-print=a4] .a4-receipt{width:auto}html[data-print=a4] .a4-table{page-break-inside:auto}html[data-print=a4] .a4-table tr{page-break-inside:avoid}}.a4-received{flex-direction:column;justify-content:space-between}.a4-received-top{align-items:flex-start;gap:10px;display:flex}.a4-docmeta{text-align:left;align-self:flex-start;margin-top:6px;font-size:11px}.a4-qr{text-align:center;flex:none}.a4-qr img{width:26mm;height:26mm;display:block}.a4-qr small{letter-spacing:.3px;margin-top:3px;font-size:8px;display:block}.a4-receipt+.a4-receipt{border-top:1px dashed #c7cfd1;margin-top:14px;padding-top:14px}.a4-continued{text-align:right;color:#666;margin:4mm 0 0;font-size:9px}.a4-pageno{text-align:right;color:#333;margin-top:4px;font-size:8.5px}.a4-foot{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.a4-foot>*{margin:0}@media print{html[data-print=a4] .a4-receipt{break-after:page;page-break-after:always;border-top:0;margin-top:0;padding-top:0}html[data-print=a4] .a4-receipt:last-child{break-after:auto;page-break-after:auto}}.audit-panel{margin-top:18px}.audit-panel h3{align-items:center;gap:7px;display:flex}.audit-search{height:42px;margin:16px 0 6px}.audit-row{border-bottom:1px solid #eef2f3;grid-template-columns:150px 110px 96px minmax(0,1fr) 120px;align-items:baseline;gap:12px;padding:11px 4px;font-size:12.5px;display:grid}.audit-head{letter-spacing:1.2px;color:#8a989d;text-transform:uppercase;border-bottom:1px solid var(--line);font:700 10px IBM Plex Sans Thai}.audit-row .mono{font-size:11.5px}.audit-detail{overflow-wrap:anywhere;color:#39505a;min-width:0}.audit-note{margin-top:14px}@media (max-width:900px){.audit-row{grid-template-columns:1fr 1fr;row-gap:4px}.audit-head{display:none}}.adjust-page{gap:16px;display:grid}.adjust-line{border-bottom:1px solid #eef2f3;grid-template-columns:minmax(0,1fr) 80px 90px 120px 100px 44px;align-items:center;gap:10px;padding:9px 4px;font-size:12.5px;display:grid}.adjust-line-head{letter-spacing:1.1px;color:#93a1a4;text-transform:uppercase;border-bottom:1px solid var(--line);font:700 9px IBM Plex Sans Thai}.adjust-line .right{text-align:right}.adjust-line input.cell{border:1px solid var(--line);width:100%;color:var(--ink);text-align:right;background:#fff;border-radius:6px;padding:7px 8px;font:12.5px inherit}.adjust-line .positive{color:#2c9d81;font-weight:700}.adjust-note{color:#597174;gap:6px;margin-top:14px;font-size:11px;display:grid}.adjust-note input{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:7px;padding:10px;font:13px inherit}.adjust-doc{cursor:pointer;border-bottom:1px solid #eef2f3;grid-template-columns:130px 150px minmax(0,1fr) 110px 100px 110px 92px;align-items:center;gap:10px;padding:12px 4px;font-size:12.5px;display:grid}.adjust-doc:hover{background:#f8fbfa}.adjust-doc .right{text-align:right}.adjust-doc .positive{color:#2c9d81}.adjust-doc .cancelled{color:#b4553c}@media (max-width:1000px){.adjust-line,.adjust-doc{grid-template-columns:1fr 1fr;row-gap:4px}.adjust-line-head{display:none}}.choice-head{color:#6d7a86;justify-content:space-between;align-items:center;gap:10px;padding:2px 2px 6px;font-size:11px;display:flex}.choice-added{opacity:.55;cursor:default}.choice-close{align-self:flex-end;margin-top:4px}.acc-report{color:#1a1a1a;background:#fff;font-family:IBM Plex Sans Thai,sans-serif}.acc-page{width:190mm;max-width:100%;padding:0 0 8mm;font-size:9px;line-height:1.35}.acc-head{border-bottom:1.2px solid #1a1a1a;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:8px;padding-bottom:6px;display:flex}.acc-head h1{letter-spacing:.2px;margin:0 0 2px;font-size:13px}.acc-head p{color:#444;margin:0;font-size:8.5px}.acc-head-right{text-align:right;white-space:nowrap}.acc-head-right strong{font-size:11px;display:block}.acc-head-right span{color:#555;font-size:8px;display:block}.acc-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:9px}.acc-table col.c-day{width:19mm}.acc-table col.c-doc{width:27mm}.acc-table col.c-type{width:26mm}.acc-table col.c-cust{width:28mm}.acc-table col.c-money{width:auto}.acc-table th{text-align:left;letter-spacing:.3px;color:#333;white-space:nowrap;border-bottom:.8px solid #555;padding:3px 4px;font-size:8px;font-weight:700}.acc-table td{vertical-align:top;border-bottom:.4px solid #e0e0e0;padding:2.6px 4px}.acc-table tbody tr:nth-child(2n) td{background:#fafafa}.acc-table td small{color:#666;font-size:7.5px;line-height:1.25;display:block}.acc-table td.nowrap small{color:#777;letter-spacing:.2px}.acc-table .right{text-align:right}.acc-table .nowrap,.acc-table .right,.acc-table .mono{white-space:nowrap}.acc-table .mono,.acc-table .right{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.acc-table .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8.5px}.acc-table tfoot td{border-top:1.2px solid #1a1a1a;border-bottom:0;padding-top:5px;font-weight:700;background:#fff!important}.acc-void td{color:#8f8f8f}.acc-void .acc-doc{text-decoration:line-through}.acc-table-items tbody tr td{border-bottom:0;background:#fff!important}.acc-table-items tbody tr:not(.acc-item) td{border-top:.4px solid #d7d7d7}.acc-table-items tbody tr:first-child td{border-top:0}.acc-item td{color:#5c5c5c;padding-top:0;padding-bottom:2px;font-size:8px}.acc-item .mono{color:#8a8a8a;font-size:7.5px}.acc-note{color:#555;margin-top:7px;font-size:8px;line-height:1.4}.acc-sign{color:#444;gap:34px;margin-top:12mm;font-size:8.5px;display:flex}.acc-sign div{text-align:center;flex:1}.acc-signline{border-top:.6px solid #777;margin:0 6mm 3px;display:block}.acc-signname{color:#777;margin-top:2px;display:block}@media print{html[data-print=acc] .acc-page{break-after:page;page-break-after:always;width:auto}html[data-print=acc] .acc-page:last-child{break-after:auto;page-break-after:auto}html[data-print=acc] .acc-table{page-break-inside:auto}html[data-print=acc] .acc-table tr{page-break-inside:avoid}html[data-print=acc] .acc-table thead{display:table-header-group}html[data-print=acc] .acc-table tbody tr:nth-child(2n) td{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#f7f7f7}html[data-print=acc] .acc-table-items tbody tr td{background:#fff}html[data-print=acc] .acc-item{page-break-before:avoid;break-before:avoid}}.acc-print-area{position:absolute;top:0;left:-10000px}@media print{html[data-print=acc] .acc-print-area{position:static;top:auto;left:auto}html[data-print=acc] .shell{display:none!important}html[data-print=a4] .modal-backdrop{background:0 0;padding:0;display:block;position:static}html[data-print=a4] .edit-modal{max-height:none;overflow:visible}html[data-print=a4] .qr-sheet.print-area{grid-template-columns:repeat(4,1fr);max-height:none;overflow:visible}html[data-print=a4] .qr-label{break-inside:avoid;page-break-inside:avoid}}.acc-hint{line-height:1.65;display:block}.multi-calendar{border:1px solid var(--line);background:#fbfcfc;border-radius:10px;margin-top:13px;padding:12px}.multi-calendar-head{text-align:center;grid-template-columns:34px 1fr 34px;align-items:center;margin-bottom:8px;display:grid}.multi-calendar-head strong{font:600 13px IBM Plex Sans Thai}.multi-calendar-head button{color:#557276;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:32px;height:32px;display:grid}.multi-calendar-head button:hover{color:var(--teal);background:#eaf3f0}.day-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.day-grid>span{text-align:center;color:#8b989b;padding:5px 0;font-size:10px}.day-grid>i{height:34px}.day-grid>button,.month-grid>button{color:#405a5f;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;font:500 12px inherit}.day-grid>button{height:34px}.day-grid>button:hover,.month-grid>button:hover{background:#edf5f2;border-color:#d8e8e3}.day-grid>button.today{border-color:#b8d7ce}.day-grid>button.selected,.month-grid>button.selected{background:var(--teal);border-color:var(--teal);color:#fff;font-weight:700}.month-grid{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.month-grid>button{min-height:38px;padding:7px 4px}.multi-calendar-foot{color:#75868a;border-top:1px solid #e8eeee;justify-content:space-between;align-items:center;margin-top:10px;padding-top:9px;font-size:10.5px;display:flex}.multi-calendar-foot button{color:#b4553c;cursor:pointer;background:0 0;border:0;padding:3px;font:500 10.5px inherit}.prod-report{color:#1a1a1a;background:#fff;font-family:IBM Plex Sans Thai,sans-serif}.prod-page{width:190mm;max-width:100%;font-size:10px;line-height:1.4}.prod-head{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.prod-badge{color:#fff;background:#7a7a7a;border-radius:5px;max-width:78mm;padding:9px 16px;font-size:12px;font-weight:700;line-height:1.3}.prod-head h1{text-align:right;margin:0;font-size:14px;font-weight:400}.prod-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:10px}.prod-table col.c-item{width:auto}.prod-table col.c-num{width:19mm}.prod-table col.c-sum{width:24mm}.prod-table th{text-align:left;letter-spacing:.3px;color:#666;text-transform:uppercase;border-bottom:.8px solid #999;padding:3px 5px;font-size:8px;font-weight:700}.prod-table td{vertical-align:top;padding:4px 5px}.prod-table .right{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.prod-item{padding-left:10px}.prod-size{color:#555}.prod-band td{text-align:center;-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#c9c9c9;padding:5px;font-weight:700}.prod-total td{border-top:.6px solid #999;border-bottom:1.4px solid #cfcfcf;padding-top:4px;padding-bottom:6px;font-weight:700}.prod-grand-total td{border-top:2px solid #333;padding-top:8px;padding-bottom:8px}.prod-empty{text-align:center;color:#888;margin:22px 0;font-size:11px}.prod-foot{justify-content:space-between;align-items:flex-end;gap:20px;margin-top:14mm;display:flex}.prod-foot-left strong{color:#a9a9a9;letter-spacing:.5px;font-size:30px;font-weight:400;line-height:1.1;display:block}.prod-foot-left span{color:#555;margin-top:3px;font-size:8.5px;display:block}.prod-foot-right{text-align:center;min-width:62mm}.prod-foot-right span{color:#444;font-size:8.5px;display:block}.prod-signline{border-top:.6px solid #777;margin:14mm 8mm 3px}@media print{html[data-print=prod] .prod-page{break-after:page;page-break-after:always;width:auto}html[data-print=prod] .prod-page:last-child{break-after:auto;page-break-after:auto}html[data-print=prod] .prod-table tr{page-break-inside:avoid}html[data-print=prod] .prod-table thead{display:table-header-group}html[data-print=prod] .prod-band{page-break-after:avoid;break-after:avoid}html[data-print=prod] .prod-total{page-break-before:avoid;break-before:avoid}html[data-print=prod] .prod-foot{page-break-inside:avoid}}.prod-print-area{position:absolute;top:0;left:-10000px}@media print{html[data-print=prod] .prod-print-area{position:static;top:auto;left:auto}html[data-print=prod] .shell{display:none!important}}.gift-report{color:#1a1a1a;background:#fff;font-family:IBM Plex Sans Thai,sans-serif}.gift-page{width:190mm;max-width:100%;font-size:9px;line-height:1.35}.gift-head{border-bottom:1.2px solid #1a1a1a;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:8px;padding-bottom:6px;display:flex}.gift-head h1{letter-spacing:.2px;margin:0 0 2px;font-size:13px}.gift-head p{color:#444;margin:0;font-size:8.5px}.gift-head-right{text-align:right;white-space:nowrap;color:#555;font-size:8px}.gift-head-right span{display:block}.gift-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:9px}.gift-table col.c-day{width:19mm}.gift-table col.c-doc{width:24mm}.gift-table col.c-items{width:auto}.gift-table col.c-money{width:22mm}.gift-table col.c-note{width:44mm}.gift-table col.c-staff{width:26mm}.gift-table th{text-align:left;letter-spacing:.3px;color:#333;white-space:nowrap;border-bottom:.8px solid #555;padding:3px 4px;font-size:8px;font-weight:700}.gift-table td{vertical-align:top;border-bottom:.4px solid #e0e0e0;padding:3px 4px}.gift-table tbody tr:nth-child(2n) td{background:#fafafa}.gift-table td small{color:#666;font-size:7.5px;line-height:1.25;display:block}.gift-table .right{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.gift-table .nowrap{white-space:nowrap}.gift-table .mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8.5px}.gift-table tfoot td{border-top:1.2px solid #1a1a1a;border-bottom:0;padding-top:5px;font-weight:700;background:#fff!important}.gift-empty{text-align:center;color:#888;margin:22px 0;font-size:11px}.gift-sign{color:#444;gap:34px;margin-top:12mm;font-size:8.5px;display:flex}.gift-sign div{text-align:center;flex:1}.gift-signline{border-top:.6px solid #777;margin:0 6mm 3px;display:block}.gift-signname{color:#777;margin-top:2px;display:block}@media print{html[data-print=gift] .gift-table,html[data-print=consignment] .gift-table{page-break-inside:auto}html[data-print=gift] .gift-table tr,html[data-print=consignment] .gift-table tr{page-break-inside:avoid}html[data-print=gift] .gift-table thead,html[data-print=consignment] .gift-table thead{display:table-header-group}html[data-print=gift] .gift-sign,html[data-print=consignment] .gift-sign{page-break-inside:avoid}}.gift-print-area{position:absolute;top:0;left:-10000px}@media print{html[data-print=gift] .gift-print-area{position:static;top:auto;left:auto}html[data-print=gift] .shell{display:none!important}}.consign-print-area{position:absolute;top:0;left:-10000px}@media print{html[data-print=consignment] .consign-print-area{position:static;top:auto;left:auto}html[data-print=consignment] .shell{display:none!important}}.nav-item-locked{opacity:.45;cursor:not-allowed}.nav-item-locked:hover{background:0 0}.nav-lock{opacity:.8;margin-left:auto}.build-banner{z-index:60;color:#eaf5f3;background:#0e6770;justify-content:center;align-items:center;gap:8px;padding:7px 14px;font:600 12px IBM Plex Sans Thai,sans-serif;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 8px #103f4933}.build-banner small{opacity:.85;font-weight:400}.build-spin{animation:1.1s linear infinite build-spin}@keyframes build-spin{to{transform:rotate(360deg)}}@media print{.build-banner{display:none!important}}.method-grid{grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 4px;display:grid}.method-grid .method{flex-direction:row;width:100%;min-height:58px}.method-grid .method:last-child:nth-child(odd){grid-column:span 2}.method-picked{background:var(--mint);color:#20606a;border:1px solid #cce6dd;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;margin:12px 0 2px;padding:9px 12px;font-size:12.5px;display:flex}.method-picked b{font-size:13px}.method-picked .text-button{align-items:center;gap:4px;display:flex}.pay-qr{text-align:center;justify-items:center;gap:8px;margin:14px 0 4px;display:grid}.pay-qr img{border:1px solid var(--line);background:#fff;border-radius:12px;width:210px;height:210px;padding:8px}.pay-qr p{color:#4e666a;margin:0;font-size:12px;line-height:1.6}.pay-qr small{color:#8b989b}.acc-table .acc-zero td{color:#9a9a9a}.best-seller{flex-wrap:wrap;align-items:center;gap:26px;margin-top:18px;display:flex}.donut{flex:none;width:168px;height:168px}.donut circle{fill:none;stroke-width:5.4px}.donut .donut-track{stroke:#eef3f2}.donut text{text-anchor:middle;fill:var(--ink)}.donut .donut-total{fill:#124f58;font:700 6px IBM Plex Sans Thai}.donut .donut-unit{fill:#8b989b;font:500 2.6px IBM Plex Sans Thai}.best-seller-list{flex:1;gap:11px;min-width:210px;margin:0;padding:0;list-style:none;display:grid}.best-seller-list li{grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:9px;font-size:12.5px;display:grid}.best-seller-list i{border-radius:3px;width:10px;height:10px}.best-seller-list .bs-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.best-seller-list .bs-qty{font-variant-numeric:tabular-nums;font-size:13px}.best-seller-list .bs-money{color:#8b989b;font-variant-numeric:tabular-nums;text-align:right;min-width:56px;font-size:10.5px}@media (max-width:900px){.best-seller{gap:18px}.donut{width:140px;height:140px}}.slips-lead{max-width:640px;margin:6px 0 18px;font-size:13px;line-height:1.7}.slips-bar{flex-wrap:wrap;align-items:flex-end;gap:14px;margin-bottom:16px;display:flex}.slips-date{color:#6b7a7f;flex-direction:column;gap:6px;font-size:12px;display:flex}.slips-date input{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;padding:10px 12px;font:14px inherit}.slips-buttons{flex-wrap:wrap;gap:10px;display:flex}.slips-buttons button{align-items:center;gap:8px;padding:12px 18px;font-size:14px;display:inline-flex}.slips-busy{align-items:center;gap:8px;display:flex}.spin{animation:1s linear infinite slip-spin}@keyframes slip-spin{to{transform:rotate(360deg)}}.slips-count{color:#6b7a7f;margin:10px 0;font-size:13px}.slips-empty{border:1px dashed var(--line);text-align:center;color:#8b989b;border-radius:10px;padding:34px 18px;font-size:13px}.slips-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.slip-card{border:1px solid var(--line);background:#fff;border-radius:10px;margin:0;overflow:hidden}.slip-card img{object-fit:contain;background:#f4f7f8;width:100%;height:240px;display:block}.slip-card figcaption{color:#7c8a8e;border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:11px;display:flex}@media (max-width:640px){.slips-buttons{width:100%}.slips-buttons button{flex:1;justify-content:center}.slips-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.slip-card img{height:190px}}.acc-slip-page{flex-direction:column;align-items:center;gap:10px;padding-top:6mm;display:flex}.acc-slip-stamp{color:#5c6b70;margin:0;font-size:11px}.acc-slip-frame{justify-content:center;align-items:center;width:4in;height:6in;display:flex;overflow:hidden}.acc-slip-frame img{object-fit:contain;max-width:100%;max-height:100%}.slips-warn{color:#8a5a12;background:#fff5e8;border:1px solid #f0c48a;border-radius:9px;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;padding:11px 14px;font-size:12.5px;display:flex}.slips-warn button{margin-left:auto}@media (max-width:640px){body{overflow-x:hidden}.metric-grid,.dashboard-grid,.role-grid{grid-template-columns:1fr}.product-grid,.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sales-layout{grid-template-columns:1fr;padding:20px 14px}.intro-actions{flex-wrap:wrap}.alert-setting{min-width:0}.content .topbar{padding:14px}.settings-page{padding:18px 14px}.section-tabs{flex-wrap:nowrap;padding:16px 14px 0;overflow-x:auto}.stock-row,.variant-row,.alert-row,.alert-row.pickup-row,.staff-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.stock-head,.variant-head,.alert-row-head{display:none}.stock-row>*,.variant-row>*,.alert-row>*,.staff-row>*{overflow-wrap:anywhere;min-width:0}.clock-grid{grid-template-columns:1fr}.clock-card{min-width:0}}@media (max-width:800px){.brand>div:last-child{display:none}.brand{justify-content:center}}.consign-tag.separate-tag{color:#2f5f9a;background:#e3eefb}.edit-modal.separate-modal{width:min(640px,100%);max-height:calc(100vh - 40px);padding:26px 28px;font-size:15px;overflow-y:auto}.separate-modal .modal-head h3{font-size:20px}.separate-modal .hint{font-size:13.5px;line-height:1.6}.separate-modal label{font-size:14px}.separate-modal input{padding:12px 14px;font-size:15px}.separate-found{gap:6px;max-height:280px;margin:8px 0 4px;display:grid;overflow-y:auto}.separate-row{text-align:left;color:inherit;background:#fff;border:1px solid #e3eaec;border-radius:9px;align-items:center;gap:12px;width:100%;margin-bottom:6px;padding:12px 14px;font-family:inherit;font-size:15px;display:flex}.separate-row .mono{min-width:80px;font-size:14px}.separate-row small{color:#8b989b;margin-left:auto;font-size:13px}.separate-row.pick{cursor:pointer}.separate-row.pick:hover{background:#f3faf7;border-color:#91cfc1}.separate-row.pick small{color:#0e6770;font-weight:600}.separate-row .text-button{margin-left:auto;font-size:14px}.separate-title{margin:20px 0 8px;font-size:15px}.late-return{color:#8a3c1d;background:#fdf1ec;border:1px solid #f2c3ae;border-radius:9px;justify-items:start;gap:8px;margin:4px 0 10px;padding:12px 14px;font-size:13px;display:grid}.late-return p{margin:0}.late-return label{width:100%}.late-return small{color:#a0603f}.late-return.open{color:#2b6a60;background:#eff9f5;border-color:#a8d6cb}.late-return.open small{color:#3d6f6a}.late-settings h3{align-items:center;gap:7px;display:flex}.late-status{color:#6d7a86;white-space:nowrap;background:#eef2f3;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:700}.late-status.on{color:#c2502a;background:#fdf1ec}.late-open-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.late-open-row input{flex:1;min-width:240px;padding:10px 12px;font-size:14px}.late-open-row p{color:#4e666a;flex:1;margin:0;font-size:13.5px}.late-open-row .primary{margin-top:0}
.login-page{background:radial-gradient(circle at 70% 15%,#d9f0e8 0,#0000 32%),#f3f7f6;place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:#fff;border-radius:20px;width:min(430px,100%);padding:38px;box-shadow:0 24px 70px #124d571a}.login-brand{color:var(--teal);border-bottom:1px solid var(--line);align-items:center;gap:12px;padding-bottom:28px;display:flex}.login-brand>div:last-child{display:grid}.login-brand strong{letter-spacing:2px;font-size:17px}.login-brand span{letter-spacing:3px;color:var(--muted);font-size:9px}.login-copy{padding:30px 0 22px}.login-copy h1{margin:8px 0;font-size:27px}.login-copy p{color:var(--muted);margin:0;font-size:13px}.line-login{box-sizing:border-box;color:#fff;background:#06c755;border-radius:9px;justify-content:center;align-items:center;width:100%;padding:13px 18px;font-size:14px;font-weight:700;text-decoration:none;display:flex}.line-login:hover{background:#05b84e}.login-note{text-align:center;color:var(--muted);margin-top:16px;display:block}.login-error{color:#a94b3d;background:#fff0ed;border:1px solid #ffd7d0;border-radius:8px;margin-bottom:15px;padding:11px 13px;font-size:12px}.sidebar .profile{visibility:hidden}.auth-controls{z-index:15;color:#dbecee;border-top:1px solid #34616a;align-items:center;gap:9px;width:220px;padding:17px 7px 0;display:flex;position:fixed;bottom:20px;left:18px}.auth-avatar{color:#fff;background:#ef8554;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.auth-controls>span{flex:1;min-width:0;display:grid}.auth-controls strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.auth-controls small{color:#8bb0b4;font-size:9px}.auth-controls form{margin:0}.auth-controls button{color:#a9d5d3;cursor:pointer;background:#ffffff12;border:0;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.auth-controls button:hover{color:#fff;background:#ffffff20}.auth-controls button span{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1100px){.auth-controls{width:174px}}@media (max-width:800px){.auth-controls{justify-content:center;width:50px;padding:15px 8px 0;left:10px}.auth-controls>span,.auth-controls form{display:none}}
.otp-form{gap:14px;display:grid}.otp-form label{color:#526d71;gap:7px;font-size:11px;font-weight:600;display:grid}.otp-form input{box-sizing:border-box;border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:9px;outline:none;padding:12px 13px;font:500 13px inherit}.otp-form input:focus{border-color:#28a889;box-shadow:0 0 0 3px #28a8891c}.otp-form input[placeholder="000000"]{letter-spacing:8px;text-align:center;font-size:25px;font-weight:700}.otp-form .line-login{cursor:pointer;border:0}.otp-form .line-login:disabled{opacity:.55;cursor:not-allowed}.otp-sent{color:#277763;text-align:center;background:#e8f7f1;border-radius:8px;padding:11px 12px;font-size:12px}.otp-back{color:var(--teal);cursor:pointer;background:0 0;border:0;font:600 11px inherit}.otp-form .login-error{margin:0}
