:root{--navy:#1f2a6b;--navy-2:#2d3a8c;--navy-ink:#aeb6e0;--maroon:#8b1e2d;--gold:#f2b632;--gold-soft:#fff3d1;--emerald:#0f8a5f;--rani:#d63a6e;--green:#1e9e57;--bg:#eef1f7;--card:#ffffff;--ink:#171a33;--muted:#5e6380;--line:#dde1ec;--font:"Barlow",system-ui,sans-serif;--font-num:"Barlow Semi Condensed","Barlow",system-ui,sans-serif;--font-ur:"Noto Nastaliq Urdu","Barlow",serif;--patti:repeating-linear-gradient(-45deg,var(--gold) 0 9px,var(--maroon) 9px 18px,var(--emerald) 18px 27px,#fff 27px 30px,var(--rani) 30px 39px,var(--maroon) 39px 42px)}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}.lang-ur,.lang-ur button,.lang-ur input,.lang-ur select{font-family:var(--font-ur);line-height:2}[dir=ltr]{font-family:var(--font)}.lang-ur h1 span[dir=ltr],.lang-ur p[dir=ltr],.lang-ur small[dir=ltr]{line-height:1.45}.lang-ur .num,.num{font-family:var(--font-num);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}button{font:inherit}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.body :focus-visible,.modal :focus-visible{outline-color:var(--navy-2)}.wrap{max-width:760px;margin:0 auto;padding-inline:16px}.hero{background:var(--navy);color:#fff;padding:16px 0 20px}.hero-top{justify-content:space-between}.brand,.hero-top{display:flex;align-items:center;gap:12px}.brand{min-width:0}.brand-name{margin:0;font-size:1.65rem;font-weight:700;line-height:1.15;letter-spacing:-.01em}.lang-ur .brand-name{font-size:1.8rem;line-height:1.8;letter-spacing:0}.logo-img{width:48px;height:48px;border-radius:13px;box-shadow:0 0 0 2px rgba(255,255,255,.16);flex:none}.tagline{margin:10px 0 0;color:#d3d8f5;font-size:1rem;max-width:34em}.lang-ur .tagline{margin-top:4px;font-size:1.02rem}.lang-toggle{display:flex;background:rgba(255,255,255,.1);border-radius:999px;padding:3px;flex:none}.lang-toggle button{border:0;background:transparent;color:#fff;padding:4px 13px;border-radius:999px;cursor:pointer;font-size:.88rem;line-height:1.7}.lang-toggle button:first-child{font-family:var(--font-ur)}.lang-toggle button:last-child{font-family:var(--font)}.lang-toggle button.on{background:#fff;color:var(--navy);font-weight:600}.search{--lbl:20px;--field:50px;margin-top:16px;background:#fff;color:var(--ink);border-radius:18px;padding:12px;display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px;align-items:center;box-shadow:0 12px 32px rgba(8,13,52,.28)}.lang-ur .search{--lbl:30px;--field:54px}.legs{position:relative;display:grid;grid-gap:10px;gap:10px;-webkit-padding-start:26px;padding-inline-start:26px;min-width:0}.legs:before{content:"";position:absolute;inset-inline-start:8px;top:calc(var(--lbl) + 4px + var(--field) / 2);bottom:calc(var(--field) / 2);-webkit-border-start:2px dashed #b9c0d8;border-inline-start:2px dashed #b9c0d8}.legs .picker:before{content:"";position:absolute;inset-inline-start:-24px;top:calc(var(--lbl) + 4px + var(--field) / 2 - 7px);width:14px;height:14px;border-radius:50%;box-sizing:border-box;background:#fff;border:3.5px solid var(--gold)}.legs .picker+.picker:before{background:var(--maroon);border-color:var(--maroon)}.search .picker-label{height:var(--lbl);line-height:var(--lbl);font-weight:600;color:var(--muted);font-size:.85rem}.search .picker-field input{height:var(--field);padding-block:0;line-height:normal;background:#f5f6fa;border-radius:12px;font-size:1.05rem;font-weight:600}.search .picker-field input::placeholder{font-weight:400}.swap{width:46px;height:46px;border-radius:50%;border:0;background:var(--gold-soft);color:var(--navy);cursor:pointer;display:grid;place-items:center;margin-top:calc(var(--lbl) + 4px)}.swap:hover{background:var(--gold)}.hero-tools{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;align-items:center}.all-btn{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.35);border-radius:999px;padding:8px 16px;font-weight:600;cursor:pointer;white-space:nowrap;line-height:1.4}.lang-ur .all-btn{padding-block:4px;line-height:2}.all-btn:hover{border-color:#fff}.all-btn.on{background:var(--gold);color:var(--navy);border-color:var(--gold)}.ask{flex:1 1 280px;display:flex;align-items:center;gap:8px;min-width:0;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.22);border-radius:999px;padding:4px;-webkit-padding-start:14px;padding-inline-start:14px}.ask:focus-within{border-color:var(--gold)}.ask-icon{color:var(--gold);flex:none}.ask input{flex:1 1;min-width:0;background:transparent;border:0;color:#fff;font-size:.95rem;padding:6px 0}.ask input::placeholder{color:var(--navy-ink)}.ask input:focus{outline:none}.ask button{border:0;border-radius:999px;background:var(--gold);color:var(--navy);font-weight:700;padding:6px 18px;cursor:pointer;white-space:nowrap;flex:none}.lang-ur .ask button{padding-block:2px}.ask button:disabled{opacity:.7;cursor:wait}.ask-answer{margin:12px 0 0;background:rgba(255,255,255,.1);-webkit-border-start:3px solid var(--gold);border-inline-start:3px solid var(--gold);border-radius:10px;padding:8px 12px;font-size:.95rem}.patti{height:22px;background:radial-gradient(circle at 50% 2px,var(--gold) 0 4px,transparent 4.6px) 0 12px /20px 10px repeat-x,linear-gradient(var(--gold),var(--gold)) 0 12px /100% 2px no-repeat,var(--patti) 0 0 /100% 12px no-repeat}.body{display:grid;grid-gap:16px;gap:16px;padding-top:14px;padding-bottom:36px}.results{display:grid;grid-gap:14px;gap:14px}.empty{background:var(--card);border:1.5px dashed #c5cbe0;border-radius:18px;padding:20px;text-align:center;color:var(--muted)}.empty h2{margin:0 0 4px;color:var(--navy);font-size:1.25rem}.empty p{margin:0 auto;max-width:30em}.count{margin:0;font-size:1.05rem;color:var(--navy);font-weight:700}.bus{background:var(--card);border:1px solid var(--line);border-radius:18px;overflow:hidden;display:grid;grid-template-columns:112px minmax(0,1fr);box-shadow:0 8px 22px rgba(23,32,88,.07)}.bus-time{background:var(--navy);color:#fff;padding:14px 8px 12px;display:flex;flex-direction:column;align-items:center;text-align:center}.bus-time small{color:var(--navy-ink);font-size:.78rem}.bus-time b{font-size:2rem;line-height:1.05;color:var(--gold);font-weight:700;margin-top:2px}.bus-time .part{font-weight:600;font-size:.95rem}.bus-time .arr{margin-top:auto;padding-top:10px;width:100%;font-size:.85rem;color:#e3e6fa}.bus-time .arr:before{content:"";display:block;border-top:1px dashed rgba(255,255,255,.3);margin:0 6px 6px}.bus-time .arr small{display:block}.bus-time .arr .num{font-size:1.05rem;font-weight:600}.lang-ur .bus-time .arr,.lang-ur .bus-time .part,.lang-ur .bus-time small{line-height:1.9}.lang-ur .bus-time .arr{line-height:2.3}.bus-main{padding:14px 16px 12px;min-width:0}.bus-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.bus-head h3{margin:0;font-size:1.18rem;line-height:1.25;color:var(--ink)}.lang-ur .bus-head h3{line-height:1.9;font-size:1.22rem}.bus-head .muted{margin-top:2px}.plate{flex:none;display:flex;flex-direction:column;align-items:center;border:2px solid var(--ink);border-radius:8px;padding:1px 10px 2px;background:#fff;box-shadow:inset 0 0 0 2px #fff,inset 0 0 0 3px #d5d9e6}.plate small{font-size:.68rem;color:var(--muted);line-height:1.3}.lang-ur .plate small{line-height:1.7}.plate b{font-size:1.3rem;letter-spacing:.06em;line-height:1.1;color:var(--ink)}.muted{color:var(--muted);margin:2px 0 0;font-size:.88rem}.leg{display:grid;grid-template-columns:auto minmax(28px,1fr) auto;grid-gap:10px;gap:10px;margin:12px 0 2px;font-weight:600}.leg,.leg-line{align-items:center}.leg-line{position:relative;display:flex;justify-content:space-between;height:14px}.leg-line:before{content:"";position:absolute;inset-inline:6px;top:50%;margin-top:-1px;border-top:2px solid var(--navy-2)}.leg-line i{position:relative;width:7px;height:7px;border-radius:50%;background:#fff;border:2px solid var(--navy-2)}.leg-line em{position:relative;width:12px;height:12px;border-radius:50%;box-sizing:border-box;flex:none}.leg-line em.s{background:#fff;border:3px solid var(--gold)}.leg-line em.e{background:var(--maroon)}.stops{margin-top:10px}.stops summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px;color:var(--navy);font-weight:600;font-size:.92rem;border-radius:8px;padding:2px 4px;-webkit-margin-start:-4px;margin-inline-start:-4px}.stops summary::-webkit-details-marker{display:none}.stops summary:hover{background:#eef1fb}.chev{transition:transform .15s ease}.stops[open] .chev{transform:rotate(90deg)}[dir=rtl] .stops:not([open]) .chev{transform:scaleX(-1)}.stops ol{list-style:none;margin:8px 0 2px;padding:0}.stops li{display:flex;justify-content:space-between;gap:10px;padding:3px 0;-webkit-padding-start:22px;padding-inline-start:22px;position:relative;font-size:.92rem;color:var(--muted)}.stops li:before{inset-inline-start:4px;width:10px;height:10px;margin-top:-5px;border-radius:50%;background:#fff;border:2px solid #c5cbe0;box-sizing:border-box;z-index:1}.stops li:after,.stops li:before{content:"";position:absolute;top:50%}.stops li:after{inset-inline-start:8px;height:100%;width:2px;background:#dde1ec}.stops li:last-child:after{display:none}.stops li.on{color:var(--ink);font-weight:600}.stops li.on:before{border-color:var(--navy-2)}.stops li.on:not(.end):after{background:var(--navy-2)}.stops li.start:before{border:3px solid var(--gold)}.stops li.end:before{background:var(--maroon);border-color:var(--maroon)}.stops li b{font-weight:600;white-space:nowrap}.chips{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:6px}.chips li{background:#f1f3f9;color:#3a4066;border-radius:999px;padding:2px 10px;font-size:.82rem}.lang-ur .chips li{line-height:1.9;padding-block:0}.bus-actions{grid-column:1/-1;display:flex;gap:8px;padding:12px 16px;border-top:1px solid var(--line)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border-radius:12px;padding:10px 14px;min-height:46px;font-weight:600;font-size:.98rem;white-space:nowrap}.btn.call{flex:1 1;background:var(--maroon);color:#fff}.btn.call:hover{background:#761826}.btn.call .num{font-size:1.12rem;letter-spacing:.02em}.btn.wa{background:var(--green);color:#fff}.btn.wa:hover{background:#18874a}.btn.wa-out{background:#fff;color:#137a42;border:1.5px solid var(--green)}.lang-ur .btn{padding-block:6px}@media (max-width:400px){.btn.call>span:not(.num){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}.more-phones{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0 16px 10px}.more-phones a{display:inline-flex;align-items:center;gap:5px;color:var(--maroon);text-decoration:none;font-weight:600;font-size:1rem}.bus-links{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:0 10px 10px}.bus-links a,.bus-links button{display:inline-flex;align-items:center;gap:6px;background:none;border:0;border-radius:8px;color:var(--navy);font-size:.9rem;font-weight:600;padding:6px 8px;cursor:pointer;text-decoration:none}.lang-ur .bus-links a,.lang-ur .bus-links button{padding-block:0}.bus-links a:hover,.bus-links button:hover{background:#eef1fb}.bus-links .report{-webkit-margin-start:auto;margin-inline-start:auto;color:var(--muted);font-weight:500;font-size:.84rem}.bus-links .report:hover{color:var(--maroon)}.panel{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px}.panel h2{margin:0;font-size:1.12rem;color:var(--navy);display:flex;align-items:center;gap:8px}.routes-box>.muted{margin:2px 0 12px}.route-list,.route-row{display:grid;grid-gap:8px;gap:8px}.route-row{width:100%;text-align:start;cursor:pointer;color:var(--ink);background:#f6f7fb;border:1.5px solid var(--line);border-radius:14px;padding:12px 14px}.route-row:hover{border-color:var(--navy-2);background:#fff}.rr-name{font-weight:700;color:var(--navy);font-size:1.02rem}.rr-line{position:relative;display:flex;justify-content:space-between;align-items:center;height:14px}.rr-line:before{content:"";position:absolute;inset-inline:6px;top:50%;margin-top:-1px;border-top:2px solid var(--navy-2)}.rr-line i{position:relative;width:8px;height:8px;border-radius:50%;background:#fff;border:2px solid var(--navy-2)}.rr-line i:first-child{width:13px;height:13px;border:3.5px solid var(--gold)}.rr-line i:last-child{width:12px;height:12px;background:var(--maroon);border-color:var(--maroon)}.rr-ends{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:.88rem;font-weight:600}.rr-ends .muted{margin:0;font-weight:400;font-size:.8rem;text-align:center}.contact{display:grid;grid-template-columns:auto minmax(0,1fr);grid-gap:14px;gap:14px;align-items:start}.contact-icon{width:48px;height:48px;border-radius:14px;background:#e3f5ea;color:var(--green);display:grid;place-items:center}.contact p{margin:4px 0 12px;color:var(--muted);font-size:.92rem}.contact .btns{display:flex;flex-wrap:wrap;gap:8px}.contact .btn{flex:1 1 170px}@media (max-width:420px){.contact{grid-template-columns:1fr}.contact-icon{display:none}}.add-strip{display:flex;align-items:center;gap:10px;text-decoration:none;color:#0f5a32;background:#e3f5ea;border:1.5px solid #b7e2c8;border-radius:14px;padding:10px 12px}.add-strip svg{flex:none;color:var(--green)}.add-strip span{flex:1 1;font-weight:600;font-size:.95rem}.add-strip b{flex:none;background:var(--green);color:#fff;border-radius:999px;padding:4px 14px;font-size:.9rem;white-space:nowrap}.add-strip:hover{border-color:var(--green)}.send-what{margin:0 0 4px!important;color:var(--ink)!important;font-weight:700}.send-list{margin:0 0 12px;-webkit-padding-start:20px;padding-inline-start:20px;color:var(--ink);font-size:.92rem}.send-list li::marker{color:var(--green)}.our-wa{color:var(--ink)!important;font-weight:600}.our-wa a{color:#137a42;font-size:1.1rem;text-decoration:none}a.brand-name{color:#fff;text-decoration:none}.seo-intro h1{margin:0;font-size:1.3rem;color:var(--navy);line-height:1.6}.lang-ur .seo-intro h1{line-height:2}.seo-intro h1 span{display:block;font-size:1rem;color:var(--muted);font-weight:600;line-height:1.4}.seo-intro p{margin:8px 0 0;color:var(--ink)}.seo-intro .seo-en{color:var(--muted);font-size:.92rem}.seo-routes h2{display:block;font-size:1.05rem}.seo-routes h2 span{display:block;color:var(--muted);font-weight:600;font-size:.9rem}.seo-routes ul{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-gap:4px;gap:4px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.seo-routes a{display:block;text-decoration:none;color:var(--navy);font-weight:600;padding:6px 10px;border-radius:10px}.seo-routes a:hover{background:#eef1fb}.seo-routes small{display:block;color:var(--muted);font-weight:400;font-family:var(--font);font-size:.8rem;line-height:1.4}.foot{text-align:center;color:var(--muted);font-size:.86rem;padding-top:4px}.foot p{margin:2px 0}.free-note{color:var(--navy);font-weight:600}.modal{position:fixed;inset:0;background:rgba(12,17,50,.72);display:grid;place-items:center;z-index:30;padding:16px}.modal-box{background:#fff;border-radius:18px;max-width:560px;width:100%;max-height:92vh;overflow:auto;padding:14px;animation:pop .16s ease-out}@keyframes pop{0%{transform:translateY(10px);opacity:0}}@media (prefers-reduced-motion:reduce){.modal-box{animation:none}.chev{transition:none}}.modal-box img{width:100%;height:auto;border-radius:10px;display:block}.modal-head{display:flex;justify-content:space-between;margin-bottom:10px}.modal-head,.modal-head b{align-items:center;gap:8px}.modal-head b{display:inline-flex;color:var(--navy);font-size:1.05rem}.modal-head button{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f1f3f9;border:0;cursor:pointer;color:var(--ink)}.modal-head button:hover{background:#e4e8f3}.modal-box.wide{max-width:720px}.map-missing{margin-top:8px}.map-stops{list-style:none;padding:0;margin:10px 0 0;display:flex;flex-wrap:wrap;gap:6px}.map-stops li{background:#f1f3f9;border-radius:999px;padding:3px 12px;font-size:.85rem;display:flex;gap:6px}.map-stops li.on{background:var(--gold-soft);color:#6b4a00;font-weight:600}.picker{position:relative;display:flex;flex-direction:column;gap:4px;min-width:0}.picker-label{color:var(--muted);font-size:.85rem}.picker-field{position:relative}.picker-field input{width:100%;padding-block:10px;padding-inline:12px 38px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-size:1rem;color:var(--ink);background:#fafafa}.picker-field input:focus{outline:none;border-color:var(--navy-2);background:#fff;box-shadow:0 0 0 3px rgba(45,58,140,.14)}.picker-clear{position:absolute;top:50%;transform:translateY(-50%);inset-inline-end:8px;border:0;padding:0;background:#e7e9f1;color:#4a4f6a;width:26px;height:26px;border-radius:50%;cursor:pointer;font-family:var(--font);font-size:1.1rem;line-height:1;display:grid;place-items:center}.picker-clear:hover{background:#d9dcea}.picker-list{position:absolute;z-index:40;top:100%;inset-inline:0;margin:6px 0 0;padding:4px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(12,17,50,.18);max-height:290px;overflow-y:auto}.picker-list li{padding:9px 12px;border-radius:8px;cursor:pointer;color:var(--ink)}.lang-ur .picker-list li{padding-block:4px}.picker-list li.hi{background:#eef1fb}.picker-list li.sel{font-weight:700;color:var(--navy)}.picker-list li.none{color:var(--muted);cursor:default;font-size:.85rem}.route-map{width:100%;border-radius:12px;overflow:hidden;border:1px solid var(--line);background:#e8ecf3;z-index:0}.route-map.loading{display:grid;place-items:center;color:var(--muted);min-height:200px}.leaflet-tooltip{font-family:var(--font-ur);font-size:12px;line-height:1.8}@media (max-width:420px){.brand-name{font-size:1.45rem}.lang-ur .brand-name{font-size:1.6rem}.bus{grid-template-columns:92px minmax(0,1fr)}.bus-time b{font-size:1.8rem}.bus-main{padding:12px 12px 10px}.bus-actions{padding:10px 12px}}.admin-brand{display:flex;align-items:center;gap:8px}.admin-brand img{border-radius:8px}.login-logo{margin:0 auto;border-radius:18px}.admin{min-height:100vh;background:var(--bg);font-family:var(--font);line-height:1.5}.admin .ur,.admin .ur-in,.admin-login .ur{font-family:var(--font-ur)}.admin-bar{background:var(--navy);color:#fff;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:5}.admin-brand span{background:var(--gold);color:var(--navy);border-radius:6px;padding:1px 8px;font-size:.75rem;font-weight:700;-webkit-margin-start:6px;margin-inline-start:6px}.admin-bar:after{content:"";position:absolute;inset-inline:0;top:100%;height:6px;background:var(--patti)}.admin-bar nav{display:flex;align-items:center;gap:12px}.admin-bar nav a{color:#fff;text-decoration:none;font-size:.9rem;opacity:.9}.admin-bar .ghost{color:#fff;border-color:rgba(255,255,255,.4)}.admin-tabs{display:flex;gap:4px;padding:12px 16px 0;max-width:960px;margin:0 auto;overflow-x:auto}.admin-tabs button{border:0;background:transparent;padding:10px 14px;border-radius:10px 10px 0 0;cursor:pointer;color:var(--muted);font-weight:600;white-space:nowrap;font-size:.9rem}.admin-tabs button.on{background:#fff;color:var(--navy);box-shadow:0 -2px 0 var(--maroon) inset}.admin-main{max-width:960px;margin:0 auto 60px;background:#fff;border-radius:0 12px 12px 12px;padding:20px 16px}@media (min-width:720px){.admin-main{padding:24px}}.admin h2{margin:0;color:var(--navy);font-size:1.25rem}.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.hint{color:var(--muted);font-size:.85rem;margin:4px 0 12px}.warn{color:#b45309}.admin button{font:inherit;font-size:.88rem;border-radius:8px;padding:7px 14px;cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink)}.admin button:disabled{opacity:.5;cursor:not-allowed}.admin button.primary{background:var(--maroon);color:#fff;border-color:var(--maroon);font-weight:600}.admin button.danger{color:#b42318;border-color:#f3c7c3}.admin button.ghost{background:transparent}.admin button.add{border-style:dashed;color:var(--navy)}.admin button.x{padding:6px 10px;color:#b42318;border-color:#f3c7c3;flex:none}.admin input,.admin select{font:inherit;font-size:.95rem;padding:9px 10px;border:1.5px solid var(--line);border-radius:8px;width:100%;background:#fff;color:var(--ink);min-width:0}.admin input:focus,.admin select:focus{outline:none;border-color:var(--navy-2)}.admin .ur-in{line-height:1.9;padding-block:4px}.v-list{display:grid;grid-gap:10px;gap:10px}.v-item{display:grid;grid-template-columns:auto 1fr auto;grid-gap:14px;gap:14px;align-items:start;border:1px solid var(--line);border-radius:12px;padding:12px}.v-item.off{opacity:.6;background:#fafafa}.v-no{background:var(--navy);color:#fff;border-radius:8px;padding:6px 10px;font-weight:700;letter-spacing:1px;min-width:64px;text-align:center}.v-info b .ur{font-weight:400;color:var(--muted);-webkit-margin-start:6px;margin-inline-start:6px}.v-info small{display:block;color:var(--muted)}.v-info ul{margin:6px 0 0;padding:0;list-style:none;font-size:.88rem}.v-info li b{color:var(--navy);-webkit-margin-start:4px;margin-inline-start:4px}.v-actions{flex-direction:column;align-items:stretch}.switch,.v-actions{display:flex;gap:6px}.switch{align-items:center;font-size:.8rem;color:var(--muted)}.switch input{width:auto}@media (max-width:600px){.v-item{grid-template-columns:auto 1fr}.v-actions{grid-column:1/-1;flex-direction:row;flex-wrap:wrap}}fieldset{border:1px solid var(--line);border-radius:12px;padding:12px 14px 14px;margin:0 0 14px}legend{font-weight:700;color:var(--maroon);padding:0 6px}.bi{margin-bottom:10px}.lbl{display:block;font-size:.8rem;color:var(--muted);margin-bottom:3px;font-weight:600}.bi-pair,.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}@media (max-width:520px){.bi-pair{grid-template-columns:1fr}}label.single{display:block;margin-bottom:10px}label.check{display:flex;align-items:center;gap:8px;padding-top:22px;font-size:.9rem}label.check input{width:auto}.line{display:flex;gap:8px;align-items:center;margin-bottom:8px}.line.sched select{flex:2 1}.line.sched input[type=time]{flex:1.2 1}.arr{color:var(--gold);font-weight:700}@media (max-width:600px){.line.sched{flex-wrap:wrap;background:#fafafa;padding:8px;border-radius:10px}.line.sched select{flex:1 1 100%}.line.sched .arr{display:none}}.btn-row,.form-foot{display:flex;gap:8px;flex-wrap:wrap}.form-foot{align-items:center;justify-content:flex-end;margin-top:16px}.form-foot .spacer{flex:1 1}.agent-box{background:#fcfcfd}.table{display:grid;grid-gap:6px;gap:6px}.thead,.trow{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:8px;gap:8px;align-items:center}.thead{font-size:.8rem;color:var(--muted)}.thead,.toast{font-weight:600}.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#14532d;color:#fff;padding:10px 18px;border-radius:10px;box-shadow:0 6px 20px rgba(0,0,0,.2);z-index:20}.toast.bad{background:#991b1b}.admin-login{min-height:100vh;display:grid;place-items:center;background:linear-gradient(160deg,var(--navy),var(--navy-2));padding:16px;font-family:var(--font)}.login-card{background:#fff;border-radius:16px;width:100%;max-width:360px;display:grid;grid-gap:12px;gap:12px;text-align:center;position:relative;overflow:hidden;padding:28px 24px 34px}.login-card:after{content:"";position:absolute;inset-inline:0;bottom:0;height:8px;background:var(--patti)}.login-card h1{margin:0;color:var(--navy);font-size:1.4rem}.login-card .ur{margin:-8px 0 4px;color:var(--muted);line-height:2}.login-card label{text-align:start;font-size:.85rem;color:var(--muted);display:grid;grid-gap:4px;gap:4px}.login-card input{padding:10px 12px;border:1.5px solid var(--line);border-radius:10px;font-size:1rem}.login-card button{background:var(--maroon);color:#fff;border:0;border-radius:10px;padding:11px;font-size:1rem;font-weight:600;cursor:pointer}.login-card .err{color:#b42318;margin:0;font-size:.9rem}.login-card a{color:var(--muted);font-size:.85rem;text-decoration:none}.card-prev{max-width:260px;border-radius:10px;border:1px solid var(--line);display:block;margin-bottom:8px}.file-btn{display:inline-block;border:1px dashed var(--line);border-radius:8px;padding:7px 14px;cursor:pointer;font-size:.88rem;color:var(--navy)}.file-btn input{display:none}.trip{border:1px solid var(--line);border-radius:12px;padding:10px;margin-bottom:10px}.trip .tag{display:inline-block;min-width:54px;font-size:.75rem;font-weight:700;color:var(--muted);text-transform:uppercase;flex:none}.trip .line{margin-bottom:6px}.trip .stop-row{-webkit-padding-start:18px;padding-inline-start:18px;-webkit-border-start:2px dashed var(--line);border-inline-start:2px dashed var(--line);-webkit-margin-start:24px;margin-inline-start:24px}.trip-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:.85rem;color:var(--muted);font-weight:600}.ai-box{border-color:#c9b3f5;background:linear-gradient(180deg,#faf7ff,#fff)}.ai-box legend{color:#5b3cc4}.ai-box textarea{width:100%;font:inherit;font-size:.95rem;padding:9px 10px;border:1.5px solid var(--line);border-radius:8px;resize:vertical;line-height:1.9}.ai-note{margin:10px 0 0;padding:8px 10px;border-radius:8px;font-size:.88rem;background:#f3f4f8}.ai-note.claude{background:#efeaff}.ai-note.smart,.ai-status{background:#fff6dd}.ai-status{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;margin:8px 0 12px;font-size:.9rem}.ai-status.ok{background:#e8f6ee}.admin label.check span{line-height:1.5}.sug-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.sug-row .hint{margin:0}.admin button.chip-btn{border-radius:999px;padding:3px 10px;font-size:.8rem;background:var(--chip-bg,#fff6dd);border-color:#f0dca0}.admin .picker-field input{background:#fff;padding-block:9px;padding-inline:10px 34px;border-radius:8px;font-size:.95rem}.admin button.picker-clear{padding:0;width:24px;height:24px;border:0;border-radius:50%;background:#eee;font-size:1rem;line-height:1}.line.sched .picker{flex:2 1}.line.sched.use-route select{flex:1 1;border-style:dashed;color:var(--navy)}.admin input.filter{margin-bottom:10px}.thead.loc,.trow.loc{grid-template-columns:1fr 1fr auto auto}.admin button.pin{padding:6px 10px;font-size:.8rem;white-space:nowrap;color:#b45309;border-color:#f3d8a8}.admin button.pin.set{color:var(--green);border-color:#bfe5cf}.admin button.x.mv{color:var(--navy);border-color:var(--line)}.geo-hits{list-style:none;padding:0;margin:6px 0;max-height:170px;overflow:auto;border:1px solid var(--line);border-radius:8px}.geo-hits li button{width:100%;text-align:start;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;font-size:.82rem;padding:7px 10px;cursor:pointer}.geo-hits li button:hover{background:#f3f4f8}.geo-hits li.hint{padding:8px 10px;margin:0}.quick-place{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:8px;gap:8px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px dashed var(--line)}.quick-place .hint{grid-column:1/-1;margin:0}@media (max-width:600px){.quick-place{grid-template-columns:1fr}.thead.loc,.trow.loc{grid-template-columns:1fr 1fr}}