:root{color-scheme:light;--bg: #f4f3fb;--card: #ffffff;--line: #e7e4f5;--text: #1b1733;--muted: #7b7796;--accent: #5b3df5;--accent-soft: #ece8ff;--danger: #d64550;--ok: #1f9d63;--shadow: 0 8px 24px rgba(37, 24, 92, .07);font-family:PT Root UI,Segoe UI,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;color:var(--text);background:radial-gradient(900px 280px at 50% 100%,rgba(91,61,245,.1),transparent 70%),var(--bg)}body{padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.wrap{max-width:430px;margin:0 auto;padding:12px 12px 140px}h1{font-size:24px;margin:0 0 4px}h2{font-size:17px;margin:0 0 12px}p{color:var(--muted);line-height:1.45;margin:8px 0}small{color:var(--muted)}.head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.logo{width:44px;height:44px;border-radius:14px;background:var(--accent);color:#fff;display:grid;place-items:center;flex:none}.head .name{font-size:18px;font-weight:800;line-height:1.1}.head .sub{font-size:13px;color:var(--muted)}.card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px;margin-bottom:12px;box-shadow:var(--shadow)}.card.soft{background:var(--accent-soft);border-color:transparent;box-shadow:none}.card.plain{box-shadow:none}.card.sub{box-shadow:none;margin:12px 0;background:var(--bg)}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:10px 0}.lbl{color:var(--muted)}.hint{font-size:13px;margin-top:-4px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 12px}.chip{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer}.chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.val{font-weight:700;text-align:right}.hero{display:flex;align-items:center;gap:14px}.hero .big{font-size:26px;font-weight:800;letter-spacing:.5px}.avatar{width:52px;height:52px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;flex:none;object-fit:cover}.fio{display:flex;align-items:center;gap:10px;min-width:0;flex:1;text-align:left}.fio .val{text-align:left;line-height:1.25}h1.fio{margin:0 0 12px;font-size:22px;font-weight:800}.chat-head{display:flex;align-items:center;justify-content:flex-start;gap:8px;font-weight:700;text-align:left;white-space:nowrap;font-size:14px;margin:2px 0 10px}.chat-head svg{flex:none;color:var(--accent)}.money{font-size:26px;font-weight:800}.chat-line{display:flex;gap:10px;align-items:baseline;background:#fff;border-radius:14px;padding:10px 12px;margin-top:8px;text-align:left}.chat-line .who{font-size:12px;font-weight:700;color:var(--muted);flex:none;min-width:84px}.chat-line .what{font-size:14px;line-height:1.35}.chat-line.ok .who{color:var(--ok)}.chat-line.bad .who{color:var(--danger)}.chat-line.bad .what{text-decoration:line-through;color:var(--muted)}.btn{display:block;width:100%;border:0;border-radius:14px;padding:15px;font-size:16px;font-weight:700;font-family:inherit;margin:10px 0;background:var(--accent);color:#fff;text-decoration:none;text-align:center;cursor:pointer;touch-action:manipulation;position:relative;z-index:1}.btn.sec{background:var(--card);color:var(--accent);border:1px solid var(--line)}.btn.ghost{background:transparent;color:var(--accent);box-shadow:none}.btn.danger{background:#fdecee;color:var(--danger)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;pointer-events:none}.btn.small{padding:11px;font-size:14px;margin:6px 0 0}.save-line{display:flex;align-items:center;gap:8px;margin:4px 0 12px}.save-line input{flex:1;min-width:0;width:100%;margin:0;-webkit-user-select:text;user-select:text}.save-line .btn.tick{width:44px;min-width:44px;height:44px;padding:0;margin:0;flex:none;display:grid;place-items:center;border-radius:12px;position:relative;z-index:2}.driver-head{display:flex;align-items:center;gap:10px;margin:0 0 12px}.driver-head .save-line{flex:1;min-width:0;margin:0}.driver-head input{font-size:18px;font-weight:800}.btn-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.btn-row .btn{margin:10px 0 0}.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.tile{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:12px;text-align:center}.tile.on{border-color:var(--accent);background:var(--accent-soft)}.tile .t{font-weight:700;font-size:15px}.tile .p{font-weight:800;font-size:18px;margin:8px 0}.step{display:flex;align-items:center;gap:12px;text-align:left;width:100%}.step .num{width:44px;height:44px;border-radius:14px;flex:none;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-weight:800}.step .copy{flex:1;min-width:0}.step .ttl{font-weight:700}.step .txt{font-size:13px;color:var(--muted)}.step .go{margin-left:auto;color:var(--muted);flex:none}button.card,.card.list-link{display:block;width:100%;max-width:100%;box-sizing:border-box;text-align:left;font:inherit;color:inherit;appearance:none;-webkit-appearance:none;cursor:pointer}.center{text-align:center}.center p{margin-left:auto;margin-right:auto;max-width:320px}.mark{width:96px;height:96px;border-radius:50%;margin:4px auto 12px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}input,select,textarea{width:100%;padding:13px;border-radius:14px;border:1px solid var(--line);background:#fbfaff;color:var(--text);margin:6px 0 14px;font-size:16px;font-family:inherit}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}label{font-size:13px;color:var(--muted);font-weight:600}.check{display:flex;align-items:flex-start;gap:10px;margin:12px 0}.check input{width:20px;height:20px;margin:2px 0 0;flex:none}.check span{font-size:14px}.badge{display:inline-block;padding:5px 11px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:12px;font-weight:700}.badge.ok{background:#e4f7ed;color:var(--ok)}.badge.warn{background:#fdf1e0;color:#b8761b}.badge.bad{background:#fdecee;color:var(--danger)}.err{color:var(--danger)}.done{color:var(--ok)}.back{color:var(--accent);text-decoration:none;display:inline-block;margin-bottom:12px;font-weight:600}.list-link{display:block;color:inherit;text-decoration:none}.route-map{height:240px;width:100%;border-radius:16px;overflow:hidden;isolation:isolate;background:var(--accent-soft);touch-action:none}.route-map .leaflet-container{height:100%;width:100%;font-family:inherit}.route-map .leaflet-control-attribution{font-size:10px}.driver-card{position:relative}.driver-card .list-link>.row:first-child{padding-right:28px;align-items:flex-start}.sticker-mark{position:absolute;top:12px;right:12px;z-index:1;width:20px;height:20px;display:grid;place-items:center;pointer-events:none}.sticker-mark.off{color:#e23d48;filter:drop-shadow(0 0 6px rgba(226,61,72,1));animation:sticker-glow 1.6s ease-in-out infinite}.sticker-mark.on{color:#1f9d63;filter:drop-shadow(0 0 6px rgba(31,157,99,.95))}@keyframes sticker-glow{0%,to{filter:drop-shadow(0 0 3px rgba(226,61,72,.55))}50%{filter:drop-shadow(0 0 8px rgba(226,61,72,1))}}@media(prefers-reduced-motion:reduce){.sticker-mark.off{animation:none}}.pipeline{margin:10px 0 2px}.pipeline-track{position:relative;height:12px;border-radius:999px;background:#e8e6f2;overflow:visible}.pipeline-fill{height:100%;border-radius:inherit;min-width:0;transition:width .24s ease}.pipeline-dots{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 2px;pointer-events:none}.pipeline-dots span{width:8px;height:8px;border-radius:50%;background:#cfcadf;box-shadow:0 0 0 2px #fff;flex:none}.pipeline-dots span.on{background:currentColor}.pipeline-dots span.hot{background:#e23d48;box-shadow:0 0 0 2px #fff,0 0 8px #e23d48b3}.pipeline-cap{font-size:12px;color:var(--muted);margin-top:6px}.glass-nav{position:fixed;left:16px;right:16px;bottom:calc(10px + env(safe-area-inset-bottom));width:calc(100% - 32px);max-width:17.8rem;margin:0 auto;padding:0;border-radius:1.65rem;background:linear-gradient(180deg,#ffffffa8,#f4f3fb6b);border:1px solid rgba(255,255,255,.78);box-shadow:0 14px 28px -14px #25185c4d,inset 0 1px #fffffff2;backdrop-filter:blur(18px) saturate(165%);-webkit-backdrop-filter:blur(18px) saturate(165%);z-index:10}.glass-nav.tabs-wide{max-width:22.4rem}.nav-grid{position:relative;display:flex;touch-action:pan-y;cursor:grab;padding:3px 2px 4px;-webkit-tap-highlight-color:transparent}.nav-grid:active{cursor:grabbing}.nav-pill{position:absolute;top:3px;bottom:3px;border-radius:999px;pointer-events:none;z-index:1;background:#ffffff6b;box-shadow:inset 0 0 0 1px #5b3df52e;backdrop-filter:blur(10px) saturate(1.35) contrast(1.04);-webkit-backdrop-filter:blur(10px) saturate(1.35) contrast(1.04);transition-property:left,width,opacity,transform;transition-timing-function:cubic-bezier(.2,.78,.2,1);overflow:hidden}.nav-pill-drag{transform:scaleY(1.12)}.nav-pill-squeeze{animation:navPillSqueeze .42s cubic-bezier(.2,.74,.2,1)}@keyframes navPillSqueeze{0%{transform:scaleY(1)}35%{transform:scaleY(1.1)}72%{transform:scaleY(.9)}to{transform:scaleY(1)}}.nav-pill-edge{position:absolute;inset:0;border-radius:999px;pointer-events:none;opacity:.55;background:linear-gradient(95deg,transparent 0%,rgba(91,61,245,.1) 14%,rgba(255,255,255,.45) 22%,rgba(91,61,245,.08) 32%,transparent 42%) 0 0 / 260% 100% no-repeat;box-shadow:inset 0 0 0 1px #ffffff8c;mix-blend-mode:plus-lighter}.nav-pill-edge.run{animation:navEdgeFlow .9s linear infinite;opacity:.95}@keyframes navEdgeFlow{0%{background-position:0% 0}to{background-position:100% 0}}.glass-nav a{position:relative;z-index:2;flex:1;display:grid;justify-items:center;align-content:center;gap:2px;color:var(--muted);text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.01em;padding:7px 2px 8px;border-radius:999px;min-width:0;background:transparent;box-shadow:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.glass-nav a:active,.glass-nav a:focus,.glass-nav a:focus-visible{background:transparent;box-shadow:none;outline:none;color:var(--muted)}.glass-nav a span{max-width:100%;overflow:hidden;text-overflow:ellipsis;line-height:1}.glass-nav a.on,.glass-nav a.on:active,.glass-nav a.on:focus{color:var(--accent);background:transparent;box-shadow:none}.admin-tiles{display:grid;gap:10px}.admin-tile{display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;background:linear-gradient(180deg,#ffffffdb,#ffffff9e);border:1px solid rgba(255,255,255,.8);border-radius:20px;padding:16px;box-shadow:var(--shadow);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.admin-tile .mark{width:48px;height:48px;margin:0;border-radius:16px;flex:none}.admin-tile .ttl{font-weight:800;font-size:17px}.admin-tile .txt{font-size:13px;color:var(--muted);margin-top:4px}.legal-body{font-size:14px;line-height:1.5;max-height:52vh;overflow:auto;margin:8px 0 0}.legal-line{margin:0 0 .55em;text-align:justify}.legal-title{text-align:center;font-weight:700;font-size:16px;margin:0 0 .45em}.legal-heading{text-align:center;font-weight:700;margin:1em 0 .55em}.legal-center,.legal-label{text-align:center}.legal-label{margin-top:.9em}.legal-gap{height:.55em}.legal-body strong{font-weight:700}.lightbox{position:fixed;inset:0;z-index:80;background:#0c0a18eb;display:flex;flex-direction:column;touch-action:none;overscroll-behavior:none}.lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;color:#fff}.lightbox-title{font-weight:700}.lightbox-close{border:0;background:#ffffff24;color:#fff;border-radius:999px;padding:8px 14px;font:inherit;font-weight:700;cursor:pointer}.lightbox-stage{flex:1;min-height:0;display:grid;place-items:center;overflow:hidden;touch-action:none}.lightbox-img{max-width:100%;max-height:100%;transform-origin:center center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.lightbox-frame{width:100%;height:100%;border:0;background:#fff}.lightbox-note{color:#fff}.lightbox-tools{display:flex;justify-content:center;gap:12px;padding:12px 16px calc(16px + env(safe-area-inset-bottom))}.lightbox-zoom{width:48px;height:48px;border:0;border-radius:16px;background:#ffffff29;color:#fff;font-size:26px;line-height:1;cursor:pointer}
