:root{color:#1c1914;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg:#f3efe6;--surface:#fffdf8;--ink:#1c1914;--muted:#6b6458;--line:#ddd4c4;--hot:#c45c26;--event:#2f6f6a;--warn:#8a5a00;--warn-bg:#fff1cc;--warn-border:#e0b84d;--error:#8b1e1e;--error-bg:#fde8e8;--info-bg:#e7f3ef;--shadow:0 10px 30px #1c191414;background:#f3efe6;font-family:Segoe UI,Trebuchet MS,sans-serif;line-height:1.4}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(circle at top left, #c45c2614, transparent 28%), radial-gradient(circle at top right, #2f6f6a14, transparent 24%), var(--bg);color:var(--ink);margin:0}button,input{font:inherit}h1,h2,p{margin:0}.muted{color:var(--muted)}.eyebrow{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin:0 0 .35rem;font-size:.75rem;font-weight:700}.screen-center,.login-page{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.login-card,.order-card,.empty-state{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:1.25rem}.login-card{gap:.9rem;width:min(100%,420px);padding:1.75rem;display:grid}.login-card h1,.kitchen-header h1{letter-spacing:-.03em;font-size:clamp(1.8rem,3vw,2.4rem)}.login-card label{gap:.4rem;display:grid}.login-card label span{font-size:.92rem;font-weight:600}.login-card input{border:1px solid var(--line);background:#fff;border-radius:.9rem;width:100%;padding:.85rem 1rem}.btn{cursor:pointer;border:0;border-radius:999px;padding:.8rem 1.15rem;font-weight:700}.btn:disabled{opacity:.6;cursor:wait}.btn-primary{background:var(--ink);color:#fffdf8}.btn-secondary{color:var(--ink);background:#efe7d8}.btn-ghost{color:var(--muted);background:0 0}.alert{border-radius:1rem;padding:.9rem 1rem;font-weight:600}.alert-error{background:var(--error-bg);color:var(--error)}.alert-warning{background:var(--warn-bg);color:var(--warn);border:1px solid var(--warn-border)}.alert-info{background:var(--info-bg);color:var(--event)}.kitchen-page{gap:1.25rem;width:min(1200px,100% - 2rem);margin:0 auto;padding:1.5rem 0 3rem;display:grid}.kitchen-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.header-actions,.filters{flex-wrap:wrap;gap:.6rem;display:flex}.filter-chip{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;align-items:center;gap:.5rem;padding:.7rem 1rem;font-weight:700;display:inline-flex}.filter-chip span{background:#efe7d8;border-radius:999px;min-width:1.5rem;padding:.1rem .45rem;font-size:.85rem}.filter-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fffdf8}.filter-chip.is-active span{background:#fffdf82e}.summary-warning{font-size:1.05rem}.orders-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;display:grid}.order-card{gap:1rem;padding:1.2rem;display:grid}.order-card-warning{border-color:var(--warn-border);box-shadow:0 0 0 2px #e0b84d40, var(--shadow)}.order-card-header{justify-content:space-between;gap:1rem;display:flex}.order-card-header h2{margin-top:.35rem;font-size:1.35rem;line-height:1.25}.order-card-meta{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.order-contact,.order-card-side{color:var(--muted);margin-top:.35rem;font-size:.95rem}.kind-badge{letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-items:center;padding:.25rem .65rem;font-size:.8rem;font-weight:800;display:inline-flex}.kind-badge-hot{color:var(--hot);background:#c45c261f}.kind-badge-event{color:var(--event);background:#2f6f6a1f}.stock-badge{border-radius:999px;align-items:center;padding:.25rem .65rem;font-size:.8rem;font-weight:800;display:inline-flex}.stock-badge-ok{color:var(--event);background:#2f6f6a24}.stock-badge-shortage,.stock-badge-no_recipe,.stock-badge-unknown,.stock-badge-no_products{background:var(--warn-bg);color:var(--warn)}.shortage-list{margin:.5rem 0 0;padding-left:1.1rem}.app-nav{flex-wrap:wrap;gap:.55rem;display:flex}.nav-chip{color:var(--ink);border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:.65rem 1rem;font-weight:700;text-decoration:none}.nav-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fffdf8}.toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.search-input,.select-input{border:1px solid var(--line);background:#fff;border-radius:.9rem;min-width:min(100%,280px);padding:.8rem 1rem}.select-input{min-width:180px}.checkbox-label{color:var(--muted);align-items:center;gap:.45rem;font-weight:600;display:inline-flex}.stats-row{color:var(--muted);flex-wrap:wrap;gap:.75rem 1.1rem;font-weight:600;display:flex}.table-wrap{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1.1rem;overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:720px}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.85rem 1rem}.data-table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:#f7f1e6;font-size:.85rem}.data-table tr:last-child td{border-bottom:0}.mono{color:var(--muted);word-break:break-all;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}.amount-cell{font-size:1.05rem;font-weight:800}.amount-cell.deficit,.row-shortage td{color:var(--warn)}.row-empty td{color:var(--muted)}.store-chips{flex-wrap:wrap;gap:.35rem;display:flex}.store-chip{background:#efe7d8;border-radius:999px;padding:.2rem .55rem;font-size:.85rem;font-weight:600;display:inline-flex}.order-card-ok{border-color:#2f6f6a59}.order-items{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.order-items li{background:#f7f1e6;border-radius:.9rem;grid-template-columns:auto 1fr;align-items:baseline;gap:.75rem;padding:.7rem .85rem;display:grid}.item-qty{color:var(--ink);font-size:1.15rem;font-weight:800}.item-name{font-size:1.05rem;font-weight:600}.empty-state{text-align:center;gap:.6rem;padding:2.5rem 1.5rem;display:grid}@media (width<=720px){.order-card-header{flex-direction:column}.header-actions,.filters{width:100%}.btn{flex:1}}
