:root{font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#1b2b43;background:#f3f6fa;font-synthesis:none;text-rendering:optimizeLegibility;font-optical-sizing:auto;font-weight:400;--navy: #142b4e;--blue: #315a8d;--ink: #1b2b43;--muted: #78869a;--line: #e0e6ee;--pale: #f6f8fb;--green: #2c825b;--amber: #9d6820}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button:disabled{cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #79a8dd;outline-offset:2px}a{color:inherit}.app-shell{min-height:100vh}.topbar{height:74px;padding:0 max(24px,calc((100vw - 1380px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none}.brand>span:last-child{display:grid;gap:1px}.brand strong{font:800 19px Manrope,sans-serif;letter-spacing:.08em;color:var(--navy)}.brand small{color:#8794a7;font-size:10px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fff;background:var(--navy);font:800 13px Manrope,sans-serif;letter-spacing:.06em;box-shadow:0 5px 14px #142b4e25}.topbar-note{display:flex;align-items:center;gap:9px;color:#67778c;font-size:12px}.live-dot{width:7px;height:7px;border-radius:50%;background:#62a57c}.workspace{width:min(1380px,calc(100% - 48px));margin:0 auto;padding:42px 0 70px}.page-intro{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}.eyebrow{margin:0 0 8px;color:#7186a1;font-size:10px;font-weight:700;letter-spacing:.15em}.page-intro h1{margin:0;color:var(--navy);font:800 clamp(29px,4vw,38px)/1.12 "Manrope",sans-serif;letter-spacing:-.045em}.page-intro>div:first-child>p:last-child{margin:10px 0 0;color:var(--muted);font-size:13px}.intro-badge{display:flex;align-items:center;gap:12px;border:1px solid #dce4ef;border-radius:13px;padding:12px 16px;background:#fff}.intro-badge>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#eaf0f8;color:#436693;font:700 12px Manrope}.intro-badge div{display:grid;gap:2px}.intro-badge strong{font-size:12px}.intro-badge small{color:var(--muted);font-size:10px}.notice{display:flex;align-items:center;gap:12px;margin-bottom:18px;border:1px solid;border-radius:10px;padding:10px 14px;font-size:12px}.notice-info{border-color:#d6e4f2;color:#476381;background:#eff6fc}.notice-warning{border-color:#ead9bc;color:#76531f;background:#fff9ee}.columns{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,.9fr);align-items:start;gap:22px}.primary-column,.side-column{display:grid;gap:18px;min-width:0}.panel{border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 3px 10px #22375008}.origin-panel,.catalog-panel,.custom-panel{padding:21px 22px}.section-heading{display:flex;align-items:center;gap:12px;margin-bottom:18px}.section-icon{flex:0 0 auto;display:grid;place-items:center;width:31px;height:31px;border-radius:9px;color:#456b99;background:#eef3f9;font:700 10px Manrope}.section-heading h2,.itinerary-heading h2{margin:0;color:var(--navy);font:750 17px Manrope,sans-serif;letter-spacing:-.02em}.section-heading p{margin:3px 0 0;color:var(--muted);font-size:11px}.heading-count{margin-left:auto;color:#7e8ba0;font-size:11px;white-space:nowrap}.origin-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.origin-choice{display:grid;grid-template-columns:36px 1fr 13px;align-items:center;gap:10px;min-height:67px;padding:10px 12px;text-align:left;border:1px solid #e1e7ef;border-radius:11px;background:#fff;color:var(--ink);transition:.16s ease}.origin-choice:hover{border-color:#9fb3ce;background:#f9fbfd}.origin-choice.selected{border-color:#6e8db5;background:#f2f6fb;box-shadow:inset 0 0 0 1px #6e8db5}.choice-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;color:#55779f;background:#e9f0f8;font-size:20px}.origin-choice>span:nth-child(2){display:grid;gap:3px}.origin-choice strong{font-size:11px}.origin-choice small{color:var(--muted);font-size:9px;line-height:1.35}.radio-dot{width:12px;height:12px;border:1.5px solid #b6c1cf;border-radius:50%}.selected .radio-dot{border:4px solid #426b9c;background:#fff}.origin-form,.custom-form{margin-top:15px;padding-top:14px;border-top:1px solid #edf0f4}.form-caption{margin:0 0 12px;color:#7f8ca0;font-size:10px;line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px 13px}.form-grid label,.itinerary-name{display:grid;gap:5px;color:#53647b;font-size:10px;font-weight:650}.required{color:#bc5c51}.optional{margin-left:3px;color:#a1aab7;font-size:9px;font-weight:400}input,select{min-width:0;height:37px;border:1px solid #dce3eb;border-radius:8px;padding:0 10px;color:var(--ink);background:#fff;font-size:11px}input::placeholder{color:#adb6c2}input[aria-invalid=true]{border-color:#ca7770;background:snow}.form-actions{display:flex;align-items:center;gap:12px;margin-top:13px}.privacy-inline{color:#75849a;font-size:10px}.field-error{margin:0;color:#a84c43;font-size:10px}.origin-summary,.institution-card{display:flex;align-items:center;gap:11px;margin-top:12px;border:1px solid #d7e5dc;border-radius:10px;padding:11px;background:#f5faf6}.summary-pin,.institution-mark{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:#e5f1e9;color:#3f805c;font-size:17px}.origin-summary>div,.institution-card>div{display:grid;gap:3px;flex:1;min-width:0}.origin-summary strong,.institution-card strong{font-size:11px}.origin-summary small,.institution-card small{color:#74849a;font-size:9px;line-height:1.45}.summary-warning{color:#916820!important}.institution-card{border-color:#e3e8ef;background:#f9fafc}.institution-mark{background:#e9eef5;color:#526b8a;font:700 9px Manrope}.institution-card{align-items:flex-start}.institution-access label{display:grid;gap:4px;margin-top:5px;color:#66778d;font-size:9px}.institution-access input{width:100%;min-height:32px;border:1px solid #dfe5ec;border-radius:7px;padding:6px 8px;background:#fff;font-size:10px}.origin-footer{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:14px;padding-top:12px;border-top:1px solid #eef1f5;color:#8390a2;font-size:9px}.state-pill{display:inline-flex;align-items:center;border-radius:99px;padding:4px 8px;color:#8a6525;background:#faf3e5;font-weight:700}.state-ready{color:#317151;background:#eaf5ee}.catalog-controls{display:grid;gap:10px;margin-bottom:13px}.search-box{display:flex;align-items:center;gap:9px;height:39px;border:1px solid #dce3eb;border-radius:9px;padding:0 11px;color:#6f829c}.search-box:focus-within{border-color:#7996ba;box-shadow:0 0 0 3px #dce8f6}.search-box>span{font-size:21px}.search-box input{width:100%;height:35px;padding:0;border:0;outline:0;background:transparent;font-size:11px}.search-box input:focus-visible{outline:0}.search-box kbd{color:#a3acb8;font-size:9px;white-space:nowrap}.filter-row{display:flex;align-items:center;gap:9px}.filter-row select{height:32px;min-width:150px;padding:0 26px 0 9px;background:#fbfcfd;font-size:10px}.center-list{border-top:1px solid #eef1f4}.center-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:88px;border-bottom:1px solid #edf0f4;padding:11px 2px}.center-symbol{display:grid;place-items:center;width:32px;height:32px;border:1px solid #dce5f0;border-radius:9px;color:#55769e;background:#f0f4f9;font:700 12px Manrope}.center-copy{min-width:0}.row-tags{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:3px}.type-tag,.official-tag,.custom-tag,.mini-tag{display:inline-flex;width:fit-content;border-radius:4px;padding:2px 5px;font-size:8px;line-height:1.25;font-weight:700}.type-tag{color:#718096;background:#f0f2f5}.official-tag{color:#44658e;background:#eaf0f8}.custom-tag{color:#78603a;background:#f5f0e6}.center-copy h3{margin:0;overflow:hidden;color:#243650;font:700 12px Manrope;text-overflow:ellipsis;white-space:nowrap}.center-copy p{margin:3px 0 0;color:#708096;font-size:9px}.center-copy p span{padding:0 3px;color:#b0b9c5}.center-address,.missing-coordinates{display:block;margin-top:3px;overflow:hidden;color:#9aa5b3;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.missing-coordinates{color:#9a702c}.button{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:34px;border:1px solid transparent;border-radius:8px;padding:0 11px;font-size:10px;font-weight:700;transition:.14s ease;white-space:nowrap}.button:disabled{opacity:.48}.button-primary{color:#fff;background:var(--navy)}.button-primary:hover:not(:disabled){background:#234474}.button-outline{color:#46658b;border-color:#d6e0eb;background:#fff}.button-outline:hover:not(:disabled){border-color:#91a8c6;background:#f5f8fb}.button-added{color:#3b7b59;border-color:#d2e6d9;background:#f0f8f3}.button-subtle{color:#61748c;border-color:#dce3eb;background:#f8fafc}.button-disabled{width:100%;color:#8390a1;border-color:#e1e6ed;background:#eff2f6}.button-wide{width:100%}.text-button{border:0;padding:3px;color:#4d6d96;background:transparent;font-size:10px;font-weight:650}.text-button:hover{text-decoration:underline}.load-more{display:block;width:100%;border:0;padding:13px;color:#476994;background:#fff;font-size:10px;font-weight:700}.load-more span{margin-left:4px;color:#99a4b2;font-weight:400}.catalog-source{display:flex;flex-wrap:wrap;gap:5px;padding-top:13px;color:#9aa4b1;font-size:9px}.catalog-source a{color:#536e92;text-decoration:none}.catalog-source a:hover{text-decoration:underline}.empty-state{display:grid;justify-items:center;gap:5px;padding:32px 12px;color:#718096;text-align:center}.empty-state>span{font-size:23px}.empty-state strong{color:#53647b;font-size:12px}.empty-state small{font-size:10px}.custom-form{margin-top:0}.custom-list{margin-top:17px;border-top:1px solid #edf0f4}.empty-inline{padding:15px 2px;color:#9aa4b1;font-size:10px}.custom-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 2px;border-bottom:1px solid #edf0f4}.custom-symbol{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;color:#87714c;background:#f5f1e9}.custom-copy{display:grid;gap:3px;min-width:0}.custom-copy strong{color:#31435d;font-size:11px}.custom-copy small{overflow:hidden;color:#8a96a6;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.row-actions{display:flex;align-items:center;gap:4px}.icon-button{display:grid;place-items:center;flex:0 0 auto;width:29px;height:29px;border:1px solid #e0e6ed;border-radius:7px;color:#77869a;background:#fff;font-size:16px}.icon-button:hover{border-color:#aebdd0;color:#38577f}.icon-button.danger:hover{border-color:#e2c1bd;color:#a85148;background:#fff8f7}.storage-note{display:flex;gap:8px;margin-top:13px;border-radius:8px;padding:9px 10px;color:#7c7159;background:#fbf8f1}.storage-note>span{font-size:14px}.storage-note p{margin:0;font-size:9px;line-height:1.45}.itinerary-panel{padding:20px}.itinerary-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.itinerary-heading .eyebrow{margin-bottom:5px}.itinerary-heading h2{max-width:230px;font-size:16px}.stop-count{display:grid;place-items:center;min-width:43px;height:43px;border-radius:12px;color:var(--navy);background:#edf2f8;font:800 18px Manrope}.stop-count small{display:inline;margin-left:1px;color:#99a5b5;font-size:9px}.itinerary-name{margin:0 0 13px}.itinerary-name input{height:35px}.route-preview{position:relative}.route-preview:before{position:absolute;top:22px;bottom:23px;left:14px;width:1px;background:#dbe3ed;content:""}.route-endpoint,.stop-row{position:relative;display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:start;gap:9px;padding:9px 0}.route-endpoint{grid-template-columns:30px 1fr;align-items:center}.route-node{z-index:1;display:grid;place-items:center;width:28px;height:28px;border:1px solid #dce4ed;border-radius:50%;color:#536f93;background:#fff;font:700 10px Manrope}.route-origin{border-color:#c9d8cb;color:#4d805e;background:#f1f8f2}.route-endpoint>div{display:grid;gap:2px}.route-endpoint strong{color:#43566f;font-size:10px}.route-endpoint small{color:#929dac;font-size:9px}.route-return{margin-top:4px;border-top:1px dashed #e5e9ef;padding-top:12px}.stop-copy{display:grid;gap:4px;min-width:0;padding-top:1px}.stop-copy strong{overflow-wrap:anywhere;color:#344762;font-size:10px}.stop-copy small{overflow:hidden;color:#8c98a8;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.mini-tag{margin-bottom:1px}.stop-controls{display:flex;gap:3px}.stop-controls button{display:grid;place-items:center;width:25px;height:25px;border:1px solid #e1e6ed;border-radius:6px;color:#677b95;background:#fff;font-size:13px}.stop-controls button:hover:not(:disabled){color:var(--navy);border-color:#acbdd2}.stop-controls button:disabled{opacity:.35}.stop-controls .remove-stop{color:#a45b53}.itinerary-empty{display:grid;justify-items:center;gap:6px;margin:9px 0;border:1px dashed #dce3eb;border-radius:10px;padding:20px 12px;color:#8190a3;text-align:center}.itinerary-empty>span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:#5879a0;background:#eef3f8;font-size:18px}.itinerary-empty strong{color:#596c85;font-size:10px}.itinerary-empty small{font-size:9px}.itinerary-summary{display:flex;justify-content:space-between;margin:11px 0 13px;border-top:1px solid #edf0f4;padding-top:10px;color:#8290a3;font-size:9px}.itinerary-summary strong{color:#425b7b}.itinerary-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.calculation-placeholder{margin-top:15px;border-radius:9px;padding:12px;background:#f5f7fa}.calculation-placeholder strong{color:#53667f;font-size:10px}.calculation-placeholder p{min-height:28px;margin:5px 0 10px;color:#8793a3;font-size:9px;line-height:1.45}.saved-panel{padding:17px}.compact-heading{margin-bottom:13px}.compact-heading h2{font-size:14px}.empty-saved{border:1px dashed #dfe5ec;border-radius:8px;padding:13px;color:#939eae;font-size:9px;line-height:1.5}.saved-list{display:grid}.saved-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto 29px;align-items:center;gap:6px;padding:10px 0;border-bottom:1px solid #edf0f4}.saved-active{background:linear-gradient(90deg,#f5f8fc,transparent)}.saved-icon{display:grid;place-items:center;width:26px;height:26px;border-radius:7px;color:#59769b;background:#eef3f8}.saved-copy{display:grid;gap:3px;min-width:0}.saved-copy strong{overflow:hidden;color:#3b4e68;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.saved-copy small{color:#9aa4b1;font-size:8px}.saved-item .button{min-height:28px;padding:0 8px;font-size:9px}.privacy-note{margin:12px 0 0;color:#8995a5;font-size:9px;line-height:1.55}.source-card{display:grid;gap:6px;border:1px solid #e0e6ed;border-radius:13px;padding:15px;background:#fbfcfd}.source-card>span{color:#8e9aaa;font-size:8px;font-weight:700;letter-spacing:.1em}.source-card strong{color:#50627a;font:700 11px Manrope}.source-card small{color:#919cab;font-size:9px}.source-card a{margin-top:3px;color:#527298;font-size:9px;text-decoration:none}.source-card a:hover{text-decoration:underline}.app-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #e2e7ee;padding:17px max(24px,calc((100vw - 1380px)/2));color:#9aa4b1;background:#fff;font-size:9px}.app-footer span:first-child{color:#627691;font-weight:700;letter-spacing:.1em}.toast{position:fixed;right:22px;bottom:22px;z-index:5;max-width:min(420px,calc(100vw - 44px));border:1px solid #29456b;border-radius:10px;padding:12px 15px;color:#fff;background:#1e3b63;box-shadow:0 10px 34px #162d4c35;font-size:11px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%)}.route-results{display:grid;gap:9px;margin-top:13px}.demo-banner{border:1px solid #d9a34a;border-radius:8px;padding:9px;color:#714c12;background:#fff4dc;font-size:10px;font-weight:800;letter-spacing:.06em}.route-result-card{border:1px solid #e2e7ee;border-radius:9px;padding:11px;background:#fff}.route-result-card h3{margin:0 0 7px;color:#344762;font-size:11px}.route-result-card p{margin:0 0 7px;color:#65768d;font-size:10px}.route-result-card ol{display:grid;gap:5px;margin:0;padding-left:17px;color:#53647a;font-size:9px}.route-result-card li{padding-left:2px}.route-result-card li small{display:block;color:#8996a7;font-size:8px}@media(max-width:1050px){.workspace{width:min(100% - 34px,900px)}.columns{grid-template-columns:minmax(0,1.4fr) minmax(290px,.85fr);gap:15px}.origin-panel,.catalog-panel,.custom-panel{padding:17px}.itinerary-panel{padding:16px}.stop-controls{flex-wrap:wrap;justify-content:end;max-width:56px}.saved-item{grid-template-columns:27px minmax(0,1fr) auto}.saved-item .icon-button{grid-column:3;grid-row:1;margin-top:34px}}@media(max-width:760px){.topbar{height:64px;padding:0 17px}.topbar-note{font-size:10px}.workspace{width:calc(100% - 28px);padding-top:29px}.page-intro{align-items:flex-start}.intro-badge{display:none}.columns{grid-template-columns:1fr}.side-column{grid-row:1}.primary-column{grid-row:2}.itinerary-panel{padding:18px}.stop-controls{max-width:none;flex-wrap:nowrap}.saved-item{grid-template-columns:28px minmax(0,1fr) auto 29px}.saved-item .icon-button{grid-column:auto;grid-row:auto;margin:0}}@media(max-width:520px){.brand small{display:none}.page-intro h1{font-size:28px}.page-intro>div:first-child>p:last-child{max-width:340px;font-size:11px;line-height:1.5}.origin-panel,.catalog-panel,.custom-panel{padding:15px 13px}.origin-options{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr;gap:9px}.section-heading{gap:9px}.section-heading h2{font-size:15px}.heading-count{font-size:9px}.center-row{grid-template-columns:30px minmax(0,1fr);gap:8px}.center-row>.button{grid-column:2;justify-self:start}.center-address{max-width:calc(100vw - 110px)}.filter-row{flex-wrap:wrap}.filter-row select{flex:1;min-width:120px}.custom-row{grid-template-columns:30px minmax(0,1fr)}.row-actions{grid-column:2;justify-content:flex-start}.row-actions .button{min-height:29px}.itinerary-actions{grid-template-columns:1fr}.app-footer{display:grid;gap:5px;padding:13px 15px}.saved-item{grid-template-columns:26px minmax(0,1fr) auto 28px;gap:4px}.saved-item .button{min-height:27px}.notice{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}:root{--navy:#0E4D3F;--blue:#16A34A;--blue-dark:#0E4D3F;--ink:#18372f;--muted:#526a60;--line:#dce8df;--canvas:#F6FAF0;--lime:#A3E635;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{color:var(--ink);background:#f6faf0}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #16A34A;outline-offset:3px}.topbar{position:sticky;top:0;z-index:10;height:auto;min-height:76px;gap:20px;padding:10px max(24px,calc((100vw - 1380px)/2));border-bottom-color:#dfe9dc;background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{flex:0 0 auto;gap:10px}.brand-symbol{width:46px;height:46px;border-radius:13px}.brand strong{color:#0e4d3f;font-family:inherit;font-size:18px;letter-spacing:-.03em}.brand small{color:#60766a;font-family:inherit;font-size:10px}.main-nav{display:flex;align-items:center;justify-content:center;gap:4px;margin:0 auto}.main-nav button{min-height:40px;border:0;border-radius:9px;padding:0 12px;color:#52675d;background:transparent;font-size:12px;font-weight:650}.main-nav button:hover,.main-nav button[aria-current=page]{color:#0e4d3f;background:#eaf4e8}.topbar-note{display:grid;justify-items:end;gap:2px;color:#496257;font-size:10px;white-space:nowrap}.operator-name{color:#234a3d;font-size:11px;font-weight:700}.operator-email{color:#75877b}.logout-button{border:0;padding:1px 0;color:#0e4d3f;background:none;font-size:10px;text-decoration:underline}.workspace{padding-top:32px}.welcome-hero{position:relative;display:flex;align-items:center;min-height:320px;overflow:hidden;border-radius:24px;padding:46px 52px;color:#fff;background:#0e4d3f;box-shadow:0 18px 38px #0e4d3f1c;isolation:isolate}.welcome-background{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%}.welcome-hero:before{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#073c32ed,#0b493ddc 38%,#0e4d3f70 70%,#0e4d3f20);content:""}.welcome-hero:after{display:none}.welcome-copy{z-index:1;max-width:610px}.welcome-copy .eyebrow{color:#c5e98a}.welcome-copy h1{max-width:590px;margin:10px 0 14px;color:#fff;font-size:clamp(32px,4vw,48px);line-height:1.08;letter-spacing:-.045em}.welcome-copy>p:not(.eyebrow){max-width:530px;margin:0 0 24px;color:#e1efe5;font-size:15px;line-height:1.65}.welcome-copy .button-primary{border-color:#a3e635;color:#173e31;background:#a3e635}.welcome-copy .button-primary:hover{background:#b5ef5f}.welcome-art{display:none}.welcome-art img{width:164px;height:164px;border:1px solid #ffffff33;border-radius:34px;box-shadow:0 15px 34px #052e2740}.home-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 48px}.home-cards-admin{grid-template-columns:repeat(4,minmax(0,1fr))}.home-card{display:flex;align-items:flex-start;gap:12px;min-height:136px;border:1px solid #dce8df;border-radius:15px;padding:18px 15px;color:#284a3c;background:#fff;text-align:left;box-shadow:0 4px 14px #123c2410;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.home-card:hover{transform:translateY(-2px);border-color:#9fca9f;box-shadow:0 10px 22px #123c2418}.home-card>span:nth-child(2){display:grid;gap:7px}.home-card strong{color:#174b3b;font-size:14px}.home-card small{color:#63796b;font-size:11px;line-height:1.5}.home-card>b{margin-left:auto;color:#638f52}.home-card-icon{display:grid;flex:0 0 auto;place-items:center;width:62px;height:62px;border-radius:15px;color:#0e4d3f;background:#edf6e8}.home-card-icon img{display:block;width:100%;height:100%;object-fit:contain}.home-card-primary{border-color:#cfe1c7;background:#f0f7e9}.page-intro h1{color:#173e32;font-family:inherit}.eyebrow{color:#37805a}.panel{border-color:#dce8df;border-radius:14px;box-shadow:0 3px 12px #123c240a}.section-heading h2,.itinerary-heading h2{color:#173e32;font-family:inherit}.section-icon{color:#0e4d3f;background:#eaf4e8}.form-grid label,.itinerary-name{color:#435d50}input,select{border-color:#d5e2d8;border-radius:8px;color:#193b30;background:#fff}.button-primary{color:#fff;background:#0e4d3f}.button-primary:hover:not(:disabled){background:#17694f}.button-outline{color:#0e4d3f;border-color:#cbdccf}.button-added,.state-ready{color:#17653e;border-color:#cfe6d3;background:#edf7ed}.button-subtle,.filter-row select{color:#436356;border-color:#d7e3d9;background:#f7faf5}.text-button,.catalog-source a,.source-card a{color:#147446}.route-node.route-origin{border-color:#bad7c1;color:#17653e;background:#edf7ed}.stop-count{color:#0e4d3f;background:#eaf4e8}.saved-active{background:linear-gradient(90deg,#edf6e9,transparent)}.app-footer{border-color:#dce8df;color:#718378}.toast{border-color:#0e4d3f;background:#0e4d3f}.activity-panel{margin:-26px 0 48px;border:1px solid #dce8df;border-radius:18px;padding:22px 24px;background:#fff;box-shadow:0 5px 18px #123c240b}.activity-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:17px}.activity-heading .eyebrow{margin:0 0 5px;font-size:9px;font-weight:800;letter-spacing:.13em}.activity-heading h2{margin:0;color:#173e32;font-size:20px;letter-spacing:-.025em}.activity-heading>small{color:#6e8377;font-size:10px}.activity-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.activity-metrics article{display:flex;align-items:center;gap:12px;min-height:70px;border-radius:12px;padding:12px 15px;background:#f3f8ef}.activity-metrics img{width:42px;height:42px;object-fit:contain}.activity-metrics article div{display:grid;gap:2px}.activity-metrics strong{color:#0e4d3f;font-size:21px}.activity-metrics span{color:#60766a;font-size:11px}.activity-empty{margin:13px 0 0;color:#6c7e73;font-size:11px;line-height:1.5}@media(max-width:1000px){.topbar{flex-wrap:wrap}.main-nav{order:3;width:100%;justify-content:flex-start;overflow:auto}.topbar-note{margin-left:auto}.home-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.topbar{position:relative;padding:10px 15px 0;gap:8px}.main-nav{gap:2px;padding-bottom:9px}.main-nav button{flex:0 0 auto;padding:0 9px;font-size:11px}.operator-email{display:none}.welcome-hero{min-height:0;padding:30px 24px}.welcome-hero:before{background:linear-gradient(90deg,#073c32f2,#0b493de8 62%,#0e4d3f75)}.welcome-background{object-position:72% center}.welcome-copy h1{font-size:34px}.welcome-copy>p:not(.eyebrow){font-size:13px}.home-cards{gap:10px}.home-card{min-height:122px;padding:14px 11px}}@media(max-width:440px){.brand-symbol{width:40px;height:40px}.brand small{display:block;font-size:9px}.brand strong{font-size:16px}.topbar-note,.logout-button{font-size:9px}.home-cards{grid-template-columns:1fr}.home-card{min-height:90px;align-items:center}.home-card-icon{width:52px;height:52px}.welcome-hero{padding:27px 20px}.welcome-copy h1{font-size:30px}.activity-panel{margin-top:-28px;padding:18px 15px}.activity-heading{align-items:flex-start;flex-direction:column;gap:5px}.activity-metrics{grid-template-columns:1fr}}.view-destinations,.view-itineraries{grid-template-columns:minmax(0,1fr)}.view-destinations .side-column,.view-itineraries .primary-column{display:none}.view-destinations .primary-column,.view-itineraries .side-column{min-width:0}@media(max-width:760px){.columns{grid-template-columns:minmax(0,1fr)}}.columns .panel{min-width:0}@media(max-width:520px){.catalog-controls{grid-template-columns:minmax(0,1fr);min-width:0}.search-box,.filter-row{min-width:0;width:100%}.search-box input{flex:1 1 0;width:auto;min-width:0}.filter-row select{max-width:100%}}@media(max-width:360px){.main-nav{flex-wrap:wrap;overflow:visible}.main-nav button{flex:1 0 calc(50% - 4px);justify-content:center}}.km-auth-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:#f3f6fa}.km-auth-card{width:min(100%,760px);margin:0 auto 20px;padding:26px;border:1px solid #e0e6ee;border-radius:16px;background:#fff;box-shadow:0 8px 28px #142b4e0b}.km-login-card{width:min(100%,430px);padding:34px}.km-auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.km-auth-brand>div{display:grid;gap:2px}.km-auth-brand strong{color:#142b4e;font-size:17px;letter-spacing:.08em}.km-auth-brand small{color:#8794a7;font-size:10px}.km-auth-logo{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;color:#fff;background:#142b4e;font-size:13px;font-weight:800;letter-spacing:.06em}.km-auth-eyebrow{margin:0 0 8px;color:#7186a1;font-size:10px;font-weight:700;letter-spacing:.15em}.km-auth-card h1,.km-admin-heading h1{margin:0;color:#142b4e;font-size:28px;letter-spacing:-.035em}.km-auth-card h2{margin:0 0 8px;color:#142b4e;font-size:18px}.km-auth-card>p,.km-admin-heading p:last-child{color:#78869a;font-size:13px;line-height:1.55}.km-auth-form{display:grid;gap:14px;margin-top:22px}.km-auth-form label{display:grid;gap:6px;color:#53647b;font-size:12px;font-weight:650}.km-auth-form input{width:100%;height:42px;font-size:13px}.km-primary-button,.km-secondary-button,.km-danger-button,.km-link-button{border-radius:8px;padding:10px 14px;font-size:12px;font-weight:650}.km-primary-button{border:1px solid #142b4e;color:#fff;background:#142b4e}.km-primary-button:disabled,.km-secondary-button:disabled,.km-danger-button:disabled{opacity:.55;cursor:not-allowed}.km-secondary-button{border:1px solid #dce3eb;color:#294a70;background:#fff}.km-danger-button{border:1px solid #ead1d0;color:#973e39;background:#fff8f8}.km-link-button{display:block;margin:15px auto 0;border:0;color:#315a8d;background:transparent}.km-auth-error,.km-auth-message{margin:14px 0 0;font-size:12px;line-height:1.5}.km-auth-error{color:#a54640}.km-auth-message{color:#286a4a}.km-auth-footnote{display:block;margin-top:22px;color:#7c899b;font-size:10px;line-height:1.5;text-align:center}.km-user-bar{position:relative;z-index:2;display:flex;align-items:center;justify-content:flex-end;gap:14px;min-height:50px;padding:7px max(24px,calc((100vw - 1380px)/2));border-bottom:1px solid #e0e6ee;background:#fff}.km-user-bar>div:first-child{display:grid;gap:1px;margin-right:auto;color:#33455f;font-size:11px}.km-user-bar>div:first-child span{color:#8390a1;font-size:10px}.km-user-bar>div:last-child{display:flex;gap:8px}.km-admin-main{width:min(920px,calc(100% - 40px));margin:0 auto;padding:36px 0 70px}.km-admin-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:20px}.km-admin-heading p:last-child{margin:7px 0 0}.km-admin-form{grid-template-columns:1fr 1fr;align-items:end}.km-admin-email{grid-column:1 / -1}.km-inspector-list{display:grid}.km-inspector-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 0;border-top:1px solid #edf0f4}.km-inspector-row>div:first-child{display:grid;gap:3px;min-width:0}.km-inspector-row>div:first-child strong{color:#253c59;font-size:13px}.km-inspector-row>div:first-child span,.km-inspector-row>div:first-child small{color:#79879a;font-size:11px;overflow-wrap:anywhere}.km-inspector-actions{display:flex;flex-wrap:wrap;justify-content:end;gap:7px}@media(max-width:640px){.km-login-card{padding:26px}.km-user-bar{align-items:start;padding:10px 16px}.km-user-bar>div:last-child{flex-wrap:wrap;justify-content:end}.km-admin-heading,.km-inspector-row{align-items:start;flex-direction:column}.km-admin-form{grid-template-columns:1fr}.km-admin-email{grid-column:auto}.km-inspector-actions{justify-content:start}}.km-auth-screen{background:radial-gradient(ellipse at 80% 0%,#e6f2df 0,transparent 48%),#f6faf0}.km-auth-card{border-color:#dce8df;border-radius:18px;box-shadow:0 16px 45px #133d2812}.km-auth-brand{gap:11px}.km-auth-logo-image{width:46px;height:46px;border-radius:13px}.km-auth-brand strong,.km-auth-card h1,.km-admin-heading h1,.km-auth-card h2{color:#0e4d3f}.km-auth-brand small{color:#61786b}.km-auth-eyebrow{color:#37805a}.km-auth-form label{color:#435d50}.km-auth-form input{border-color:#d5e2d8;border-radius:8px}.km-primary-button{border-color:#0e4d3f;color:#fff;background:#0e4d3f}.km-primary-button:hover:not(:disabled){background:#17694f}.km-secondary-button{border-color:#d3e2d5;color:#0e4d3f;background:#fff}.km-secondary-button:hover:not(:disabled){background:#edf6e9}.km-link-button{color:#147446}.km-user-bar,.admin-app-header{border-color:#dce8df;background:#fff}.km-admin-heading h1{letter-spacing:-.035em}.km-inspector-row{border-color:#e5eee4}.admin-app-header{display:flex;align-items:center;gap:8px;min-height:68px;padding:8px max(24px,calc((100vw - 1380px)/2));border-bottom:1px solid #dce8df}.admin-app-header .km-auth-brand{margin:0 auto 0 0}.km-admin-main{padding-top:30px}@media(max-width:640px){.admin-app-header{flex-wrap:wrap;padding:10px 16px}.admin-app-header .km-auth-brand{flex-basis:100%}}.km-login-screen{display:grid;place-items:center;padding:36px;background:#f6faf0}.km-auth-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.85fr);width:min(1120px,100%);min-height:610px;overflow:hidden;border:1px solid #dce8df;border-radius:24px;background:#fff;box-shadow:0 22px 65px #123c2418}.km-auth-visual{position:relative;display:flex;align-items:flex-end;min-height:610px;overflow:hidden;isolation:isolate;padding:48px;color:#fff;background:#0e4d3f}.km-auth-visual>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.km-auth-visual:after{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,#063c32f2,#0b493d9c 43%,#0e4d3f12);content:""}.km-auth-visual-copy{max-width:490px}.km-auth-visual-copy>p{margin:0 0 12px;color:#d3f39a;font-size:10px;font-weight:800;letter-spacing:.14em}.km-auth-visual-copy h1{margin:0 0 13px;color:#fff;font-size:clamp(34px,4vw,51px);line-height:1.04;letter-spacing:-.045em}.km-auth-visual-copy>span{display:block;max-width:430px;color:#e6f0e9;font-size:14px;line-height:1.65}.km-auth-split .km-login-card{align-self:center;width:100%;margin:0;padding:48px;border:0;border-radius:0;box-shadow:none}.km-auth-split .km-login-card h2{margin:0;font-size:30px;letter-spacing:-.035em}.km-auth-split .km-login-card>p:not(.km-auth-eyebrow){margin:10px 0 0}.km-auth-split .km-auth-brand{margin-bottom:36px}.km-auth-split .km-auth-form{margin-top:26px}.km-auth-split .km-primary-button{min-height:46px;margin-top:4px}.km-auth-split .km-auth-footnote{text-align:left}@media(max-width:800px){.km-login-screen{place-items:stretch center;padding:16px}.km-auth-split{grid-template-columns:1fr;width:min(560px,100%);min-height:0;border-radius:20px}.km-auth-visual{align-items:flex-end;min-height:250px;padding:27px 30px}.km-auth-visual>img{object-position:center 53%}.km-auth-visual:after{background:linear-gradient(0deg,#063c32f2,#0b493d88 55%,#0e4d3f10)}.km-auth-visual-copy h1{max-width:430px;font-size:34px}.km-auth-visual-copy>span{max-width:440px;font-size:12px}.km-auth-split .km-login-card{padding:30px}.km-auth-split .km-auth-brand{margin-bottom:22px}}@media(max-width:420px){.km-login-screen{padding:0}.km-auth-split{width:100%;min-height:100vh;border:0;border-radius:0}.km-auth-visual{min-height:215px;padding:21px 22px}.km-auth-visual-copy h1{font-size:29px}.km-auth-visual-copy>p{font-size:9px}.km-auth-visual-copy>span{font-size:11px}.km-auth-split .km-login-card{padding:24px 22px 28px}.km-auth-split .km-login-card h2{font-size:26px}}.km-login-screen{align-items:center;justify-content:center;gap:0;padding:clamp(18px,3vw,42px);background:#f3f8ed}.km-login-screen .km-auth-split{grid-template-columns:minmax(0,1.1fr) minmax(360px,.74fr);grid-template-rows:minmax(650px,1fr) auto;width:min(1240px,100%);min-height:0;overflow:hidden;border:1px solid #dce8df;border-radius:26px}.km-login-screen .km-auth-visual{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;min-height:650px;overflow:hidden;padding:28px 34px 24px;background:#0d4a3d}.km-login-screen .km-auth-visual>img{inset:0 0 auto;width:100%;height:215px;object-fit:cover;object-position:center 51%}.km-login-screen .km-auth-visual:after{background:linear-gradient(180deg,#0e4d3f08 0% 45%,#0d4a3df0 215px,#0d4a3d 270px)}.atlas-public-brand{position:absolute;z-index:1;top:26px;left:34px;display:flex;align-items:center;gap:13px}.atlas-public-brand>img{width:53px;height:53px;border-radius:15px;box-shadow:0 6px 22px #032c2440}.atlas-public-brand>div{display:grid;gap:2px}.atlas-public-brand strong{color:#fff;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:36px;font-weight:900;letter-spacing:.2em;line-height:1}.atlas-public-brand span{color:#e1efe7;font-size:11px;font-weight:600;letter-spacing:.04em}.km-login-screen .km-auth-visual-copy{position:relative;z-index:1;max-width:620px;margin-top:202px}.km-login-screen .km-auth-visual-copy>p:first-child{margin:0 0 10px;color:#c9ef8a;font-size:9px}.km-login-screen .km-auth-visual-copy h1{margin:0 0 12px;color:#fff;font-size:clamp(32px,3.5vw,45px);font-weight:850;line-height:1.04;letter-spacing:-.045em}.km-login-screen .km-auth-visual-copy>span{max-width:570px;color:#e6f2e9;font-size:13px;line-height:1.58}.km-login-screen .atlas-visual-support{margin:8px 0 0;color:#cce4d1;font-size:11px;line-height:1.5}.atlas-feature-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:22px}.atlas-feature-grid article{display:flex;align-items:center;gap:10px;min-height:69px;border:1px solid #ffffff25;border-radius:13px;padding:10px 12px;background:#ffffff12}.atlas-feature-grid article>img,.atlas-lock-icon{display:grid;flex:0 0 auto;place-items:center;width:34px;height:34px;border-radius:10px;padding:4px;background:#f1f8e9}.atlas-lock-icon{padding:6px}.atlas-feature-grid article>div{display:grid;gap:4px}.atlas-feature-grid article strong{color:#fff;font-size:11px}.atlas-feature-grid article span:not(.atlas-lock-icon){color:#d7e9da;font-size:9px;line-height:1.4}.atlas-route-status{position:relative;z-index:1;display:block;margin-top:auto;padding-top:12px;color:#b8d2bf;font-size:9px}.km-login-screen .km-auth-split .km-login-card{grid-column:2;grid-row:1;align-self:center;display:flex;flex-direction:column;justify-content:center;width:100%;max-width:none;min-height:650px;margin:0;padding:clamp(30px,4vw,54px);border:0;border-radius:0;box-shadow:none}.km-login-screen .km-login-card h2{margin:0;font-size:32px}.km-login-screen .km-login-card>p:not(.km-auth-eyebrow){margin:11px 0 0;color:#64776d;line-height:1.55}.km-login-screen .km-login-card .km-auth-form{gap:16px}.km-login-screen .km-login-card .km-primary-button{min-height:46px;margin-top:4px}.km-login-screen .km-auth-footnote{text-align:center}.atlas-public-footer{grid-column:1 / -1;grid-row:2;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;border-top:1px solid #e1eadf;padding:12px 25px;background:#fff}.atlas-public-footer>span{display:grid;gap:3px}.atlas-public-footer strong{color:#294a3c;font-size:11px}.atlas-public-footer small,.atlas-public-footer a{color:#6d8074;font-size:10px;text-decoration:none}.atlas-public-footer>span:last-child{display:flex;flex-wrap:wrap;gap:14px}.atlas-public-footer a:hover,.app-footer a:hover{color:#147446;text-decoration:underline}.km-danger-button{border:1px solid #ead1d0;color:#963f39;background:#fff8f8}.km-danger-button:hover:not(:disabled){background:#fff0ef}.app-footer{align-items:center;flex-wrap:wrap}.app-footer a{color:#527364;font-size:9px;text-decoration:none}@media(max-width:820px){.km-login-screen{padding:16px}.km-login-screen .km-auth-split{grid-template-columns:1fr;grid-template-rows:auto auto auto;width:min(620px,100%);min-height:0;border-radius:20px}.km-login-screen .km-auth-visual{grid-column:1;grid-row:1;min-height:0;padding:23px 25px 18px}.km-login-screen .km-auth-visual>img{height:180px}.km-login-screen .km-auth-visual:after{background:linear-gradient(180deg,#0e4d3f05,#0e4d3f10 32%,#0d4a3df2 180px,#0d4a3d 230px)}.atlas-public-brand{top:18px;left:25px}.atlas-public-brand>img{width:44px;height:44px;border-radius:12px}.atlas-public-brand strong{font-size:29px}.atlas-public-brand span{font-size:9px}.km-login-screen .km-auth-visual-copy{margin-top:166px}.km-login-screen .km-auth-visual-copy h1{font-size:clamp(30px,7vw,39px)}.km-login-screen .km-auth-visual-copy>span{font-size:12px}.atlas-feature-grid{gap:7px;margin-top:16px}.atlas-feature-grid article{min-height:65px;padding:8px}.atlas-feature-grid article>img,.atlas-lock-icon{width:30px;height:30px}.atlas-feature-grid article strong{font-size:10px}.atlas-feature-grid article span:not(.atlas-lock-icon){font-size:8px}.km-login-screen .km-auth-split .km-login-card{grid-column:1;grid-row:2;min-height:0;padding:29px 30px 30px}.atlas-public-footer{grid-column:1;grid-row:3}}@media(max-width:520px){.km-login-screen{padding:0}.km-login-screen .km-auth-split{width:100%;min-height:100vh;border:0;border-radius:0}.km-login-screen .km-auth-visual{padding:19px 19px 17px}.km-login-screen .km-auth-visual>img{height:155px}.km-login-screen .km-auth-visual:after{background:linear-gradient(180deg,#0e4d3f05,#0e4d3f0c 35%,#0d4a3df5 155px,#0d4a3d 210px)}.atlas-public-brand{top:14px;left:19px}.atlas-public-brand>img{width:39px;height:39px}.atlas-public-brand strong{font-size:26px;letter-spacing:.18em}.atlas-public-brand span{font-size:8px}.km-login-screen .km-auth-visual-copy{margin-top:140px}.km-login-screen .km-auth-visual-copy>p:first-child{font-size:8px}.km-login-screen .km-auth-visual-copy h1{font-size:29px}.km-login-screen .atlas-visual-support{font-size:10px}.atlas-feature-grid{gap:6px;margin-top:13px}.atlas-feature-grid article{align-items:flex-start;min-height:74px;gap:7px;padding:8px 7px}.atlas-feature-grid article>img,.atlas-lock-icon{width:26px;height:26px;padding:5px}.atlas-feature-grid article strong{font-size:9px}.atlas-feature-grid article span:not(.atlas-lock-icon){font-size:7.5px}.atlas-route-status{margin-top:10px;font-size:8px}.km-login-screen .km-auth-split .km-login-card{padding:25px 22px}.km-login-screen .km-login-card h2{font-size:27px}.atlas-public-footer{align-items:flex-start;flex-direction:column;gap:8px;padding:14px 22px}.atlas-public-footer>span:last-child{gap:12px}}.km-access-request-button{display:block;width:100%;margin-top:10px;border:1px solid #d4e4d3;border-radius:8px;padding:11px 14px;color:#0e4d3f;background:#f7fbf5;font-size:12px;font-weight:700}.km-access-request-button:hover{background:#edf6e9}.km-login-screen .km-auth-form textarea{width:100%;resize:vertical;border:1px solid #d5e2d8;border-radius:8px;padding:10px 11px;color:#263c32;background:#fff;font:inherit;font-size:13px}.km-optional-label{display:inline;color:#75867a;font-size:10px;font-weight:500}.km-request-privacy{color:#62766b;font-size:10px;line-height:1.5}.km-pending-count{display:inline-grid;min-width:23px;height:23px;place-items:center;margin-left:5px;border-radius:999px;padding:0 6px;color:#fff;background:#147446;font-size:12px;vertical-align:2px}.km-request-row>div:first-child p{margin:6px 0 0;color:#52685b;font-size:12px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.km-request-row .km-primary-button{border:1px solid #0e4d3f;border-radius:8px;padding:10px 14px;color:#fff;background:#0e4d3f;font-size:12px;font-weight:650}.km-request-row .km-primary-button:hover:not(:disabled){background:#17694f}@media(max-width:640px){.km-request-row .km-inspector-actions{width:100%}.km-request-row .km-inspector-actions button{flex:1}}
