:root{--bg:#f5f6f7;--card:#fff;--ink:#242a30;--muted:#6c747e;--line:#dce1e5;--soft:#f1f3f5;--accent:#23664c;--accent-bg:#eaf3ee;--danger:#b23e36;--bottom:env(safe-area-inset-bottom,0px);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box;min-width:0}body{margin:0;padding-bottom:calc(80px + var(--bottom));font-size:14px;line-height:1.5}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none;touch-action:manipulation}button:disabled{cursor:default;opacity:.48}a{color:var(--accent)}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:25px;line-height:1.25;font-weight:700;letter-spacing:-.5px}h2{font-size:17px;font-weight:650}h3{font-size:15px;font-weight:650}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.sprite{position:absolute;width:0;height:0;overflow:hidden}.hidden{display:none!important}.header{max-width:1120px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:18px;font-weight:700;line-height:1.2}.brand small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:4px}.brand-mark{display:grid;place-items:center;width:35px;height:35px;background:var(--accent);color:white;border-radius:8px;font-size:14px;letter-spacing:-2px;padding-right:2px}.header-actions{display:flex;align-items:center;gap:13px}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e8edf0;color:#4d5b64;font-size:12px;font-weight:650;flex-shrink:0}.primary,.secondary,.danger{border-radius:7px;padding:12px 16px;font-size:14px;font-weight:600;min-height:44px;text-align:center;line-height:1.35}.primary{background:var(--accent);color:white;border:1px solid var(--accent)}.secondary{background:var(--card);border:1px solid var(--line);color:var(--ink)}.danger{color:var(--danger);background:transparent;border:1px solid var(--line)}.compact{min-height:36px;padding:8px 13px;font-size:13px}.wide{width:100%}.text-button{color:var(--accent);font-size:13px;font-weight:500;padding:6px 0;min-height:32px}.icon-button{display:grid;place-items:center;flex-shrink:0;width:34px;height:34px;border:1px solid var(--line);border-radius:6px}.icon-button svg{width:18px;height:18px}main{max-width:1120px;margin:0 auto;padding:0 28px}.page-heading{padding:28px 0 23px}.page-heading p{font-size:13px;color:var(--muted);margin-top:7px}.row,.section-heading,.sheet-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.workspace{display:grid;grid-template-columns:310px minmax(0,1fr);gap:28px;align-items:start}.search-panel,.panel{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px}.search-panel{position:sticky;top:18px}.search-panel>.primary{margin-top:18px}.search-panel>.secondary{margin-top:10px;font-weight:500;font-size:12px}.panel{margin-bottom:16px}.panel p{margin:8px 0 14px;color:var(--muted);font-size:13px}.segmented{display:flex;border:1px solid var(--line);border-radius:7px;background:var(--soft);padding:3px;gap:3px}.segmented button{flex:1;padding:9px 10px;font-size:13px;line-height:1.4;border-radius:4px;min-height:37px;color:var(--muted)}.segmented button.selected{color:var(--ink);background:var(--card);font-weight:650;box-shadow:0 1px 3px #0000000c}.route-mode{margin-bottom:18px}.route-mode button{font-size:12px;padding:8px 6px;white-space:nowrap}.type-tabs{margin-bottom:20px}.small-tabs{max-width:400px;margin-bottom:20px}.route-editor label,.field-label,form>label,form .form-row>label{display:block;font-size:12px;color:var(--muted);margin-bottom:15px}.route-editor select{margin-top:7px}.route-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:4px 0 12px}.route-heading strong{font-size:13px}select,input,textarea{width:100%;min-height:44px;padding:11px 12px;border:1px solid var(--line);border-radius:7px;color:var(--ink);background:var(--card);font-size:16px;outline:none}select:focus,input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px #23664c15}textarea{resize:vertical;min-height:82px}label input,label textarea,label select{display:block;margin-top:6px}.route-points{border-left:2px solid var(--line);padding-left:13px;margin:13px 0 18px}.route-points span{display:block;font-size:13px;overflow-wrap:anywhere;line-height:1.5}.route-points span+span{margin-top:10px}.route-points small{font-size:10px;color:var(--muted);display:block}.date-chips{display:flex;gap:7px;align-items:center;margin-top:18px}.chip{border:1px solid var(--line);border-radius:6px;padding:9px 12px;font-size:12px;min-height:37px}.chip.selected{background:var(--accent-bg);border-color:var(--accent);color:var(--accent);font-weight:600}.date-picker{position:relative;margin-left:auto;flex-shrink:0;display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--line);border-radius:6px;overflow:hidden}.date-picker input{position:absolute;inset:0;opacity:0;min-height:0;padding:0;width:100%;height:100%}.hint{font-size:11px;color:var(--muted);line-height:1.55;margin:9px 0;overflow-wrap:anywhere}.section-heading{margin-bottom:12px}.section-heading h2{font-size:14px}.muted{color:var(--muted)}.small{font-size:12px}.trip-list{display:flex;flex-direction:column;gap:12px}.trip-card{display:block;width:100%;text-align:left;border:1px solid var(--line);border-radius:9px;background:var(--card);padding:18px 20px;transition:border-color .12s}.trip-card:hover{border-color:#9daab2}.trip-top{display:flex;justify-content:space-between;gap:16px;align-items:start;margin-bottom:14px}.trip-time{font-size:23px;line-height:1.2;font-weight:700}.trip-date{font-size:11px;color:var(--muted);margin-top:4px}.trip-price{font-size:19px;font-weight:650;line-height:1.3;text-align:right;white-space:nowrap}.trip-price small{font-size:10px;color:var(--muted);display:block;font-weight:400;margin-top:4px}.card-route{font-size:14px;line-height:1.5;overflow-wrap:anywhere;padding-left:12px;border-left:2px solid var(--line);margin-bottom:12px}.card-route span{display:block}.card-route span+span{margin-top:5px}.trip-meta{display:flex;flex-wrap:wrap;gap:7px 15px;font-size:11px;color:var(--muted);margin:12px 0}.trip-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:12px}.person{display:flex;align-items:center;gap:9px;text-align:left}.person-name{font-size:12px;font-weight:600;overflow-wrap:anywhere}.person-note{font-size:10px;color:var(--muted);margin-top:2px;display:block}.trip-bottom>.small{font-size:11px;white-space:nowrap;color:var(--accent)}.status{display:inline-block;font-size:10px;color:var(--muted);margin-bottom:10px;padding:3px 7px;border-radius:4px;background:var(--soft)}.status.accepted{color:var(--accent);background:var(--accent-bg)}.status.pending{color:#8a641d;background:#fbf3e3}.status.cancelled,.status.declined{color:var(--danger);background:#fbeeed}.kind-label{font-size:10px;color:var(--muted);font-weight:500;margin-bottom:8px}.kind-label.request{color:#835d27}.empty,.loading{padding:28px 20px;border:1px solid var(--line);border-radius:9px;background:var(--card);text-align:center}.empty h3{font-size:16px}.empty p{font-size:13px;color:var(--muted);max-width:370px;margin:9px auto 18px}.empty .actions{justify-content:center}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:50px;border-top:1px solid var(--line);padding:10px 15px calc(10px + var(--bottom));background:var(--card);z-index:20}.bottom-nav button{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;font-size:10px;color:var(--muted);min-width:75px;min-height:43px}.bottom-nav button.active{color:var(--accent);font-weight:600}.bottom-nav i{position:absolute;right:17px;top:0;background:var(--accent);width:5px;height:5px;border-radius:50%}.demo-banner{padding:7px 16px;background:#eef1f4;color:#586778;display:flex;justify-content:center;gap:20px;font-size:10px;border-bottom:1px solid var(--line)}.demo-banner button{font-size:10px;text-decoration:underline}footer{font-size:10px;color:var(--muted);text-align:center;line-height:1.8;padding:32px 0 18px;overflow-wrap:anywhere}footer a{color:var(--muted)}dialog{width:min(calc(100% - 28px),550px);max-height:91dvh;overflow:auto;padding:0 24px 26px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--ink);box-shadow:0 12px 55px #0002}dialog::backdrop{background:#171d2666}.sheet-header{position:sticky;top:0;padding:18px 0 16px;background:var(--card);z-index:2}.sheet-header h2{font-size:18px;line-height:1.4;overflow-wrap:anywhere}.toast{position:fixed;left:50%;bottom:calc(90px + var(--bottom));transform:translateX(-50%);padding:12px 18px;border-radius:7px;background:#253039;color:#fff;z-index:100;max-width:calc(100% - 30px);font-size:12px;text-align:center;box-shadow:0 4px 20px #0002}.fatal{position:fixed;inset:0;background:var(--bg);z-index:90;padding:80px 24px;text-align:center}.fatal p{margin:15px 0 25px;color:var(--muted)}form label{font-size:12px;color:var(--muted)}form .segmented{margin-bottom:19px}.form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.form-row>div{min-width:0}.actions{display:flex;flex-wrap:wrap;gap:8px}.actions>.primary,.actions>.secondary,.actions>.danger{flex:1;min-width:110px}.note-box{background:var(--soft);border:1px solid var(--line);border-radius:7px;padding:12px 14px;margin:17px 0;font-size:12px;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}.row-check{display:flex!important;align-items:center;gap:10px;font-size:13px;color:var(--ink);margin:12px 0}.row-check input{width:18px;min-height:18px;margin:0;accent-color:var(--accent);flex-shrink:0}.weekdays{display:flex;gap:5px;margin:14px 0}.weekday{position:relative;display:grid;place-items:center;border:1px solid var(--line);border-radius:5px;flex:1;height:36px;font-size:12px}.weekday input{position:absolute;opacity:0;width:1px;height:1px}.weekday:has(input:checked){border-color:var(--accent);background:var(--accent-bg);color:var(--accent);font-weight:600}.detail-time{font-size:30px;font-weight:700;line-height:1.1}.detail-date{color:var(--muted);font-size:12px;margin-top:6px}.detail-route{padding:18px 0;font-size:18px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.detail-route span{display:block}.detail-route span+span:before{content:'→';margin-right:10px;color:var(--muted)}.detail-info{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:15px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 0 18px}.detail-info small{display:block;font-size:11px;color:var(--muted);margin-bottom:4px}.detail-info b{font-size:16px}.meeting{margin:17px 0;font-size:13px;overflow-wrap:anywhere;white-space:pre-wrap}.meeting strong{display:block;font-weight:500;font-size:11px;color:var(--muted);margin-bottom:4px}.response{border-top:1px solid var(--line);padding:15px 0}.response .actions{margin-top:11px}.response .offer-terms{margin:9px 0;color:var(--ink);font-size:13px}.response p{font-size:12px;color:var(--muted);margin:6px 0}.profile-title{display:flex;align-items:center;gap:12px}.profile-title .avatar{width:48px;height:48px;font-size:17px}.profile-title h2{font-size:20px;overflow-wrap:anywhere}.profile-stats{display:flex;gap:35px;padding-top:18px;margin-top:20px;border-top:1px solid var(--line)}.profile-stats b{display:block;font-size:20px}.profile-stats span{font-size:11px;color:var(--muted)}.subscription-card{background:var(--card);border:1px solid var(--line);border-radius:9px;padding:18px;margin-bottom:12px}.subscription-card h3{overflow-wrap:anywhere;font-size:14px}.subscription-card p{color:var(--muted);font-size:12px;margin:7px 0 14px}.subscription-card .actions button{font-size:12px;padding:9px 13px;min-height:37px}.admin-route{display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:1px solid var(--line);padding:12px 0;font-size:12px}.admin-route span{overflow-wrap:anywhere}.admin-route button{flex-shrink:0;font-size:11px}.report-item,.review{border-top:1px solid var(--line);padding:14px 0;font-size:12px;overflow-wrap:anywhere}.report-item p,.review p{white-space:pre-wrap;margin:8px 0}.review-stars{display:flex;gap:10px;margin:15px 0}.review-stars button{font-size:27px;color:#a7adb2}.review-stars button.chosen{color:#a87621}.eta-row{align-items:end}.eta-row label{margin-bottom:0!important}.eta-row button{min-height:44px}.resolved{margin-top:7px;font-size:10px;overflow-wrap:anywhere}.onboarding-note{font-size:13px;color:var(--muted);margin-bottom:20px}
[data-theme=dark]{--bg:#182024;--card:#222c31;--ink:#ecf0f2;--muted:#a4aeb5;--line:#3a454c;--soft:#2a353c;--accent:#88c6a6;--accent-bg:#2a4236;--danger:#eea29a}[data-theme=dark] .primary{background:#427d60;border-color:#427d60;color:white}[data-theme=dark] .avatar{background:#39464f;color:#e5edf1}[data-theme=dark] .brand-mark{background:#427d60}[data-theme=dark] .demo-banner{background:#29343e;color:#b4c1cd}[data-theme=dark] .status.pending{background:#483d2b;color:#e1c58b}[data-theme=dark] .status.declined,[data-theme=dark] .status.cancelled{background:#493532;color:#efb3ab}[data-theme=dark] .kind-label.request{color:#d0b686}
@media(max-width:760px){.header{padding:14px 16px}.brand{font-size:16px}.brand-mark{width:31px;height:31px;font-size:12px}.brand small{font-size:10px}.header-actions{gap:9px}.header-actions .avatar{width:31px;height:31px;font-size:11px}.header .primary{padding:8px 11px;font-size:12px}main{padding:0 14px}.page-heading{padding:22px 0 18px}h1{font-size:22px}.page-heading p{font-size:12px;max-width:100%}.workspace{display:flex;flex-direction:column;gap:22px}.workspace>*{width:100%}.search-panel{position:static;padding:16px}.route-mode{margin-bottom:14px}.route-editor label{margin-bottom:12px}.route-points{margin-bottom:13px}.search-panel>.primary{margin-top:12px}.search-panel>.secondary{padding:10px;font-size:12px}.type-tabs{margin-bottom:15px}.segmented button{font-size:12px;padding:8px 6px}.route-mode button{font-size:12px}.trip-card{padding:16px}.trip-time{font-size:22px}.trip-price{font-size:18px}.card-route{font-size:13px}.trip-bottom{gap:7px}.person-name{font-size:12px}.person-note{font-size:10px}.trip-bottom>.small{font-size:10px}.bottom-nav{justify-content:space-around;gap:0;padding:9px 8px calc(8px + var(--bottom))}.bottom-nav button{font-size:9px;min-width:0;flex:1}.bottom-nav i{right:calc(50% - 18px)}.demo-banner{padding:6px 9px;gap:6px;font-size:8px;justify-content:space-between}.demo-banner button{font-size:8px}.panel{padding:17px}.page-heading.row{align-items:start}.page-heading.row .primary{font-size:11px;padding:8px 9px;white-space:nowrap}.page-heading.row h1{font-size:20px}.subscription-card{padding:16px}dialog{width:100%;margin:auto 0 0;max-width:none;border-radius:12px 12px 0 0;max-height:93dvh;padding:0 18px calc(24px + var(--bottom));border-bottom:0}.sheet-header{padding:16px 0 14px}.sheet-header h2{font-size:17px}.form-row{gap:11px}.detail-time{font-size:27px}.detail-route{font-size:17px}.profile-stats{gap:26px}.profile-title h2{font-size:18px}footer{font-size:9px;text-align:left;padding:25px 2px 18px}.actions>.primary,.actions>.secondary,.actions>.danger{min-width:100px}.small-tabs{max-width:none}.eta-row button{padding:10px 8px;font-size:12px}}
@media(max-width:350px){.brand small{display:none}.header .avatar{display:none}.page-heading.row{flex-direction:column}.form-row{gap:8px}.route-mode button{font-size:11px}.trip-card{padding:14px}.person .avatar{width:28px;height:28px;font-size:10px}.trip-bottom>.small{white-space:normal;text-align:right;max-width:75px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.header #create-trip{display:flex;align-items:center;justify-content:center;gap:7px;font-size:15px;min-height:42px}.header #create-trip>span{display:grid;place-items:center;font-size:26px;line-height:1;width:20px;height:24px;transform:translateY(-1px)}.stop-row{display:flex;gap:8px;margin:8px 0}.stop-row button{width:36px;flex-shrink:0;font-size:23px}.stops{margin-bottom:18px}.stops>label{font-size:12px;color:var(--muted)}.map{height:280px;width:100%;border:1px solid var(--line);border-radius:7px;z-index:0}.map img{max-width:none}.leaflet-container{font-family:inherit}.leaflet-container a{color:#22604c}.leaflet-control-attribution{color:#333!important;background:#fffd!important}.map-link{display:block;overflow-wrap:anywhere;font-size:13px;margin:10px 0}.detail-route small{display:block;color:var(--muted);font-size:10px;font-weight:400}.chat-messages{height:45dvh;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:12px 0;overscroll-behavior:contain}.chat-message{align-self:flex-start;background:var(--soft);border:1px solid var(--line);border-radius:8px;padding:10px 12px;max-width:90%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px}.chat-message.mine{align-self:flex-end;background:var(--accent-bg)}.chat-message small{display:block;font-size:9px;color:var(--muted);margin-top:6px}.chat-compose{display:flex;align-items:end;gap:9px;margin:12px 0}.chat-compose textarea{min-height:46px;height:70px;flex:1}.chat-compose button{font-size:12px;padding:12px 10px}.detail-route span+span:before{display:inline}.report-item b{overflow-wrap:anywhere}#share-route-form{margin:20px 0}.route-editor select{font-size:13px;max-width:100%}form.panel>label{display:block;margin:12px 0}.profile-stats{flex-wrap:wrap;gap:18px}.detail-route,.meeting{word-break:normal}.trip-price{max-width:50%;white-space:normal}.trip-price small{overflow-wrap:anywhere}.trip-bottom .person{flex:1}.trip-bottom .person>div{flex:1}.trip-bottom .person-name{display:block}

@media(min-width:761px){.workspace{grid-template-columns:330px minmax(0,1fr)}}
@font-face{font-family:Nunito;src:url(fonts/nunito.ttf) format('truetype');font-weight:200 1000;font-display:swap}@font-face{font-family:'Nunito Sans';src:url(fonts/nunitosans.ttf) format('truetype');font-weight:200 1000;font-display:swap}:root{--bg:#f6f4ee;--card:#fffefa;--ink:#202c41;--muted:#656f80;--line:#dcdedb;--soft:#efeee9;--accent:#3154ad;--accent-bg:#e9eefb;--danger:#a84935;--coral:#b75b45;--coral-bg:#faece5;font-family:'Nunito Sans',Arial,sans-serif;font-size:15px;color-scheme:light}[data-theme=dark]{--bg:#171d29;--card:#222b3c;--ink:#f1f3f9;--muted:#b5bdcd;--line:#3d485b;--soft:#293449;--accent:#acc1ff;--accent-bg:#2c3d60;--danger:#f4a68f;--coral:#ffc0aa;--coral-bg:#4e3532;color-scheme:dark}body{font-size:15px;line-height:1.6;padding-bottom:calc(91px + var(--bottom))}h1,h2,h3,.brand,.trip-time,.detail-time,.profile-title h2{font-family:Nunito,Arial,sans-serif}h1{font-size:30px;font-weight:800;letter-spacing:-.8px}h2{font-weight:800}h3{font-size:17px;font-weight:800}.header{border:0;padding:24px 28px 16px;max-width:1160px}.brand{font-size:29px;letter-spacing:-.9px;gap:10px;font-weight:850}.brand-road{width:37px;height:37px;stroke:var(--accent);stroke-width:2.8}.header-actions{gap:13px}.header #create-trip{font-size:14px;min-height:42px;border-radius:12px;font-weight:800}.header #create-trip>span{font-size:25px}main{max-width:1160px}.primary,.secondary,.danger{border-radius:12px;font-size:14px;min-height:48px;font-weight:750;padding:13px 18px}.primary{background:#3154ad;border-color:#3154ad;color:#fff}.primary:hover{background:#29499a}.secondary{background:var(--card);border-color:var(--line)}.danger{color:var(--danger)}[data-theme=dark] .primary{background:#3154ad;border-color:#3154ad;color:#fff}[data-theme=dark] .brand-mark{background:#3154ad}.icon-button{border-radius:11px;width:42px;height:42px}.icon-button svg{width:21px;height:21px}.header #top-profile{padding:0;background:transparent;width:39px;height:39px}.avatar{position:relative;background:var(--accent-bg);color:var(--accent);width:37px;height:37px;overflow:hidden;border-radius:50%;font-size:13px;font-weight:800}.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}[data-theme=dark] .avatar{background:var(--accent-bg);color:var(--accent)}.header .avatar{width:39px;height:39px}.search-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0 24px}.search-tabs{display:flex;gap:27px}.search-tabs button{font:800 24px Nunito,sans-serif;color:var(--muted);padding:5px 0}.search-tabs button.selected{color:var(--ink)}#density-toggle{border:0;color:var(--muted);font-size:27px;background:transparent}.workspace{grid-template-columns:320px minmax(0,1fr);gap:28px}.search-panel{padding:18px;border-radius:18px;background:var(--card)}.search-panel .route-points{display:none}.route-mode{margin-bottom:15px;padding:0;background:none;border:0;gap:17px}.route-mode button{flex:initial;padding:3px 0!important;min-height:30px;color:var(--muted);font-size:11px!important;border-radius:0}.route-mode button.selected{background:none;box-shadow:none;color:var(--accent);border-bottom:2px solid var(--accent)}.route-editor [data-preset-fields]>.segmented{background:none;padding:0;border:0;gap:7px;margin-bottom:13px}.route-editor [data-nvk]{border:1px solid var(--line);border-radius:12px;min-height:48px;font-size:14px!important;background:var(--card);color:var(--muted)}.route-editor [data-nvk].selected{background:#3154ad;color:#fff;border-color:#3154ad;font-weight:800;box-shadow:none}.route-editor label{font-size:11px;color:var(--muted);margin:12px 0}.route-editor select{font-size:14px;font-weight:650;padding:13px 12px;min-height:49px}.route-editor [data-custom-fields]{border-top:1px solid var(--line);padding-top:3px}.route-editor [data-custom-fields] input{font-size:15px}.segmented{border-radius:12px;background:var(--soft);padding:4px}.segmented button{border-radius:8px;font-size:13px;min-height:39px;padding:9px 12px}.segmented .selected{font-weight:800}.type-tabs{margin-bottom:18px}.type-tabs [data-kind=request].selected{background:var(--coral-bg);color:var(--coral)}.date-chips{gap:7px;margin-top:13px}.chip{border-radius:10px;padding:8px 12px;font-size:12px;min-height:40px}.chip.selected{border-color:transparent;background:var(--accent-bg);color:var(--accent)}.date-picker{width:40px;height:40px;border-radius:10px}#date-caption{font-size:10px;margin:8px 0 15px}.filter-actions{display:flex;align-items:center;gap:7px}.filter-actions .primary{flex:1;font-size:13px;padding:12px 10px}.filter-actions .icon-button{height:46px;width:43px;flex-shrink:0}.filter-actions .saved{background:var(--accent-bg);color:var(--accent);border-color:transparent}.favorite-chips{display:flex;gap:7px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:15px;margin-top:16px}.favorite-chips button{background:var(--soft);border:1px solid var(--line);font-size:10px;border-radius:10px;padding:8px 10px;text-align:left;overflow-wrap:anywhere}.section-heading{margin-bottom:13px}.section-heading h2{font:800 16px Nunito,sans-serif}.section-heading .muted{font-size:12px}.trip-list{gap:14px}.trip-card{border-radius:18px;padding:21px 23px;background:var(--card);border-color:var(--line)}.trip-card:hover{border-color:#9caed3}.card-caption{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:12px}.card-caption .kind-label,.card-caption .status{margin:0}.kind-label{font-size:11px;color:var(--accent);font-weight:700}.kind-label.request{color:var(--coral)}[data-theme=dark] .kind-label.request{color:var(--coral)}.status{border-radius:7px;font-size:10px;background:var(--soft);padding:4px 8px}.status.accepted{color:var(--accent);background:var(--accent-bg)}[data-theme=dark] .status.pending{background:#514529;color:#f5d58e}.trip-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:15px;gap:16px}.trip-time{font-size:30px;line-height:1.25;font-weight:850}.trip-date{font-size:12px;margin:0}.card-route{position:relative;border-left:2px solid var(--accent);padding-left:16px;margin:16px 0 18px;font-size:15px;line-height:1.65;font-weight:650}.card-route span{position:relative;display:block}.card-route span+span{margin-top:12px}.card-route span:before{content:'';position:absolute;left:-21px;top:8px;width:8px;height:8px;border:2px solid var(--accent);background:var(--card);border-radius:50%}.card-route span:nth-child(n+2):not(:last-child){font-size:12px;font-weight:400;color:var(--muted)}.card-route span small{font-size:10px;margin-left:7px;color:var(--accent);font-weight:400}.card-route .outside-leg{color:var(--muted);font-weight:400}.trip-card.request .card-route{border-color:var(--coral)}.trip-card.request .card-route span:before{border-color:var(--coral)}.card-terms{display:flex;align-items:center;justify-content:space-between;gap:17px;margin:15px 0 17px}.trip-price{text-align:left;font-size:19px;font-weight:800;line-height:1.35}.trip-price small{font-size:10px;margin-top:3px;max-width:150px;font-weight:400}.trip-meta{display:flex;flex-direction:column;text-align:right;font-size:12px;gap:4px;margin:0;color:var(--muted)}.trip-bottom{border-top:1px solid var(--line);padding-top:15px;gap:12px}.person-name{display:block;font-size:14px;font-weight:750;line-height:1.45}.person-note{display:block;font-size:11px;color:var(--muted);margin-top:3px}.details-arrow{font-size:21px;color:var(--accent)}.trip-card.request .details-arrow{color:var(--coral)}.person{gap:11px}.trip-bottom .person>span:last-child{min-width:0}.empty,.loading{border-radius:18px;padding:29px 20px;background:var(--card)}.empty h3{font-size:21px;font-family:Nunito,sans-serif}.empty p{font-size:13px;line-height:1.8;max-width:370px;margin:10px auto 20px}.empty .primary{min-width:160px}.empty .text-button{display:block;margin:9px auto 0}.error-state p{overflow-wrap:anywhere}.bottom-nav{background:color-mix(in srgb,var(--card) 92%,transparent);backdrop-filter:blur(14px);padding:12px 18px calc(12px + var(--bottom));gap:45px;z-index:30;border-top:1px solid var(--line)}.bottom-nav button{font-size:11px;min-width:78px;gap:4px;color:var(--muted)}.bottom-nav button.active{font-weight:800;color:var(--accent)}.bottom-nav svg{width:23px;height:23px}.bottom-nav .create-bottom{display:grid;place-items:center;min-width:54px;width:54px;height:46px;min-height:46px;border-radius:15px;background:#3154ad;color:#fff;transform:translateY(-4px)}.bottom-nav .create-bottom svg{width:28px;height:28px}.bottom-nav i{right:17px;background:var(--coral);width:6px;height:6px}.page-heading{padding:28px 0 23px}.page-heading p{font-size:13px}.panel{border-radius:18px;padding:22px;margin-bottom:17px}.panel h3{font-size:18px}.panel p{font-size:13px;line-height:1.85}.panel label{display:block;color:var(--muted);font-size:12px;margin-top:16px}.panel select{margin-top:7px;font-size:15px}.profile-title h2{font-size:25px;font-weight:850}.profile-title .avatar{width:55px;height:55px;font-size:20px}.profile-stats{gap:25px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.profile-stats b{font:800 29px Nunito,sans-serif}.profile-stats span{font-size:11px}.reliability-note{font-size:12px;color:var(--muted);margin-top:18px}.reliability-panel summary{font-family:Nunito,sans-serif;font-size:17px;font-weight:800;cursor:pointer}.reliability-panel p{margin:15px 0 0}.subscription-card{border-radius:18px;padding:21px}.subscription-card h3{font-size:16px}.subscription-card p{font-size:12px}.subscription-card .actions button{border-radius:11px}.admin-route{padding:15px 0;font-size:12px}.report-item{font-size:12px}dialog{width:min(calc(100% - 30px),590px);border-radius:23px;padding:0 26px 28px;max-height:92dvh;background:var(--card);border-color:var(--line);box-shadow:0 25px 85px #1d2a4030;transition:opacity .18s}dialog::backdrop{background:#15213980;backdrop-filter:blur(3px)}.sheet-header{padding:21px 0 20px;z-index:5}.sheet-header h2{font-family:Nunito,sans-serif;font-size:24px;font-weight:800;letter-spacing:-.5px}.sheet-header .icon-button{width:36px;height:36px;border:0;border-radius:50%;background:var(--soft)}input,select,textarea{border-radius:12px;padding:13px 14px;min-height:49px;font-size:16px;background:var(--card);color:var(--ink);border-color:var(--line)}form>label,form .form-row>label{font-size:12px;margin-bottom:18px}textarea{min-height:90px}.form-row{gap:15px}.actions{gap:9px}.text-button{font-size:12px;font-weight:700;min-height:37px}.note-box{border-radius:12px;font-size:12px;padding:14px 16px;line-height:1.8;margin:19px 0;background:var(--soft)}.hint{font-size:11px;line-height:1.8;margin:10px 0}.ticket-sheet #sheet-content{padding-bottom:5px}.ticket-heading{display:flex;gap:9px;align-items:center;font-size:12px;color:var(--accent);margin:0 0 16px;padding-bottom:15px;border-bottom:1px dashed var(--line)}.ticket-heading svg{width:22px;height:22px}.detail-time{font-size:39px;font-weight:850}.detail-date{font-size:12px;margin-top:7px}.detail-route{position:relative;border-left:2px solid var(--accent);margin:24px 0;padding:0 0 0 18px;font-size:18px;font-weight:750}.detail-route span{position:relative}.detail-route span:before,.detail-route span+span:before{content:'';position:absolute;left:-24px;top:10px;width:10px;height:10px;display:block;margin:0;background:var(--card);border:2px solid var(--accent);border-radius:50%}.detail-route span+span{margin-top:16px}.detail-route small{font-size:11px;font-weight:400;color:var(--muted)}.detail-info{padding:18px 0;margin-bottom:20px}.detail-info small{font-size:11px}.detail-info b{font-size:18px;font-weight:800}.meeting{font-size:14px;line-height:1.85;margin:20px 0}.meeting strong{font-size:11px}.map-link{font-size:13px;display:block;overflow-wrap:anywhere}.meeting-primary{display:flex;justify-content:center;align-items:center;gap:10px;margin:20px 0}.meeting-primary svg{width:21px;height:21px}.response{padding:18px 0}.response .offer-terms{font-size:14px}.response .person-name{font-size:14px}.response p{font-size:12px}.response .actions button{font-size:12px;padding:11px 13px;min-height:43px}.response h3{margin:20px 0}.wizard-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.wizard-progress{display:flex;gap:5px;margin:9px 0 26px}.wizard-progress i{height:3px;background:var(--line);flex:1;border-radius:4px}.wizard-progress i.done{background:var(--accent)}.wizard-sheet [data-step]>h3{font:800 27px Nunito,sans-serif;letter-spacing:-.6px;margin:0 0 24px}.role-choice{display:grid;grid-template-columns:12px 1fr;gap:6px 13px;width:100%;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:18px;padding:22px 20px;margin:13px 0;min-height:102px}.role-choice.selected{border-color:var(--accent);background:var(--accent-bg)}.role-choice[data-publish-kind=offer].selected{border-color:var(--coral);background:var(--coral-bg)}.role-choice strong{font:800 19px Nunito,sans-serif}.role-choice small{grid-column:2;color:var(--muted);font-size:12px;line-height:1.7}.role-dot{width:11px;height:11px;display:block;border-radius:50%;margin-top:8px}.passenger-dot{background:var(--accent)}.driver-dot{background:var(--coral)}.wizard-actions{display:flex;gap:12px;padding-top:25px}.wizard-actions .primary{flex:1}.wizard-actions .secondary{min-width:96px}.additional{border-top:1px solid var(--line);padding:18px 0;margin:14px 0}.additional summary{cursor:pointer;font-size:13px;font-weight:750;color:var(--muted);padding:5px 0;margin-bottom:17px}.additional .form-row{margin-top:15px}.stop-row{gap:9px;margin:11px 0}.stop-row button{color:var(--muted);width:34px;font-size:26px}.review-ticket{border:1px solid var(--line);border-radius:18px;padding:21px}.review-ticket .kind-label{display:block;margin-bottom:15px}.review-ticket .detail-route{font-size:16px}.review-ticket .meeting{margin-bottom:0}.quick-messages{display:flex;gap:7px;flex-wrap:wrap;margin-top:16px}.quick-messages button{padding:8px 12px;border:1px solid var(--line);border-radius:25px;color:var(--accent);font-size:11px}.chat-compose{gap:9px;margin:14px 0}.chat-compose textarea{height:70px;min-height:52px;font-size:15px}.chat-compose button{padding:12px;width:49px;min-width:49px;min-height:49px;display:grid;place-items:center}.chat-compose svg{width:22px;height:22px}.chat-message{border-radius:14px;padding:12px 14px;font-size:14px}.chat-message small{font-size:10px}.chat-messages{height:43dvh}.toast{border-radius:12px;font-size:13px;background:#25334a;bottom:calc(98px + var(--bottom));padding:13px 20px}.network-status{position:fixed;top:0;left:0;right:0;z-index:200;background:var(--accent-bg);color:var(--accent);padding:9px 16px;text-align:center;font-size:12px;border-bottom:1px solid var(--line)}.fatal{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px}.fatal h1{font:800 32px/1.2 Nunito,sans-serif;max-width:430px}.fatal p{max-width:420px;font-size:15px;line-height:1.8}.fatal .hint{font-size:11px}.fatal-brand{display:flex;align-items:center;gap:10px;margin-bottom:35px;font:800 29px Nunito,sans-serif;letter-spacing:-.7px}.fatal-brand svg{stroke:var(--accent);width:39px;height:39px;stroke-width:2.5}.fatal .primary{padding-inline:25px}footer{font-size:10px;padding:30px 0 20px;color:var(--muted);line-height:1.8}.map{border-radius:14px;height:300px}.leaflet-control-attribution{font-size:10px!important}.onboarding-note{font-size:14px;line-height:1.8;margin-bottom:24px}#onboarding-form .primary{margin-top:10px}
[data-density=compact] .trip-list{gap:10px}[data-density=compact] .trip-card{padding:14px 17px;border-radius:14px}[data-density=compact] .card-caption{margin-bottom:8px}[data-density=compact] .trip-time{font-size:23px}[data-density=compact] .trip-top{margin-bottom:9px}[data-density=compact] .card-route{margin:10px 0 12px;font-size:14px}[data-density=compact] .card-route span+span{margin-top:6px}[data-density=compact] .card-terms{margin:10px 0}[data-density=compact] .trip-price{font-size:16px}[data-density=compact] .trip-bottom{padding-top:10px}[data-density=compact] .trip-bottom .avatar{width:30px;height:30px;font-size:11px}[data-density=compact] .person-name{font-size:12px}[data-density=compact] .person-note{font-size:10px}[data-density=compact] .trip-meta{font-size:11px}
@media(min-width:761px){#create-bottom{display:grid}.workspace{grid-template-columns:320px minmax(0,1fr)}#view-mine .trip-list{display:grid;grid-template-columns:1fr 1fr;align-items:start}#view-mine .trip-list>.empty{grid-column:1/-1}.header #create-trip{display:none}.page-heading.row .primary{white-space:nowrap}}
@media(max-width:760px){.header{padding:19px 20px 12px}.brand{font-size:26px;gap:8px}.brand-road{width:32px;height:32px}.header #create-trip{display:none}.header .avatar{width:35px;height:35px}.header #top-profile{width:35px;height:35px}.header-actions{gap:0}main{padding:0 18px}.search-heading{padding:8px 0 18px}.search-tabs{gap:25px}.search-tabs button{font-size:23px}.workspace{gap:20px}.search-panel{padding:15px;border-radius:18px;width:100%}.route-mode{margin-bottom:11px}.route-editor [data-nvk]{min-height:45px;font-size:13px!important}.route-editor select{font-size:14px;min-height:48px}.route-editor label{margin:11px 0}.route-editor [data-preset-fields]>.segmented{margin-bottom:11px}.date-chips{margin-top:10px}.chip{padding:8px 11px;font-size:11px;min-height:38px}.date-picker{width:38px;height:38px}#date-caption{margin:8px 0 11px;font-size:9px}.filter-actions .primary{font-size:12px;min-height:44px}.filter-actions .icon-button{height:44px;width:43px}.type-tabs{margin-bottom:14px}.segmented button{font-size:12px;padding:9px 8px}.trip-card{padding:18px}.trip-time{font-size:29px}.trip-date{font-size:11px}.card-caption{margin-bottom:11px}.kind-label{font-size:10px}.status{font-size:9px}.card-route{font-size:14px;margin:16px 0}.card-route span+span{margin-top:11px}.card-route span:nth-child(n+2):not(:last-child){font-size:12px}.card-terms{margin:14px 0}.trip-price{font-size:18px}.trip-meta{font-size:11px}.trip-bottom{padding-top:13px}.person-name{font-size:13px}.person-note{font-size:10px}.avatar{width:34px;height:34px;font-size:12px}.bottom-nav{gap:4px;justify-content:space-around;padding:11px 7px calc(12px + var(--bottom))}.bottom-nav button{min-width:0;flex:1;font-size:9px;gap:4px}.bottom-nav svg{width:22px;height:22px}.bottom-nav .create-bottom{flex:0 0 49px;min-width:49px;width:49px;height:44px;border-radius:14px}.bottom-nav .create-bottom svg{width:27px;height:27px}.bottom-nav i{right:calc(50% - 18px)}.page-heading{padding:23px 0 22px}.page-heading h1{font-size:27px}.page-heading p{font-size:12px}.page-heading.row{gap:15px}.page-heading.row .primary{font-size:12px;padding:11px 14px}.panel{padding:20px}.panel h3{font-size:18px}.profile-title h2{font-size:24px}.profile-title .avatar{width:49px;height:49px}.profile-stats{gap:22px}.profile-stats b{font-size:26px}.profile-stats span{font-size:10px}.profile-title{gap:13px}.subscription-card{padding:19px}.subscription-card h3{font-size:15px}.subscription-card .actions button{font-size:12px;padding:11px 12px;min-height:43px}dialog{width:100%;max-width:none;margin:auto 0 0;border-radius:24px 24px 0 0;max-height:94dvh;padding:0 20px calc(25px + var(--bottom));border-bottom:0}.sheet-header{padding:18px 0 20px}.sheet-header h2{font-size:23px}.form-row{gap:12px}.detail-time{font-size:36px}.detail-route{font-size:17px}.detail-info{gap:15px}.detail-info b{font-size:17px}.detail-date{font-size:11px}.response .actions{gap:8px}.response .actions button{min-width:105px}.ticket-heading{font-size:11px}.review-ticket{padding:18px}.wizard-sheet [data-step]>h3{font-size:26px;margin-bottom:22px}.role-choice{padding:20px 17px}.role-choice strong{font-size:18px}.role-choice small{font-size:11px}.wizard-actions{padding-top:22px;gap:10px}.wizard-actions .secondary{min-width:90px}.primary,.secondary,.danger{font-size:13px}.hint{font-size:11px}.note-box{font-size:12px}.chat-message{font-size:14px}.chat-compose textarea{font-size:15px}.quick-messages button{font-size:10px;padding:8px 10px}.fatal h1{font-size:29px}.fatal-brand{font-size:28px}.fatal p{font-size:14px}footer{font-size:9px;padding:27px 3px 20px}.map{height:290px}.favorite-chips button{font-size:10px}}
@media(max-width:350px){main{padding:0 14px}.header{padding-inline:16px}.brand{font-size:24px}.header .avatar{display:grid}.header #top-profile{display:block}.search-tabs button{font-size:22px}.trip-card{padding:15px}.person-name{font-size:12px}.trip-date{font-size:10px}.card-route{font-size:13px}.trip-time{font-size:26px}.trip-meta{font-size:10px}.trip-price{font-size:16px}.trip-price small{font-size:9px}.bottom-nav button{font-size:8px}.bottom-nav .create-bottom{flex-basis:45px;min-width:45px;width:45px}.sheet-header h2{font-size:21px}.role-choice strong{font-size:17px}.profile-stats{gap:17px}.profile-stats b{font-size:24px}.profile-title h2{font-size:21px}.page-heading.row{flex-direction:column}.card-caption{flex-wrap:wrap}.form-row{gap:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

.route-editor .route-mode{background:transparent;border:0;padding:0;gap:18px}.route-editor .route-mode button.selected{background:transparent;box-shadow:none;border-radius:0}.request .kind-label{color:var(--coral)}
/* Compact application scale; input text stays 16px to avoid zoom on iOS. */
body{font-size:14px;padding-bottom:calc(75px + var(--bottom))}.header{padding:15px 24px 10px}.brand{font-size:24px;gap:8px}.brand-road{width:30px;height:30px}.header #top-profile,.header .avatar{width:32px;height:32px}main{padding-inline:24px}.search-heading{padding:8px 0 15px}.search-tabs{gap:22px}.search-tabs button{font-size:21px;padding:3px 0}.workspace{gap:22px;grid-template-columns:290px minmax(0,1fr)}.search-panel{padding:12px;border-radius:14px}.route-editor .route-mode{margin-bottom:8px;gap:14px}.route-mode button{min-height:26px}.route-editor [data-nvk]{min-height:40px;font-size:13px!important;padding:7px 8px}.route-editor [data-preset-fields]>.segmented{margin-bottom:8px}.route-editor label{margin:8px 0}.route-editor select{min-height:41px;padding:9px 10px;font-size:14px}.date-chips{margin-top:8px}.chip{min-height:35px;padding:6px 10px;font-size:11px}.date-picker{width:35px;height:35px}#date-caption{margin:6px 0 9px}.filter-actions{gap:6px}.filter-actions .primary{min-height:40px;padding:10px 9px;font-size:12px}.filter-actions .icon-button{width:39px;height:40px}.filter-actions .icon-button svg{width:19px;height:19px}.favorite-chips{padding-top:10px;margin-top:10px;gap:5px}.favorite-chips button{padding:6px 8px}.segmented{padding:3px;border-radius:10px}.segmented button{min-height:34px;padding:7px 10px;font-size:12px}.type-tabs{margin-bottom:12px}.section-heading{margin-bottom:10px}.trip-list{gap:10px}.trip-card{padding:15px 17px;border-radius:14px}.trip-top{margin-bottom:10px}.trip-time{font-size:25px}.card-caption{margin-bottom:8px}.card-route{font-size:14px;margin:11px 0 13px;padding-left:14px}.card-route span+span{margin-top:7px}.card-route span:before{left:-19px}.card-terms{margin:11px 0}.trip-price{font-size:17px}.trip-meta{font-size:11px;gap:3px}.trip-bottom{padding-top:10px}.avatar{width:30px;height:30px;font-size:11px}.person{gap:9px}.person-name{font-size:12px}.person-note{font-size:10px}.primary,.secondary,.danger{min-height:42px;padding:10px 14px;font-size:13px;border-radius:10px}.icon-button{width:38px;height:38px;border-radius:10px}.page-heading{padding:18px 0}.page-heading h1,h1{font-size:25px}.page-heading p{font-size:12px}.panel{padding:17px;border-radius:14px;margin-bottom:13px}.panel h3{font-size:16px}.panel p{font-size:12px}.panel label{margin-top:12px}.panel select{min-height:42px;padding:8px 10px}.profile-title h2{font-size:22px}.profile-title .avatar{width:44px;height:44px;font-size:17px}.profile-stats{margin-top:17px;padding-top:14px;gap:22px}.profile-stats b{font-size:25px}.subscription-card{padding:16px;border-radius:14px;margin-bottom:10px}.subscription-card h3{font-size:14px}.subscription-card .actions button{min-height:38px;padding:9px 11px}.empty,.loading{padding:22px 17px;border-radius:14px}.empty h3{font-size:19px}.empty p{font-size:12px;margin:9px auto 15px}.bottom-nav{padding:8px 12px calc(8px + var(--bottom));gap:38px}.bottom-nav button{font-size:10px;gap:3px;min-height:39px}.bottom-nav svg{width:21px;height:21px}.bottom-nav .create-bottom{width:46px;height:40px;min-height:40px;min-width:46px;border-radius:12px;transform:translateY(-2px)}.bottom-nav .create-bottom svg{width:25px;height:25px}dialog{width:min(calc(100% - 28px),540px);max-height:92dvh;padding:0 21px 22px;border-radius:19px;overscroll-behavior:contain}.sheet-header{padding:24px 0 13px;touch-action:none;user-select:none;cursor:grab}.sheet-header h2{font-size:21px;letter-spacing:-.4px}.sheet-header .icon-button{width:32px;height:32px}.sheet-grab{position:absolute;top:8px;left:50%;transform:translateX(-50%);height:4px;width:34px;border-radius:8px;background:var(--line)}#sheet.is-dragging{transition:none!important;will-change:transform}#sheet.is-dragging .sheet-header{cursor:grabbing}#sheet.is-settling{transition:transform 160ms ease-out;will-change:transform}input,select,textarea{min-height:42px;padding:9px 11px;font-size:16px;border-radius:10px}form>label,form .form-row>label{margin-bottom:13px}.form-row{gap:11px}textarea{min-height:75px}.additional{padding:12px 0;margin:10px 0}.additional summary{font-size:12px;margin-bottom:12px}.hint{font-size:11px;line-height:1.65;margin:8px 0}.note-box{font-size:12px;line-height:1.7;padding:11px 13px;margin:14px 0}.wizard-progress{margin:7px 0 18px}.wizard-top{font-size:10px}.wizard-sheet [data-step]>h3{font-size:23px;margin-bottom:17px}.role-choice{min-height:83px;padding:15px 16px;margin:10px 0;border-radius:14px;gap:4px 11px}.role-choice strong{font-size:17px}.role-choice small{font-size:11px}.role-dot{width:9px;height:9px;margin-top:8px}.wizard-actions{padding-top:17px;gap:9px}.wizard-actions .secondary{min-width:80px}.review-ticket{padding:16px;border-radius:14px}.detail-time{font-size:32px}.detail-route{font-size:16px;margin:18px 0;padding-left:16px}.detail-route span+span{margin-top:12px}.detail-route span:before,.detail-route span+span:before{width:8px;height:8px;left:-21px;top:9px}.detail-info{padding:13px 0;margin-bottom:15px}.detail-info b{font-size:16px}.meeting{font-size:13px;margin:15px 0}.meeting-primary{margin:15px 0}.response{padding:14px 0}.response .actions button{min-height:39px;padding:9px 11px;font-size:12px}.map{height:245px}.ticket-heading{padding-bottom:11px;margin-bottom:12px}.chat-compose textarea{min-height:44px;height:59px}.chat-compose button{min-height:42px;min-width:42px;width:42px;padding:10px}.quick-messages{margin-top:12px;gap:6px}.quick-messages button{padding:7px 10px;font-size:10px}.chat-message{padding:9px 11px;border-radius:11px;font-size:13px}.chat-message small{font-size:10px}.chat-messages{height:42dvh}.onboarding-note{font-size:13px;margin-bottom:17px}.toast{bottom:calc(80px + var(--bottom));font-size:12px;padding:11px 16px}footer{padding:22px 0 16px;font-size:9px}
[data-density=compact] .trip-list{gap:9px}[data-density=compact] .trip-card{padding:12px 14px;border-radius:13px}[data-density=compact] .trip-time{font-size:22px}[data-density=compact] .card-caption{margin-bottom:6px}[data-density=compact] .trip-top{margin-bottom:7px}[data-density=compact] .card-route{margin:8px 0 10px;font-size:13px}[data-density=compact] .card-route span+span{margin-top:4px}[data-density=compact] .card-terms{margin:9px 0}[data-density=compact] .trip-price{font-size:16px}[data-density=compact] .trip-bottom{padding-top:9px}[data-density=compact] .trip-bottom .avatar{width:27px;height:27px;font-size:10px}[data-density=compact] .trip-meta{font-size:11px}[data-density=compact] .person-note{font-size:10px}
@media(max-width:760px){.header{padding:12px 16px 8px}.brand{font-size:22px;gap:7px}.brand-road{width:27px;height:27px}.header #top-profile,.header .avatar{width:30px;height:30px}main{padding-inline:14px}.search-heading{padding:5px 0 13px}.search-tabs{gap:21px}.search-tabs button{font-size:20px}.workspace{gap:15px;grid-template-columns:none}.search-panel{padding:11px;border-radius:14px}.route-editor [data-nvk]{min-height:39px;font-size:12px!important}.route-editor select{font-size:14px;min-height:41px}.route-editor label{margin:8px 0}.route-editor .route-mode{margin-bottom:8px}.filter-actions .primary{min-height:40px;font-size:12px}.filter-actions .icon-button{height:40px;width:39px}.type-tabs{margin-bottom:11px}.trip-card{padding:15px 16px}.trip-time{font-size:25px}.trip-date{font-size:11px}.card-route{font-size:13px;margin:11px 0 12px}.card-route span:nth-child(n+2):not(:last-child){font-size:11px}.card-route span+span{margin-top:7px}.card-terms{margin:11px 0}.trip-meta{font-size:11px}.trip-price{font-size:17px}.bottom-nav{gap:3px;padding:8px 6px calc(9px + var(--bottom))}.bottom-nav button{font-size:9px;min-height:37px}.bottom-nav svg{width:20px;height:20px}.bottom-nav .create-bottom{flex:0 0 44px;width:44px;min-width:44px;height:39px;min-height:39px;border-radius:12px}.bottom-nav .create-bottom svg{width:24px;height:24px}.page-heading{padding:18px 0}.page-heading h1{font-size:24px}.page-heading p{font-size:12px}.panel{padding:16px}.panel h3{font-size:16px}.profile-title h2{font-size:22px}.profile-title .avatar{width:43px;height:43px}.profile-stats{gap:18px}.profile-stats b{font-size:24px}.subscription-card{padding:16px}dialog{width:100%;max-width:none;margin:auto 0 0;max-height:93dvh;padding:0 16px calc(18px + var(--bottom));border-radius:20px 20px 0 0}.sheet-header{padding:23px 0 13px}.sheet-header h2{font-size:21px}.wizard-sheet [data-step]>h3{font-size:22px;margin-bottom:17px}.role-choice{padding:15px;min-height:82px}.role-choice strong{font-size:17px}.role-choice small{font-size:11px}.wizard-actions{padding-top:17px}.form-row{gap:10px}.detail-time{font-size:31px}.detail-route{font-size:16px}.detail-info b{font-size:16px}.review-ticket{padding:15px}.map{height:245px}.response .actions button{min-height:39px;min-width:98px}.page-heading.row .primary{padding:10px 12px;font-size:12px}.chat-compose textarea{font-size:16px}.chat-compose button{min-width:42px;width:42px}.onboarding-note{font-size:13px}footer{padding:21px 2px 14px}.hint{font-size:11px}}
@media(max-width:350px){.brand{font-size:21px}.header{padding-inline:14px}main{padding-inline:12px}.search-tabs button{font-size:19px}.sheet-header h2{font-size:20px}.role-choice strong{font-size:16px}.profile-title h2{font-size:21px}.bottom-nav button{font-size:8px}.card-caption{gap:6px}.trip-date{font-size:10px}.trip-meta{font-size:10px}.trip-price small{font-size:9px}.profile-stats b{font-size:23px}}
@media(prefers-reduced-motion:reduce){#sheet.is-settling{transition:none!important}}
.trip-live-update{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--accent-bg);color:var(--accent);padding:9px 12px;border-radius:10px;margin:0 0 14px;font-size:11px}.trip-live-update button{font-size:11px;padding:0;min-height:30px}

#sheet.locked-sheet .sheet-grab{display:none}#sheet.locked-sheet .sheet-header{cursor:default}

/* Separate adjacent full-width actions, including rebooking and chat history. */
#trip-controls > .wide + .wide{margin-top:10px}

/* Each stop owns its marker and connector; alignment follows the first text line. */
.card-route,.detail-route{border-left:0;padding-left:0;--route-row-gap:6px;--route-color:var(--accent)}
.detail-route{--route-row-gap:10px}
.trip-card.request .card-route{--route-color:var(--coral)}
.card-route > span,.detail-route > span{position:relative;display:block;margin:0;padding:0 0 var(--route-row-gap) 19px;line-height:1.5}
.card-route > span + span,.detail-route > span + span{margin-top:0}
.card-route > span:last-child,.detail-route > span:last-child{padding-bottom:0}
.card-route > span::before,.detail-route > span::before,.detail-route > span + span::before{box-sizing:border-box;content:'';position:absolute;display:block;left:0;top:.75em;width:8px;height:8px;transform:translateY(-50%);margin:0;border:2px solid var(--route-color);border-radius:50%;background:var(--card);z-index:1}
.card-route > span:not(:last-child)::after,.detail-route > span:not(:last-child)::after{content:'';position:absolute;left:3px;top:.75em;width:2px;height:100%;background:var(--route-color);pointer-events:none}

/* Route modes share equal hit areas; the active underline does not change size. */
.route-editor .route-mode{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:8px}
.route-editor .route-mode button{display:flex;align-items:center;justify-content:center;width:100%;height:34px;min-height:34px;margin:0;padding:5px 4px!important;border-bottom:2px solid transparent}
.route-editor .route-mode button.selected{border-bottom-color:var(--accent)}

/* Route study: direction scope, quick times and compact journey metadata. */
.scope-mode{margin-bottom:10px}.scope-mode button{flex:1}.quick-time{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 10px}.quick-time button{font-size:12px;padding:7px 10px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.journey-info{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0}.route-editor select{max-width:100%}#time-summary{min-height:18px}.route-editor .route-mode{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}

/* One segmented control language across scope, mode, direction and category. */
.segmented{gap:5px;padding:4px;border:1px solid var(--line);background:var(--card);border-radius:12px}.segmented button,.route-editor .route-mode button{min-height:34px;height:auto;display:flex;align-items:center;justify-content:center;border:0!important;border-radius:8px;padding:7px 9px!important;font:inherit;font-size:12px;font-weight:700;color:var(--muted);background:transparent;flex:1;line-height:1.3}.segmented button.selected,.route-editor .route-mode button.selected{background:var(--accent-bg);color:var(--accent);box-shadow:none}.route-editor .route-mode{gap:5px}.route-editor .segmented{margin-bottom:9px}.brief-card{display:none}.route-accent-0{--direction:#4569bd}.route-accent-1{--direction:#32846d}.route-accent-2{--direction:#9765b0}.route-accent-3{--direction:#bf6b44}.route-accent-4{--direction:#a68125}.route-accent-5{--direction:#27899b}.route-accent-6{--direction:#b65b7c}.trip-card{border-left:3px solid var(--direction,var(--accent))}.trip-card .card-route>span::before{background:var(--direction,var(--accent));border-color:var(--direction,var(--accent))}[data-list-view=brief] .trip-card{padding:11px 13px}[data-list-view=brief] .trip-card>:not(.brief-card){display:none}[data-list-view=brief] .brief-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 9px;text-align:left;align-items:center}.brief-route{grid-column:1/-1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:750}.brief-time{font-size:12px;color:var(--muted)}.brief-price{font-size:13px;font-weight:750;white-space:nowrap}.brief-price small{font-size:10px;color:var(--muted);font-weight:400}.legal-links{display:grid;gap:12px;margin-bottom:20px}.legal-links a,.row-check a{color:var(--accent)}#sheet-content>.wide+.wide{margin-top:9px}#data-export{font:11px/1.5 monospace;min-height:220px;width:100%}

.segmented button,.route-editor .route-mode button{border-radius:8px!important}

/* Match scope, route mode and direction controls despite legacy selector specificity. */
.route-editor>.segmented,.route-editor [data-preset-fields]>.segmented{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5px!important;padding:4px!important;border:1px solid var(--line)!important;background:var(--card)!important;border-radius:12px!important;margin:0 0 9px!important}.route-editor .segmented button{height:34px!important;min-height:34px!important;width:100%!important;padding:7px 5px!important;background:transparent!important;color:var(--muted)!important;border:0!important;border-radius:8px!important;font-size:12px!important;font-weight:700!important;box-shadow:none!important}.route-editor .segmented button.selected{background:var(--accent-bg)!important;color:var(--accent)!important}

#privacy-settings{margin-top:13px;text-align:left;justify-content:flex-start}#privacy-settings::after{content:"→";float:right;margin-left:12px}

/* Headerless feed: tools live beside tabs, native selects stay visible. */
main{padding-top:calc(10px + env(safe-area-inset-top,0px))}.search-heading{gap:10px;align-items:center;justify-content:space-between}.feed-tools{display:flex;align-items:center;gap:7px;flex-shrink:0}.feed-tools .icon-button{width:32px;height:32px;min-width:32px;padding:0}.feed-tools #top-profile{display:grid;place-items:center;width:32px;height:32px;min-width:32px;padding:0;border:0;overflow:hidden}.feed-tools #top-profile>.avatar{width:32px;height:32px}.feed-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px 10px;margin:0 0 13px}.feed-filters label{display:flex;flex-direction:column;gap:5px;margin:0;font-size:11px;color:var(--muted);min-width:0}.feed-filters select{width:100%;max-width:100%;min-width:0;min-height:39px;margin:0;padding:8px 27px 8px 10px;font-size:13px;border:1px solid var(--line);border-radius:10px;background-color:var(--card);color:var(--ink);text-overflow:ellipsis}.feed-filters .filter-reset{grid-column:1/-1;justify-self:end;padding:1px 0;font-size:11px;min-height:22px}.trip-list[aria-busy=true]{cursor:progress}
@media(max-width:420px){.search-tabs{gap:15px}.search-tabs button{font-size:18px}.feed-tools{gap:5px}.feed-tools .icon-button,.feed-tools #top-profile,.feed-tools #top-profile>.avatar{width:29px;height:29px;min-width:29px}}@media(max-width:350px){.search-tabs{gap:12px}.search-tabs button{font-size:17px}.search-heading{gap:6px}.feed-filters{gap:6px 8px}}

/* One layout switch beside every trip list; profile avatar belongs to bottom navigation. */
.search-heading{justify-content:flex-start}.card-list-heading{display:flex;align-items:center;gap:10px;justify-content:space-between}.card-list-heading h2{margin:0;min-width:0}.density-toggle{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;min-width:32px;padding:0;margin-left:auto;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:var(--card)}.density-toggle svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.density-toggle[aria-pressed=true]{background:var(--accent-bg);color:var(--accent)}.mine-list-heading{display:flex;align-items:center;gap:10px;margin-bottom:14px}.mine-list-heading>.small-tabs{flex:1;min-width:0;margin:0}.mine-list-heading>.density-toggle{margin-left:0}.nav-profile-avatar{display:grid;place-items:center;width:23px;height:23px;flex:0 0 23px}.bottom-nav .nav-profile-avatar>.avatar{display:grid;place-items:center;width:23px;height:23px;min-width:23px;border-radius:50%;font-size:9px;line-height:1;overflow:hidden}.bottom-nav .nav-profile-avatar>.avatar img{width:100%;height:100%;object-fit:cover}.bottom-nav button.active .nav-profile-avatar>.avatar{box-shadow:0 0 0 2px var(--accent-bg)}
@media(max-width:350px){.mine-list-heading{gap:8px}.mine-list-heading .small-tabs button{padding-inline:5px!important;font-size:11px}.density-toggle{flex-basis:30px;width:30px;height:30px;min-width:30px}}

/* Seven consistent route accents, with strong independent role labels. */
:root{--role-driver:#3154ad;--role-passenger:#a64c37}.route-accent-0{--direction:#3154ad;--direction-rgb:49,84,173}.route-accent-1{--direction:#287b61;--direction-rgb:40,123,97}.route-accent-2{--direction:#8156a7;--direction-rgb:129,86,167}.route-accent-3{--direction:#b05b3d;--direction-rgb:176,91,61}.route-accent-4{--direction:#9d7820;--direction-rgb:157,120,32}.route-accent-5{--direction:#247e92;--direction-rgb:36,126,146}.route-accent-6{--direction:#ad4d76;--direction-rgb:173,77,118}.trip-card{border-left-width:4px;background:linear-gradient(110deg,rgba(var(--direction-rgb),.075),transparent 75%),var(--card)}.kind-label{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;white-space:nowrap;padding:4px 9px;border-radius:8px;font-size:11px;line-height:1.35;font-weight:800;letter-spacing:0}.kind-label.offer{background:var(--role-driver);color:#fff}.kind-label.request{background:var(--role-passenger);color:#fff}.kind-label svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.card-caption{gap:7px;align-items:center;flex-wrap:wrap}.brief-heading{grid-column:1/-1;display:flex;align-items:center;gap:8px;min-width:0}.brief-heading>.brief-route{flex:1;min-width:0;grid-column:auto}.brief-heading>.kind-label{font-size:10px;padding:3px 6px;gap:4px}.brief-heading>.kind-label svg{width:12px;height:12px}.role-choice{grid-template-columns:32px 1fr;align-items:center}.role-symbol{display:grid;place-items:center;width:32px;height:32px;border-radius:10px}.role-symbol svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}.driver-symbol{background:#e9eefb;color:var(--role-driver)}.passenger-symbol{background:#fae9e1;color:var(--role-passenger)}.role-choice[data-publish-kind=offer].selected{border-color:var(--role-driver);background:#edf1fc}.role-choice[data-publish-kind=request].selected{border-color:var(--role-passenger);background:#fff0e8}.route-point-fields{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:10px 8px;align-items:end}.route-point-fields>label{grid-column:1;margin:0!important;min-width:0}.route-point-fields>label:nth-child(2){grid-row:2}.route-point-fields input{width:100%;min-width:0}.route-point-fields>.point-swap{grid-column:2;grid-row:1/3;align-self:center;width:34px;height:34px;min-width:34px;border:1px solid var(--line);border-radius:10px}.point-swap svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8}.point-editor .scope-mode{margin-bottom:14px!important}#sheet-content>.kind-label{margin-bottom:10px}.review-ticket>.kind-label{display:inline-flex;margin-bottom:14px}
[data-theme=dark] .trip-card{background:linear-gradient(110deg,rgba(var(--direction-rgb),.14),transparent 80%),var(--card)}[data-theme=dark] .role-choice[data-publish-kind=offer].selected{background:#293b60;border-color:#a0b7f6}[data-theme=dark] .role-choice[data-publish-kind=request].selected{background:#4b342e;border-color:#efa895}[data-theme=dark] .driver-symbol{background:#2d426b;color:#bacbfa}[data-theme=dark] .passenger-symbol{background:#5a382d;color:#f6b39d}

[data-theme=dark] .kind-label.offer,[data-theme=dark] .kind-label.request{color:#fff}

/* Shared field rhythm applies inside every step, nested section and dialog. */
#sheet{position:fixed;inset:max(12px,env(safe-area-inset-top)) 0 auto;margin:0 auto;width:min(calc(100% - 24px),560px);max-width:560px;max-height:calc(100dvh - max(12px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom)));padding:0 18px 20px;border:1px solid var(--line);border-radius:20px;transition:none;scrollbar-gutter:stable;overflow-x:hidden}
#sheet.is-closing{pointer-events:none}
#sheet::backdrop{animation:backdrop-in 200ms ease-out}
@keyframes backdrop-in{from{background:transparent;backdrop-filter:blur(0)}to{background:#15213980;backdrop-filter:blur(3px)}}
#sheet-content{min-width:0;overflow-wrap:anywhere}
#sheet-content form label,.panel label{display:block;font-size:12px;color:var(--muted);margin:0 0 14px}
#sheet-content form label :is(input,select,textarea),.panel label :is(input,select,textarea){margin-top:6px}
#sheet-content .form-row{gap:12px;margin:0 0 14px;align-items:end}
#sheet-content .form-row>label{margin:0}
#sheet-content .route-point-fields label{margin:0!important}
#sheet-content .row-check{display:flex!important;align-items:flex-start;gap:10px;margin:12px 0 16px;line-height:1.55;color:var(--ink)}
#sheet-content .row-check input{width:18px;height:18px;min-height:18px;min-width:18px;margin:1px 0 0;flex:0 0 18px;padding:0}
#sheet-content :is(input,select,textarea){max-width:100%;min-width:0}
#sheet-content textarea{resize:vertical;line-height:1.5}
#sheet-content .additional{padding:14px 0 0;margin:16px 0 0}
#sheet-content .additional>summary{margin-bottom:14px}
#sheet-content .eta-row{margin:14px 0 10px;align-items:end}
#sheet-content .eta-row label{margin:0!important}
#sheet-content .eta-row button{min-height:42px;margin:0}
#sheet-content :is(.hint,.note-box){line-height:1.5}
#sheet-content .wizard-actions{padding-top:18px;margin-top:0;align-items:stretch}
#sheet-content .wizard-actions button{min-height:42px}
#sheet-content .quick-time{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
#sheet-content .quick-time button{flex:1;white-space:nowrap}
#sheet-content .additional>label:last-child{margin-bottom:0}
#sheet-content .actions{gap:10px;row-gap:10px}
#sheet-content>.wide+.wide{margin-top:10px}
.panel form,.panel{min-width:0}
.panel>h3{margin-bottom:14px}
.service-menu{display:grid;gap:10px;margin-top:14px}
.developers-intro{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.developers-intro img{border-radius:20px;flex:0 0 72px}
.developers-intro h3{margin:0 0 5px}.developers-intro p{margin:0}
.developers-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.developers-list li{padding:14px 16px;background:var(--soft);border:1px solid var(--line);border-radius:12px}
.feedback-actions{margin:16px 0}
.feedback-ticket{display:grid;gap:9px;text-align:left;white-space:normal;padding:14px;margin:0 0 10px}
.feedback-ticket>span:first-child{display:grid;gap:5px}.feedback-ticket small{font-weight:400;color:var(--muted)}
.feedback-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.feedback-messages{display:grid;gap:12px;margin-bottom:18px}
.feedback-message{padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:var(--soft);min-width:0}
.feedback-message.staff{border-inline-start:3px solid var(--accent)}
.feedback-message b{font-size:12px}.feedback-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0;line-height:1.5}.feedback-message small{font-size:10px;color:var(--muted)}
#sheet-content .feedback-form label{margin-bottom:14px}
button,a{transition:background-color 160ms ease,color 160ms ease,border-color 160ms ease,box-shadow 160ms ease}
input,textarea,select{transition:border-color 160ms ease,box-shadow 160ms ease}
button:active:not(:disabled){filter:brightness(.97)}
@media(max-width:360px){#sheet{padding:0 13px 17px;width:calc(100% - 16px)}#sheet-content .form-row{gap:9px}.sheet-header h2{font-size:19px}.feedback-form .actions>*{flex:1;min-width:100px}}
@media(prefers-reduced-motion:reduce){#sheet::backdrop{animation:none}*,*::before,*::after{animation-duration:0s!important;transition-duration:0s!important;scroll-behavior:auto!important}}

/* Brief cards: preserve the route row; price left, highlighted time right. */
.brief-price{color:var(--ink);font-weight:600;justify-self:start;display:inline-flex;align-items:center;gap:4px;line-height:1}
.brief-time{justify-self:end;display:inline-flex;align-items:center;gap:5px;white-space:nowrap;line-height:1}
.brief-time .brief-date{font-size:10px;color:var(--muted);font-weight:400;line-height:1}
.brief-time b{display:inline-flex;align-items:center;justify-content:center;height:28px;font-size:20px;font-weight:800;line-height:1;color:#fff;background:#3154ad;padding:0 5px;border-radius:8px;font-variant-numeric:tabular-nums}
.trip-owner-tools{margin:16px 0}
#edit-trip-form>.wide+.wide{margin-top:10px}

@media(max-width:360px){.brief-price small{font-size:9px}}

.brief-price small{line-height:1}

.profile-telegram{display:block;text-align:center;text-decoration:none;margin:14px 0 18px}
