:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f3ee;--surface:#fff;--surface-sunken:#ebe8e1;--border:#dcd8ce;--border-input:#8a867b;--text:#111;--text-muted:#5a5750;--ink:#111;--on-ink:#fff;--chrome:#111;--on-chrome:#fff;--on-chrome-muted:#8a8a90;--on-chrome-soft:#bdbdc2;--on-ink-muted:#d9d9d9;--accent-text:#2f7d32;--danger:#c5221f;--on-danger:#fff;--warning-bg:#fff4e0;--warning-text:#8a4b00;--qr-ink:#000;--qr-bg:#fff;--scrim:#11111173;--selection:#ddf56b99;--tile-lime:#ddf56b;--tile-lavender:#c9c2ff;--tile-orange:#ff7a45;--tile-pink:#f5c6dc;--tile-sky:#a9d3f5;--tile-yellow:#f7e86a;--tile-green:#6fc6a0;--on-tile:#111;--on-tile-gain:#0a5c2f;--on-tile-loss:#9c0f0a;--on-tile-muted:#6b6590;--on-tile-loss-muted:#a84a52;--bar-muted:#918d82;--char-ground:#111;--gauge-cost:#cfcbc0;--gauge-fees:#ffb547;--gauge-discount:#77736a;--app-lineman:#06c755;--app-grab:#00b14f;--app-shopeefood:#ee4d2d;--app-robinhood:#6d28d9;--grad-photo-scrim:linear-gradient(180deg, transparent 0%, #0000008c 35%, #000000bf 100%);--shadow-card:0 4px 14px #11111114;--shadow-sheet:0 -8px 32px #11111129;--shadow-raised:0 4px 12px #11111140;--font-sans:"Noto Sans Thai", system-ui, -apple-system, sans-serif;--font-num:"Inter Tight", "Noto Sans Thai", system-ui, sans-serif;--fs-xs:12px;--lh-xs:16px;--fw-xs:500;--fs-sm:14px;--lh-sm:20px;--fw-sm:400;--fs-base:16px;--lh-base:24px;--fw-base:400;--fs-lg:20px;--lh-lg:28px;--fw-lg:600;--fs-xl:28px;--lh-xl:34px;--fw-xl:700;--fs-display:40px;--lh-display:44px;--fw-display:700;--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-sheet:24px;--radius-pill:999px;--motion-fast:.12s;--motion-base:.2s;--ease:cubic-bezier(.2,.8,.2,1);--tap-min:44px;--field-height:48px;--dot-size:10px;--dish-min-height:112px;--nav-height:64px;--tablet-breakpoint:900px;--cart-pane-width:380px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e0e10;--surface:#1b1b20;--surface-sunken:#25252b;--border:#2e2e35;--border-input:#7c7c86;--text:#f3f3f3;--text-muted:#a6a6ad;--ink:#f3f3f3;--on-ink:#111;--chrome:#1b1b20;--on-chrome:#f3f3f3;--on-chrome-muted:#8a8a90;--on-chrome-soft:#bdbdc2;--on-ink-muted:#3a3a3a;--accent-text:#9be38a;--danger:#ff6b5e;--on-danger:#111;--warning-bg:#3a2a10;--warning-text:#ffc46b;--qr-ink:#000;--qr-bg:#fff;--scrim:#0009;--selection:#ddf56b4d;--tile-lime:#ddf56b;--tile-lavender:#c9c2ff;--tile-orange:#ff7a45;--tile-pink:#f5c6dc;--tile-sky:#a9d3f5;--tile-yellow:#f7e86a;--tile-green:#6fc6a0;--on-tile:#111;--on-tile-gain:#0a5c2f;--on-tile-loss:#9c0f0a;--on-tile-muted:#6b6590;--on-tile-loss-muted:#a84a52;--bar-muted:#6f6f79;--char-ground:#111;--gauge-cost:#5a5a64;--gauge-fees:#ffb547;--gauge-discount:#8a8a94;--app-lineman:#06c755;--app-grab:#00b14f;--app-shopeefood:#ee4d2d;--app-robinhood:#9061f9;--grad-photo-scrim:linear-gradient(180deg, transparent 0%, #0000008c 35%, #000000bf 100%);--shadow-card:0 0 0 1px #2e2e35, 0 4px 14px #0006;--shadow-sheet:0 0 0 1px #2e2e35, 0 -8px 32px #0000008c;--shadow-raised:0 4px 12px #00000080}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0e0e10;--surface:#1b1b20;--surface-sunken:#25252b;--border:#2e2e35;--border-input:#7c7c86;--text:#f3f3f3;--text-muted:#a6a6ad;--ink:#f3f3f3;--on-ink:#111;--chrome:#1b1b20;--on-chrome:#f3f3f3;--on-chrome-muted:#8a8a90;--on-chrome-soft:#bdbdc2;--on-ink-muted:#3a3a3a;--accent-text:#9be38a;--danger:#ff6b5e;--on-danger:#111;--warning-bg:#3a2a10;--warning-text:#ffc46b;--qr-ink:#000;--qr-bg:#fff;--scrim:#0009;--selection:#ddf56b4d;--tile-lime:#ddf56b;--tile-lavender:#c9c2ff;--tile-orange:#ff7a45;--tile-pink:#f5c6dc;--tile-sky:#a9d3f5;--tile-yellow:#f7e86a;--tile-green:#6fc6a0;--on-tile:#111;--on-tile-gain:#0a5c2f;--on-tile-loss:#9c0f0a;--on-tile-muted:#6b6590;--on-tile-loss-muted:#a84a52;--bar-muted:#6f6f79;--char-ground:#111;--gauge-cost:#5a5a64;--gauge-fees:#ffb547;--gauge-discount:#8a8a94;--app-lineman:#06c755;--app-grab:#00b14f;--app-shopeefood:#ee4d2d;--app-robinhood:#9061f9;--grad-photo-scrim:linear-gradient(180deg, transparent 0%, #0000008c 35%, #000000bf 100%);--shadow-card:0 0 0 1px #2e2e35, 0 4px 14px #0006;--shadow-sheet:0 0 0 1px #2e2e35, 0 -8px 32px #0000008c;--shadow-raised:0 4px 12px #00000080}:root{font-family:var(--font-sans);font-size:var(--fs-base);color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;accent-color:var(--accent-text);caret-color:var(--accent-text);-webkit-tap-highlight-color:transparent;line-height:1.5}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{-webkit-tap-highlight-color:transparent}::selection{background:var(--selection)}.num{font-family:var(--font-num);font-variant-numeric:tabular-nums;letter-spacing:-.02em}:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.on-ink :focus-visible{outline-color:var(--on-ink)}button{min-height:var(--tap-min);padding:0 var(--space-4);border:1px solid var(--border-input);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}button:disabled,[aria-disabled=true]{opacity:.5;cursor:not-allowed}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-property:color,background-color,border-color,opacity!important;animation:none!important}}.money{white-space:nowrap;align-items:baseline;gap:1px;display:inline-flex}.money .baht{color:var(--text-muted);font-size:.8em;font-family:var(--font-num)}.money .num{font-weight:700}.money-sm{font-size:var(--fs-sm);line-height:var(--lh-sm)}.money-base{font-size:var(--fs-base);line-height:var(--lh-base)}.money-lg{font-size:var(--fs-lg);line-height:var(--lh-lg)}.money-xl{font-size:var(--fs-xl);line-height:var(--lh-xl)}.money-display{font-size:var(--fs-display);line-height:var(--lh-display)}.money.profit{color:var(--accent-text)}.money.loss{color:var(--danger)}.money.loss .baht{color:inherit}.on-ink .money .baht{color:var(--on-ink-muted)}.on-ink .money.profit{color:var(--on-ink)}.on-ink .money.profit .baht{color:inherit}.chip{min-height:var(--tap-min);padding:0 var(--space-4);border-radius:var(--radius-pill);align-items:center;gap:var(--space-2);color:var(--ink);border:1.5px solid var(--ink);font-size:var(--fs-sm);cursor:pointer;transition:transform var(--motion-fast) var(--ease), background-color var(--motion-fast) var(--ease);background:0 0;flex:none;font-weight:600;display:inline-flex}.chip:active{transform:scale(.97)}.chip[aria-pressed=true]{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}.chip-count{font-size:var(--fs-xs);color:inherit;opacity:.75}.chip-row{gap:var(--space-2);scrollbar-width:none;overscroll-behavior-x:contain;margin:0 calc(-1 * var(--space-4));padding:0 var(--space-4);-webkit-mask-image:linear-gradient(to right, transparent, currentColor var(--space-4), currentColor calc(100% - var(--space-5)), transparent);-webkit-mask-image:linear-gradient(to right, transparent, currentColor var(--space-4), currentColor calc(100% - var(--space-5)), transparent);mask-image:linear-gradient(to right, transparent, currentColor var(--space-4), currentColor calc(100% - var(--space-5)), transparent);display:flex;overflow-x:auto}.chip-row::-webkit-scrollbar{display:none}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.segmented{padding:var(--space-1);gap:var(--space-1);background:var(--surface-sunken);border-radius:var(--radius-pill);max-width:100%;display:inline-flex}.segmented-option{min-height:var(--tap-min);padding:0 var(--space-4);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer;transition:background-color var(--motion-fast) var(--ease), transform var(--motion-fast) var(--ease);background:0 0;border:0;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.segmented-option:active{transform:scale(.97)}.segmented-label,.segmented-note{display:block}.segmented-note{font-size:var(--fs-xs);line-height:var(--lh-xs);color:var(--text-muted);font-weight:500}.segmented-option[aria-checked=true] .segmented-note{color:var(--on-ink-muted)}.segmented-option[aria-checked=true]{background:var(--ink);color:var(--on-ink);font-weight:700}.row{align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap-min);padding:var(--space-2) var(--space-4);background:var(--surface);text-align:left;color:var(--text);font-size:var(--fs-base);border:0;border-radius:24px;text-decoration:none;display:flex}.row+.row{margin-top:var(--space-2)}.row-action{cursor:pointer}.row-action:active{background:var(--surface-sunken)}.row-icon{color:var(--text-muted);flex:none;display:inline-flex}.row-label{flex:1;min-width:0}.row-value{color:var(--text-muted);font-size:var(--fs-sm)}.row-text{flex:1;gap:2px;min-width:0;display:grid}.row-sub{color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-sm);overflow-wrap:anywhere}.row-chevron{color:var(--text-muted);flex:none}.skeleton{gap:var(--space-3);display:grid}.skeleton-line{height:var(--space-5);border-radius:var(--radius-sm);background:var(--surface-sunken);animation:skeleton-pulse 1.2s var(--ease) infinite alternate}.skeleton-line:last-child{width:60%}@keyframes skeleton-pulse{0%{opacity:1}to{opacity:.5}}.sheet{--drag:0px;background:var(--surface);width:100%;max-width:720px;max-height:90dvh;color:var(--text);box-shadow:var(--shadow-sheet);overscroll-behavior:contain;transform:translateY(var(--drag));border:0;border-radius:30px 30px 0 0;margin:auto auto 0;padding:0;overflow:hidden}.sheet[open]{animation:sheet-in var(--motion-base) var(--ease);display:flex}.sheet::backdrop{background:var(--scrim)}.sheet[open]::backdrop{animation:backdrop-in var(--motion-base) var(--ease)}.sheet.is-closing{z-index:20;pointer-events:none;animation:none;position:fixed;inset:0}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.sheet-body{flex-direction:column;width:100%;min-height:0;display:flex}.sheet-handle-zone{padding:var(--space-3) 0 var(--space-1);touch-action:none;cursor:grab;justify-content:center;display:flex}.sheet-handle{border-radius:var(--radius-pill);background:var(--border-input);width:36px;height:4px}.sheet-header{padding:0 var(--space-2) 0 var(--space-4);justify-content:space-between;align-items:center;display:flex}.sheet-title{margin:var(--space-4) 0 var(--space-2);font-size:var(--fs-lg);line-height:var(--lh-lg);font-weight:var(--fw-lg)}.sheet-close{width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-pill);color:var(--text-muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.sheet-close:active{background:var(--surface-sunken)}.sheet-content{overscroll-behavior:contain;min-height:0;padding:var(--space-3) var(--space-4) var(--space-4);flex:1;overflow-y:auto}.sheet-note{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--ink);color:var(--on-ink);font-size:var(--fs-sm);font-weight:600}.confirm-dialog .sheet-note{margin:0}.sheet-footer{padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--surface);flex:none}.spinner{border-radius:var(--radius-pill);border:2px solid;border-right-color:#0000;flex:none;width:1em;height:1em;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.reorder{gap:var(--space-3);min-width:0;display:grid}.reorder-hint{color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-sm)}.reorder-list{background:var(--surface);border-radius:24px;margin:0;padding:0;list-style:none}.reorder-row{grid-template-columns:var(--tap-min) minmax(0, 1fr) auto;align-items:center;gap:var(--space-2);min-height:56px;padding-right:var(--space-2);background:var(--surface);transition:box-shadow var(--motion-fast) var(--ease);border-radius:24px;display:grid}.reorder-row+.reorder-row{border-top:1px solid var(--border);border-top-left-radius:0;border-top-right-radius:0}.reorder-row.is-dragging{z-index:1;box-shadow:var(--shadow-sheet);position:relative}.reorder-handle{width:var(--tap-min);height:56px;color:var(--text-muted);touch-action:none;cursor:grab;justify-content:center;align-items:center;display:flex}.reorder-row.is-dragging .reorder-handle{cursor:grabbing;color:var(--text)}.reorder-handle.is-fixed{cursor:default;touch-action:auto}.reorder-row.is-fixed .reorder-body{color:var(--text-muted)}.reorder-body{overflow-wrap:anywhere;min-width:0}.reorder-steps{gap:var(--space-1);display:flex}.reorder-step{width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-pill);background:var(--surface-sunken);min-height:0;color:var(--text);cursor:pointer;transition:transform var(--motion-fast) var(--ease);border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.reorder-step:active{transform:scale(.94)}.reorder-error{color:var(--danger);font-size:var(--fs-sm);line-height:var(--lh-sm);font-weight:600}.reorder-actions{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.reorder-save{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--ink);min-height:56px;color:var(--on-ink);font-size:var(--fs-base);cursor:pointer;transition:transform var(--motion-fast) var(--ease);border:0;font-weight:700;display:inline-flex}.reorder-save:active{transform:scale(.97)}.reorder-cancel{min-height:56px;padding:0 var(--space-5);border-radius:var(--radius-md);color:var(--text);font-size:var(--fs-base);cursor:pointer;background:0 0;border:0;font-weight:600}.reorder-cancel:active{background:var(--surface-sunken)}.field{min-width:0;margin:0}.field label{margin-bottom:var(--space-1);color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-sm);padding:0;font-weight:600;display:block}.input-row{align-items:center;gap:var(--space-2);min-width:0;display:flex}.field input:not([type=checkbox],[type=radio]){width:100%;min-width:0;min-height:var(--field-height);padding:0 var(--space-3);border:1px solid var(--border-input);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:var(--fs-base)}.input-row input{flex:1}.field input[inputmode]{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:600}.field input[aria-invalid=true]{border-color:var(--danger)}.suffix{color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-sm);flex:none}.field input:focus-visible:not([type=checkbox],[type=radio]){outline:2px solid var(--accent-text);outline-offset:2px}.muted{margin:var(--space-1) 0 var(--space-2);color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-sm)}.error{margin:var(--space-1) 0 0;color:var(--danger);font-size:var(--fs-sm);line-height:var(--lh-sm)}.pbadge{border-radius:var(--radius-sm);min-width:28px;height:28px;font-family:var(--font-num);font-size:var(--fs-xs);line-height:var(--lh-xs);flex:none;justify-content:center;align-items:center;padding:0 6px;font-weight:700;display:inline-flex}.app-loading{max-width:720px;padding:var(--space-4);margin:0 auto}.switch-track{border-radius:var(--radius-pill);background:var(--border-input);width:52px;height:32px;transition:background-color var(--motion-fast) var(--ease);flex:none;position:relative}.switch-knob{border-radius:var(--radius-pill);background:var(--surface);width:26px;height:26px;box-shadow:var(--shadow-card);transition:transform var(--motion-base) var(--ease);position:absolute;top:3px;left:3px}[role=switch][aria-checked=true] .switch-track{background:var(--accent-text)}[role=switch][aria-checked=true] .switch-knob{transform:translate(20px)}.confirm-dialog{width:min(92vw,420px);padding:var(--space-5);background:var(--surface);color:var(--text);box-shadow:var(--shadow-sheet);border:0;border-radius:28px}.confirm-dialog::backdrop{background:var(--scrim)}.confirm-dialog[open]{gap:var(--space-3);animation:confirm-in var(--motion-base) var(--ease);display:grid}@keyframes confirm-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.confirm-title{font-size:var(--fs-lg);line-height:var(--lh-lg);font-weight:var(--fw-lg);overflow-wrap:anywhere;margin:0}.confirm-text{color:var(--text-muted);font-size:var(--fs-sm);line-height:var(--lh-sm)}.confirm-actions{gap:var(--space-2);margin-top:var(--space-2);display:grid}.confirm-yes{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-pill);background:var(--danger);min-height:64px;color:var(--on-danger);font-size:var(--fs-base);cursor:pointer;border:0;font-weight:700;display:inline-flex}.confirm-yes.is-ink{background:var(--ink);color:var(--on-ink)}.confirm-no{min-height:var(--tap-min);border-radius:var(--radius-pill);color:var(--text);font-size:var(--fs-base);cursor:pointer;background:0 0;border:0;font-weight:600}.confirm-no:active{background:var(--surface-sunken)}@media (prefers-reduced-motion:reduce){.confirm-dialog[open],.sheet::backdrop,.sheet[open]::backdrop{animation:none}.switch-knob{transition:none}}.keypad{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.keypad-key{background:var(--surface-sunken);min-height:56px;color:var(--text);font-size:var(--fs-xl);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;transition:transform var(--motion-fast) var(--ease), background-color var(--motion-fast) var(--ease);border:0;border-radius:20px;justify-content:center;align-items:center;padding:0;font-weight:600;display:inline-flex}.keypad-key:active{background:var(--border-input);transform:scale(.97)}.keypad-del{color:var(--text-muted)}.keypad-gap{min-height:56px}.qr{max-width:100%;height:auto;display:block}.qr-bg{fill:var(--qr-bg)}.qr-ink{fill:var(--qr-ink)}@media (prefers-reduced-motion:reduce){.keypad-key:active{transform:none}}.char{width:100%;height:100%;display:block}.history-lock{align-items:center;column-gap:var(--space-2);min-width:0;color:var(--text-muted);font-size:var(--fs-sm);flex-wrap:wrap;display:flex}.history-lock-icon{flex:none}.history-lock-text{overflow-wrap:anywhere;flex:0 auto;min-width:0;margin:0}.history-lock .plan-link{padding:0 var(--space-2)}
