:root{color-scheme:light;--background:#f5f7fa;--surface:#ffffff;--surface-muted:#eef2f7;--text:#18202b;--muted:#64748b;--line:#d9e0ea;--accent:#0f766e;--accent-strong:#115e59;--warning:#b45309;--shadow:0 18px 50px rgba(15,23,42,0.08)}*{box-sizing:border-box}body,html{min-height:100%;margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--background);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif;letter-spacing:0;min-height:100dvh}a{color:inherit}button,input,select,textarea{font:inherit;font-size:16px}a,button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}.auth-shell,.home-shell{min-height:100vh;padding:32px}.home-hero,.home-shell{display:grid;align-items:center}.home-hero{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr);grid-gap:32px;gap:32px;width:min(1180px,100%);margin:0 auto}.hero-copy{max-width:640px}.eyebrow{margin:0 0 12px;color:var(--accent);font-size:.8rem;font-weight:700;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:20px;font-size:clamp(2.5rem,5vw,5.2rem);line-height:.95}.hero-subtitle,.muted{color:var(--muted);font-size:1.08rem;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.auth-panel button,.primary-link,.secondary-link{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:0 18px;border:1px solid var(--line);border-radius:8px;text-decoration:none}.primary-link{background:var(--accent);border-color:var(--accent);color:white}.primary-link:hover{background:var(--accent-strong)}.secondary-link{background:var(--surface)}.area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.area-card,.auth-panel,.dashboard-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.area-card{min-height:116px;display:grid;place-items:center;padding:20px;color:var(--muted);font-weight:700}.auth-shell{display:grid;place-items:center}.auth-panel{width:min(440px,100%);padding:32px}.auth-form{display:grid;grid-gap:10px;gap:10px;margin:28px 0}.auth-form label{color:var(--muted);font-size:.9rem;font-weight:700}.auth-form input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:0 14px;background:white}.auth-panel button{background:var(--accent);color:white;border-color:var(--accent);cursor:pointer}.auth-panel button:disabled{cursor:not-allowed;opacity:.65}.workspace-shell{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:100vh}.workspace-sidebar{background:#101a25;color:white;padding:calc(24px + env(safe-area-inset-top)) 24px 24px}.workspace-brand{display:block;margin-bottom:30px;font-size:1rem;font-weight:800}.workspace-nav{display:grid;grid-gap:8px;gap:8px}.workspace-nav a{min-height:42px;display:flex;align-items:center;padding:0 12px;border-radius:8px;color:#cbd5e1;text-decoration:none}.workspace-nav a:hover{background:rgba(255,255,255,.08);color:white}.workspace-content{padding:calc(28px + env(safe-area-inset-top)) max(28px,env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(28px,env(safe-area-inset-left))}.dashboard{width:min(1120px,100%)}.dashboard-header{margin-bottom:24px}.dashboard-header h1{max-width:720px;margin-bottom:0;font-size:clamp(2rem,4vw,3.6rem);line-height:1}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.dashboard-card{min-height:180px;padding:22px}.dashboard-card h2{margin-bottom:10px;font-size:1.2rem}.dashboard-card p{margin-bottom:0;color:var(--muted)}.form-error{margin:0;color:#b91c1c;font-size:.95rem}.staff-page{width:min(1120px,calc(100% - 32px));margin:0 auto;padding:32px 0 64px}.staff-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.staff-header h1{margin-bottom:0;font-size:clamp(2rem,4vw,3.4rem)}.staff-form{display:grid;grid-template-columns:minmax(220px,1fr) 200px auto;grid-gap:12px;gap:12px;align-items:end;padding:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.staff-form label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:.9rem;font-weight:700}.staff-form input,.staff-form select,.staff-table select{min-height:42px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:white}.staff-actions button,.staff-form button,.staff-invitations button{min-height:42px;border:1px solid var(--line);border-radius:8px;padding:0 14px;background:var(--accent);color:white;cursor:pointer}.staff-actions button:disabled,.staff-form button:disabled,.staff-invitations button:disabled{cursor:not-allowed;opacity:.65}.staff-section{margin-top:28px}.staff-section h2{margin-bottom:12px;font-size:1.25rem}.staff-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.staff-table{width:100%;min-width:720px;border-collapse:collapse}.staff-table td,.staff-table th{padding:14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.staff-table tbody tr:last-child td{border-bottom:0}.staff-table td:first-child{display:grid;grid-gap:4px;gap:4px}.staff-invitations span,.staff-table td:first-child span{color:var(--muted);font-size:.88rem}.staff-actions{display:flex;flex-wrap:wrap;gap:8px}.staff-invitations{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.staff-invitations li{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.staff-invitations li div{display:grid;grid-gap:4px;gap:4px}@media (max-width:760px){.staff-header,.staff-invitations li{align-items:stretch;flex-direction:column}.staff-form{grid-template-columns:1fr}}.workspace-userbar{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.user-actions{display:flex;flex-wrap:wrap;gap:10px}.tenant-selector button,.workspace-userbar button{min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer}.session-strip{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:16px;margin-bottom:18px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.tenant-selector{display:grid;grid-gap:10px;gap:10px;margin-bottom:18px}.tenant-selector button{justify-content:space-between;display:flex;min-width:260px}.tenant-selector button span{color:var(--muted)}.plain-action,.record-card button,.work-tabs button{min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer}.work-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.work-tabs .active{background:var(--accent);color:white;border-color:var(--accent)}.work-section{display:grid;grid-gap:16px;gap:16px}.work-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:10px;gap:10px;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.work-form input,.work-form select,.work-form textarea{width:100%;min-height:40px;border:1px solid var(--line);border-radius:8px;padding:0 12px;background:white}.work-form textarea{min-height:110px;padding:10px 12px;resize:vertical}.tool-result{max-width:100%;overflow-x:auto;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.summary-strip{display:flex;flex-wrap:wrap;gap:10px}.summary-strip span{padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.record-list,.task-list-section{display:grid;grid-gap:10px;gap:10px}.record-card,.task-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.record-card span,.task-row span{color:var(--muted)}.task-list-section h2{margin-bottom:8px}@media (max-width:900px){.home-hero{grid-template-columns:1fr}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-shell{grid-template-columns:1fr}.workspace-sidebar{position:-webkit-sticky;position:sticky;top:0;z-index:10;padding:16px}.workspace-brand{margin-bottom:12px}.workspace-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.record-card,.task-row,.workspace-userbar{align-items:stretch;flex-direction:column}}@media (max-width:640px){.auth-shell,.home-shell,.workspace-content{padding:18px}.area-grid,.dashboard-grid,.workspace-nav{grid-template-columns:1fr}h1{font-size:2.6rem}}.public-shell{width:min(760px,100%);min-height:100dvh;margin:0 auto;padding:calc(24px + env(safe-area-inset-top)) calc(18px + env(safe-area-inset-right)) calc(120px + env(safe-area-inset-bottom)) calc(18px + env(safe-area-inset-left))}.public-header{padding:18px 0 24px}.public-confirmation h1,.public-header h1{margin-bottom:8px;font-size:clamp(2.1rem,10vw,3.8rem)}.public-lead{color:var(--muted);font-size:1.08rem}.public-order-form{display:grid;grid-gap:14px;gap:14px}.public-card,.public-confirmation,.qr-preview,.restaurant-admin-row,.restaurant-order-card{background:var(--surface);border:1px solid var(--line);border-radius:8px}.public-card{display:grid;grid-gap:14px;gap:14px;padding:16px}.public-card h2,.restaurant-ops h2{margin-bottom:0;font-size:1.25rem}.public-card label,.restaurant-admin label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:.9rem;font-weight:700}.public-card input,.public-card select,.public-card textarea,.restaurant-admin select{width:100%;min-height:48px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--text);font:inherit}.public-card textarea{min-height:92px;padding:10px 12px}.segmented-control{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-gap:6px;gap:6px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--surface-muted)}.segmented-control button{min-height:44px;border:0;border-radius:6px;background:transparent;color:var(--muted);font-weight:800}.segmented-control button.active{background:white;color:var(--accent-strong);box-shadow:0 2px 8px rgba(15,23,42,.08)}.public-item-list{display:grid;grid-gap:12px;gap:12px}.public-item{display:grid;grid-gap:10px;gap:10px;padding:14px;border:1px solid var(--line);border-radius:8px;background:#fbfdff}.item-index{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--accent);color:white;font-weight:900}.item-footer,.restaurant-filter-grid,.restaurant-ops-header,.section-heading,.two-columns{display:flex;gap:10px;align-items:center;justify-content:space-between}.restaurant-filter-grid>label,.two-columns>label{flex:1 1}.danger-action,.inline-action,.small-action,.touch-button{min-height:48px;padding:0 16px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--text);font:inherit;font-weight:800}.touch-button.primary{background:var(--accent);border-color:var(--accent);color:white}.danger-action:disabled,.small-action:disabled,.touch-button:disabled{cursor:not-allowed;opacity:.55}.small-action{min-height:40px;padding:0 12px}.danger-action{color:#991b1b}.inline-action{min-height:36px;padding:0 10px;font-size:.85rem}.public-error{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:12px;background:#fff1f2;color:#991b1b}.public-error,.public-error button{border:1px solid #fecaca;border-radius:8px}.public-error button{min-height:40px;background:white;color:inherit;font:inherit}.public-confirmation{margin-top:10vh;padding:28px}.public-code{display:inline-flex;min-height:58px;align-items:center;margin:12px 0 18px;padding:0 20px;border-radius:8px;background:#0f172a;color:white;font-size:1.7rem;font-weight:900;letter-spacing:0}.public-status{color:var(--accent-strong);font-weight:800}.restaurant-ops{display:grid;grid-gap:18px;gap:18px;width:min(1180px,100%)}.restaurant-ops-header{align-items:flex-start}.restaurant-filter-input{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:.9rem;font-weight:700}.restaurant-filter-input input{width:100%;min-height:48px;padding:0 12px;border:1px solid var(--line);border-radius:8px;background:white;color:var(--text);font:inherit}.restaurant-mode-tabs{position:-webkit-sticky;position:sticky;top:calc(8px + env(safe-area-inset-top));z-index:5}.restaurant-order-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:14px;gap:14px}.restaurant-order-card{display:grid;grid-gap:14px;gap:14px;padding:16px}.restaurant-table-badge{display:grid;grid-gap:2px;gap:2px;padding:14px;border-radius:8px;background:#0f172a;color:white}.restaurant-table-badge span{font-size:1.55rem;font-weight:900}.restaurant-table-badge small{color:#cbd5e1;font-size:.9rem}.restaurant-order-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:.88rem}.restaurant-items{display:grid;grid-gap:10px;gap:10px;margin:0;padding:0;list-style:none}.restaurant-items li{display:grid;grid-gap:4px;gap:4px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fbfdff}.order-note,.restaurant-items em,.restaurant-items span{color:var(--muted);font-size:.9rem}.restaurant-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:8px;gap:8px}.restaurant-empty,.restaurant-loading{padding:28px;border:1px dashed var(--line);border-radius:8px;background:var(--surface)}.restaurant-admin{display:grid;grid-gap:14px;gap:14px}.restaurant-filter-grid{align-items:end;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.restaurant-table-list{display:grid;grid-gap:10px;gap:10px}.restaurant-admin-row{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:14px}.restaurant-admin-row>div:first-child{display:grid;grid-gap:4px;gap:4px}.restaurant-admin-row span{color:var(--muted)}.qr-preview{display:grid;grid-gap:8px;gap:8px;padding:16px}.qr-preview code{overflow-wrap:anywhere;padding:12px;border-radius:8px;background:#0f172a;color:white;font-size:.75rem}@media (max-width:720px){.workspace-content{padding:calc(16px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left))}.restaurant-order-grid{grid-template-columns:1fr}.restaurant-admin-row,.restaurant-filter-grid,.restaurant-ops-header{align-items:stretch;flex-direction:column}.restaurant-mode-tabs{position:static}.two-columns{flex-direction:column}.two-columns>label{width:100%}}