:root{--bg:#050606;--surface:#0b0d0a;--card:#10120f;--border:#20251b;--primary:#a6ff00;--primary-dark:#7ed600;--text:#f5f5f5;--text-muted:#9a9a9a;--danger:#ff4d4d;--warning:#ffb020;--radius:12px;--sidebar-width:240px;--header-height:64px;color:var(--text);background:var(--bg);font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#root{background:var(--bg);min-height:100vh;margin:0}html[dir=rtl] body{text-align:right}html[dir=rtl] .sidebar{border-right:none;border-left:1px solid var(--border);left:auto;right:0;transform:translate(100%)}html[dir=rtl] .sidebar.open{transform:translate(0)}html[dir=rtl] .main-area{margin-left:0}html[dir=rtl] .items-table th,html[dir=rtl] .items-table td{text-align:right}html[dir=rtl] .detail-row{flex-direction:row-reverse}html[dir=rtl] .back-link svg{transform:scaleX(-1)}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-width);background:var(--surface);border-right:1px solid var(--border);z-index:100;flex-direction:column;padding:1.25rem 1rem;transition:transform .2s;display:flex;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:90;background:#0000008c;display:none;position:fixed;inset:0}.sidebar-overlay.visible{display:block}.brand{color:var(--primary);letter-spacing:.02em;margin-bottom:2rem;font-size:1.1rem;font-weight:700}.brand span{color:var(--text-muted);font-size:.75rem;font-weight:400;display:block}.nav-link{color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.6rem;width:100%;margin-bottom:.25rem;padding:.65rem .75rem;display:flex}.nav-link:hover,.nav-link.active{color:var(--primary);background:#a6ff0014}.main-area{flex-direction:column;flex:1;min-width:0;margin-left:0;display:flex}.app-header{height:var(--header-height);border-bottom:1px solid var(--border);background:var(--surface);z-index:50;justify-content:space-between;align-items:center;gap:1rem;padding:0 1rem;display:flex;position:sticky;top:0}.header-left{align-items:center;gap:.75rem;display:flex}.menu-btn{background:var(--card);border:1px solid var(--border);color:var(--text);cursor:pointer;border-radius:8px;padding:.4rem .5rem;display:inline-flex}.header-title{font-size:1rem;font-weight:600}.header-meta{color:var(--text-muted);font-size:.75rem}.header-actions{align-items:center;gap:.65rem;display:flex}.notification-bell{background:var(--card);border:1px solid var(--border);width:2.25rem;height:2.25rem;color:var(--text);border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:border-color .2s,color .2s;display:inline-flex;position:relative}.notification-bell:hover{color:var(--primary);border-color:#a6ff0066}.notification-bell-badge{top:-4px;background:var(--primary);min-width:1.1rem;height:1.1rem;color:var(--bg);border-radius:999px;justify-content:center;align-items:center;padding:0 .2rem;font-size:.65rem;font-weight:700;line-height:1;display:inline-flex;position:absolute;inset-inline-start:-4px;box-shadow:0 0 8px #a6ff0080}.live-pill{color:var(--primary);background:#a6ff001a;border:1px solid #a6ff0040;border-radius:999px;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;display:inline-flex}.live-dot{background:var(--primary);border-radius:50%;width:6px;height:6px;animation:1.5s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.page-content{flex:1;padding:1.25rem}.page-title{margin:0 0 1rem;font-size:1.5rem}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.stat-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1rem}.stat-label{color:var(--text-muted);margin-bottom:.35rem;font-size:.75rem}.stat-value{color:var(--primary);font-size:1.5rem;font-weight:700}.tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.tab{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:.45rem .85rem;font-size:.85rem}.tab.active{border-color:var(--primary);color:var(--primary);background:#a6ff0014}.orders-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.orders-list{flex-direction:column;gap:.75rem;display:flex}.order-row{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;grid-template-columns:1fr;gap:.75rem;padding:1rem;transition:border-color .15s;display:grid}.order-row:hover{border-color:#a6ff0059}.order-row-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.order-id{font-family:ui-monospace,monospace;font-weight:600}.order-meta{color:var(--text-muted);font-size:.85rem}.order-actions{flex-wrap:wrap;gap:.5rem;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.35rem;padding:.5rem .9rem;font-size:.85rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#050606}.btn-primary:hover:not(:disabled){background:var(--primary-dark)}.btn-danger{color:var(--danger);background:#ff4d4d26;border:1px solid #ff4d4d66}.btn-ghost{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn-sm{padding:.35rem .65rem;font-size:.8rem}.badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:.2rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.badge-pending{color:var(--warning);background:#ffb02026}.badge-accepted{color:var(--primary);background:#a6ff001f}.badge-preparing{color:var(--warning);background:#ffb02026}.badge-ready{color:var(--primary-dark);background:#7ed60026}.badge-rejected{color:var(--danger);background:#ff4d4d1f}.badge-completed{color:var(--text-muted);background:#9a9a9a26}.badge-picked-up{color:#8ec5ff;background:#64b4ff1f;border:1px solid #64b4ff40}.badge-on-the-way{color:var(--primary);background:#a6ff0026;border:1px solid #a6ff0059}.badge-delivered{color:var(--primary-dark);background:#7ed60033;border:1px solid #7ed60066}.badge-default{color:var(--text-muted);background:#9a9a9a1f}.loading-state,.empty-state{text-align:center;color:var(--text-muted);padding:3rem 1rem}.loading-state svg,.empty-state svg{color:var(--primary);margin-bottom:.75rem}.spin-icon{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-page{background:radial-gradient(ellipse at top, #a6ff000f, transparent 55%), var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:400px;padding:2rem}.login-brand{text-align:center;margin-bottom:1.75rem}.login-brand h1{color:var(--primary);margin:0;font-size:1.75rem}.login-brand p{color:var(--text-muted);margin:.35rem 0 0;font-size:.9rem}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-muted);margin-bottom:.35rem;font-size:.85rem;display:block}.form-group input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:8px;padding:.65rem .75rem}.form-group input:focus{border-color:var(--primary);outline:none}.form-error{color:var(--danger);margin-bottom:1rem;font-size:.85rem}.password-change-warning{color:var(--warning);background:#ffb0201f;border:1px solid #ffb02059;border-radius:8px;margin-bottom:1rem;padding:.75rem .85rem;font-size:.88rem;line-height:1.5}.change-password-card{max-width:420px}.change-password-logout{justify-content:center;width:100%;margin-top:.75rem}.detail-grid{gap:1rem;display:grid}.detail-section h3{color:var(--text-muted);margin:0 0 .75rem;font-size:.95rem}.detail-row{justify-content:space-between;gap:1rem;padding:.4rem 0;font-size:.9rem;display:flex}.detail-row span:first-child{color:var(--text-muted)}.items-table{border-collapse:collapse;width:100%;font-size:.9rem}.items-table th,.items-table td{text-align:left;border-bottom:1px solid var(--border);padding:.6rem .5rem}.items-table th{color:var(--text-muted);font-size:.8rem;font-weight:500}.back-link{color:var(--text-muted);align-items:center;gap:.35rem;margin-bottom:1rem;font-size:.9rem;display:inline-flex}.back-link:hover{color:var(--primary)}.badge-driver-assigned{color:var(--primary);background:#7ed6002e}.order-actions-col{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.driver-hint{max-width:240px;margin:0;line-height:1.45}.modal-overlay{z-index:200;background:#000000b8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:520px;max-height:85vh;padding:1.25rem;overflow:auto}.modal-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.modal-header h2{margin:0;font-size:1.15rem}.modal-close{border:1px solid var(--border);color:var(--text);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:.35rem}.modal-footer{justify-content:flex-end;margin-top:1rem;display:flex}.modal-empty{text-align:center;padding:1.5rem 0}.driver-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.driver-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.85rem;display:flex}.driver-card-main{flex-direction:column;flex:1;gap:.35rem;min-width:0;display:flex}.driver-badges{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.driver-alert{border:1px solid var(--border);background:var(--surface);border-radius:8px;margin-top:.5rem;padding:.65rem .75rem}.driver-alert--compact{margin-top:.35rem;padding:.5rem .65rem}.driver-alert--rejected{background:#ff4d4d14;border-color:#ff4d4d73}.driver-alert--pending{background:#ffb0200f;border-color:#ffb02059}.driver-alert--accepted{background:#a6ff000f;border-color:#a6ff0059}.driver-alert__title{color:var(--danger);margin:.35rem 0 .15rem;font-weight:600}.driver-hint--warn{color:var(--warning)}.order-row--rejected{border-color:#ff4d4d59}.order-status-header{flex-direction:column;gap:.5rem;display:flex}.delivery-status-block{margin-top:.35rem}.delivery-status-label{color:var(--primary);margin:0;font-size:.9rem;font-weight:600}.delivery-hint{color:var(--text-muted);margin:.15rem 0 0}.restaurant-settings-page{max-width:820px}.restaurant-settings-subtitle{margin:-.35rem 0 1.25rem}.restaurant-settings-unavailable{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:.75rem;padding:2rem;display:flex}.restaurant-branding-grid{gap:1rem;display:grid}@media (width>=720px){.restaurant-branding-grid{grid-template-columns:280px 1fr;align-items:start}}.restaurant-branding-section h2{margin:0 0 .85rem;font-size:1rem}.restaurant-logo-preview{border:1px solid var(--border);background:var(--surface);border-radius:16px;width:140px;height:140px;margin-bottom:.75rem;overflow:hidden}.restaurant-logo-preview img{object-fit:cover;width:100%;height:100%}.restaurant-cover-preview{aspect-ratio:16/7;border:1px solid var(--border);background:var(--surface);border-radius:12px;width:100%;margin-bottom:.75rem;overflow:hidden}.restaurant-cover-preview img{object-fit:cover;width:100%;height:100%}.restaurant-branding-placeholder{height:100%;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.35rem;padding:.5rem;font-size:.8rem;display:flex}.branding-upload-btn{cursor:pointer;margin-bottom:.75rem}.restaurant-settings-actions{justify-content:flex-end;margin-top:1.25rem;display:flex}.opening-hours-page{max-width:720px}.opening-hours-intro{margin:-.5rem 0 1.25rem}.opening-hours-status{border-width:1px;margin-bottom:1rem;padding:1.1rem 1.15rem}.opening-hours-status--open{background:#a6ff000f;border-color:#a6ff0073}.opening-hours-status--closed{background:#ffb0200f;border-color:#ffb02066}.opening-hours-status__header{color:var(--primary);align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.opening-hours-status--closed .opening-hours-status__header{color:var(--warning)}.opening-hours-status__label{margin:0;font-size:1.15rem;font-weight:700}.opening-hours-status__details p{margin:.35rem 0}.opening-hours-status__key{color:var(--text-muted)}.opening-hours-status__reason{color:var(--warning);font-size:.9rem}.opening-hours-schedule h2{margin:0 0 .75rem;font-size:1rem}.opening-hours-schedule__header{margin-bottom:1rem}.opening-hours-timezone{max-width:280px;margin-bottom:0}.opening-hours-rows{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.opening-hours-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:1fr;gap:.5rem;padding:.85rem;display:grid}@media (width>=600px){.opening-hours-row{grid-template-columns:120px 1fr;align-items:start}}.opening-hours-row__day{cursor:pointer;align-items:center;gap:.5rem;font-weight:600;display:flex}.opening-hours-row__day input{accent-color:var(--primary);width:1rem;height:1rem}.opening-hours-row__times{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}.opening-hours-row__times .form-group{margin-bottom:0}.opening-hours-overnight{color:var(--warning);grid-column:1/-1;margin:0;font-size:.8rem}.opening-hours-actions{flex-wrap:wrap;justify-content:flex-end;gap:.65rem;margin-top:1.25rem;display:flex}.opening-hours-row input[type=time]{border:1px solid var(--border);background:var(--card);width:100%;color:var(--text);border-radius:8px;padding:.55rem .65rem}.opening-hours-row input[type=time]:disabled{opacity:.45}.menu-page-header{margin-bottom:.5rem}.menu-tabs{margin-bottom:1.25rem}.menu-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.menu-toolbar--end{justify-content:flex-end}.menu-filters{flex-wrap:wrap;flex:1;gap:.5rem;min-width:200px;display:flex}.search-field{border:1px solid var(--border);background:var(--surface);min-width:180px;color:var(--text-muted);border-radius:8px;flex:1;align-items:center;gap:.5rem;padding:.45rem .75rem;display:flex}.search-field input{color:var(--text);background:0 0;border:none;flex:1;min-width:0;padding:0}.search-field input:focus{outline:none}.menu-select,.form-group select,.form-group textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:8px;padding:.65rem .75rem}.menu-select{width:auto;min-width:160px}.form-group textarea{resize:vertical;min-height:4rem}.form-group select:focus,.form-group textarea:focus,.menu-select:focus{border-color:var(--primary);outline:none}.form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=520px){.form-row{grid-template-columns:1fr}}.form-check{cursor:pointer;align-items:center;gap:.5rem;margin:.75rem 0 1rem;font-size:.9rem;display:flex}.form-check input{accent-color:var(--primary);width:1rem;height:1rem}.form-check--inline{align-self:end;margin-bottom:1rem}.menu-modal{max-width:560px}.menu-products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.menu-product-card{flex-direction:column;padding:0;display:flex;overflow:hidden}.menu-product-card__media{aspect-ratio:16/10;background:var(--surface);border-bottom:1px solid var(--border);position:relative}.menu-product-card__media img{object-fit:cover;width:100%;height:100%;display:block}.menu-product-card__placeholder{height:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:.85rem;display:flex}.menu-product-card__media .badge-offer{position:absolute;top:.5rem;right:.5rem}html[dir=rtl] .menu-product-card__media .badge-offer{left:.5rem;right:auto}.menu-product-card__body{flex-direction:column;gap:.35rem;padding:1rem;display:flex}.menu-product-card__body h3{margin:0;font-size:1rem}.menu-product-prices{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.price-regular{color:var(--text);font-weight:700}.price-old{color:var(--text-muted);font-size:.85rem;text-decoration:line-through}.price-discount{color:var(--primary);font-weight:700}.badge-offer{color:var(--warning);background:#ffb0202e;border:1px solid #ffb02066}.menu-product-actions{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}.availability-switch{cursor:pointer;align-items:center;gap:.5rem;margin-top:.35rem;display:flex}.availability-switch input{accent-color:var(--primary)}.availability-label{color:var(--text-muted);font-size:.85rem}.availability-label--on{color:var(--primary)}.menu-categories-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.menu-category-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.menu-category-row--inactive{opacity:.65;border-color:#9a9a9a59}.image-upload-block{flex-wrap:wrap;align-items:flex-start;gap:1rem;display:flex}.product-image-preview{border:1px solid var(--border);background:var(--surface);border-radius:8px;flex-shrink:0;width:120px;height:90px;overflow:hidden}.product-image-preview img{object-fit:cover;width:100%;height:100%}.image-placeholder{height:100%;color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;padding:.25rem;font-size:.72rem;display:flex}.image-upload-btn{cursor:pointer;margin-bottom:.35rem}.menu-empty-categories{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;padding:1rem;display:flex}.menu-empty-categories p{color:var(--text-muted);margin:0}.menu-category-empty{border:1px dashed var(--border);background:var(--surface);border-radius:8px;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.form-success{color:var(--primary);margin-bottom:1rem;font-size:.85rem}@media (width>=768px){.sidebar,html[dir=rtl] .sidebar{transform:translate(0)}.sidebar-overlay{display:none!important}.menu-btn{display:none}.main-area{margin-left:var(--sidebar-width)}html[dir=rtl] .main-area{margin-left:0;margin-right:var(--sidebar-width)}.order-row{grid-template-columns:1fr auto;align-items:center}}@media (width>=1024px){.detail-grid{grid-template-columns:1fr 1fr}}.notifications-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.notifications-page-header .page-title{margin-bottom:0}.notifications-list{flex-direction:column;gap:.65rem;display:flex}.notification-card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:1rem;transition:border-color .2s,box-shadow .2s}.notification-card:hover{border-color:#a6ff0059}.notification-card--unread{box-shadow:inset 3px 0 0 var(--primary);background:#a6ff000a;border-color:#a6ff0073}.notification-card-header{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.notification-card-title{color:var(--text);margin:0;font-size:1rem;font-weight:600}.notification-card-body{color:var(--text-muted);margin:.5rem 0 0;font-size:.875rem;line-height:1.5}.notification-card-time{color:var(--text-muted);margin-top:.65rem;font-size:.75rem;display:block}.notification-mark-read{flex-shrink:0}.notification-toast{z-index:200;background:var(--card);color:var(--primary);cursor:pointer;border:1px solid #a6ff0073;border-radius:999px;padding:.65rem 1.25rem;font-size:.875rem;animation:.25s ease-out notification-toast-in;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000073}@keyframes notification-toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}
