@font-face{font-family:Noto Kufi Arabic;font-style:normal;font-weight:400 700;font-display:swap;src:local("Noto Kufi Arabic")}:root{--bg: #faf7f5;--surface: #ffffff;--surface-sunken: #f6f1ee;--surface-raised: #ffffff;--text: #241a18;--text-soft: #6b5955;--text-faint: #7e6761;--border: #ece2dd;--border-strong: #d9c9c2;--brand: #b5121b;--brand-hover: #920e16;--brand-soft: #fdeceb;--brand-ring: #b5121b30;--brand-glow: #b5121b1f;--ok: #0f6b45;--ok-soft: #e2f6ed;--warn: #96540b;--warn-soft: #fdf0dd;--danger: #b5121b;--danger-soft: #fdeceb;--info: #1d5490;--info-soft: #e8f1fb;--gold: #b8860b;--gold-soft: #fdf5e0;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 20px;--s6: 24px;--s7: 32px;--s8: 40px;--t-xs: 13px;--t-sm: 15px;--t-base: 16px;--t-md: 18px;--t-lg: 21px;--t-xl: 26px;--t-2xl: 32px;--r-sm: 10px;--r-md: 14px;--r-lg: 20px;--r-full: 999px;--shadow-1: 0 1px 2px rgb(74 42 36 / .05), 0 1px 3px rgb(74 42 36 / .04);--shadow-2: 0 4px 14px rgb(74 42 36 / .08), 0 2px 5px rgb(74 42 36 / .04);--shadow-3: 0 14px 38px rgb(74 42 36 / .16), 0 4px 10px rgb(74 42 36 / .06);--tap: 52px;--tap-lg: 60px;--navh: 62px;--ease: cubic-bezier(.2, .8, .3, 1);--spring: cubic-bezier(.34, 1.25, .64, 1);--fast: .14s;--base: .24s;--slow: .38s;--z-sticky: 20;--z-bar: 40;--z-pop: 60;--z-modal: 100;font-family:Noto Kufi Arabic,Noto Naskh Arabic,Segoe UI,Tahoma,sans-serif;color-scheme:light}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-size:var(--t-base);line-height:1.65;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none}.num{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}h1,h2,h3{line-height:1.3;margin:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app-shell{display:flex;flex-direction:column;min-height:100dvh}.page-leave-active{position:absolute;inset-inline:0}.topbar{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);padding-block-start:calc(var(--s3) + env(safe-area-inset-top));background:var(--surface);border-block-end:1px solid var(--border);position:sticky;inset-block-start:0;z-index:var(--z-sticky)}.topbar .mark{inline-size:38px;block-size:38px;border-radius:var(--r-sm);background:var(--brand);color:#fff;display:grid;place-items:center;font-weight:700;font-size:var(--t-sm);flex:0 0 auto}.topbar .titles{flex:1;min-width:0}.topbar .titles b{display:block;font-size:var(--t-sm);font-weight:700}.topbar .titles span{display:block;font-size:var(--t-xs);color:var(--text-faint)}.page{padding:var(--s4);padding-block-end:calc(var(--s8) * 3);max-width:780px;margin-inline:auto;width:100%;flex:1}.page>h2{font-size:var(--t-xl);font-weight:700;margin-block-end:var(--s5)}.page-sub{color:var(--text-soft);font-size:var(--t-sm);margin-block-start:calc(var(--s2) * -1);margin-block-end:var(--s5)}.bottomnav{position:fixed;inset-inline:0;inset-block-end:0;z-index:var(--z-bar);display:flex;justify-content:space-around;align-items:stretch;background:var(--surface);border-block-start:1px solid var(--border);padding-block-end:env(safe-area-inset-bottom);box-shadow:0 -2px 12px #0b12200d}.bottomnav a{flex:1;block-size:var(--navh);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:var(--s2) var(--s1);color:var(--text-faint);text-decoration:none;font-size:var(--t-xs);font-weight:600;transition:color var(--fast) var(--ease)}.bottomnav a svg{inline-size:24px;block-size:24px;stroke-width:1.9;transition:transform var(--fast) var(--ease)}.bottomnav a.router-link-active{color:var(--brand)}.bottomnav a.router-link-active svg{stroke-width:2.4;transform:translateY(-1px) scale(1.04)}.bottomnav a:active svg{transform:scale(.9)}.navmore{flex:1;block-size:var(--navh);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:var(--s2) var(--s1);background:none;border:none;box-shadow:none;color:var(--text-faint);font-size:var(--t-xs);font-weight:600;min-block-size:0}.navmore:hover:not(:disabled){background:none;box-shadow:none;color:var(--text)}.navmore svg{inline-size:24px;block-size:24px;stroke-width:1.9;transform:rotate(90deg);transition:transform var(--fast) var(--ease)}.navmore:active{transform:none}.navmore:active svg{transform:rotate(90deg) scale(.9)}.page-enter-active{transition:opacity .12s var(--ease)}.page-leave-active{transition:opacity 80ms var(--ease)}.page-enter-from,.page-leave-to{opacity:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s4);margin-block-end:var(--s4);box-shadow:var(--shadow-1)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.card.flush{padding:0;overflow:hidden}.card>h3{font-size:var(--t-md);font-weight:700;margin-block-end:var(--s3);display:flex;align-items:center;gap:var(--s2)}.card-head{display:flex;align-items:center;gap:var(--s3);padding:var(--s4);border-block-end:1px solid var(--border)}.row{display:flex;gap:var(--s3);align-items:center}.row-between{display:flex;gap:var(--s3);align-items:center;justify-content:space-between}.stack{display:flex;flex-direction:column;gap:var(--s3)}.grow{flex:1;min-width:0}.muted{color:var(--text-soft);font-size:var(--t-sm)}.faint{color:var(--text-faint);font-size:var(--t-xs)}.center{text-align:center}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}label{display:flex;align-items:center;flex-wrap:wrap;gap:2px;font-size:var(--t-sm);font-weight:600;color:var(--text-soft);margin-block-end:var(--s2)}.fieldhelp{position:relative;display:inline-flex;vertical-align:middle}.helpdot{inline-size:22px;block-size:22px;min-block-size:22px;padding:0;margin-inline-start:var(--s2);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--r-full);background:transparent;color:var(--text-faint);border:none;box-shadow:none;position:relative;transition:color var(--fast) var(--ease),background var(--fast) var(--ease)}.helpdot:after{content:"";position:absolute;top:-13px;right:-13px;bottom:-13px;left:-13px}.helpdot svg{stroke-width:2.1}.helpdot:hover:not(:disabled){background:var(--brand-soft);color:var(--brand);box-shadow:none}.helpdot.on{background:var(--brand);color:#fff;box-shadow:none}.helpdot:active:not(:disabled){transform:scale(.9)}.helpbubble{position:absolute;z-index:var(--z-pop);inset-block-start:calc(100% + 10px);inset-inline-start:-8px;inline-size:max-content;max-inline-size:min(74vw,300px);padding:var(--s3) var(--s4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-3);font-size:var(--t-sm);font-weight:500;line-height:1.65;color:var(--text);text-align:start;white-space:normal;transform-origin:14px top}.helpbubble .body{display:block}.helpbubble .arrow{position:absolute;inset-block-start:-6px;inset-inline-start:14px;inline-size:11px;block-size:11px;background:var(--surface);border-inline-start:1px solid var(--border);border-block-start:1px solid var(--border);transform:rotate(45deg)}.helpbubble .ex{display:flex;align-items:flex-start;gap:var(--s2);margin-block-start:var(--s3);padding-block-start:var(--s3);border-block-start:1px solid var(--border);font-size:var(--t-xs);color:var(--ok);font-weight:600;line-height:1.6}.helpbubble .ex svg{flex:0 0 auto;margin-block-start:2px}.help-enter-active{transition:opacity var(--fast) var(--ease),transform var(--fast) var(--spring)}.help-leave-active{transition:opacity 90ms var(--ease),transform 90ms var(--ease)}.help-enter-from,.help-leave-to{opacity:0;transform:translateY(-6px) scale(.97)}.field{margin-block-end:var(--s4)}.field:last-child{margin-block-end:0}.hint{font-size:var(--t-xs);color:var(--text-faint);margin-block-start:var(--s1)}input,select,textarea{inline-size:100%;min-block-size:var(--tap);padding:var(--s3);font:inherit;font-size:var(--t-base);color:var(--text);background:var(--surface);border:1.5px solid var(--border-strong);border-radius:var(--r-md);transition:border-color var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 4px var(--brand-ring)}input:disabled,select:disabled{background:var(--surface-sunken);color:var(--text-faint)}input::placeholder{color:var(--text-faint)}textarea{min-block-size:88px;resize:vertical;line-height:1.6}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left var(--s3) center;padding-inline-start:var(--s3);padding-inline-end:var(--s7)}input.qty{font-size:var(--t-xl);font-weight:700;text-align:center;min-block-size:var(--tap-lg);letter-spacing:.02em}button{min-block-size:var(--tap);padding:var(--s3) var(--s5);font:inherit;font-size:var(--t-base);font-weight:700;color:#fff;background:linear-gradient(180deg,color-mix(in srgb,var(--brand) 92%,#fff) 0%,var(--brand) 100%);border:none;border-radius:var(--r-md);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);box-shadow:0 1px 2px #4a2a241f,0 2px 8px var(--brand-glow);transition:background var(--fast) var(--ease),transform var(--fast) var(--spring),box-shadow var(--fast) var(--ease),opacity var(--fast) var(--ease);-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:hover:not(:disabled){background:linear-gradient(180deg,var(--brand) 0%,var(--brand-hover) 100%);box-shadow:0 2px 4px #4a2a2424,0 6px 18px var(--brand-glow)}button:active:not(:disabled){transform:scale(.96) translateY(1px);box-shadow:0 1px 1px #4a2a241f}button:focus-visible{outline:none;box-shadow:0 0 0 4px var(--brand-ring)}button:disabled{opacity:.45;cursor:not-allowed}button svg{inline-size:19px;block-size:19px;flex:0 0 auto}button.secondary{background:var(--surface);color:var(--text);border:1.5px solid var(--border-strong);box-shadow:var(--shadow-1)}button.secondary:hover:not(:disabled){background:var(--surface-sunken);box-shadow:var(--shadow-1)}button.ghost{background:transparent;color:var(--brand);border:1.5px solid var(--brand);box-shadow:none}button.ghost:hover:not(:disabled){background:var(--brand-soft);box-shadow:none}button.quiet{background:transparent;color:var(--text-soft);box-shadow:none}button.quiet:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}button.danger{background:linear-gradient(180deg,color-mix(in srgb,var(--danger) 92%,#fff),var(--danger))}button.block{inline-size:100%}button.sm{min-block-size:42px;padding:var(--s2) var(--s3);font-size:var(--t-sm)}button.icon{min-block-size:46px;inline-size:46px;padding:0}.actionbar{position:fixed;inset-inline:0;inset-block-end:calc(var(--navh) + env(safe-area-inset-bottom));z-index:calc(var(--z-bar) + 1);display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--surface);border-block-start:1px solid var(--border);box-shadow:0 -4px 16px #4a2a241a}.no-nav .actionbar{inset-block-end:0;padding-block-end:calc(var(--s3) + env(safe-area-inset-bottom))}.actionbar .summary{flex:1;min-width:0}.actionbar .summary b{display:block;font-size:var(--t-md);font-weight:700;transition:color var(--fast) var(--ease)}.actionbar .summary span{display:block;font-size:var(--t-xs);color:var(--text-faint)}.actionbar .summary b.live{color:var(--brand)}.actionbar button{flex:0 0 auto;min-inline-size:140px}.has-bottomnav{padding-block-end:calc(var(--navh) + env(safe-area-inset-bottom) + var(--s5))}.has-actionbar{padding-block-end:calc(var(--navh) + var(--tap) + (var(--s3) * 2) + env(safe-area-inset-bottom) + var(--s5))}.app-shell.with-actionbar{--barh: calc(var(--tap) + var(--s3) * 2)}.no-nav .has-actionbar{padding-block-end:calc(var(--tap) + (var(--s3) * 2) + env(safe-area-inset-bottom) + var(--s5))}.segmented{display:flex;gap:var(--s1);padding:var(--s1);background:var(--surface-sunken);border:1.5px solid var(--border);border-radius:var(--r-md)}.segmented button{flex:1;min-block-size:46px;padding:var(--s2);background:transparent;color:var(--text-soft);font-size:var(--t-sm);font-weight:700;border-radius:var(--r-sm);flex-direction:column;gap:0;box-shadow:none;transition:background var(--fast) var(--ease),color var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}.segmented button:hover:not(.on){background:transparent;color:var(--text);box-shadow:none}.segmented button.on{background:var(--surface);color:var(--brand);box-shadow:var(--shadow-1);animation:pop var(--base) var(--spring)}@keyframes pop{0%{transform:scale(.94)}to{transform:scale(1)}}.segmented button small{font-size:var(--t-xs);font-weight:600;opacity:.75}.badge{display:inline-flex;align-items:center;gap:var(--s1);padding:3px var(--s2);border-radius:var(--r-full);font-size:var(--t-xs);font-weight:700;white-space:nowrap}.badge svg{inline-size:14px;block-size:14px}.badge.ok{background:var(--ok-soft);color:var(--ok)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.info{background:var(--info-soft);color:var(--info)}.badge.neutral{background:var(--surface-sunken);color:var(--text-soft)}.notice{display:flex;align-items:flex-start;gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);margin-block-end:var(--s4);font-size:var(--t-sm);font-weight:600;border:1px solid transparent}.notice svg{inline-size:20px;block-size:20px;flex:0 0 auto;margin-block-start:2px}.notice.ok{background:var(--ok-soft);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 22%,transparent)}.notice.warn{background:var(--warn-soft);color:var(--warn);border-color:color-mix(in srgb,var(--warn) 22%,transparent)}.notice.danger{background:var(--danger-soft);color:var(--danger);border-color:color-mix(in srgb,var(--danger) 22%,transparent)}.notice.info{background:var(--info-soft);color:var(--info);border-color:color-mix(in srgb,var(--info) 22%,transparent)}.readout{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding-block:var(--s2)}.readout .label{font-size:var(--t-sm);color:var(--text-soft);font-weight:600}.readout .value{font-size:var(--t-lg);font-weight:700}.readout.total .value{font-size:var(--t-xl)}.readout.gap .value{color:var(--danger)}.empty{padding:var(--s7) var(--s4);display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--text-faint)}.empty>svg{inline-size:40px;block-size:40px;stroke-width:1.5;margin-block-end:var(--s3);opacity:.45}.empty p{margin:0 0 var(--s5);font-size:var(--t-base);font-weight:600;color:var(--text-soft);max-inline-size:34ch;line-height:1.55}.empty p .faint{display:block;margin-block-start:var(--s1);font-weight:400}.empty button{inline-size:auto;align-self:center;min-block-size:46px;padding-inline:var(--s5);border-radius:var(--r-full);font-size:var(--t-sm)}.empty button svg{inline-size:18px;block-size:18px}.skeleton{background:linear-gradient(90deg,var(--surface-sunken) 25%,var(--border) 50%,var(--surface-sunken) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--r-sm)}@keyframes shimmer{to{background-position:-200% 0}}.skeleton-row{block-size:62px;margin-block-end:var(--s3)}.spinner{inline-size:18px;block-size:18px;border-radius:50%;border:2.5px solid rgb(255 255 255 / .35);border-block-start-color:#fff;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;inset-block-end:calc(var(--navh) + var(--barh, 0px) + var(--s4) + env(safe-area-inset-bottom));inset-inline:var(--s4);z-index:var(--z-modal);display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:var(--text);color:var(--surface);border-radius:var(--r-md);box-shadow:var(--shadow-3);font-size:var(--t-sm);font-weight:600;animation:toast-in var(--base) var(--ease)}.toast svg{inline-size:20px;block-size:20px;flex:0 0 auto}.toast.ok svg{color:#6ee7a8}.toast.warn svg{color:#fbbf5a}@keyframes toast-in{0%{opacity:0;transform:translateY(16px) scale(.96)}}.notice.ok{animation:glow-ok var(--slow) var(--ease)}@keyframes glow-ok{0%{transform:scale(.99);box-shadow:0 0 color-mix(in srgb,var(--ok) 30%,transparent)}50%{box-shadow:0 0 0 8px transparent}to{transform:scale(1)}}.sheet-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:#241a1880;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade-in var(--fast) var(--ease)}@keyframes fade-in{0%{opacity:0}}.sheet{position:fixed;inset-inline:0;inset-block-end:0;z-index:calc(var(--z-modal) + 1);background:var(--surface);border-start-start-radius:var(--r-lg);border-start-end-radius:var(--r-lg);box-shadow:var(--shadow-3);max-block-size:88dvh;display:flex;flex-direction:column;padding-block-end:env(safe-area-inset-bottom);animation:sheet-up var(--base) var(--spring)}@keyframes sheet-up{0%{transform:translateY(100%)}}.sheet-grip{inline-size:42px;block-size:4px;border-radius:var(--r-full);background:var(--border-strong);margin:var(--s2) auto 0}.sheet-head{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-block-end:1px solid var(--border)}.sheet-head b{font-size:var(--t-md)}.sheet-body{padding:var(--s4);overflow-y:auto;-webkit-overflow-scrolling:touch}.sheet-sub{font-size:var(--t-sm);font-weight:700;color:var(--text-soft);margin:var(--s4) 0 var(--s2)}.sheet-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);margin-block-start:var(--s5);padding-block-start:var(--s3);border-block-start:1px solid var(--border)}.readout .value svg{vertical-align:-3px}@media(min-width:700px){.sheet{inset-block-end:auto;inset-block-start:50%;inset-inline:50%;transform:translate(50%,-50%);inline-size:min(560px,92vw);border-radius:var(--r-lg);animation:sheet-pop var(--base) var(--spring)}@keyframes sheet-pop{0%{opacity:0;transform:translate(50%,-46%) scale(.97)}}.sheet-grip{display:none}}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-block-end:1px solid var(--border);min-block-size:var(--tap);text-align:start}.list-row:last-child{border-block-end:none}.list-row .lead{inline-size:40px;block-size:40px;border-radius:var(--r-sm);background:var(--surface-sunken);color:var(--text-soft);display:grid;place-items:center;flex:0 0 auto}.list-row .lead svg{inline-size:20px;block-size:20px}.list-row b{display:block;font-size:var(--t-base);font-weight:700}.list-row .sub{font-size:var(--t-xs);color:var(--text-faint)}button.list-row{inline-size:100%;background:var(--surface);color:var(--text);border-radius:0;font-weight:400;justify-content:flex-start;box-shadow:none;transition:background var(--fast) var(--ease)}button.list-row:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}button.list-row:active:not(:disabled){transform:none;background:var(--brand-soft);box-shadow:none}button.list-row:active:not(:disabled) .lead{background:var(--brand);color:#fff}.list-row .lead{transition:background var(--fast) var(--ease),color var(--fast) var(--ease)}.entry{border:1.5px solid var(--border);border-radius:var(--r-md);padding:var(--s4);margin-block-end:var(--s3);background:var(--surface);animation:entry-in var(--base) var(--ease)}.entry.focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}@keyframes entry-in{0%{opacity:0;transform:translateY(-6px)}}.entry-head{display:flex;align-items:flex-start;gap:var(--s2);margin-block-end:var(--s3)}.entry-head b{flex:1;font-size:var(--t-md);font-weight:700;line-height:1.35}.entry-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);margin-block-start:var(--s3);padding-block-start:var(--s3);border-block-start:1px dashed var(--border)}.linelist{display:flex;flex-direction:column;gap:var(--s2)}.linerow{display:flex;align-items:stretch;gap:0;border:1.5px solid var(--border);border-radius:var(--r-md);background:var(--surface);overflow:hidden;animation:rise var(--fast) var(--ease)}.linemain{flex:1;min-width:0;display:flex;align-items:center;gap:var(--s3);min-block-size:56px;padding:var(--s2) var(--s3);background:none;color:var(--text);border:none;border-radius:0;box-shadow:none;font-weight:400;text-align:start}.linemain:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}.linemain:active:not(:disabled){transform:none;background:var(--brand-soft)}.linerow b{display:block;font-size:var(--t-sm);font-weight:700;line-height:1.3}.linerow .sub{display:block;font-size:var(--t-xs);color:var(--text-faint);margin-block-start:1px}.linerow .amt{font-size:var(--t-sm);font-weight:700;flex:0 0 auto}.linedel{flex:0 0 auto;inline-size:46px;border-radius:0;border-inline-start:1px solid var(--border);color:var(--text-faint)}.linedel:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}.qtypad{display:flex;flex-direction:column;gap:var(--s3)}.qtydisplay{display:flex;align-items:stretch;gap:var(--s2)}.qtydisplay .step{inline-size:56px;min-block-size:64px;flex:0 0 auto;border-radius:var(--r-md)}.qtydisplay .val{flex:1;min-width:0;display:flex;align-items:baseline;justify-content:center;gap:var(--s2);padding:var(--s2) var(--s3);min-block-size:64px;background:var(--surface-sunken);border:1.5px solid var(--border-strong);border-radius:var(--r-md)}.qtydisplay .val .n{font-size:34px;font-weight:700;line-height:1.1;overflow:hidden;text-overflow:ellipsis}.qtydisplay .val .u{font-size:var(--t-sm);color:var(--text-faint);font-weight:600}.qtyconv{text-align:center;font-size:var(--t-sm);color:var(--ok);font-weight:600;padding:var(--s2);background:var(--ok-soft);border-radius:var(--r-sm)}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}.keypad button{min-block-size:58px;padding:0;background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:var(--r-md);font-size:var(--t-lg);font-weight:700;box-shadow:none;font-variant-numeric:tabular-nums}.keypad button:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}.keypad button:active:not(:disabled){background:var(--brand-soft);border-color:var(--brand);transform:scale(.96)}.keypad .dot{color:var(--text-soft)}.keypad .del{color:var(--danger)}.keypad .del:active:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}.pendcard{border-inline-start:4px solid var(--border)}.pendcard.late{border-inline-start-color:var(--warn)}.diffrow{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-block-end:1px solid var(--border)}.diffrow:last-child{border-block-end:none}.diffrow .lead{inline-size:34px;block-size:34px;border-radius:var(--r-full);display:grid;place-items:center;flex:0 0 auto;background:var(--ok-soft);color:var(--ok)}.diffrow b{display:block;font-size:var(--t-sm);font-weight:700}.diffrow .sub{display:block;font-size:var(--t-xs);color:var(--text-faint)}.diffrow.bad{background:var(--danger-soft)}.diffrow.bad .lead{background:var(--danger);color:#fff}.diffrow .dnum{font-size:var(--t-lg);font-weight:700;color:var(--danger);flex:0 0 auto}.countprog{display:flex;align-items:center;gap:var(--s3);margin-block-end:var(--s4)}.countprog .bar{flex:1;block-size:6px;border-radius:var(--r-full);background:var(--surface-sunken);overflow:hidden}.countprog .bar span{display:block;block-size:100%;background:var(--brand);border-radius:var(--r-full);transition:inline-size var(--base) var(--ease)}.countprog .faint{flex:0 0 auto;font-size:var(--t-xs)}.buyrow{display:flex;align-items:stretch;border-block-end:1px solid var(--border)}.buyrow:last-child{border-block-end:none}.buyrow.off{opacity:.45}.buyrow.manual{border-inline-start:3px solid var(--brand)}.buyrow .tick{flex:0 0 auto;inline-size:52px;border-radius:0;border:none;background:none;color:var(--ok);box-shadow:none}.buyrow.off .tick{color:var(--text-faint)}.buyrow .buymain{flex:1;min-width:0;display:flex;align-items:center;gap:var(--s3);min-block-size:60px;padding:var(--s2) var(--s4) var(--s2) 0;background:none;color:var(--text);border:none;border-radius:0;box-shadow:none;font-weight:400;text-align:start}.buyrow .buymain:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}.buyrow b{display:block;font-size:var(--t-sm);font-weight:700}.buyrow .sub{display:block;font-size:var(--t-xs);color:var(--text-faint)}.buyrow .want{display:flex;align-items:center;gap:var(--s2);flex:0 0 auto;color:var(--brand)}.buyrow .want{flex-direction:column;align-items:flex-end;gap:1px}.buyrow .want b{font-size:var(--t-md)}.list-row .ctd{display:flex;align-items:center;gap:var(--s2);font-weight:700}.buyrow .cost{font-size:var(--t-xs);color:var(--text-faint);font-weight:600}.buyrow b .badge{margin-inline-start:var(--s2);font-size:11px;vertical-align:middle}.buyrow .want .u{font-size:var(--t-xs);font-weight:600}.msgpreview{margin:0;padding:var(--s3);background:var(--surface-sunken);border-radius:var(--r-md);font-family:inherit;font-size:var(--t-sm);line-height:1.7;white-space:pre-wrap;word-break:break-word;max-block-size:240px;overflow-y:auto}.routerow{display:flex;align-items:flex-end;gap:var(--s3)}.routerow .leg{display:flex;flex-direction:column;gap:var(--s1);min-width:0}.routerow .leg .k{font-size:var(--t-xs);color:var(--text-faint);font-weight:600;margin:0}.routerow .leg b{display:block;font-size:var(--t-sm);font-weight:700;padding:var(--s3) 0}.routerow .arrow{flex:0 0 auto;color:var(--text-faint);margin-block-end:var(--s4)}.routerow select{min-block-size:48px}.onhand.empty{background:var(--danger-soft);color:var(--danger)}.onhand.empty b{color:var(--danger)}.onhand.expiring{background:var(--warn-soft);color:var(--warn);margin-block-start:var(--s2)}.onhand.expiring b{color:var(--warn)}.compare{display:flex;align-items:stretch;gap:var(--s2);margin-block-start:var(--s4)}.compare .side{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--s3) var(--s2);background:var(--surface-sunken);border-radius:var(--r-md)}.compare .side .k{font-size:var(--t-xs);color:var(--text-faint);font-weight:600;text-align:center}.compare .side .v{font-size:var(--t-lg);font-weight:700}.compare .vs{flex:0 0 auto;display:grid;place-items:center;inline-size:42px;border-radius:var(--r-md);background:var(--surface-sunken);color:var(--text-faint)}.compare .vs.ok{background:var(--ok-soft);color:var(--ok)}.compare .vs.gap{background:var(--warn-soft);color:var(--warn)}.photocard{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s2);border:1.5px solid var(--ok);background:var(--ok-soft);border-radius:var(--r-md)}.photocard .pthumb{position:relative;flex:0 0 auto;padding:0;inline-size:76px;block-size:76px;min-block-size:76px;border:none;border-radius:var(--r-sm);overflow:hidden;background:var(--surface);box-shadow:none}.photocard .pthumb img{inline-size:100%;block-size:100%;object-fit:cover}.photocard .pthumb .zoom{position:absolute;inset-block-end:3px;inset-inline-end:3px;display:grid;place-items:center;inline-size:24px;block-size:24px;border-radius:var(--r-full);background:#241a18ad;color:#fff}.photoviewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) + 1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s4);padding:var(--s4);padding-block-end:calc(var(--s4) + env(safe-area-inset-bottom))}.photoviewer img{max-inline-size:100%;max-block-size:78vh;object-fit:contain;border-radius:var(--r-md);background:var(--surface)}.photocard .pinfo{flex:1;min-width:0}.photocard .pinfo b{display:flex;align-items:center;gap:var(--s1);font-size:var(--t-sm);color:var(--ok)}.pricerow{display:flex;align-items:center;gap:var(--s2)}.pricerow .cur{flex:0 0 auto;font-size:var(--t-xs);color:var(--text-faint);font-weight:600}.linesheet .segmented button{min-block-size:52px}.onhand{display:flex;align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);margin-block-end:var(--s4);background:var(--surface-sunken);border-radius:var(--r-sm);font-size:var(--t-sm);color:var(--text-soft)}.onhand b{color:var(--text)}.sugg{display:flex;flex-wrap:wrap;gap:var(--s2);margin-block-start:var(--s3)}.suggchip{min-block-size:40px;padding:var(--s2) var(--s3);background:var(--surface);color:var(--text-soft);border:1.5px dashed var(--border-strong);border-radius:var(--r-full);font-size:var(--t-xs);font-weight:600;box-shadow:none;gap:var(--s2)}.suggchip b{font-size:var(--t-sm);color:var(--text)}.suggchip:hover:not(:disabled){background:var(--brand-soft);border-color:var(--brand);color:var(--brand);box-shadow:none}.suggchip:hover:not(:disabled) b{color:var(--brand)}.suggchip.need{border-style:solid;border-color:var(--warn);color:var(--warn)}.suggchip.need b{color:var(--warn)}.itempicker{display:flex;flex-direction:column;gap:var(--s3)}.search-field .clearq{position:absolute;inset-inline-end:var(--s2);inset-block-start:50%;transform:translateY(-50%);min-block-size:34px;inline-size:34px}.cattabs{display:flex;gap:var(--s2);overflow-x:auto;padding-block-end:var(--s1);scrollbar-width:none;-webkit-overflow-scrolling:touch}.cattabs::-webkit-scrollbar{display:none}.cattabs button{flex:0 0 auto;min-block-size:42px;padding:var(--s2) var(--s4);background:var(--surface);color:var(--text-soft);border:1.5px solid var(--border);border-radius:var(--r-full);font-size:var(--t-sm);font-weight:600;box-shadow:none;gap:var(--s2)}.cattabs button:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}.cattabs button.on{background:var(--brand);color:#fff;border-color:var(--brand)}.cattabs button .n{font-size:var(--t-xs);opacity:.7;font-weight:700}.cattabs button.on .n{opacity:.9}.pickcount{font-size:var(--t-xs);margin-block-end:calc(var(--s2) * -1)}.itemgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;max-block-size:52vh;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-block-end:var(--s1);overscroll-behavior:contain}@media(min-width:500px){.itemgrid{grid-template-columns:repeat(3,1fr)}}@media(min-width:720px){.itemgrid{grid-template-columns:repeat(4,1fr)}}.itemcard{position:relative;display:flex;align-items:center;gap:var(--s2);min-block-size:48px;padding:var(--s2) var(--s2) var(--s2) var(--s3);background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:var(--r-sm);box-shadow:none;text-align:start;font-weight:400;transition:background var(--fast) var(--ease),border-color var(--fast) var(--ease)}.itemcard:hover:not(:disabled){background:var(--brand-soft);border-color:var(--brand);box-shadow:none}.itemcard:active:not(:disabled){transform:scale(.97)}.itemcard .nm{flex:1;min-width:0;font-size:var(--t-sm);font-weight:600;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.itemcard .stk{display:block;font-size:11px;font-weight:600;margin-block-start:1px;font-variant-numeric:tabular-nums}.itemcard .stk .uu{font-weight:500;opacity:.8}.itemcard .stk.ok{color:var(--text-faint)}.itemcard .stk.low{color:var(--warn)}.itemcard .stk.out{color:var(--danger)}.itemcard .stk.never{color:var(--text-faint);font-weight:500;opacity:.8}.itemcard .expchip{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;margin-block-start:2px;padding:1px 6px;border-radius:999px;color:var(--warn);background:var(--warn-soft);font-variant-numeric:tabular-nums}.itemcard .expchip.urgent{color:var(--danger);background:var(--danger-soft)}.itemcard .pk{flex:0 0 auto;font-size:11px;font-weight:700;padding:1px 5px;border-radius:var(--r-full);background:var(--surface-sunken);color:var(--text-faint)}.itemcard .mark{flex:0 0 auto;color:var(--border-strong)}.itemcard:hover:not(:disabled) .mark{color:var(--brand)}.itemcard.picked{background:var(--ok-soft);border-color:var(--ok);opacity:1}.itemcard.picked .nm,.itemcard.picked .mark{color:var(--ok)}.itemcard.picked .pk{background:var(--surface)}.cattabs{position:sticky;inset-block-start:0;z-index:2;background:var(--surface);padding-block:var(--s1)}.statgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);margin-block-end:var(--s4)}.stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:var(--s3) var(--s2);min-block-size:72px;background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:var(--r-md);box-shadow:none}.stat .v{font-size:var(--t-xl);font-weight:700;line-height:1.1}.stat .k{font-size:var(--t-xs);color:var(--text-faint);font-weight:600}button.stat:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}button.stat.on{border-color:var(--brand);background:var(--brand-soft)}button.stat.on .v,button.stat.on .k{color:var(--brand)}.stat.warn .v{color:var(--warn)}.stat.danger .v{color:var(--danger)}button.stat.warn.on{border-color:var(--warn);background:var(--warn-soft)}button.stat.warn.on .v,button.stat.warn.on .k{color:var(--warn)}.stock-item{border-block-end:1px solid var(--border)}.stock-item:last-child{border-block-end:none}.stock-head{inline-size:100%;display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);min-block-size:var(--tap);background:var(--surface);color:var(--text);border:none;border-radius:0;box-shadow:none;font-weight:400;text-align:start}.stock-head:hover:not(:disabled){background:var(--surface-sunken);box-shadow:none}.stock-head:active:not(:disabled){transform:none;background:var(--surface-sunken)}.stock-head b{display:block;font-size:var(--t-base);font-weight:700}.stock-head .sub{font-size:var(--t-xs);color:var(--text-faint)}.stock-head svg{transition:transform var(--fast) var(--ease)}.stock-head .cover{display:inline-flex;align-items:center;gap:3px;margin-block-start:3px;font-size:var(--t-xs);font-weight:700}.stock-head .cover.ok{color:var(--ok)}.stock-head .cover.warn{color:var(--warn)}.stock-head .cover.danger{color:var(--danger)}.stock-head .cover .faint{font-weight:500}.qty-block{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.qty-block .qty{font-size:var(--t-lg);font-weight:700;line-height:1.15}.qty-block .qty.ok{color:var(--text)}.qty-block .qty.low{color:var(--warn)}.qty-block .qty.out{color:var(--danger)}.meter{block-size:3px;margin-inline:var(--s4);margin-block-end:var(--s3);background:var(--surface-sunken);border-radius:var(--r-full);overflow:hidden}.meter .fill{display:block;block-size:100%;border-radius:var(--r-full);transition:inline-size var(--base) var(--ease)}.meter .fill.ok{background:var(--ok)}.meter .fill.low{background:var(--warn)}.meter .fill.out{background:var(--danger)}.stock-places{padding:0 var(--s4) var(--s3);display:flex;flex-direction:column;gap:var(--s2)}.stock-places .place{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) var(--s3);background:var(--surface-sunken);border-radius:var(--r-sm);font-size:var(--t-sm)}.stock-places .place.bad{background:var(--danger-soft);color:var(--danger);font-weight:700}.qty-block .qty.negative{color:var(--danger)}.meter .fill.negative{background:var(--danger)}.branchbar{display:flex;flex-direction:column;gap:var(--s2)}.branchbar .brow{display:flex;align-items:center;gap:var(--s3);padding:var(--s2) 0}.branchbar .bname{inline-size:34%;font-size:var(--t-sm);font-weight:600}.branchbar .btrack{flex:1;block-size:8px;border-radius:var(--r-full);background:var(--surface-sunken);overflow:hidden}.branchbar .bfill{display:block;block-size:100%;border-radius:var(--r-full);background:var(--brand);transition:inline-size var(--base) var(--ease)}.branchbar .bval{font-size:var(--t-sm);font-weight:700;min-inline-size:4.5ch;text-align:end}.search-wrap,.search-field{position:relative}.search-field svg.lead-icon{position:absolute;inset-inline-start:var(--s3);inset-block-start:50%;transform:translateY(-50%);inline-size:20px;block-size:20px;color:var(--text-faint);pointer-events:none}.search-field input{padding-inline-start:calc(var(--s3) * 2 + 20px)}.results{position:absolute;inset-inline:0;inset-block-start:calc(100% + var(--s2));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);max-block-size:320px;overflow-y:auto;z-index:var(--z-pop);box-shadow:var(--shadow-3);-webkit-overflow-scrolling:touch}.results .head{padding:var(--s2) var(--s4);font-size:var(--t-xs);color:var(--text-faint);font-weight:700;background:var(--surface-sunken)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-pop) - 1)}.chips{display:flex;flex-wrap:wrap;gap:var(--s2)}.chips button{min-block-size:44px;padding:var(--s2) var(--s3);background:var(--surface-sunken);color:var(--text);border:1.5px solid var(--border);border-radius:var(--r-full);font-size:var(--t-sm);font-weight:600}.chips button:hover:not(:disabled){background:var(--brand-soft);border-color:var(--brand);color:var(--brand)}.chips button:disabled{opacity:.4}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table{inline-size:100%;border-collapse:collapse;font-size:var(--t-sm)}th,td{padding:var(--s3) var(--s2);text-align:start;border-block-end:1px solid var(--border)}th{color:var(--text-faint);font-weight:700;font-size:var(--t-xs);text-transform:none}td.num,th.num{text-align:end;font-variant-numeric:tabular-nums}tbody tr:last-child td{border-block-end:none}.auth-wrap{min-block-size:100dvh;display:grid;place-items:center;padding:var(--s5);background:radial-gradient(90% 60% at 15% 0%,var(--brand-soft) 0%,transparent 55%),radial-gradient(80% 50% at 90% 15%,var(--gold-soft) 0%,transparent 50%),var(--bg)}.auth-card{inline-size:100%;max-inline-size:420px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s6);box-shadow:var(--shadow-3);animation:rise var(--slow) var(--spring) backwards}.auth-brand{text-align:center;margin-block-end:var(--s6)}.auth-brand .mark{inline-size:66px;block-size:66px;border-radius:var(--r-lg);background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 85%,#fff),var(--brand));color:#fff;display:grid;place-items:center;margin:0 auto var(--s3);font-size:var(--t-xl);font-weight:700;box-shadow:0 8px 20px var(--brand-glow)}.auth-brand h1{font-size:var(--t-lg);font-weight:700}.auth-brand p{margin:var(--s1) 0 0;color:var(--text-faint);font-size:var(--t-sm)}.cols-2{display:grid;gap:var(--s3);grid-template-columns:1fr}@media(min-width:560px){.cols-2{grid-template-columns:1fr 1fr}}@media(min-width:900px){.bottomnav{inset-block:0 auto;inset-inline-start:0;inset-inline-end:auto;flex-direction:column;justify-content:flex-start;inline-size:108px;block-size:100dvh;padding-block-start:var(--s6);gap:var(--s1);border-block-start:none;border-inline-end:1px solid var(--border)}.bottomnav a{flex:0 0 auto;block-size:auto;min-block-size:72px}.app-shell{padding-inline-start:108px}.actionbar{inset-inline-start:108px;inset-block-end:0;padding-block-end:calc(var(--s3) + env(safe-area-inset-bottom))}.toast{inset-inline-start:calc(108px + var(--s4))}.has-bottomnav{padding-block-end:var(--s7)}.has-actionbar{padding-block-end:calc(var(--tap) + var(--s8))}}
