@import"https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;600;700&family=Fraunces:wght@600;700&display=swap";.invoice-template{background:#fff;color:#000;font-family:Times New Roman,Times,serif;font-size:14px;line-height:1.5;padding:24px;max-width:800px;margin:0 auto;border:1px solid #ccc}.invoice-template.print-mode{border:none;padding:0}.invoice-header{text-align:center;margin-bottom:16px;padding-bottom:16px;border-bottom:2px double #000}.invoice-title{font-size:22px;font-weight:700;text-transform:uppercase;letter-spacing:2px}.invoice-subtitle{font-size:13px;font-style:italic;margin-top:4px}.invoice-meta{text-align:center;margin-bottom:16px}.invoice-meta .meta-row{display:flex;justify-content:center;gap:48px;font-size:14px}.invoice-section{margin-bottom:12px;padding-bottom:12px;border-bottom:1px dashed #999}.info-row{display:flex;gap:8px;margin-bottom:4px}.info-row .label{min-width:150px;color:#333}.info-row .value{flex:1}.invoice-table{width:100%;border-collapse:collapse;margin:16px 0;font-size:13px}.invoice-table th,.invoice-table td{border:1px solid #000;padding:8px;text-align:center}.invoice-table th{background:#f5f5f5;font-weight:700}.invoice-table .col-stt{width:40px}.invoice-table .col-name{text-align:left;min-width:180px}.invoice-table .col-unit,.invoice-table .col-qty{width:60px}.invoice-table .col-price{width:100px;text-align:right}.invoice-table .col-amount{width:120px;text-align:right}.invoice-table td.col-price,.invoice-table td.col-amount{text-align:right}.item-note{font-size:11px;font-style:italic;color:#666}.invoice-summary{margin:16px 0}.summary-row{display:flex;justify-content:flex-end;gap:24px;padding:4px 0}.summary-label{text-align:right;min-width:200px}.summary-value{min-width:120px;text-align:right;font-weight:600}.summary-row.total{font-size:16px;font-weight:700;border-top:1px solid #000;padding-top:8px;margin-top:8px}.summary-row.total .summary-value{color:#c00}.invoice-amount-words{background:#f9f9f9;padding:12px;margin:16px 0;border:1px dashed #999;font-style:italic}.invoice-amount-words .label{font-weight:700;margin-right:8px}.invoice-signatures{display:flex;justify-content:space-around;margin:32px 0 16px;gap:24px}.signature-box{text-align:center;flex:1}.signature-title{font-weight:700;margin-bottom:4px}.signature-hint{font-size:12px;font-style:italic;color:#666}.signature-space{height:80px}.invoice-date{text-align:center;margin:16px 0;font-style:italic}.invoice-footer{text-align:center;margin-top:24px;padding-top:16px;border-top:1px solid #ccc;font-size:11px;color:#666}@media print{.invoice-template{border:none;padding:0;font-size:12px}.invoice-header{margin-bottom:12px;padding-bottom:12px}.invoice-title{font-size:18px}.invoice-table{font-size:11px}.invoice-table th,.invoice-table td{padding:6px}.invoice-signatures{margin:24px 0}.signature-space{height:60px}.invoice-footer{display:none}}:root{color-scheme:light;--color-primary: #fcd34d;--color-primary-strong: #f59e0b;--color-accent: #b45309;--color-bg: #fffbeb;--color-surface: #ffffff;--color-text: #451a03;--color-muted: #92400e;--color-border: #fde68a;--color-success: #15803d;--color-danger: #b91c1c;--shadow-soft: 0 8px 20px rgba(69, 26, 3, .06);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 8px;--container-width: 1280px;--font-body: "Be Vietnam Pro", "Segoe UI", sans-serif;--font-display: "Fraunces", "Be Vietnam Pro", serif}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:var(--font-body);background-color:#fffbeb;background-image:url(/images/paper-texture.png);background-size:400px;background-repeat:repeat;color:var(--color-text)}#root{min-height:100vh}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}button,input,select,textarea{font-family:inherit}.container{width:min(100%,var(--container-width));margin:0 auto;padding:16px}.page{padding-bottom:32px}.section-title{margin:24px 0 16px;font-size:1.25rem;font-weight:700;font-family:var(--font-display);position:relative;display:inline-block}.grid{display:grid;gap:16px}.grid.menu{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid.orders{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.order-grid{display:grid;gap:24px;grid-template-columns:1fr 380px;align-items:start}.order-panel{position:sticky;top:88px}.card{transition:transform .2s,box-shadow .2s}.card.hover-effect:hover{transform:translateY(-4px);box-shadow:0 12px 24px -8px #00000026}.badge-stack{display:flex;gap:6px;flex-wrap:wrap}.header{background:#ffffffe6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:10;box-shadow:0 4px 6px -4px #0000000d}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-family:var(--font-display);font-size:1.1rem}.brand-mark{width:36px;height:36px;border-radius:50%;background:var(--color-primary);border:2px solid white;box-shadow:0 2px 4px #0000001a;display:grid;place-items:center;color:#5c2b00}.nav{display:flex;gap:8px;flex-wrap:wrap;font-size:.92rem}.nav a{padding:8px 16px;border-radius:999px;display:inline-flex;align-items:center;background:transparent;font-weight:600;transition:all .2s;color:var(--color-text-muted)}.nav a.active{background:var(--color-primary-light);color:var(--color-primary-strong)}.banner{background:linear-gradient(135deg,#fcd34d,#fffbeb);border-radius:24px;padding:32px 24px;display:grid;gap:8px;margin-bottom:32px;text-align:center;border:1px solid var(--color-border);box-shadow:0 8px 32px -8px #fcd34d66}.banner-title{font-size:1.8rem;font-weight:800;font-family:var(--font-display);color:#451a03}.banner-sub{color:#92400e;font-size:1.05rem;max-width:400px;margin:0 auto}.tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{padding:8px 20px;border-radius:999px;border:1px solid var(--color-border);background:#fff;font-weight:600;color:var(--color-text-muted);cursor:pointer;white-space:nowrap;transition:all .2s}.tab:hover{border-color:var(--color-primary);color:var(--color-primary-strong)}.tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#451a03;box-shadow:0 2px 8px #fbbf2466}.receipt{background:#fff;padding:16px;border:1px solid var(--color-border);position:relative;box-shadow:0 4px 12px #0000000d}.receipt:before{content:"";position:absolute;top:-5px;left:0;width:100%;height:5px;background:radial-gradient(circle,transparent 4px,white 4px) -4px -5px;background-size:16px 16px}.receipt:after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:5px;background:radial-gradient(circle,transparent 4px,white 4px) -4px 5px;background-size:16px 16px}.footer-note{margin-top:20px;font-size:.85rem;color:var(--color-muted);text-align:center}@media(max-width:900px){.header-inner{flex-direction:column;align-items:flex-start}.nav{width:100%;margin-top:8px}.order-grid{grid-template-columns:1fr}.order-panel{position:static}}.button{border:none;padding:10px 16px;border-radius:999px;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.button.primary{background:var(--color-primary);color:var(--color-text);box-shadow:var(--shadow-soft)}.button.outline{background:transparent;border:1px solid var(--color-border);color:var(--color-text)}.button.ghost{background:transparent;color:var(--color-text)}.button.danger{background:#f7d2c7;color:#7b2a1a}.button:active{transform:translateY(1px)}.button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:14px;box-shadow:var(--shadow-soft)}.card.compact{padding:10px;box-shadow:none}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:600;background:#f8ebc9;color:#5c4527}.badge.accent{background:#f1d4b6;color:#7b4a26}.badge.success{background:#d8edd9;color:#2f7d32}.badge.danger{background:#f7d2c7;color:#7b2a1a}.input{width:100%;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface)}.input:focus{outline:2px solid #f7e4b5}.field{display:grid;gap:6px}.field label{font-size:.85rem;color:var(--color-muted)}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tab{border-radius:999px;padding:6px 12px;border:1px solid transparent;background:#fff3d4;cursor:pointer;font-weight:600}.tab.active{border-color:var(--color-border);background:var(--color-primary)}.toast-stack{position:fixed;right:16px;bottom:16px;display:grid;gap:10px;z-index:50}.toast{background:var(--color-surface);border:1px solid var(--color-border);padding:10px 14px;border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);min-width:220px}.toast.success{border-color:#b8e0bb}.toast.error{border-color:#f2b8aa}.kitchen-status{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600}.status-pill{padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:700}.status-new{background:#f8ebc9;color:#5c4527}.status-doing{background:#ffe2b8;color:#7a4b12}.status-done{background:#d8edd9;color:#2f7d32}.quantity{display:flex;align-items:center;gap:8px}.quantity button{width:28px;height:28px;border-radius:8px;border:1px solid var(--color-border);background:#fff7e4}.quantity button:disabled{opacity:.5;cursor:not-allowed}.muted{color:var(--color-muted)}.list{display:grid;gap:12px}.inline-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.nav-badge{margin-left:6px;background:var(--color-accent);color:#fff8ef;padding:2px 6px;border-radius:999px;font-size:.75rem;font-weight:700}.helper{font-size:.8rem;color:var(--color-muted)}.summary-card{margin:12px 0 16px}
