:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,Noto Sans Arabic,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(180deg, var(--bg-top) 0%, var(--bg-mid) 48%, var(--bg-bot) 100%) no-repeat;min-height:100vh;color:var(--text);background-attachment:fixed;margin:0}main{flex-direction:column;gap:14px;max-width:460px;min-height:100vh;margin:0 auto;padding:16px;display:flex}header{justify-content:space-between;align-items:center;gap:12px;display:flex}header h1{color:var(--on-bg);margin:0;font-size:1.4rem}.lang{gap:4px;display:flex}.lang button{cursor:pointer;color:var(--on-bg);background:#ffffff24;border:1px solid #fff6;border-radius:8px;padding:4px 10px}.lang button.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.card{background:var(--card);border:1px solid var(--card-border);text-align:center;box-shadow:var(--card-shadow);border-radius:16px;padding:22px}.on-bg{color:var(--on-bg)}.serving{margin:4px 0;font-size:1.1rem}.serving b{font-size:1.3rem}.muted{color:var(--muted);margin:4px 0;font-size:.92rem}.addr{text-align:center}.track .label{color:var(--muted);margin:0}.big{color:var(--link);margin:6px 0;font-size:3.4rem;font-weight:800;line-height:1.1}.ahead{margin:4px 0;font-size:1.05rem}.turn{color:var(--ok);margin:10px 0;font-size:1.4rem;font-weight:800}.closed-msg{color:var(--warn);font-size:1.05rem}.state{color:var(--warn);margin:14px 0 0;font-size:1.1rem;font-weight:700}.state.closed{color:var(--muted)}.form{flex-direction:column;gap:10px;margin-top:14px;display:flex}.form input{border:1px solid var(--card-border);background:var(--field);color:var(--text);border-radius:10px;padding:12px 14px;font-size:1rem}.form input::placeholder{color:var(--placeholder)}.recover{margin-top:8px}button.primary{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:none;border-radius:10px;padding:13px;font-size:1.05rem;font-weight:700}button.primary:disabled{opacity:.6}button.link{color:var(--link);cursor:pointer;background:0 0;border:none;margin-top:10px;font-size:.95rem;text-decoration:underline}button.link.on-bg{color:var(--on-bg)}.directions{text-align:center;background:var(--card);border:1px solid var(--border);color:var(--link);border-radius:12px;padding:12px;font-weight:600;text-decoration:none;display:block}.banner{background:var(--ok);color:var(--ok-ink);width:100%;font:inherit;text-align:center;cursor:pointer;border:none;border-radius:12px;padding:12px 14px;font-weight:700}.error{color:var(--error);margin:2px 0;font-size:.9rem}.nudge{border:1px solid var(--card-border);color:var(--on-bg);background:#ffffff14;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;font-size:.88rem;display:flex}.nudge span{flex:1;min-width:140px}.btn-sm{background:var(--accent);color:var(--accent-ink);cursor:pointer;border:none;border-radius:8px;padding:6px 12px;font-size:.85rem;text-decoration:none}.btn-sm.ghost{color:var(--muted);background:0 0}.hours{text-align:start}.hours h3{text-align:center;margin:0 0 8px;font-size:1rem}.hour-row{border-top:1px solid var(--border);justify-content:space-between;padding:5px 2px;font-size:.95rem;display:flex}.hour-row:first-of-type{border-top:none}.hour-row.today{color:var(--link);font-weight:700}.info{text-align:center;padding:16px}.info .desc{color:var(--muted);margin:0 0 8px;line-height:1.5}.info .contact{margin:0;font-size:.95rem}.info .contact a{color:var(--link);font-weight:600;text-decoration:none}.section-title{text-align:center;color:var(--on-bg);margin:18px 0 4px;font-size:1.1rem}.choose{text-align:start;color:var(--on-bg-muted);margin:4px 2px;font-size:.9rem}.no-slots{color:#92400e;text-align:center;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin:6px 0;padding:12px 14px;font-size:.92rem}.day-card{background:var(--card);border:1px solid var(--border);cursor:pointer;width:100%;font:inherit;color:var(--text);text-align:start;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:8px 0;padding:14px 16px;display:flex}.day-card:disabled{cursor:default;opacity:.65}.day-left{flex-direction:column;gap:4px;display:flex}.day-head{align-items:center;gap:8px;display:flex}.day-name{font-size:1.05rem;font-weight:700}.day-date{color:var(--muted);font-size:.85rem}.day-hours{color:var(--text);white-space:nowrap;font-size:.95rem}.badge{border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:700}.full-badge{color:#b91c1c;background:#fee2e2}.ok-badge{color:#166534;background:#dcfce7}.wait-badge{color:#3730a3;background:#e0e7ff}.track{position:relative}.back-btn{top:12px;position:absolute;inset-inline-start:12px}.footer{text-align:center;margin-top:24px;padding:12px}.footer a{color:var(--on-bg-muted);font-size:.85rem}.book-form{margin:-2px 0 10px}.book-actions{align-items:center;gap:8px;display:flex}.book-actions .primary{flex:1}.booked-card{text-align:center}.my-bookings{text-align:start}.my-bookings h3{text-align:center;margin:0 0 8px;font-size:1rem}.my-booking{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 2px;display:flex}.my-booking:first-of-type{border-top:none}.ad-slot{min-height:60px;margin-top:auto}.tagline{text-align:center;opacity:.85;margin:-2px 0 14px;font-size:1rem}.landing{text-align:start}.landing .lead{color:var(--text);text-align:center;margin:0 0 18px;font-size:1.05rem;line-height:1.55}.landing h2{color:var(--link);text-align:center;margin:0 0 14px;font-size:1.05rem}.landing .steps{counter-reset:step;gap:14px;margin:0;padding:0;list-style:none;display:grid}.landing .steps li{counter-increment:step;align-items:flex-start;gap:12px;display:flex}.landing .steps li:before{content:counter(step);background:var(--accent);height:28px;color:var(--accent-ink);border-radius:50%;flex:0 0 28px;place-items:center;font-size:.9rem;font-weight:700;display:grid}.landing .step-body b{color:var(--text);margin-bottom:2px;display:block}.landing .step-body span{color:var(--muted);font-size:.9rem;line-height:1.45}.landing .owners{border-top:1px solid var(--card-border);margin-top:18px;padding-top:14px}.landing .owners b{color:var(--text)}.landing .owners p{margin:4px 0 0}.landing .hint{text-align:center;margin-top:16px;font-size:.85rem}
