:root{color-scheme:light;--bg: #f4f5f7;--card: #ffffff;--text: #1c2330;--muted: #6b7280;--accent: #2563eb;--accent-hover: #1d4ed8;--danger: #dc2626;--border: #e2e5ea}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:15px;line-height:1.45}#root{max-width:560px;margin:0 auto;padding:16px}h1{font-size:22px;margin:8px 0 4px}h2{font-size:17px;margin:24px 0 10px}.subtitle{color:var(--muted);margin:0 0 20px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:12px}label{display:block;font-size:13px;color:var(--muted);margin:12px 0 4px}input,select{width:100%;padding:10px 12px;font-size:15px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text)}input:focus,select:focus{outline:2px solid rgba(37,99,235,.35);border-color:var(--accent)}.coords{display:flex;gap:8px}.coords>div{flex:1}button{display:inline-block;width:100%;margin-top:16px;padding:12px;font-size:15px;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:8px;cursor:pointer}button:hover:not(:disabled){background:var(--accent-hover)}button:disabled{opacity:.55;cursor:default}button.secondary{background:transparent;color:var(--accent);border:1px solid var(--accent)}button.secondary:hover:not(:disabled){background:#2563eb14}button.danger{background:transparent;color:var(--danger);border:1px solid var(--danger);width:auto;margin-top:8px;padding:6px 12px;font-size:13px}button.danger:hover:not(:disabled){background:#dc262614}.error{background:#fef2f2;border:1px solid #fecaca;color:var(--danger);border-radius:8px;padding:10px 12px;margin-top:12px;font-size:14px}.dev-hint{margin-top:8px;font-size:13px;color:var(--muted)}.dev-hint code{background:#eef2ff;color:var(--accent);padding:2px 6px;border-radius:4px}.header-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.logout{width:auto;margin:0;padding:6px 12px;font-size:13px;background:transparent;color:var(--muted);border:1px solid var(--border)}.ride-row{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.ride-addr{font-weight:600}.ride-meta{color:var(--muted);font-size:13px;margin-top:4px}.ride-price{font-weight:700;white-space:nowrap}.chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#eef2ff;color:var(--accent)}.chip.done{background:#ecfdf5;color:#059669}.chip.cancelled{background:#f3f4f6;color:var(--muted)}.empty{color:var(--muted);text-align:center;padding:24px 0}.mode-switch{display:flex;gap:8px;margin-top:4px}.mode-switch button{margin-top:0;background:#eef2ff;color:var(--accent);font-weight:600}.mode-switch button.active{background:var(--accent);color:#fff}.mode-switch button:hover:not(:disabled):not(.active){background:#e0e7ff}.hint{margin-top:6px;font-size:13px;color:var(--muted)}.chip.scheduled{background:#fff7ed;color:#c2410c}.confirm-title{font-weight:700;font-size:16px;margin-bottom:8px}.confirm-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--border);font-size:14px}.confirm-row span{color:var(--muted);white-space:nowrap}.confirm-row b{text-align:right}.confirm-note{margin-top:10px;font-size:13px;color:var(--muted)}.confirm-price{font-size:24px;font-weight:700;margin-top:12px}.warning{background:#fffbeb;border:1px solid #fde68a;color:#b45309;border-radius:8px;padding:10px 12px;margin-top:12px;font-size:14px;font-weight:600}.trip-switch{margin-bottom:12px}.group-leg{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.group-actions{display:flex;gap:8px;flex-wrap:wrap}button.small{width:auto;margin-top:8px;padding:6px 12px;font-size:13px}.card:target{border-color:var(--accent);box-shadow:0 0 0 2px #2563eb40}.chip.discount{background:#ecfdf5;color:#059669;white-space:nowrap;align-self:flex-start}.offer-price{display:flex;align-items:baseline;gap:10px;margin-top:10px}.offer-price .confirm-price{margin-top:0}.price-old{color:var(--muted);font-size:14px}.route-match{border-top:1px solid var(--border);margin-top:10px;padding-top:10px}.route-match .confirm-title{margin-bottom:0}.driver-box{margin-top:10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#f8fafc}.driver-name{font-weight:700;font-size:15px}.driver-vehicle{margin-top:2px;font-size:14px;color:var(--muted)}.driver-plate{margin-top:4px;display:inline-block;padding:2px 10px;border:1px solid var(--border);border-radius:6px;background:#fff;font-weight:700;letter-spacing:1px}.ride-meta.stage{margin-top:8px;font-weight:600}.no-driver-box{margin-top:10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#fff7ed}
