/* Locally served assets. Reusable utility compositions live in uno.config.ts. */
.booking-request-dialog::backdrop{background:rgba(25,42,34,.56);backdrop-filter:blur(2px)}
:root{--paper:#faf8f2;--ink:#273d34;--muted:#788077;--line:#e5e5da;--copper:#a85c3c;--green:#234b3e;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{text-decoration:none;color:inherit}button,input,select{font:inherit}button,input[type=submit]{cursor:pointer}button{border:0}h1,h2,h3,p{margin:0}h1,h2{font-weight:500;letter-spacing:-.045em}h1{font-size:42px;line-height:1.15}h2{font-size:34px;line-height:1.18}h3{font-size:17px;line-height:1.4;letter-spacing:-.02em}p{line-height:1.75}a,button,input,select{outline-offset:4px}a:focus-visible,button:focus-visible{outline:2px solid var(--copper)}.skip-link{position:absolute;top:-60px;background:white;padding:12px;z-index:100}.skip-link:focus{top:0}.public-header{border-bottom:1px solid var(--line)}.header-inner{height:95px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;font-size:28px;font-weight:800;letter-spacing:-1.5px;white-space:nowrap}.brand-icon{display:grid;place-items:center;width:36px;height:40px;color:var(--green);font-size:25px;margin-right:10px}.brand-dot{color:var(--copper)}.public-nav{display:flex;align-items:center;gap:32px;font-size:12px;font-weight:600}.public-nav>a:not(.btn-primary):hover{color:var(--copper)}.public-nav .login-link{margin-left:35px}.btn-sm{font-size:12px!important;padding:12px 19px!important}.menu-toggle{display:none;background:transparent;padding:10px;font-size:20px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-top:62px;padding-bottom:65px;align-items:center}.hero-copy{padding:16px 0}.hero .eyebrow{display:flex;align-items:center;gap:10px;font-size:10px}.eyebrow-line{height:1px;width:22px;background:var(--copper)}.hero h1{font-family:Georgia,'Times New Roman',serif;font-size:67px;line-height:1.06;letter-spacing:-3.1px;margin:25px 0}.hero h1 em{font-weight:400;color:var(--copper)}.hero-description{max-width:400px;font-size:14px;color:#70786e}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:28px;font-size:12px}.hero-note{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);margin-top:20px}.hero-note i{color:#607c5a}.hero-visual{height:505px;position:relative;border-radius:130px 12px 12px 12px;background:#dbdec3;isolation:isolate}.railway-art{width:100%;height:100%;object-fit:cover;border-radius:inherit}.image-topline{position:absolute;top:28px;left:40px;right:25px;display:flex;justify-content:space-between;align-items:center;color:#48614b;font-size:8px;font-weight:700;letter-spacing:1px}.image-topline>span{display:flex;align-items:center;gap:6px}.image-topline>i{font-size:25px}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#789065}.ticket-preview{position:absolute;bottom:42px;left:-25px;background:#fffdf6;width:302px;padding:20px 24px;border-radius:10px;box-shadow:0 12px 35px #253e3420;transform:rotate(-5deg)}.ticket-top{display:flex;justify-content:space-between;color:var(--copper);font-size:7px;letter-spacing:.6px;font-weight:700}.ticket-top span{display:flex;gap:7px;align-items:center}.ticket-top i{font-size:12px}.ticket-preview h3{font-family:Georgia,serif;font-size:23px;font-weight:400;margin-top:16px}.ticket-preview p{color:#838578;font-size:11px;margin-top:3px}.ticket-bottom{border-top:1px dashed #d7d6c8;margin:18px -24px -5px;padding:15px 24px 0;display:flex;justify-content:space-between;align-items:center;position:relative}.ticket-bottom:before,.ticket-bottom:after{content:'';position:absolute;top:-7px;width:14px;height:14px;background:#c9cdb1;border-radius:50%}.ticket-bottom:before{left:-7px}.ticket-bottom:after{right:-7px}.ticket-bottom small{display:block;color:#959586;font-size:7px;letter-spacing:1px}.ticket-bottom strong{display:block;font-size:10px;margin-top:4px}.ticket-bottom i{font-size:30px}.visual-caption{position:absolute;bottom:15px;left:23px;right:20px;display:flex;justify-content:space-between;font-size:8px;color:#fff6de;letter-spacing:.4px}.trust-strip{border-block:1px solid var(--line);background:#f2f2e9;padding:24px 0}.trust-strip .site-container{display:flex;gap:35px;align-items:center;justify-content:space-between}.trust-strip p{font-size:10px;color:#7d8276;max-width:140px;line-height:1.5}.trust-strip .site-container>div{display:flex;justify-content:space-between;gap:40px;flex:1}.trust-strip span{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;color:#616d5e}.trust-strip i{font-size:18px;color:#849078}.section-space{padding-top:70px;padding-bottom:74px}.section-intro{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:30px}.section-intro h2{margin-top:12px;font-family:Georgia,serif;font-size:35px}.section-intro>p{font-size:12px;color:var(--muted);max-width:340px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-card{border:1px solid var(--line);border-radius:10px;padding:27px;background:#fdfbf6}.feature-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:27px}.feature-top>span:last-child{font-size:10px;color:#a6aa9c}.feature-icon{background:#eeeee0;color:#536947;height:42px;width:42px;display:grid;place-items:center;border-radius:10px;font-size:18px}.feature-card:nth-child(2) .feature-icon{background:#f4e9dd;color:#ae7352}.feature-card:nth-child(3) .feature-icon{background:#e7eeeb;color:#587a6b}.feature-card h3{font-size:16px}.feature-card p{font-size:12px;color:var(--muted);margin-top:10px}.steps-section{background:#eaeede;border-block:1px solid #e0e5d5;padding:58px 0}.steps-inner{display:grid;grid-template-columns:1fr 1fr;gap:70px}.steps-inner h2{font-family:Georgia,serif;font-size:40px;white-space:pre-line;margin:17px 0 25px}.steps-inner .text-link{font-size:12px}.steps-list article{display:flex;align-items:start;gap:20px;padding:17px 0;border-bottom:1px solid #d8dfce}.steps-list article:first-child{padding-top:0}.steps-list article:last-child{border-bottom:0}.step-number{font:24px Georgia,serif;color:#8a9878}.steps-list h3{font-size:14px}.steps-list p{font-size:12px;color:#74816d;margin-top:4px}.holder-section{display:flex;align-items:center;gap:25px;padding-top:55px;padding-bottom:55px}.holder-icon{font-size:26px;color:#a58061;background:#f2ebdf;padding:20px;border-radius:50%;transform:rotate(-15deg)}.holder-section h2{font-family:Georgia,serif;font-size:25px;margin:8px 0}.holder-section p{font-size:12px;color:var(--muted);max-width:640px}.holder-section>.badge{margin-left:auto;white-space:nowrap}.public-footer{border-top:1px solid var(--line)}.footer-inner{padding-top:30px;padding-bottom:30px;display:flex;justify-content:space-between;align-items:center}.footer-brand{font-size:22px}.footer-inner p{font-size:10px;color:var(--muted);margin-top:8px}.footer-links{display:flex;gap:24px;font-size:10px;color:#777e72}.flash{margin:20px auto;padding:15px 20px;max-width:900px;border:1px solid #c7d9c4;background:#edf5e9;border-radius:8px;display:flex;gap:12px;font-size:13px}.flash-alert{border-color:#e2b7a0;background:#fff0e4;color:#864429}.auth-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-top:65px;padding-bottom:65px;max-width:1080px!important;align-items:center}.auth-story h1{font-family:Georgia,serif;white-space:pre-line;font-size:45px;margin:20px 0}.auth-story p{font-size:14px;color:var(--muted)}.auth-art{height:210px;width:100%;object-fit:cover;border-radius:65px 8px 8px 8px;margin-top:28px;object-position:50% 56%}.auth-card{background:#fffdf8;border:1px solid var(--line);padding:36px;border-radius:16px;box-shadow:0 12px 35px #253e3405}.auth-card h2{font-size:26px;line-height:1.3;margin:18px 0 12px}.auth-card p{font-size:13px;color:var(--muted)}.form-icon{display:inline-grid;place-items:center;width:48px;height:48px;background:#eaf0e4;border-radius:12px;color:var(--green);font-size:22px}.form-field{margin:20px 0}.form-field label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.form-field abbr{color:var(--copper);text-decoration:none}.form-input{display:block;width:100%;border:1px solid #d6dccf;background:white;border-radius:7px;padding:12px;color:var(--ink);font-size:14px}.form-input:focus{outline:2px solid #99ad86;outline-offset:1px}.form-input::placeholder{color:#a2a799}.form-hint{display:block;font-size:11px;color:var(--muted);line-height:1.6;margin-top:8px}.field-error .form-input{border-color:#b45e3a}.form-error,.form-errors{display:block;color:#a94c2d;font-size:12px;margin-top:6px}.auth-card input[type=submit],.auth-card .btn-primary{width:100%;font-size:12px;border:0}.auth-card .fine-print{font-size:10px;margin-top:17px;line-height:1.7}.fine-print i{margin-right:6px}.fine-print a{text-decoration:underline}.auth-divider{height:1px;background:var(--line);margin:25px 0 18px}.holder-hint{display:flex;gap:10px;background:#f4f2e9;padding:14px;border-radius:7px;margin-top:20px;font-size:10px;line-height:1.6;color:#81816f}.standalone{max-width:480px;margin:70px auto 100px;text-align:center}.standalone h1{font-family:Georgia,serif;font-size:35px;margin:20px 0 16px}.standalone .eyebrow{margin-top:20px}.standalone .text-link{font-size:12px;margin-top:24px}.standalone form{margin-top:24px}.info-box{display:flex;gap:12px;align-items:start;background:#f2f2e7;color:#697158;border-radius:8px;font-size:12px;line-height:1.7;padding:16px;margin:20px 0}.info-box i{margin-top:4px}.onboarding-card{max-width:650px;margin:55px auto 70px;background:white;padding:35px;border:1px solid var(--line);border-radius:14px}.onboarding-card h1{font-family:Georgia,serif;margin:14px 0;font-size:35px}.page-description{font-size:13px;color:var(--muted);margin-bottom:30px}.form-divider{height:1px;background:var(--line);margin:25px 0}.form-panel{max-width:740px}.form-panel h3{margin-bottom:10px}.form-actions input{border:0;font-size:13px}.legal-page{max-width:850px!important;padding-top:60px;padding-bottom:70px}.legal-page h1{font-family:Georgia,serif;margin:15px 0 30px}.legal-page section{margin-top:30px}.legal-page h2{font-size:23px;margin-bottom:10px}.legal-page p{font-size:14px;color:#6a7567}.workspace-shell{display:flex;min-height:100vh;background:#f6f7f1}.sidebar{width:262px;position:fixed;inset:0 auto 0 0;background:#fffef9;border-right:1px solid var(--line);padding:28px 20px;display:flex;flex-direction:column;z-index:20}.sidebar>.brand{padding:0 8px;font-size:26px}.provider-switch{margin-top:35px;border:1px solid var(--line);border-radius:10px;background:#f8f8f0;font-size:12px}.provider-switch summary{display:flex;gap:10px;align-items:center;cursor:pointer;padding:12px;list-style:none}.provider-switch summary::-webkit-details-marker{display:none}.provider-switch summary>span:nth-child(2){min-width:0;flex:1}.provider-switch small{display:block;color:#89907e;font-size:9px;margin-bottom:4px}.provider-switch strong{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:11px}.provider-switch summary>i{font-size:9px;color:#8d967f}.provider-avatar{padding:10px;background:#e8edde;border-radius:7px;color:#617552}.provider-options{padding:5px}.provider-option{display:block;width:100%;text-align:left;padding:10px;background:transparent;font-size:11px;border-radius:5px;overflow-wrap:anywhere}.provider-option:hover,.provider-option.selected{background:#e8edde}.nav-caption{font-size:9px;text-transform:uppercase;letter-spacing:1.6px;color:#939b88;margin:30px 14px 12px}.nav-link{display:flex;gap:13px;align-items:center;padding:13px 15px;border-radius:7px;font-size:12px;color:#7a8471;margin-bottom:5px}.nav-link i{width:16px;text-align:center}.nav-link:hover{background:#f1f3e9}.nav-link.active{background:#e8efdf;color:#34572d;font-weight:600}.subnav{margin-left:20px;border-left:1px solid var(--line);padding-left:7px}.subnav .nav-link{font-size:10px;padding:9px}.sidebar-bottom{margin-top:auto;padding-top:20px;display:flex;align-items:center;gap:10px;font-size:11px}.user-avatar{border-radius:50%;background:#efe4d2;color:#a57e55;display:grid;place-items:center;width:34px;height:34px;font-weight:700;font-size:10px;flex-shrink:0}.sidebar-bottom>div{min-width:0}.sidebar-bottom strong{display:block;overflow-wrap:anywhere}.sidebar-bottom small{display:block;color:#919782;font-size:9px;margin-top:4px}.sidebar-bottom form{margin-left:auto}.logout-button{background:transparent;color:#87917c;padding:8px}.workspace-body{margin-left:262px;width:calc(100% - 262px);min-height:100vh;display:flex;flex-direction:column}.workspace-header{height:73px;border-bottom:1px solid var(--line);padding:0 40px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#8a927f;background:#fffef9}.workspace-header-note{display:flex;align-items:center;gap:7px;max-width:50%;overflow-wrap:anywhere}.workspace-main{padding:40px;max-width:1300px;width:100%;margin:0 auto;flex:1}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}.page-heading h1{font-size:31px;margin:10px 0}.page-heading p{color:#8a927f;font-size:12px;max-width:600px}.page-heading .btn-primary{font-size:11px;flex-shrink:0}.date-label{font-size:10px;color:#919981;white-space:nowrap}.welcome-banner{padding:30px 35px;background:#284b3c;border-radius:12px;color:#fcfaf0;display:flex;align-items:center;justify-content:space-between;overflow:hidden;gap:25px}.welcome-banner h2{font-family:Georgia,serif;font-size:29px;max-width:430px;margin:16px 0 12px}.welcome-banner p{font-size:11px;color:#c0ceb6;max-width:400px}.welcome-banner .btn-cream{font-size:11px;margin-top:20px}.badge.light{background:#ffffff12;color:#cedabb;font-size:8px;letter-spacing:1px}.banner-train{font-size:125px;color:#a9bd8245;margin-right:22px;transform:rotate(-8deg)}.dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0}.stat-card{border:1px solid var(--line);border-radius:10px;background:#fffef9;padding:22px}.stat-card>span{display:flex;align-items:center;justify-content:space-between;color:#869077;font-size:11px}.stat-card i{color:#a1ad91}.stat-card strong{display:block;font-size:29px;font-weight:500;margin-top:15px}.stat-card small{font-size:9px;color:#9ca38e}.dashboard-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:20px}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:15px}.panel-heading h3{font-size:14px}.panel-heading>i{font-size:13px;color:#a4af93}.checklist-item{display:flex;align-items:center;gap:13px;border-top:1px solid #eef0e6;padding:20px 0}.checklist-item:last-child{padding-bottom:0}.checklist-item strong{font-size:11px}.checklist-item p{font-size:10px;color:#9aA08e;margin-top:3px}.check-circle,.step-circle{display:grid;place-items:center;flex-shrink:0;border-radius:50%;width:27px;height:27px;font-size:10px;background:#e8efdf;color:#71905a}.step-circle{background:#f3f4ec;color:#a0a98f}.checklist-item>.badge{margin-left:auto;font-size:8px;white-space:nowrap}.actionable>i{margin-left:auto;font-size:10px}.provider-summary h3{margin:18px 0 9px}.provider-summary p{font-size:11px;color:#8c957f}.provider-summary>.badge{margin-top:20px;font-size:9px}.settings-tabs{display:flex;border-bottom:1px solid var(--line);gap:25px;margin-bottom:25px;font-size:12px;color:#839077}.settings-tabs a{padding:0 0 13px}.settings-tabs a.active{color:var(--green);border-bottom:2px solid var(--green);font-weight:600}.provider-logo{max-width:160px;max-height:100px;object-fit:contain;display:block;margin:20px 0}.text-danger{background:none;color:#a94c2d;font-size:12px;margin-top:22px;padding:0;text-decoration:underline}.users-panel{padding:0!important;overflow:hidden}.users-panel .panel-heading{padding:24px;margin:0}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px;white-space:nowrap}th{background:#f6f7f0;color:#98a087;font-weight:500;font-size:10px;padding:14px 24px}td{padding:20px 24px;border-top:1px solid #edf0e4}td small{display:inline-block;margin-left:8px;font-size:9px;color:#9aA38b}td .badge{font-size:10px}.empty-state{text-align:center;padding:65px 25px!important}.empty-state .form-icon{display:grid;margin:0 auto 20px}.empty-state h2{font-family:Georgia,serif;margin:22px 0 15px;font-size:30px}.empty-state p{max-width:470px;margin:0 auto;color:#869179;font-size:13px}.empty-state .btn-primary{margin-top:25px;font-size:12px}.workspace-footer{padding:20px 40px;border-top:1px solid var(--line);display:flex;gap:20px;font-size:10px;color:#949c85}.workspace-body>.flash{margin:20px 40px 0}
@media(min-width:1440px){.hero{gap:65px}.hero-visual{height:540px}}
@media(max-width:1100px){.hero h1{font-size:55px}.hero{gap:35px}.hero-actions{gap:15px;flex-wrap:wrap}.trust-strip .site-container>div{gap:20px}.trust-strip span{font-size:10px}.public-nav{gap:20px}.public-nav .login-link{margin-left:10px}.workspace-main{padding:28px}.workspace-header{padding:0 28px}.sidebar{width:235px;padding:25px 15px}.workspace-body{margin-left:235px;width:calc(100% - 235px)}.dashboard-grid{grid-template-columns:1fr}.banner-train{font-size:80px;margin:0}.auth-layout{gap:40px}}
@media(max-width:760px){.header-inner{height:75px}.brand{font-size:25px}.menu-toggle{display:block}.public-nav{display:none;position:absolute;top:75px;left:0;right:0;background:#fffdf7;z-index:50;padding:25px;border-bottom:1px solid var(--line)}.public-nav.is-open{display:flex;align-items:stretch;flex-direction:column}.public-nav .login-link{margin:0}.hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:35px;gap:30px}.hero-copy{padding:0}.hero h1{font-size:54px;letter-spacing:-2px}.hero-description{max-width:100%}.hero-visual{height:440px;margin-left:15px}.hero-actions{font-size:12px}.ticket-preview{width:270px;bottom:42px;left:-15px}.trust-strip .site-container{display:block}.trust-strip p{max-width:none;margin-bottom:20px}.trust-strip .site-container>div{display:grid;grid-template-columns:1fr 1fr;gap:24px}.section-space{padding-top:45px;padding-bottom:45px}.section-intro{display:block}.section-intro h2{font-size:31px}.section-intro>p{margin-top:15px}.feature-grid{grid-template-columns:1fr}.feature-card{padding:25px}.feature-top{margin-bottom:18px}.steps-inner{grid-template-columns:1fr;gap:35px}.steps-section{padding:40px 0}.steps-inner h2{font-size:34px}.holder-section{flex-wrap:wrap;gap:15px;padding-top:35px;padding-bottom:35px}.holder-icon{display:none}.holder-section>.badge{margin:0}.holder-section h2{font-size:24px}.footer-inner{display:block}.footer-links{flex-wrap:wrap;gap:15px;margin-top:25px}.auth-layout{grid-template-columns:1fr;padding-top:35px;gap:25px}.auth-story h1{font-size:37px}.auth-art{display:none}.auth-story p{font-size:12px}.auth-card{padding:25px}.standalone{margin:40px 20px 60px}.onboarding-card{margin:25px 15px;padding:25px}.onboarding-card h1{font-size:30px}.sidebar{display:none;top:65px;width:270px;box-shadow:8px 0 24px #203e3415}.sidebar.is-open{display:flex}.workspace-body{margin-left:0;width:100%}.workspace-header{height:65px;padding:0 15px;gap:12px;justify-content:flex-start}.workspace-header-note{margin-left:auto;font-size:9px}.workspace-main{padding:25px 18px}.page-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.page-heading h1{font-size:28px}.date-label{display:none}.welcome-banner{padding:25px}.welcome-banner h2{font-size:26px}.banner-train{display:none}.dashboard-stats{gap:9px}.stat-card{padding:14px 12px}.stat-card>span{font-size:9px}.stat-card i{display:none}.stat-card strong{font-size:25px}.stat-card small{font-size:8px}.dashboard-grid{gap:15px}.panel{padding:22px!important}.checklist-item{gap:10px}.checklist-item>.badge{display:none}.users-panel{padding:0!important}.users-panel .panel-heading{flex-wrap:wrap}.workspace-footer{padding:20px}.workspace-body>.flash{margin:15px}.form-panel .form-grid{gap:0}.legal-page h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.form-label{display:block;font-size:12px;font-weight:600;margin-bottom:8px}.station-map{height:390px;margin-top:12px;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#eef0e7}.station-map-status{min-height:20px;margin-top:8px;font-size:11px;color:var(--muted);line-height:1.6}.station-map-status-error{color:#a94c2d}.station-map-marker{background:none;border:0;color:var(--copper);font-size:36px;filter:drop-shadow(0 2px 2px #273d3460)}@media(max-width:760px){.station-map{height:320px}}
.wizard-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-bottom:25px}.wizard-tab{display:flex;align-items:center;gap:8px;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fffef9;color:var(--muted);font-size:10px}.wizard-tab>span{display:grid;place-items:center;width:23px;height:23px;flex-shrink:0;border-radius:50%;background:#eef0e7}.wizard-tab.active{border-color:#7d9672;color:var(--green);font-weight:700;background:#eef3e8}.wizard-tab.active>span{background:var(--green);color:white}.wizard-panel{max-width:900px}.wizard-panel .panel-heading p{font-size:11px;color:var(--muted);margin-top:5px}.station-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line)}.station-row .form-field{flex:1}.station-handle{color:#a0a795}.station-row-actions{display:flex;flex-shrink:0;align-items:center;gap:4px}.station-row-actions button{display:grid;place-items:center;width:32px;height:32px;border-radius:6px;background:#f0f2e9;color:#66745f}.station-row-actions button:last-child{color:#a94c2d}.station-add{margin-top:20px;background:none}.schedule-stop{border-top:1px solid var(--line);padding:22px 0}.schedule-stop:first-child{border-top:0}.schedule-stop-heading{display:flex;align-items:center;gap:11px}.schedule-stop-heading>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e8efdf;color:#527047;font-size:10px}.schedule-stop-heading strong,.schedule-stop-heading small{display:block}.schedule-stop-heading small{font-size:9px;color:var(--muted);margin-top:3px}.schedule-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.schedule-options{display:flex;flex-wrap:wrap;gap:20px;font-size:11px}.schedule-options label,.unavailable-choice{display:flex;align-items:center;gap:8px}.inventory-row{display:grid;grid-template-columns:1fr 180px 180px;gap:20px;align-items:center;border-top:1px solid var(--line);padding:10px 0}.inventory-row:first-child{border-top:0}.inventory-row>div:first-child strong,.inventory-row>div:first-child small{display:block}.inventory-row>div:first-child small{color:var(--muted);font-size:10px;margin-top:4px}.fare-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.fare-class{border:1px solid var(--line);padding:20px;border-radius:9px}.fare-class h3{margin-bottom:14px}.money-input{position:relative}.money-input .form-input{padding-right:42px}.money-input span{position:absolute;right:15px;top:13px;color:var(--muted)}.trip-dashboard-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:20px}.trip-dashboard-grid>div{display:grid;gap:20px}.route-timeline li{position:relative;display:flex;align-items:center;gap:13px;padding:14px 0;border-bottom:1px solid #eef0e6}.route-timeline li:last-child{border-bottom:0}.route-timeline li>span{width:11px;height:11px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #e8efdf}.route-timeline strong,.route-timeline small{display:block}.route-timeline small{font-size:10px;color:var(--muted);margin-top:4px}.route-timeline em{margin-left:auto;font-style:normal;font-size:9px;color:var(--muted)}.trip-summary>div:not(.panel-heading){display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:13px 0;font-size:11px}.price-panel{margin-bottom:20px}.trip-status-cancelled{background:#f6e4dc;color:#94472f}.trip-status-bookable{background:#e4efde;color:#446b38}.form-errors.panel{max-width:900px;margin-bottom:20px;padding:15px!important}
.schedule-fields{grid-template-columns:1fr;gap:0}.schedule-fields .form-field>select{display:inline-block;width:auto;min-width:70px;margin:0 5px 7px 0;padding-inline:8px}.schedule-fields .form-field>select:nth-of-type(2){min-width:105px}.schedule-fields .form-field>select:nth-of-type(3){min-width:88px}.schedule-fields .form-field>select:nth-of-type(4){margin-left:8px}
@media(max-width:900px){.wizard-tabs{grid-template-columns:1fr 1fr}.trip-dashboard-grid{grid-template-columns:1fr}.inventory-row{grid-template-columns:1fr 1fr}.inventory-row>div:first-child{grid-column:1/-1}.fare-grid{grid-template-columns:1fr}}
@media(max-width:560px){.wizard-tabs{grid-template-columns:1fr}.station-row{align-items:flex-end;flex-wrap:wrap;padding-bottom:15px}.station-handle{display:none}.station-row-actions{width:100%;justify-content:flex-end}.schedule-fields{grid-template-columns:1fr;gap:0}.inventory-row{grid-template-columns:1fr}.inventory-row>div:first-child{grid-column:auto}}
.booking-heading h1{font-family:Georgia,serif;font-size:42px;margin:10px 0}.booking-heading p{color:var(--muted);font-size:13px}.public-trip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.public-trip-card{display:flex;flex-direction:column;gap:20px;transition:transform .18s,border-color .18s}.public-trip-card:hover{transform:translateY(-2px);border-color:#9cac91}.public-trip-card h2{font-family:Georgia,serif;font-size:25px;margin-top:15px}.public-trip-card ol{display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:11px}.public-trip-card li:not(:last-child)::after{content:"→";margin-left:8px}.public-trip-card .text-link{margin-top:auto}.public-route{margin-bottom:20px}.public-route h2,.public-booking-form h2,.booking-summary h2,.customer-summary h2{font-family:Georgia,serif;font-size:22px}.public-route>p{margin-top:7px;color:var(--muted);font-size:11px}.public-route-scroll{margin-top:22px}.public-route-timeline{display:grid;gap:14px;margin:0;padding:0;list-style:none}.public-route-timeline li{position:relative;display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;gap:14px}.public-route-timeline li:not(:last-child)::after{content:"";position:absolute;z-index:0;top:50%;left:7px;width:2px;height:calc(100% + 14px);background:#c8d3bd;transition:background .18s}.public-route-point{position:relative;z-index:1;display:block;width:14px;height:14px;border:3px solid white;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px #dfe8d7;transition:background .18s,box-shadow .18s}.public-route-bubble{position:relative;z-index:1;padding:13px 15px;border:1px solid #e0e4d9;border-radius:10px;background:#f8f8f1;color:var(--ink);box-shadow:0 4px 14px #273d3408;text-align:left;transition:background .18s,border-color .18s,color .18s,opacity .18s,transform .18s}.public-route-bubble strong,.public-route-bubble small{display:block}.public-route-bubble strong{font-size:12px}.public-route-bubble small{margin-top:5px;color:var(--muted);font-size:10px}.public-route-departure span,.public-route-departure strong{display:block}.public-route-departure strong{margin-top:2px;font-size:11px;font-weight:700}.public-route-timeline .is-selectable .public-route-bubble{cursor:pointer}.public-route-timeline .is-selectable .public-route-bubble:hover{border-color:#8ca180;transform:translateY(-2px)}.public-route-timeline .is-unavailable .public-route-bubble{cursor:not-allowed;opacity:.42;box-shadow:none}.public-route-timeline .is-unavailable .public-route-point{background:#aeb4a7;box-shadow:0 0 0 3px #eceee8}.public-route-timeline .is-unavailable::after{background:#dde0d7!important}.public-route-timeline .is-origin .public-route-bubble{border-color:var(--green);background:var(--green);color:white;box-shadow:0 7px 18px #234b3e28}.public-route-timeline .is-origin .public-route-bubble small{color:#d9e5dc}.public-route-timeline .is-origin .public-route-point{background:var(--green);box-shadow:0 0 0 4px #bbccb3}.public-route-timeline .is-destination .public-route-bubble{border-color:var(--copper);background:var(--copper);color:white;box-shadow:0 7px 18px #a85c3c28}.public-route-timeline .is-destination .public-route-bubble small{color:#f5ded4}.public-route-timeline .is-destination .public-route-point{background:var(--copper);box-shadow:0 0 0 4px #e5c5b7}.public-booking-form .panel-heading p{color:var(--muted);font-size:11px;margin-top:6px}.ticket-selection{margin-top:25px;scroll-margin-top:24px}.ticket-selection h3{font-size:15px}.ticket-price-row small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.ticket-price-row>span{font-weight:700}.ticket-price-row input{width:70px;padding:10px;border:1px solid var(--line);border-radius:7px}.ticket-selection .btn-primary{margin-top:22px}.form-error{display:block;color:#a94c2d;font-size:11px;margin-top:10px}.booking-unavailable{display:flex;align-items:flex-start;gap:18px}.booking-unavailable>i{color:var(--copper);font-size:22px}.booking-unavailable h2{font-family:Georgia,serif;font-size:23px}.booking-unavailable p{color:var(--muted);font-size:12px;margin-top:7px}.booking-summary dl>div{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid var(--line);font-size:11px}.booking-summary dd{text-align:right;font-weight:600}.booking-items{margin-top:16px;border-top:2px solid var(--green)}.booking-items>div{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}.booking-items .booking-item-price{justify-content:flex-end;margin-top:-12px;color:var(--muted);font-size:9px}.booking-items .booking-total{font-size:14px;border-bottom:0}.customer-summary address{font-style:normal;line-height:1.8;font-size:13px}.customer-summary>p{margin:15px 0;font-size:12px}.customer-summary form{margin-top:25px}.customer-summary .fine-print{color:var(--muted);font-size:10px;line-height:1.6}.booking-complete{text-align:center;max-width:780px;margin:0 auto}.booking-complete>.form-icon{display:grid;margin:0 auto 18px}.booking-complete h1{font-family:Georgia,serif;font-size:36px;margin:12px}.booking-complete>p{color:var(--muted);font-size:12px}.booking-complete .booking-summary{text-align:left;margin-top:28px;background:#fafaf5}.booking-reference{overflow-wrap:anywhere;margin-top:20px!important}.embed-instructions{display:grid;grid-template-columns:1fr 1fr;gap:20px}.embed-instructions .panel-heading p{color:var(--muted);font-size:10px;margin-top:5px}.embed-instructions h4{font-size:11px;margin-top:22px}.copy-row input,.copy-row textarea{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;background:#fafaf5;padding:12px;color:#4f5b4d;font:11px/1.5 ui-monospace,monospace;resize:vertical}.copy-row .btn-cream{background:#e8efdf;font-size:10px}.payment-status-paid{background:#e4efde;color:#446b38}.payment-status-cancelled,.payment-status-refunded{background:#f6e4dc;color:#94472f}.payment-status-partially_paid{background:#f5edcf;color:#80651f}.embed body,.embed-page{background:#fff}.embed-instructions+*{margin-top:20px}
@media(min-width:900px){.public-route-scroll{overflow-x:auto;padding:4px 3px 12px}.public-route-timeline{display:flex;width:max-content;min-width:100%;align-items:stretch;justify-content:safe center;gap:0;padding-inline:5px}.public-route-timeline li{display:flex;width:120px;min-width:120px;max-width:120px;flex:0 0 120px;flex-direction:column-reverse;align-items:center;gap:14px}.public-route-timeline li:not(:last-child)::after{top:auto;bottom:6px;left:50%;width:100%;height:2px;transform:none}.public-route-point{flex-shrink:0}.public-route-bubble{width:118px;min-height:74px;padding:11px 9px;text-align:center}}
.embed-visibility-warning{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px;border-color:#d7a441;background:#fff8df;color:#684d10}.embed-visibility-warning>i{margin-top:2px;color:#a87308}.embed-visibility-warning strong{display:block;font-size:12px}.embed-visibility-warning p{margin-top:4px;font-size:11px;line-height:1.6}
@media(max-width:760px){.booking-heading h1{font-size:32px}.public-trip-grid,.embed-instructions{grid-template-columns:1fr}.ticket-price-row{grid-template-columns:minmax(0,1fr) auto}.ticket-price-row input{grid-column:1/-1;width:100%}.booking-page{padding-left:18px;padding-right:18px}}
.brand{font-size:0;letter-spacing:normal}.brand-logo-frame{display:block;position:relative;width:190px;height:46px;overflow:hidden}.brand-logo-image{display:block;position:absolute;top:50%;left:0;width:100%;height:auto;transform:translateY(-50%)}.sidebar>.brand{padding:0 8px}.sidebar>.brand .brand-logo-frame{width:190px;height:46px}.footer-brand .brand-logo-frame{width:158px;height:38px}.embed-brand{display:flex;align-items:center;min-height:58px;padding:6px 24px;border-bottom:1px solid var(--line);background:#fffef9}.embed-brand-logo .brand-logo-frame{width:145px;height:35px}
@media(max-width:760px){.brand-logo-frame{width:158px;height:38px}.sidebar>.brand .brand-logo-frame{width:180px;height:44px}.embed-brand{min-height:52px;padding-inline:18px}.embed-brand-logo .brand-logo-frame{width:132px;height:32px}}

/* The wagon editor deliberately keeps a desktop work surface, as its scale is part of the editing model. */
.wagon-catalog h3{margin-bottom:10px;font-size:10px;color:#687563}.wagon-body{position:relative;isolation:isolate;box-sizing:content-box;width:calc(100% - 10px);aspect-ratio:var(--wagon-ratio,25.9/2.83);border:5px solid #586057;border-radius:25px;background-color:#fff;background-image:linear-gradient(#dce4d955 1px,transparent 1px),linear-gradient(90deg,#dce4d955 1px,transparent 1px);background-size:2% 20%;box-shadow:inset 18px 0 #e4e7e0,inset -18px 0 #e4e7e0,0 7px 16px #283b3015;overflow:hidden;touch-action:none}.wagon-body:before,.wagon-body:after{content:"";position:absolute;z-index:5;top:28%;width:8px;height:44%;background:#4f554e}.wagon-body:before{left:0}.wagon-body:after{right:0}.wagon-body:focus-visible{outline:3px solid #a85c3c;outline-offset:5px}.wagon-item{position:absolute;z-index:2;display:flex;transform:rotate(var(--item-rotation,0deg));align-items:center;justify-content:center;gap:2px;border:1px solid #aab4a5;border-radius:3px;color:#3f5545;font-size:clamp(5px,.65vw,9px);line-height:1;cursor:grab;user-select:none;overflow:hidden}.wagon-item-content{display:flex;max-width:100%;align-items:center;justify-content:center;gap:2px;transform:rotate(var(--item-counter-rotation,0deg));white-space:nowrap}.wagon-item i{font-size:clamp(6px,.85vw,12px)}.wagon-item-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wagon-item-object{z-index:3;background:#e7eef5;border-color:#7190a8;color:#315f87}.wagon-item-table{background:#eee1c8;border-color:#aa8b5c;color:#75592f}.wagon-item-partition{background:#737c78;border-color:#4d5753;color:#fff}.wagon-item-area{background:#dfeee0cc;border-color:#88a88b;color:#426c49}.wagon-item-wc{background:#e2ebf7cc;border-color:#839ab8;color:#405d80}.wagon-item-luggage_storage{background:#f5e6e5cc;border-color:#bd9895;color:#845653}.wagon-item-multipurpose_area{background:#eee8f5cc;border-color:#a396ba;color:#665780}.wagon-item.selected{z-index:7;outline:2px solid #2368c4;outline-offset:2px;box-shadow:0 0 0 4px #fff9}.wagon-body[data-active-layer="object"] .wagon-item-area{opacity:.55;pointer-events:none}.wagon-body[data-active-layer="area"] .wagon-item-object{opacity:.18;pointer-events:none}.wagon-item:active{cursor:grabbing}.wagon-resize-handle{position:absolute;z-index:9;width:8px;height:8px;border:1px solid #fff;border-radius:50%;background:#2368c4;box-shadow:0 0 0 1px #2368c4}.wagon-resize-n{top:1px;left:50%;transform:translateX(-50%);cursor:n-resize}.wagon-resize-ne{top:1px;right:1px;cursor:ne-resize}.wagon-resize-e{top:50%;right:1px;transform:translateY(-50%);cursor:e-resize}.wagon-resize-se{right:1px;bottom:1px;cursor:se-resize}.wagon-resize-s{bottom:1px;left:50%;transform:translateX(-50%);cursor:s-resize}.wagon-resize-sw{bottom:1px;left:1px;cursor:sw-resize}.wagon-resize-w{top:50%;left:1px;transform:translateY(-50%);cursor:w-resize}.wagon-resize-nw{top:1px;left:1px;cursor:nw-resize}
.wagon-item-seat{container-type:size;border-width:0 var(--seat-border-width,2px) var(--seat-border-width,2px);border-style:solid;border-color:#315f87;border-radius:0 0 4px 4px;background:#dbe8f4;font-weight:800}.wagon-item-seat .wagon-item-content{max-width:none}.wagon-item-seat .wagon-item-label{overflow:visible;text-overflow:clip;font-size:clamp(3px,min(calc(125cqw * var(--seat-number-scale,1)),70cqh),9px)}.wagon-seat-number-missing,.wagon-seat-number-duplicate{color:#c62828}.wagon-field-warning{display:flex;align-items:flex-start;gap:5px;margin-top:5px;color:#b42318;font-size:10px;font-weight:650;line-height:1.35}.wagon-field-warning[hidden]{display:none}.wagon-field-warning i{margin-top:1px}
.wagon-preview{width:var(--wagon-preview-width);max-width:100%}.wagon-preview .wagon-body{width:calc(100% - var(--wagon-preview-border-width) - var(--wagon-preview-border-width));border-width:var(--wagon-preview-border-width);border-radius:var(--wagon-preview-border-radius);background-image:none;box-shadow:inset 8px 0 #e4e7e0,inset -8px 0 #e4e7e0,0 3px 8px #283b3015;touch-action:auto}.wagon-preview .wagon-item{cursor:default}.wagon-preview .wagon-body:before,.wagon-preview .wagon-body:after{width:var(--wagon-preview-border-width)}.wagon-preview .wagon-item i{font-size:clamp(4px,.65vw,10px)}
.wagon-preview .wagon-seat-available{border-color:#3f743b;background:#a9d69d;color:#234b3e;cursor:pointer}.wagon-preview .wagon-seat-available:hover{z-index:8;background:#8fc680;box-shadow:0 0 0 3px #fff,0 0 0 5px #51814c}.wagon-preview .wagon-seat-same-booking{border-color:#b86420;background:#f2a65d;color:#673513}.wagon-preview .wagon-seat-current{border-color:#6744a0;background:#a987dc;color:#2f1b52;cursor:pointer}.wagon-preview .wagon-seat-current:hover{z-index:8;background:#9873d2;box-shadow:0 0 0 3px #fff,0 0 0 5px #6744a0}.wagon-preview .wagon-seat-unavailable{border-color:#aeb5aa;background:#dfe2dc;color:#838a80}.wagon-seat-button:focus-visible{outline:3px solid #a85c3c;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.wagon-preview .wagon-seat-occupancy{border-color:color-mix(in srgb,#a33f35 var(--seat-occupancy),#3f743b);background:color-mix(in srgb,#d66a5d var(--seat-occupancy),#a9d69d);color:#203d27;cursor:pointer}.wagon-preview .wagon-seat-occupancy:hover{z-index:8;filter:brightness(.94);box-shadow:0 0 0 3px #fff,0 0 0 5px color-mix(in srgb,#a33f35 var(--seat-occupancy),#3f743b)}.wagon-preview .wagon-seat-selected{z-index:9;box-shadow:0 0 0 3px #fff,0 0 0 6px #234b3e}.wagon-preview .wagon-seat-selected:hover{box-shadow:0 0 0 3px #fff,0 0 0 6px #234b3e}
.seat-train-wagon.active .wagon-body{border-color:#a85c3c;box-shadow:inset 8px 0 #e4e7e0,inset -8px 0 #e4e7e0,0 0 0 2px #f6ded3}.seat-train-coupler{position:relative;align-self:flex-end;width:18px;height:10px;flex:0 0 18px;transform:translateY(-10px)}.seat-train-coupler:before{content:"";position:absolute;left:0;right:0;top:4px;height:2px;background:#596159}.seat-train-coupler:after{content:"";position:absolute;left:50%;top:1px;width:6px;height:8px;transform:translateX(-50%);border:2px solid #596159;border-radius:2px;background:#f7f8f3}
