*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--primary:#ff6b35;--primary-dark:#e55a2b;--secondary:#2c3e50;--secondary-light:#3d5166;--success:#27ae60;--danger:#e74c3c;--warning:#f39c12;--info:#3498db;--light:#f8f9fa;--dark:#343a40;--gray:#6c757d;--gray-light:#dee2e6;--white:#fff;--shadow:0 2px 12px #0000001a;--shadow-lg:0 8px 32px #00000026;--radius:8px;--radius-lg:16px;--transition:0.2s ease}body,html{height:100%}body{background:#f4f5f7;color:#222;font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.5}#root{display:flex;flex-direction:column;min-height:100vh}a{color:#ff6b35;color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer}button,input,select,textarea{font-family:inherit}img{height:auto;max-width:100%}.page-content{flex:1 1;padding:2rem}.btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.4rem;justify-content:center;padding:.5rem 1.2rem;text-decoration:none;transition:background .2s ease,box-shadow .2s ease,opacity .2s ease;transition:background var(--transition),box-shadow var(--transition),opacity var(--transition)}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:#ff6b35;background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:#e55a2b;background:var(--primary-dark)}.btn-secondary{background:#2c3e50;background:var(--secondary);color:#fff}.btn-secondary:hover:not(:disabled){background:#3d5166;background:var(--secondary-light)}.btn-danger{background:#e74c3c;background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#c0392b}.btn-success{background:#27ae60;background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:#1e9f54}.btn-outline{background:#0000;border:2px solid #ff6b35;border:2px solid var(--primary);color:#ff6b35;color:var(--primary)}.btn-outline:hover:not(:disabled){background:#ff6b35;background:var(--primary);color:#fff}.modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.modal{background:#fff;border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 8px 32px #00000026;box-shadow:var(--shadow-lg);max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;width:100%}.modal h2,.modal h3{color:#2c3e50;color:var(--secondary);margin-bottom:1.5rem}.form-group{margin-bottom:1rem}.form-group label{color:#444;display:block;font-size:.9rem;font-weight:500;margin-bottom:.4rem}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1.5px solid #dee2e6;border:1.5px solid var(--gray-light);border-radius:8px;border-radius:var(--radius);font-size:.95rem;padding:.6rem .9rem;transition:border-color .2s ease;transition:border-color var(--transition);width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#ff6b35;border-color:var(--primary);outline:none}.form-group textarea{min-height:80px;resize:vertical}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.error-message{background:#fdecea;border:1px solid #f5c6cb;border-radius:8px;border-radius:var(--radius);color:#e74c3c;color:var(--danger)}.error-message,.success-message{font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.success-message{background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;border-radius:var(--radius);color:#27ae60;color:var(--success)}.badge{border-radius:100px;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:.2rem .6rem;text-transform:uppercase}.badge-success{background:#d4edda;color:#155724}.badge-danger{background:#f8d7da;color:#721c24}.badge-warning{background:#fff3cd;color:#856404}.badge-info{background:#cce5ff;color:#004085}.tabs{border-bottom:2px solid #dee2e6;border-bottom:2px solid var(--gray-light);display:flex;gap:0;margin-bottom:2rem}.tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#6c757d;color:var(--gray);cursor:pointer;font-size:.95rem;margin-bottom:-2px;padding:.75rem 1.5rem;transition:color .2s ease,border-color .2s ease;transition:color var(--transition),border-color var(--transition)}.tab-btn.active{border-bottom-color:#ff6b35;border-bottom-color:var(--primary);color:#ff6b35;color:var(--primary);font-weight:600}.tab-btn:hover:not(.active){color:#2c3e50;color:var(--secondary)}table{border-collapse:collapse;width:100%}table td,table th{border-bottom:1px solid #dee2e6;border-bottom:1px solid var(--gray-light);font-size:.9rem;padding:.75rem 1rem;text-align:left}table th{background:#f8f9fa;background:var(--light);color:#2c3e50;color:var(--secondary);font-weight:600}table tr:hover td{background:#f9f9f9}.table-actions{display:flex;flex-wrap:wrap;gap:.5rem}.toggle-switch input:checked+.toggle-slider{background:var(--primary)}.navbar{align-items:center;background:#2c3e50;box-shadow:0 2px 8px #0000002e;color:#fff;display:flex;height:60px;justify-content:space-between;padding:0 2rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar-logo{color:#ff6b35;font-size:1.4rem;font-weight:700;letter-spacing:1px;text-decoration:none}.navbar-logo span{color:#fff}.navbar-links{align-items:center;display:flex;gap:1.5rem;list-style:none;margin:0;padding:0}.navbar-links a{color:#cdd6e0;font-size:.95rem;text-decoration:none;transition:color .2s}.navbar-links a.active,.navbar-links a:hover{color:#ff6b35}.navbar-user{align-items:center;display:flex;gap:1rem}.navbar-username{color:#cdd6e0;font-size:.9rem}.navbar-dashboard-link{background:#ffffff26;border:1.5px solid #fff6;border-radius:6px;color:#fff;font-size:.9rem;font-weight:600;padding:.4rem 1rem;text-decoration:none;transition:background .2s}.navbar-dashboard-link:hover{background:#ffffff40}.navbar-logout{background:#ff6b35;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.4rem 1rem;transition:background .2s}.navbar-logout:hover{background:#e55a25}@media (max-width:600px){.navbar{padding:0 1rem}.navbar-links{gap:.8rem}.navbar-username{display:none}}.landing{font-family:Segoe UI,system-ui,sans-serif}.hero{background:#3a6186;color:#fff;padding:5rem 2rem 4rem;text-align:center}.hero h1{font-size:2.8rem;font-weight:800;line-height:1.2;margin-bottom:1.2rem;text-shadow:0 2px 4px #0000001f}.hero-subtitle{font-size:1.2rem;line-height:1.6;margin:0 auto 2.5rem;max-width:600px;opacity:.92}.hero-cta{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1.5rem}.btn-hero-primary{background:#fff;border:none;border-radius:50px;box-shadow:0 4px 16px #00000026;color:#2c3e50;cursor:pointer;font-size:1rem;font-weight:700;padding:.9rem 2rem;transition:box-shadow .2s,transform .15s}.btn-hero-primary:hover{box-shadow:0 8px 24px #0003;transform:translateY(-2px)}.btn-hero-secondary{background:#0000;border:2px solid #fffc;border-radius:50px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.9rem 2rem;transition:background .2s,border-color .2s}.btn-hero-secondary:hover{background:#ffffff26;border-color:#fff}.hero-login-link{font-size:.95rem;margin-top:1rem;opacity:.85}.hero-login-link a{color:#fff;font-weight:600;text-decoration:underline}.features{background:#fff;padding:4rem 2rem}.section-title{color:#2c3e50;font-size:2rem;font-weight:700;margin-bottom:.75rem;text-align:center}.section-subtitle{color:#666;font-size:1.05rem;margin-bottom:3rem;text-align:center}.features-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin:0 auto;max-width:1100px}.feature-card{background:#f8f9fa;border-radius:16px;box-shadow:0 2px 12px #0000000f;padding:2rem 1.5rem;text-align:center;transition:box-shadow .2s,transform .15s}.feature-card:hover{box-shadow:0 8px 28px #0000001f;transform:translateY(-4px)}.feature-icon{font-size:2.5rem;margin-bottom:1rem}.feature-card h3{color:#2c3e50;font-size:1.1rem;font-weight:700;margin-bottom:.6rem}.feature-card p{color:#666;font-size:.9rem;line-height:1.5}.pricing{background:#f4f5f7;padding:4rem 2rem}.pricing-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1100px}.pricing-card{background:#fff;border-radius:16px;box-shadow:0 2px 16px #00000014;display:flex;flex-direction:column;padding:2.5rem 2rem;position:relative;text-align:center;transition:box-shadow .2s}.pricing-card.featured{border:2px solid #ff6b35;box-shadow:0 8px 32px #ff6b352e}.pricing-badge{background:#ff6b35;border-radius:100px;color:#fff;font-size:.8rem;font-weight:700;left:50%;letter-spacing:.5px;padding:.2rem 1rem;position:absolute;text-transform:uppercase;top:-14px;transform:translateX(-50%)}.pricing-card h3{color:#2c3e50;font-size:1.3rem;font-weight:700;margin-bottom:.75rem}.pricing-price{color:#ff6b35;font-size:2.5rem;font-weight:800;margin-bottom:.25rem}.pricing-price span{color:#888;font-size:1rem;font-weight:400}.pricing-desc{color:#666;font-size:.9rem;margin-bottom:1.5rem}.pricing-features{flex:1 1;list-style:none;margin-bottom:1.5rem;text-align:left}.pricing-features li{color:#444;font-size:.9rem;padding:.4rem 0}.pricing-features li:before{color:#27ae60;content:"✓ ";font-weight:700}.pricing-btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:.85rem;transition:background .2s;width:100%}.pricing-btn.primary{background:#ff6b35;color:#fff}.pricing-btn.primary:hover{background:#e55a2b}.pricing-btn.secondary{background:#2c3e50;color:#fff}.pricing-btn.secondary:hover{background:#3d5166}.subscribe-plan-badge{background:#fff4ef;border:1px solid #ff6b35;border-radius:100px;color:#ff6b35;display:inline-block;font-size:.85rem;margin-bottom:.75rem;padding:.3rem 1rem}.subscribe-notice{background:#f8f9fa;border-radius:6px;color:#888;font-size:.8rem;margin-bottom:.5rem;padding:.6rem .8rem}.landing-footer{background:#2c3e50;color:#cdd6e0;font-size:.9rem;padding:2rem;text-align:center}.landing-modal-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.landing-modal{background:#fff;border-radius:16px;box-shadow:0 12px 40px #0003;max-height:90vh;max-width:480px;overflow-y:auto;padding:2.5rem 2rem;width:100%}.landing-modal h2{color:#2c3e50;font-size:1.4rem;margin-bottom:1.5rem}.landing-modal .form-group{margin-bottom:1rem}.landing-modal .form-group label{color:#444;display:block;font-size:.9rem;font-weight:500;margin-bottom:.35rem}.landing-modal .form-group input,.landing-modal .form-group textarea{border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.95rem;padding:.65rem .9rem;transition:border-color .2s;width:100%}.landing-modal .form-group input:focus,.landing-modal .form-group textarea:focus{border-color:#ff6b35;outline:none}.landing-modal .form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.modal-btn-primary{background:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:.65rem 1.5rem;transition:background .2s}.modal-btn-primary:hover{background:#e55a2b}.modal-btn-primary:disabled{cursor:not-allowed;opacity:.6}.modal-btn-cancel{background:#f4f5f7;border:none;border-radius:8px;color:#444;cursor:pointer;font-size:.95rem;padding:.65rem 1.2rem}.modal-btn-cancel:hover{background:#e2e4e8}.success-box{background:#d4edda;border:1px solid #c3e6cb;border-radius:10px;color:#155724;margin-bottom:1rem;padding:1.2rem}.success-box h3{font-size:1.1rem;margin-bottom:.75rem}.success-box .credentials{background:#fff;border-radius:6px;color:#2c3e50;font-family:monospace;font-size:.95rem;margin-top:.5rem;padding:.75rem}.error-box{background:#fdecea;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}@media (max-width:768px){.hero h1{font-size:2rem}.hero-subtitle{font-size:1rem}.features-grid{grid-template-columns:1fr 1fr}}@media (max-width:480px){.features-grid{grid-template-columns:1fr}.hero{padding:3rem 1.5rem 2.5rem}}.login-page{align-items:center;background:linear-gradient(135deg,#f4f5f7,#e8eaf0);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-card{background:#fff;border-radius:16px;box-shadow:0 8px 32px #0000001f;max-width:420px;padding:2.5rem 2rem;width:100%}.login-logo{margin-bottom:2rem;text-align:center}.login-logo h1{color:#ff6b35;font-size:2rem;font-weight:800;letter-spacing:1px}.login-logo h1 span{color:#2c3e50}.login-logo p{color:#888;font-size:.9rem;margin-top:.3rem}.login-card h2{color:#2c3e50;font-size:1.4rem;margin-bottom:1.5rem;text-align:center}.login-form .form-group{margin-bottom:1.1rem}.login-form .form-group label{color:#444;display:block;font-size:.9rem;font-weight:500;margin-bottom:.4rem}.login-form .form-group input{border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.95rem;padding:.7rem 1rem;transition:border-color .2s;width:100%}.login-form .form-group input:focus{border-color:#ff6b35;outline:none}.login-btn{background:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.5rem;padding:.8rem;transition:background .2s;width:100%}.login-btn:hover:not(:disabled){background:#e55a2b}.login-btn:disabled{cursor:not-allowed;opacity:.65}.login-error{background:#fdecea;border:1px solid #f5c6cb;border-radius:8px;color:#c0392b}.login-error,.login-success{font-size:.9rem;margin-bottom:1rem;padding:.7rem 1rem}.login-success{background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724}.forgot-link{background:none;border:none;color:#ff6b35;cursor:pointer;display:block;font-family:inherit;font-size:.85rem;margin-top:.5rem;padding:0;text-align:right}.forgot-link:hover{text-decoration:underline}.forgot-section{border-top:1px solid #eee;margin-top:1.5rem;padding-top:1.5rem}.forgot-section h3{color:#2c3e50;font-size:1rem;margin-bottom:1rem}.back-link{background:none;border:none;color:#888;cursor:pointer;display:inline-block;font-family:inherit;font-size:.85rem;margin-top:1rem;padding:0}.back-link:hover{color:#444;text-decoration:underline}.admin-dashboard{margin:0 auto;max-width:1200px;padding:2rem}.admin-dashboard h1{color:#2c3e50;font-size:1.8rem;margin-bottom:1.5rem}.admin-tabs{border-bottom:2px solid #dee2e6;display:flex;margin-bottom:2rem}.admin-tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#888;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:500;margin-bottom:-2px;padding:.75rem 1.5rem;transition:color .2s,border-color .2s}.admin-tab-btn.active{border-bottom-color:#ff6b35;color:#ff6b35}.admin-tab-btn:hover:not(.active){color:#2c3e50}.admin-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.admin-section-header h2{color:#2c3e50;font-size:1.2rem}.admin-table-wrap{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;overflow:hidden}.admin-table-wrap table{border-collapse:collapse;width:100%}.admin-table-wrap th{background:#f8f9fa;border-bottom:1px solid #dee2e6;color:#2c3e50;font-size:.875rem;font-weight:600;letter-spacing:.5px;padding:1rem;text-align:left;text-transform:uppercase}.admin-table-wrap td{border-bottom:1px solid #f0f0f0;color:#333;font-size:.9rem;padding:.85rem 1rem;vertical-align:middle}.admin-table-wrap tr:last-child td{border-bottom:none}.admin-table-wrap tr:nth-child(2n) td{background:#fafafa}.admin-table-wrap tr:hover td{background:#fff5f1}.action-btns{display:flex;flex-wrap:wrap;gap:.4rem}.btn-sm{border:none;border-radius:6px;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:500;padding:.3rem .8rem;transition:background .2s,opacity .2s}.btn-sm:disabled{cursor:not-allowed;opacity:.5}.btn-sm.toggle-on{background:#fde8df;color:#c0392b}.btn-sm.toggle-on:hover:not(:disabled){background:#f5c6bc}.btn-sm.toggle-off{background:#d4edda;color:#155724}.btn-sm.toggle-off:hover:not(:disabled){background:#b8dfc4}.btn-sm.edit{background:#cce5ff;color:#004085}.btn-sm.edit:hover:not(:disabled){background:#b8d9ff}.btn-sm.delete{background:#f8d7da;color:#721c24}.btn-sm.delete:hover:not(:disabled){background:#f1b0b7}.badge-active{background:#d4edda;color:#155724}.badge-active,.badge-inactive{border-radius:100px;font-size:.75rem;font-weight:600;padding:.25rem .7rem}.badge-inactive{background:#f8d7da;color:#721c24}.admin-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.admin-modal{background:#fff;border-radius:14px;box-shadow:0 12px 40px #0000002e;max-height:90vh;max-width:480px;overflow-y:auto;padding:2rem;width:100%}.admin-modal h2{color:#2c3e50;font-size:1.3rem;margin-bottom:1.5rem}.admin-modal .form-group{margin-bottom:1rem}.admin-modal .form-group label{color:#444;display:block;font-size:.875rem;font-weight:500;margin-bottom:.35rem}.admin-modal .form-group input{border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.9rem;padding:.65rem .9rem;transition:border-color .2s;width:100%}.admin-modal .form-group input:focus{border-color:#ff6b35;outline:none}.admin-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.credentials-box{background:#f0f4f8;border:1px solid #ccd9e3;border-radius:10px;color:#2c3e50;font-size:.9rem;margin:1rem 0;padding:1rem}.credentials-box div{margin-bottom:.4rem}.credentials-box strong{color:#ff6b35}.logs-pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.logs-pagination button{background:#fff;border:1.5px solid #dee2e6;border-radius:8px;cursor:pointer;font-family:inherit;font-size:.875rem;padding:.45rem 1rem;transition:background .2s}.logs-pagination button:hover:not(:disabled){background:#f4f5f7}.logs-pagination button:disabled{cursor:not-allowed;opacity:.4}.logs-pagination span{color:#666;font-size:.875rem}.add-btn{font-size:.9rem;padding:.6rem 1.4rem}@media (max-width:768px){.admin-dashboard{padding:1rem}.admin-table-wrap{overflow-x:auto}.action-btns{flex-direction:column}}.owner-dashboard{margin:0 auto;max-width:1100px;padding:2rem}.owner-dashboard h1{color:#2c3e50;font-size:1.7rem;margin-bottom:.5rem}.owner-dashboard .restaurant-name{color:#ff6b35;font-size:1.1rem;margin-bottom:1.5rem}.owner-tabs{border-bottom:2px solid #dee2e6;display:flex;flex-wrap:wrap;gap:0;margin-bottom:2rem}.owner-tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#888;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:500;margin-bottom:-2px;padding:.75rem 1.4rem;transition:color .2s,border-color .2s}.owner-tab-btn.active{border-bottom-color:#ff6b35;color:#ff6b35}.owner-tab-btn:hover:not(.active){color:#2c3e50}.settings-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;margin-bottom:1.5rem;padding:2rem}.settings-card h3{border-bottom:1px solid #eee;color:#2c3e50;font-size:1rem;font-weight:600;margin-bottom:1.2rem;padding-bottom:.6rem}.settings-row{align-items:center;border-bottom:1px solid #f5f5f5;display:flex;justify-content:space-between;padding:.6rem 0}.settings-row:last-child{border-bottom:none}.settings-row label{color:#444;font-size:.9rem;font-weight:500}.settings-row .settings-input{border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.9rem;padding:.45rem .75rem;transition:border-color .2s;width:160px}.settings-row .settings-input:focus{border-color:#ff6b35;outline:none}.save-btn{background:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.95rem;font-weight:600;margin-top:1rem;padding:.7rem 2rem;transition:background .2s}.save-btn:hover:not(:disabled){background:#e55a2b}.save-btn:disabled{cursor:not-allowed;opacity:.6}.toggle-switch{display:inline-block;height:24px;position:relative;width:46px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background:#ccc;border-radius:34px;cursor:pointer;inset:0;position:absolute;transition:.3s}.toggle-slider:before{background:#fff;border-radius:50%;bottom:3px;content:"";height:18px;left:3px;position:absolute;transition:.3s;width:18px}.toggle-switch input:checked+.toggle-slider{background:#ff6b35}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(22px)}.team-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.team-header h2{color:#2c3e50;font-size:1.1rem}.add-btn{background:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:.6rem 1.3rem;transition:background .2s}.add-btn:hover{background:#e55a2b}.team-table-wrap{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;overflow:hidden}.team-table-wrap table{border-collapse:collapse;width:100%}.team-table-wrap th{background:#f8f9fa;border-bottom:1px solid #dee2e6;color:#2c3e50;font-size:.85rem;font-weight:600;padding:.9rem 1rem;text-align:left}.team-table-wrap td{border-bottom:1px solid #f0f0f0;color:#333;font-size:.9rem;padding:.8rem 1rem;vertical-align:middle}.team-table-wrap tr:last-child td{border-bottom:none}.role-badge{background:#e8f4ff;border-radius:100px;color:#06c;display:inline-block;font-size:.75rem;font-weight:600;padding:.2rem .7rem}.team-actions{display:flex;gap:.4rem}.btn-sm-edit{background:#cce5ff;border:none;border-radius:6px;color:#004085;cursor:pointer;font-family:inherit;font-size:.8rem;padding:.3rem .75rem;transition:background .2s}.btn-sm-edit:hover{background:#b3d7ff}.btn-sm-delete{background:#f8d7da;border:none;border-radius:6px;color:#721c24;cursor:pointer;font-family:inherit;font-size:.8rem;padding:.3rem .75rem;transition:background .2s}.btn-sm-delete:hover{background:#f1b0b7}.analytics-cards{grid-gap:1.2rem;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem}.analytics-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:1.5rem;text-align:center}.analytics-card .analytics-value{color:#ff6b35;font-size:2rem;font-weight:800;margin-bottom:.3rem}.analytics-card .analytics-label{color:#888;font-size:.85rem}.subscription-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;max-width:400px;padding:2rem}.subscription-card h3{color:#2c3e50;font-size:1rem;margin-bottom:1.2rem}.subscription-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;font-size:.9rem;justify-content:space-between;padding:.6rem 0}.subscription-row:last-child{border-bottom:none}.subscription-row .label{color:#666}.subscription-row .value{color:#2c3e50;font-weight:600}.renew-btn{background:#27ae60;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;margin-top:1.5rem;padding:.7rem 1.5rem;transition:background .2s}.renew-btn:hover{background:#1e9f54}.owner-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.owner-modal{background:#fff;border-radius:14px;box-shadow:0 12px 40px #0000002e;max-height:90vh;max-width:440px;overflow-y:auto;padding:2rem;width:100%}.owner-modal h2{color:#2c3e50;font-size:1.2rem;margin-bottom:1.5rem}.owner-modal .form-group{margin-bottom:1rem}.owner-modal .form-group label{color:#444;display:block;font-size:.875rem;font-weight:500;margin-bottom:.35rem}.owner-modal .form-group input,.owner-modal .form-group select{background:#fff;border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.9rem;padding:.65rem .9rem;transition:border-color .2s;width:100%}.owner-modal .form-group input:focus,.owner-modal .form-group select:focus{border-color:#ff6b35;outline:none}.owner-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}@media (max-width:768px){.owner-dashboard{padding:1rem}.owner-tabs{flex-wrap:wrap}.analytics-cards{grid-template-columns:1fr 1fr}}.chef-view{margin:0 auto;max-width:1400px;padding:1.5rem 2rem}.chef-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.chef-header h1{color:#2c3e50;font-size:1.6rem}.add-dish-btn{background:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;padding:.65rem 1.4rem;transition:background .2s}.add-dish-btn:hover{background:#e55a2b}.chef-filters{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.2rem}.chef-search{border:1.5px solid #dee2e6;border-radius:8px;flex:1 1;font-family:inherit;font-size:.9rem;max-width:320px;min-width:200px;padding:.55rem 1rem;transition:border-color .2s}.chef-search:focus{border-color:#ff6b35;outline:none}.category-filter-btn{background:#f4f5f7;border:1.5px solid #dee2e6;border-radius:20px;color:#444;cursor:pointer;font-family:inherit;font-size:.85rem;padding:.45rem 1rem;transition:background .2s,border-color .2s,color .2s}.category-filter-btn.active{background:#ff6b35;border-color:#ff6b35;color:#fff}.category-filter-btn:hover:not(.active){background:#e8eaf0}.dishes-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.dish-card{background:#fff;border-radius:14px;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s,transform .15s}.dish-card:hover{box-shadow:0 8px 28px #00000024;transform:translateY(-3px)}.dish-card.unavailable{opacity:.65}.dish-photo{background:#f0f0f0;display:block;height:180px;object-fit:cover;width:100%}.dish-photo-placeholder{align-items:center;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);color:#ccc;display:flex;font-size:3rem;height:180px;justify-content:center;width:100%}.dish-card-body{display:flex;flex:1 1;flex-direction:column;padding:1rem}.dish-card-top{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.4rem}.dish-name{color:#2c3e50;flex:1 1;margin-right:.5rem}.dish-name,.dish-price{font-size:1rem;font-weight:700}.dish-price{color:#ff6b35;white-space:nowrap}.dish-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#888;display:-webkit-box;font-size:.82rem;line-height:1.4;margin-bottom:.6rem;overflow:hidden}.dish-badges{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem}.badge-day{background:#fff3cd;color:#856404}.badge-day,.badge-suggestion{border-radius:100px;font-size:.72rem;font-weight:700;padding:.15rem .6rem}.badge-suggestion{background:#e8f5e9;color:#2e7d32}.badge-unavailable{background:#f8d7da;border-radius:100px;color:#721c24;font-size:.72rem;font-weight:700;padding:.15rem .6rem}.dish-generic-source{color:#aaa;font-size:.75rem;font-style:italic;margin-bottom:.5rem}.dish-card-actions{border-top:1px solid #f0f0f0;display:flex;flex-wrap:wrap;gap:.5rem;margin-top:auto;padding-top:.75rem}.dish-action-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-family:inherit;font-size:.8rem;font-weight:600;min-width:70px;padding:.4rem .5rem;text-align:center;transition:background .2s}.dish-action-btn.edit{background:#cce5ff;color:#004085}.dish-action-btn.edit:hover{background:#b3d7ff}.dish-action-btn.photo{background:#d4edda;color:#155724}.dish-action-btn.photo:hover{background:#b8dfca}.chef-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.chef-modal{background:#fff;border-radius:16px;box-shadow:0 12px 40px #0000002e;max-height:90vh;max-width:520px;overflow-y:auto;padding:2rem;width:100%}.chef-modal h2{color:#2c3e50;font-size:1.2rem;margin-bottom:1.5rem}.chef-modal .form-group{margin-bottom:1rem}.chef-modal .form-group label{color:#444;display:block;font-size:.875rem;font-weight:500;margin-bottom:.35rem}.chef-modal .form-group input,.chef-modal .form-group select,.chef-modal .form-group textarea{background:#fff;border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.9rem;padding:.6rem .9rem;transition:border-color .2s;width:100%}.chef-modal .form-group input:focus,.chef-modal .form-group select:focus,.chef-modal .form-group textarea:focus{border-color:#ff6b35;outline:none}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-checkbox-row{display:flex;flex-wrap:wrap;gap:1.5rem}.form-checkbox-row label{align-items:center;color:#444;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.4rem}.chef-modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.btn-modal-primary{background:#ff6b35;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:600;padding:.6rem 1.4rem;transition:background .2s}.btn-modal-primary:hover:not(:disabled){background:#e55a2b}.btn-modal-primary:disabled{cursor:not-allowed;opacity:.6}.btn-modal-cancel{background:#f4f5f7;border:none;border-radius:8px;color:#444;cursor:pointer;font-family:inherit;font-size:.9rem;padding:.6rem 1.2rem}.btn-modal-cancel:hover{background:#e2e4e8}.photo-file-input{display:none}@media (max-width:768px){.chef-view{padding:1rem}.dishes-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.form-row{grid-template-columns:1fr}}.chef-tabs{border-bottom:2px solid #f0f0f0;display:flex;gap:0;margin-bottom:1.5rem}.chef-tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#888;cursor:pointer;display:flex;font-family:inherit;font-size:.95rem;font-weight:600;gap:.5rem;margin-bottom:-2px;padding:.85rem 1.5rem;transition:color .2s}.chef-tab:hover{color:#2c3e50}.chef-tab.active{border-bottom-color:#ff6b35;color:#2c3e50}.chef-tab-badge{background:#ff6b35;color:#fff;padding:.05rem .5rem}.badge-offer,.chef-tab-badge{border-radius:100px;font-size:.72rem;font-weight:700}.badge-offer{background:#fff3cd;color:#856404;padding:.15rem .6rem}.offers-empty{color:#888;padding:2.5rem;text-align:center}.offers-list{display:flex;flex-direction:column;gap:1rem;max-width:900px}.offer-card{background:#fff;border-left:4px solid #ff6b35;border-radius:14px;box-shadow:0 2px 12px #00000014;padding:1.25rem}.offer-card.inactive{border-left-color:#ccc;opacity:.6}.offer-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.4rem}.offer-name{color:#2c3e50;font-size:1.05rem;font-weight:700}.offer-price{color:#ff6b35;font-size:1.1rem;font-weight:800}.offer-description{color:#888;font-size:.85rem;margin-bottom:.75rem}.offer-courses{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.offer-course{background:#f8f9fa;border-radius:8px;min-width:140px;padding:.5rem .75rem}.offer-course-name{color:#444;display:block;font-size:.78rem;font-weight:700;letter-spacing:.04em;margin-bottom:.35rem;text-transform:uppercase}.offer-course-dishes{display:flex;flex-wrap:wrap;gap:.3rem}.offer-dish-tag{background:#e8f4f8;border-radius:4px;color:#2c3e50;font-size:.75rem;padding:.1rem .4rem}.offer-no-dishes{color:#aaa;font-size:.75rem;font-style:italic}.offer-courses-editor{background:#f8f9fa;border-radius:10px;margin:1rem 0;padding:1rem}.offer-course-editor{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:.75rem;padding:.75rem}.offer-course-editor:last-child{margin-bottom:0}.offer-dish-picker{display:flex;flex-wrap:wrap;gap:.4rem;max-height:160px;overflow-y:auto;padding:.25rem 0}.offer-dish-option{background:#fff;border:1.5px solid #dee2e6;border-radius:100px;color:#444;cursor:pointer;font-size:.8rem;padding:.25rem .65rem;transition:all .15s;-webkit-user-select:none;user-select:none}.offer-dish-option.selected{background:#2c3e50;border-color:#2c3e50;color:#fff}.server-view{margin:0 auto;max-width:1400px;padding:1.5rem 2rem}.server-view h1{color:#2c3e50;font-size:1.6rem;margin-bottom:1.5rem}.server-layout{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr}.new-order-section{background:#fff;border-radius:14px;box-shadow:0 2px 12px #00000014;padding:1.5rem}.new-order-section h2{color:#2c3e50;font-size:1.1rem;margin-bottom:1.2rem}.table-select-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.table-select-row label{color:#444;font-size:.875rem;font-weight:600;white-space:nowrap}.table-select{background:#fff;border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.9rem;min-width:100px;padding:.5rem .75rem;transition:border-color .2s}.table-select:focus{border-color:#ff6b35;outline:none}.dish-search{border:1.5px solid #dee2e6;border-radius:8px;font-family:inherit;font-size:.9rem;margin-bottom:1rem;padding:.55rem 1rem;transition:border-color .2s;width:100%}.dish-search:focus{border-color:#ff6b35;outline:none}.dishes-list{border:1px solid #f0f0f0;border-radius:10px;max-height:350px;overflow-y:auto}.dish-list-item{align-items:center;border-bottom:1px solid #f5f5f5;cursor:pointer;display:flex;justify-content:space-between;padding:.7rem 1rem;transition:background .15s}.dish-list-item:last-child{border-bottom:none}.dish-list-item:hover{background:#fff5f1}.dish-list-name{color:#2c3e50;font-size:.9rem;font-weight:500}.dish-list-price{color:#ff6b35;font-size:.9rem;font-weight:600}.add-to-cart-btn{align-items:center;background:#ff6b35;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.1rem;height:30px;justify-content:center;margin-left:.5rem;transition:background .2s;width:30px}.add-to-cart-btn:hover{background:#e55a2b}.cart-section{background:#fff;border-radius:14px;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;padding:1.5rem}.cart-section h2{color:#2c3e50;font-size:1.1rem;margin-bottom:1.2rem}.cart-empty{color:#aaa;font-size:.9rem;padding:2rem;text-align:center}.cart-items{flex:1 1;max-height:300px;overflow-y:auto}.cart-item{align-items:center;border-bottom:1px solid #f5f5f5;display:flex;gap:.5rem;justify-content:space-between;padding:.6rem 0}.cart-item-name{color:#2c3e50;flex:1 1;font-size:.9rem}.cart-qty-controls{gap:.4rem}.cart-qty-controls,.qty-btn{align-items:center;display:flex}.qty-btn{background:#f4f5f7;border:none;border-radius:50%;cursor:pointer;font-size:1rem;height:26px;justify-content:center;transition:background .15s;width:26px}.qty-btn:hover{background:#e2e4e8}.cart-qty{font-size:.9rem;font-weight:700;min-width:20px;text-align:center}.cart-item-total{color:#ff6b35;font-size:.9rem;font-weight:600;min-width:60px;text-align:right}.cart-footer{border-top:2px solid #f0f0f0;margin-top:1rem;padding-top:1rem}.cart-total-row{color:#2c3e50;display:flex;font-size:1rem;font-weight:700;justify-content:space-between;margin-bottom:1rem}.send-order-btn{background:#ff6b35;border:none;border-radius:10px;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:700;padding:.8rem;transition:background .2s;width:100%}.send-order-btn:hover:not(:disabled){background:#e55a2b}.send-order-btn:disabled{cursor:not-allowed;opacity:.5}.active-orders-section{margin-top:2rem}.active-orders-section h2{color:#2c3e50;font-size:1.2rem;margin-bottom:1.2rem}.orders-grid{grid-gap:1.2rem;display:grid;gap:1.2rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.order-card{background:#fff;border-left:4px solid #dee2e6;border-radius:12px;box-shadow:0 2px 10px #00000014;padding:1.2rem}.order-card.ready{border-left-color:#27ae60}.order-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.8rem}.order-table{color:#2c3e50;font-size:.95rem;font-weight:700}.order-time{color:#888;font-size:.8rem}.order-status-badge{border-radius:100px;display:inline-block;font-size:.75rem;font-weight:700;padding:.2rem .7rem;text-transform:uppercase}.status-en_attente{background:#fff3cd;color:#856404}.status-en_preparation{background:#cce5ff;color:#004085}.status-pret{background:#d4edda;color:#155724}.status-servi{background:#f0f0f0;color:#888}.order-items-list{list-style:none;margin-bottom:.8rem}.order-items-list li{color:#444;font-size:.875rem;padding:.2rem 0}.serve-btn{background:#27ae60;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:600;padding:.55rem;transition:background .2s;width:100%}.serve-btn:hover{background:#1e9f54}.error-banner{background:#fdecea;border:1px solid #f5c6cb;border-radius:8px;color:#c0392b}.error-banner,.success-banner{font-size:.9rem;margin-bottom:1rem;padding:.75rem 1rem}.success-banner{background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724}@media (max-width:900px){.server-layout{grid-template-columns:1fr}}@media (max-width:600px){.server-view{padding:1rem}}*{box-sizing:border-box}.kitchen-dashboard{background:#1a1a2e;color:#fff;display:flex;flex-direction:column;font-family:Segoe UI,system-ui,sans-serif;height:100vh;overflow:hidden;width:100vw}.kitchen-header{align-items:center;background:#16213e;border-bottom:2px solid #0f3460;display:flex;flex-shrink:0;justify-content:space-between;padding:.75rem 1.5rem}.kitchen-title{color:#ff6b35;font-size:1.3rem;font-weight:800;letter-spacing:1px}.kitchen-subtitle{color:#89a;font-size:.85rem;margin-top:.1rem}.kitchen-logout-btn{background:#e74c3c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.85rem;font-weight:600;padding:.45rem 1.1rem;transition:background .2s}.kitchen-logout-btn:hover{background:#c0392b}.kitchen-grid{grid-gap:.75rem;display:grid;flex:1 1;gap:.75rem;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);overflow:hidden;padding:.75rem}.order-card-kitchen{background:#16213e;border:2px solid #0f3460;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;padding:.9rem;position:relative;transition:border-color .3s}.order-card-kitchen.all-ready{border-color:#27ae60;box-shadow:0 0 12px #27ae604d}.order-card-header-kitchen{align-items:center;display:flex;flex-shrink:0;justify-content:space-between;margin-bottom:.6rem}.order-table-num{color:#fff;font-size:1.2rem;font-weight:800}.order-elapsed{background:#ffffff1a;border-radius:6px;color:#ff6b35;font-family:Courier New,monospace;font-size:.9rem;font-weight:700;padding:.2rem .6rem}.order-elapsed.urgent{background:#e74c3c4d;color:#e74c3c}.ready-badge-kitchen{animation:pulse-green 1.5s infinite;background:#27ae60;border-radius:100px;color:#fff;font-size:.75rem;font-weight:800;letter-spacing:1px;padding:.2rem .75rem;text-transform:uppercase}@keyframes pulse-green{0%,to{opacity:1}50%{opacity:.7}}.order-items-kitchen{flex:1 1;margin-bottom:.5rem;overflow-y:auto}.order-item-kitchen{align-items:center;border:1.5px solid #0000;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;margin-bottom:.3rem;padding:.35rem .6rem;transition:background .15s,opacity .2s}.order-item-kitchen.en_preparation{background:#e74c3c2e;border-color:#e74c3c66}.order-item-kitchen.pret{background:#27ae6026;border-color:#27ae6066;opacity:.85}.order-item-kitchen:hover{filter:brightness(1.1)}.item-name-kitchen{color:#e8e8e8;flex:1 1;font-size:.875rem}.item-qty-kitchen{color:#aaa;font-size:.8rem;font-weight:700;margin-right:.5rem}.item-status-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.item-status-dot.en_preparation{background:#e74c3c;box-shadow:0 0 6px #e74c3ccc}.item-status-dot.pret{background:#27ae60;box-shadow:0 0 6px #27ae60cc}.serve-btn-kitchen{background:#27ae60;border:none;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:.9rem;font-weight:700;padding:.55rem;transition:background .2s;width:100%}.serve-btn-kitchen:hover{background:#1e9f54}.kitchen-empty{align-items:center;color:#89a;display:flex;font-size:1.2rem;grid-column:1/-1;grid-row:1/-1;justify-content:center}.kitchen-overflow{grid-gap:.75rem;display:grid;flex-shrink:0;gap:.75rem;grid-template-columns:repeat(3,1fr);max-height:30vh;overflow-y:auto;padding:0 .75rem .75rem}.order-card-placeholder{background:#0f34604d;border:2px dashed #0f3460;border-radius:12px;color:#4a5568;font-size:.85rem}.cm-table-select,.order-card-placeholder{align-items:center;display:flex;justify-content:center}.cm-table-select{background:linear-gradient(135deg,#2c3e50,#1a252f);min-height:100vh;padding:1.5rem}.cm-table-card{background:#fff;border-radius:20px;box-shadow:0 12px 40px #00000040;max-width:380px;padding:2rem 1.75rem;text-align:center;width:100%}.cm-logo{color:#2c3e50;font-size:1.4rem;font-weight:800;margin-bottom:.5rem}.cm-table-card h2{color:#2c3e50;font-size:1.2rem;margin-bottom:.25rem}.cm-table-card p{color:#888;font-size:.9rem;margin-bottom:1.25rem}.cm-table-card label{color:#444;display:block;font-size:.85rem;font-weight:600;margin-bottom:.3rem;margin-top:.75rem;text-align:left}.cm-table-card input[type=password],.cm-table-card select{background:#fff;border:1.5px solid #dee2e6;border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:1rem;padding:.7rem 1rem;transition:border-color .2s;width:100%}.cm-table-card input[type=password]:focus,.cm-table-card select:focus{border-color:#2c3e50;outline:none}.cm-error{background:#fdecea;border:1px solid #f5c6cb;border-radius:8px;color:#c0392b;font-size:.875rem;margin-bottom:.75rem;padding:.65rem}.cm-btn-primary{background:#2c3e50;border:none;border-radius:12px;color:#fff;cursor:pointer;font-family:inherit;font-size:1rem;font-weight:700;margin-top:1rem;padding:.85rem;transition:background .2s;width:100%}.cm-btn-primary:hover:not(:disabled){background:#1a252f}.cm-btn-primary:disabled{cursor:not-allowed;opacity:.6}.cm-btn-secondary{background:#f4f5f7;border:none;border-radius:10px;color:#444;cursor:pointer;font-family:inherit;font-size:.95rem;padding:.75rem;width:100%}.cm-btn-secondary:hover{background:#e2e4e8}.cm-root{background:#f8f9fa;font-family:Segoe UI,system-ui,sans-serif;min-height:100vh}.cm-header{align-items:center;background:#2c3e50;box-shadow:0 2px 8px #0003;color:#fff;display:flex;justify-content:space-between;padding:.85rem 1.25rem;position:-webkit-sticky;position:sticky;top:0;z-index:50}.cm-header-left{display:flex;flex-direction:column;gap:2px}.cm-restaurant-name{font-size:1rem;font-weight:800}.cm-table-badge{background:#fff3;border-radius:100px;display:inline-block;font-size:.78rem;font-weight:600;padding:.1rem .6rem;width:-webkit-fit-content;width:fit-content}.cm-header-right{align-items:center;display:flex;gap:.5rem}.cm-btn-comment{background:#ffffff26;border:1px solid #fff6;border-radius:8px;color:#fff;cursor:pointer;font-family:inherit;font-size:.8rem;padding:.3rem .75rem;transition:background .2s}.cm-btn-comment:hover{background:#ffffff40}.cm-btn-cart{align-items:center;background:#ffffff26;border:1px solid #fff6;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.1rem;height:40px;justify-content:center;position:relative;transition:background .2s;width:40px}.cm-btn-cart:hover{background:#ffffff40}.cm-cart-badge{align-items:center;background:#e74c3c;border-radius:50%;color:#fff;display:flex;font-size:.65rem;font-weight:700;height:18px;justify-content:center;position:absolute;right:-4px;top:-4px;width:18px}.cm-error-bar{background:#fdecea;border-bottom:1px solid #f5c6cb;color:#c0392b}.cm-error-bar,.cm-success-bar{font-size:.875rem;padding:.65rem 1.25rem}.cm-success-bar{background:#d4edda;border-bottom:1px solid #c3e6cb;color:#155724;font-weight:600;text-align:center}.cm-search-bar{background:#fff;border-bottom:1px solid #f0f0f0;padding:.75rem 1.25rem}.cm-search-bar input{border:1.5px solid #dee2e6;border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:.9rem;padding:.6rem 1rem;transition:border-color .2s;width:100%}.cm-search-bar input:focus{border-color:#2c3e50;outline:none}.cm-categories{background:#fff;border-bottom:1px solid #f0f0f0;display:flex;gap:.5rem;overflow-x:auto;padding:.75rem 1.25rem;scrollbar-width:none}.cm-categories::-webkit-scrollbar{display:none}.cm-cat-btn{background:#f4f5f7;border:1.5px solid #dee2e6;border-radius:100px;color:#444;cursor:pointer;flex-shrink:0;font-family:inherit;font-size:.82rem;font-weight:500;padding:.35rem .9rem;transition:background .15s,border-color .15s,color .15s;white-space:nowrap}.cm-cat-btn.active{background:#2c3e50;border-color:#2c3e50;color:#fff}.cm-menu-content{padding:0 0 5rem}.cm-section{margin-bottom:.5rem}.cm-section-title{align-items:center;color:#2c3e50;display:flex;font-size:1.1rem;font-weight:800;gap:.5rem;margin:0;padding:1rem 1.25rem .5rem}.cm-section-title:after{background:linear-gradient(90deg,#2c3e50 0,#0000);border-radius:1px;content:"";flex:1 1;height:2px;opacity:.15}.cm-dishes-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));padding:.75rem 1.25rem}.cm-dish-card{background:#fff;border-radius:14px;box-shadow:0 2px 12px #00000014;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:box-shadow .2s,transform .15s}.cm-dish-card:hover{box-shadow:0 8px 28px #00000024;transform:translateY(-3px)}.cm-day-badge{align-self:flex-start;background:#fff3cd;border-radius:100px;color:#856404;display:inline-block;font-size:.72rem;font-weight:700;margin:.6rem .75rem 0;padding:.15rem .6rem}.cm-dish-img{flex-shrink:0;height:180px;overflow:hidden;width:100%}.cm-dish-img img{display:block;height:100%;object-fit:cover;width:100%}.cm-dish-placeholder{align-items:center;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);color:#ccc;display:flex;font-size:3rem;height:180px;justify-content:center;width:100%}.cm-dish-info{display:flex;flex:1 1;flex-direction:column;padding:1rem}.cm-dish-info h3{color:#2c3e50;flex:1 1;font-size:1rem;font-weight:700;line-height:1.3;margin:0 0 .4rem}.cm-dish-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#888;display:-webkit-box;font-size:.82rem;line-height:1.4;margin:0 0 .6rem;overflow:hidden}.cm-allergens{background:#fff3e0;border-radius:4px;color:#e65100;display:inline-block;font-size:.75rem;margin-bottom:.5rem;padding:.15rem .4rem}.cm-img-source{color:#aaa;font-size:.72rem;font-style:italic;margin-bottom:.5rem}.cm-dish-footer{align-items:center;border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-top:auto;padding-top:.75rem}.cm-price{color:#ff6b35;font-size:1rem;font-weight:700;white-space:nowrap}.cm-btn-add{background:#cce5ff;border:none;border-radius:6px;color:#004085;cursor:pointer;font-family:inherit;font-size:.8rem;font-weight:600;padding:.4rem .9rem;transition:background .15s}.cm-btn-add:hover{background:#b3d7ff}.cm-empty{color:#aaa;font-size:.9rem;grid-column:1/-1;padding:2rem 1.25rem;text-align:center}.cm-modal-overlay{align-items:flex-end;background:#0000008c;display:flex;inset:0;justify-content:center;position:fixed;z-index:200}.cm-modal{background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -8px 40px #0003;max-height:80vh;max-width:560px;overflow-y:auto;padding:1.5rem;width:100%}.cm-modal h2{color:#2c3e50;font-size:1.1rem;margin-bottom:1.25rem}.cm-cart-item-img{align-items:center;aspect-ratio:1;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);border-radius:10px;display:flex;flex-shrink:0;font-size:2rem;justify-content:center;overflow:hidden;width:33%}.cm-cart-item-img img{display:block;height:100%;object-fit:cover;width:100%}.cm-cart-item-info{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.cm-cart-item-name{color:#2c3e50;font-size:.87rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cm-cart-item-sub{color:#888;font-size:.75rem}.cm-cart-item-total{color:#2c3e50;font-size:.87rem;font-weight:700;white-space:nowrap}.cm-cart-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;font-size:.9rem;gap:.5rem;justify-content:space-between;padding:.6rem 0}.cm-cart-item:last-of-type{border-bottom:none}.cm-cart-item button{background:none;border:none;color:#aaa;cursor:pointer;font-size:1rem;padding:0 .25rem;transition:color .15s}.cm-cart-item button:hover{color:#e74c3c}.cm-cart-total{color:#2c3e50;font-size:1rem;font-weight:700;padding:.75rem 0 0;text-align:right}.cm-stars{display:flex;gap:.4rem;justify-content:center;margin-bottom:1rem}.cm-star{color:#ccc;cursor:pointer;font-size:1.8rem;line-height:1;transition:transform .1s}.cm-star.active{color:#f39c12}.cm-star:hover{transform:scale(1.15)}.cm-modal textarea{border:1.5px solid #dee2e6;border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:.9rem;margin-bottom:1rem;min-height:90px;padding:.75rem;resize:vertical;transition:border-color .2s;width:100%}.cm-modal textarea:focus{border-color:#2c3e50;outline:none}.cm-section-title--offers{color:#ff6b35}.cm-section-title--chef{color:#2e7d32}.cm-offer-card{background:#fff;border-radius:14px;box-shadow:0 2px 10px #00000012;display:flex;flex-direction:column;gap:.3rem;padding:.85rem}.cm-offer-card-top{align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between}.cm-offer-title{color:#2c3e50;flex:1 1;font-size:.9rem;font-weight:800;line-height:1.3;margin:0}.cm-offer-desc{color:#888;font-size:.72rem;line-height:1.35;margin:0}.cm-offer-courses-inline{display:flex;flex-direction:column;gap:.2rem;margin-top:.25rem}.cm-offer-course-line{display:flex;flex-direction:column;font-size:.7rem}.cm-offer-course-label{color:#2c3e50;font-size:.6rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.cm-offer-course-dishes{color:#666;line-height:1.25}.embed-root{background:#fff;font-family:sans-serif;margin:0 auto;max-width:960px;padding:16px}.embed-title{color:#2c3e50;font-size:1.4rem;margin-bottom:12px}.embed-error{color:red}.embed-search{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;font-size:.95rem;margin-bottom:12px;padding:8px 12px;width:100%}.embed-categories{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.embed-cat{background:#fff;border:1px solid #ff6b35;border-radius:20px;color:#ff6b35;cursor:pointer;font-size:.85rem;padding:6px 14px}.embed-cat.active{background:#ff6b35;color:#fff}.embed-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.embed-card{background:#fff;border:1px solid #eee;border-radius:10px;box-shadow:0 2px 6px #0000000f;overflow:hidden;position:relative}.embed-day-badge{background:#ff6b35;border-radius:12px;color:#fff;font-size:.7rem;left:8px;padding:2px 8px;position:absolute;top:8px}.embed-img{height:130px;object-fit:cover;width:100%}.embed-img-placeholder{align-items:center;background:#f5f5f5;display:flex;font-size:2rem;height:130px;justify-content:center;width:100%}.embed-card-body{padding:10px}.embed-card-body h4{color:#2c3e50;font-size:.95rem;margin:0 0 4px}.embed-card-body p{color:#666;font-size:.82rem;margin:0 0 4px}.embed-allergens{color:#e67e22;font-size:.78rem!important}.embed-source{color:#aaa;font-size:.75rem!important;font-style:italic}.embed-price{color:#ff6b35;display:block;font-size:1rem;font-weight:700;margin-top:6px}.embed-empty{color:#999;grid-column:1/-1;padding:24px;text-align:center}
/*# sourceMappingURL=main.83d63f76.css.map*/