:root{--bg: #1f1b16;--surface: #262019;--surface-raised: #2e271e;--text: #f5efe6;--text-muted: #b9ac9a;--accent: #c98a3e;--accent-soft: rgba(201, 138, 62, .16);--sage: #8a9a72;--divider: #453b30;--danger: #c1543a;--danger-soft: rgba(193, 84, 58, .16);--radius-sm: 8px;--radius-md: 14px;--font-display: "Fraunces", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--max-width: 560px}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased}#root{min-height:100vh}a{color:inherit}button{font-family:inherit}.menu-page{max-width:var(--max-width);margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.menu-header{padding:40px 20px 24px;text-align:center;border-bottom:1px solid var(--divider)}.menu-header__eyebrow{display:block;font-size:13px;color:var(--accent);letter-spacing:.02em;margin-bottom:6px}.menu-header h1{font-family:var(--font-display);font-weight:600;font-size:34px;margin:0 0 6px;line-height:1.1}.menu-header p{margin:0;color:var(--text-muted);font-size:15px}.category-tabs{position:sticky;top:0;z-index:10;display:flex;gap:8px;overflow-x:auto;padding:14px 16px;background:#1f1b16eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--divider);scrollbar-width:none}.category-tabs::-webkit-scrollbar{display:none}.category-tab{flex:0 0 auto;padding:9px 16px;border-radius:999px;border:1px solid var(--divider);background:transparent;color:var(--text-muted);font-size:14px;font-weight:500;white-space:nowrap;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.category-tab:active{transform:scale(.98)}.category-tab.active{background:var(--accent);border-color:var(--accent);color:#1f1b16}.menu-sections{flex:1;padding:8px 20px 60px}.menu-section{padding-top:28px}.menu-section h2{font-family:var(--font-display);font-size:22px;font-weight:600;margin:0 0 4px}.menu-section__count{color:var(--text-muted);font-size:13px;margin:0 0 14px}.product-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:16px 0;border-bottom:1px solid var(--divider)}.product-row:last-child{border-bottom:none}.product-row__info{min-width:0}.product-row__name{font-size:16px;font-weight:600;margin:0 0 4px}.product-row__desc{font-size:13.5px;color:var(--text-muted);margin:0;line-height:1.4}.product-row__price{flex:0 0 auto;font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--accent);white-space:nowrap}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.menu-footer{text-align:center;padding:24px;font-size:12px;color:var(--text-muted);opacity:.6}.menu-footer a{color:var(--text-muted);text-decoration:none}.admin-page{max-width:720px;margin:0 auto;padding:24px 18px 80px;min-height:100vh}.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.admin-login__card{width:100%;max-width:360px;background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-md);padding:32px 24px}.admin-login__card h1{font-family:var(--font-display);font-size:24px;margin:0 0 6px}.admin-login__card p{color:var(--text-muted);font-size:14px;margin:0 0 20px}.admin-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:24px;gap:12px}.admin-header h1{font-family:var(--font-display);font-size:26px;margin:0}.link-button{background:none;border:none;color:var(--text-muted);font-size:13px;cursor:pointer;text-decoration:underline;padding:0}.admin-tabs{display:flex;gap:6px;margin-bottom:20px;border-bottom:1px solid var(--divider)}.admin-tab{padding:10px 4px;margin-right:18px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:14px;font-weight:500;cursor:pointer}.admin-tab.active{color:var(--text);border-bottom-color:var(--accent)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:12.5px;color:var(--text-muted)}input[type=text],input[type=number],input[type=password],textarea,select{background:var(--surface-raised);border:1px solid var(--divider);color:var(--text);border-radius:var(--radius-sm);padding:11px 12px;font-size:15px;font-family:inherit;width:100%}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}textarea{resize:vertical;min-height:60px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid var(--accent);background:var(--accent);color:#1f1b16;font-weight:600;font-size:14px;padding:11px 18px;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap}.btn:disabled{opacity:.5;cursor:default}.btn.secondary{background:transparent;color:var(--text);border-color:var(--divider)}.btn.danger{background:transparent;border-color:var(--danger);color:var(--danger)}.btn.full{width:100%}.admin-card{background:var(--surface);border:1px solid var(--divider);border-radius:var(--radius-md);padding:16px;margin-bottom:14px}.admin-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.admin-card__title{font-weight:600;font-size:15px}.availability-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.availability-dot{width:8px;height:8px;border-radius:50%;background:var(--divider)}.availability-dot.on{background:var(--sage)}.admin-row{display:grid;grid-template-columns:1fr 110px;gap:10px;margin-bottom:10px}.admin-actions{display:flex;gap:8px;margin-top:4px}.section-title{font-family:var(--font-display);font-size:19px;margin:28px 0 12px}.section-title:first-child{margin-top:0}.banner{padding:10px 14px;border-radius:var(--radius-sm);font-size:13.5px;margin-bottom:16px}.banner.success{background:#8a9a7226;color:var(--sage)}.banner.error{background:var(--danger-soft);color:var(--danger)}.category-pill-row{display:flex;align-items:center;justify-content:space-between;padding:12px 4px;border-bottom:1px solid var(--divider);gap:10px}.category-pill-row:last-child{border-bottom:none}.muted{color:var(--text-muted);font-size:13px}@media (min-width: 640px){.menu-header h1{font-size:40px}}
