@import"https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@400;500;600;700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Sarabun:wght@400;600;700;800&display=swap";:root{color-scheme:light;font-family:Noto Sans Thai,Noto Sans,Leelawadee UI,Arial,sans-serif;--navy: #0b1f3a;--navy-soft: #13365d;--ink: #172033;--muted: #667085;--line: #d7e2e7;--line-strong: #c8d5dc;--soft: #f6f9f8;--green: #12845f;--green-dark: #0c684a;--green-soft: #ecf8f3;--brand-mint: #4bc0c0;--brand-mint-strong: #39b3b3;--brand-mint-soft: rgba(75, 192, 192, .14);--amber: #b77914;--amber-soft: #fff8eb;--white: #ffffff;--shadow: 0 10px 28px rgba(11, 31, 58, .06);--shadow-soft: 0 4px 12px rgba(11, 31, 58, .04)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f7faf9;color:var(--ink);text-rendering:geometricPrecision}button,input,select{font:inherit}input::placeholder,textarea::placeholder{color:#95a2b3;font-weight:500}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid rgba(18,132,95,.2);outline-offset:2px}.app-shell{min-height:100vh;display:grid;grid-template-columns:1fr;transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar{min-height:100vh;padding:24px 18px;background:var(--navy);color:var(--white);display:flex;flex-direction:column;gap:26px;transition:all .3s cubic-bezier(.4,0,.2,1);overflow-x:hidden;position:relative}.collapse-toggle-handle{display:none}@media (min-width: 1024px){.app-shell{grid-template-columns:256px 1fr}.app-shell.sidebar-collapsed{grid-template-columns:64px 1fr}.sidebar.sidebar-collapsed{padding:24px 8px;gap:16px}.collapse-toggle-handle{position:absolute;top:50%;right:-4px;transform:translateY(-50%);width:8px;height:56px;background:#cbd5e1;border:1px solid rgba(203,213,225,.5);border-radius:9999px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000d;z-index:50;padding:0}.sidebar-collapsed .collapse-toggle-handle{right:-4px}.collapse-toggle-handle:hover{background:var(--brand-mint-strong, #39b3b3);width:14px;right:-7px}.sidebar-collapsed .collapse-toggle-handle:hover{right:-7px}.collapse-toggle-handle span{font-size:9px;font-weight:700;color:#fff;opacity:0;transition:opacity .2s ease;-webkit-user-select:none;user-select:none;line-height:1}.collapse-toggle-handle:hover span{opacity:1}.sidebar-collapsed .brand-image-wrap{padding:16px 0;display:flex;flex-direction:column;align-items:center;justify-content:center}.sidebar-collapsed .brand-logo-image.collapsed{max-width:36px;height:36px;margin:4px 0;transition:transform .2s ease}.sidebar-collapsed .brand-logo-image.collapsed:hover{transform:scale(1.08)}.sidebar-collapsed .sync-badge{padding:0;width:8px;height:8px;border-radius:50%;background:transparent!important;border:0;box-shadow:none;display:flex;justify-content:center;margin:4px auto 0}.sidebar-collapsed .sync-badge span:not(.dot){display:none}.sidebar-collapsed .sync-badge .dot{margin:0;width:8px;height:8px}.sidebar-collapsed .nav-section-heading{display:none!important}.sidebar-collapsed .nav-section{gap:4px}.sidebar-collapsed .nav-item{justify-content:center;padding:12px 0;gap:0;width:44px;height:44px;margin:0 auto;border-radius:12px}.sidebar-collapsed .nav-item-copy{display:none!important}.sidebar-collapsed .account-toggle{padding:10px 0;justify-content:center;gap:0;width:44px;height:44px;margin:0 auto;border-radius:12px}.sidebar-collapsed .account-toggle span,.sidebar-collapsed .account-toggle .account-toggle-chevron{display:none!important}.sidebar-collapsed .account-menu{position:absolute;left:calc(100% + 12px);bottom:0;width:180px;display:flex;flex-direction:column;gap:4px;padding:6px;background:#0f172a;border:1px solid rgba(255,255,255,.08);border-radius:8px;box-shadow:0 10px 25px -5px #00000080,0 8px 10px -6px #00000080;z-index:100;animation:slide-right-fade .15s cubic-bezier(.16,1,.3,1)}@keyframes slide-right-fade{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}.sidebar-collapsed .account-menu .account-menu-item span{display:inline!important}}.brand{display:flex;align-items:center;gap:13px;padding:0 8px}.brand-mark{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#4bc0c038,#4bc0c014);color:var(--white);font-weight:800;letter-spacing:0;border:1px solid rgba(126,231,221,.2);box-shadow:0 10px 28px #4bc0c02e}.brand-mark.large{width:56px;height:56px;border-radius:16px;font-size:24px}.brand-image-wrap{width:100%;padding:16px 16px 18px;margin-bottom:8px;border-bottom:1px solid rgba(71,85,105,.5)}.brand-logo-image{display:block;height:42px;width:auto;max-width:100%;object-fit:contain}.nav-list{display:grid;gap:14px}.nav-item{width:100%;border:0;background:transparent;color:#94a3b8;border-radius:12px;padding:10px 14px;display:flex;align-items:center;gap:12px;text-align:left;transition:all .2s ease}.nav-item.active{background:#14b8a626;color:#2dd4bf;box-shadow:inset 0 1px #ffffff0d}.nav-item:hover{background:#1e293b80;color:#e2e8f0}.nav-item-icon{display:inline-flex;align-items:center;justify-content:center;color:currentColor;flex:0 0 auto}.nav-item-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.nav-item-label{min-width:0;color:#94a3b8;font-size:14px;font-weight:500;line-height:1.25;transition:color .2s ease}.nav-item:hover .nav-item-label{color:#e2e8f0}.nav-item-secondary{min-width:0;margin-top:2px;color:#64748b;font-size:10px;line-height:1}.nav-item.active .nav-item-label{color:#2dd4bf}.nav-item.active .nav-item-secondary{color:#2dd4bfb8}.nav-item.active .nav-item-icon{color:#2dd4bf}.nav-item-wrapper{position:relative}@media (max-width: 1023px){.nav-submenu{display:none!important}}@media (min-width: 1024px){.nav-submenu{position:absolute;left:calc(100% - 4px);top:0;width:220px;background:#0f172a;border:1px solid rgba(255,255,255,.08);border-radius:10px;box-shadow:0 10px 25px -5px #00000080,0 8px 10px -6px #00000080;padding:8px;display:flex;flex-direction:column;z-index:100;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),visibility .2s}.nav-item-wrapper[data-menu-id=settings] .nav-submenu{top:auto;bottom:0}.nav-submenu:before{content:"";position:absolute;left:-12px;top:0;bottom:0;width:12px;background:transparent}.nav-item-wrapper:hover .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(0)}.nav-submenu-header{padding:6px 12px 10px;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:6px;display:flex;flex-direction:column}.nav-submenu-title{color:#f1f5f9;font-size:13px;font-weight:600}.nav-submenu-subtitle{color:#64748b;font-size:11px;font-weight:500;margin-top:1px}.nav-submenu-items{display:flex;flex-direction:column;gap:2px}.nav-submenu-item{background:transparent;border:none;text-align:left;width:100%;padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;flex-direction:row;align-items:center;gap:10px;transition:all .15s ease}.nav-submenu-item-icon{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;color:#475569;transition:color .15s ease}.nav-submenu-item-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start}.nav-submenu-item-label{color:#94a3b8;font-size:13px;font-weight:500;line-height:1.2;transition:color .15s ease}.nav-submenu-item-secondary{color:#475569;font-size:10px;margin-top:1px;line-height:1;transition:color .15s ease}.nav-submenu-item:hover{background:#ffffff0f}.nav-submenu-item:hover .nav-submenu-item-icon{color:#7dd3c7}.nav-submenu-item:hover .nav-submenu-item-label{color:#fff}.nav-submenu-item:hover .nav-submenu-item-secondary{color:#94a3b8}.nav-submenu-item.active{background:#14b8a61f}.nav-submenu-item.active .nav-submenu-item-icon{color:#2dd4bf}.nav-submenu-item.active .nav-submenu-item-label{color:#2dd4bf;font-weight:600}.nav-submenu-item.active .nav-submenu-item-secondary{color:#2dd4bfb8}}.nav-section{display:grid;gap:8px}.nav-section-heading{padding:0 16px;margin-top:24px;margin-bottom:8px;color:#64748b;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.nav-section-items{display:grid;gap:6px}.sidebar-footer{margin-top:auto;position:relative}.signed-in{min-width:0;display:flex;align-items:center;gap:8px;color:#d5e0e7;font-size:13px}.account-toggle{width:100%;border:1px solid transparent;border-radius:8px;background:transparent;padding:8px 6px;cursor:pointer;text-align:left;transition:all .2s ease}.account-toggle:hover,.account-toggle.is-open{border-color:#2dd4bf2e;background:#ffffff0d;color:#fff}.signed-in span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-toggle-chevron{flex:0 0 auto;color:#7dd3c7;transition:transform .18s ease}.account-toggle.is-open .account-toggle-chevron{transform:rotate(-90deg)}.account-menu{position:absolute;bottom:calc(100% + 8px);left:0;width:100%;background:#0f172a;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:6px;box-shadow:0 10px 25px -5px #00000080,0 8px 10px -6px #00000080;display:flex;flex-direction:column;gap:4px;z-index:100;animation:slide-up-fade .15s cubic-bezier(.16,1,.3,1)}@keyframes slide-up-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.account-menu-item{min-width:0;display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:13px;color:#cbd5e1;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease;text-align:left}.account-menu-item:hover{background:#ffffff0f;color:#fff}.account-menu-item.logout{color:#f87171}.account-menu-item.logout:hover{background:#ef44441f;color:#ef4444}.account-menu-item.logout.confirm-active{background:#dc2626;color:#fff;font-weight:600;animation:pulse-border 1.5s infinite}@keyframes pulse-border{0%{box-shadow:0 0 #dc262666}70%{box-shadow:0 0 0 6px #dc262600}to{box-shadow:0 0 #dc262600}}.main-panel{min-width:0;padding:34px 38px;background:#f8fafc}.page-header{margin-bottom:22px;display:flex;justify-content:space-between;gap:24px}.page-header-tight{align-items:flex-start}.page-header h1{margin:0;color:var(--navy);font-size:30px;line-height:1.2;letter-spacing:0}.page-header p{max-width:768px;margin:6px 0 0;color:var(--muted);font-size:14px;font-weight:400;line-height:1.55}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-card,.notice-panel,.panel-card,.message-card,.auth-card,.auth-copy{border:1px solid var(--line);background:var(--white);border-radius:8px;box-shadow:var(--shadow)}.metric-card{min-height:132px;padding:20px;display:grid;align-content:space-between;color:var(--green)}.metric-card strong{color:var(--navy);font-size:32px;line-height:1.1}.metric-card span{color:var(--muted);font-weight:650}.notice-panel{margin-top:18px;padding:18px 20px;display:flex;gap:14px;color:var(--amber);background:var(--amber-soft);border-color:#f0d29b}.notice-panel h2{margin:0 0 5px;color:var(--navy);font-size:18px}.notice-panel p{margin:0;color:#7a5618;line-height:1.55}.notice-panel-neutral{background:#f3f8fb;border-color:#d3e0ea;color:var(--navy-soft)}.notice-panel-neutral p{color:#46617d}.notice-panel-danger{background:#fff4f4;border-color:#efc5c5;color:#b43e3e}.notice-panel-danger p{color:#8f3939}.dashboard-summary-grid,.dashboard-panels{display:grid;gap:16px}.dashboard-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.report-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-card{min-height:156px;padding:22px 24px;border:1px solid rgba(226,232,240,.7);border-radius:20px;background:var(--white);box-shadow:0 2px 10px -3px #0651ed1a;display:grid;align-content:space-between}.summary-card strong{color:#1e293b;font-size:32px;font-weight:800;line-height:1.08}.summary-card p{margin:0;color:#64748b;font-size:14px;line-height:1.55}.summary-card-top{display:flex;justify-content:space-between;gap:16px}.dashboard-financial-card .summary-card-top{overflow:hidden}.dashboard-panels{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dashboard-negative-stock-list{max-height:320px;overflow-y:auto;padding-right:4px}.dashboard-panel-heading{margin-bottom:10px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dashboard-panel-heading h2{margin:0;color:#0f172a;font-size:18px}.panel-heading-actions,.panel-heading-actions-wrap{display:flex;align-items:center;gap:10px}.panel-heading-actions-wrap{flex-wrap:wrap;justify-content:flex-end}.inline-button{min-height:30px;padding:5px 10px;font-size:12px}.metric-grid-compact{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-shell{display:grid;gap:18px}.dashboard-financial-card{min-height:132px}.dashboard-alert-panels{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-soft-card{border:1px solid rgba(226,232,240,.7);border-radius:16px;box-shadow:0 2px 10px -3px #0651ed1a;padding:16px}.dashboard-alert-card{min-height:240px}.summary-card-heading,.dashboard-panel-title{display:flex;align-items:flex-start;gap:12px}.summary-card-heading>div,.dashboard-panel-title>div{display:grid;gap:4px}.summary-card-heading>div>span{color:#475569;font-size:14px;font-weight:700}.summary-card-heading small,.dashboard-panel-heading p,.dashboard-panel-title p{margin:0;color:#94a3b8;font-size:13px;line-height:1.5}.summary-icon{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:999px;flex:0 0 auto}.summary-icon.soft-teal{background:#ecfdf5;color:#0f766e}.summary-icon.soft-blue{background:#eff6ff;color:#2563eb}.summary-icon.soft-rose{background:#fff1f2;color:#e11d48}.summary-icon.soft-amber{background:#fffbeb;color:#d97706}.summary-icon.soft-orange{background:#fff7ed;color:#ea580c}.summary-icon.soft-slate{background:#f1f5f9;color:#475569}.dashboard-sparkline{width:112px;height:40px;flex:0 0 auto}.dashboard-sparkline polyline{fill:none;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.dashboard-sparkline.teal polyline{stroke:#14b8a6}.dashboard-sparkline.blue polyline{stroke:#3b82f6}.soft-count-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.soft-count-badge.danger{background:#fff1f2;color:#e11d48}.soft-count-badge.warning{background:#fff7ed;color:#ea580c}.dashboard-master-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-master-card{min-height:108px;padding:18px 20px;border:1px solid rgba(226,232,240,.7);border-radius:18px;background:#fff;box-shadow:0 2px 10px -3px #0651ed14;color:#334155}.dashboard-master-copy{display:grid;gap:6px}.dashboard-master-card strong{color:#1e293b;font-size:28px;font-weight:800;line-height:1.08}.dashboard-master-card span{color:#64748b;font-size:13px;font-weight:600}.dashboard-empty-state{min-height:188px;display:grid;place-items:center;gap:10px;text-align:center;color:#94a3b8}.dashboard-empty-icon{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border-radius:999px;background:#f8fafc;color:#94a3b8}.dashboard-empty-state p{margin:0;max-width:220px;font-size:14px;line-height:1.55}.alert-list{display:grid;gap:10px}.alert-item{border:1px solid var(--line);border-radius:8px;background:#fbfdfc;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:14px}.alert-item.warning{background:#fffbf3;border-color:#f2dfb6}.alert-item.danger{background:#fff6f6;border-color:#efcece}.alert-item-main{min-width:0}.alert-item-main strong,.alert-item-main small{display:block}.alert-item-main strong{color:var(--navy);line-height:1.4}.alert-item-main small{margin-top:4px;color:var(--muted);line-height:1.5}.alert-badge{flex:0 0 auto;min-height:28px;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:800;display:inline-grid;place-items:center}.alert-badge.warning{background:#fff0cf;color:#9b6500}.alert-badge.danger{background:#fde0e0;color:#b43e3e}.empty-state{margin:0;color:var(--muted);line-height:1.6}.dashboard-shell{gap:16px}.dashboard-summary-grid{gap:14px}.summary-card,.dashboard-soft-card{border:1px solid #e2e8f0;border-radius:20px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.summary-card{min-height:132px;padding:16px}.summary-card strong{color:#0f172a;font-size:24px;font-weight:700;letter-spacing:-.02em}.summary-card p{color:#64748b;font-size:13px}.summary-card-heading>div>span{color:#64748b;font-size:14px;font-weight:500}.summary-card-heading small,.dashboard-panel-heading p,.dashboard-panel-title p{color:#94a3b8;font-weight:400}.summary-icon{width:32px;height:32px;border-radius:12px}.dashboard-master-card{min-height:100px;padding:16px}.dashboard-master-card strong{color:#0f172a;font-size:24px;font-weight:700}.dashboard-master-card span{color:#64748b;font-weight:500}.dashboard-trend-line{display:flex;align-items:center;gap:6px;min-height:20px}.dashboard-trend{display:inline-flex;align-items:center;color:#64748b;font-size:11px;font-weight:700}.dashboard-trend.positive{color:#10b981}.dashboard-trend.negative{color:#ef4444}.dashboard-insight-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);gap:14px}.dashboard-chart-card,.dashboard-top-sellers-card{min-height:250px}.dashboard-panel-title h2{margin:0;color:#0f172a;font-size:14px;font-weight:600;letter-spacing:0}.dashboard-date-chip{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;color:#64748b;font-size:12px;font-weight:500;box-shadow:0 1px 2px #0f172a08;white-space:nowrap}.dashboard-link-button{border:0;background:transparent;color:#0d9488;display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:10px;font-size:13px;font-weight:600;transition:color .2s ease,background .2s ease}.dashboard-link-button svg{transition:transform .2s ease}.dashboard-link-button:hover{background:#f0fdfa;color:#0f766e}.dashboard-link-button:hover svg{transform:translate(2px)}.dashboard-bar-chart{position:relative;min-height:218px;padding:0;display:grid;gap:14px}.dashboard-chart-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dashboard-chart-summary>div{min-width:0;padding:10px 12px;border:1px solid #eef2f7;border-radius:10px;background:linear-gradient(180deg,#fff,#f8fafc)}.dashboard-chart-summary span{display:block;color:#94a3b8;font-size:11px;font-weight:600;line-height:1.25}.dashboard-chart-summary strong{display:block;margin-top:3px;color:#0f172a;font-size:14px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-sales-chart{width:100%;height:158px;min-width:260px;padding:2px 0 0}.dashboard-sales-tooltip{min-width:150px;padding:10px 12px;border:1px solid rgba(15,23,42,.08);border-radius:12px;background:#fffffff5;color:#0f172a;box-shadow:0 18px 38px #0f172a29;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.dashboard-sales-tooltip span,.dashboard-sales-tooltip strong,.dashboard-sales-tooltip small{display:block}.dashboard-sales-tooltip span{color:#64748b;font-size:11px;font-weight:600}.dashboard-sales-tooltip strong{margin-top:3px;color:#0f766e;font-size:16px;font-weight:800}.dashboard-sales-tooltip small{margin-top:2px;color:#94a3b8;font-size:11px;font-weight:600}.dashboard-chart-loading{min-height:218px;display:grid;place-items:center;color:#0d9488;font-size:14px;font-weight:600}.dashboard-top-sellers-table-wrap{overflow:auto;border:1px solid #f1f5f9;border-radius:16px}.dashboard-top-sellers-table{width:100%;border-collapse:collapse;font-size:13px}.dashboard-top-sellers-table th{padding:8px 12px;background:#f8fafc;color:#64748b;font-size:11px;font-weight:700;letter-spacing:.02em;text-align:left;border-bottom:1px solid #e2e8f0;white-space:nowrap}.dashboard-top-sellers-table td{padding:8px 12px;border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:middle}.dashboard-top-sellers-table tbody tr{transition:background .2s ease}.dashboard-top-sellers-table tbody tr:hover{background:#f8fafc}.dashboard-top-sellers-table tbody tr:last-child td{border-bottom:0}.dashboard-top-sellers-table .text-right{text-align:right}.rank-badge{display:inline-flex;width:24px;height:24px;align-items:center;justify-content:center;border-radius:999px;background:#f8fafc;color:#64748b;font-size:12px;font-weight:700}.rank-1{background:#fef3c7;color:#92400e}.rank-2{background:#f1f5f9;color:#475569}.rank-3{background:#ffedd5;color:#9a3412}.top-seller-product{min-width:0;display:grid;gap:2px}.top-seller-product strong{color:#0f172a;font-size:13px;font-weight:600;line-height:1.35}.top-seller-product span{color:#94a3b8;font-size:11px;font-weight:500}.alert-item{border-color:#e2e8f0;border-radius:12px;background:#fff;padding:9px 11px}.alert-item-main strong{color:#0f172a;font-weight:600}.alert-item-main small{color:#64748b}.alert-badge{font-weight:700}.stock-browser-card{margin-top:18px}.stock-browser-heading{margin-bottom:16px}.panel-subtext{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.stock-section-control{width:fit-content;margin-left:auto;margin-bottom:14px;grid-template-columns:repeat(4,minmax(108px,1fr))}.stock-section-control button{min-height:34px;padding:7px 12px;font-size:13px}.pagination-bar{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.pagination-summary{color:var(--muted);font-size:14px}.pagination-actions{display:flex;align-items:center;gap:10px}.pagination-button{min-height:36px;display:inline-flex;align-items:center;gap:8px}.pagination-button:disabled{cursor:not-allowed;border-color:var(--line);color:#9aa7b5}.receive-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(360px,1.05fr);gap:18px;align-items:start}.pos-screen{min-height:calc(100vh - 136px);display:grid;grid-template-rows:auto 1fr;gap:18px;overflow:visible}.pos-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr);gap:18px;align-items:start}.pos-layout-screen{min-height:0;height:auto;overflow:visible}.pos-tabbar{display:flex;align-items:flex-end;justify-content:flex-start;gap:4px;width:100%;min-width:0;margin-top:16px;margin-bottom:-18px;border-bottom:1px solid #e2e8f0;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.pos-tablist{display:flex;align-items:flex-end;gap:4px;flex:0 1 auto;min-width:0;overflow-x:visible;padding-bottom:0}.pos-tabbar::-webkit-scrollbar,.pos-tablist::-webkit-scrollbar{display:none}.pos-tab{border:1px solid transparent;border-bottom-color:#e2e8f0;border-radius:12px 12px 0 0;background:#f8fafcc7;min-width:124px;display:inline-flex;align-items:center;gap:4px;transition:background .2s ease,color .2s ease,border-color .2s ease}.pos-tab:hover{background:#f1f5f9}.pos-tab.is-active{background:#fff;border-top:2px solid #4bc0c0;border-right-color:#e2e8f0;border-left-color:#e2e8f0;border-bottom-color:#fff;box-shadow:0 -4px 6px -1px #00000005;margin-bottom:-1px;position:relative;z-index:10}.pos-tab-trigger{border:0;background:transparent;min-width:0;padding:10px 6px 10px 16px;display:inline-flex;align-items:center;text-align:left;color:var(--ink);white-space:nowrap;cursor:inherit}.pos-tab-trigger:focus-visible,.pos-tab-close:focus-visible,.pos-tab-add:focus-visible{outline:2px solid rgba(15,118,110,.28);outline-offset:2px}.pos-tab-copy{display:inline-flex;align-items:center;gap:6px;text-align:left;white-space:nowrap}.pos-tab-copy strong{font-size:14px;font-weight:700;color:#64748b;letter-spacing:0}.pos-tab-copy small{color:#64748b;font-size:11px;line-height:1;padding:2px 8px;border-radius:999px;background:#e2e8f0b8;font-weight:700}.pos-tab-close{border:0;background:transparent;width:20px;height:20px;margin-left:4px;margin-right:8px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#94a3b8;transition:background .2s ease,color .2s ease;flex:0 0 auto}.pos-tab-close:hover,.pos-tab-close:focus-visible{background:#fef2f2;color:#ef4444;outline:none}.pos-tab-add{flex:0 0 auto;border:1px solid rgba(75,192,192,.18);background:#4bc0c01a;width:36px;height:36px;margin-bottom:4px;margin-left:4px;padding:0;display:inline-flex;align-items:center;justify-content:center;color:#0f9ea6;border-radius:10px;box-shadow:0 1px 2px #0f172a14;transition:color .2s ease,background .2s ease,border-color .2s ease}.pos-tab-add:hover{background:#4bc0c02e;color:#0b7285;border-color:#4bc0c047}.pos-tab.is-active .pos-tab-copy strong{color:#0f766e;font-weight:700}.pos-tab.is-active .pos-tab-copy small{color:#0f766e;background:#4bc0c024}.pos-pane{min-width:0;min-height:0;display:grid;gap:18px}.pos-layout-screen>.pos-pane:not(.pos-side-pane){height:auto;overflow:visible;grid-template-rows:none}.pos-search-card,.pos-cart-card,.pos-summary-card,.pos-shortcuts-card{border:1px solid #edf1f4;border-radius:16px;background:#fff;box-shadow:0 18px 40px #0f172a0f}.pos-search-card,.pos-summary-card{background:#fff}.pos-search-card .panel-title-row{align-items:flex-start}.pos-search-card .panel-title-row h2,.pos-cart-card .panel-title-row h2{margin-bottom:0}.section-muted{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.55}.pos-header-badges{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.soft-badge{display:inline-flex;align-items:center;min-height:32px;padding:6px 10px;border:1px solid #d8e7de;border-radius:999px;background:#12845f14;color:var(--green-dark);font-size:12px;font-weight:700}.pos-search-bar{margin-bottom:8px;min-height:58px;border-radius:16px;border:1px solid #e3e8ee;background:#fbfcfd;box-shadow:0 8px 24px #0f172a0a}.pos-search-results{margin-top:10px;max-height:260px;overflow-y:auto;padding-right:4px}.pos-search-results .candidate-item{border-radius:12px;border-color:#dce5ea;background:linear-gradient(180deg,#fff,#fbfdfd);box-shadow:var(--shadow-soft)}.pos-search-results .candidate-item.active{border-color:#9ed5c0;box-shadow:0 12px 24px #12845f14}.candidate-meta{flex:0 0 auto;text-align:right}.candidate-meta strong,.candidate-meta small{display:block}.candidate-meta strong{color:var(--navy)}.candidate-meta small{margin-top:4px;color:var(--muted)}.pos-cart-list{display:flex;flex-direction:column;gap:8px;min-height:0;overflow:visible;padding:0 4px 10px 0}.pos-cart-card{min-height:0;display:grid;grid-template-rows:auto auto;border-top:0;border-color:#e2e8f0;border-radius:0 16px 16px;box-shadow:0 1px 2px #0f172a0f}.pos-cart-group{flex:0 0 auto;border:1px solid #d9ece5;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 8px 18px #0f172a09}.pos-cart-group.selected{border-color:#b8ddcb;box-shadow:0 16px 30px #12845f14}.pos-cart-group.keyboard-active{border-color:#8fcab3;box-shadow:inset 4px 0 #0f766e,0 16px 30px #12845f14}.pos-cart-row{border:1px solid rgba(204,251,241,.45);border-radius:14px;background:#f0fdfa38;box-shadow:0 1px 2px #0000000d;min-height:62px;padding:12px 14px;margin-bottom:0;display:flex;align-items:center;justify-content:space-between;gap:12px;transition:all .2s ease}.pos-cart-group.selected .pos-cart-row{background:linear-gradient(180deg,#fbfefd,#f3faf7)}.pos-cart-group.keyboard-active .pos-cart-row{background:linear-gradient(180deg,#f7fdfb,#edf8f3)}.pos-cart-toast{margin-bottom:12px}.soft-warning-toast{margin-bottom:12px;padding:10px 12px;border-radius:10px;background:#fff7ed;color:#9a3412;display:flex;align-items:center;justify-content:space-between;gap:10px}.soft-warning-toast span{display:inline-flex;align-items:center;gap:8px}.pos-cart-main{flex:1;min-width:160px;display:flex;flex-direction:column;justify-content:center;gap:5px}.pos-cart-controls{display:flex;align-items:center;gap:8px;flex-shrink:0}.pos-cart-qty{display:flex;align-items:center;border:1px solid #e2e8f0;border-radius:8px;background:#fff;overflow:hidden}.pos-cart-qty input{width:42px!important;text-align:center;border:none!important;border-left:1px solid #e2e8f0!important;border-right:1px solid #e2e8f0!important;border-radius:0!important;padding:4px!important;min-height:0!important}.pos-cart-stock{display:flex;flex-direction:column;justify-content:center;width:86px;flex-shrink:0;padding-left:8px}.pos-cart-action-shell{display:flex;align-items:center;gap:8px;flex-shrink:0}.pos-cart-total{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;width:88px;flex-shrink:0;gap:5px}.pos-cart-action-divider{width:1px;height:40px;background:#cbd5e1c7;margin:0 4px;flex-shrink:0}.pos-cart-actions{width:64px;flex-shrink:0;display:flex;align-items:center;justify-content:end;gap:6px}.pos-cart-actions .pos-delete-btn,.pos-label-inline-controls>button,.pos-cart-tool-button{width:28px;height:28px;min-height:28px;border:0;border-radius:8px;background:transparent;color:#94a3b8;padding:0;display:inline-flex;align-items:center;justify-content:center;transition:background .16s ease,color .16s ease}.pos-cart-tool-button.is-edit,.pos-label-inline-controls>button{flex-shrink:0}.pos-cart-tool-button.is-edit:hover,.pos-label-inline-controls>button:hover{color:#2563eb;background:#eff6ff}.pos-cart-tool-button.is-delete,.pos-cart-actions .pos-delete-btn{flex-shrink:0}.pos-cart-tool-button.is-delete:hover,.pos-cart-actions .pos-delete-btn:hover{color:#dc2626;background:#fef2f2}.pos-cart-main strong{font-size:13px;font-weight:700;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pos-cart-main small{font-size:11px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;line-height:1.25}.pos-cart-identity-line{display:inline-flex;align-items:center;gap:6px;color:#94a3b8!important;font-weight:500;min-width:0}.pos-cart-identity-line span:first-child,.pos-cart-identity-line span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.pos-cart-identity-divider{color:#cbd5e1;flex-shrink:0}.pos-cart-stock strong{font-size:13px;font-weight:500;color:#334155;line-height:1.2}.pos-cart-stock small{font-size:10px;color:#64748b;margin-top:4px;line-height:1.25}.pos-cart-total strong{font-size:15px;font-weight:700;color:#1e293b;line-height:1.15}.pos-promo-badge{margin-top:8px;display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}.pos-promo-badge.is-discount{background:#ecfdf5;color:#16a34a}.pos-promo-badge.is-gift{background:#eef2ff;color:#4f46e5}.pos-freebie-stack{border-top:1px dashed #dbe5ec;background:linear-gradient(180deg,#fcfcff,#f8f9ff);padding:6px 12px 10px;display:grid;gap:6px}.pos-freebie-row{min-height:0;margin-left:44px;padding:8px 10px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffffffb8}.pos-freebie-main{min-width:0;display:flex;align-items:center;gap:10px}.pos-freebie-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:10px;background:#f3e8ff;color:#7c3aed;font-size:12px;font-weight:700;white-space:nowrap}.pos-freebie-copy{min-width:0}.pos-freebie-copy strong,.pos-freebie-copy small{display:block}.pos-freebie-copy strong{color:#475569;font-size:14px;font-weight:700}.pos-freebie-copy small{margin-top:2px;color:#94a3b8;font-size:12px}.pos-freebie-meta{display:flex;align-items:center;gap:14px;padding-left:12px;white-space:nowrap}.pos-freebie-qty{color:#475569;font-size:13px;font-weight:600}.pos-freebie-price{color:#94a3b8;font-size:13px;font-weight:700;font-family:JetBrains Mono,Fira Code,Consolas,monospace}.pos-cart-main strong,.pos-cart-total strong,.pos-cart-stock strong{color:var(--navy)}.pos-cart-main small,.pos-cart-stock small,.pos-cart-total small{margin-top:0;color:var(--muted)}.pos-cart-vat-breakdown{display:flex;flex-direction:column;align-items:flex-end;font-size:10px;color:#64748b;margin-top:0;line-height:1.35}.pos-cart-vat-breakdown small{margin-top:0!important;display:block}.pos-cart-unit select,.pos-field-grid input{width:100%;min-height:34px;border:1px solid #e2e8f0;border-radius:8px;background:var(--white);color:var(--ink);padding:5px 10px;font-size:13px;outline:none;transition:border-color .2s ease}.pos-cart-unit select{min-width:72px}.pos-cart-unit select:focus,.pos-cart-unit select:hover,.pos-field-grid input:focus{border-color:#14b8a6;outline:0}.pos-unit-chip{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border:1px solid var(--line);border-radius:8px;background:#f7faf9;color:var(--navy);font-weight:700}.pos-cart-qty{display:grid;grid-template-columns:28px 42px 28px;align-items:center;gap:0}.pos-cart-qty input{width:100%;min-height:30px;border:1px solid var(--line);border-radius:0;text-align:center;font-size:13px;font-weight:700}.pos-cart-qty .table-icon-button{width:28px;height:30px;min-height:30px;border-radius:0;background:#f8fafc;color:#64748b}.pos-cart-qty .table-icon-button:first-child{border-radius:8px 0 0 8px}.pos-cart-qty .table-icon-button:last-child,.pos-cart-qty .pos-locked-chip{border-radius:0 8px 8px 0}.pos-cart-qty input:focus{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f;outline:0}.pos-locked-chip{width:28px;min-height:30px;border-radius:0 8px 8px 0;background:#f8fafc;color:#64748b;display:inline-flex;align-items:center;justify-content:center}.pos-side-pane{position:sticky;top:16px;align-self:start;min-height:0;height:calc(100vh - 32px);max-height:calc(100vh - 32px)}.pos-summary-card h2,.pos-shortcuts-card h2{margin:0}.pos-summary-card{height:100%;max-height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding:16px}.pos-summary-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:2px}.pos-summary-footer{flex:0 0 auto;position:sticky;bottom:0;margin-top:auto;border-top:1px solid #e8eef1;background:linear-gradient(180deg,#ffffffe0,#fff 36%);padding-top:10px}.pos-total-hero{margin-top:12px;margin-bottom:12px;padding:16px;border:0;border-radius:12px;background:linear-gradient(90deg,#0f172a,#1e293b);color:var(--white);box-shadow:0 10px 22px #0f172a1f;display:flex;align-items:center;justify-content:space-between;gap:14px}.pos-total-hero span,.pos-total-hero strong{display:block}.pos-total-hero span{color:#ccfbf1d1;font-size:12px;font-weight:700}.pos-total-hero strong{margin-top:0;font-size:28px;line-height:1;letter-spacing:0;text-align:right}.cash-panel-card{margin-top:0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);gap:10px}.cash-input-field{display:grid;gap:6px;color:var(--navy);font-size:12px;font-weight:750}.cash-input-field input{width:100%;min-height:40px;border:2px solid #e2e8f0;border-radius:12px;background:#fff;color:var(--navy);padding:8px 10px;font-size:16px;font-weight:800}.cash-input-field input:focus{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f;outline:0}.quick-cash-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:2px}.quick-cash-chip{min-height:24px;padding:4px 8px;border:1px solid #e2e8f0;border-radius:6px;background:#f1f5f9;color:#475569;font-size:11px;font-weight:800;line-height:1;cursor:pointer;transition:border-color .12s ease,background-color .12s ease,color .12s ease}.quick-cash-chip:hover,.quick-cash-chip:focus-visible{background:#e2e8f0;color:#334155;border-color:#cbd5e1;outline:0}.quick-cash-chip.is-exact{background:#f0fdfa;color:#0f766e;border-color:#99f6e4}.cash-change-display{padding:10px;border-radius:12px;border:1px solid #ccfbf1;background:#f0fdfab3;display:flex;flex-direction:column;justify-content:space-between}.cash-change-display span,.cash-change-display strong,.cash-change-display small{display:block}.cash-change-display span{color:var(--green-dark);font-size:10px;font-weight:800;text-transform:none;letter-spacing:0}.cash-change-display strong{margin-top:8px;color:var(--green-dark);font-size:22px;line-height:1}.cash-change-display small{margin-top:6px;color:var(--muted);font-size:10px;font-weight:700;line-height:1.25}.cash-change-display.is-warning{border-color:#f1d2c2;background:linear-gradient(135deg,#fff5ef,#ffeade)}.cash-change-display.is-warning span,.cash-change-display.is-warning strong{color:#b54708}.split-payment-entry{margin-top:12px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.split-payment-trigger,.split-shortfall-pill{border:0;display:inline-flex;align-items:center;gap:6px;transition:background-color .14s ease,color .14s ease,border-color .14s ease}.split-payment-trigger{border-radius:8px;background:#f0fdfab8;color:#0f766e;padding:7px 13px;font-size:13px;font-weight:800}.split-payment-trigger:hover,.split-payment-trigger:focus-visible{background:#ccfbf1;outline:0}.split-shortfall-pill{border:1px solid rgba(254,215,170,.7);border-radius:999px;background:#fff7ed;color:#ea580c;padding:6px 11px;font-size:12.5px;font-weight:750}.split-payment-panel{margin-top:12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafce0;padding:12px;display:grid;gap:10px;box-shadow:0 14px 30px #0f172a0d}.split-payment-panel-head,.split-payment-row,.split-add-button,.split-change-card{display:flex;align-items:center}.split-payment-panel-head{justify-content:space-between;gap:12px}.split-payment-panel-head strong,.split-payment-panel-head small{display:block}.split-payment-panel-head strong{color:#0f172a;font-size:15px}.split-payment-panel-head small{margin-top:2px;color:#64748b;font-size:13px}.split-balance-pill{white-space:nowrap;border-radius:999px;padding:6px 11px;font-size:12.5px;font-weight:800}.split-balance-pill.is-pending{background:#fff7ed;color:#ea580c}.split-balance-pill.is-ready{background:#f0fdfa;color:#0f766e}.split-payment-rows{display:grid;gap:8px}.split-payment-row{gap:8px;align-items:flex-start}.split-payment-row label{min-width:0;flex:1 1 0;display:grid;gap:5px;color:#64748b;font-size:12.5px;font-weight:800}.split-payment-row input,.split-method-select select{width:100%;min-height:38px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;padding:7px 10px;font-size:13.5px;font-weight:750}.split-payment-row input:focus,.split-method-select select:focus{border-color:#2dd4bf;box-shadow:0 0 0 3px #2dd4bf24;outline:0}.split-method-select div{position:relative}.split-method-select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:30px}.split-method-select svg{position:absolute;top:50%;right:10px;color:#94a3b8;pointer-events:none;transform:translateY(-50%)}.split-payment-placeholder{flex:1 1 0}.split-remove-button{align-self:end;width:38px;height:38px;border:0;border-radius:10px;background:transparent;color:#94a3b8;display:inline-flex;align-items:center;justify-content:center}.split-remove-button:hover,.split-remove-button:focus-visible{background:#fef2f2;color:#ef4444;outline:0}.split-add-button{width:100%;justify-content:center;gap:6px;border:1px dashed #cbd5e1;border-radius:10px;background:#fff;color:#64748b;padding:8px 10px;font-size:13px;font-weight:800}.split-add-button:hover,.split-add-button:focus-visible{border-color:#14b8a6;color:#0f766e;outline:0}.split-payment-warning{margin-top:-1px;color:#dc2626;font-size:12px;font-weight:700;line-height:1.4}.split-change-card{justify-content:space-between;align-items:center;gap:18px;border-radius:14px;border:1px solid #f7c8ae;background:linear-gradient(135deg,#fff4ec,#fee9dd);color:#c2410c;padding:12px 16px;margin-bottom:10px}.split-change-copy{min-width:0;flex:1 1 auto;display:grid;gap:4px}.split-change-card span,.split-change-card small{color:#8b5e50;font-size:14px;font-weight:750}.split-change-card span{color:#9a3412;line-height:1.25}.split-change-card small{color:#64748b;line-height:1.35}.split-change-card strong{font-size:clamp(34px,4vw,46px);line-height:1;flex:0 0 auto;text-align:right;color:#c2410c}.checkout-payment-breakdown{margin-top:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;padding:12px;display:grid;gap:8px}.checkout-payment-breakdown>strong{color:#0f172a;font-size:13px}.checkout-payment-breakdown>div{display:flex;justify-content:space-between;gap:12px;color:#64748b;font-size:13px}.pos-field-grid{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pos-toggle-stack{margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.pos-toggle-chip{min-height:28px;border:1px solid #e2e8f0;border-radius:7px;background:#f8fafc;color:#64748b;padding:5px 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:11px;font-weight:700;transition:background-color .12s ease,color .12s ease}.pos-toggle-chip svg{width:12px;height:12px}.pos-invoice-prefix-toggle{display:none}.pos-toggle-chip:hover,.pos-toggle-chip:focus-visible{background:#f1f5f9;color:#1f2937;outline:0}.pos-toggle-chip.active{background:#f0fdfa;color:var(--green-dark)}.pos-tools-bar{display:flex;align-items:center;gap:8px}.pos-field-grid label{display:grid;gap:6px;color:var(--navy);font-size:12px;font-weight:750}.pos-payment-grid{margin-top:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pos-payment-grid.compact-methods{grid-template-columns:minmax(0,1fr) minmax(0,.72fr)}.payment-method-button{min-height:38px;border:1px solid #d6e0e6;border-radius:9px;background:linear-gradient(180deg,#fff,#f9fbfb);color:var(--navy);padding:7px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:750;line-height:1.2}.payment-method-button svg{width:14px;height:14px}.payment-method-button.active{border-color:#9ed5c0;background:linear-gradient(180deg,#f5fbf8,#eaf8f1);color:var(--green-dark);box-shadow:0 10px 20px #12845f14}.payment-method-button.is-disabled,.payment-method-button:disabled{border-color:#e5e7eb;background:linear-gradient(180deg,#f8fafc,#f1f5f9);color:#94a3b8;cursor:not-allowed;box-shadow:none;opacity:.75}.promotion-page{display:grid;gap:20px}.promo-dashboard-shell,.promo-wizard-shell,.promo-step-body,.promo-rule-stack,.promo-review-grid,.promo-review-rule-list{display:grid;gap:16px}.promo-dashboard-toolbar,.promo-dashboard-tabs,.promo-status-choice-row,.promo-wizard-topbar,.promo-wizard-actions,.promo-rule-header,.promo-selected-row,.promo-action-row{display:flex;align-items:center;gap:12px}.promo-dashboard-toolbar,.promo-wizard-topbar,.promo-wizard-actions,.promo-rule-header,.promo-selected-row{justify-content:space-between}.promo-dashboard-tabs{padding:4px;border:1px solid #dbe4ea;border-radius:999px;background:#fff;box-shadow:0 12px 32px #0f172a0a}.promo-dashboard-tab,.promo-status-choice,.promo-back-button,.promo-inline-clear{min-height:36px;border:0;border-radius:999px;background:transparent;color:#64748b;padding:8px 14px;font-size:13px;font-weight:700}.promo-dashboard-tab.active,.promo-status-choice.active{background:#0f766e;color:#fff;box-shadow:0 10px 22px #0f766e29}.promo-create-button{min-height:42px;border:0;border-radius:14px;background:linear-gradient(135deg,#0f766e,#0d9488);color:#fff;padding:10px 16px;display:inline-flex;align-items:center;gap:8px;font-weight:800;box-shadow:0 18px 34px #0f766e2e}.promo-table-card,.promo-wizard-card,.promo-review-card,.promo-rule-card-modern{display:grid;gap:16px}.promo-table-wrap{overflow:auto;border:1px solid #e6edf2;border-radius:16px;background:#fff}.promo-table{min-width:860px}.promo-table th,.promo-table td{padding-top:14px;padding-bottom:14px;border-bottom-color:#eef2f5;background:#fff}.promo-table tbody tr:hover,.promo-table tbody tr:hover td{background:#f8fbfc}.promo-status-toggle{display:inline-flex;align-items:center;gap:10px}.promo-status-toggle input{position:absolute;opacity:0;pointer-events:none}.promo-status-toggle-track{width:42px;height:24px;border-radius:999px;background:#dbe4ea;padding:3px;display:inline-flex;align-items:center;transition:background-color .12s ease}.promo-status-toggle-thumb{width:18px;height:18px;border-radius:999px;background:#fff;box-shadow:0 4px 10px #0f172a1f;transition:transform .12s ease}.promo-status-toggle input:checked+.promo-status-toggle-track{background:#14b8a6}.promo-status-toggle input:checked+.promo-status-toggle-track .promo-status-toggle-thumb{transform:translate(18px)}.promo-status-toggle small,.promo-name-cell small,.promo-duration-text,.promo-review-card p,.promo-review-card span,.promo-review-rule-list span,.promo-type-option small,.promo-search-result small,.promo-search-empty,.promo-inline-error{color:#64748b}.promo-name-cell{display:grid;gap:4px}.promo-type-badge{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.promo-type-badge.is-bogo{background:#eef2ff;color:#4f46e5}.promo-type-badge.is-discount{background:#ecfdf5;color:#15803d}.promo-icon-button{width:34px;height:34px;min-height:34px;border:0;border-radius:10px;background:#f8fafc;color:#64748b;padding:0;display:inline-grid;place-items:center}.promo-icon-button:hover,.promo-inline-clear:hover,.promo-back-button:hover{background:#f1f5f9;color:#0f172a}.promo-empty-state{padding:18px}.promo-stepper{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.promo-stepper-item{border:1px solid #e2e8f0;border-radius:16px;background:#fff;padding:14px 16px;display:flex;align-items:center;gap:12px;text-align:left;color:#475569}.promo-stepper-item small{display:block;margin-bottom:2px;color:#94a3b8;font-size:11px;font-weight:700}.promo-stepper-item strong{color:#0f172a}.promo-stepper-item.active{border-color:#99f6e4;background:#f0fdfa}.promo-stepper-item.completed{border-color:#ccfbf1;background:#f7fffd}.promo-stepper-dot{width:32px;height:32px;border-radius:999px;background:#e2e8f0;color:#334155;display:inline-grid;place-items:center;font-size:13px;font-weight:800}.promo-stepper-item.active .promo-stepper-dot,.promo-stepper-item.completed .promo-stepper-dot{background:#14b8a6;color:#fff}.promo-form-grid-wide,.promotion-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.promotion-form-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.promo-field,.promo-field-wide{display:grid;gap:8px}.promo-field-wide{grid-column:1 / -1}.promo-label{color:#475569;font-size:12px;font-weight:700}.promo-input-with-icon,.promo-search-input{display:inline-flex;align-items:center;gap:10px;min-height:48px;border:1px solid #dbe4ea;border-radius:14px;background:#fff;color:#64748b;padding:0 14px}.promo-field input,.promo-field select,.promo-input-with-icon input,.promo-search-input input{width:100%;min-height:46px;border:1px solid #dbe4ea;border-radius:14px;background:#fff;color:#0f172a;padding:0 14px}.promo-input-with-icon input,.promo-search-input input{min-height:0;border:0;padding:0}.promo-field input:focus,.promo-field select:focus,.promo-input-with-icon:focus-within,.promo-search-input:focus-within{border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61f;outline:0}.promo-type-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.promo-type-option{border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:18px;display:grid;gap:10px;text-align:left}.promo-type-option.active{border-color:#99f6e4;background:#f0fdfa;box-shadow:0 18px 40px #0f766e14}.promo-type-option-icon{display:inline-flex;align-items:center;gap:8px;color:#0f766e}.promo-rule-card-modern{padding:18px;border:1px solid #e2e8f0;border-radius:18px;background:linear-gradient(180deg,#fff,#fbfdfd)}.promo-rule-header small,.promo-review-card small{color:#94a3b8;font-size:11px;font-weight:700;text-transform:uppercase}.promo-rule-header strong,.promo-review-card strong{display:block;margin-top:4px;color:#0f172a}.promo-search-results{margin-top:8px;max-height:260px;overflow-y:auto;padding:4px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;display:grid;gap:6px}.promo-search-result{border:1px solid transparent;border-radius:12px;background:#fff;padding:10px 12px;text-align:left;display:grid;gap:4px}.promo-search-result.active,.promo-search-result:hover{border-color:#99f6e4;background:#f0fdfa}.promo-search-empty{margin-top:8px;padding:10px 12px;border-radius:12px;background:#f8fafc;font-size:13px}.promo-selected-row{margin-top:8px;flex-wrap:wrap}.promo-selected-product{min-height:36px;border-radius:999px;background:#f8fafc;color:#0f172a;padding:6px 10px;display:inline-flex;align-items:center;gap:8px}.promo-selected-product strong,.promo-selected-product small{display:block}.promo-inline-stock,.promo-stock-hint{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700}.promo-inline-stock,.promo-stock-hint.is-good{background:#ecfdf5;color:#0f766e}.promo-stock-hint.is-warning{background:#fff7ed;color:#c2410c}.promo-inline-error{font-size:12px}.promo-add-rule-button{min-height:48px;border:1px dashed #cbd5e1;border-radius:16px;background:#fff;color:#475569;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700}.promo-add-rule-button:hover{border-color:#14b8a6;color:#0f766e;background:#f8fffe}.promo-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.promo-review-card{padding:18px;border:1px solid #e2e8f0;border-radius:18px;background:#fff}.promo-review-card p{margin:8px 0 10px;line-height:1.6}.promo-review-rule-list span{display:block;padding-top:8px}.promo-status-choice-row{flex-wrap:wrap}.promo-back-button{padding-inline:0;border-radius:0;display:inline-flex;align-items:center;gap:8px}.promo-inline-clear{background:#f8fafc}.text-right{text-align:right}.soft-warning-banner{padding:12px 14px;border-radius:12px;background:#fff7ed;color:#9a3412;display:inline-flex;align-items:center;gap:8px}.pos-totals{margin-top:16px;display:grid;gap:10px}.pos-totals.compact{gap:8px}.pos-totals>div{border:1px solid #dbe4e9;border-radius:10px;background:#fbfcfc;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.pos-totals span{color:var(--muted);font-size:14px;font-weight:700}.pos-totals strong{color:var(--navy);font-size:20px}.pos-vat-summary{display:flex;flex-direction:column;gap:6px;margin-top:12px;padding:12px;border:1px solid rgba(226,232,240,.8);border-radius:12px;background:#f8fafcc7}.pos-vat-summary>div{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:#64748b;font-weight:700}.pos-vat-summary>div:first-child{padding-bottom:8px;margin-bottom:2px;border-bottom:1px solid rgba(203,213,225,.65);color:#1e293b;font-size:14px;font-weight:900}.pos-vat-summary span:last-child{font-weight:800;color:inherit}.pos-vat-summary .is-discount span:last-child{color:#ef4444}.pos-checkout-button{width:100%;min-height:48px;margin-top:0;font-size:16px;box-shadow:0 16px 32px #12845f2e}.pos-shortcuts-card{background:linear-gradient(180deg,#fff,#fbfcfc)}.pos-search-hint,.pos-notice{border-radius:12px;padding:9px 11px;font-size:13px;line-height:1.35}.pos-summary-footer .pos-notice{margin-top:8px;border-radius:10px;padding:7px 10px;font-size:12.5px;font-weight:750}.pos-search-hint.is-error,.pos-notice.is-error{background:#fff2ed;color:#b54708}.pos-search-hint.is-success,.pos-notice.is-success{background:#eef9f4;color:var(--green-dark)}.order-history-list{display:grid;gap:12px}.checkout-review-modal{width:min(680px,100%)}.checkout-review-list{max-height:260px;overflow-y:auto;display:grid;gap:8px;padding-right:4px}.checkout-review-row{border:1px solid #e2eaef;border-radius:10px;background:#fbfcfd;padding:11px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px}.checkout-review-row strong,.checkout-review-row small{display:block}.checkout-review-row small{margin-top:3px;color:var(--muted)}.checkout-review-totals{margin-top:14px}.checkout-review-grand-total{margin-top:14px;border:1px solid #cfe4da;border-radius:14px;background:#eef9f4;color:var(--green-dark);padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.checkout-review-grand-total span{font-weight:800}.checkout-review-grand-total strong{color:var(--green-dark);font-size:28px}.checkout-success-modal{width:min(760px,100%);border-radius:20px;padding:24px}.checkout-success-topbar{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center}.checkout-success-heading{min-width:0}.checkout-success-label{display:block;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.checkout-success-heading strong{display:block;margin-top:4px;color:var(--navy);font-size:24px}.checkout-success-icon{width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,#12845f1f,#12845f33);color:var(--green-dark);display:grid;place-items:center;box-shadow:inset 0 1px #ffffffa6}.checkout-change-hero{margin-top:18px;padding:20px 22px;border-radius:20px;background:linear-gradient(135deg,#12845f14,#12845f26);border:1px solid rgba(18,132,95,.16)}.checkout-change-hero span,.checkout-change-hero strong,.checkout-change-hero small{display:block}.checkout-change-hero span{color:var(--green-dark);font-size:13px;font-weight:800}.checkout-change-hero strong{margin-top:8px;color:var(--green-dark);font-size:clamp(40px,6vw,56px);line-height:1}.checkout-change-hero small{margin-top:10px;color:var(--muted);font-size:13px;font-weight:700}.checkout-success-grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checkout-success-grid.compact{margin-top:14px}.checkout-success-metric{border:1px solid #e2eaef;border-radius:14px;background:#fbfcfd;padding:14px 16px}.checkout-success-metric span,.checkout-success-metric strong{display:block}.checkout-success-metric span{color:var(--muted);font-size:12px;font-weight:700}.checkout-success-metric strong{margin-top:6px;color:var(--navy);font-size:20px}.checkout-success-meta{margin-top:14px;color:var(--muted);font-size:13px;font-weight:700}.receipt-preview-card{margin-top:16px;border:1px solid #e5ebef;border-radius:18px;background:#f7f9fb;padding:14px}.receipt-preview-header{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.receipt-preview-header span{color:var(--navy);font-weight:800}.receipt-preview-header small{color:var(--muted);font-weight:700}.receipt-preview-list{max-height:200px;overflow-y:auto;display:grid;gap:10px;padding-right:4px}.receipt-preview-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid #e8edf1}.receipt-preview-row strong,.receipt-preview-row small,.receipt-preview-row span{display:block}.receipt-preview-row strong{color:var(--navy);font-size:14px}.receipt-preview-row small{margin-top:4px;color:var(--muted)}.receipt-preview-row span{color:var(--navy);font-weight:800;white-space:nowrap}.checkout-success-actions{margin-top:20px;display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px}.checkout-success-actions.compact>*{flex:1 1 0}.with-icon{display:inline-flex;align-items:center;justify-content:center;gap:8px}.hotkey-button{position:relative;min-height:52px}.hotkey-pill{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:24px;padding:0 8px;border-radius:999px;background:#0b1f3a14;color:var(--navy);font-size:11px;font-weight:800}.hotkey-pill-light{background:#ffffff2e;color:#fff}.checkout-success-footer{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;font-weight:700}.thermal-receipt-root{display:none}.thermal-receipt{width:80mm;padding:2mm 4mm;background:#fff;color:#000;font-family:Courier New,Courier,monospace,sans-serif;font-size:12px;line-height:1.25}.thermal-receipt-header,.thermal-receipt-footer,.thermal-meta,.thermal-summary,.thermal-payments,.thermal-item-table{display:grid;gap:2px}.thermal-receipt-header,.thermal-receipt-footer{justify-items:center;text-align:center}.thermal-company-th,.thermal-receipt-no{font-size:14px;font-weight:800}.thermal-company-en{font-size:13px;font-weight:800}.thermal-address{max-width:100%;overflow-wrap:anywhere}.thermal-document-title{margin-top:4px}.thermal-receipt-no{margin-top:2px}.thermal-meta{margin:4px 0;text-align:left;font-size:11px}.thermal-meta-split,.thermal-item-table-head,.thermal-item-row,.thermal-summary>div,.thermal-payments>div{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.thermal-divider{border-bottom:1.5px dashed #000000;margin:6px 0}.thermal-divider.is-dotted{border-bottom-style:dotted;border-bottom-width:1px;margin-top:8px}.thermal-item-table-head{margin-bottom:3px;font-weight:800}.thermal-item-table-head span:nth-child(1),.thermal-item-qty{width:28px;flex:0 0 28px;text-align:left}.thermal-item-table-head span:nth-child(2),.thermal-item-name{flex:1;min-width:0}.thermal-item-table-head span:nth-child(2){text-align:center}.thermal-item-table-head span:nth-child(3),.thermal-item-total{width:62px;flex:0 0 62px;text-align:right}.thermal-item-name strong,.thermal-item-name small{display:block;overflow-wrap:anywhere}.thermal-summary strong{font-weight:800}.thermal-net-total{font-size:13px;font-weight:800}.thermal-tax-note{margin:4px 0;text-align:center;font-size:10px}.thermal-barcode{width:min(100%,200px);height:40px;display:block;margin:4px auto}.order-history-card{border:1px solid #dce5ea;border-radius:12px;background:linear-gradient(180deg,#fff,#fbfcfc);padding:16px;display:grid;gap:14px}.order-history-top,.order-history-actions,.order-history-top-right,.order-history-item{display:flex;align-items:center;justify-content:space-between;gap:12px}.order-history-top strong,.order-history-top small,.order-history-item span,.order-history-item small{display:block}.order-history-top strong,.order-history-item span{color:var(--navy)}.order-history-top small,.order-history-item small{color:var(--muted)}.order-history-items{display:grid;gap:8px}.order-history-item{border:1px solid #e3ebef;border-radius:10px;background:#fbfdfd;padding:10px 12px}.order-history-badge{min-height:24px;padding:4px 8px;border-radius:999px;background:#eef9f4;color:var(--green-dark);font-size:12px;font-weight:800}.order-history-badge.is-muted{background:#eff3f5;color:var(--muted)}.product-lookup-toolbar{margin-bottom:16px}.product-editor-layout{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(380px,1.05fr);gap:18px;align-items:start}.product-editor-stack{display:grid;gap:18px}.compact-product-modal{width:min(860px,100%)}.compact-search-bar{grid-template-columns:auto minmax(0,1fr) auto auto;margin-bottom:8px}.compact-action-button{min-height:36px;padding:8px 14px}.inline-heading{display:inline-flex;align-items:center;gap:8px;margin-bottom:14px}.inline-heading h2{margin:0}.active-icon-button{border-color:var(--green);background:var(--green-soft);color:var(--green-dark)}.table-expand-cell{width:52px;text-align:center}.expandable-product-row{cursor:pointer}.expandable-product-row:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.product-detail-row td{background:#f9fbfc;padding-top:0}.lookup-code-col,.lookup-price-col,.lookup-action-col{white-space:nowrap}.lookup-code-cell{color:#64748b}.lookup-code-stack{display:inline-flex;align-items:center;gap:10px}.lookup-code-text{color:#64748b;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:13px}.lookup-code-spacer{width:30px;height:30px;flex:0 0 30px}.lookup-name-cell{color:#1e293b;font-weight:600}.lookup-generic-cell{color:#475569;font-size:13px}.lookup-unit-cell{color:#334155}.lookup-price-cell,.lookup-price-col,.lookup-action-cell,.lookup-action-col{text-align:right}.lookup-price-cell{color:#0f172a;font-weight:700}.lookup-action-button{width:30px;height:30px;min-height:30px;border:0;border-radius:999px;background:transparent;color:#94a3b8;padding:0;display:inline-grid;place-items:center;justify-self:end}.lookup-action-button:hover{background:#f1f5f9;color:#0f766e}.product-detail-card{border:1px solid #dfe8ed;border-radius:14px;background:linear-gradient(180deg,#fff,#f8fbfb);box-shadow:0 10px 24px #0f172a0a;padding:16px;display:grid;gap:14px}.detail-label{display:block;margin-bottom:5px;color:var(--muted);font-size:12px;font-weight:700}.product-detail-grid,.product-detail-top-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-detail-bottom-section{border:1px solid #e2ebef;border-radius:10px;background:#f7fafbeb;padding:14px;margin-top:14px;display:flex;flex-direction:column;gap:12px}.drug-instructions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.drug-instruction-card{padding:14px;border-radius:8px;background:#fff;border:1px solid #eef2f5;transition:all .2s ease}.drug-instruction-card.usage-card{border-left:4px solid #14b8a6}.drug-instruction-card.precautions-card{border-left:4px solid #facc15;background:#fffdf9}.drug-instruction-card.generic-card{border-left:4px solid #38bdf8}.drug-instruction-card.storage-card{border-left:4px solid #8b5cf6}.drug-instruction-card p{margin:6px 0 0;font-size:13px;line-height:1.6;color:#334155;white-space:pre-line}.drug-info-placeholder{color:#94a3b8!important;font-style:italic}.drug-info-language-note{display:block;margin-top:8px;color:#94a3b8;font-size:11px;font-weight:600}.product-detail-section{border:1px solid #e2ebef;border-radius:10px;background:#f7fafbeb;padding:14px;display:flex;flex-direction:column;gap:12px}.product-detail-section-header{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.product-info-header-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.product-info-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.product-label-print-button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:0;border-radius:12px;background:#14b8a6;color:#fff;font-size:11px;font-weight:800;line-height:1;cursor:pointer;box-shadow:0 1px 2px #0000000d;transition:background-color .16s ease}.product-label-print-button:hover{background:#0d9488}.product-info-header-en{color:#64748b;font-weight:700;letter-spacing:0;text-transform:none}.product-info-lang-toggle{display:flex;align-items:center;width:fit-content;flex-shrink:0;padding:2px;border:1px solid rgb(226 232 240 / 60%);border-radius:8px;background:#f1f5f9}.product-info-lang-option{padding:4px 10px;border:0;border-radius:6px;background:transparent;color:#94a3b8;font-size:11px;font-weight:600;line-height:1.2;cursor:pointer;transition:all .18s ease}.product-info-lang-option:hover{color:#475569}.product-info-lang-option.active{background:#fff;color:#0d9488;font-weight:800;box-shadow:0 1px 2px #0000000d;cursor:default}.product-label-modal{max-width:760px}.product-sticker-preview{border-color:#cbd5e1;border-radius:14px;background:#f8fafc}.settings-table-header,.label-modal-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.modal-header-actions{display:flex;align-items:center;gap:8px}.compact-print-button{padding:7px 10px;font-size:12px}.settings-add-button,.history-label-button{display:inline-flex;align-items:center;gap:6px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f766e;font-size:12px;font-weight:800;padding:7px 10px;cursor:pointer}.settings-data-table-wrap{overflow-x:auto}.settings-data-table{width:100%;border-collapse:collapse;font-size:13px}.settings-data-table th,.settings-data-table td{border-bottom:1px solid #e2e8f0;padding:12px;text-align:left;vertical-align:top}.sig-code{display:inline-flex;padding:4px 8px;border-radius:7px;background:#ecfeff;color:#0f766e}.sig-copy-stack{display:grid;gap:4px}.sig-copy-stack small,.settings-inline-message{color:#64748b;font-size:12px}.settings-row-actions{display:flex;gap:6px}.dosage-preset-modal,.drug-label-modal,.drug-label-preview-modal{max-width:860px}.dosage-preset-grid,.label-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.label-preview-edit-grid{margin-top:14px;margin-bottom:14px}.dosage-locale-panel,.label-edit-grid label{display:grid;gap:8px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:14px;color:#334155;font-size:12px;font-weight:800}.dosage-locale-panel h3{margin:0;color:#0f766e;font-size:13px}.settings-form-field,.compact-field{display:grid;gap:7px;color:#475569;font-size:12px;font-weight:800;min-width:min(240px,100%);flex:1 1 240px}.settings-input.subtle-input{background:#f8fafc}.settings-input.subtle-input:focus{background:#fff}.pos-label-inline{display:contents}.pos-label-mini-title{grid-column:1;grid-row:1;justify-self:end;align-self:center;color:#64748b;font-size:0;font-weight:600;letter-spacing:0;line-height:1}.pos-label-mini-title:after{content:"ฉลาก";font-size:10px}.pos-label-inline-controls{display:contents}.pos-label-toggle{grid-column:2;grid-row:1;justify-self:end;width:28px;height:16px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:999px;background:#cbd5e1;cursor:pointer;position:relative;transition:background .18s ease}.pos-label-toggle:before{content:"";position:absolute;width:12px;height:12px;top:2px;left:2px;border-radius:999px;background:#fff;transition:transform .18s ease}.pos-label-toggle:checked{background:#14b8a6}.pos-label-toggle:checked:before{transform:translate(12px)}.patient-name-field{display:grid;gap:7px;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;background:#f8fafc}.patient-name-field span{display:inline-flex;align-items:center;gap:6px;color:#64748b;font-size:12px;font-weight:800}.patient-name-field input{border:0;background:transparent;color:#0f172a;font-size:14px;font-weight:700;outline:none}.label-enabled-toggle{display:inline-flex;align-items:center;gap:8px;color:#475569;font-size:12px;font-weight:800}.order-history-item{align-items:center}.order-history-item-actions{display:flex;align-items:center;gap:8px}.drug-sticker-preview{display:grid;place-items:center;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc;padding:18px}.med-label-sticker{box-sizing:border-box;width:var(--med-label-width, 80mm);min-height:var(--med-label-height, 50mm);padding:var(--med-label-padding, 4mm);color:#000;background:#fff;font-family:Sarabun,Tahoma,Arial,sans-serif;font-size:var(--med-label-font-size, 12px);line-height:1.35;overflow:hidden}.med-label-header{border-bottom:1.5px solid #000000;padding-bottom:var(--med-label-gap, 4px);margin-bottom:calc(var(--med-label-gap, 4px) * 2)}.med-label-shop{font-size:var(--med-label-shop-size, 14px);font-weight:700}.med-label-header-meta,.med-label-row,.med-label-footer{display:flex;justify-content:space-between;gap:8px}.med-label-header-meta{font-size:var(--med-label-footer-size, 10px)}.med-label-body{display:flex;flex-direction:column;gap:var(--med-label-gap, 4px);margin-bottom:calc(var(--med-label-gap, 4px) * 2)}.med-label-key{display:inline-block;width:64px;font-weight:700}.med-label-strong,.med-label-drug-name{font-weight:700}.med-label-drug-name{font-size:var(--med-label-drug-size, 13px);text-transform:uppercase}.med-label-dosage{margin:calc(var(--med-label-gap, 4px) * 3) 0;text-align:center;font-size:var(--med-label-dosage-size, 15px);font-weight:700;line-height:1.25}.med-label-advice{display:flex;margin-bottom:calc(var(--med-label-gap, 4px) * 2)}.med-label-footer{align-items:flex-end;border-top:1.5px solid #000000;padding-top:var(--med-label-gap, 4px);margin-top:var(--med-label-gap, 4px);font-size:var(--med-label-footer-size, 10px)}.med-label-footer-left{display:flex;flex-direction:column}.med-label-footer-right{max-width:60%;text-align:right}.med-label-sticker.is-compact .med-label-key{width:42px}.med-label-sticker.is-compact .med-label-header-meta{white-space:nowrap;overflow:hidden}.med-label-sticker.is-compact .med-label-body{max-height:12mm;overflow:hidden}.med-label-sticker.is-compact .med-label-advice{max-height:8mm;overflow:hidden}.drug-sticker{width:80mm;min-height:50mm;border:1px solid #111827;background:#fff;color:#111827;padding:7px 9px;font-family:Tahoma,sans-serif;font-size:10px;line-height:1.25}.drug-sticker header,.sticker-meta,.sticker-drug-name{display:flex;justify-content:space-between;gap:8px}.drug-sticker header{border-bottom:1px solid #111827;padding-bottom:3px;font-weight:800}.sticker-meta,.sticker-drug-name,.sticker-qty{margin-top:4px}.sticker-drug-name{flex-direction:column;gap:1px}.sticker-instruction{margin:5px 0;text-align:center;font-size:13px;font-weight:900;line-height:1.25}.drug-sticker footer{border-top:1px solid #111827;padding-top:3px;font-size:9px}.product-detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.product-detail-meta-grid{align-content:start}.product-detail-fact{min-width:0}.product-detail-fact strong{color:var(--navy);font-size:14px;line-height:1.45;overflow-wrap:anywhere}.product-detail-footer{display:flex;justify-content:flex-end;margin-top:auto}.product-detail-badge{display:inline-flex;align-items:center;width:fit-content;max-width:100%;min-height:32px;padding:6px 12px;border:1px solid #cfe3db;border-radius:999px;background:#eef8f3;color:#0f766e;font-size:12px;font-weight:700;line-height:1.45}.product-detail-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.single-unit-grid{grid-template-columns:minmax(0,1fr)}.product-unit-card{border:1px solid #dbe8ee;border-radius:12px;background:#fff;padding:14px;display:grid;gap:8px;align-content:start}.product-unit-card-negative{border-color:#dc26263d;background:#fff5f5}.product-unit-card-label{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.product-unit-card-title{color:var(--navy);font-size:16px;line-height:1.35}.product-unit-card-value{color:var(--navy);font-size:22px;font-weight:800;line-height:1.1}.product-unit-card-note{margin:0;color:#476174;font-size:13px;line-height:1.55}.product-unit-card-note.is-negative{color:#dc2626;font-weight:700}.product-detail-summary{padding-top:4px}.drug-info-modal{width:min(760px,100%)}.drug-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.drug-info-item{border:1px solid #e2ebef;border-radius:10px;background:#f9fbfc;padding:14px}.drug-info-item strong,.drug-info-item p{margin:0;color:var(--navy);line-height:1.6;overflow-wrap:anywhere}.drug-info-item-wide{grid-column:1 / -1}.unit-editor-list{display:grid;gap:12px}.unit-editor-card{border:1px solid var(--line);border-radius:8px;background:#fbfdfc;padding:14px;display:grid;gap:12px}.unit-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.unit-editor-grid label{display:grid;gap:7px;color:var(--navy);font-size:14px;font-weight:750}.unit-editor-grid input{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);padding:9px 11px}.unit-editor-flags{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center}.split-toggle-row{margin-top:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.unit-editor-card{margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfcfd}.unit-editor-card-main{border-color:#12845f38;background:#f7fcfa}.unit-editor-card-retail{border-color:#c78e2440;background:#fffaf1}.unit-editor-card-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.unit-editor-card-header h3{margin:0;color:var(--navy);font-size:15px}.unit-editor-card-header p{margin:2px 0 0;color:var(--muted);font-size:12px;font-weight:500}.unit-order-pill{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:999px;background:var(--green);color:var(--white);font-weight:850;font-size:13px}.retail-unit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.retail-unit-grid label{display:grid;gap:7px;color:var(--navy);font-size:14px;font-weight:750}.retail-unit-grid input,.retail-unit-grid select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);padding:10px 12px;outline:0}.retail-unit-grid input:focus,.retail-unit-grid select:focus{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f}.field-with-help{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.field-note{color:var(--muted);font-size:12px;font-weight:500;line-height:1.4}.danger-outline-button{border-color:#f2c7c7;color:#a73838}.shortcut-list{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shortcut-list div{border:1px solid #dce5ea;border-radius:10px;background:linear-gradient(180deg,#fff,#fafcfc);padding:10px 12px;display:grid;gap:4px}.shortcut-list strong{color:var(--navy);font-size:13px}.shortcut-list span{color:var(--muted);font-size:13px;text-align:left}.two-column-layout{display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(340px,.95fr);gap:18px;align-items:start}.stock-metric-grid{margin-bottom:18px}.stock-filter-chips{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.stock-filter-chip{border:0;border-radius:999px;min-height:38px;padding:8px 14px;background:#f1f5f9;color:#475569;font-size:13px;font-weight:800;line-height:1.2;display:inline-flex;align-items:center;gap:8px}.stock-filter-chip.active{background:#0f766e;color:#fff}.stock-filter-chip.warning{color:#9a3412}.stock-filter-chip.active.warning{color:#fff}.stock-filter-chip.claim{color:#1d4ed8;background:#eff6ff;border:1px solid #dbeafe}.stock-filter-chip.active.claim{background:#2563eb;color:#fff;border-color:#2563eb}.stock-filter-chip-dot{width:8px;height:8px;border-radius:999px;background:#f97316;flex:0 0 auto}.stock-filter-chip.active .stock-filter-chip-dot{background:#fcd34d}.stock-filter-chip.claim .stock-filter-chip-dot{background:#60a5fa}.stock-filter-chip.active.claim .stock-filter-chip-dot{background:#bfdbfe}.stock-number-col{text-align:right;white-space:nowrap}.stock-action-col{width:1%;min-width:180px;text-align:right}.stock-expiry-cell{display:flex;align-items:center;justify-content:space-between;gap:10px}.stock-action-cell{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;width:100%}.stock-claim-cta{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:10px;padding:6px 12px;background:#fff7ed;color:#ea580c;font-size:12px;font-weight:700;line-height:1;transition:background-color .12s ease,color .12s ease;white-space:nowrap}.stock-claim-cta svg,.stock-claim-badge svg{flex:0 0 auto;opacity:.9}.stock-claim-cta:hover{background:#ffedd5}.stock-claim-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid rgba(191,219,254,.8);border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:600;line-height:1;white-space:nowrap}.expiry-report-shell{padding:0;overflow:hidden}.expiry-pipeline{padding:20px 20px 0;display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) 32px minmax(0,1fr);align-items:center;gap:0}.expiry-stage{border:0;border-radius:14px;min-height:68px;padding:14px 16px;background:#f8fafc;color:#6b7280;display:flex;align-items:center;gap:12px;text-align:left}.expiry-stage.active{background:#ecfdf5;color:#0f172a;box-shadow:inset 0 -3px #0f766e}.expiry-stage-icon{font-size:20px;line-height:1}.expiry-stage-copy{display:grid;gap:3px}.expiry-stage-copy strong{font-size:14px;line-height:1.35}.expiry-stage-copy small{color:inherit;opacity:.85}.expiry-stage-link{height:2px;background:#dbe4ea;margin:0 6px}.expiry-control-bar{padding:18px 20px 16px;background:#fff;border-bottom:1px solid #e5e7eb;display:grid;gap:14px}.expiry-search-bar{margin:0}.expiry-filter-chips{display:flex;flex-wrap:wrap;gap:10px}.expiry-filter-chip{border:0;border-radius:999px;min-height:38px;padding:8px 14px;background:#f3f4f6;color:#374151;font-size:13px;font-weight:800;display:inline-flex;align-items:center}.expiry-filter-chip.active{background:#0f766e;color:#fff}.expiry-filter-chip.danger{color:#b91c1c}.expiry-filter-chip.warning{color:#b45309}.expiry-filter-chip.active.danger,.expiry-filter-chip.active.warning{color:#fff}.expiry-toolbar{padding:14px 20px 0;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:4px}.expiry-table-hint{margin:0;color:#475569}.expiry-bulk-bar{position:sticky;top:0;z-index:2;margin:14px 20px 0;padding:12px 14px;border-radius:10px;background:#ecfdf5;border:1px solid #cce9dc;display:flex;align-items:center;justify-content:space-between;gap:12px}.expiry-table-wrap{margin:14px 20px 20px;border:0;border-radius:0;box-shadow:none;background:transparent}.expiry-table{min-width:1080px}.expiry-table th,.expiry-table td{border-bottom:1px solid #f3f4f6;vertical-align:middle}.expiry-table th{background:#fff;color:#64748b;font-size:12px;font-weight:800}.expiry-table tbody tr:nth-child(2n){background:transparent}.expiry-table tbody tr:hover{background:#f8fafc}.expiry-table td:first-child,.expiry-table td:nth-child(2){font-weight:inherit;color:inherit}.expiry-checkbox-col{width:44px}.expiry-checkbox-col input{width:16px;height:16px;min-height:16px;padding:0;border-radius:4px}.expiry-primary-cell,.expiry-secondary-stack,.expiry-status-cell{display:grid;gap:4px}.expiry-primary-cell strong,.expiry-secondary-stack strong{color:var(--navy);line-height:1.35}.expiry-primary-cell small,.expiry-secondary-stack small,.expiry-status-cell small,.expiry-history-note{color:#6b7280;line-height:1.45}.expiry-status-cell small{color:#94a3b8;font-size:12px}.expiry-align-right{text-align:right}.expiry-action-col{width:1%;min-width:170px;text-align:right}.expiry-table th.expiry-action-col,.expiry-table td.expiry-action-col{text-align:right}.expiry-status-badge{display:inline-flex;width:fit-content;align-items:center;min-height:26px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800}.expiry-status-badge.is-pending{background:#f3f4f6;color:#4b5563}.expiry-status-badge.is-claiming{background:#ecfeff;color:#0f766e}.expiry-status-badge.is-replaced{background:#f0fdfa;color:#0f766e}.expiry-status-badge.is-refunded{background:#eef2ff;color:#4338ca}.expiry-status-badge.is-scrapped{background:#f1f5f9;color:#475569}.expiry-row-actions{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.expiry-ghost-action{border:0;border-radius:8px;min-height:34px;padding:7px 10px;background:transparent;color:#0f766e;font-weight:750}.expiry-ghost-action:hover{background:#f0fdfa}.expiry-ghost-action.danger{color:#c2410c}.expiry-ghost-action.danger:hover{background:#fff7ed}.expiry-primary-action{border:1px solid #0f766e;border-radius:8px;min-height:34px;padding:7px 12px;background:#fff;color:#0f766e;font-size:13px;font-weight:700;line-height:1;white-space:nowrap}.expiry-primary-action:hover:not(:disabled){background:#f0fdfa}.expiry-icon-action{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:8px;background:transparent;color:#64748b;flex:0 0 auto}.expiry-icon-action:hover:not(:disabled){background:#f1f5f9;color:#334155}.claim-resolution-modal{display:grid;gap:18px}.claim-resolution-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px 16px;border-radius:10px;border:1px solid #dbe7e2;background:#f8fbfa}.claim-resolution-summary strong{display:block;margin-top:4px;color:var(--navy)}.claim-resolution-grid{display:grid;gap:12px}.claim-resolution-option{display:grid;gap:6px;width:100%;border-radius:10px;padding:15px 16px;text-align:left;transition:.18s ease}.claim-resolution-option strong{color:inherit;font-size:15px}.claim-resolution-option small{color:inherit;opacity:.88;line-height:1.5}.claim-resolution-option.is-primary{border:1px solid #99f6e4;background:#ecfdf5;color:#0f766e}.claim-resolution-option.is-primary:hover:not(:disabled){background:#dff7ef}.claim-resolution-option.is-secondary{border:1px solid #c7d2fe;background:#eef2ff;color:#4338ca}.claim-resolution-option.is-secondary:hover:not(:disabled){background:#e3e9ff}.claim-resolution-option.is-danger{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c}.claim-resolution-option.is-danger:hover:not(:disabled){background:#ffe4e6}.claim-resolution-option:disabled{cursor:not-allowed;opacity:.7}.claim-refund-panel{display:grid;gap:10px;padding:16px;border-radius:10px;border:1px solid #d7ddff;background:#f8faff}.claim-refund-input{min-height:42px;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;font:inherit;color:var(--navy);background:#fff}.claim-refund-input:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61f}.claim-refund-actions{display:flex;justify-content:flex-end;gap:10px}.stacked-tables{display:grid;gap:18px}.panel-card{min-width:0;padding:20px}.panel-card h2{margin:0 0 14px;color:var(--navy);font-size:18px;line-height:1.25}.panel-title-row,.modal-header,.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.panel-title-row{margin-bottom:16px}.candidate-list{display:grid;gap:8px}.autocomplete-wrap{position:relative}.autocomplete-wrap .search-bar{margin-bottom:8px}.autocomplete-menu{position:absolute;z-index:20;top:calc(100% - 6px);right:0;left:0;max-height:360px;overflow:auto;border:1px solid var(--line-strong);border-radius:8px;background:var(--white);box-shadow:0 18px 40px #0b1f3a24;padding:6px}.autocomplete-menu .candidate-item{border-color:transparent;box-shadow:none}.autocomplete-status{padding:12px;color:var(--muted);font-size:14px}.stock-edit-product-results{max-height:240px;overflow-y:auto;display:grid;gap:8px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#fbfdfc}.candidate-item{width:100%;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);padding:12px;display:flex;justify-content:space-between;gap:14px;text-align:left}.candidate-item:hover,.candidate-item.active{border-color:var(--green);background:var(--green-soft)}.candidate-item strong,.candidate-item small{display:block}.candidate-item strong{color:var(--navy);line-height:1.35}.candidate-item small{margin-top:3px;color:var(--muted)}.receive-form{display:grid;gap:16px}.draft-toast{margin-bottom:14px;border:1px solid rgba(18,132,95,.18);border-radius:12px;background:#12845f14;color:var(--green-dark);padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.draft-toast.success-toast{border-color:#16a34a33;background:#16a34a1a;color:#166534}.draft-toast.success-toast .icon-button{border-color:#16a34a2e;color:#166534}.draft-toast.success-toast .icon-button:hover{border-color:#16a34a59;background:#16a34a14;color:#14532d}.selected-product{min-height:48px;border:1px solid var(--line);border-radius:8px;background:#f7faf9;color:var(--navy);padding:12px;display:flex;align-items:center;gap:10px;font-weight:750}.field-invalid-soft{border-color:#dc262638;background:#fef2f2e6}.selected-product svg{color:var(--green);flex:0 0 auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid label{display:grid;gap:7px;color:var(--navy);font-size:14px;font-weight:750}.required-indicator{color:#dc2626}.label-with-info{display:inline-flex;align-items:center;gap:6px}.info-tooltip-wrap{position:relative;display:inline-flex;align-items:center}.info-dot{width:18px;height:18px;min-height:18px;border:0;border-radius:999px;background:var(--green-soft);color:var(--green);padding:0;display:inline-grid;place-items:center;cursor:pointer}.info-dot:hover,.info-dot[aria-expanded=true]{background:var(--green);color:var(--white)}.info-dot svg{color:currentColor}.info-tooltip{position:absolute;z-index:30;bottom:calc(100% + 8px);left:50%;width:max-content;max-width:min(280px,80vw);transform:translate(-50%);border:1px solid var(--line-strong);border-radius:8px;background:var(--navy);color:var(--white);box-shadow:0 12px 28px #0b1f3a2e;padding:9px 10px;font-size:12px;font-weight:650;line-height:1.45}.info-tooltip:after{position:absolute;top:100%;left:50%;width:9px;height:9px;background:var(--navy);content:"";transform:translate(-50%,-5px) rotate(45deg)}.form-grid input{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);padding:10px 12px;outline:0}.form-grid input:focus{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f}.form-grid input.field-invalid,.form-grid select.field-invalid,.search-bar input.field-invalid{border-color:#dc2626;box-shadow:0 0 0 3px #dc262614}.field-error{color:#b42318;font-size:12px;font-weight:650;line-height:1.4}.form-grid input:disabled,.form-grid select:disabled{background:#f1f5f4;color:var(--muted)}.form-grid select{width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);padding:10px 12px;outline:0}.form-grid select:focus{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f}.full-span{grid-column:1 / -1}.checkbox-row{display:flex!important;align-items:center;gap:10px;min-height:42px}.checkbox-row input{width:18px;min-height:18px}.checkbox-row span{color:var(--ink);font-weight:650}.search-bar{margin-bottom:14px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;border:1px solid var(--line-strong);background:var(--white);border-radius:8px;padding:9px 10px 9px 12px;box-shadow:var(--shadow-soft)}.receive-entry-grid{row-gap:15px}.receive-header-grid{align-items:end;grid-template-columns:repeat(4,minmax(0,1fr))}.receive-workspace-shell{min-height:calc(100vh - 160px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;min-width:0}.receive-top-panel{position:sticky;top:0;z-index:10}.receive-grid-panel{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.receive-grid-wrap{overflow:auto;min-height:0}.receive-inline-grid{width:100%;table-layout:fixed}.receive-inline-grid th:first-child,.receive-inline-grid td:first-child{width:44px;text-align:center}.receive-inline-grid td{vertical-align:middle}.receive-inline-grid input,.receive-inline-select{width:100%;min-width:0;min-height:34px;border:1px solid transparent;background:transparent;border-radius:6px;padding:4px 6px;box-shadow:none}.receive-inline-grid input:focus,.receive-inline-select:focus{border-color:#3b82f6;background:#fff;box-shadow:0 0 0 2px #3b82f61f;outline:0}.receive-sticky-footer{position:sticky;bottom:0;z-index:12;width:100%;border:1px solid var(--line);border-radius:12px;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}.receive-message{margin:0}.table-action-group{display:inline-flex;align-items:center;gap:8px}.search-bar:focus-within{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f}.segmented-control{width:fit-content;margin-bottom:12px;display:inline-grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--white);box-shadow:var(--shadow-soft)}.segmented-control button{border:0;border-radius:6px;min-height:38px;padding:8px 14px;background:transparent;color:var(--muted);font-weight:750}.segmented-control button.active{background:var(--green);color:var(--white)}.search-bar svg{color:var(--green)}.search-bar input{width:100%;min-width:0;border:0;outline:0;color:var(--ink);font-size:17px;line-height:1.45}.search-bar button:not(.search-clear-button),.primary-button,.secondary-button{border:0;border-radius:8px;background:var(--green);color:var(--white);min-height:42px;padding:10px 18px;font-weight:750}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.search-bar button:not(.search-clear-button):hover,.primary-button:hover{background:var(--green-dark)}.secondary-button{border:1px solid var(--line-strong);background:var(--white);color:var(--navy);min-height:38px;padding:8px 14px}.secondary-button:hover{border-color:var(--green);color:var(--green)}.secondary-button svg,.icon-button svg{color:currentColor}.danger-button{border-color:#f2c7c7;color:#a73838}.danger-button:hover{border-color:#c83f3f;color:#c83f3f}.danger-primary-button{background:#b93838}.danger-primary-button:hover{background:#982f2f}.search-clear-button{width:30px;height:30px;min-height:30px;border:0;border-radius:999px;background:#edf3f1;color:var(--muted);padding:0;display:grid;place-items:center}.search-clear-button:hover{background:#dde8e4;color:var(--navy)}.search-clear-button svg{color:currentColor}.primary-button:disabled{cursor:not-allowed;background:#9fb7ad}.icon-button{width:36px;height:36px;min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--navy);padding:0;display:inline-grid;place-items:center}.icon-button:hover{border-color:var(--green);color:var(--green)}.table-icon-button{width:30px;height:30px;min-height:30px}.stock-lot-warning-row td{background:#fff7ed;border-top-color:#fdba74;border-bottom-color:#fdba74}.stock-lot-expiry-row td{background:#fff8e8;border-top-color:#facc15;border-bottom-color:#fcd34d}.stock-lot-clickable-row{cursor:pointer}.stock-lot-clickable-row:focus-visible{outline:2px solid var(--green);outline-offset:-2px}.modal-backdrop{position:fixed;z-index:60;top:0;right:0;bottom:0;left:0;background:#0b1f3a47;backdrop-filter:blur(16px) saturate(118%);-webkit-backdrop-filter:blur(16px) saturate(118%);padding:28px;display:grid;place-items:center}.label-modal-backdrop{z-index:120}.modal-panel{width:min(1120px,100%);max-height:min(860px,calc(100vh - 56px));overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--white);box-shadow:0 26px 70px #0b1f3a38;padding:22px}.compact-modal{width:min(720px,100%)}.account-password-modal{width:min(520px,100%)}.account-password-form{display:grid;gap:14px}.account-password-form label{display:grid;gap:6px;color:var(--ink);font-size:13px;font-weight:700}.account-password-form .settings-input{max-width:none}.password-policy-hint{margin:-4px 0 0;color:var(--muted);font-size:12px}.modal-header{margin-bottom:14px}.settings-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.modal-header h2,.edit-lot-form h3{margin:0;color:var(--navy)}.modal-header p{margin:4px 0 0;color:var(--muted)}.modal-header-actions{display:inline-flex;align-items:center;gap:8px}.modal-actions{justify-content:flex-end;margin-bottom:12px}.modal-table{max-height:330px}.edit-lot-form{margin-top:16px;border:1px solid var(--line);border-radius:8px;background:#f7faf9;padding:16px;display:grid;gap:14px}.edit-form-actions,.confirm-actions{display:flex;justify-content:flex-end;gap:10px}.top-gap{margin-top:16px}.panel-counter{color:var(--muted);font-size:13px;font-weight:700}.supplier-list-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.supplier-list-panel .table-wrap{max-height:calc(100vh - 290px);overflow:auto}.compact-action-button{min-height:34px;padding:7px 12px;border-radius:8px;font-size:13px;gap:6px;box-shadow:0 8px 18px #0d948824}.compact-action-button svg{width:15px;height:15px}.member-detail-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.document-supplier-card,.document-summary-card{border:1px solid var(--line);border-radius:8px;background:#f7faf9;padding:14px;display:grid;gap:4px}.document-supplier-card strong,.document-summary-card strong{color:var(--navy)}.document-supplier-card small{color:var(--muted);line-height:1.5}.document-summary-card{margin-top:14px;grid-template-columns:1fr auto;align-items:center}.document-summary-card span{color:var(--green);font-size:24px;font-weight:800}.confirm-backdrop{position:fixed;z-index:90;top:0;right:0;bottom:0;left:0;background:#0b1f3a57;backdrop-filter:blur(16px) saturate(118%);-webkit-backdrop-filter:blur(16px) saturate(118%);padding:24px;display:grid;place-items:center}.confirm-panel{width:min(420px,100%);border:1px solid var(--line);border-radius:8px;background:var(--white);box-shadow:0 22px 60px #0b1f3a3d;padding:20px}.confirm-panel h3{margin:0;color:var(--navy)}.confirm-panel p{margin:8px 0 18px;color:var(--muted);line-height:1.55}.table-wrap{overflow:auto;border:1px solid var(--line);background:var(--white);border-radius:8px;box-shadow:var(--shadow-soft)}.table-wrap input{width:100%;min-height:36px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--ink);padding:8px 10px}.table-wrap input:focus{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f}.table-hint{min-height:21px;margin:-4px 0 12px;color:var(--muted);font-size:14px;line-height:1.45}table{width:100%;border-collapse:collapse;min-width:900px}th,td{padding:11px 14px;border-bottom:1px solid #e7edf1;text-align:left;vertical-align:middle;font-size:14px}th{position:sticky;top:0;z-index:1;background:#f7faf9;color:var(--navy);font-weight:800;white-space:nowrap}td{color:#27364a;line-height:1.45}tbody tr:nth-child(2n){background:#fbfdfc}tbody tr:hover{background:var(--green-soft)}td:first-child,td:nth-child(2){font-weight:650;color:var(--navy)}tr:last-child td{border-bottom:0}.center-screen,.auth-screen{min-height:100vh;display:grid;place-items:center;padding:30px;background:#f7faf9}.message-card{max-width:520px;padding:34px;text-align:center;color:var(--green)}.message-card h1{margin:18px 0 8px;color:var(--navy)}.message-card p{margin:0;color:var(--muted);line-height:1.7}.system-loading-screen{position:relative;min-height:100vh;display:grid;place-items:center;overflow:hidden;padding:32px;background:radial-gradient(circle at 50% 30%,rgba(20,184,166,.12),transparent 34%),linear-gradient(180deg,#fff,#f7fbfa 48%,#eef7f5);color:#0f172a}.system-loading-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(15,23,42,.035) 1px,transparent 1px),linear-gradient(0deg,rgba(15,23,42,.035) 1px,transparent 1px);background-size:42px 42px;opacity:.5;mask-image:radial-gradient(circle at center,#000 0 48%,transparent 78%);-webkit-mask-image:radial-gradient(circle at center,#000 0 48%,transparent 78%);animation:loading-grid-drift 12s linear infinite}.system-loading-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 0 42%,rgba(255,255,255,.78) 50%,transparent 58% 100%);opacity:.55;animation:loading-light-sweep 5.8s ease-in-out infinite}.loading-grid-glow{position:absolute;width:min(58vw,560px);height:min(58vw,560px);border:1px solid rgba(20,184,166,.1);border-radius:50%;box-shadow:0 0 0 32px #14b8a609,0 28px 90px #0f766e1a,inset 0 0 60px #14b8a614;animation:loading-halo-breathe 3.8s ease-in-out infinite}.system-loading-panel{position:relative;z-index:1;width:min(500px,100%);display:grid;justify-items:center;gap:20px;padding:36px 32px 28px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#ffffffd1;box-shadow:0 26px 80px #0f172a1a,inset 0 1px #ffffffe6;backdrop-filter:blur(20px) saturate(130%);-webkit-backdrop-filter:blur(20px) saturate(130%)}.loading-emblem-wrap{position:relative;width:126px;height:126px;display:grid;place-items:center}.loading-ring,.loading-scan-line,.loading-emblem,.loading-pulse-dot{position:absolute}.loading-ring{top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px solid rgba(20,184,166,.16)}.loading-ring-outer{border-top-color:#0d9488;border-right-color:#14b8a68c;animation:loading-spin 3.2s linear infinite}.loading-ring-middle{top:16px;right:16px;bottom:16px;left:16px;border-bottom-color:#0d948880;border-left-color:#0ea5e947;animation:loading-spin-reverse 2.8s linear infinite}.loading-scan-line{width:98px;height:98px;border-radius:50%;background:conic-gradient(from 0deg,rgba(20,184,166,.26),transparent 32%,transparent 100%);animation:loading-spin 2.2s linear infinite;mask:radial-gradient(circle,transparent 0 56%,#000 57% 100%);-webkit-mask:radial-gradient(circle,transparent 0 56%,#000 57% 100%)}.loading-emblem{width:70px;height:70px;display:grid;place-items:center;border:1px solid rgba(20,184,166,.18);border-radius:18px;background:#fff;color:#0d9488;box-shadow:0 18px 44px #0f766e24,inset 0 1px #fff;animation:loading-emblem-float 3.2s ease-in-out infinite}.loading-pulse-dot{width:7px;height:7px;border-radius:50%;background:#14b8a6;box-shadow:0 0 16px #14b8a66b;animation:loading-dot-pulse 1.9s ease-in-out infinite}.loading-pulse-dot-a{top:12px;right:34px}.loading-pulse-dot-b{left:20px;bottom:36px;animation-delay:.34s}.loading-pulse-dot-c{right:10px;bottom:46px;animation-delay:.68s}.system-loading-copy{text-align:center}.system-loading-kicker{margin:0 0 8px;color:#0d9488;font-size:12px;font-weight:800;text-transform:uppercase}.system-loading-copy h1{margin:0;color:#0b1f3a;font-size:clamp(32px,5vw,48px);line-height:1.08;font-weight:900}.system-loading-copy p{margin:10px 0 0;color:#64748b;font-size:15px;line-height:1.65}.loading-progress{width:min(340px,100%);height:6px;overflow:hidden;border:1px solid rgba(20,184,166,.12);border-radius:999px;background:#e6f4f1}.loading-progress span{display:block;width:45%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d9488,#2dd4bf,#14b8a6);box-shadow:0 0 16px #14b8a642;animation:loading-progress-slide 2s ease-in-out infinite}.loading-status-row{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.loading-status-row span{min-width:0;border:1px solid rgba(203,213,225,.12);border-radius:8px;background:#f8fafc;color:#0f766e;padding:9px 8px;font-size:12px;font-weight:700;text-align:center}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-spin-reverse{to{transform:rotate(-360deg)}}@keyframes loading-emblem-float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-6px) scale(1.03)}}@keyframes loading-dot-pulse{0%,to{opacity:.45;transform:scale(.8)}50%{opacity:1;transform:scale(1.28)}}@keyframes loading-progress-slide{0%{transform:translate(-110%)}50%{transform:translate(70%)}to{transform:translate(230%)}}@keyframes loading-grid-drift{0%{background-position:0 0,0 0}to{background-position:42px 42px,42px 42px}}@keyframes loading-light-sweep{0%,to{opacity:.54;transform:translate(-5%)}50%{opacity:.86;transform:translate(5%)}}@keyframes loading-halo-breathe{0%,to{transform:scale(.96);opacity:.72}50%{transform:scale(1.03);opacity:1}}@media (max-width: 560px){.system-loading-screen{padding:22px}.system-loading-panel{padding:30px 20px 24px;gap:18px}.loading-emblem-wrap{width:128px;height:128px}.loading-ring-middle{top:15px;right:15px;bottom:15px;left:15px}.loading-scan-line{width:102px;height:102px}.loading-emblem{width:72px;height:72px;border-radius:18px}.system-loading-copy h1{font-size:36px}.loading-status-row{grid-template-columns:1fr}}.auth-screen{grid-template-columns:minmax(0,460px) minmax(320px,420px);gap:22px}.auth-copy,.auth-card{width:100%;padding:32px}.auth-copy h1,.auth-card h2{margin:18px 0 10px;color:var(--navy);line-height:1.2}.auth-copy p{margin:0;color:var(--muted);line-height:1.65}.auth-card{display:grid;gap:15px}.auth-card h2{margin-top:0}.auth-card label{display:grid;gap:7px;color:var(--navy);font-weight:750;font-size:14px}.auth-card input{width:100%;border:1px solid var(--line);border-radius:8px;padding:12px 13px;outline:0}.auth-card input:focus{border-color:var(--green);box-shadow:0 0 0 3px #12845f1f}.text-button{border:0;background:transparent;color:var(--green);font-weight:750}.auth-card .text-button{display:none}.form-message{margin:0;color:var(--muted);line-height:1.55}.form-message.error-message,.form-message.success-message{border-radius:8px;padding:10px 12px;font-size:13px}.form-message.error-message{border:1px solid #fecaca;background:#fef2f2;color:#991b1b}.form-message.success-message{border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}.inventory-hub{flex:1;height:100%;display:flex;flex-direction:column;overflow:hidden}.inventory-hub-header{flex-shrink:0;margin-bottom:24px}.inventory-hub-header h1{margin:0 0 4px;color:#1e293b;font-size:24px;font-weight:800}.inventory-hub-header p{margin:0;color:#64748b;font-size:14px}.inventory-hub-tabs{flex-shrink:0;display:flex;gap:8px;border-bottom:1px solid #e2e8f0;margin-bottom:24px}.inventory-hub-tab{border:0;border-bottom:2px solid transparent;background:transparent;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:0 16px 12px;transition:color .18s ease,border-color .18s ease}.inventory-hub-tab:hover{color:#1e293b}.inventory-hub-tab.is-active{border-bottom-color:#0d9488;color:#0d9488;cursor:default;font-weight:800}.inventory-hub-content{flex:1;min-height:0;overflow-y:auto;padding-bottom:24px}.inventory-hub-content>section>.page-header,.inventory-hub-content>.page-header{display:none}.reports-screen{display:flex;flex-direction:column;gap:24px;height:100%;overflow:hidden}.reports-filter-bar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:var(--shadow-soft)}.reports-title-block{display:flex;align-items:center;gap:12px}.reports-title-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;color:#0f766e;background:#ecfdf5}.reports-title-block h1{margin:0;color:#1e293b;font-size:20px;font-weight:800}.reports-title-block p{margin:2px 0 0;color:#64748b;font-size:12px}.reports-filter-controls{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;flex-wrap:wrap;justify-content:flex-end}.reports-filter-controls input,.reports-filter-controls select{border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#334155;font-size:12px;padding:7px 9px}.reports-filter-label{display:inline-flex;align-items:center;gap:5px;color:#475569;font-size:12px;font-weight:800;padding-left:4px}.reports-date-separator{color:#94a3b8;font-size:12px}.reports-fetch-button{display:inline-flex;align-items:center;gap:6px;border:0;border-radius:8px;background:#0d9488;color:#fff;font-size:12px;font-weight:800;padding:8px 14px;box-shadow:0 4px 12px #0d94882e}.reports-fetch-button:disabled{opacity:.55;cursor:not-allowed}.reports-body{flex:1;min-height:0;display:flex;gap:24px;overflow:hidden}.reports-directory{width:320px;flex-shrink:0;display:flex;flex-direction:column;gap:20px;overflow-y:auto;padding:20px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;box-shadow:var(--shadow-soft)}.reports-group-tabs{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.reports-group-tab:nth-child(5){grid-column:span 2}.reports-group-tab{border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;color:#64748b;padding:12px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;cursor:pointer;transition:all .22s cubic-bezier(.4,0,.2,1)}.reports-group-tab-icon{display:inline-flex;align-items:center;justify-content:center;color:#64748b;transition:color .22s ease,transform .22s ease}.reports-group-tab-label{font-size:14px;font-weight:750;line-height:1.35}.reports-group-tab:hover{background:#fff;color:#0d9488;border-color:#0d9488;box-shadow:0 4px 12px #0d948814;transform:translateY(-2px)}.reports-group-tab:hover .reports-group-tab-icon{color:#0d9488;transform:scale(1.1)}.reports-group-tab.active{background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;border-color:#0d9488;box-shadow:0 8px 20px #0d94883d;transform:translateY(0)}.reports-group-tab.active .reports-group-tab-icon{color:#fff}.reports-list-divider{height:1px;background:#e2e8f0;margin:4px 0}.reports-list-buttons{display:flex;flex-direction:column;gap:8px}.reports-list-title{color:#94a3b8;font-size:11px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;padding-left:4px}.reports-subgroup-title{color:#0d9488;font-size:11.5px;font-weight:800;text-transform:uppercase;margin:12px 0 4px;padding-left:6px;border-left:3px solid #0d9488;letter-spacing:.02em}.reports-item-button{border:1px solid transparent;border-radius:12px;background:transparent;color:#475569;width:100%;padding:10px 14px;text-align:left;cursor:pointer;transition:all .2s ease}.reports-item-button-content{display:flex;flex-direction:column;gap:4px}.reports-item-label{font-size:15px;font-weight:800;line-height:1.3}.reports-item-description-wrapper{max-height:0;opacity:0;overflow:hidden;transform:translateY(-4px);transition:max-height .25s cubic-bezier(.4,0,.2,1),opacity .2s ease,transform .25s cubic-bezier(.4,0,.2,1)}.reports-item-description-wrapper.open{max-height:60px;opacity:1;transform:translateY(0)}.reports-item-description{display:block;color:#64748b;font-size:12.5px;font-weight:600;line-height:1.45;margin-top:2px}.reports-item-button:hover{background:#f8fafc;color:#0f766e;border-color:#e2e8f0}.reports-item-button.active{background:#f0fdfa;color:#0f766e;border:1px solid rgba(13,148,136,.16);border-left:4px solid #0d9488;border-radius:8px 12px 12px 8px;box-shadow:0 4px 12px #0d94880a}.reports-item-button.active .reports-item-description{color:#0f766e}.reports-preview-card{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;padding:20px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:var(--shadow-soft)}.reports-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#94a3b8;text-align:center}.reports-empty-state strong{margin-top:12px;color:#475569;font-size:18px}.reports-empty-state span{margin-top:4px;color:#64748b;font-size:14px}.reports-settings-button{display:inline-flex;align-items:center;gap:.45rem;min-height:38px;padding:0 .9rem;border:1px solid #b8d7d3;border-radius:10px;background:#fff;color:#087f73;font-weight:800;box-shadow:0 8px 20px #0f172a0f}.reports-special-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:1.5rem;background:#081a266b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.reports-special-settings{width:min(1080px,100%);max-height:min(760px,calc(100vh - 3rem));overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);padding:1rem;border:1px solid #dbe7ef;border-radius:16px;background:linear-gradient(180deg,#fff,#f8fcfb);box-shadow:0 24px 70px #0f172a38}.reports-special-settings-header,.reports-special-product-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.reports-special-header-actions{display:inline-flex;align-items:center;gap:.75rem}.reports-special-close{width:34px;height:34px;border:1px solid #d6e4ec;border-radius:999px;background:#fff;color:#475569}.reports-special-modal-body{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem;margin-top:1rem}.reports-special-pane{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);padding:.85rem;border:1px solid #e2edf3;border-radius:14px;background:#ffffffdb}.reports-special-pane-title strong{display:block;color:#0f2937;font-size:.86rem}.reports-special-pane-title span{color:#64748b;font-size:.76rem}.reports-special-settings-header strong{display:block;font-size:.9rem;color:#061c2f}.reports-special-settings-header span,.reports-special-settings-header small,.reports-special-message,.reports-special-empty{color:#64748b;font-size:.78rem}.reports-special-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem;margin-top:.85rem}.reports-special-search input{min-height:38px;border:1px solid #cbdce7;border-radius:10px;padding:0 .75rem;font:inherit}.reports-special-search button,.reports-special-product-row button{border:0;border-radius:10px;background:#087f73;color:#fff;font-weight:700;min-height:34px;padding:0 .85rem}.reports-special-product-row button.danger{background:#eff4f7;color:#b42318}.reports-special-list{display:grid;align-content:start;gap:.5rem;margin-top:.75rem;overflow:auto}.reports-special-product-row{padding:.65rem .75rem;border:1px solid #e5eef5;border-radius:10px;background:#fff}.reports-special-product-row span{min-width:0;color:#0f2937;font-size:.82rem;overflow-wrap:anywhere}.reports-preview-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.reports-preview-header h2{margin:0;color:#1e293b;font-size:16px;font-weight:900}.reports-preview-header p,.reports-inline-message{margin:4px 0 0;color:#64748b;font-size:12px}.reports-export-actions{display:flex;gap:8px;flex-wrap:wrap}.reports-export-actions button{display:inline-flex;align-items:center;gap:6px;border-radius:12px;font-size:12px;font-weight:900;padding:8px 11px}.reports-export-actions .excel{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.reports-export-actions .pdf{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.reports-export-actions .word{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.reports-table-wrap{position:relative;flex:1;min-height:0;overflow:auto;border:1px solid #f1f5f9;border-radius:12px;background:#f8fafc}.reports-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:center;gap:8px;background:#ffffffd1;color:#0f766e;font-weight:900}.reports-table{width:100%;border-collapse:collapse;background:#fff;font-size:12px}.reports-table th,.reports-table td{border-bottom:1px solid #e2e8f0;padding:10px 12px;text-align:left;vertical-align:top;white-space:nowrap}.reports-table th{position:sticky;top:0;z-index:2;background:#f8fafc;color:#475569;font-weight:900}.modal-inline-message{padding:12px 14px;border-radius:12px;background:#f6f8fa;border:1px solid #e1e7ee}.modal-inline-message.is-error{background:#fff2ed;border-color:#f4c7b5;color:#b54708}.modal-inline-message.is-success{background:#eef9f4;border-color:#c8ead8;color:var(--green-dark)}@media print{@page{size:80mm auto;margin:0}body{background:#fff!important;margin:0!important;min-height:0!important}body *{visibility:hidden!important}#root,.app-shell,.main-panel,.pos-screen{display:block!important;min-height:0!important;height:auto!important;padding:0!important;margin:0!important;overflow:visible!important}.sidebar,.pos-screen>:not(.thermal-receipt-root){display:none!important}#receipt-template,#receipt-template *,.drug-sticker-preview,.drug-sticker-preview *{visibility:visible!important}#receipt-template{display:block!important;position:absolute!important;left:0;top:0;width:80mm!important;padding:0!important;margin:0!important;background:#fff!important}.drug-sticker-preview{display:block!important;position:static!important;width:80mm;padding:0!important;border:0!important;background:#fff!important}.thermal-receipt{width:80mm!important;min-width:80mm!important;max-width:80mm!important;padding:2mm 4mm!important;box-shadow:none!important;border:0!important;border-radius:0!important;background:#fff!important;color:#000!important;font-family:Courier New,Courier,monospace,sans-serif!important;font-size:12px!important;line-height:1.25!important}.thermal-receipt *{color:#000!important;background:transparent!important;box-shadow:none!important;border-radius:0!important}}@media (max-width: 980px){.app-shell{grid-template-columns:1fr}.sidebar{min-height:auto}.nav-list,.metric-grid,.dashboard-summary-grid,.dashboard-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-insight-grid{grid-template-columns:1fr}.dashboard-alert-panels,.metric-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.receive-layout,.pos-layout{grid-template-columns:1fr}.pos-screen{height:auto;min-height:calc(100vh - 136px);overflow:visible}.pos-layout-screen{height:auto;overflow:visible}.pos-layout-screen>.pos-pane:not(.pos-side-pane){height:auto;overflow:visible;grid-template-rows:none}.pos-side-pane{position:static;height:auto;max-height:none}.pos-summary-card{height:auto;max-height:none}.cash-panel-card,.checkout-success-grid{grid-template-columns:1fr}.dashboard-sparkline{width:92px}.promo-stepper,.promo-review-grid,.promo-type-card-grid,.promotion-form-grid,.promotion-form-grid.compact,.product-editor-layout,.product-detail-grid,.product-detail-top-grid,.drug-instructions-grid,.drug-info-grid,.dosage-preset-grid,.label-edit-grid,.product-detail-unit-grid{grid-template-columns:1fr}.pos-side-pane{position:static}.two-column-layout,.auth-screen{grid-template-columns:1fr}}@media (max-width: 620px){.main-panel{padding:22px 16px}.page-header h1{font-size:25px}.nav-list,.metric-grid,.metric-grid-compact,.dashboard-summary-grid,.dashboard-panels,.shortcut-list{grid-template-columns:1fr}.stock-section-control{width:100%;margin-left:0;grid-template-columns:repeat(2,minmax(0,1fr))}.stock-filter-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.stock-filter-chip{width:100%;justify-content:center}.product-info-header-row{align-items:flex-start;flex-direction:column}.expiry-filter-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.expiry-pipeline{grid-template-columns:1fr;gap:10px}.expiry-stage-link{display:none}.expiry-toolbar,.expiry-bulk-bar,.pagination-bar,.panel-heading-actions-wrap{flex-direction:column;align-items:stretch}.pagination-actions{justify-content:stretch}.pos-header-badges{justify-content:flex-start}.pagination-button{justify-content:center;width:100%}.search-bar{grid-template-columns:auto minmax(0,1fr) auto;align-items:stretch}.pos-cart-row,.pos-payment-grid,.pos-field-grid,.unit-editor-grid,.retail-unit-grid,.product-detail-facts{grid-template-columns:1fr}.pos-cart-row{flex-wrap:wrap;align-items:flex-start}.pos-cart-action-shell{width:100%;justify-content:flex-end}.pos-cart-action-divider{display:none}.pos-toggle-stack,.promo-dashboard-toolbar,.promo-dashboard-tabs,.promo-selected-row,.promo-status-choice-row,.promo-wizard-actions{flex-direction:column;align-items:stretch}.promo-create-button,.promo-dashboard-tab,.promo-status-choice{justify-content:center}.pos-cart-qty{grid-template-columns:28px minmax(42px,1fr) 28px}.search-bar .search-clear-button{grid-column:3;grid-row:1;align-self:center}.search-bar button[type=submit]{grid-column:1 / -1}.segmented-control{width:100%}.form-grid{grid-template-columns:1fr}.full-span{grid-column:auto}}@media (max-width: 1280px){.dashboard-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-financial-card{grid-column:span 3}.dashboard-master-card.summary-card{grid-column:span 2}.dashboard-panels{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-insight-grid{grid-template-columns:1fr}}@media (max-width: 980px){.dashboard-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-panels,.dashboard-insight-grid{grid-template-columns:1fr}}@media (max-width: 1023px){.app-shell{grid-template-columns:1fr;grid-template-rows:auto 1fr}.mobile-header{display:flex;height:64px;background:#0f172a;align-items:center;padding:0 20px;color:var(--white);justify-content:space-between;position:sticky;top:0;z-index:100;border-bottom:1px solid #1e293b;box-shadow:0 1px 2px #0000000d}.mobile-brand-wrapper{display:flex;align-items:center;gap:8px;height:36px;width:auto}.mobile-logo-image{height:100%;width:auto;object-fit:contain}.mobile-menu-button{padding:8px;border-radius:12px;color:#cbd5e1;background:transparent;transition:all .2s ease;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center}.mobile-menu-button:hover{background:#ffffff1a;color:#fff}.mobile-menu-button:focus{outline:none;box-shadow:0 0 0 2px #14b8a680}.sidebar{position:fixed;top:64px;left:-100%;bottom:0;width:286px;z-index:110;transition:left .3s cubic-bezier(.4,0,.2,1);border-right:1px solid rgba(255,255,255,.1)}.sidebar.is-open{left:0}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:105;transition:opacity .3s ease}.dashboard-summary-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;padding-bottom:16px;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;scrollbar-width:none}.dashboard-summary-grid::-webkit-scrollbar{display:none}.dashboard-summary-grid>*{min-width:85%;scroll-snap-align:center;flex-shrink:0}.dashboard-summary-grid .summary-card{min-height:auto}.dashboard-insight-grid{display:grid;grid-template-columns:1fr}.dashboard-chart-summary{grid-template-columns:1fr}.dashboard-sales-chart{height:170px}.dashboard-alert-card{padding:16px}.dashboard-alert-card .alert-list{max-height:300px;overflow-y:auto;padding-right:4px}.dashboard-alert-card .dashboard-panel-heading{flex-direction:column;align-items:flex-start;gap:12px}.dashboard-alert-card .panel-heading-actions-wrap{align-self:stretch;justify-content:space-between}.metric-card.dashboard-master-card{min-height:auto;padding:20px;display:flex;flex-direction:column;justify-content:center}}@media (min-width: 769px){.mobile-header{display:none}}@media (min-width: 1024px){.sidebar{position:fixed;top:0;left:0;bottom:0;width:256px;overflow-y:auto;z-index:40;scrollbar-width:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.sidebar:hover,.sidebar.sidebar-collapsed{overflow:visible!important}.sidebar.sidebar-collapsed{width:64px}.sidebar::-webkit-scrollbar{display:none}.main-panel{grid-column:2}}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.settings-screen{flex:1;display:flex;flex-direction:column;min-height:calc(100vh - 68px);background-color:transparent}.settings-header-actions{display:flex;align-items:center;gap:16px}.settings-dirty-badge{font-size:13px;color:var(--amber);font-weight:500;display:flex;align-items:center}.settings-dirty-badge:before{content:"";display:inline-block;width:6px;height:6px;background-color:var(--amber);border-radius:50%;margin-right:6px;animation:pulse-dot 2s infinite}@keyframes pulse-dot{0%{opacity:.4}50%{opacity:1}to{opacity:.4}}.settings-save-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background-color:var(--line);color:var(--muted);border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:not-allowed;transition:all .2s ease}.settings-save-button.is-active{background-color:var(--green);color:#fff;cursor:pointer;box-shadow:0 4px 12px #0d948833}.settings-save-button.is-active:hover{background-color:#0f766e}.settings-toast{position:absolute;top:80px;left:50%;transform:translate(-50%);padding:12px 24px;border-radius:30px;display:flex;align-items:center;gap:10px;font-weight:500;font-size:14px;z-index:50;animation:slide-down-fade .3s cubic-bezier(.16,1,.3,1) forwards;box-shadow:0 10px 25px #0000001a}.settings-toast.is-success{background-color:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.settings-toast.is-error{background-color:#fef2f2;color:#b91c1c;border:1px solid #fecaca}@keyframes slide-down-fade{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.settings-layout{display:grid;grid-template-columns:260px minmax(0,1fr);flex:1;gap:22px;align-items:start;overflow:visible;border-top:0}.settings-nav{position:sticky;top:24px;width:100%;max-height:calc(100vh - 150px);background-color:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;box-shadow:var(--shadow-soft)}.settings-nav-item{display:flex;align-items:center;gap:12px;min-width:0;padding:12px;border-radius:10px;border:1px solid transparent;background:transparent;cursor:pointer;text-align:left;transition:all .2s ease;color:var(--muted)}.settings-nav-item:hover{background-color:#0d94880d;border-color:#0d94881f;color:var(--ink)}.settings-nav-item.is-active{background-color:#0d9488;border-color:#0d9488;color:#fff;box-shadow:0 2px 8px #0d948833}.settings-nav-item.is-active:hover{background-color:#0f766e;border-color:#0f766e}.settings-nav-icon{display:flex;align-items:center;justify-content:center;opacity:.8}.settings-nav-item.is-active .settings-nav-icon{opacity:1}.settings-nav-copy{display:flex;flex-direction:column}.settings-nav-copy strong{font-size:14px;font-weight:600}.settings-nav-copy small{font-size:12px;opacity:.8;margin-top:2px}.settings-content{min-width:0;padding:0;overflow:visible;background-color:transparent}.settings-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--muted);gap:16px}.settings-section-card{max-width:800px;margin:0 auto;background-color:#fff;border-radius:16px;box-shadow:0 4px 20px #00000008;border:1px solid var(--line);overflow:hidden}.settings-section-card-wide{max-width:1180px}.settings-section-header{padding:22px 28px;border-bottom:1px solid var(--line);background-color:#fff}.settings-section-title{font-size:18px;font-weight:700;color:var(--ink);margin:0 0 4px}.settings-section-sublabel{font-size:14px;color:var(--muted);margin:0}.settings-section-body{padding:0 28px 28px;display:flex;flex-direction:column}.settings-rbac-section .settings-section-body{padding-top:24px}.settings-rbac-section .settings-section-body>div{gap:20px!important}.settings-rbac-section .settings-section-body>div>div:not(.settings-subtabs){border-color:#dbe7e2!important;border-radius:14px!important;box-shadow:0 12px 28px #0f172a0d}.settings-rbac-section form{border-color:#dbe7e2!important;border-radius:12px!important;background:#f8fbfa!important}.settings-rbac-section input,.settings-rbac-section select{min-height:40px;border-radius:8px!important;font-family:inherit}.settings-rbac-section input:focus,.settings-rbac-section select:focus{outline:none;border-color:var(--green)!important;box-shadow:0 0 0 3px #0d94881a}.settings-rbac-section table{min-width:680px}.settings-rbac-section table th{white-space:nowrap}.settings-rbac-section .settings-section-body>div>div:not(.settings-subtabs):last-child>div:nth-of-type(2){overflow-x:auto!important}.settings-subtabs-in-card{margin-top:0;margin-bottom:18px}.settings-embedded-section .settings-section-body{padding-top:20px}.settings-embedded-view{min-width:0}.settings-embedded-view>section{display:block}.settings-embedded-view .page-header{display:flex;justify-content:flex-end;align-items:center;margin:8px 0 18px;padding-top:4px}.settings-embedded-view .page-header>div:first-child{display:none}.settings-embedded-view .panel-card{box-shadow:none}.settings-row{display:grid;grid-template-columns:minmax(180px,4fr) minmax(0,8fr);padding:20px 0;border-bottom:1px dashed var(--line);gap:32px}.settings-row:last-child{border-bottom:none}.settings-row-label{display:flex;flex-direction:column;gap:4px}.settings-row-title{font-size:14px;font-weight:600;color:var(--ink)}.settings-row-desc{font-size:13px;color:var(--muted);line-height:1.5}.settings-row-control{min-width:0;display:flex;align-items:flex-start}.settings-subtabs{display:flex;gap:24px;border-bottom:1px solid #f1f5f9;margin:0 -32px;padding:16px 32px 0}.settings-subtab{border:0;border-bottom:2px solid transparent;background:transparent;color:#64748b;font-size:14px;font-weight:600;padding:0 0 12px;transition:color .18s ease,border-color .18s ease}.settings-subtab:hover{color:#334155}.settings-subtab.is-active{border-bottom-color:#0d9488;color:#0d9488;font-weight:800}.settings-subtab-panel{padding-top:4px}.settings-inline-grid{display:grid;grid-template-columns:minmax(0,1fr) 120px;gap:10px;width:100%;max-width:400px}.settings-soft-divider{border:0;border-top:1px solid #f1f5f9;margin:8px 0 22px}.document-label-tab{display:flex;flex-direction:column}.settings-subsection-heading{display:grid;gap:4px;margin:14px 0 4px;padding:12px 14px;border:1px solid #ccfbf1;border-radius:12px;background:#f0fdfa;color:#0f766e}.settings-subsection-heading strong{font-size:13px}.settings-subsection-heading span{color:#64748b;font-size:12px;font-weight:600}.dosage-presets-panel{display:flex;flex-direction:column;gap:14px}.settings-embedded-header h3{margin:0;color:var(--ink);font-size:16px;font-weight:800}.settings-embedded-header p{margin:4px 0 0;color:var(--muted);font-size:13px}.settings-input,.settings-textarea,.settings-select{width:100%;max-width:400px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;font-family:inherit;font-size:14px;color:var(--ink);background-color:#fcfcfd;transition:all .2s}.settings-input:focus,.settings-textarea:focus,.settings-select:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px #0d94881a;background-color:#fff}.settings-textarea{resize:vertical;min-height:80px}.settings-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23667085' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:36px}.settings-number-wrap{display:flex;align-items:center;gap:12px}.settings-input-number{max-width:120px;text-align:right}.settings-number-suffix{font-size:14px;color:var(--muted)}.settings-toggle{display:inline-flex;align-items:center;cursor:pointer;gap:12px;-webkit-user-select:none;user-select:none}.settings-toggle input{display:none}.settings-toggle-track{width:44px;height:24px;background-color:#cbd5e1;border-radius:12px;position:relative;transition:all .3s ease}.settings-toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;background-color:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.settings-toggle input:checked+.settings-toggle-track{background-color:var(--green)}.settings-toggle input:checked+.settings-toggle-track .settings-toggle-thumb{transform:translate(20px)}.settings-toggle-label{font-size:14px;color:var(--ink);font-weight:500}@media (max-width: 1100px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.settings-header-actions{width:100%;justify-content:space-between}.settings-nav{grid-template-columns:1fr}.settings-section-header,.settings-section-body{padding-left:18px;padding-right:18px}.settings-row{grid-template-columns:1fr;gap:10px}}.promo-discount-card{width:100%;background-color:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;box-shadow:0 1px 2px #0f172a0d;display:flex;flex-direction:column;gap:16px;margin-top:12px}.promo-discount-card-header{padding-bottom:8px;border-bottom:1px solid #f8fafc}.promo-discount-card-header h3{margin:0;font-size:14px;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:8px}.promo-compact-container{display:flex;flex-direction:column;gap:12px}.promo-grid-12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;align-items:end}.promo-col-span-7{grid-column:span 7 / span 7}.promo-col-span-5{grid-column:span 5 / span 5}.promo-flex-col-gap-1{display:flex;flex-direction:column;gap:4px}.promo-text-xs-label{font-size:12px;font-weight:700;color:#475569}.promo-input-compact{width:100%;border:1px solid #e2e8f0;background-color:#fff;border-radius:8px;padding:8px 12px;font-size:13px;color:#0f172a;outline:none;box-shadow:0 1px 2px #0f172a0d;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.promo-input-compact:focus{border-color:#0d9488;box-shadow:0 0 0 3px #0d94881a}.promo-pill-toggle{display:flex;background-color:#f1f5f9;padding:2px;border-radius:8px;border:1px solid rgba(226,232,240,.6);height:32px;align-items:center;box-sizing:border-box}.promo-pill-button{flex:1 1 0%;background:transparent;color:#64748b;border-radius:6px;font-size:12px;padding:4px 0;font-weight:500;border:none;cursor:pointer;transition:all .15s ease;text-align:center;display:inline-flex;align-items:center;justify-content:center;height:28px}.promo-pill-button:hover{background-color:#e2e8f080;color:#334155}.promo-pill-button.is-active{background-color:#0d9488;color:#fff;font-weight:600;box-shadow:0 1px 2px #0f172a0d}.promo-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:4px}.medical-alert-container{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.medical-alert-banner{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:8px;border-left:5px solid;font-size:.9em;line-height:1.5}.medical-alert-banner.allergy{background:#fef2f2;border-color:#ef4444;color:#991b1b}.medical-alert-banner.chronic{background:#fffbeb;border-color:#f59e0b;color:#92400e}.medical-alert-banner-title{font-weight:700;margin-bottom:2px}.medical-timeline{position:relative;padding-left:20px;margin:15px 0;border-left:2px solid #e2e8f0}.medical-timeline-item{position:relative;margin-bottom:25px}.medical-timeline-item:last-child{margin-bottom:10px}.medical-timeline-dot{position:absolute;left:-27px;top:4px;width:12px;height:12px;border-radius:50%;background-color:#12845f;border:2px solid #ffffff;box-shadow:0 0 0 2px #e2e8f0}.medical-timeline-date{font-size:.85em;color:#718096;font-weight:600;margin-bottom:6px;display:flex;align-items:center;gap:6px}.medical-timeline-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:15px;box-shadow:0 2px 4px #00000005;transition:all .2s ease}.medical-timeline-card:hover{box-shadow:0 4px 8px #0000000a;border-color:#cbd5e0}.vitals-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px dashed #e2e8f0}.vitals-badge{background:#f7fafc;border:1px solid #edf2f7;border-radius:6px;padding:6px 10px;text-align:center}.vitals-badge-label{font-size:.75em;color:#718096;text-transform:uppercase;margin-bottom:2px;font-weight:500}.vitals-badge-value{font-size:.95em;font-weight:700;color:#2d3748}.medical-log-section{margin-bottom:10px}.medical-log-section-label{font-size:.8em;color:#718096;font-weight:700;text-transform:uppercase;margin-bottom:4px}.medical-log-section-content{font-size:.9em;color:#2d3748;white-space:pre-line}.medical-log-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.sales-history-table{width:100%;border-collapse:collapse}.sales-history-table th,.sales-history-table td{padding:12px;text-align:left;border-bottom:1px solid #edf2f7}.sales-history-row{cursor:pointer;transition:background-color .15s ease}.sales-history-row:hover{background-color:#f7fafc}.sales-history-row.is-expanded{background-color:#f0f7ff}.sales-items-expanded-container{background-color:#f8fafc;border-left:4px solid #12845f;padding:15px;margin:10px 0;border-radius:0 8px 8px 0;box-shadow:inset 0 2px 4px #00000005}.sales-items-table{width:100%;border-collapse:collapse;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.sales-items-table th{background:#edf2f7;color:#4a5568;font-size:.8em;font-weight:700;text-transform:uppercase;padding:8px 12px}.sales-items-table td{padding:10px 12px;font-size:.85em;border-bottom:1px solid #edf2f7}.sales-items-table tr:last-child td{border-bottom:none}.medical-alert-banner{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:8px;margin-bottom:16px;box-shadow:0 1px 3px #0000000d}.medical-alert-banner.allergy{background-color:#fff5f5;border:1px solid #feb2b2;color:#c53030}.medical-alert-banner.chronic{background-color:#fffaf0;border:1px solid #fbd38d;color:#dd6b20}.medical-alert-icon{flex-shrink:0;margin-top:2px}.medical-alert-content{flex-grow:1}.medical-alert-title{font-weight:700;font-size:.95rem;margin-bottom:2px}.medical-alert-text{font-size:.85rem;line-height:1.4}.medical-log-timeline{position:relative;padding-left:24px;margin-top:15px}.medical-log-timeline:before{content:"";position:absolute;top:0;bottom:0;left:7px;width:2px;background-color:#e2e8f0}.medical-log-item{position:relative;margin-bottom:24px}.medical-log-item:last-child{margin-bottom:0}.medical-log-node{position:absolute;left:-24px;top:4px;width:16px;height:16px;border-radius:50%;background-color:#12845f;border:3px solid #ffffff;box-shadow:0 0 0 2px #e2e8f0;z-index:1}.medical-log-card{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;box-shadow:0 4px 12px #0b1f3a0a}.medical-log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;border-bottom:1px solid #f7fafc;padding-bottom:8px}.medical-log-date{font-weight:700;color:#2d3748;font-size:.95rem}.medical-log-actions{display:flex;gap:8px}.vitals-badge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}.vital-badge{background-color:#f7fafc;border:1px solid #edf2f7;border-radius:6px;padding:8px;text-align:center}.vital-badge-label{font-size:.75rem;color:#718096;text-transform:uppercase;margin-bottom:2px}.vital-badge-value{font-size:.9rem;font-weight:700;color:#2d3748}.medical-log-details{display:grid;gap:8px;font-size:.9rem;line-height:1.5}.medical-log-detail-row{display:flex;flex-direction:column}.medical-log-detail-label{font-weight:700;color:#4a5568;font-size:.85rem;margin-bottom:2px}.medical-log-detail-value{color:#2d3748;background-color:#f8fafc;padding:8px 12px;border-radius:6px;border:1px dashed #e2e8f0;white-space:pre-wrap}.medical-log-btn-container{display:flex;justify-content:flex-end;margin-bottom:15px}.medical-log-subform{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:20px}.auth-screen-v2{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px 16px;background:#f8fafc;background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(13,148,136,.08) 0%,transparent 60%),radial-gradient(ellipse 60% 40% at 80% 110%,rgba(100,116,139,.04) 0%,transparent 60%);font-family:Noto Sans Thai,Noto Sans,Leelawadee UI,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-card-v2{width:100%;max-width:360px;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(226,232,240,.7);border-radius:20px;box-shadow:0 8px 32px #0f172a0a,0 2px 8px #0f172a08,inset 0 1px #ffffffe6;padding:36px 32px 28px;display:flex;flex-direction:column;gap:0;transition:box-shadow .3s ease}.auth-card-v2:hover{box-shadow:0 12px 40px #0f172a12,0 4px 12px #0f172a0a,inset 0 1px #ffffffe6}.auth-brand-header{text-align:center;margin-bottom:24px;display:flex;flex-direction:column;align-items:center;gap:8px}.auth-logo-wrap{width:64px;height:64px;background:#0b1f3a;border:1px solid rgba(75,192,192,.18);border-radius:16px;display:flex;align-items:center;justify-content:center;padding:10px;box-shadow:0 4px 16px #0b1f3a38,0 0 0 3px #4bc0c012;margin-bottom:4px}.auth-logo-img{width:100%;height:100%;object-fit:contain;filter:brightness(0) invert(1)}.auth-logo-fallback{font-size:22px;line-height:1}.auth-title{margin:0;font-size:17px;font-weight:700;color:#0f172a;letter-spacing:-.02em;line-height:1.3}.auth-subtitle{margin:0;font-size:11.5px;color:#94a3b8;font-weight:400;line-height:1.5}.auth-runtime-badge{position:fixed;right:18px;bottom:14px;z-index:2;display:inline-grid;gap:0;min-width:0;max-width:min(260px,calc(100vw - 32px));padding:0;border:0;border-radius:0;color:#64748b85;background:transparent;font-size:9.5px;line-height:1.35;text-align:right;pointer-events:none}.auth-runtime-badge span{font-weight:700;letter-spacing:.04em;text-transform:uppercase}.auth-runtime-badge strong{color:#0f172a94;font-size:10px;font-weight:600}.auth-runtime-badge small{color:#64748b7a;font-size:9.5px}.auth-runtime-badge.is-local{color:#0478578a}.auth-runtime-badge.is-warning{color:#8a5c038f}@media (max-width: 640px){.auth-runtime-badge{right:50%;bottom:48px;transform:translate(50%);text-align:center}}.auth-form-v2{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:5px}.auth-label{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8;padding-left:1px}.auth-input{width:100%;border:1px solid rgba(226,232,240,.9);background:#f8fafc99;border-radius:12px;padding:9px 14px;font-size:12.5px;color:#0f172a;outline:none;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;font-family:inherit}.auth-input::placeholder{color:#94a3b8;font-weight:400}.auth-input:focus{border-color:#0d9488;background:#fff;box-shadow:0 0 0 4px #0d948814}.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-pw{padding-right:52px}.auth-pw-toggle{position:absolute;right:12px;background:none;border:none;padding:0;font-size:11px;font-weight:600;color:#64748b;cursor:pointer;transition:color .15s ease;font-family:inherit;-webkit-user-select:none;user-select:none;line-height:1}.auth-pw-toggle:hover{color:#0f172a}.auth-utilities{display:flex;justify-content:space-between;align-items:center;margin-top:-2px}.auth-remember{display:flex;align-items:center;gap:7px;font-size:11.5px;color:#64748b;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500}.auth-checkbox{width:14px;height:14px;border-radius:4px;border:1.5px solid #cbd5e1;accent-color:#0d9488;cursor:pointer}.auth-message{margin:0;padding:9px 12px;border-radius:10px;font-size:12px;line-height:1.5;font-weight:500}.auth-message-error{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.auth-message-success{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.auth-submit-btn{width:100%;background:#0d9488;color:#fff;font-weight:700;font-size:12.5px;padding:10.5px 16px;border:none;border-radius:12px;cursor:pointer;transition:background .18s ease,box-shadow .18s ease,transform .12s ease;box-shadow:0 2px 12px #0d948833;letter-spacing:.01em;font-family:inherit;margin-top:2px}.auth-submit-btn:hover:not(:disabled){background:#0f766e;box-shadow:0 4px 16px #0d948847;transform:translateY(-1px)}.auth-submit-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #0d94882e}.auth-submit-btn:disabled{background:#cbd5e1;color:#94a3b8;cursor:not-allowed;box-shadow:none}.auth-mode-toggle{background:none;border:none;padding:0;font-size:11.5px;font-weight:600;color:#0d9488;cursor:pointer;text-align:center;transition:color .15s ease;font-family:inherit;margin-top:2px;align-self:center}.auth-mode-toggle:hover{color:#0f766e;text-decoration:underline}.auth-footer-v2{display:flex;align-items:center;gap:8px;margin-top:24px;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#94a3b8;-webkit-user-select:none;user-select:none}.auth-footer-dot{width:3px;height:3px;background:#cbd5e1;border-radius:50%;flex:0 0 auto}.auth-version{color:#64748b;font-weight:800;letter-spacing:.08em}.sync-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:500;padding:4px 8px;border-radius:9999px;margin-top:4px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#94a3b8;transition:all .3s ease;-webkit-user-select:none;user-select:none}.sync-badge .dot{width:6px;height:6px;border-radius:50%;background:#94a3b8;display:inline-block}.sync-badge.online{color:#34d399;background:#34d3991a;border-color:#34d39933}.sync-badge.online .dot{background:#34d399;box-shadow:0 0 8px #34d399}.sync-badge.syncing{color:#fbbf24;background:#fbbf241a;border-color:#fbbf2433}.sync-badge.syncing .dot{background:#fbbf24;animation:sync-pulse-glow 1.5s infinite ease-in-out;box-shadow:0 0 8px #fbbf24}.sync-badge.offline-pending{color:#f87171;background:#f871711a;border-color:#f8717133}.sync-badge.offline-pending .dot{background:#f87171;box-shadow:0 0 8px #f87171}.sync-badge.offline-synced{color:#94a3b8;background:#94a3b81a;border-color:#94a3b833}.sync-badge.offline-synced .dot{background:#94a3b8}@keyframes sync-pulse-glow{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.5}}@keyframes ocr-scan{0%{top:0%;opacity:.3}50%{top:100%;opacity:1}to{top:0%;opacity:.3}}@keyframes ocr-pulse{0%{transform:scale(.98);opacity:.85;box-shadow:0 0 10px #3b82f633}50%{transform:scale(1.02);opacity:1;box-shadow:0 0 25px #3b82f666}to{transform:scale(.98);opacity:.85;box-shadow:0 0 10px #3b82f633}}@keyframes ocr-glow{0%{border-color:#3b82f64d}50%{border-color:#10b981cc}to{border-color:#3b82f64d}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.ocr-loading-container{display:flex;justify-content:center;align-items:center;width:100%;margin-bottom:1.5rem}.ocr-loading-card{display:flex;align-items:center;gap:1.5rem;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:1rem;padding:1.25rem 1.75rem;width:100%;max-width:580px;box-shadow:0 10px 25px -5px #0000000d,0 8px 10px -6px #0000000d;position:relative;overflow:hidden;animation:ocr-pulse 3s infinite ease-in-out}.ocr-loading-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(59,130,246,.03),transparent);animation:shimmer 2.5s infinite linear}.ocr-scanner-visual{position:relative;width:70px;height:90px;background:#f1f5f9;border:2px solid #cbd5e1;border-radius:.5rem;padding:.75rem;display:flex;flex-direction:column;gap:.375rem;overflow:hidden;flex-shrink:0;animation:ocr-glow 3s infinite ease-in-out}.invoice-line{height:4px;background:#cbd5e1;border-radius:2px}.invoice-line.short{width:40%}.invoice-line.medium{width:65%}.invoice-line.long{width:90%}.scanning-bar{position:absolute;left:0;width:100%;height:3px;background:linear-gradient(90deg,#10b98100,#10b981,#10b98100);box-shadow:0 0 8px 2px #10b981;animation:ocr-scan 2s infinite ease-in-out}.ocr-loading-details{display:flex;flex-direction:column;gap:.375rem;flex-grow:1;z-index:1}.ai-badge{display:inline-flex;align-items:center;gap:.25rem;background:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe;padding:.125rem .5rem;border-radius:9999px;font-size:.65rem;font-weight:700;letter-spacing:.05em;width:fit-content}.sparkle-icon{animation:spin 3s infinite linear}.loading-title{margin:0;font-size:1rem;font-weight:700;color:#0f172a}.loading-status{margin:0;font-size:.825rem;color:#64748b;min-height:1.25rem}.progress-row{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.progress-bar-wrap{flex-grow:1;height:6px;background:#e2e8f0;border-radius:9999px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:9999px;transition:width .3s ease-out}.progress-percentage{font-size:.825rem;font-weight:700;color:#10b981;min-width:2.25rem;text-align:right}.stock-categories-view{display:flex;flex-direction:column;gap:20px;margin-top:10px}.stock-categories-controls{display:flex;justify-content:space-between;align-items:center;gap:16px}.category-cards-grid{display:flex;flex-direction:column;gap:12px}.category-card{background:var(--white);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px -1px #00000005;transition:all .2s ease;overflow:hidden}.category-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px -1px #0000000d}.category-card.is-expanded{border-color:var(--brand-mint-strong);box-shadow:0 8px 16px -4px #4bc0c01a}.category-card-header{padding:16px 20px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.category-card-info{display:flex;align-items:center;gap:14px}.category-card-icon-wrap{width:36px;height:36px;border-radius:8px;background:var(--brand-mint-soft);color:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0}.category-card-info h3{margin:0;font-size:15px;font-weight:700;color:var(--navy)}.category-card-info span{font-size:12px;color:var(--muted);font-weight:500;display:block;margin-top:2px}.category-card-arrow{color:var(--muted);display:flex;align-items:center;transition:transform .2s ease}.category-card-arrow svg{transition:transform .2s ease}.category-card-arrow svg.rotated{transform:rotate(180deg);color:var(--green)}.category-card-content{border-top:1px solid #edf2f7;background:#f8fafc}.category-product-list{display:flex;flex-direction:column}.category-product-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #edf2f7;transition:background .15s ease}.category-product-row:last-child{border-bottom:none}.category-product-row:hover{background:#ffffffb3}.category-product-info{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.category-product-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.category-product-title-line strong{font-size:14px;color:var(--ink);font-weight:600}.category-product-sku{font-family:monospace;font-size:11px;background:#e2e8f0;color:#475569;padding:1px 6px;border-radius:4px;font-weight:600}.category-product-generic{font-size:12px;color:var(--muted);font-weight:500}.category-product-lots{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.lot-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border-radius:6px;font-size:11px;font-weight:600;border:1px solid transparent}.lot-chip-no{opacity:.85}.lot-chip-qty{background:#fff6;padding:0 4px;border-radius:3px}.lot-chip.lot-expiry-normal{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.lot-chip.lot-expiry-soon{background:#fef3c7;color:#d97706;border-color:#fde68a}.lot-chip.lot-expiry-expired{background:#fee2e2;color:#dc2626;border-color:#fecaca}.category-product-stock-summary{display:flex;align-items:center;justify-content:flex-end;margin-left:20px;flex-shrink:0}.stock-total-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:60px;height:48px;padding:6px 12px;background:var(--brand-mint-soft);border:1px solid rgba(75,192,192,.2);border-radius:8px;color:var(--green-dark)}.stock-total-badge strong{font-size:16px;font-weight:800;line-height:1}.stock-total-badge span{font-size:10px;font-weight:700;margin-top:2px;opacity:.85;text-transform:uppercase}.categories-search-bar{display:flex;align-items:center;gap:8px;background:var(--white);border:1px solid #e2e8f0;border-radius:8px;padding:0 12px;height:38px;max-width:320px;width:100%;box-shadow:var(--shadow-soft);transition:all .2s ease}.categories-search-bar:focus-within{border-color:var(--brand-mint-strong);box-shadow:0 0 0 3px #4bc0c026;background:var(--white)}.categories-search-bar svg{color:var(--muted);flex-shrink:0}.categories-search-bar input{border:none;background:transparent;padding:0;margin:0;width:100%;font-size:13px;font-weight:500;color:var(--ink);outline:none}.categories-search-bar input::placeholder{color:#94a3b8;font-weight:400}.categories-clear-btn{background:none;border:none;color:var(--muted);cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease}.categories-clear-btn:hover{background:#edf2f7;color:var(--ink)}.categories-reload-btn{height:38px;padding:0 14px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:6px;border-radius:8px;border:1px solid #e2e8f0;background:var(--white);color:#475569;cursor:pointer;box-shadow:var(--shadow-soft);transition:all .15s ease}.categories-reload-btn:hover:not(:disabled){background:#f8fafc;color:var(--ink);border-color:#cbd5e1}.categories-reload-btn:disabled{opacity:.6;cursor:not-allowed}.categories-summary-text{font-size:13px;color:var(--muted)}.categories-summary-text strong{color:var(--navy);font-weight:600}.special-report-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;background:var(--brand-mint-soft);color:var(--navy-soft);font-size:12px;font-weight:700;border:1px solid rgba(75,192,192,.35);box-shadow:0 1px 2px #0b1f3a0a}
