@charset "UTF-8";.toast-center-center{top:50%;left:50%;transform:translate(-50%,-50%)}.toast-top-center{top:0;right:0;width:100%}.toast-bottom-center{bottom:0;right:0;width:100%}.toast-top-full-width{top:0;right:0;width:100%}.toast-bottom-full-width{bottom:0;right:0;width:100%}.toast-top-left{top:12px;left:12px}.toast-top-right{top:12px;right:12px}.toast-bottom-right{right:12px;bottom:12px}.toast-bottom-left{bottom:12px;left:12px}.toast-title{font-weight:700}.toast-message{word-wrap:break-word}.toast-message a,.toast-message label{color:#fff}.toast-message a:hover{color:#ccc;text-decoration:none}.toast-close-button{position:relative;right:-.3em;top:-.3em;float:right;font-size:20px;font-weight:700;color:#fff;text-shadow:0 1px 0 #ffffff}.toast-close-button:hover,.toast-close-button:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4}button.toast-close-button{padding:0;cursor:pointer;background:transparent;border:0}.toast-container{pointer-events:none;position:fixed;z-index:999999}.toast-container *{box-sizing:border-box}.toast-container .ngx-toastr{position:relative;overflow:hidden;margin:0 0 6px;padding:15px 15px 15px 50px;width:300px;border-radius:3px;background-position:15px center;background-repeat:no-repeat;background-size:24px;box-shadow:0 0 12px #999;color:#fff}.toast-container .ngx-toastr:hover{box-shadow:0 0 12px #000;opacity:1;cursor:pointer}.toast-info{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOS4wNDMgOCA4IDExOS4wODMgOCAyNTZjMCAxMzYuOTk3IDExMS4wNDMgMjQ4IDI0OCAyNDhzMjQ4LTExMS4wMDMgMjQ4LTI0OEM1MDQgMTE5LjA4MyAzOTIuOTU3IDggMjU2IDh6bTAgMTEwYzIzLjE5NiAwIDQyIDE4LjgwNCA0MiA0MnMtMTguODA0IDQyLTQyIDQyLTQyLTE4LjgwNC00Mi00MiAxOC44MDQtNDIgNDItNDJ6bTU2IDI1NGMwIDYuNjI3LTUuMzczIDEyLTEyIDEyaC04OGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMjRjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxMnYtNjRoLTEyYy02LjYyNyAwLTEyLTUuMzczLTEyLTEydi0yNGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDY0YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MTAwaDEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjR6Jy8+PC9zdmc+)}.toast-error{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOSA4IDggMTE5IDggMjU2czExMSAyNDggMjQ4IDI0OCAyNDgtMTExIDI0OC0yNDhTMzkzIDggMjU2IDh6bTEyMS42IDMxMy4xYzQuNyA0LjcgNC43IDEyLjMgMCAxN0wzMzggMzc3LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwyNTYgMzEybC02NS4xIDY1LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwxMzQuNCAzMzhjLTQuNy00LjctNC43LTEyLjMgMC0xN2w2NS42LTY1LTY1LjYtNjUuMWMtNC43LTQuNy00LjctMTIuMyAwLTE3bDM5LjYtMzkuNmM0LjctNC43IDEyLjMtNC43IDE3IDBsNjUgNjUuNyA2NS4xLTY1LjZjNC43LTQuNyAxMi4zLTQuNyAxNyAwbDM5LjYgMzkuNmM0LjcgNC43IDQuNyAxMi4zIDAgMTdMMzEyIDI1Nmw2NS42IDY1LjF6Jy8+PC9zdmc+)}.toast-success{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTE3My44OTggNDM5LjQwNGwtMTY2LjQtMTY2LjRjLTkuOTk3LTkuOTk3LTkuOTk3LTI2LjIwNiAwLTM2LjIwNGwzNi4yMDMtMzYuMjA0YzkuOTk3LTkuOTk4IDI2LjIwNy05Ljk5OCAzNi4yMDQgMEwxOTIgMzEyLjY5IDQzMi4wOTUgNzIuNTk2YzkuOTk3LTkuOTk3IDI2LjIwNy05Ljk5NyAzNi4yMDQgMGwzNi4yMDMgMzYuMjA0YzkuOTk3IDkuOTk3IDkuOTk3IDI2LjIwNiAwIDM2LjIwNGwtMjk0LjQgMjk0LjQwMWMtOS45OTggOS45OTctMjYuMjA3IDkuOTk3LTM2LjIwNC0uMDAxeicvPjwvc3ZnPg==)}.toast-warning{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NzYgNTEyJyB3aWR0aD0nNTc2JyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTU2OS41MTcgNDQwLjAxM0M1ODcuOTc1IDQ3Mi4wMDcgNTY0LjgwNiA1MTIgNTI3Ljk0IDUxMkg0OC4wNTRjLTM2LjkzNyAwLTU5Ljk5OS00MC4wNTUtNDEuNTc3LTcxLjk4N0wyNDYuNDIzIDIzLjk4NWMxOC40NjctMzIuMDA5IDY0LjcyLTMxLjk1MSA4My4xNTQgMGwyMzkuOTQgNDE2LjAyOHpNMjg4IDM1NGMtMjUuNDA1IDAtNDYgMjAuNTk1LTQ2IDQ2czIwLjU5NSA0NiA0NiA0NiA0Ni0yMC41OTUgNDYtNDYtMjAuNTk1LTQ2LTQ2LTQ2em0tNDMuNjczLTE2NS4zNDZsNy40MTggMTM2Yy4zNDcgNi4zNjQgNS42MDkgMTEuMzQ2IDExLjk4MiAxMS4zNDZoNDguNTQ2YzYuMzczIDAgMTEuNjM1LTQuOTgyIDExLjk4Mi0xMS4zNDZsNy40MTgtMTM2Yy4zNzUtNi44NzQtNS4wOTgtMTIuNjU0LTExLjk4Mi0xMi42NTRoLTYzLjM4M2MtNi44ODQgMC0xMi4zNTYgNS43OC0xMS45ODEgMTIuNjU0eicvPjwvc3ZnPg==)}.toast-container.toast-top-center .ngx-toastr,.toast-container.toast-bottom-center .ngx-toastr{width:300px;margin-left:auto;margin-right:auto}.toast-container.toast-top-full-width .ngx-toastr,.toast-container.toast-bottom-full-width .ngx-toastr{width:96%;margin-left:auto;margin-right:auto}.ngx-toastr{background-color:#030303;pointer-events:auto}.toast-success{background-color:#51a351}.toast-error{background-color:#bd362f}.toast-info{background-color:#2f96b4}.toast-warning{background-color:#f89406}.toast-progress{position:absolute;left:0;bottom:0;height:4px;background-color:#000;opacity:.4}@media all and (max-width:240px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:11em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width:241px)and (max-width:480px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:18em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width:481px)and (max-width:768px){.toast-container .ngx-toastr.div{padding:15px 15px 15px 50px;width:25em}}:root{--primary: #ff6b6b;--primary-hover: #ff4c4c;--primary-contrast: #ffffff;--secondary: #4ecdc4;--secondary-hover: #34bfb5;--secondary-contrast: #ffffff;--accent: #ffe66d;--accent-contrast: #1f2937;--bg: #f7f9fb;--surface: #ffffff;--surface-2: #f2f6fb;--text: #1f2937;--muted: #6b7280;--border: rgba(31, 41, 55, .1);--border-strong: rgba(31, 41, 55, .16);--success: #34d399;--success-contrast: #0b3b2a;--warning: #fbbf24;--warning-contrast: #4a2b00;--danger: #f87171;--danger-contrast: #4b0d0d;--info: #60a5fa;--info-contrast: #0b254a;--radius: 18px;--radius-sm: 12px;--radius-lg: 22px;--shadow-sm: 0 6px 16px rgba(17, 24, 39, .08);--shadow: 0 10px 28px rgba(17, 24, 39, .1);--shadow-md: 0 16px 44px rgba(17, 24, 39, .14);--transition: .18s ease-in-out;--space-1: 6px;--space-2: 10px;--space-3: 14px;--space-4: 18px;--focus-ring: 0 0 0 4px rgba(255, 107, 107, .18)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,Noto Sans,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}small{color:var(--muted)}::selection{background:#ff6b6b38}.container{max-width:980px;margin:0 auto;padding:16px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card.pad{padding:14px}.h1{font-size:18px;font-weight:900;letter-spacing:-.01em}.h2{font-size:14px;font-weight:800;letter-spacing:-.01em}.muted{color:var(--muted)}.error{color:var(--danger)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 14px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;font-weight:800;transition:transform .12s ease,opacity .12s ease,box-shadow var(--transition),background var(--transition),border-color var(--transition)}.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.btn:active{transform:translateY(0);box-shadow:none}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn-full{width:100%;padding:12px 14px}.btn-primary{background:var(--primary);border-color:#ff6b6b8c;color:var(--primary-contrast)}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--secondary);border-color:#4ecdc499;color:var(--secondary-contrast)}.btn-secondary:hover{background:var(--secondary-hover)}.btn-danger{background:var(--danger);border-color:#f87171a6;color:#fff}.btn-danger:hover{filter:brightness(.96)}.btn-ghost{background:transparent;border-color:transparent}.btn-ghost:hover{background:#1f29370f;border-color:#1f293714}.btn-icon{width:42px;height:42px;padding:0;border-radius:999px}.input,.textarea,.select{width:100%;padding:11px 12px;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);outline:none;transition:box-shadow var(--transition),border-color var(--transition),background var(--transition)}.textarea{resize:vertical;min-height:90px}.input::placeholder,.textarea::placeholder{color:#6b7280bf}.input:focus,.textarea:focus,.select:focus{border-color:#ff6b6b8c;box-shadow:var(--focus-ring)}.field{display:grid;gap:6px;margin-bottom:12px}.label{font-size:12px;font-weight:900;color:#1f2937d1;letter-spacing:.01em}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:900;border:1px solid var(--border);background:var(--surface)}.pill-success{border-color:#34d39959;background:#34d39924;color:var(--success-contrast)}.pill-warning{border-color:#fbbf2459;background:#fbbf2429;color:var(--warning-contrast)}.pill-danger{border-color:#f8717159;background:#f8717124;color:var(--danger-contrast)}.pill-info{border-color:#60a5fa59;background:#60a5fa24;color:var(--info-contrast)}.list{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--shadow-sm)}.list-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid rgba(31,41,55,.08)}.list-row:last-child{border-bottom:0}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.restaurant-card{border-radius:var(--radius-lg);overflow:hidden;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:transform .14s ease,box-shadow var(--transition)}.restaurant-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.restaurant-card img{width:100%;height:160px;object-fit:cover}.restaurant-card-content{padding:12px}.restaurant-name{font-weight:900;font-size:16px;letter-spacing:-.01em}.restaurant-meta{font-size:13px;color:var(--muted)}.btn:focus-visible,.input:focus-visible,.textarea:focus-visible,.select:focus-visible{outline:none;box-shadow:var(--focus-ring)}.dark-mode{--bg: #0b1220;--surface: #111a2b;--surface-2: #0f172a;--text: #eef2ff;--muted: rgba(238, 242, 255, .68);--border: rgba(238, 242, 255, .1);--border-strong: rgba(238, 242, 255, .16);--shadow-sm: 0 8px 22px rgba(0, 0, 0, .35);--shadow: 0 12px 32px rgba(0, 0, 0, .45);--shadow-md: 0 18px 54px rgba(0, 0, 0, .55);--focus-ring: 0 0 0 4px rgba(78, 205, 196, .22)}.page{padding:16px 16px 84px;background:transparent}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}.brand{display:flex;align-items:center;gap:10px;min-width:0}.brand .logo{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-weight:900;border:1px solid var(--border);background:radial-gradient(120% 120% at 20% 20%,#ff6b6b33,#4ecdc429 55%,#ffe66d2e),var(--surface);color:var(--text);-webkit-user-select:none;user-select:none}.brand .title{font-weight:900;font-size:16px;letter-spacing:-.01em;line-height:1.1}.brand .subtitle{font-size:12px;color:var(--muted);line-height:1.1;margin-top:2px}.actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.actions .btn{border-radius:999px;padding:10px 12px}.search{margin-top:12px}.search .search-box{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);box-shadow:var(--shadow-sm)}.search .search-icon{width:18px;height:18px;opacity:.7}.search .search-input{border:0;outline:0;width:100%;background:transparent;color:var(--text);font-weight:700}.search .search-input::placeholder{color:#6b7280bf;font-weight:700}.filters{margin-top:12px;display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}.filters::-webkit-scrollbar{height:6px}.filters::-webkit-scrollbar-thumb{background:#1f29371f;border-radius:999px}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:8px 12px;font-weight:900;font-size:12px;white-space:nowrap;cursor:pointer;transition:background var(--transition),border-color var(--transition),transform .12s ease}.chip:active{transform:scale(.98)}.chip-active{border-color:#ff6b6b59;background:#ff6b6b1f;color:var(--text)}.content{margin-top:14px}.section-title{font-weight:900;margin:14px 0 10px;letter-spacing:-.01em}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.card{text-align:left;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);padding:14px;cursor:pointer;box-shadow:var(--shadow-sm);transition:transform .14s ease,box-shadow var(--transition),border-color var(--transition)}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.card:active{transform:translateY(0) scale(.99);box-shadow:var(--shadow-sm)}.card .card-title{font-weight:900;margin-bottom:6px;letter-spacing:-.01em}.card .card-subtitle{color:var(--muted);font-size:13px;margin-bottom:10px}.card .card-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.card .card-cta{display:inline-flex;align-items:center;gap:8px;font-weight:900;font-size:13px;color:var(--primary)}.card .card-cta .dot{width:6px;height:6px;border-radius:999px;background:var(--primary);opacity:.8}.empty{margin-top:14px;padding:16px;border-radius:var(--radius);background:var(--surface);border:1px dashed rgba(31,41,55,.18);color:var(--muted);box-shadow:var(--shadow-sm)}.empty .empty-title{font-weight:900;color:var(--text);margin-bottom:6px}.empty .empty-subtitle{font-size:13px;line-height:1.35}@media(max-width:420px){.topbar{padding:10px 12px}.brand .title{font-size:15px}.grid{grid-template-columns:1fr}}.page{padding:16px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.actions{display:flex;gap:8px;flex-wrap:wrap}.content{display:grid;gap:12px}.list-row{align-items:flex-start}.left{display:grid;gap:4px}.right{display:grid;gap:8px;justify-items:end}.qty{display:inline-flex;align-items:center;gap:6px}.qty-n{min-width:20px;text-align:center;font-weight:800}.line-total{font-weight:900}.totals .row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}
