:root{--ink:#111;--ink2:#2b2b2b;--muted:#5f6368;--line:#e3e5e8;--soft:#f4f5f6;--bg:#fafafa;--lime:#c2ff00;--lime-soft:#eeffc4;--lime-dark:#6f9400;--red:#c5221f;--red-soft:#fde8e7;--amber-soft:#fff4d6;--blue-soft:#e8f0fe;--f:"Inter", system-ui, -apple-system, sans-serif;--ft:"Inter Tight", "Inter", system-ui, sans-serif;--r:14px}*{box-sizing:border-box}body{font:15px/1.5 var(--f);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--lime-dark);outline-offset:2px;border-radius:6px}.topbar{z-index:20;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0}.topbar .in{align-items:center;gap:20px;max-width:1240px;height:64px;margin:0 auto;padding:0 20px;display:flex}.logo{font:800 22px/1 var(--ft);letter-spacing:-.045em;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.logo svg{height:22px}.logo small{font:600 12px var(--f);letter-spacing:0;color:var(--muted);text-transform:uppercase;margin-left:6px}.topnav{gap:4px;margin-left:12px;display:flex}.topnav a{color:var(--ink2);border-radius:10px;padding:8px 12px;font-weight:500;text-decoration:none}.topnav a.active{background:var(--soft);font-weight:600}.spacer{flex:1}.who{color:var(--muted);font-size:14px}.page{max-width:1240px;margin:0 auto;padding:28px 20px 80px}.narrow{max-width:520px;margin:0 auto;padding:56px 20px}h1{font:800 32px/1.1 var(--ft);letter-spacing:-.03em;margin:0 0 6px}h2{font:700 20px/1.2 var(--ft);letter-spacing:-.01em;margin:0 0 14px}h3{font:600 16px var(--f);margin:0 0 8px}.sub{color:var(--muted);margin:0 0 24px}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.grid{gap:16px;display:grid}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=900px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.g2,.g3,.g4{grid-template-columns:1fr}.topnav{display:none}h1{font-size:26px}}.card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:22px}.card+.card{margin-top:16px}.grid>.card+.card{margin-top:0}.kpi .v{font:800 30px/1.1 var(--ft);letter-spacing:-.02em}.kpi .l{color:var(--muted);margin-top:4px;font-size:13px}.muted{color:var(--muted)}.small{font-size:13px}.hr{background:var(--line);border:0;height:1px;margin:18px 0}.btn{cursor:pointer;background:var(--ink);color:#fff;border:1.5px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--ink2)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.light{color:var(--ink);background:#fff;border-color:#cfd2d6}.btn.light:hover{border-color:var(--ink)}.btn.lime{background:var(--lime);color:var(--ink)}.btn.danger{color:var(--red);background:#fff;border-color:#f3c4c2}.btn.danger:hover{background:var(--red-soft)}.btn.sm{border-radius:10px;min-height:34px;padding:6px 12px;font-size:14px}.btn.block{width:100%;min-height:50px;font-size:16px}.link{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:0;font-weight:500;text-decoration:underline}.field{gap:6px;margin-bottom:14px;display:grid}.field>span{font-size:14px;font-weight:600}.field small{color:var(--muted);font-size:13px}.input,select.input,textarea.input{background:#fff;border:1.5px solid #cfd2d6;border-radius:12px;width:100%;padding:11px 13px}.input:focus{border-color:var(--ink);outline:none}textarea.input{resize:vertical;min-height:80px}.check{align-items:flex-start;gap:10px;display:flex}.err{background:var(--red-soft);color:var(--red);border-radius:12px;margin:10px 0;padding:10px 14px;font-size:14px}.ok{background:var(--lime-soft);border-radius:12px;margin:10px 0;padding:10px 14px;font-size:14px}.info{background:var(--blue-soft);border-radius:12px;margin:10px 0;padding:10px 14px;font-size:14px}.warn{background:var(--amber-soft);border-radius:12px;margin:10px 0;padding:10px 14px;font-size:14px}.badge{background:var(--soft);white-space:nowrap;border-radius:99px;align-items:center;gap:6px;padding:3px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.badge.draft{background:var(--soft)}.badge.published,.badge.paid{background:var(--lime-soft)}.badge.running{background:var(--lime)}.badge.finished,.badge.archived{color:var(--ink2);background:#e8eaed}.badge.cancelled,.badge.failed,.badge.refunded{background:var(--red-soft);color:var(--red)}.badge.pending{background:var(--amber-soft)}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:11px 10px}.table th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:12.5px;font-weight:600}.table tr.click{cursor:pointer}.table tr.click:hover td{background:var(--soft)}.scroll{overflow-x:auto}.tabs{border-bottom:1px solid var(--line);gap:4px;margin:18px 0 22px;display:flex;overflow-x:auto}.tabs a{color:var(--ink2);white-space:nowrap;border-bottom:3px solid #0000;padding:10px 14px;font-weight:500;text-decoration:none}.tabs a.active{border-bottom-color:var(--lime);color:var(--ink);font-weight:700}.steps{flex-wrap:wrap;gap:8px;margin:14px 0 0;display:flex}.step{color:var(--muted);border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:8px 14px 8px 8px;font-size:14px;text-decoration:none;display:inline-flex}.step:hover{color:var(--ink)}.step.current{color:var(--ink);border-color:var(--ink);font-weight:700}.step i{background:var(--soft);border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;font-style:normal;font-weight:700;display:grid}.step.done i{background:var(--lime);color:var(--ink)}.sponsor-row{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr auto;align-items:center;gap:16px;padding:14px 0;display:grid}.logo-box{border:1px solid var(--line);background:#fff;border-radius:12px;place-items:center;width:120px;height:64px;display:grid;overflow:hidden}.logo-box img{max-width:100px;max-height:50px}.drop{text-align:center;color:var(--muted);cursor:pointer;border:2px dashed #cfd2d6;border-radius:14px;padding:18px}.drop:hover{border-color:var(--ink);color:var(--ink)}.phone{background:#fff;border:10px solid #111;border-radius:38px;width:300px;overflow:hidden;box-shadow:0 20px 40px #0000001f}.phone .ph-hero{color:#fff;background:#111 50%/cover;padding:26px 18px 18px}.phone .ph-logo{background:#fff;border-radius:8px;max-width:120px;max-height:40px;padding:4px}.phone .ph-body{padding:16px 18px 20px}.phone .ph-btn{text-align:center;border-radius:12px;margin-top:10px;padding:12px;font-weight:700}.qr{border:1px solid var(--line);background:#fff;border-radius:14px;width:220px;height:220px;padding:10px}.copy{gap:8px;display:flex}.copy .input{font-family:ui-monospace,Menlo,monospace;font-size:13px}.empty{text-align:center;color:var(--muted);padding:40px 10px}.bar{background:var(--soft);border-radius:99px;height:10px;overflow:hidden}.bar>i{background:var(--lime);height:100%;display:block}.bar.full>i{background:#f5a623}.rec-dot{background:var(--red);border-radius:50%;width:10px;height:10px;animation:1s infinite blink;display:inline-block}@keyframes blink{50%{opacity:.2}}.timeline li{border-bottom:1px solid var(--line);padding:8px 0;font-size:14px;list-style:none}.timeline{margin:0;padding:0}.adm{grid-template-columns:232px 1fr;min-height:100vh;display:grid}.adm-side{color:#fff;background:#111;flex-direction:column;height:100vh;padding:22px 12px;display:flex;position:sticky;top:0}.adm-side .logo{color:#fff;padding:0 12px}.adm-side .label{letter-spacing:.12em;color:#a7abb1;margin:28px 14px 10px;font-size:12px;font-weight:600}.adm-side nav{gap:4px;display:grid}.adm-side nav a{color:#e8eaed;border-radius:12px;align-items:center;gap:12px;padding:11px 14px;font-weight:500;text-decoration:none;display:flex}.adm-side nav a:hover{background:#222}.adm-side nav a.active{background:var(--lime);color:#111;font-weight:700}.adm-side nav svg{flex:none;width:20px;height:20px}.adm-side .me{color:#c9ccd1;border-top:1px solid #2a2a2a;margin-top:auto;padding:14px 12px 0;font-size:14px}.adm-side .me button{color:#fff}.adm-main{min-width:0}.adm-top{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:14px;height:60px;padding:0 28px;display:flex}.crumb{color:var(--muted);font-size:14px}.crumb b{color:var(--ink);font-weight:600}.adm-main .page{max-width:1300px}.kpi-i{align-items:center;gap:16px;display:flex}.kpi-i .ic{background:var(--soft);border-radius:14px;place-items:center;width:52px;height:52px;display:grid}.kpi-i .ic svg{width:26px;height:26px}.banner{background:var(--amber-soft);border:1px solid #f7d58a;border-radius:16px;align-items:center;gap:16px;margin:16px 0;padding:16px 20px;display:flex}.banner .t{font-size:17px;font-weight:700}.status-dot{background:var(--lime-soft);border-radius:99px;align-items:center;gap:7px;padding:4px 12px;font-size:13px;font-weight:600;display:inline-flex}.status-dot:before{content:"";background:#3fbf3f;border-radius:50%;width:8px;height:8px}.status-dot.warn{background:var(--amber-soft)}.status-dot.warn:before{background:#f5a623}.status-dot.bad{background:var(--red-soft);color:var(--red)}.status-dot.bad:before{background:var(--red)}.privacy-note{background:var(--soft);color:var(--muted);border-radius:14px;align-items:center;gap:10px;margin-top:18px;padding:12px 16px;font-size:14px;display:flex}.kv{grid-template-columns:160px 1fr;gap:8px 16px;font-size:15px;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0}@media (width<=900px){.adm{grid-template-columns:1fr}.adm-side{height:auto;position:static}.adm-side nav{grid-template-columns:repeat(3,1fr)}.adm-side .label,.adm-side .me{display:none}}.wizard-nav{background:var(--ink);color:#fff;border-radius:18px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 18px;padding:18px 20px;display:flex}.wizard-nav .muted{color:#b9bdc1}.wizard-nav .btn{background:var(--lime);color:var(--ink)}.save-status{color:var(--muted);font-size:13px}.save-status.saved{color:#3d7a00}.save-status.error{color:var(--red,#d93025);font-weight:600}.routes{flex-direction:column;gap:14px;margin:12px 0;display:flex}.route-row{border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex}.route-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.route-sketch{background:#eef1ea;border-radius:12px;width:100%;height:auto}.wp{margin:0;padding-left:18px;font-size:14px}.pills{flex-wrap:wrap;gap:8px;display:flex}.pill{cursor:pointer;background:#fff;border:1.5px solid #cfd2d6;border-radius:99px;align-items:center;gap:8px;padding:7px 14px;font-weight:600;display:inline-flex}.pill.on{border-color:var(--ink);background:var(--ink);color:#fff}.pill .dot{background:#cfd2d6;border-radius:50%;width:8px;height:8px}.pill .dot.has{background:#8be000}.route-choices{margin-top:4px}.choice{text-align:left;border:1.5px solid var(--line);cursor:pointer;background:#fff;border-radius:16px;flex-direction:column;gap:6px;padding:18px;transition:border-color .15s,transform .15s;display:flex}.choice:hover:not(:disabled){border-color:var(--ink);transform:translateY(-1px)}.choice .ic{background:var(--lime);border-radius:12px;place-items:center;width:40px;height:40px;margin-bottom:6px;font-size:20px;font-weight:800;display:grid}.choice b{font-size:16px}.choice span:last-child{color:var(--muted);font-size:14px}.route-sum{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}@media (width<=760px){.route-sum{grid-template-columns:1fr}}.howto{gap:8px;margin:14px 0;padding-left:20px;display:grid}.drawer .toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 6px;display:flex}.drawer .toolbar .spacer{flex:1}.drawer .input.sm{min-width:220px;padding:7px 11px;font-size:14px}.drawer .hint{margin:4px 0 10px}.seg{border:1.5px solid #cfd2d6;border-radius:10px;display:inline-flex;overflow:hidden}.seg button{cursor:pointer;background:#fff;border:0;padding:6px 12px;font-size:14px;font-weight:600}.seg button.on{background:var(--ink);color:#fff}.len{color:var(--muted);font-size:14px}.len b{font:800 22px/1 var(--ft);color:var(--ink);letter-spacing:-.02em}.len.off b{color:#b06000}.map-wrap{position:relative}.map{border:1px solid var(--line);background:#eef1ea;border-radius:14px;height:min(62vh,560px);min-height:360px;overflow:hidden}.map-off{text-align:center;color:var(--muted);place-items:center;padding:20px;display:grid;position:absolute;inset:0}.poi-form{z-index:5;background:#fff;border-radius:14px;gap:8px;width:280px;padding:14px;display:grid;position:absolute;top:12px;left:12px;box-shadow:0 10px 30px #00000026}.mk{cursor:grab;border:0;border-radius:50%;padding:0}.mk.mid{background:#fff;border:3px solid #0a0a0a;width:14px;height:14px}.mk.start{background:#8be000;border:3px solid #0a0a0a;width:22px;height:22px}.mk.end{background:#0a0a0a;border:3px solid #fff;width:22px;height:22px;box-shadow:0 0 0 2px #0a0a0a}.mk.poi{cursor:pointer;background:#fff;border:2px solid #0a0a0a;width:26px;height:26px;font-size:14px;line-height:1}.mk.handle{width:18px;height:18px;font:700 13px/1 var(--f);opacity:.55;background:#ffffffe6;border:2px solid #0a0a0a;place-items:center;display:grid}.mk.handle:hover{opacity:1;transform:scale(1.15)}.mk.handle.straight{border-style:dashed}
