[hidden]{display:none!important}:root{--blue:#2a65fd;--blue-d:#1849c9;--navy:#0b1a45;--navy-2:#13255c;--amber:#fbb112;--amber-d:#e59c00;--ink:#0b1a45;--ink-2:#4a5677;--line:#dde3f0;--soft:#f3f6fd;--bg:#fff;--ok:#11703a;--bad:#b3261e;--r:16px;--shadow-1:0 1px 2px #0000000f,0 2px 8px #0000000a;--ease-out:cubic-bezier(.23,1,.32,1)}.ic{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-poppins),"Poppins",system-ui,sans-serif;color:var(--ink);background:var(--soft);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--amber);outline-offset:2px}.app{grid-template-columns:232px 1fr;min-height:100vh;display:grid}.app[hidden],.login[hidden]{display:none}.login{background:var(--navy);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.login form{background:#fff;border-radius:20px;gap:16px;width:100%;max-width:400px;padding:32px 28px;display:grid;box-shadow:0 24px 56px #00000040}.login .brand{color:var(--navy);padding:0}.login .brand small{color:var(--ink-2)}.login h1{margin-top:8px;font-size:24px}.login .f{gap:6px;display:grid}.login label{color:var(--ink-2);font-size:13px;font-weight:600}.login input{border:1px solid #c5cddf;border-radius:10px;min-height:48px;padding:10px 12px;font-size:16px}.login .btn{width:100%;min-height:48px}.login .err{color:var(--bad);font-size:14px;font-weight:600}.login .back{color:var(--ink-2);justify-self:center;font-size:14px}.who-in{color:#fff;padding:6px;font-size:13px}.who-in small{color:#cfd7ee;overflow-wrap:anywhere;font-size:12px;display:block}.side{background:var(--navy);color:#cfd7ee;flex-direction:column;gap:20px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.brand{color:#fff;align-items:center;gap:10px;padding:0 6px;font-weight:700;line-height:1.2;text-decoration:none;display:flex}.brand img{border-radius:8px;width:40px;height:40px}.brand small{color:#cfd7ee;font-size:12px;font-weight:500;display:block}.side nav{gap:2px;display:grid}.side nav a{color:#cfd7ee;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:flex}.side nav a .count{margin-left:auto}.side nav a .ic{opacity:.85}.side nav a:hover{background:var(--navy-2);color:#fff}.side nav a[aria-current=page]{background:var(--blue);color:#fff}.count{background:var(--amber);min-width:22px;color:var(--navy);text-align:center;border-radius:999px;padding:0 6px;font-size:12px;font-weight:700}.side .foot{gap:8px;margin-top:auto;font-size:13px;display:grid}.side .foot a,.side .foot button{color:#cfd7ee;text-align:left;cursor:pointer;background:0 0;border:0;padding:6px;text-decoration:underline}@media (max-width:860px){.app{grid-template-columns:minmax(0,1fr)}.side{z-index:5;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;height:auto;padding:12px 16px;display:grid;position:sticky}.side nav{scrollbar-width:none;grid-area:2/1/auto/-1;gap:4px;padding-right:32px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}.side nav a{white-space:nowrap;gap:8px}.side .foot{grid-area:1/2;gap:0;margin:0;display:flex}.side .foot .who-in,.side .foot a,.side .foot #reset{display:none}.side .foot button{min-height:44px;padding:0 10px}.side .foot .wide-only{display:none}}.side .foot .phone-only{display:none}@media (max-width:860px){.side .foot .phone-only{display:inline}}main{min-width:0;padding:28px 32px 48px}main:focus{outline:none}@media (max-width:860px){main{padding:20px 16px 40px}}.head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;margin-bottom:20px;display:flex}h1{letter-spacing:-.01em;font-size:26px;font-weight:700;line-height:1.2}::selection{background:var(--amber);color:var(--navy)}html{scrollbar-color:#b9c4dd transparent}body{caret-color:var(--blue)}a{text-underline-offset:3px}.num,.kpi b{font-variant-numeric:tabular-nums}.ref{color:var(--ink-2);white-space:nowrap;margin-left:6px;font-size:12px}h2{font-size:16px;font-weight:700}.sub{color:var(--ink-2)}.demo{color:var(--ink-2);background:#fff8e6;border:1px solid #f6dc9b;border-radius:8px;margin-bottom:20px;padding:8px 12px;font-size:13px}.card{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);background:#fff;padding:20px}.kpis{grid-template-columns:repeat(4,minmax(0,1fr));padding:0;display:grid}.kpi{border-left:1px solid var(--line);padding:18px 22px}.kpi:first-child{border-left:0}.kpi b{margin-top:2px;font-size:28px;font-weight:700;line-height:1.2;display:block}.kpi span{color:var(--ink-2);font-size:14px}.kpi.warn b{color:#8a5a00}.hist{margin-top:14px}.chart{height:220px;margin:16px 0 4px;padding:0 0 26px 48px;position:relative}.ticks{pointer-events:none;position:absolute;inset:0 0 26px 48px}.ticks span{border-top:1px solid var(--line);position:absolute;left:0;right:0}.ticks span:first-child{border-top-color:#9aa3ba}.ticks i{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12px;font-style:normal;position:absolute;top:0;right:calc(100% + 8px);transform:translateY(-50%)}.bars{grid-template-columns:repeat(var(--cols),minmax(0,1fr));display:grid;position:absolute;inset:0 0 0 48px}.col{border-radius:8px;justify-content:center;align-items:flex-end;padding:0 0 26px;display:flex;position:relative}.col:hover{background:#2a65fd0d}.col .bar{background:#8fadfd;border-radius:4px 4px 0 0;width:min(24px,70%);min-height:0;transition:background-color .15s;position:relative}.col:hover .bar{background:#6f95fc}.col[aria-current] .bar{background:var(--blue)}.col .bar b{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:13px;font-weight:700;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.col .x{color:var(--ink-2);text-align:center;font-size:12px;position:absolute;bottom:4px;left:0;right:0}.col[aria-current] .x{color:var(--ink);font-weight:700}.tip{z-index:2;background:var(--navy);color:#fff;white-space:nowrap;pointer-events:none;border-radius:10px;gap:2px;padding:8px 12px;font-size:13px;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 6px 16px #00000026}.tip[hidden]{display:none}.tip span{color:#cfd7ee}.as-table summary{width:max-content;color:var(--blue-d);cursor:pointer;font-size:13px;font-weight:600}.hist table{min-width:0;margin-top:10px}.hist th,.hist td{padding:10px 12px}.hist th:first-child,.hist td:first-child{padding-left:0}.hist th:last-child,.hist td:last-child{padding-right:0}.hist th{background:0 0}.hist tr[aria-current] td{font-weight:700}@media (max-width:640px){.hist th,.hist td{padding:10px 6px;font-size:14px}.hist th{font-size:12px}.chart{padding-left:42px}.ticks,.bars{left:42px}}.cols{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}@media (max-width:1100px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi:nth-child(3){border-left:0}.kpi:nth-child(n+3){border-top:1px solid var(--line)}}@media (max-width:760px){.cols{grid-template-columns:1fr}}.list{margin-top:10px;list-style:none}.list li{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.list li:first-child{border-top:0}.list small{color:var(--ink-2);display:block}.list .num{white-space:nowrap}.empty{color:var(--ink-2);padding:12px 0}.list a{color:inherit;text-decoration:none}.list a:hover b{text-decoration:underline}.pill.late{color:var(--bad);background:#fbe5e3;margin-left:6px}.toast{z-index:20;background:var(--navy);color:#fff;transition:opacity .2s ease,transform .2s var(--ease-out);border-radius:10px;padding:10px 16px;font-size:14px;font-weight:500;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}.toast.bad{background:var(--bad)}.toast[data-off]{opacity:0;pointer-events:none;transform:translate(-50%,8px)}.btn{cursor:pointer;background:var(--blue);color:#fff;min-height:40px;transition:background-color .2s ease,transform .16s var(--ease-out);border:0;border-radius:10px;justify-content:center;align-items:center;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn-amber{background:var(--amber);color:var(--navy)}@media (hover:hover) and (pointer:fine){.btn:hover{background:var(--blue-d)}.btn-amber:hover{background:var(--amber-d)}}.tools{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}input[type=search],input[type=text],input[type=tel],input[type=number],input[type=datetime-local],select.in{background:#fff;border:1px solid #9aa3ba;border-radius:8px;min-width:0;min-height:40px;padding:6px 10px}input[type=datetime-local]{appearance:none;text-align:left}input[type=datetime-local]::-webkit-date-and-time-value{text-align:left;margin:0}input[type=search]{flex:1;min-width:200px}label.sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.table,.board{position:relative}.table{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);background:#fff;overflow-x:auto}tbody tr{transition:background-color .15s}tbody tr:hover{background:#f8faff}input:focus,select:focus{border-color:var(--blue);outline:none;box-shadow:0 0 0 4px #2a65fd26}@media (prefers-reduced-motion:reduce){.btn{transition:none}.btn:active{transform:none}}table{border-collapse:collapse;width:100%;min-width:760px}th,td{text-align:left;border-top:1px solid var(--line);vertical-align:middle;padding:12px 14px}th{color:var(--ink-2);background:var(--soft);border-top:0;font-size:13px;font-weight:600}td small{color:var(--ink-2);font-size:13px;display:block}td:first-child{white-space:nowrap}.num{text-align:right;font-variant-numeric:tabular-nums}.thumb{object-fit:cover;border-radius:6px;width:72px;height:46px}.pill{background:var(--soft);color:var(--ink-2);white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}a.pill{text-decoration:none;transition:filter .15s}a.pill:hover{filter:brightness(.95);text-decoration:underline}.pay-unpaid{font-weight:600;color:var(--bad)!important}.pay-cell{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.who,.dates span{white-space:nowrap}.dates .to{color:var(--ink-2);font-size:14px;display:block}.st{appearance:none;cursor:pointer;background-position:right 11px center;background-repeat:no-repeat;background-size:12px;background-image:var(--chev);border:1px solid #0000;border-radius:999px;min-height:34px;padding:0 30px 0 14px;font-size:13px;font-weight:600;line-height:1.5}.st-Pending{color:#8a5a00;--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%238a5a00' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-color:#fff3d6}.st-Confirmed{color:var(--blue-d);--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%231849c9' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-color:#e4ecff}.st-Picked{color:var(--ok);--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%2311703a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-color:#e3f5ea}.st-Returned{color:var(--ink-2);--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%234a5677' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-color:#eceff5}.st-Cancelled{color:var(--bad);--chev:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 4.5l3 3 3-3' fill='none' stroke='%23b3261e' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-color:#fbe5e3}@media (max-width:640px){.stack{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.stack table{min-width:0}.stack thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.stack tbody{gap:12px;display:grid}.stack tr{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);background:#fff;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"who status""car car""dates dates""pay total""ref ref";gap:12px;padding:16px;display:grid}.stack tbody tr:hover{background:#fff}.stack td{border:0;min-width:0;padding:0}.stack td.who{white-space:normal;grid-area:who}.stack .who .name{font-size:17px;font-weight:700;line-height:1.3;display:block}.stack td.status{grid-area:status;align-self:start}.stack td.car{grid-area:car;margin-top:-4px;font-weight:500}.stack td.dates{background:var(--soft);border-radius:10px;grid-area:dates;grid-template-columns:1fr 1fr;gap:2px 12px;padding:10px 12px;font-size:14px;font-weight:500;display:grid}.stack .dates .from:before,.stack .dates .to:before{color:var(--ink-2);font-size:12px;font-weight:600;display:block}.stack .dates .from:before{content:"Pickup"}.stack .dates .to:before{content:"Return"}.stack .dates .to{color:inherit;font-size:inherit}.stack .dates .word{display:none}.stack .dates small{grid-column:1/-1;margin-top:4px}.stack td.pay{grid-area:pay;align-self:center}.stack .pay-cell{flex-flow:wrap;align-items:center;gap:6px 8px}.stack .pay small{font-size:13px}.stack td.total{grid-area:total;align-self:center;font-size:17px;font-weight:700}.stack td.ref{border-top:1px solid var(--line);color:var(--ink-2);grid-area:ref;padding-top:10px;font-size:13px}.stack .ref b,.stack .ref small{font-size:13px;font-weight:500;display:inline}.stack .ref small:before{content:" · "}.stack tr:has(td.empty){display:block}.stack td.empty{padding:16px;display:block}.cust{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.cust table{min-width:0}.cust thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.cust tbody{gap:12px;display:grid}.cust tr{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);background:#fff;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name spent""phone phone""email email""foot foot";gap:6px 12px;padding:16px;display:grid}.cust tbody tr:hover{background:#fff}.cust td{text-align:left;border:0;min-width:0;padding:0}.cust td.name{white-space:normal;grid-area:name;font-size:17px;line-height:1.3}.cust .name .pill{vertical-align:2px;margin-left:4px}.cust td.spent{grid-area:spent;justify-self:end;font-size:17px;font-weight:700}.cust td.phone{grid-area:phone;margin-top:4px}.cust td.email{overflow-wrap:anywhere;grid-area:email;font-size:14px}.cust td.email:empty{display:none}.cust td.visits{border-top:1px solid var(--line);grid-area:foot;margin-top:6px;padding-top:10px;font-size:14px;font-weight:600}.cust td.last{color:var(--ink-2);grid-area:foot;justify-self:end;margin-top:6px;padding-top:10px;font-size:14px}.cust td.last:before{content:attr(data-l) " "}.cust tr:has(td.empty){display:block}.cust td.empty{padding:16px;display:block}}.fleet-h{margin:0 0 10px}.fleet-sub{max-width:70ch;color:var(--ink-2);margin:-4px 0 12px;font-size:14px}.rates td.type small{color:var(--ink-2);font-size:13px;font-weight:400;display:block}.type-list{margin:0 0 24px}.cars+.fleet-h{margin-top:24px}.type-list .chip{cursor:default;align-items:center;gap:8px;display:inline-flex}.type-list .chip small{color:var(--ink-2)}.rates{margin-bottom:24px}.rates input{width:92px}.car-id{align-items:center;gap:12px;display:flex}.avail label{cursor:pointer;align-items:center;gap:8px;display:flex}@media (max-width:640px){.rates,.cars{box-shadow:none;background:0 0;border:0;border-radius:0;overflow:visible}.rates table,.cars table{min-width:0}.rates thead,.cars thead{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.rates tbody,.cars tbody{gap:12px;display:grid}.rates tr,.cars tr{border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-1);background:#fff;gap:8px 10px;padding:16px;display:grid}.rates tbody tr:hover,.cars tbody tr:hover{background:#fff}.rates td,.cars td{text-align:left;border:0;min-width:0;padding:0}.rates tr{grid-template-columns:repeat(3,minmax(0,1fr))}.rates td.type{grid-column:1/-1;font-size:17px}.rates td.rate{flex-direction:column;justify-content:flex-end;gap:4px;display:flex}.rates td.rate:before,.rates td.avail:before{content:attr(data-l);color:var(--ink-2);font-size:12px;line-height:1.3}.rates td.rate input,.rates td.rate input[type=number]{width:100%;min-height:44px;font-size:16px}.rates td.avail{flex-direction:column;grid-column:1/-1;gap:4px;display:flex}.cars tr{grid-template-columns:96px repeat(2,minmax(0,1fr));grid-template-areas:"thumb name name""thumb type type""thumb specs specs""units out out""avail avail avail"}.cars td.car,.cars .car-id{display:contents}.cars .thumb{border-radius:8px;grid-area:thumb;width:96px;height:64px}.cars .car-id b{white-space:normal;grid-area:name;font-size:16px;line-height:1.3}.cars td.ctype{color:var(--ink-2);grid-area:type;font-size:14px}.cars td.specs{grid-area:specs}.cars td.units{grid-area:units}.cars td.out{grid-area:out}.cars td.units,.cars td.out{margin-top:4px;font-size:15px;font-weight:600}.cars td.units:before,.cars td.out:before{content:attr(data-l);color:var(--ink-2);font-size:12px;font-weight:500;display:block}.cars td.avail{border-top:1px solid var(--line);grid-area:avail;padding-top:4px}.cars td.avail label{min-height:44px;font-weight:500}}.board{scroll-snap-type:x proximity;grid-template-columns:repeat(5,minmax(200px,1fr));gap:12px;padding-bottom:6px;display:grid;overflow-x:auto}.lane{border-radius:var(--r);scroll-snap-align:start;background:#e9eef9;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex}.lane header{justify-content:space-between;align-items:baseline;gap:8px;padding:2px 2px 0;font-size:14px;font-weight:600;display:flex}.lane header small{color:var(--ink-2);font-size:13px;font-weight:500}.lane .empty{padding:8px 2px;font-size:13px}.lead{background:#fff;border-radius:10px;gap:8px;min-width:0;padding:12px;display:grid;box-shadow:0 1px 2px #00000014}.lead .top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.lead .top b{overflow-wrap:anywhere;min-width:0}.lead .top .num{flex:none;font-size:14px}.lead p{color:var(--ink-2);overflow-wrap:anywhere;font-size:14px;line-height:1.4}.lead a{white-space:nowrap;font-size:13px}.lead .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 8px;display:flex}.lead select{background:#fff;border:1px solid #9aa3ba;border-radius:8px;width:100%;min-height:36px;padding:2px 8px;font-size:13px}.add{grid-template-columns:1fr 1fr 2fr 120px auto;gap:10px;margin-bottom:14px;display:grid}@media (max-width:900px){.add{grid-template-columns:1fr 1fr}}.stage-tabs{display:none}@media (max-width:640px){.add{gap:8px;padding:14px}.add #l-int{grid-column:1/-1}.add input,.add .btn{min-height:44px}.stage-tabs{background:#e9eef9;border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;margin-bottom:12px;padding:4px;display:grid}.stage-tabs button{min-height:52px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:9px;justify-items:center;gap:0;padding:6px 2px;font-size:12px;font-weight:500;transition:background-color .15s,color .15s;display:grid}.stage-tabs button b{color:var(--ink);font-size:17px;line-height:1.2}.stage-tabs button[aria-pressed=true]{color:var(--ink);box-shadow:var(--shadow-1);background:#fff;font-weight:600}.board{padding:0;display:block;overflow:visible}.lane{background:0 0;padding:0;display:none}.lane.on{display:flex}.lane header{padding:0 2px}.lead{padding:14px}.lead select{min-height:44px;font-size:15px}.lead .row a{font-size:15px}}.pill.ok{color:var(--ok);background:#e3f5ea}.pill.warn{color:#8a5a00;background:#fff3d6}.pill.bad{color:var(--bad);background:#fbe5e3}.btn-sm{min-height:34px;padding:0 12px;font-size:13px}.btn-line{color:var(--bad);background:#fff;box-shadow:inset 0 0 0 1px #e8b4af}@media (hover:hover) and (pointer:fine){.btn-line:hover{background:#fff5f4}}@media (pointer:coarse){.st{min-height:40px}.btn-sm,.lead select{min-height:44px}}.tasks{list-style:none}.tasks li{border-top:1px solid var(--line);align-items:center;gap:12px;padding:12px 4px;display:flex}.tasks li:first-child{border-top:0}.tasks input[type=checkbox]{width:20px;height:20px;accent-color:var(--blue)}.tasks .done span{color:var(--ink-2);text-decoration:line-through}.tasks small{color:var(--ink-2);white-space:nowrap;margin-left:auto}.tasks small.late{color:var(--bad);font-weight:600}.switch{width:20px;height:20px;accent-color:var(--blue)}.login [hidden]{display:none}.login .linkbtn{justify-self:start;font-size:14px}.login .btn-demo{color:var(--navy);background:#fff8e6;box-shadow:inset 0 0 0 1px #f6dc9b}.login .btn-demo:hover{background:#fff1cc}.login .note{color:var(--ink-2);font-size:14px}.login .ok{color:var(--ok);font-size:14px;font-weight:600}.loading{color:var(--ink-2);padding:48px 0}.linkbtn{color:var(--blue-d);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}dialog.dlg{width:min(100vw - 32px,560px);max-height:calc(100dvh - 32px);color:var(--ink);border:0;border-radius:16px;margin:auto;padding:24px;box-shadow:0 24px 56px #00000040}dialog.dlg::backdrop{background:#0b1a45aa}dialog.dlg h2{margin-bottom:4px;font-size:20px}.fields{grid-template-columns:1fr 1fr;align-items:start;gap:12px 14px;margin-top:16px;display:grid}.fields .full{grid-column:1/-1}.fld{gap:6px;min-width:0;display:grid}.fld>span,.fld>legend{color:var(--ink-2);font-size:13px;font-weight:600}.fld input:not([type=checkbox]):not([type=radio]):not([type=file]),.fld select,.fld textarea{background:#fff;border:1px solid #9aa3ba;border-radius:8px;width:100%;min-height:42px;padding:8px 10px;font-size:15px}.fld textarea{resize:vertical;min-height:96px}.fld small{color:var(--ink-2);font-size:12px}.check{cursor:pointer;align-items:center;gap:8px;font-weight:500;display:flex}.check input{width:18px;height:18px;accent-color:var(--blue)}.dlg-foot{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.btn-ghost{color:var(--navy);background:#fff;box-shadow:inset 0 0 0 1px #c5cddf}@media (hover:hover) and (pointer:fine){.btn-ghost:hover{background:var(--soft)}}.form-err{color:var(--bad);font-size:14px;font-weight:600}.form-err:empty{display:none}@media (max-width:560px){.fields{grid-template-columns:1fr}}.photos-edit{flex-wrap:wrap;gap:10px;display:flex}.photos-edit figure{width:120px;margin:0;position:relative}.photos-edit img{object-fit:cover;border:1px solid var(--line);border-radius:8px;width:120px;height:80px}.photos-edit figcaption{gap:4px;margin-top:4px;display:flex}.photos-edit figcaption button{cursor:pointer;background:#fff;border:1px solid #c5cddf;border-radius:6px;flex:1;min-height:30px;font-size:12px}.photos-edit .add-ph{width:120px;height:80px;color:var(--ink-2);cursor:pointer;text-align:center;border:1px dashed #9aa3ba;border-radius:8px;place-items:center;font-size:13px;display:grid}.photos-edit .add-ph input{opacity:0;width:1px;height:1px;position:absolute}.row-actions{flex-wrap:wrap;gap:6px;display:flex}.stars{color:var(--amber);white-space:nowrap;gap:1px;display:inline-flex}.stars svg{fill:currentColor;width:15px;height:15px}.stars .off{color:#d5dbe8}.rv-comment{white-space:pre-line;max-width:44ch}.rv-ph{object-fit:cover;border-radius:6px;width:64px;height:48px}.rate-in{border:0;gap:2px;display:flex}.rate-in label{cursor:pointer;color:#c9d1e3;border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.rate-in label.on{color:var(--amber)}.rate-in label:has(input:focus-visible){outline:3px solid var(--amber)}.rate-in svg{fill:currentColor;width:26px;height:26px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tabs{background:#e9eef9;border-radius:12px;gap:4px;width:max-content;max-width:100%;margin-bottom:16px;padding:4px;display:flex;overflow-x:auto}.tabs button{min-height:40px;color:var(--ink-2);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:9px;padding:0 14px;font-weight:600}.tabs button[aria-selected=true]{color:var(--ink);box-shadow:var(--shadow-1);background:#fff}.part{max-width:760px}.part .fields{margin-top:0}.save-bar{background:var(--soft);border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;padding:12px 0;display:flex;position:sticky;bottom:0}.save-bar small{color:var(--ink-2)}.save-bar a{margin-left:auto;font-size:14px}.faq-item{border:1px solid var(--line);background:#fff;border-radius:12px;gap:10px;padding:16px;display:grid}.faq-item+.faq-item{margin-top:10px}.faq-item .row-actions{justify-content:flex-end}.rp-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.rp-card{border:1px solid var(--line);background:#fff;border-radius:12px;gap:8px;padding:12px;display:grid}.rp-card img{aspect-ratio:4/3;object-fit:cover;border-radius:8px;width:100%}.rp-card.off img{opacity:.5}.perm-group{border:1px solid var(--line);border-radius:10px;gap:10px;margin-top:10px;padding:10px 14px 12px;display:grid}.perm-group legend{padding:0 4px;font-size:13px;font-weight:700}.check.perm{align-items:flex-start}.check.perm input{flex:none;margin-top:2px}.check.perm small{color:var(--ink-2);font-size:12px;font-weight:400;display:block}.check.perm input:disabled+span{opacity:.55}.muted{color:var(--ink-2)}.qr-row{align-items:center;gap:12px;display:flex}.qr-row img{object-fit:contain;border:1px solid var(--line);background:#fff;border-radius:8px;width:160px;height:160px}.qr-add{cursor:pointer;justify-self:start;position:relative}.qr-add:focus-within{outline:2px solid var(--blue);outline-offset:2px}.ref .open{color:inherit;text-decoration:none}.ref .open b{color:var(--blue-d);text-underline-offset:3px;text-decoration:underline}.ref .open:hover b{color:var(--blue)}td.total .was{color:var(--ink-2);font-size:13px;font-weight:500;display:block}td.total small{text-overflow:ellipsis;white-space:nowrap;max-width:16ch;margin-left:auto;overflow:hidden}.hold{color:#8a5a00!important}.hold.off{color:var(--ink-2)!important}@media (max-width:640px){.stack td.total .was{margin-right:6px;display:inline}.stack td.total small{display:none}}.back{color:var(--blue-d);margin-bottom:12px;font-size:14px;font-weight:600;display:inline-block}.bk .head .sub{margin-top:2px}.bk-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);align-items:start;gap:16px;display:grid}.bk-main,.bk-side{gap:16px;min-width:0;display:grid}@media (max-width:980px){.bk-grid{grid-template-columns:1fr}}.card-h{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.bk-car{flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin-bottom:14px;display:flex}.bk-car b{font-size:18px}.bk-car span{color:var(--ink-2);font-size:14px}.bk-facts{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:0 0 16px;display:grid}.bk-facts>div{border:1px solid var(--line);background:var(--soft);border-radius:10px;padding:8px 12px}.bk-facts dt{color:var(--ink-2);font-size:12px;font-weight:600}.bk-facts dd{margin:2px 0 0;font-weight:600}.span{background:var(--soft);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px;display:grid}.span>div:not(.span-line){gap:0;display:grid}.span>div:last-child{text-align:right}.span small{color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.span b{font-size:16px}.span>div>span{color:var(--ink-2);font-size:14px}.span-line{place-items:center;min-width:80px;display:grid;position:relative}.span-line:before{content:"";border-top:2px dashed #b9c4dd;position:absolute;top:50%;left:0;right:0}.span-line span{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:999px;padding:2px 10px;font-size:13px;font-weight:600;position:relative}@media (max-width:560px){.span{grid-template-columns:1fr 1fr}.span-line{grid-area:2/1/auto/-1}}.bk-line{overflow-wrap:anywhere;gap:2px;margin-top:12px;display:grid}.bk-line small{color:var(--ink-2);font-size:12px;font-weight:600}.bk-map{margin-top:12px}.pick-map{isolation:isolate;border-radius:var(--r);border:1px solid var(--line);background:var(--soft);height:260px;position:relative;overflow:hidden}.pick-map .leaflet-control-attribution{font-size:10px}.pin-ic svg{width:34px;height:44px;fill:var(--amber);stroke:var(--navy);stroke-width:2px;filter:drop-shadow(0 3px 4px #0003)}.pin-ic circle{fill:var(--navy);stroke:none}.bk-map-foot{flex-wrap:wrap;justify-content:space-between;gap:4px 16px;margin-top:8px;font-size:14px;display:flex}.bk-map-foot .zone{color:var(--ok);align-items:center;gap:6px;font-weight:600;display:inline-flex}.bk-map-foot .zone.out{color:var(--ink-2)}.bk-map-foot .zone:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px}@media (max-width:520px){.pick-map{height:220px}}.pre{white-space:pre-line}.sched{border-top:1px solid var(--line);gap:6px;margin-top:14px;padding-top:12px;font-size:14px;list-style:none;display:grid}.sched li{display:block}.sched li>span{min-width:48px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.04em;margin-right:8px;font-size:12px;font-weight:700;display:inline-block}.sched em{color:var(--ink-2);font-style:normal}.sched li.free{color:var(--ok)}.lines{gap:0;display:grid}.lines>div{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;display:flex}.lines>div:first-child{border-top:0}.lines dt small{color:var(--ink-2);font-size:13px;display:block}.lines dd{font-variant-numeric:tabular-nums;white-space:nowrap}.lines .sum{color:var(--ink-2)}.lines .adj.down dd,.lines .adj.down dt{color:var(--ok)}.lines .adj.up dd,.lines .adj.up dt{color:#8a5a00}.lines .adj dt{font-weight:600}.lines .total{font-size:17px;font-weight:700}.lines .total s{color:var(--ink-2);margin-right:4px;font-size:14px;font-weight:500}.lines .note{color:var(--ink-2);font-size:14px}.callout{background:var(--soft);border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:14px}.callout.ok{color:var(--blue-d);background:#e4ecff}.callout.warn{color:#8a5a00;background:#fff3d6;margin-top:12px}.callout.bad{color:var(--bad);background:#fbe5e3;font-weight:600}.stack-btns{gap:8px;display:grid}.btn-block{width:100%;margin-top:12px}.pill.big{padding:4px 12px;font-size:13px}.small-link{color:var(--blue-d);margin-top:12px;font-size:14px;font-weight:600;display:inline-block}.timeline{gap:0;list-style:none;display:grid}.timeline li{padding:0 0 14px 22px;position:relative}.timeline li:before{content:"";background:var(--blue);border-radius:50%;width:9px;height:9px;position:absolute;top:8px;left:5px}.timeline li:after{content:"";border-left:1px solid var(--line);position:absolute;top:20px;bottom:0;left:9px}.timeline li:last-child{padding-bottom:0}.timeline li:last-child:after{display:none}.timeline p{font-size:14px}.timeline .reason{color:var(--ink);margin-top:2px;font-style:italic}.timeline small{color:var(--ink-2);font-size:12px}.price-change s{color:var(--ink-2);font-weight:500}.price-change small{font-size:13px;font-weight:600}.price-change .down{color:var(--ok)}.price-change .up{color:#8a5a00}dialog.dlg-wide{width:min(100vw - 32px,720px)}dialog.dlg-narrow{width:min(100vw - 32px,440px)}.bk-form .fields{margin-top:12px}.fld-group{border-top:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-2);margin:8px 0 -4px;padding-top:12px;font-size:13px;font-weight:700}.bk-form .fields:first-of-type .fld-group{border-top:0;padding-top:0}.price-base{align-content:center;min-height:42px;font-size:17px;font-weight:700;display:grid}.price-base small{color:var(--ink-2);font-size:12px;font-weight:500}.chips{flex-wrap:wrap;gap:6px;margin:4px 0 6px;display:flex}.chip{cursor:pointer;background:#fff;border:1px solid #c5cddf;border-radius:999px;min-height:32px;padding:4px 12px;font-size:13px;font-weight:500;transition:background-color .15s,border-color .15s}.chip:hover{background:var(--soft)}.chip[aria-pressed=true]{border-color:var(--blue);color:var(--blue-d);background:#e4ecff;font-weight:600}@media (pointer:coarse){.chip{min-height:40px}}.avail-note{background:var(--soft);color:var(--ink-2);border-radius:8px;padding:8px 12px;font-size:14px}.avail-note.ok{color:var(--ok);background:#e3f5ea;font-weight:600}.avail-note.bad{color:var(--bad);background:#fbe5e3;font-weight:600}.dlg-total{align-self:center;margin-right:auto;font-size:15px}.btn:disabled{opacity:.5;cursor:not-allowed}
