*{box-sizing:border-box}:root{--bg:#f5f6fb;--card:#fff;--ink:#111827;--mute:#6b7280;--pri:#4f46e5;--pri2:#eef2ff;--ok:#059669;--warn:#d97706;--bad:#dc2626;--line:#e5e7eb}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink)}.wrap{max-width:560px;margin:0 auto;padding:20px 16px 40px}.foot{text-align:center;color:var(--mute);font-size:12px;padding-bottom:24px}h1{font-size:24px;margin:4px 0}h2{font-size:18px;margin:0 0 10px}.sub{color:var(--mute);margin:0 0 18px;font-size:14px}.card{background:var(--card);border-radius:16px;padding:18px;box-shadow:0 1px 3px rgba(0,0,0,.06);margin-bottom:14px;border:1px solid var(--line)}label{display:block;font-size:13px;font-weight:600;margin:12px 0 6px}input,select{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:12px;font-size:16px;background:#fff}input:focus{outline:2px solid var(--pri);border-color:transparent}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:13px 16px;border-radius:12px;border:0;background:var(--pri);color:#fff;font-weight:700;font-size:16px;cursor:pointer;text-decoration:none;width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.ghost{background:var(--pri2);color:var(--pri)}.btn.ok{background:var(--ok)}.btn.warn{background:var(--warn)}.btn.bad{background:var(--bad)}.btn.sm{padding:8px 10px;font-size:13px;width:auto;border-radius:10px}.row{display:flex;gap:10px}.row>*{flex:1 1}.sess{display:grid;grid-gap:10px;gap:10px}.opt{border:2px solid var(--line);border-radius:14px;padding:14px;cursor:pointer;background:#fff;text-align:left;font:inherit;color:inherit;display:flex;justify-content:space-between;align-items:center;width:100%}.opt.sel{border-color:var(--pri);background:var(--pri2)}.opt:disabled{opacity:.45;cursor:not-allowed}.opt b{font-size:16px}.small{font-size:13px}.pill,.small{color:var(--mute)}.pill{display:inline-block;padding:3px 9px;border-radius:99px;font-size:12px;font-weight:700;background:#f3f4f6}.pill.waiting{background:#fef3c7;color:#92400e}.pill.serving{background:#dcfce7;color:#166534}.pill.served{background:#e0e7ff;color:#3730a3}.pill.closed,.pill.skipped{background:#fee2e2;color:#991b1b}.pill.open{background:#dcfce7;color:#166534}.big{font-size:72px;font-weight:800;line-height:1;color:var(--pri);margin:6px 0}.center{text-align:center}.err{color:var(--bad)}.err,.msg{font-size:14px;margin-top:10px}.msg{color:var(--ok)}.grid3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.stat{background:var(--pri2);border-radius:12px;padding:12px;text-align:center}.stat .v{font-size:28px;font-weight:800;color:var(--pri)}.stat .k{font-size:12px;color:var(--mute)}.tabs{display:flex;gap:6px;background:#e5e7eb;padding:4px;border-radius:12px;margin-bottom:14px}.tabs button{flex:1 1;border:0;background:transparent;padding:10px;border-radius:9px;font-weight:700;font-size:14px;cursor:pointer;color:var(--mute)}.tabs button.on{background:#fff;color:var(--ink);box-shadow:0 1px 2px rgba(0,0,0,.1)}.tok{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);gap:8px}.tok:last-child{border-bottom:0}.tok .n{font-weight:800;font-size:18px;width:44px}.links a{display:block;color:var(--pri);margin:6px 0;font-weight:600}.live{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ok);font-weight:700}.live:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok);animation:p 1.5s infinite}@keyframes p{50%{opacity:.3}}@media print{.noprint{display:none!important}body{background:#fff}.card{box-shadow:none;border:0}.foot{display:none}}.wm{font-weight:800;letter-spacing:-.5px;color:#111827}.wm span{color:#fff;background:#4f46e5;border-radius:8px;padding:0 .22em;margin-left:2px}.brandbar{max-width:560px;margin:0 auto;padding:14px 16px 0}.brandbar .wm{font-size:22px;text-decoration:none}.tag{font-size:18px;font-weight:700;color:#4f46e5;margin:4px 0 8px}@media print{.brandbar{display:none}}.map{width:100%;border-radius:12px;overflow:hidden;background:#e5e7eb;z-index:0}.mpin{width:22px;height:22px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.4)}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.chips button{border:1px solid var(--line);background:#fff;border-radius:99px;padding:7px 12px;font-weight:600;font-size:13px;cursor:pointer;color:var(--mute)}.chips button.on{background:var(--pri);color:#fff;border-color:var(--pri)}.dist{font-weight:800;color:var(--pri);white-space:nowrap;font-size:18px}.minis{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:6px;gap:6px;margin:12px 0}.minis>div{background:var(--pri2);border-radius:10px;padding:8px;font-size:12px;display:flex;flex-direction:column;gap:2px}.minis>div.off{background:#f3f4f6;color:var(--mute)}.minis b{font-size:13px}.btn.sm2{padding:10px 12px;font-size:15px}.hero h1{font-size:26px;line-height:1.2;margin:8px 0 6px}.brandbar{display:flex;justify-content:space-between;align-items:center}.brandbar nav a{color:var(--pri);font-weight:600;font-size:14px;text-decoration:none;margin-left:14px}select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.idbar{display:flex;justify-content:space-between;align-items:center;background:#eef2ff;border-radius:12px;padding:8px 14px;margin-bottom:12px}.idbar b{font-size:22px;letter-spacing:1px}.recov{border:2px solid #4f46e5}.bigid{font-size:34px;font-weight:800;letter-spacing:2px;color:#4f46e5}.bigid.sm{font-size:18px;letter-spacing:1px}.code{font-family:ui-monospace,monospace;font-size:22px;font-weight:700;letter-spacing:2px;margin:4px 0 8px}.warn{background:#fef3c7;color:#92400e;border-radius:10px;padding:10px 12px;margin-top:12px;font-size:14px}.empty{text-align:center}.linkbtn{background:none;border:0;color:#4f46e5;text-decoration:underline;padding:0;font:inherit;cursor:pointer}.btn.danger{background:#dc2626;color:#fff}.foot{position:relative;z-index:1}.sa-link{display:inline-block;margin-top:8px;padding:10px 14px;min-height:44px;line-height:24px;color:var(--pri);font-size:14px;font-weight:500;text-decoration:none}.sa-link:focus,.sa-link:hover{text-decoration:underline}.satable{width:100%;border-collapse:collapse;font-size:13px}.satable td,.satable th{padding:6px 4px;border-bottom:1px solid #eee;text-align:left;vertical-align:top}.holiday{display:inline-block;background:#fef3c7;color:#92400e;border:1px solid #f59e0b;border-radius:999px;padding:4px 12px;font-weight:700;font-size:14px}.holiday.big-h{display:block;border-radius:14px;padding:14px 16px;font-size:18px;text-align:center;margin:12px 0}