:root{--ink:#173630;--ink-soft:#40615a;--muted:#778982;--green:#123f35;--green-2:#286b5c;--green-3:#dcece4;--sidebar:#123d34;--sidebar-soft:#1d5145;--paper:#fffdf9;--paper-2:#f8f6f0;--canvas:#f1eee6;--orange:#d68135;--orange-dark:#ae5d20;--orange-soft:#f8e9d8;--line:#dfe5df;--danger:#a43c33;--shadow:0 22px 55px #1a3a3114;--shadow-soft:0 12px 30px #1a3a3112}*{box-sizing:border-box}html{background:var(--canvas);scrollbar-width:auto;scrollbar-color:#7f9f91 #e4ebe5}html::-webkit-scrollbar{width:14px;height:14px}html::-webkit-scrollbar-track{background:#e4ebe5}html::-webkit-scrollbar-thumb{background:#7f9f91;border:3px solid #e4ebe5;border-radius:999px}html::-webkit-scrollbar-thumb:hover{background:var(--green-2)}html::-webkit-scrollbar-thumb:active{background:var(--green-2)}body{color:var(--ink);background:radial-gradient(circle at 78% 4%, #d6813514, transparent 26rem), radial-gradient(circle at 4% 84%, #286b5c12, transparent 25rem), var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Thonburi,Noto Sans Thai,Leelawadee UI,Tahoma,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.brand-lockup{isolation:isolate;width:fit-content;max-width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:center;gap:14px;padding:0;display:flex;position:relative;overflow:visible}.brand-lockup:before,.brand-lockup:after{display:none}.brand-lockup>*{z-index:1;position:relative}.brand-copy{gap:6px;min-width:0;display:grid}.brand-wordmark{letter-spacing:-.025em;text-shadow:0 1px #ffffffdb;align-items:baseline;font-family:Thonburi,Noto Sans Thai,Leelawadee UI,sans-serif;font-size:30px;font-weight:900;line-height:.95;display:flex}.brand-name-primary{color:var(--green)}.brand-name-accent{color:#1d72c5}.brand-lockup.compact{gap:11px}.brand-lockup.compact .brand-wordmark{font-size:25px}.brand-tagline{color:var(--muted);letter-spacing:.01em;white-space:nowrap;font-size:10px;font-weight:800;line-height:1.1}.brand-logo{background:#f7f5ed;border:2px solid #ffffffe0;border-radius:18px;flex:none;display:inline-grid;position:relative;overflow:hidden;box-shadow:0 10px 16px #07261f29}.brand-logo-image{object-fit:contain;object-position:center;width:100%;max-width:100%;height:100%;display:block}.brand-logo-sm{width:52px;height:52px}.brand-logo-lg{width:86px;height:86px}.app-shell{min-height:100vh}.app-frame{--sidebar-width:252px;grid-template-columns:252px minmax(0,1fr);align-items:start;min-height:100vh;display:grid}.sidebar{color:#edf5ef;background:radial-gradient(circle at 22% 0%, #679d8438, transparent 17rem), linear-gradient(155deg, #16483d 0%, var(--sidebar) 54%, #0c302a 100%);overscroll-behavior:contain;z-index:10;flex-direction:column;align-self:start;height:100dvh;max-height:100vh;padding:26px 17px 18px;display:flex;position:sticky;top:0;overflow:hidden auto}.sidebar:after{content:"";pointer-events:none;border:1px solid #e4f0e61c;border-radius:50%;width:185px;height:185px;position:absolute;bottom:70px;right:-75px;box-shadow:0 0 0 24px #e4f0e606,0 0 0 48px #e4f0e605}.sidebar .brand-lockup{z-index:1;box-shadow:none;background:0 0;border-color:#0000;border-radius:14px;padding:4px 9px 31px;position:relative}.sidebar .brand-lockup:after{display:none}.sidebar .brand-name-primary{color:#f7faf5}.sidebar .brand-tagline{color:#a9c2b6}.sidebar-header{z-index:1;align-items:flex-start;min-width:0;display:flex;position:relative}.sidebar-header .brand-lockup{flex:auto;min-width:0}.sidebar-toggle{top:30px;left:calc(var(--sidebar-width) - 15px);z-index:30;color:#a9c2b6;background:#17463d;border:1px solid #d5ecde47;border-radius:9px;place-items:center;width:30px;height:30px;padding:0;display:grid;position:fixed;box-shadow:0 5px 14px #082a2233}.sidebar-toggle:hover{color:#fff;background:#ecf7ef1a}.sidebar-toggle svg{width:15px;height:15px;transition:transform .2s;transform:rotate(180deg)}.sidebar-toggle.is-collapsed svg{transform:none}.sidebar-section-label{z-index:1;color:#81a99a;letter-spacing:.13em;text-transform:uppercase;margin:0 12px 10px;font-size:10px;font-weight:800;position:relative}.tabs{gap:7px;display:grid}.sidebar .tabs{z-index:1;width:auto;margin:0;padding:0;position:relative}.tabs button{color:#b3c9bf;text-align:left;background:0 0;border:0;border-radius:13px;align-items:center;gap:12px;width:100%;min-height:48px;padding:0 12px;font-size:13px;font-weight:700;transition:color .18s,background .18s,transform .18s;display:flex}.tabs button:hover{color:#fff;background:#ecf7ef14;transform:translate(2px)}.tabs button.active{color:#fff;background:linear-gradient(100deg,#ddf0e12e,#ddf0e112);box-shadow:inset 3px 0 #dfa06a,0 10px 22px #03181414}.tabs button svg{flex:none}.tabs button.active svg:first-child{color:#efb278}.nav-arrow{opacity:.48;margin-left:auto;display:grid}.nav-arrow svg{width:15px;height:15px}.sidebar-bottom{z-index:1;gap:15px;margin-top:auto;display:grid;position:relative}.sidebar-user div{gap:3px;min-width:0;display:grid}.sidebar-user strong{color:#f3f8f3;font-size:12px}.sidebar-user small{color:#9cb8ac;font-size:10px}.sidebar-user{border-top:1px solid #e0f1e51f;align-items:center;gap:9px;padding:11px 7px 0;display:flex}.sidebar-user .profile-menu-button{color:#8eafa1;margin-left:auto;padding:5px}.sidebar-user .profile-menu-button:hover{color:#fff}.sidebar-avatar-button{display:none}@media (min-width:861px){.app-frame.sidebar-collapsed{--sidebar-width:82px;grid-template-columns:82px minmax(0,1fr)}.app-frame.sidebar-collapsed .sidebar{width:100%;min-width:0;padding-left:10px;padding-right:10px}.app-frame.sidebar-collapsed .sidebar-header{flex-direction:column;align-items:center;gap:13px;width:100%}.app-frame.sidebar-collapsed .sidebar-header .brand-lockup{flex:0 0 52px;justify-content:center;width:52px;max-width:52px;padding-left:0;padding-right:0}.app-frame.sidebar-collapsed .sidebar-header .brand-copy,.app-frame.sidebar-collapsed .sidebar-section-label,.app-frame.sidebar-collapsed .tabs button>span:not(.nav-arrow),.app-frame.sidebar-collapsed .nav-arrow,.app-frame.sidebar-collapsed .sidebar-user>.avatar,.app-frame.sidebar-collapsed .sidebar-user>div,.app-frame.sidebar-collapsed .sidebar-user>.profile-menu-button{display:none}.app-frame.sidebar-collapsed .sidebar .tabs button{justify-content:center;padding-left:0;padding-right:0}.app-frame.sidebar-collapsed .sidebar-bottom{gap:15px}.app-frame.sidebar-collapsed .sidebar-user{justify-content:center;padding-left:0;padding-right:0}.app-frame.sidebar-collapsed .sidebar-avatar-button{background:0 0;border:0;place-items:center;padding:0;display:grid}.app-frame.sidebar-collapsed .sidebar-avatar-button .avatar{margin:0}}.workspace{min-width:0;min-height:100vh}.topbar{justify-content:space-between;align-items:center;gap:24px;width:min(1320px,100% - 64px);min-height:96px;margin:0 auto;display:flex}.topbar-context{gap:5px;min-width:0;display:grid}.topbar-context span{color:var(--muted);font-size:11px}.topbar-context h2{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;overflow:hidden}.topbar-actions{align-items:center;gap:14px;display:flex}.live-status{color:var(--green-2);background:#fffdf9bd;border:1px solid #d9e7dd;border-radius:999px;align-items:center;gap:9px;padding:8px 11px;font-size:11px;font-weight:800;display:flex}.status-dot{background:#54aa78;border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 4px #54aa7821}.topbar-profile{align-items:center;gap:8px;display:flex}.avatar{color:#dbeee2;background:#2b6859;border-radius:11px;flex:none;place-items:center;width:32px;height:32px;font-size:13px;font-weight:800;display:inline-grid}.avatar-small{border-radius:10px;width:30px;height:30px;font-size:12px}.topbar-profile b{color:var(--ink);font-size:12px}.mobile-brand{align-items:center;gap:9px;display:none}.mobile-brand strong{letter-spacing:-.04em;font-size:18px}.workspace-scroll{width:min(1320px,100% - 64px);margin:0 auto;padding-bottom:48px}.login-shell{grid-template-columns:minmax(0,.95fr) minmax(360px,430px);align-items:center;gap:clamp(46px,8vw,132px);width:min(1120px,100% - 48px);min-height:100vh;margin:0 auto;padding:58px 0;display:grid;position:relative}.login-shell:before{content:"";pointer-events:none;border:1px solid #286b5c21;border-radius:50%;position:absolute;inset:12% 35% 10% -22%;transform:rotate(-17deg)}.login-glow{filter:blur(1px);pointer-events:none;border-radius:50%;position:absolute}.login-glow-one{background:#d6813514;width:165px;height:165px;top:9%;left:17%}.login-glow-two{background:#286b5c0f;width:220px;height:220px;bottom:7%;right:0}.login-intro,.login-panel{z-index:1;position:relative}.login-intro{gap:0;display:grid}.login-intro .brand-lockup{margin-bottom:clamp(66px,11vh,115px)}.login-intro h1{color:var(--ink);letter-spacing:-.065em;margin:15px 0 19px;font-size:clamp(38px,5.2vw,66px);line-height:1.08}.login-intro h1 em{color:var(--green-2);font-style:normal}.login-intro-copy p{max-width:480px;color:var(--muted);margin:0;font-size:15px;line-height:1.8}.login-feature-list{grid-template-columns:1fr 1fr;gap:18px;max-width:560px;margin-top:54px;display:grid}.login-feature-list>div{border-top:1px solid #1736301f;align-items:flex-start;gap:11px;padding-top:17px;display:flex}.feature-icon{width:30px;height:30px;color:var(--orange-dark);background:var(--orange-soft);border-radius:10px;flex:none;place-items:center;display:grid}.feature-icon svg{width:16px;height:16px}.login-feature-list div>span:last-child{gap:5px;display:grid}.login-feature-list small{color:var(--muted);font-size:10px;line-height:1.5}.panel{box-shadow:var(--shadow);background:#fffdf9eb;border:1px solid #17363014;border-radius:24px}.login-panel{width:100%;padding:31px 32px 27px}.login-panel-top{align-items:center;gap:10px;display:flex}.login-icon{width:36px;height:36px;color:var(--green-2);background:var(--green-3);border-radius:12px;place-items:center;display:grid}.login-icon svg{width:17px;height:17px}.login-panel h2{color:var(--ink);letter-spacing:-.045em;margin:22px 0 21px;font-size:26px}.login-panel .alert{width:auto;margin:0 0 12px}.login-panel .primary-button{margin-top:24px}.login-footnote{color:var(--muted);justify-content:center;align-items:center;gap:9px;margin-top:20px;font-size:10px;display:flex}.transition-shell{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f1eee6b8;place-items:center;min-height:100vh;padding:24px;display:grid;position:relative;overflow:hidden}.transition-shell:before{content:"";pointer-events:none;background:radial-gradient(circle at 50% 45%,#fffdf9eb 0 17%,#0000 50%);position:absolute;inset:-24%}.transition-orbit{pointer-events:none;border:1px solid #286b5c1a;border-radius:50%;position:absolute}.transition-orbit-one{width:min(760px,88vw);height:min(760px,88vw);transform:rotate(18deg)scaleY(.42)}.transition-orbit-two{border-color:#d681351c;width:min(520px,68vw);height:min(520px,68vw);transform:rotate(-24deg)scaleY(.42)}.transition-card{z-index:1;width:min(410px,100%);box-shadow:var(--shadow);text-align:center;background:#fffdf9e6;border:1px solid #17363014;border-radius:25px;padding:34px 32px 31px;position:relative}.transition-card .brand-lockup{text-align:left;justify-content:center}.transition-card .brand-logo{width:64px;height:64px}.transition-icon{width:72px;height:72px;color:var(--green-2);background:#eef7f0;border:1px solid #dceae1;border-radius:24px;place-items:center;margin:36px auto 23px;display:grid;position:relative}.transition-icon.offline{color:var(--orange-dark);background:#fcf0e4;border-color:#f0dfcf}.transition-icon svg{z-index:1;width:25px;height:25px;position:relative}.transition-spinner{border:2px solid #286b5c1a;border-top-color:var(--green-2);border-radius:28px;animation:1.2s linear infinite spin;position:absolute;inset:-7px}.transition-icon.offline .transition-spinner{border-top-color:var(--orange);animation-duration:1.8s}.transition-card h1{color:var(--ink);letter-spacing:-.05em;margin:13px 0 11px;font-size:25px}.transition-card p{color:var(--muted);margin:0 auto;font-size:12px;line-height:1.75}.transition-progress{justify-content:center;gap:6px;margin-top:25px;display:flex}.transition-progress span{background:var(--green-2);border-radius:50%;width:5px;height:5px;animation:1.1s ease-in-out infinite pulse}.transition-progress span:nth-child(2){animation-delay:.16s}.transition-progress span:nth-child(3){animation-delay:.32s}.transition-retry{width:100%;margin-top:23px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:.28;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.alert{border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:0 0 16px;padding:12px 15px;font-size:13px;display:flex}.alert.error{color:#7d251e;background:#fbe7e4}.alert.success{color:#185b43;background:#def3e8}.alert button{color:inherit;background:0 0;border:0;font-size:20px;line-height:1}.alert-layer{z-index:100;pointer-events:none;justify-content:center;display:flex;position:fixed;top:18px;left:24px;right:24px}.alert-layer .toast{pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #7d251e14;border-radius:16px;width:min(760px,100%);margin:0;padding:15px 17px;animation:.22s cubic-bezier(.22,1,.36,1) both toast-in;box-shadow:0 18px 45px #123f3829}.alert-layer .toast.success{border-color:#185b431a}.alert-layer .toast>span{overflow-wrap:anywhere;min-width:0}.alert-layer .toast button{border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.alert-layer .toast button:hover{background:#7d251e14}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modal-in{0%{opacity:0;transform:translateY(12px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:640px){.alert-layer{top:12px;left:12px;right:12px}.alert-layer .toast{border-radius:14px;padding:13px 14px}}.loading-card{width:100%;color:var(--muted);text-align:center;box-shadow:var(--shadow-soft);background:#fffdf9db;border:1px solid #17363012;border-radius:22px;margin-top:20px;padding:44px 28px}.sale-layout,.content-grid,.settings-layout{align-items:start;gap:22px;margin-top:24px;display:grid}.sale-layout{grid-template-columns:minmax(0,1fr) minmax(350px,385px)}.content-grid,.settings-layout{grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr)}.catalog-panel,.panel,.cart-panel{background:var(--paper);box-shadow:var(--shadow);border:1px solid #17363014;border-radius:24px}.catalog-panel,.panel{padding:28px}.settings-page,.product-registration-page{gap:18px;margin-top:24px;display:grid}.settings-page-heading,.product-registration-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.settings-page-heading p,.product-registration-heading p{max-width:720px;color:var(--muted);margin:10px 0 0;font-size:13px;line-height:1.65}.settings-subnav{box-shadow:var(--shadow-soft);scrollbar-width:thin;background:#fffdf9b8;border:1px solid #17363014;border-radius:16px;gap:8px;padding:7px;display:flex;overflow-x:auto}.settings-subnav button{min-height:44px;color:var(--muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:11px;flex:none;padding:0 17px;font-weight:800}.settings-subnav button:hover:not(.active){color:var(--green-2);background:var(--green-3)}.settings-subnav button.active{color:var(--green);background:var(--green-3);border-color:#286b5c24;box-shadow:0 5px 12px #286b5c14}.product-registration-subnav{box-shadow:var(--shadow-soft);scrollbar-width:thin;background:#fffdf9b8;border:1px solid #17363014;border-radius:16px;gap:8px;padding:7px;display:flex;overflow-x:auto}.product-registration-subnav button{min-height:44px;color:var(--muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:11px;flex:none;padding:0 17px;font-weight:800}.product-registration-subnav button:hover:not(.active){color:var(--green-2);background:var(--green-3)}.product-registration-subnav button.active{color:var(--green);background:var(--green-3);border-color:#286b5c24;box-shadow:0 5px 12px #286b5c14}.sale-product-subnav{box-shadow:var(--shadow-soft);scrollbar-width:thin;background:#fffdf9b8;border:1px solid #17363014;border-radius:14px;gap:8px;margin:19px 0 0;padding:6px;display:flex;overflow-x:auto}.sale-product-subnav button{min-height:43px;color:var(--muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:10px;flex:1 1 0;padding:0 18px;font-weight:800}.sale-product-subnav button:hover:not(.active){color:var(--green-2);background:var(--green-3)}.sale-product-subnav button.active{color:var(--green);background:var(--green-3);border-color:#286b5c24;box-shadow:0 5px 12px #286b5c14}.settings-section-panel{width:100%}.product-registration-layout{grid-template-columns:minmax(0,1.18fr) minmax(330px,.82fr);align-items:start;gap:18px;display:grid}.product-catalog-panel,.product-form-panel{min-width:0}.product-form-panel{position:static}.product-registration-form{gap:0;display:grid}.purchase-lots-panel{border-top:1px solid #e1e9e2;margin-top:22px;padding-top:21px}.purchase-lots-panel h3{color:var(--ink);margin:0 0 7px;font-size:1.04rem}.purchase-lots-panel>p{color:var(--muted);margin:0 0 16px;font-size:.82rem;line-height:1.6}.purchase-lot-form{gap:11px;display:grid}.purchase-lot-form label{color:var(--ink-soft);gap:5px;font-size:.83rem;font-weight:600;display:grid}.purchase-lot-form input,.purchase-lot-form select{width:100%}.purchase-lot-form .purchase-lot-hint{color:var(--muted);margin:0;font-size:.75rem;line-height:1.6}.purchase-lot-form .primary-button{width:100%}.purchase-lot-error,.purchase-lot-notice{margin:11px 0 0;font-size:.8rem}.purchase-lot-error{color:#a33620}.purchase-lot-notice{color:var(--green-2)}.purchase-lot-history{color:var(--ink);justify-content:space-between;gap:8px;margin-top:18px;font-size:.8rem;display:flex}.purchase-lot-history span{color:var(--muted);text-align:right}.purchase-lot-list{gap:8px;max-height:220px;margin-top:10px;display:grid;overflow:auto}.purchase-lot-list>div{background:#f1f6f1;border-radius:10px;gap:3px;padding:10px 12px;font-size:.76rem;display:grid}.purchase-lot-list>div strong{color:var(--green-2)}.purchase-lot-list>div small{color:var(--muted)}.purchase-lot-list>div button{width:fit-content;min-height:30px;margin-top:4px;padding:4px 9px;font-size:.72rem}.purchase-lot-completion{background:#f8fbf7;border:1px solid #dce8dd;border-radius:14px;margin-top:15px;padding:15px}.purchase-lot-completion h4{color:var(--ink);margin:0;font-size:.9rem}.purchase-lot-completion>p{color:var(--muted);margin:-4px 0 0;font-size:.75rem;line-height:1.5}.purchase-lot-completion-actions{gap:8px;display:flex}.purchase-lot-completion-actions .primary-button,.purchase-lot-completion-actions .secondary-button{flex:1;width:auto}.cart-panel{padding:23px;position:sticky;top:0;overflow:visible}.cart-panel:before{content:"";background:linear-gradient(90deg, var(--orange), #e3ab70 56%, #e3ab7000);height:4px;position:absolute;top:0;left:0;right:0}.section-heading,.cart-title{justify-content:space-between;align-items:center;gap:20px;display:flex}.section-heading h1,.panel h1,.panel h2,.cart-title h2{letter-spacing:-.045em;margin:5px 0 0}.count-chip{color:var(--green-2);background:var(--green-3);white-space:nowrap;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:800}.setup-note{border-left:3px solid var(--orange);color:#76502f;background:#fff5e9;border-radius:4px 10px 10px 4px;margin-top:20px;padding:11px 14px;font-size:12px;line-height:1.5}.product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:23px;display:grid}.product-card{text-align:left;border:1px solid var(--line);min-height:180px;color:var(--ink);background:linear-gradient(145deg,#fff,#f7fbf8);border-radius:18px;flex-direction:column;align-items:flex-start;padding:18px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden}.product-card:before{content:"";border:6px solid #cde3d7;border-top-color:var(--orange);border-radius:50%;width:33px;height:33px;margin-bottom:17px;box-shadow:inset 0 0 0 4px #f4faf5}.product-card:after{content:"";border:1px solid #286b5c17;border-radius:50%;width:125px;height:125px;position:absolute;bottom:-53px;right:-35px;box-shadow:0 0 0 18px #286b5c06}.product-card:hover:not(:disabled){border-color:#8cb9ab;transform:translateY(-3px);box-shadow:0 14px 28px #143d351c}.product-card.disabled{opacity:.55}.product-brand{color:var(--green-2);font-size:11px;font-weight:800}.product-card strong{letter-spacing:-.035em;margin-top:9px;font-size:24px}.product-price{color:var(--muted);margin-top:6px;font-size:13px}.product-action{color:var(--orange-dark);margin-top:auto;font-size:11px;font-weight:800}label{color:var(--muted);gap:7px;margin-top:16px;font-size:11px;font-weight:800;display:grid}input,select,textarea{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);background:#fff;border-radius:11px;outline:none;padding:10px 12px;transition:border .16s,box-shadow .16s}textarea{resize:vertical;min-height:82px}input::placeholder,textarea::placeholder{color:#aab8b2}input:focus,select:focus,textarea:focus{border-color:var(--green-2);box-shadow:0 0 0 3px #2564561a}input:disabled{color:var(--muted);background:#f4f6f3}.customer-picker-field{color:var(--muted);gap:7px;margin-top:16px;font-size:11px;font-weight:800;display:grid;position:relative}.customer-picker-trigger{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);text-align:left;background:#fff;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;transition:border .16s,box-shadow .16s;display:flex}.customer-picker-trigger:hover:not(:disabled),.customer-picker-trigger.is-open{border-color:var(--green-2);box-shadow:0 0 0 3px #2564561a}.customer-picker-trigger:disabled{color:var(--muted);background:#f4f6f3}.customer-picker-trigger .placeholder{color:var(--ink)}.customer-picker-chevron{color:var(--green-2);flex:none;font-size:23px;font-weight:500;line-height:.7;transition:transform .16s;transform:translateY(-2px)}.customer-picker-trigger.is-open .customer-picker-chevron{transform:rotate(180deg)translateY(2px)}.customer-picker-menu{z-index:20;border:1px solid var(--line);background:var(--paper);border-radius:14px;padding:10px;position:absolute;top:calc(100% + 7px);left:0;right:0;box-shadow:0 18px 38px #123f382b}.customer-picker-search{min-height:43px}.customer-picker-options{overscroll-behavior:contain;max-height:min(300px,42vh);margin-top:8px;overflow-y:auto}.customer-picker-option{width:100%;min-height:56px;color:var(--ink);text-align:left;background:0 0;border:0;border-radius:9px;gap:3px;padding:9px 10px;display:grid}.customer-picker-option:hover,.customer-picker-option.selected{background:var(--green-3)}.customer-picker-option strong{font-size:13px;font-weight:800}.customer-picker-option small{color:var(--muted);font-size:10px;font-weight:600}.customer-picker-add-option{width:100%;min-height:58px;color:var(--green-2);text-align:left;background:#dceee76b;border:1px solid #277b6c2e;border-radius:10px;align-items:center;gap:10px;padding:9px 10px;display:flex}.customer-picker-add-option:hover,.customer-picker-add-option:focus-visible{border-color:var(--green-2);background:var(--green-3)}.customer-picker-add-option>span:last-child{gap:3px;display:grid}.customer-picker-add-option strong{font-size:13px;font-weight:800}.customer-picker-add-option small{color:var(--muted);font-size:10px;font-weight:600}.customer-picker-add-icon{color:#fff;background:var(--green-2);border-radius:8px;flex:none;place-items:center;width:25px;height:25px;font-size:19px;font-weight:500;line-height:1;display:grid}.customer-picker-empty{color:var(--muted);text-align:center;margin:16px 10px;font-size:11px;font-weight:600}.cart-lines{border-block:1px solid var(--line);min-height:120px;margin:17px 0}.cart-line{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:center;gap:10px;padding:14px 0;display:flex}.cart-line:last-child{border-bottom:0}.cart-line>div:first-child{gap:4px;display:grid}.cart-line span{color:var(--muted);font-size:10px}.stepper{align-items:center;gap:9px;display:flex}.stepper button{width:31px;height:31px;color:var(--green);background:var(--green-3);border:0;border-radius:9px;font-size:19px;line-height:1}.stepper button:hover{color:#fff;background:var(--green-2)}.empty-state{text-align:center;min-height:118px;color:var(--muted);place-content:center;gap:4px;font-size:12px;display:grid}.empty-state strong{color:var(--ink)}.two-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.totals{gap:9px;margin-top:20px;display:grid}.totals div{justify-content:space-between;gap:12px;font-size:12px;display:flex}.totals span{color:var(--muted)}.grand-total{border-top:1px solid var(--line);align-items:baseline;margin-top:6px;padding-top:14px}.grand-total strong{color:var(--orange-dark);letter-spacing:-.04em;font-size:25px}.primary-button,.secondary-button{border-radius:12px;min-height:46px;padding:0 17px;font-weight:800}.primary-button{color:#fff;background:linear-gradient(135deg, #df873b, var(--orange));border:0;width:100%;margin-top:18px;transition:transform .16s,box-shadow .16s,background .16s;box-shadow:0 10px 21px #d8782b33}.primary-button:hover:not(:disabled){background:linear-gradient(135deg, #d47b2e, var(--orange-dark));transform:translateY(-2px);box-shadow:0 13px 24px #ae5d2038}.primary-button:disabled{opacity:.55}.secondary-button{border:1px solid var(--line);color:var(--green);background:#fff}.secondary-button:hover:not(:disabled){background:var(--green-3);border-color:#9ebcaf}.text-button,.profile-menu-button{color:var(--orange-dark);background:0 0;border:0;font-weight:800}.text-button:hover,.profile-menu-button:hover{color:var(--green-2)}.text-button:disabled{color:var(--muted);opacity:.45}.logout-button{width:40px;height:40px;color:var(--orange-dark);background:#fffdf9ad;border:1px solid #c86a2b2e;border-radius:12px;place-items:center;padding:0;transition:color .18s,border-color .18s,background .18s,transform .18s;display:grid;box-shadow:0 7px 18px #c86a2b12}.logout-button svg{width:19px;height:19px}.logout-button:hover{color:var(--green-2);background:var(--green-3);border-color:#277b6c40;transform:translateY(-1px)}.accounting-note{color:var(--muted);margin:11px 3px 0;font-size:10px;line-height:1.55}.wide-panel{width:100%;margin-top:24px}.customer-list,.bill-list{gap:11px;margin-top:20px;display:grid}.list-pagination{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding-top:16px;display:flex}.list-pagination-summary{color:var(--muted);flex-wrap:wrap;align-items:center;gap:9px 16px;font-size:11px;display:flex}.list-pagination-summary label{color:var(--muted);align-items:center;gap:8px;margin:0;font-size:11px;display:inline-flex}.list-pagination-summary select{border-radius:10px;width:auto;min-width:142px;min-height:38px;margin:0;padding:7px 10px;font-size:11px}.list-pagination-controls{color:var(--muted);white-space:nowrap;flex-wrap:wrap;align-items:center;gap:8px;font-size:11px;font-weight:800;display:flex}.list-pagination-controls .secondary-button{min-height:38px;padding-inline:12px;font-size:11px}.search-field-select,.search-query-field{min-width:0;color:var(--muted);gap:7px;margin:0;font-size:11px;font-weight:800;display:grid}.search-field-select select,.search-query-field input{width:100%;min-width:0;min-height:48px}.customer-search{border:1px solid var(--line);background:#f8f6f0b8;border-radius:16px;grid-template-columns:minmax(155px,.35fr) minmax(0,1fr);align-items:end;gap:12px;margin-top:20px;padding:15px;display:grid}.customer-search-actions{grid-column:1/-1;align-items:end;gap:8px;display:flex}.customer-search-actions button{white-space:nowrap;min-height:48px;padding-inline:16px}.bill-search{border:1px solid var(--line);background:#f8f6f0b8;border-radius:16px;grid-template-columns:minmax(155px,.35fr) minmax(0,1fr);align-items:end;gap:12px;margin-top:20px;padding:15px;display:grid}.bill-search-actions{grid-column:1/-1;align-items:end;gap:8px;display:flex}.bill-search-actions button{white-space:nowrap;min-height:48px;padding-inline:16px}.customer-card,.bill-row{border:1px solid var(--line);background:#fff;border-radius:15px;justify-content:space-between;align-items:center;gap:18px;padding:15px 17px;display:flex}.customer-card-main{width:100%;color:inherit;text-align:left;appearance:none;transition:border-color .18s,box-shadow .18s,transform .18s}.customer-card-main:hover{box-shadow:var(--shadow-soft);border-color:#9ebcaf;transform:translateY(-2px)}.customer-card>div:first-child,.bill-row>div{gap:4px;display:grid}.customer-card span,.bill-row span,.customer-card small{color:var(--muted);font-size:11px}.customer-card small{flex:1}.customer-open-hint{white-space:nowrap;font-weight:800;color:var(--orange-dark)!important;font-size:11px!important}.customer-registry-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.customer-registry-page{min-width:0}.customer-registry-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.customer-registration-trigger{white-space:nowrap;width:auto;min-width:164px;margin-top:0}.customer-registry-heading p{max-width:620px;color:var(--muted);margin:10px 0 0;font-size:13px;line-height:1.6}.customer-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:19px;display:grid}.customer-stats>div{background:linear-gradient(135deg,#f2f8f3,#fffdf9);border:1px solid #286b5c1a;border-radius:14px;min-width:0;padding:12px 13px}.customer-stats strong{overflow-wrap:anywhere;color:var(--green-2);font-family:var(--font-display);font-size:20px;line-height:1.2;display:block}.customer-stats span{color:var(--muted);margin-top:4px;font-size:11px;display:block}.points{text-align:right}.points b{color:var(--orange-dark);font-size:23px}.points span{display:block}.customer-card-foot{flex:1;align-items:center;gap:9px;min-width:0;display:flex}.customer-location-badge,.customer-location-status{width:fit-content;color:var(--muted);white-space:nowrap;background:#f1f3ef;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.customer-card .customer-location-badge.located,.customer-location-status.located{color:var(--green-2);background:var(--green-3)}.bill-row>div:nth-child(2){text-align:right;margin-left:auto}.bill-row>div:nth-child(2) b{color:var(--muted);font-size:11px}.bill-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.bill-actions .danger-button,.bill-actions .secondary-button{min-height:40px;padding:0 13px}.form-panel h2{margin-bottom:20px}.profile-panel{grid-column:1/-1}.profile-panel h1{margin-bottom:0}.form-hint,.profile-help-panel p{color:var(--muted);font-size:13px;line-height:1.65}.profile-help-panel{min-height:160px}.catalog-order-hint{color:var(--muted);margin:12px 1px 0;font-size:11px;line-height:1.55}.product-search-row{flex-direction:column;align-items:flex-start;gap:9px;margin:16px 0 12px;display:flex}.product-search-controls{grid-template-columns:minmax(125px,.32fr) minmax(0,1fr) auto;align-items:end;gap:9px;width:100%;min-width:0;display:grid}.product-search-controls .search-field-select{align-self:end}.product-search-controls .search-field-select select{min-height:54px}.product-search-field{border:1px solid var(--line);background:#fff;border-radius:14px;flex:auto;align-items:center;gap:12px;min-width:0;min-height:54px;padding:0 16px;display:flex}.product-search-field>svg{width:22px;height:22px;color:var(--green-2);pointer-events:none;flex:0 0 22px;display:block}.product-search-field input{width:100%;min-width:0;min-height:52px;color:var(--ink);font:inherit;background:0 0;border:0;border-radius:0;outline:none;flex:auto;padding:0;font-size:16px}.product-search-field input::placeholder{color:#8b9892}.product-search-field:focus-within{border-color:var(--green-2)}.product-search-field input:focus-visible{outline:none}.product-search-clear{border:1px solid var(--line);min-height:44px;color:var(--green);background:#fff;border-radius:12px;padding:0 14px;font-size:12px;font-weight:800}.product-search-clear:hover{background:var(--green-3);border-color:#9ebcaf}.product-search-count{max-width:100%;min-height:36px;color:var(--green-2);white-space:normal;background:#f0f7f2;border:1px solid #dcebe2;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:14px;font-weight:600;line-height:1.35;display:inline-flex}.product-search-count strong{color:var(--green);font-size:16px;font-weight:800}.product-search-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:13px;grid-column:1/-1;margin:0;padding:26px 14px;font-size:13px;line-height:1.6}.product-card[draggable=true]{cursor:grab}.product-card[draggable=true]:active{cursor:grabbing}.product-card.is-dragging,.compact-product-card.is-dragging{opacity:.52;border-style:dashed}.compact-products{overscroll-behavior:contain;scrollbar-gutter:stable;grid-template-columns:1fr 1fr;gap:9px;max-height:min(470px,56vh);margin-top:18px;padding-right:4px;display:grid;overflow-y:auto}.compact-product-card{min-width:0;position:relative}.compact-product-card[draggable=true]{cursor:grab}.compact-product-card[draggable=true]:active{cursor:grabbing}.product-drag-handle{z-index:1;color:var(--muted);pointer-events:none;font-size:16px;line-height:1;position:absolute;top:11px;left:9px}.compact-products .compact-product-select{text-align:left;border:1px solid var(--line);width:100%;min-height:78px;color:var(--ink);background:#fff;border-radius:12px;gap:4px;padding:12px 58px 32px 28px;display:grid}.compact-products .compact-product-select:hover{background:#f6fbf7;border-color:#9ebcaf}.compact-product-delete{width:28px;min-height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0;font-size:22px;line-height:1;position:absolute;top:7px;right:7px}.compact-product-delete:hover{color:var(--danger);background:#fff0ed}.compact-product-delete:disabled{cursor:wait;opacity:.55}.compact-product-order-actions{z-index:2;gap:4px;display:flex;position:absolute;bottom:7px;right:7px}.compact-product-move{border:1px solid var(--line);width:27px;min-height:24px;color:var(--green);background:var(--paper);border-radius:7px;padding:0;font-size:15px;line-height:1}.compact-product-move:hover:not(:disabled){background:var(--green-3);border-color:#9ebcaf}.compact-product-move:disabled{cursor:not-allowed;opacity:.35}.compact-products small{color:var(--muted)}.catalog-heading h2{margin-top:5px}.inline-form{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.checkbox{grid-template-columns:auto 1fr;align-items:center;display:flex}.checkbox input{width:20px;min-height:20px}.button-row{align-items:center;gap:10px;display:flex}.button-row .primary-button,.button-row .secondary-button{margin-top:18px}.danger-button{min-height:46px;color:var(--danger);background:#fff7f5;border:1px solid #e6b9b3;border-radius:12px;padding:0 17px;font-weight:800}.danger-button:hover:not(:disabled){border-color:var(--danger);background:#fbe7e4}.location-fields{border-top:1px solid var(--line);margin-top:17px;padding-top:15px}.location-heading{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:800;display:flex}.location-button{min-height:36px;padding:0 11px;font-size:11px}.location-fields .two-fields{margin-top:1px}.map-location-search{background:#fffdf9f5;border-bottom:1px solid #17363012;padding:13px 13px 10px}.map-search-label{color:var(--muted);margin:0;font-size:11px;font-weight:800}.map-search-control{align-items:stretch;gap:8px;margin-top:7px;display:flex}.map-search-control input{min-width:0;min-height:43px}.map-search-button{flex:none;width:auto;min-height:43px;margin:0;padding-inline:14px}.map-search-hint{margin:7px 1px 0;font-size:10px}.map-search-status{color:var(--green-2);margin:8px 1px 0;font-size:11px;font-weight:700}.map-search-error{color:var(--danger);margin:8px 1px 0;font-size:11px;font-weight:700}.map-search-empty{color:var(--muted);margin:8px 1px 0;font-size:11px}.map-search-results{gap:6px;max-height:190px;margin-top:9px;display:grid;overflow-y:auto}.map-search-result{border:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:#fff;border-radius:10px;gap:3px;padding:9px 10px;display:grid}.map-search-result:hover,.map-search-result:focus-visible,.map-search-result.is-active{background:var(--green-3);border-color:#9ebcaf}.map-search-result strong{font-size:12px}.map-search-result span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.map-search-result small{color:var(--green-2);font-size:10px;font-weight:700}.customer-map-canvas{min-height:0;position:relative}.location-actions-group{margin-top:13px}.location-actions{flex-wrap:wrap;gap:8px;display:flex}.location-action{justify-content:center;align-items:center;width:auto;min-height:40px;margin:0;padding-inline:13px;font-size:11px;text-decoration:none;display:inline-flex}.location-actions .primary-button{color:#fff}.location-share-status{color:var(--green-2);margin:7px 1px 0;font-size:11px;font-weight:700}.system-modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0a1f1b94;place-items:center;padding:clamp(16px,4vw,32px);display:grid;position:fixed;inset:0}.system-modal{overscroll-behavior:contain;background:var(--paper);border:1px solid #1736301f;border-radius:26px;width:min(640px,100%);max-height:min(820px,100dvh - 32px);animation:.24s cubic-bezier(.22,1,.36,1) both modal-in;overflow-y:auto;box-shadow:0 32px 90px #04151152,inset 0 2px #ffffffb3}.system-modal-body{padding:0 25px 25px}.customer-profile-modal{width:min(680px,100%)}.customer-registration-modal{width:min(720px,100%)}.setup-modal-backdrop{z-index:110;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0a1f1b94;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.setup-modal{background:var(--paper);border:1px solid #1736301f;border-radius:24px;width:min(540px,100%);padding:31px;animation:.2s both toast-in;box-shadow:0 30px 80px #0415114d}.setup-modal-mark{background:var(--green-3);border-radius:14px;place-items:center;width:44px;height:44px;margin-bottom:20px;display:grid}.setup-modal-mark .brand-logo-sm{width:30px;height:30px}.setup-modal h2{color:var(--ink);letter-spacing:-.045em;margin:7px 0 13px;font-size:27px}.setup-modal p{color:var(--muted);margin:0;line-height:1.7}.setup-modal ul{color:var(--ink);gap:8px;margin:20px 0 25px;padding-left:19px;font-size:12px;line-height:1.55;display:grid}.setup-modal .primary-button{width:100%;margin-top:0}.system-modal-header{border-bottom:1px solid var(--line);background:linear-gradient(#ffffffb8,#fffdf9f5);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 25px 18px;display:flex}.system-modal-header h2{letter-spacing:-.045em;margin:6px 0 0;font-size:27px}.customer-profile-header{align-items:flex-start}.customer-profile-identity{align-items:center;gap:13px;min-width:0;display:flex}.customer-profile-avatar{color:#fff;background:linear-gradient(135deg, var(--green-2), var(--green));width:48px;height:48px;font-family:var(--font-display);border-radius:15px;flex:none;place-items:center;font-size:22px;font-weight:700;display:grid;box-shadow:0 9px 20px #286b5c33}.customer-profile-subtitle{color:var(--muted);margin-top:5px;font-size:11px;display:block}.modal-close{width:38px;height:38px;color:var(--muted);background:#f8f6f0e0;border:1px solid #1736301a;border-radius:12px;flex:none;place-items:center;padding:0;font-size:24px;line-height:1;transition:color .16s,background .16s,border-color .16s,transform .16s;display:grid}.modal-close:hover:not(:disabled){color:var(--danger);background:#fbe7e4;border-color:#a43c3333;transform:translateY(-1px)}.modal-close:focus-visible{outline-offset:2px;outline:3px solid #d681354d}.archive-confirm-modal{max-width:520px}.quick-customer-modal{width:min(520px,100%)}.quick-customer-hint{margin:0}.quick-customer-form{margin-top:6px}.customer-registration-hint{margin:0}.customer-registration-form{gap:0;display:grid}.archive-confirm-message{color:var(--ink);margin:0;line-height:1.7}.archive-confirm-message strong{color:var(--green-2)}.customer-detail-grid{grid-template-columns:1fr 1fr;gap:17px 22px;padding:22px 0 7px;display:grid}.customer-detail-grid>div{gap:5px;min-width:0;display:grid}.customer-detail-grid span{color:var(--muted);font-size:11px;font-weight:800}.customer-detail-grid strong{overflow-wrap:anywhere;font-size:14px;line-height:1.55}.detail-wide{grid-column:1/-1}.customer-profile-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:19px;display:grid}.customer-summary-stat,.customer-summary-contact{background:var(--paper-2);border-radius:13px;min-width:0;padding:12px}.customer-summary-stat span,.customer-summary-contact span{color:var(--muted);font-size:10px;font-weight:800;display:block}.customer-summary-stat strong,.customer-summary-contact strong,.customer-summary-contact a{overflow-wrap:anywhere;color:var(--ink);margin-top:6px;font-size:14px;font-weight:800;text-decoration:none;display:block}.customer-cylinder-balance{background:linear-gradient(135deg,#fff4d6,#fffdf7);border:2px solid #d8782b6b;box-shadow:0 8px 18px #d8782b1a}.customer-cylinder-balance span{color:var(--orange-dark)}.customer-cylinder-balance strong{color:var(--orange-dark);font-size:20px}.customer-summary-stat strong{color:var(--orange-dark)}.customer-summary-contact a:hover{color:var(--green-2);text-decoration:underline}.customer-location-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:17px}.customer-location-heading{justify-content:space-between;align-items:center;gap:14px;display:flex}.customer-location-heading h3{color:var(--ink);letter-spacing:-.035em;margin:5px 0 0;font-size:18px}.customer-coordinate-line{color:var(--muted);margin:12px 0 0;font-size:11px}.customer-coordinate-line strong{color:var(--ink);font-size:12px}.customer-location-empty{color:var(--muted);background:#f7faf6;border:1px dashed #cbd8cd;border-radius:13px;gap:5px;margin-top:14px;padding:16px;font-size:12px;line-height:1.55;display:grid}.customer-location-empty strong{color:var(--ink)}.customer-record-meta{color:var(--muted);margin:16px 0 0;font-size:10px;line-height:1.5}.map-link{width:fit-content;color:var(--green-2);font-size:12px;font-weight:800;text-decoration:none}.map-link:hover{color:var(--orange-dark);text-decoration:underline}.customer-map{border:1px solid var(--line);background:#e9efeb;border-radius:15px;margin:14px 0 4px;overflow:hidden;box-shadow:inset 0 1px #ffffffbf}.customer-map-picker{width:100%;position:relative}.customer-map-surface{border:1px solid var(--line);background:#e9efeb;border-radius:15px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffbf}.customer-map .customer-map-surface{border-radius:inherit;box-shadow:none;border:0}.customer-map-leaflet{border-radius:inherit;width:100%;height:245px}.customer-map-leaflet .leaflet-container{width:100%;height:100%;font-family:inherit}.customer-map-leaflet.is-passive,.customer-map-leaflet.is-passive .leaflet-container{touch-action:pan-y pinch-zoom}.map-expand-button{z-index:500;min-height:38px;color:var(--green);background:#fffdf9f0;border:1px solid #17363024;border-radius:10px;padding:0 13px;font-size:11px;font-weight:800;position:absolute;top:12px;right:12px;box-shadow:0 5px 14px #123f3829}.map-expand-button:hover{color:#fff;background:var(--green-2)}.customer-map-picker.is-expanded{z-index:140;height:100dvh;min-height:0;max-height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0a1f1bb3;display:grid;position:fixed;inset:0;overflow:hidden}.customer-map-picker-backdrop{pointer-events:none;position:absolute;inset:0}.customer-map-picker.is-expanded .customer-map-surface{z-index:1;border:0;border-radius:18px;flex-direction:column;width:100%;height:100%;min-height:0;max-height:100%;display:flex;box-shadow:0 30px 80px #0a1f1b47}.customer-map-picker.is-expanded .customer-map-canvas{flex:1;display:flex}.customer-map-header{border-bottom:1px solid var(--line);background:var(--paper);flex:none;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px 16px;display:flex}.customer-map-header h2{color:var(--ink);letter-spacing:-.045em;margin:5px 0 0;font-size:21px}.customer-map-picker.is-expanded .customer-map-leaflet{border-radius:0;flex:1;height:auto;min-height:0}.customer-map-picker.is-expanded .leaflet-container{touch-action:none;-webkit-user-select:none;user-select:none}.customer-map-expanded-hint{padding:10px 16px max(10px, env(safe-area-inset-bottom));background:var(--paper);flex:none;margin:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.location-editor-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:13px;margin-top:1px;display:grid}.customer-registration-form .location-editor-layout{grid-template-columns:1fr}.location-inputs{align-content:start;gap:12px;display:grid}.location-inputs label{margin-top:0}.map-hint{color:var(--muted);margin:6px 2px 0;font-size:10px;line-height:1.45}.customer-edit-form{padding-top:2px}.modal-actions{justify-content:flex-end;margin-top:7px}.modal-actions .primary-button{width:auto;min-width:155px;margin-top:18px}.modal-actions .secondary-button,.modal-actions .danger-button{margin-top:18px}.receipt-viewer-backdrop{z-index:120;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0a1f1bad;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.receipt-viewer{background:var(--paper-2);border:1px solid #fff3;border-radius:20px;flex-direction:column;width:min(1120px,100%);height:min(920px,100%);min-height:0;animation:.2s both toast-in;display:flex;overflow:hidden;box-shadow:0 32px 90px #04151161}.receipt-viewer-header{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;gap:18px;padding:15px 18px;display:flex}.receipt-viewer-heading{min-width:0}.receipt-viewer-heading h2{color:var(--ink);letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;margin:5px 0 0;font-size:20px;overflow:hidden}.receipt-viewer-actions{flex:none;gap:8px;display:flex}.receipt-viewer-action{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;min-height:40px;padding:0 13px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.receipt-viewer-action.primary-button{width:auto;margin:0}.receipt-viewer-action.secondary-button{background:#fff}.receipt-viewer-close{color:#fff;background:var(--danger);border:0;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;min-height:40px;padding:0;transition:transform .16s,background .16s,box-shadow .16s;display:inline-grid;box-shadow:0 5px 12px #a43c3338}.receipt-viewer-close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;width:20px;height:20px}.receipt-viewer-close:hover{background:#872f29;transform:translateY(-1px);box-shadow:0 7px 16px #a43c334d}.receipt-viewer-close:focus-visible{outline-offset:3px;outline:3px solid #a43c334d}.receipt-viewer-document{overscroll-behavior:contain;background:#d9dfda;flex:1;min-height:0;position:relative;overflow:hidden}.receipt-viewer-frame{z-index:0;background:#727b77;border:0;border-radius:10px;width:calc(100% - 28px);height:calc(100% - 28px);min-height:0;display:block;position:absolute;inset:14px;box-shadow:0 9px 24px #123f3824}.receipt-pdf-surface{z-index:1;overscroll-behavior:contain;opacity:0;pointer-events:none;visibility:hidden;background:#d9dfda;transition:opacity .18s;position:absolute;inset:14px;overflow:auto}.receipt-pdf-surface-loading,.receipt-pdf-surface-ready{opacity:1;pointer-events:auto;visibility:visible}.receipt-pdf-pages{align-content:start;justify-items:center;gap:12px;min-height:100%;padding:16px 12px;display:grid}.receipt-pdf-page-wrapper{justify-content:center;width:100%;display:flex}.receipt-pdf-page{background:#fff;max-width:100%;height:auto;display:block;box-shadow:0 9px 24px #123f3824}.receipt-pdf-status{color:var(--muted);background:#d9dfdaf5;place-items:center;font-size:13px;font-weight:800;display:grid;position:absolute;inset:0}.receipt-viewer-footer{min-height:42px;color:var(--muted);background:var(--paper);justify-content:space-between;align-items:center;gap:12px;padding:9px 17px;font-size:11px;line-height:1.45;display:flex}.receipt-viewer-error{color:var(--danger);text-align:right;font-weight:800}footer{width:100%;color:var(--muted);text-align:center;padding:27px 0 5px;font-size:10px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #d681354d}@media (max-width:1120px){.app-frame{--sidebar-width:220px;grid-template-columns:220px minmax(0,1fr)}.topbar,.workspace-scroll{width:min(100% - 40px,1320px)}.sale-layout{grid-template-columns:minmax(0,1fr) minmax(320px,360px)}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:860px){.app-frame{display:block}.sidebar{z-index:auto;width:auto;height:auto;min-height:0;max-height:none;padding:13px 16px 15px;display:block;position:relative;left:auto;overflow:visible}.sidebar:after,.sidebar-section-label,.sidebar-bottom{display:none}.sidebar .brand-lockup{padding:0}.sidebar .brand-logo-sm{width:38px;height:38px}.sidebar .tabs{gap:6px;margin-top:14px;display:flex;overflow-x:auto}.sidebar .tabs button{flex:none;width:auto;min-height:41px;padding:0 12px}.sidebar .tabs button.active{box-shadow:inset 0 -3px #dfa06a}.sidebar .nav-arrow,.sidebar-toggle{display:none}.workspace{min-height:auto}.topbar{min-height:78px}.topbar-context{display:none}.mobile-brand{display:flex}.topbar-actions{margin-left:auto}.topbar-profile b{display:none}.sale-layout,.content-grid,.settings-layout{grid-template-columns:1fr}.cart-panel{position:static}.profile-panel{grid-column:auto}}@media (max-width:640px){.login-shell{grid-template-columns:1fr;gap:35px;width:min(100% - 32px,520px);padding:34px 0}.login-shell:before,.login-glow{display:none}.login-intro .brand-lockup{margin-bottom:47px}.login-intro h1{font-size:39px}.login-intro-copy p{font-size:13px}.login-feature-list{margin-top:30px}.login-feature-list small{display:none}.login-panel{padding:24px 20px 22px}.topbar,.workspace-scroll{width:calc(100% - 24px)}.topbar{min-height:68px}.live-status{padding:7px 9px}.topbar-actions{gap:8px}.logout-button{border-radius:11px;width:36px;height:36px}.topbar-profile{padding:0}.catalog-panel,.panel,.cart-panel{border-radius:19px;padding:19px}.product-grid,.compact-products{grid-template-columns:1fr 1fr;gap:9px}.product-search-row,.product-search-controls{gap:8px}.product-search-field{gap:10px;padding:0 13px}.product-card{min-height:159px;padding:14px}.product-card strong{font-size:21px}.section-heading{align-items:flex-start}.section-heading h1{font-size:26px}.count-chip{text-align:center;white-space:normal;max-width:94px}.two-fields{grid-template-columns:1fr;gap:0}.customer-card{flex-wrap:wrap;align-items:flex-start}.customer-card small{flex-basis:100%}.customer-open-hint{margin-left:auto}.bill-row{flex-wrap:wrap;align-items:flex-start}.bill-row>div:nth-child(2){text-align:left;margin-left:0}.bill-actions,.bill-actions .secondary-button,.bill-actions .danger-button{width:100%}.list-pagination{flex-direction:column;align-items:stretch}.list-pagination-controls{justify-content:space-between}.system-modal-backdrop{padding:max(16px, env(safe-area-inset-top)) 12px max(16px, env(safe-area-inset-bottom));place-items:center}.system-modal{border-radius:21px;max-height:calc(100dvh - 32px)}.system-modal-header{padding:19px 18px 16px}.system-modal-body{padding:0 18px 20px}.system-modal-header h2{font-size:24px}.receipt-viewer-backdrop{place-items:stretch stretch;padding:0}.receipt-viewer{border:0;border-radius:0;width:100%;height:100dvh}.receipt-viewer-header{padding:max(12px, env(safe-area-inset-top)) 12px 12px;align-items:flex-start}.receipt-viewer-heading h2{font-size:17px}.receipt-viewer-actions{gap:5px}.receipt-viewer-action{min-height:38px;padding:0 9px;font-size:11px}.receipt-viewer-close{flex-basis:38px;width:38px;height:38px;min-height:38px}.receipt-viewer-frame{border-radius:7px;width:calc(100% - 16px);height:calc(100% - 16px);inset:8px}.receipt-pdf-surface{inset:8px}.receipt-pdf-pages{gap:9px;padding:10px 7px}.receipt-viewer-footer{padding:8px 12px max(8px, env(safe-area-inset-bottom));font-size:10px;display:block}.receipt-viewer-error{text-align:left;margin-top:3px;display:block}.customer-detail-grid{gap:15px}.customer-map-leaflet{height:220px}.location-editor-layout{grid-template-columns:1fr}.location-heading{flex-direction:column;align-items:flex-start}.location-button{width:100%}.modal-actions{grid-template-columns:1fr 1fr;display:grid}.modal-actions .primary-button{min-width:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--ink:#123f38;--ink-soft:#41665f;--muted:#788e89;--green:#12473d;--green-2:#277b6c;--green-3:#dceee7;--canvas:#f5f1e9;--paper:#fffdf8;--paper-2:#f8f5ee;--orange:#c86a2b;--orange-dark:#b15a21;--orange-soft:#f7e7d8;--line:#d9e2dc}body{background:radial-gradient(circle at 93% 12%, #c86a2b0e, transparent 23rem), radial-gradient(circle at 12% 92%, #277b6c0b, transparent 28rem), var(--canvas);overflow-x:hidden}.login-shell{grid-template-columns:minmax(0,700px) minmax(390px,440px);justify-content:center;align-items:start;gap:clamp(20px,3vh,30px) clamp(56px,6vw,88px);width:min(1240px,100% - 64px);padding:36px 0 54px;overflow:clip}.login-shell:before{border-color:#277b6c29;border-radius:50%;width:68%;height:72%;inset:auto -13% -33% 51%;transform:rotate(-17deg)}.login-shell:after{content:"";pointer-events:none;border:1px solid #277b6c1c;border-radius:50%;width:51%;height:59%;position:absolute;bottom:-28%;right:-11%;transform:rotate(-17deg)}.login-brand,.login-intro,.login-panel{z-index:1;position:relative}.login-brand{grid-area:1/1;min-width:0;margin-bottom:clamp(26px,4vh,42px)}.login-brand .brand-name-primary{color:var(--ink)}.login-brand .brand-tagline{color:var(--muted)}.login-brand .brand-logo-lg{width:64px;height:64px}.login-brand .brand-wordmark{font-size:30px}.login-intro{grid-area:2/1;min-width:0}.login-intro-copy{max-width:930px}.eyebrow{color:var(--orange-dark);letter-spacing:.17em;text-transform:uppercase;font-size:12px;font-weight:900}.login-intro h1{max-width:930px;color:var(--ink);letter-spacing:-.045em;text-wrap:balance;margin:19px 0 26px;font-family:Thonburi,Noto Sans Thai,Leelawadee UI,Tahoma,sans-serif;font-size:clamp(3.2rem,4.85vw,5.1rem);font-weight:700;line-height:1.3}.login-intro h1 .hero-line{display:block}.login-intro h1 .hero-line-primary,.login-intro h1 .hero-line-suffix{color:var(--ink)}.login-intro h1 .hero-line-emphasis{color:var(--green-2);letter-spacing:-.05em;margin:.02em 0 0 .02em;font-size:1.16em;font-weight:900}.login-intro h1 .hero-line-suffix{letter-spacing:-.025em;margin:.03em 0 0 .16em;font-size:.72em;font-weight:700}.login-intro-copy p{max-width:590px;color:var(--muted);border-left:2px solid #c86a2b80;margin:0;padding-left:17px;font-size:15px;line-height:1.9}.login-intro-copy .trust-highlight{color:var(--orange-dark);margin-top:9px;font-size:1.05em;font-weight:800;display:block}.login-feature-list{grid-template-columns:1fr 1fr;gap:28px;max-width:650px;margin-top:44px}.desktop-login-features{display:grid}.mobile-login-features{display:none}.login-feature-list>div{border-top-color:#123f3829;gap:12px;padding-top:16px}.feature-icon{width:32px;height:32px;color:var(--orange-dark);background:var(--orange-soft);border-radius:50%}.login-feature-list strong{font-size:13px}.login-feature-list small{font-size:11px}.login-panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffdf8d1;border:1px solid #123f381f;border-radius:28px;grid-area:1/2/span 2;align-self:center;min-width:0;min-height:0;margin-top:clamp(92px,15vh,150px);padding:42px 38px 34px;overflow:hidden;box-shadow:0 26px 70px #123f3814}.login-panel>*{z-index:1;min-width:0;position:relative}.login-panel input{min-height:52px}.login-panel .login-remember{color:var(--muted);cursor:pointer;align-items:center;gap:10px;margin-top:17px;font-size:12px;font-weight:700;display:flex}.login-panel .login-remember input{width:19px;min-height:19px;accent-color:var(--green-2);margin:0}.login-panel .primary-button{min-height:52px;margin-top:28px}.login-panel:before{content:"";background:var(--orange);border-radius:999px;width:64px;height:5px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.login-panel:after{content:"";pointer-events:none;background:radial-gradient(circle at 18% 8%,#ffffffb8,#0000 27%),linear-gradient(145deg,#ffffff47,#0000 42%,#277b6c0b);border-radius:27px;position:absolute;inset:1px}.login-panel-top{justify-content:center;margin-bottom:27px}.login-panel>label{color:var(--ink-soft);gap:9px;font-size:14px;font-weight:900}.login-panel>label input{color:var(--ink);font-size:17px;font-weight:600}.login-footnote{margin-top:25px;font-size:11px}.mobile-details-swipe,.mobile-reveal-hint,.login-panel-brand{display:none}.sidebar{background:radial-gradient(circle at 22% 0%, #679d8433, transparent 17rem), linear-gradient(155deg, #164c40 0%, var(--sidebar) 54%, #0c302a 100%)}.catalog-panel,.panel,.cart-panel{border-radius:28px;box-shadow:0 20px 52px #123f3811}.section-heading h1,.panel h1,.panel h2,.cart-title h2{letter-spacing:-.055em}@media (max-width:860px){.login-shell{flex-direction:column;gap:38px;width:min(100% - 56px,720px);min-height:auto;display:flex;overflow:clip}.login-shell:before,.login-shell:after,.login-glow{display:none}.login-brand,.login-intro,.login-panel,.login-feature-list{grid-area:auto}.login-brand{order:-2;width:100%;margin-bottom:0}.login-brand .brand-lockup{margin-inline:0}.login-panel{order:-1}.login-intro{margin-bottom:38px}.login-panel{margin-left:auto;margin-right:auto}.desktop-login-features{display:none}.mobile-login-features{max-width:430px;margin:28px auto 0;display:grid}.login-panel{width:min(100%,430px);margin-top:0}}@media (max-width:640px){.login-shell{width:100%;min-height:auto;padding:max(clamp(28px, 4vh, 42px), env(safe-area-inset-top)) 16px max(18px, env(safe-area-inset-bottom));justify-content:flex-start;align-items:stretch;gap:14px;overflow:clip}.login-intro{display:none}.mobile-login-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:none;margin:2px 0 0;display:grid}.login-shell:not(.mobile-details-open) .mobile-login-features>div{background:#fffdf8b3;border:1px solid #277b6c1f;border-radius:18px;align-items:center;min-height:78px;padding:13px 14px;box-shadow:0 10px 24px #123f380b}.login-shell:not(.mobile-details-open) .mobile-login-features small,.login-shell:not(.mobile-details-open)>.login-brand{display:none}.login-panel{flex-direction:column;flex:none;justify-content:flex-start;width:100%;max-width:none;min-height:0;display:flex}.login-panel-brand{justify-content:flex-start;margin:3px 0 clamp(25px,5vh,42px);display:flex}.login-panel-brand .brand-lockup{gap:13px}.login-panel-brand .brand-logo-lg{width:66px;height:66px}.login-panel-brand .brand-wordmark{font-size:32px}.login-panel-brand .brand-tagline{font-size:9px}.login-intro{margin-bottom:20px}.login-intro h1{margin-top:15px;font-size:clamp(2.35rem,10.5vw,3.75rem);line-height:1.28}.login-intro h1 .hero-line-emphasis{font-size:1.1em}.login-intro h1 .hero-line-suffix{margin-left:.1em;font-size:.78em}.login-intro-copy p{font-size:14px}.login-feature-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.mobile-login-features{margin:28px auto 0}.login-feature-list>div{min-width:0;padding:18px 4px 0}.login-feature-list div>span:last-child{min-width:0}.login-feature-list small{overflow-wrap:anywhere;font-size:11px;line-height:1.65;display:block}.login-panel{padding:22px 22px 24px}.login-panel:before{width:56px;top:11px;left:50%}.login-panel-top{margin-bottom:20px}.login-panel label{margin-top:14px}.login-panel input{min-height:48px}.login-panel .primary-button{min-height:48px;margin-top:22px}.login-footnote{margin-top:25px}.login-shell:not(.mobile-details-open){touch-action:pan-x;overscroll-behavior:none}.login-shell:not(.mobile-details-open) .login-brand,.login-shell:not(.mobile-details-open) .login-panel{transform:translateY(calc(var(--mobile-pull-distance,0px) * -1));will-change:transform;transition:transform .32s cubic-bezier(.22,1,.36,1)}.mobile-reveal-hint{z-index:3;max-width:calc(100% - 32px);color:var(--ink);white-space:nowrap;cursor:pointer;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;background:linear-gradient(135deg,#fffdf8f5,#f1f7f2e0);border:1px solid #277b6c24;border-radius:999px;justify-content:center;align-self:center;align-items:center;gap:8px;margin:4px auto 0;padding:7px 14px 7px 8px;font-size:11px;font-weight:800;transition:color .2s,border-color .2s,box-shadow .2s,transform .32s cubic-bezier(.22,1,.36,1);display:flex;position:relative;bottom:auto;left:auto;right:auto;transform:none;box-shadow:0 9px 22px #123f381a,inset 0 1px #ffffffe6}.mobile-reveal-handle{background:#b8d8cc;border-radius:99px;width:38px;height:3px;display:block;position:absolute;top:-6px;left:50%;transform:translate(-50%)}.mobile-reveal-hint.is-pulling{border-color:#277b6c47;transform:translateY(4px)scale(1.02);box-shadow:0 12px 26px #123f3824,inset 0 1px #fffffff2}.mobile-reveal-hint:active{border-color:#277b6c4d;transform:translateY(2px)scale(.98)}.mobile-reveal-icon{color:#fff;background:var(--green-2);border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid;position:relative;overflow:hidden;box-shadow:0 4px 10px #277b6c33}.mobile-reveal-progress{background:var(--orange);transform-origin:bottom;transition:transform .12s ease-out;position:absolute;inset:0;transform:scaleY(0)}.mobile-reveal-arrow{z-index:1;margin-top:-2px;font-size:18px;font-weight:500;line-height:1;position:relative}.mobile-reveal-label{text-overflow:ellipsis;overflow:hidden}.login-shell.mobile-details-open{overscroll-behavior-y:none;touch-action:pan-y;min-height:100dvh;padding:24px 18px 46px;display:block;overflow:hidden auto}.login-shell.mobile-details-open .login-brand{width:100%;margin:0 0 28px;display:block;transform:none}.login-shell.mobile-details-open .login-brand .brand-lockup{margin-inline:auto}.login-shell.mobile-details-open .login-panel{display:none}.login-shell.mobile-details-open .login-intro{width:100%;margin:0;animation:.42s cubic-bezier(.22,1,.36,1) both mobile-details-rise;display:block}.login-shell.mobile-details-open .login-intro-copy{max-width:none}.login-shell.mobile-details-open .login-intro h1{margin-top:15px;font-size:clamp(2.35rem,10.5vw,3.75rem);line-height:1.28}.login-shell.mobile-details-open .login-intro-copy p{max-width:none;font-size:14px}.login-shell.mobile-details-open .mobile-details-swipe{min-height:35px;color:var(--green-2);touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;transform:translateY(calc(var(--mobile-return-distance,0px) * -.18));background:#fffdf8b8;border:1px solid #277b6c29;border-radius:999px;align-items:center;gap:8px;margin:0 0 18px;padding:0 13px;font-size:11px;font-weight:800;transition:transform .22s cubic-bezier(.22,1,.36,1),border-color .2s,box-shadow .2s;display:inline-flex}.login-shell.mobile-details-open .mobile-details-swipe>span{color:#fff;background:var(--green-2);border-radius:50%;place-items:center;width:24px;height:24px;font-size:16px;line-height:1;display:grid}.login-shell.mobile-details-open .mobile-details-swipe.is-pulling{border-color:#277b6c4d;box-shadow:0 9px 20px #123f381a}.login-shell.mobile-details-open .mobile-login-features{grid-template-columns:1fr;gap:14px;max-width:none;margin:30px 0 0;display:grid}.login-shell.mobile-details-open .mobile-login-features>div{box-shadow:none;background:0 0;border:0;border-top:1px solid #123f3829;border-radius:0;padding:16px 4px 0}.login-shell.mobile-details-open .mobile-reveal-hint{display:none}}@keyframes mobile-details-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.app-shell{isolation:isolate;background:radial-gradient(circle at 75% -5%,#d6813517,#0000 25rem),radial-gradient(circle at 38% 105%,#286b5c14,#0000 30rem);position:relative;overflow:clip}.app-shell:before,.app-shell:after{content:"";z-index:-1;pointer-events:none;border:1px solid #286b5c14;border-radius:50%;width:38vw;max-width:560px;height:38vw;max-height:560px;position:absolute}.app-shell:before{top:8%;right:-15%;transform:rotate(24deg)scaleY(.48)}.app-shell:after{border-color:#d6813514;bottom:-17%;left:31%;transform:rotate(-21deg)scaleY(.5)}.workspace{background:linear-gradient(135deg,#fffdf914,#0000 36%);position:relative}.workspace:before{content:"";filter:blur(1px);pointer-events:none;background:#d681350b;border-radius:50%;width:210px;height:210px;position:absolute;top:0;right:8%}.sidebar{box-shadow:18px 0 45px #0a2d2617}.sidebar:before{content:"";pointer-events:none;background:linear-gradient(115deg,#ffffff14,#0000 25% 75%,#0318141f);position:absolute;inset:0}.topbar{z-index:1;position:relative}.topbar-context,.topbar-actions{animation:.65s cubic-bezier(.22,1,.36,1) both content-rise}.topbar-actions{animation-delay:80ms}.live-status{position:relative;overflow:hidden;box-shadow:0 7px 18px #286b5c12}.live-status:after{content:"";pointer-events:none;background:#ffffff8c;width:22%;animation:5.5s ease-in-out infinite status-sheen;position:absolute;top:-60%;bottom:-60%;left:-42%;transform:rotate(21deg)}.status-dot{animation:2.5s ease-in-out infinite status-breathe}.catalog-panel,.cart-panel,.content-grid>.panel,.settings-layout>.panel,.wide-panel{background:linear-gradient(145deg, #ffffffd1, var(--paper) 48%, #f8f6f0f0);transition:transform .28s,box-shadow .28s;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 25px 60px #123f3813,inset 0 1px #ffffffe0}.cart-panel{overflow:visible}.catalog-panel:before,.cart-panel:before,.content-grid>.panel:before,.settings-layout>.panel:before,.wide-panel:before{content:"";opacity:.34;pointer-events:none;border:1px solid #286b5c1a;border-radius:50%;width:190px;height:190px;position:absolute;top:-95px;right:-70px;box-shadow:0 0 0 15px #286b5c06,0 0 0 31px #286b5c05}.cart-panel{box-shadow:0 28px 70px #123f381c,inset 0 1px #ffffffe6}.catalog-panel:hover,.content-grid>.panel:hover,.settings-layout>.panel:hover,.wide-panel:hover{transform:translateY(-3px);box-shadow:0 30px 72px #123f381a,inset 0 1px #ffffffeb}.product-grid{perspective:1200px}.product-card{isolation:isolate;background:linear-gradient(145deg,#fffefa 5%,#f4f8f2 100%);border-color:#286b5c1f;transition:transform .24s cubic-bezier(.22,1,.36,1),box-shadow .24s,border-color .24s;position:relative;overflow:hidden;transform:translateZ(0)rotateX(0);box-shadow:0 9px 18px #123f380e,inset 0 1px #ffffffe6}.product-card:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0000,#ffffffad,#0000);width:58%;height:190%;transition:transform .65s;position:absolute;top:-48%;left:-32%;transform:rotate(25deg)translate(-190%)}.product-card:not(:disabled):hover{border-color:#286b5c47;transform:translateY(-6px)rotateX(2deg);box-shadow:0 18px 28px #123f381c,inset 0 1px #fffffff2}.product-card:not(:disabled):hover:before{transform:rotate(25deg)translate(430%)}.product-card:not(:disabled):active{transition-duration:80ms;transform:translateY(-1px)scale(.985)}.product-card.disabled{background:linear-gradient(145deg,#f5f5f1,#ecefea);box-shadow:inset 0 1px #ffffffb3}.product-price,.product-action{z-index:1;position:relative}.product-action{transition:color .2s,transform .2s}.product-card:not(:disabled):hover .product-action{color:var(--orange-dark);transform:translate(2px)}.section-heading,.cart-title,.customer-card,.bill-row,.compact-products,.inline-form,.form-panel,.profile-help-panel{z-index:1;position:relative}.count-chip{box-shadow:0 8px 18px #286b5c14,inset 0 1px #ffffffb3}.empty-state{background:linear-gradient(145deg,#ffffff9e,#f8f6f0e6)}@keyframes content-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes status-breathe{0%,to{box-shadow:0 0 0 4px #54aa7821}50%{box-shadow:0 0 0 7px #54aa780b}}@keyframes status-sheen{0%,57%{opacity:0;transform:translate(0)rotate(21deg)}65%{opacity:1}75%,to{opacity:0;transform:translate(720%)rotate(21deg)}}@media (prefers-reduced-motion:reduce){.catalog-panel:hover,.content-grid>.panel:hover,.settings-layout>.panel:hover,.wide-panel:hover,.product-card:not(:disabled):hover,.product-card:not(:disabled):active{transform:none}}.login-glow{z-index:0;animation:9s ease-in-out infinite ambient-drift}.login-glow-two{animation-delay:-4.5s}.login-footnote{background:#eff7f18a;border:1px solid #286b5c1a;border-radius:999px;padding:8px 13px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb8,0 8px 18px #286b5c0b}.login-footnote:after{content:"";pointer-events:none;background:#ffffff94;width:20%;animation:6.5s ease-in-out infinite status-sheen;position:absolute;top:-80%;bottom:-80%;left:-35%;transform:rotate(22deg)}@keyframes ambient-drift{0%,to{transform:translate(0,0)scale(1)}50%{transform:translate(8px,-9px)scale(1.035)}}@media (max-width:860px){.login-glow{display:block}}@media (max-width:640px){.login-glow-one{width:180px;height:180px;top:3%;left:-21%}.login-glow-two{width:210px;height:210px;bottom:3%;right:-22%}.login-panel:after{border-radius:25px}}@font-face{font-family:IBM Plex Sans Thai Local;src:url(/fonts/IBMPlexSansThai-Regular.ttf)format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Sans Thai Local;src:url(/fonts/IBMPlexSansThai-Medium.ttf)format("truetype");font-style:normal;font-weight:500;font-display:swap}@font-face{font-family:IBM Plex Sans Thai Local;src:url(/fonts/IBMPlexSansThai-SemiBold.ttf)format("truetype");font-style:normal;font-weight:600;font-display:swap}@font-face{font-family:IBM Plex Sans Thai Local;src:url(/fonts/IBMPlexSansThai-Bold.ttf)format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Anuphan Local;src:url(/fonts/Anuphan-Variable.ttf)format("truetype");font-style:normal;font-weight:100 700;font-display:swap}:root{--font-body:"IBM Plex Sans Thai Local", "Noto Sans Thai", "Leelawadee UI", "Thonburi", Tahoma, sans-serif;--font-display:"Anuphan Local", "IBM Plex Sans Thai Local", "Noto Sans Thai", sans-serif}html{-moz-text-size-adjust:100%;text-size-adjust:100%;font-size:100%}body{font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;font-size:1rem;font-weight:400;line-height:1.65}h1,h2,h3,.section-heading h1,.panel h1,.panel h2,.cart-title h2{font-family:var(--font-display);letter-spacing:-.015em;font-weight:700;line-height:1.32}.brand-tagline{letter-spacing:.07em;font-size:.75rem;font-weight:600;line-height:1.35}.sidebar-section-label{letter-spacing:.08em;font-size:.75rem;font-weight:600}.tabs button{min-height:52px;font-size:.95rem;font-weight:600;line-height:1.45}.sidebar-user strong{font-size:.875rem;font-weight:600;line-height:1.4}.sidebar-user small{font-size:.78rem;line-height:1.45}.topbar-context span{font-size:.8125rem}.topbar-context h2{font-size:1.25rem}.live-status{font-size:.8125rem;font-weight:600}.topbar-profile b{font-size:.875rem;font-weight:600}.eyebrow{letter-spacing:.08em;font-size:.8125rem;font-weight:600}.login-intro h1{font-family:var(--font-display);letter-spacing:-.025em}.login-intro h1 .hero-line-emphasis{letter-spacing:-.025em}.login-intro h1 .hero-line-suffix{letter-spacing:-.01em}.login-intro-copy p{font-size:1.0625rem;line-height:1.85}.login-feature-list strong{font-size:.9375rem;font-weight:600;line-height:1.45}.login-feature-list small{font-size:.8125rem;line-height:1.65}.login-panel>label{font-size:.9375rem;font-weight:600}.login-panel>label input{font-size:1.0625rem;font-weight:500}.login-footnote{font-size:.8125rem;line-height:1.5}.transition-card h1{letter-spacing:-.015em;font-size:1.75rem}.transition-card p{font-size:.9375rem;line-height:1.75}.alert{font-size:.9375rem;line-height:1.55}.loading-card{font-size:1rem;line-height:1.65}.section-heading h1,.panel h1{font-size:clamp(1.875rem,3vw,2.375rem)}.cart-title h2{font-size:1.625rem}.count-chip{font-size:.8125rem;font-weight:600;line-height:1.4}.setup-note{font-size:.9rem;line-height:1.65}.product-brand{font-size:.875rem;font-weight:600;line-height:1.4}.product-card strong{letter-spacing:-.015em;font-size:1.625rem;font-weight:600;line-height:1.35}.product-price{font-size:1rem;line-height:1.5}.product-action{font-size:.875rem;font-weight:600;line-height:1.45}label{font-size:.875rem;font-weight:600;line-height:1.5}.field-label{flex-wrap:wrap;align-items:baseline;gap:.35rem;display:flex}.optional-note{color:var(--muted);font-size:.75rem;font-weight:400;line-height:1.4}input,select,textarea{min-height:48px;font-size:1rem;line-height:1.5}.customer-picker-trigger{font-size:1.125rem;font-weight:600;line-height:1.45}input[type=file]{padding:6px 8px}input[type=file]::file-selector-button{min-height:34px;color:var(--green);background:var(--green-3);font:inherit;cursor:pointer;border:0;border-radius:8px;margin-right:10px;padding:0 13px;font-size:.875rem;font-weight:600}.cart-line{padding-block:16px}.cart-line span{font-size:.8125rem;line-height:1.5}.empty-state{font-size:.9375rem;line-height:1.6}.totals div{font-size:.9375rem;line-height:1.5}.grand-total strong{letter-spacing:-.015em;font-size:1.75rem;font-weight:600}.primary-button,.secondary-button,.text-button{font-size:.9375rem;font-weight:600;line-height:1.4}.accounting-note{font-size:.8125rem;line-height:1.65}.customer-card span,.bill-row span,.customer-card small,.bill-row>div:nth-child(2) b{font-size:.875rem;line-height:1.5}.customer-card strong{font-size:1.125rem;font-weight:700;line-height:1.45}.customer-card span,.customer-card small{font-size:.9375rem;line-height:1.5}.bill-row strong,.points b{font-weight:600}.customer-picker-option strong{font-size:1rem;line-height:1.45}.customer-picker-option small{font-size:.875rem;line-height:1.45}.customer-detail-grid strong{font-size:1rem;line-height:1.55}.customer-summary-stat strong,.customer-summary-contact strong,.customer-summary-contact a{font-size:1rem}.form-hint,.profile-help-panel p{font-size:.9375rem;line-height:1.75}.compact-products small,footer{font-size:.8125rem;line-height:1.5}@media (max-width:860px){.sidebar .tabs button{min-height:46px;font-size:.9rem}.product-registration-layout{grid-template-columns:1fr}.product-form-panel{position:static}.customer-search,.bill-search{grid-template-columns:1fr 1fr}.bill-search-actions{grid-column:1/-1}}@media (max-width:640px){.login-panel-brand .brand-tagline{font-size:.75rem}.login-intro-copy p,.login-shell.mobile-details-open .login-intro-copy p{font-size:1rem}.login-feature-list small,.mobile-reveal-hint,.login-shell.mobile-details-open .mobile-details-swipe{font-size:.8125rem}.product-card strong{font-size:1.4rem}.section-heading h1{font-size:1.75rem}.settings-page-heading,.product-registration-heading{flex-direction:column;gap:12px}.settings-page-heading p,.product-registration-heading p{font-size:12px}.settings-subnav,.product-registration-subnav,.sale-product-subnav{margin-inline:-2px}.customer-search{grid-template-columns:1fr}.customer-search-actions{grid-column:auto}.customer-search-actions button{flex:1}.bill-search{grid-template-columns:1fr}.bill-search-actions{grid-column:auto}.bill-search-actions button{flex:1}}.financial-dashboard{--finance-product:#286b5c;--finance-delivery:#d68135;--finance-vat:#79a99a;gap:20px;margin-top:24px;display:grid}.financial-hero{isolation:isolate;color:#f7fbf7;background:radial-gradient(circle at 78% -8%,#e6a56747,#0000 18rem),linear-gradient(128deg,#123f35 0%,#1c584a 68%,#256759 100%);border:1px solid #dbefe41f;border-radius:28px;justify-content:space-between;align-items:flex-end;gap:32px;min-height:190px;padding:31px 34px;display:flex;position:relative;overflow:hidden;box-shadow:0 26px 65px #123f3526}.financial-hero:before,.financial-hero:after{content:"";z-index:-1;pointer-events:none;border:1px solid #edf7ef1f;border-radius:50%;position:absolute}.financial-hero:before{width:250px;height:250px;top:-105px;right:12%}.financial-hero:after{width:205px;height:205px;bottom:-94px;right:-42px;box-shadow:0 0 0 22px #edf7ef09}.financial-hero>*{z-index:1;position:relative}.financial-hero .eyebrow{color:#efb278}.financial-hero h1{color:#fff;margin:7px 0;font-size:clamp(2rem,3vw,2.75rem)}.financial-hero p{color:#c8ddd3;max-width:610px;margin:0;font-size:.9375rem}.financial-filters{justify-items:end;gap:12px;display:grid}.financial-segmented{background:#04221c33;border:1px solid #eff8f129;border-radius:14px;gap:4px;padding:4px;display:flex}.financial-segmented button{color:#bcd4c9;white-space:nowrap;background:0 0;border:0;border-radius:10px;min-height:38px;padding:0 14px;font-size:.85rem;font-weight:600}.financial-segmented button:hover{color:#fff;background:#ffffff12}.financial-segmented button.active{color:var(--green);background:#fffdf9;box-shadow:0 7px 18px #041f1929}.financial-filters label{color:#c6dcd1;align-items:center;gap:9px;min-width:135px;display:flex}.financial-filters select{color:#fff;background-color:#04221c3d;border-color:#eff8f12e;min-height:38px;padding:4px 30px 4px 11px}.financial-filters select option{color:var(--ink);background:#fff}.financial-scope{width:fit-content;color:var(--ink-soft);background:#fffdf9b3;border:1px solid #286b5c1c;border-radius:999px;align-items:center;gap:10px;padding:7px 12px;font-size:.8125rem;display:flex}.financial-loading,.financial-error{min-height:250px;color:var(--muted);background:var(--paper);text-align:center;box-shadow:var(--shadow-soft);border:1px solid #17363014;border-radius:24px;align-content:center;place-items:center;gap:8px;padding:36px;display:grid}.financial-error strong{color:var(--ink);font-size:1.1rem}.financial-error .secondary-button{width:auto;margin-top:12px}.financial-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.financial-kpi{min-height:150px;box-shadow:var(--shadow-soft);background:linear-gradient(145deg,#ffffffed,#f8f6f0eb);border:1px solid #17363014;border-radius:22px;flex-direction:column;justify-content:space-between;padding:22px;display:flex;position:relative;overflow:hidden}.financial-kpi:after{content:"";background:var(--finance-product);border-radius:50%;width:9px;height:9px;position:absolute;top:20px;right:20px;box-shadow:0 0 0 6px #286b5c17}.financial-kpi.vat:after{background:var(--finance-vat);box-shadow:0 0 0 6px #79a99a1f}.financial-kpi.delivery:after{background:var(--finance-delivery);box-shadow:0 0 0 6px #d681351a}.financial-kpi>span{color:var(--muted);padding-right:25px;font-size:.875rem;font-weight:600}.financial-kpi strong{color:var(--ink);font-family:var(--font-display);letter-spacing:-.025em;overflow-wrap:anywhere;margin:13px 0 5px;font-size:clamp(1.45rem,2.2vw,2rem);font-weight:700;line-height:1.2}.financial-kpi small{color:var(--muted);font-size:.75rem}.financial-kpi.primary{background:linear-gradient(145deg,#e8f3eb,#fbfdf9);border-color:#286b5c33}.financial-kpi.primary strong{color:var(--green-2)}.financial-empty{color:#78502d;background:#fff5e8;border:1px solid #efdcc8;border-radius:14px;padding:12px 15px;font-size:.875rem}.financial-insights{min-width:0;box-shadow:var(--shadow-soft);background:#fffdf9ed;border:1px solid #17363014;border-radius:24px;padding:24px}.financial-insight-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.financial-insight-metrics>div{background:#eff5ef;border-radius:16px;align-content:start;gap:5px;min-width:0;padding:16px;display:grid}.financial-insight-metrics span{color:var(--muted);font-size:.78rem}.financial-insight-metrics strong{color:var(--green-2);overflow-wrap:anywhere;font-size:1.2rem}.financial-insight-metrics small{color:var(--muted);font-size:.72rem}.financial-recommendations{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.financial-recommendations article{background:#fff;border:1px solid #e5eae3;border-radius:17px;min-width:0;padding:17px 18px}.financial-recommendations h3{color:var(--ink);margin:0 0 6px;font-size:.98rem}.financial-recommendations p{color:var(--ink-soft);margin:0 0 10px;font-size:.83rem;line-height:1.6}.financial-recommendations article>div{color:var(--muted);gap:7px;font-size:.81rem;line-height:1.6;display:flex}.financial-recommendations article>div strong{color:var(--orange-dark);flex:none}.financial-insight-limit{border-left:3px solid var(--orange);color:var(--muted);background:#fff7eb;border-radius:5px 10px 10px 5px;margin:16px 0 0;padding:11px 13px;font-size:.8rem;line-height:1.6}.financial-cost-insights>p{color:var(--muted);font-size:.83rem;line-height:1.6}.financial-cost-insights .financial-cost-scope{margin:-8px 0 16px}.financial-cost-insights .financial-cost-margin{color:var(--green-2);margin:14px 0 0;font-weight:700}.financial-cost-table{margin-top:18px}.financial-cost-table table{border-collapse:collapse;width:100%;min-width:760px;font-size:.8rem}.financial-cost-table th,.financial-cost-table td{text-align:right;white-space:nowrap;border-bottom:1px solid #e6eae6;padding:10px 11px}.financial-cost-table th:first-child{text-align:left}.financial-cost-table thead th{color:var(--muted);background:#f6f8f4;font-weight:600}.financial-missing-bills{margin-top:16px}.financial-missing-bills summary{width:fit-content;color:var(--orange-dark);cursor:pointer;font-size:.82rem;font-weight:700}.financial-missing-bills .financial-cost-table{margin-top:10px}.financial-chart-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:16px;display:grid}.financial-chart-card,.financial-table-card{min-width:0;box-shadow:var(--shadow-soft);background:#fffdf9ed;border:1px solid #17363014;border-radius:24px;padding:24px;overflow:hidden}.financial-card-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.financial-card-heading>div>span{color:var(--orange-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.financial-card-heading h2{color:var(--ink);margin:3px 0 0;font-size:1.25rem}.financial-card-heading>small{color:var(--muted)}.financial-chart-badge{color:var(--green-2);background:var(--green-3);border-radius:999px;padding:6px 9px;font-size:.75rem;font-weight:600}.financial-trend-svg{width:100%;height:auto;display:block;overflow:visible}.financial-grid-line{stroke:#e3e9e4;stroke-width:1px;stroke-dasharray:4 6}.financial-trend-line{fill:none;stroke:var(--finance-product);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.financial-trend-point{fill:#fffdf9;stroke:var(--finance-product);stroke-width:3px}.financial-axis-label,.financial-axis-value{fill:#778982;font-family:var(--font-body);font-size:11px}.financial-composition{align-content:center;justify-items:center;gap:23px;min-height:270px;display:grid}.financial-donut{border-radius:50%;place-items:center;width:172px;height:172px;display:grid;position:relative;box-shadow:0 16px 34px #123f351a}.financial-donut:after{content:"";background:#fffdf9;border-radius:50%;position:absolute;inset:24px;box-shadow:inset 0 0 0 1px #1736300f}.financial-donut>div{z-index:1;justify-items:center;display:grid;position:relative}.financial-donut span,.financial-donut small{color:var(--muted);font-size:.68rem}.financial-donut strong{max-width:112px;color:var(--ink);font-family:var(--font-display);text-overflow:ellipsis;font-size:1rem;overflow:hidden}.financial-legend{gap:10px;width:100%;display:grid}.financial-legend>div{align-items:center;gap:10px;display:flex}.financial-legend>div>span:last-child{flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.financial-legend small{color:var(--muted);font-size:.75rem}.financial-legend strong{color:var(--ink);white-space:nowrap;font-size:.78rem}.financial-legend-dot{border-radius:3px;flex:none;width:9px;height:9px}.financial-legend-dot.product,.financial-inline-legend i.product,.financial-bar-segment.product{background:var(--finance-product)}.financial-legend-dot.delivery,.financial-inline-legend i.delivery,.financial-bar-segment.delivery{background:var(--finance-delivery)}.financial-legend-dot.vat,.financial-inline-legend i.vat,.financial-bar-segment.vat{background:var(--finance-vat)}.financial-inline-legend{color:var(--muted);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;font-size:.75rem;display:flex}.financial-inline-legend span{align-items:center;gap:5px;display:flex}.financial-inline-legend i{border-radius:2px;width:8px;height:8px;display:inline-block}.financial-bars-scroll{scrollbar-width:thin;padding:5px 0 2px;overflow-x:auto}.financial-bars{min-width:max(620px, calc(var(--financial-period-count) * 62px));grid-template-columns:repeat(var(--financial-period-count), minmax(42px, 1fr));align-items:end;gap:12px;height:250px;display:grid}.financial-bar-item{min-width:0;height:100%;color:var(--muted);text-align:center;grid-template-rows:1fr 24px;gap:8px;font-size:.72rem;display:grid}.financial-bar-track{background:repeating-linear-gradient(0deg,#0000 0 47px,#dfe5df99 48px);border-bottom:1px solid #dfe5df;justify-content:center;align-items:flex-end;min-height:0;display:flex}.financial-bar-stack{border-radius:7px 7px 2px 2px;flex-direction:column-reverse;width:min(34px,72%);min-height:2px;display:flex;overflow:hidden;box-shadow:0 8px 16px #123f3517}.financial-bar-segment{width:100%;min-height:0;display:block}.financial-product-chart-card{min-width:0}.financial-product-chart-scroll{scrollbar-width:thin;padding:4px 0 2px;overflow-x:auto}.financial-product-chart-svg{width:100%;min-width:700px;height:auto;display:block;overflow:visible}.financial-product-grid-line{stroke:#e3e9e4;stroke-width:1px;stroke-dasharray:3 5}.financial-product-axis-label{fill:var(--muted);font-family:var(--font-body);font-size:11px}.financial-product-axis-brand{fill:var(--ink);font-family:var(--font-body);font-size:12px;font-weight:800}.financial-product-axis-size{fill:var(--muted);font-family:var(--font-body);font-size:11px}.financial-product-bar-track{fill:#edf3ef}.financial-product-bar{filter:drop-shadow(0 5px 7px #123f351f);transition:filter .16s,opacity .16s}.financial-product-bar:hover{filter:brightness(.94)drop-shadow(0 7px 10px #123f352e)}.financial-product-bar-value{fill:var(--ink);font-family:var(--font-body);font-size:12px;font-weight:800}.financial-table-card{padding-bottom:18px}.financial-table-scroll{overflow-x:auto}.financial-table-card table{border-collapse:separate;border-spacing:0;width:100%;min-width:860px;color:var(--ink-soft);font-size:.85rem}.financial-table-card th,.financial-table-card td{text-align:right;white-space:nowrap;border-bottom:1px solid #e6eae6;padding:13px 12px}.financial-table-card th:first-child{text-align:left}.financial-table-card thead th{color:var(--muted);background:#f6f8f4;font-size:.75rem;font-weight:600}.financial-table-card thead th:first-child{border-radius:11px 0 0 11px}.financial-table-card thead th:last-child{border-radius:0 11px 11px 0}.financial-table-card tbody th{color:var(--ink);font-weight:600}.financial-table-card tbody tr:hover{background:#dcece438}.financial-table-card .financial-total-cell{color:var(--green-2);font-weight:700}.financial-table-card tfoot th,.financial-table-card tfoot td{color:var(--ink);background:#edf5ef;border-bottom:0;font-weight:700}.financial-table-card tfoot th:first-child{border-radius:11px 0 0 11px}.financial-table-card tfoot td:last-child{color:var(--green-2);border-radius:0 11px 11px 0}.financial-breakdown-card table{min-width:520px}.financial-breakdown-note{color:var(--muted);margin:-7px 0 17px;font-size:.8125rem}.financial-accounting-note{border-left:3px solid var(--orange);color:var(--muted);background:#fffdf9ad;border-radius:5px 13px 13px 5px;margin:0;padding:14px 16px;font-size:.8125rem;line-height:1.7}@media (max-width:1120px){.financial-kpis,.financial-insight-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.financial-chart-grid{grid-template-columns:minmax(0,1fr)}.financial-composition{grid-template-columns:190px minmax(260px,420px);justify-content:center;min-height:0}}@media (max-width:760px){.financial-hero{flex-direction:column;align-items:stretch;gap:24px;min-height:0;padding:25px 22px}.financial-filters{justify-items:stretch}.financial-segmented{overflow-x:auto}.financial-segmented button{flex:1 0 auto}.financial-filters label{justify-content:space-between}.financial-filters select{min-width:125px}.financial-chart-card,.financial-table-card,.financial-insights{border-radius:20px;padding:20px 17px}.financial-recommendations,.financial-composition{grid-template-columns:1fr}.financial-inline-legend{justify-content:flex-start}.financial-stacked-card .financial-card-heading{flex-direction:column}}@media (max-width:520px){.financial-dashboard{gap:14px;margin-top:14px}.financial-hero h1{font-size:1.8rem}.financial-kpis{grid-template-columns:1fr;gap:10px}.financial-insight-metrics{grid-template-columns:1fr}.financial-kpi{min-height:126px;padding:19px}.financial-kpi strong{font-size:1.65rem}.financial-card-heading{margin-bottom:13px}.financial-chart-card.trend-card{padding-left:8px;padding-right:8px}.financial-chart-card.trend-card .financial-card-heading{padding:0 10px}.financial-axis-value{display:none}.financial-trend-line{stroke-width:4px}.financial-donut{width:158px;height:158px}.financial-legend>div>span:last-child{flex-direction:column;align-items:flex-start;gap:1px}}@media (max-width:640px){.customer-registry-heading{flex-direction:column;gap:12px}.customer-registry-heading-actions{flex-direction:column;align-items:stretch;width:100%}.customer-registry-heading-actions .count-chip{align-self:flex-start}.customer-registration-trigger{width:100%}.customer-registry-heading p{font-size:12px}.customer-stats{gap:6px}.customer-stats>div{padding:10px 9px}.customer-stats strong{font-size:17px}.customer-stats span{font-size:10px}.customer-card{flex-wrap:wrap;align-items:flex-start;gap:10px 12px}.customer-card-main{padding:14px}.customer-card-foot{flex-basis:100%}.customer-open-hint{margin-left:auto}.list-pagination-summary{flex-direction:column;align-items:stretch}.list-pagination-summary label{justify-content:space-between}.list-pagination-summary select{flex:1}.customer-profile-summary{grid-template-columns:1fr 1fr}.customer-summary-contact{grid-column:1/-1}.customer-profile-avatar{border-radius:13px;width:42px;height:42px;font-size:19px}.system-modal-header h2{font-size:23px}.map-search-control{align-items:stretch}.map-search-button{padding-inline:10px;font-size:10px}.location-actions{grid-template-columns:1fr 1fr;display:grid}.location-action{width:100%;padding-inline:8px}.location-actions .location-action:first-child{grid-column:1/-1}}@media (min-width:1360px){.topbar,.workspace-scroll{width:min(1680px,100% - 72px)}.sale-layout{grid-template-columns:minmax(0,1fr) minmax(380px,420px);gap:clamp(24px,1.5vw,32px);min-height:calc(100dvh - 144px)}.catalog-panel{flex-direction:column;min-height:calc(100dvh - 144px);padding:clamp(30px,1.8vw,40px);display:flex}.catalog-panel .product-grid{flex:1;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(210px,1fr);align-content:stretch;gap:clamp(16px,1.25vw,24px)}.catalog-panel .product-card{border-radius:21px;min-height:210px;padding:clamp(20px,1.35vw,28px)}.catalog-panel .product-card strong{font-size:clamp(1.75rem,1.65vw,2.35rem)}.catalog-panel .product-brand,.catalog-panel .product-price{font-size:clamp(.95rem,.85vw,1.15rem)}.catalog-panel .product-action{font-size:clamp(.875rem,.78vw,1.05rem)}}.product-card.has-image:before{display:none}.product-card-image,.product-card-image-placeholder{border-radius:13px;flex:none;width:100%;height:92px;margin-bottom:14px}.product-card-image{object-fit:contain;object-position:center;background:linear-gradient(145deg,#f9fcf8,#eef5f0);border:1px solid #286b5c1f;padding:6px;display:block}.product-card-image-placeholder{border:6px solid #cde3d7;border-top-color:var(--orange);border-radius:50%;width:33px;height:33px;margin-bottom:17px;box-shadow:inset 0 0 0 4px #f4faf5}.compact-products .compact-product-select{grid-template-columns:40px minmax(0,1fr)}.compact-product-image,.compact-product-image-placeholder{border-radius:9px;grid-area:1/1/span 2;align-self:center;width:38px;height:38px}.compact-product-image{object-fit:contain;object-position:center;border:1px solid var(--line);background:#f1f5f0;padding:3px}.compact-product-image-placeholder{background:linear-gradient(135deg, var(--green-3), var(--orange-soft))}.compact-products .compact-product-select>span:nth-child(2),.compact-products .compact-product-select>b{text-overflow:ellipsis;white-space:nowrap;grid-column:2;min-width:0;overflow:hidden}.image-upload-preview{border:1px solid var(--line);background:var(--paper-2);border-radius:13px;align-items:center;gap:12px;margin-top:12px;padding:10px;display:flex}.image-upload-preview .secondary-button{min-height:38px;padding-inline:12px;font-size:11px}.product-image-preview,.customer-image-preview{border:1px solid var(--line);background:#f1f5f0;border-radius:10px;width:88px;height:70px}.product-image-preview{object-fit:contain;object-position:center;padding:4px}.customer-image-preview,.customer-profile-avatar-image{object-fit:cover}.customer-profile-image-panel{border-top:1px solid var(--line);gap:9px;margin-top:18px;padding-top:17px;display:grid}.customer-detail-image{object-fit:cover;border:1px solid var(--line);background:#f1f5f0;border-radius:15px;width:100%;max-height:280px;display:block}.customer-cylinder-editor{align-items:flex-end;gap:10px;display:flex}.customer-cylinder-editor label{flex:1;min-width:0}.customer-cylinder-editor .secondary-button{white-space:nowrap;flex:none;min-height:44px}@media (min-width:1360px){.catalog-panel .product-card-image,.catalog-panel .product-card-image-placeholder{height:112px}}@media (max-width:640px){.product-card-image,.product-card-image-placeholder{height:76px}.customer-detail-image{max-height:220px}.customer-cylinder-editor{flex-direction:column;align-items:stretch}.customer-cylinder-editor .secondary-button{width:100%}}label:not(.checkbox),label.checkbox{gap:8px;font-size:1rem;line-height:1.55}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=reset]):not(.search-control-input),select,textarea{box-sizing:border-box;min-height:58px;padding:8px 12px;font-size:1.125rem;line-height:1.7}textarea{min-height:112px;padding-block:12px}input[type=file]::file-selector-button{min-height:38px;font-size:1rem}.list-pagination-summary select,.financial-filters select{min-height:58px;padding:8px 12px;font-size:1.125rem;line-height:1.7}.customer-picker-field{font-size:1rem;line-height:1.55}.search-control-input{height:48px;min-height:48px}.search-control-input:focus,.search-field-select select:focus{box-shadow:none}.customer-search .search-field-select select,.customer-search .search-query-field input,.bill-search .search-field-select select,.bill-search .search-query-field input,.customer-picker-menu .search-field-select select,.customer-picker-menu .customer-picker-search,.map-location-search .map-search-control input,.map-location-search .map-search-button,.product-search-controls .search-field-select select,.product-search-controls .product-search-field,.product-search-controls .product-search-field input{height:48px;min-height:48px}
.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(../media/layers.3muxcl8sz6330.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(../media/layers-2x.23wrxu3xxu9-i.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(../media/marker-icon.1le94j_pe_ih1.png)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
