:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f3ee;--panel:#fffdf8;--ink:#20231f;--muted:#68706a;--line:#e3ddd2;--green:#147a66;--green-dark:#0e5f51;--red:#cf514c;--amber:#c99519;--blue:#405d9b;--shadow:0 18px 50px #2822181f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans TC,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 14px;font-weight:800;display:inline-flex}input,select,textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;outline:none;width:100%;min-height:48px;padding:10px 12px}textarea{resize:vertical;min-height:104px}.store-kicker{color:var(--green);letter-spacing:.03em;text-transform:uppercase;font-size:13px;font-weight:900;display:inline-flex}.customer-shell{max-width:920px;min-height:100dvh;margin:0 auto;padding:14px 14px 96px}.customer-top{justify-content:space-between;align-items:flex-start;gap:16px;padding:10px 0 14px;display:flex}.customer-top h1{letter-spacing:0;margin:6px 0 8px;font-size:clamp(30px,8vw,46px);line-height:1}.customer-top p{color:var(--muted);max-width:560px;margin:0;line-height:1.45}.table-badge{background:var(--ink);color:#fff;text-align:center;border-radius:8px;min-width:86px;padding:10px 12px}.table-badge span,.table-badge strong{display:block}.table-badge span{color:#c8d8d3;font-size:12px}.table-badge strong{margin-top:2px;font-size:22px}.closed-banner{color:#8f2f2b;background:#fff0ee;border:1px solid #f0c4c0;border-radius:8px;margin-bottom:12px;padding:12px;font-weight:900}.quick-order-panel{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:10px;margin-bottom:12px;display:grid}.assistant-card{color:#fff;text-align:left;white-space:normal;background:linear-gradient(135deg,#147a66f2,#405d9bf2),#147a66;justify-items:start;gap:4px;min-height:92px;padding:14px;display:grid}.assistant-card span{opacity:.86}.assistant-card strong{font-size:18px}.assistant-card small{opacity:.78;font-weight:800}.search-box{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:0 12px;display:grid}.search-box input{border:0;padding-left:0}.category-tabs{gap:8px;margin:0 -14px 12px;padding:0 14px 2px;display:flex;overflow-x:auto}.category-tabs button{border-color:var(--line);color:var(--ink);background:#fff;flex:none}.category-tabs button.active{background:var(--green);color:#fff}.menu-list{gap:12px;display:grid}.product-dish-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:112px minmax(0,1fr) 54px;align-items:stretch;gap:12px;min-height:138px;padding:10px;display:grid;box-shadow:0 10px 32px #2822180f}.product-dish-card img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:112px;height:112px}.product-dish-card h2{letter-spacing:0;margin:4px 0 6px;font-size:20px;line-height:1.2}.product-dish-card p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.product-dish-card span{color:var(--green);font-size:13px;font-weight:900}.dish-meta{flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:10px;display:flex}.dish-meta strong{font-size:22px}.dish-meta small{color:var(--muted)}.product-dish-card>button{aspect-ratio:1;background:var(--green);color:#fff;align-self:center;width:48px;min-height:48px;padding:0}.cart-bar{box-shadow:var(--shadow);color:#fff;opacity:.55;z-index:40;background:#1f211d;border:0;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;min-height:62px;display:grid;position:fixed;bottom:14px;left:14px;right:14px}.cart-bar.active{background:var(--green);opacity:1}.modal-layer{z-index:60;background:#1916116b;place-items:end center;display:grid;position:fixed;inset:0}.cart-sheet,.assistant-sheet{background:var(--panel);box-shadow:var(--shadow);border-radius:8px 8px 0 0;gap:16px;width:100%;max-width:720px;max-height:88dvh;padding:18px;display:grid;overflow:auto}.assistant-header{justify-content:space-between;align-items:start;gap:14px;display:flex}.assistant-header p{color:var(--muted);margin:0;line-height:1.45}.cart-sheet header{justify-content:space-between;align-items:center;display:flex}.cart-sheet h2,.assistant-sheet h2,.section-header h1{letter-spacing:0;margin:4px 0;font-size:30px;line-height:1.1}.text-button{border-color:var(--line);color:var(--ink);background:#fff}.cart-items{gap:10px;display:grid}.cart-items article{border:1px solid var(--line);background:#f7faf7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.cart-items span{color:var(--muted);margin-top:4px;display:block}.qty-stepper{grid-template-columns:48px 28px 48px;place-items:center;gap:8px;display:grid}.qty-stepper button{aspect-ratio:1;border-color:var(--line);color:var(--ink);background:#fff;width:48px;padding:0}.order-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.order-fields label,.settings-card label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.primary-action{background:var(--green);color:#fff;width:100%;min-height:56px}.primary-action:hover,.product-dish-card>button:hover{background:var(--green-dark)}.primary-action:disabled{opacity:.5}.form-error{color:#8f2f2b;background:#fff0ee;border:1px solid #f0c4c0;border-radius:8px;margin:0;padding:10px 12px}.voice-control-row{grid-template-columns:minmax(0,1fr) 132px;gap:10px;display:grid}.voice-button{background:var(--green);color:#fff;min-height:56px}.voice-button.listening{background:var(--red)}.voice-status-line{color:#245b4d;background:#eef8f4;border:1px solid #cce4dc;border-radius:8px;align-items:center;gap:8px;margin:0;padding:10px 12px;font-size:14px;font-weight:800;line-height:1.35;display:flex}.assistant-messages{gap:8px;max-height:220px;padding-right:2px;display:grid;overflow:auto}.assistant-message{border-radius:8px;max-width:88%;padding:10px 12px;line-height:1.45}.assistant-message.assistant{background:#f0f7f4;border:1px solid #d4e8e1;justify-self:start}.assistant-message.guest{color:#fff;background:#1f211d;justify-self:end}.assistant-message.system{color:#71500b;background:#fff7e5;border:1px solid #f1dbab;justify-self:center}.assistant-recommendation{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;display:grid}.assistant-recommendation span{color:var(--muted);margin-top:3px;font-size:14px;display:block}.assistant-recommendation button{background:var(--green);color:#fff}.assistant-input{grid-template-columns:minmax(0,1fr) 118px;gap:10px;display:grid}.assistant-input button{background:var(--ink);color:#fff}.assistant-input button:disabled{opacity:.52}.preset-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.preset-grid button{border-color:var(--line);color:var(--ink);white-space:normal;background:#fff;min-height:74px}.success-screen,.login-screen,.merchant-loading{text-align:center;place-items:center;min-height:100dvh;padding:20px;display:grid}.success-screen h1,.login-screen h1{margin:8px 0;font-size:38px}.success-screen p,.login-screen p{color:var(--muted);max-width:440px;margin:0;line-height:1.5}.success-screen section{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;width:100%;max-width:440px;margin:18px 0;padding:18px;display:grid}.success-screen section strong{color:var(--green);font-size:34px}.success-screen section span{color:var(--muted)}.success-screen>button{background:var(--green);color:#fff;min-width:180px}.login-screen form{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:14px;width:100%;max-width:420px;padding:28px;display:grid}.merchant-shell{grid-template-columns:260px minmax(0,1fr);min-height:100dvh;display:grid}.merchant-sidebar{color:#fff;background:#16231e;grid-template-rows:auto 1fr auto;gap:20px;padding:20px 16px;display:grid}.merchant-brand{align-items:center;gap:12px;display:flex}.merchant-brand strong,.merchant-brand span{display:block}.merchant-brand span{color:#aac4bb;font-size:13px}.merchant-sidebar nav{align-content:start;gap:8px;display:grid}.merchant-sidebar button{color:#e8f4f0;background:0 0;border-color:#ffffff1f;justify-content:flex-start}.merchant-sidebar button.active,.merchant-sidebar button:hover{background:#28433b}.logout-button{justify-self:stretch}.merchant-main{min-width:0;padding:22px}.merchant-section{gap:18px;display:grid}.section-header{justify-content:space-between;align-items:end;display:flex}.section-header p{color:var(--muted);margin:0}.order-lanes{grid-template-columns:repeat(5,minmax(180px,1fr));align-items:start;gap:14px;padding-bottom:6px;display:grid;overflow-x:auto}.order-lane{border:1px solid var(--line);background:#f8f5ee;border-radius:8px;gap:10px;min-height:520px;padding:12px;display:grid}.order-lane h2{margin:0;font-size:16px}.merchant-ticket,.menu-row,.rule-row,.settings-card,.metric-grid.product article{border:1px solid var(--line);background:#fff;border-radius:8px;box-shadow:0 8px 24px #2822180f}.merchant-ticket{gap:10px;padding:12px;display:grid}.merchant-ticket header{justify-content:space-between;align-items:start;gap:12px;display:flex}.merchant-ticket span,.merchant-ticket li,.rule-row span,.rule-row small,.menu-row span,.menu-row small{color:var(--muted)}.merchant-ticket ul{gap:5px;margin:0;padding-left:18px;display:grid}.ticket-actions{flex-wrap:wrap;gap:8px;display:flex}.ticket-actions button{background:var(--green);color:#fff;min-height:44px;padding:0 10px}.merchant-toolbar{max-width:420px}.merchant-list{gap:12px;display:grid}.menu-row{grid-template-columns:72px minmax(0,1fr) 118px;align-items:center;gap:14px;padding:12px;display:grid}.menu-row img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:72px}.menu-row strong,.menu-row span,.menu-row small,.rule-row strong,.rule-row span,.rule-row small{display:block}.menu-row button.available{background:var(--green);color:#fff}.menu-row button.sold-out{color:#8f2f2b;background:#fff0ee;border-color:#f0c4c0}.rule-row{justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.settings-card{gap:14px;max-width:760px;padding:16px;display:grid}.toggle-row{justify-content:space-between;align-items:center;display:flex!important}.toggle-row span{gap:4px;display:grid}.toggle-row input{accent-color:var(--green);width:26px;height:26px;min-height:26px}.metric-grid.product{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-grid.product article{gap:10px;min-height:120px;padding:16px;display:grid}.metric-grid.product span{color:var(--muted);font-weight:900}.metric-grid.product strong{font-size:30px}code{border:1px solid var(--line);overflow-wrap:anywhere;text-align:left;background:#f8f5ee;border-radius:8px;padding:12px;display:block}@media (width<=900px){.merchant-shell{grid-template-columns:1fr}.merchant-sidebar{z-index:30;grid-template-rows:auto auto;gap:12px;padding:12px;display:grid;position:sticky;top:0}.merchant-sidebar nav{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.merchant-sidebar nav button{justify-content:center;padding:0 6px;font-size:13px}.logout-button{display:none}.merchant-main{padding:14px}.order-lanes{grid-template-columns:repeat(5,270px)}.metric-grid.product{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.customer-shell{padding:12px 12px 92px}.customer-top{align-items:stretch}.customer-top p{font-size:14px}.quick-order-panel,.order-fields,.preset-grid,.voice-control-row,.assistant-input{grid-template-columns:1fr}.assistant-header{display:grid}.assistant-message{max-width:96%}.product-dish-card{grid-template-columns:96px minmax(0,1fr) 48px;min-height:124px}.product-dish-card img{width:96px;height:96px}.product-dish-card h2{font-size:18px}.product-dish-card p{-webkit-line-clamp:2;font-size:14px}.cart-items article{grid-template-columns:1fr}.qty-stepper{justify-self:stretch}.merchant-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.menu-row{grid-template-columns:62px minmax(0,1fr)}.menu-row button{grid-column:1/-1}.metric-grid.product{grid-template-columns:1fr}}
