:root{--green:#006747;--green2:#00866a;--orange:#e49a3a;--ink:#273447;--muted:#7b8795;--line:#dfe5e8;--soft:#f5f8f7;--shadow:0 12px 38px rgba(32,66,62,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff}button,input,select{font:inherit}button{cursor:pointer}.demo-ribbon{min-height:33px;background:#5b3422;color:#fff;display:flex;justify-content:center;align-items:center;gap:18px;padding:7px 20px;font-size:11px}.demo-ribbon strong{background:#f3ad4f;color:#3b251a;border-radius:20px;padding:3px 9px;font-size:9px;letter-spacing:1px}.site-header{height:92px;background:#fff;border-bottom:1px solid #eef1f1;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,8vw,128px);position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;border:0;background:transparent;text-align:left;color:var(--orange)}.rail-seal{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#f6d881 25%,#c79335 27% 35%,#0b714f 37% 46%,#f0c56e 48%);border:2px solid #b88228;font-size:22px;box-shadow:inset 0 0 0 3px #fff7}.rail-seal.large{width:82px;height:82px;font-size:38px;margin:auto}.rail-seal.small{width:38px;height:38px;font-size:17px}.brand-copy{display:grid;line-height:1.05}.brand-copy strong{font-size:17px}.brand-copy b{font-size:16px}.brand-copy small{color:var(--green);font-size:8px;letter-spacing:1.5px;margin-top:4px}.site-header nav{display:flex;align-items:center;gap:27px}.site-header nav button,.site-footer button{border:0;background:transparent;color:#4c5561;font-size:13px;padding:10px 0}.site-header nav button:hover{color:var(--green)}.site-header nav .language{background:#f2f5f4;padding:9px 13px;border-radius:4px}.menu-toggle{display:none;border:0;background:transparent;font-size:24px}.page{display:none;min-height:580px}.page.active{display:block}.section-wrap{max-width:1160px;margin:auto}
.hero{min-height:440px;background:linear-gradient(115deg,#f3f8f6,#fff 60%);padding:54px clamp(24px,8vw,128px);display:grid;grid-template-columns:minmax(540px,1.1fr) minmax(360px,.9fr);align-items:center;gap:60px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:410px;height:410px;border-radius:50%;right:-140px;top:-130px;border:70px solid #e4f0eb}.search-card{background:#fff;box-shadow:var(--shadow);border-radius:8px;padding:28px;display:grid;grid-template-columns:1fr 34px 1fr;gap:20px;position:relative;z-index:2}.field{display:grid;gap:8px}.field label,.auth-form label,.registration-grid label,.train-picker label{font-size:11px;font-weight:700;color:#5c6876}.field input,.field select,.auth-form input,.registration-grid input,.registration-grid select,.train-picker input{width:100%;border:0;border-bottom:1px solid #b8c2c9;padding:9px 2px;color:var(--ink);background:transparent;outline:none}.field input:focus,.field select:focus,.auth-form input:focus,.registration-grid input:focus,.train-picker input:focus{border-color:var(--green)}.swap{align-self:end;height:34px;display:grid;place-items:center;color:var(--green);font-size:21px}.search-card .field:nth-of-type(3){grid-column:1/2}.search-card .field:nth-of-type(4){grid-column:3/4}.primary,.outline{border-radius:4px;padding:13px 22px;font-weight:800;font-size:12px;letter-spacing:.5px}.primary{background:var(--green);border:1px solid var(--green);color:#fff}.primary:hover{background:#004f37}.primary:disabled{background:#aebdb8;border-color:#aebdb8;cursor:not-allowed}.outline{background:#fff;border:1px solid var(--green);color:var(--green)}.search-btn{grid-column:1/4}.hero-copy{position:relative;z-index:2}.eyebrow{font-size:10px;color:var(--green);font-weight:900;letter-spacing:2px}.hero-copy h1{font-size:34px;line-height:1.3;font-weight:500;margin:15px 0 24px;color:#435162}.hero-copy h1 em{font-style:normal;color:var(--green);font-weight:800}.train-art{height:150px;position:relative;display:flex;align-items:end}.train-art span{font-size:96px;filter:saturate(.7);z-index:2}.train-art i{position:absolute;height:3px;background:#8ea89f;width:100%;bottom:10px}.steps{display:grid;grid-template-columns:repeat(3,1fr);padding:70px 20px}.steps article{position:relative;text-align:center;padding:20px 58px;border-right:1px solid var(--line)}.steps article:last-child{border:0}.steps article>span{position:absolute;right:35px;top:3px;font-size:43px;color:#eef1f0;font-weight:900}.step-icon{font-size:40px;color:var(--orange);height:60px}.steps h2{font-size:20px;margin:8px}.steps p{font-size:12px;line-height:1.65;color:var(--muted)}.instructions{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;padding:55px 30px 85px;align-items:center}.instruction-art{height:250px;border-radius:50% 50% 10px 10px;background:#f0f6f3;display:grid;place-items:center;font-size:90px;position:relative}.instruction-art span{position:absolute;font-size:45px;right:15%;bottom:18%}.instructions h2{font-size:25px}.instructions li{list-style:none;margin:14px 0;color:#66727f;font-size:12px;line-height:1.5}.instructions li:before{content:"→";color:var(--green);font-weight:900;margin-right:12px}
.auth-page{background:linear-gradient(135deg,#f2f7f5 0 50%,#fff 50%)}.auth-shell{min-height:650px;max-width:980px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:110px;padding:50px 25px}.auth-brand{text-align:center}.auth-brand h1{color:var(--orange);margin:18px 0 8px}.auth-brand p{color:var(--green)}.auth-brand b{display:inline-block;background:#fff0df;color:#7f4d16;padding:9px 12px;border-radius:4px;font-size:10px}.auth-form{background:#fff;box-shadow:var(--shadow);padding:40px;border-radius:7px}.auth-form h2{font-size:26px;margin:0 0 5px}.auth-form>p{color:var(--muted);font-size:12px;margin-bottom:28px}.auth-form label{display:block;margin:20px 0}.password-wrap{display:flex;align-items:center;border-bottom:1px solid #b8c2c9}.password-wrap input{border:0}.eye{border:0;background:none}.auth-links{display:flex;justify-content:space-between;margin:15px 0 25px}.auth-links button,.text-button{border:0;background:none;color:var(--green);font-size:11px}.wide{width:100%}.or{display:flex;align-items:center;gap:12px;margin:18px 0;color:#9aa5af;font-size:10px}.or:before,.or:after{content:"";height:1px;background:var(--line);flex:1}.form-page-card{max-width:920px;margin:55px auto 90px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:7px;padding:38px}.page-heading{display:flex;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:30px}.page-heading>span{width:50px;height:50px;display:grid;place-items:center;background:#fff2df;color:var(--orange);font-size:21px;font-weight:900;border-radius:50%}.page-heading h1{margin:0;font-size:25px}.page-heading p{margin:6px 0 0;color:var(--muted);font-size:12px}.registration-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 30px}.registration-grid label{display:grid;gap:5px}.form-actions{grid-column:1/3;display:flex;justify-content:flex-end;gap:12px;margin-top:10px}.warning-box{max-width:1120px;margin:35px auto 0;border-left:5px solid #d5932e;background:#fff7e7;padding:20px 25px;color:#694b25}.warning-box h2{font-size:15px;margin:0 0 8px}.warning-box p{font-size:11px;line-height:1.7;margin:0}.train-info-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;padding:65px 25px 100px;align-items:center}.train-picker h1{font-size:28px}.train-picker label{display:block;margin:30px 0 20px}.route-card{border:1px solid var(--line);border-radius:7px;padding:28px;box-shadow:var(--shadow);background:#fff}.route-title{display:flex;align-items:center;gap:15px}.route-title>span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-weight:900}.route-title h2{font-size:18px;margin:0}.route-title p{font-size:11px;color:var(--muted);margin:5px 0}.route-title b{margin-left:auto;font-size:10px;color:var(--green);background:#e7f4ef;padding:7px 9px}.timeline{margin:35px 20px;display:flex;justify-content:space-between;position:relative}.timeline i{position:absolute;height:2px;background:var(--orange);left:8px;right:8px;top:7px}.timeline div{display:grid;background:#fff;z-index:2}.timeline div:before{content:"";width:14px;height:14px;border:3px solid var(--orange);background:#fff;border-radius:50%;margin-bottom:8px}.timeline div:last-child{justify-items:end}.timeline strong{font-size:19px}.timeline span{font-size:11px;color:var(--muted)}.route-meta{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px;font-size:10px;color:var(--muted)}.contact-card{text-align:center}.contact-card .page-heading{text-align:left}.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:35px 0}.contact-grid article{padding:28px 15px;background:var(--soft);border-radius:5px}.contact-grid b,.contact-grid strong{display:block}.contact-grid b{font-size:10px;color:var(--muted)}.contact-grid strong{font-size:18px;color:var(--green);margin:10px}.contact-grid p{font-size:11px}
.booking-page{background:#f4f7f6}.booking-head{height:96px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;position:relative}.booking-head .back{position:absolute;left:5%;border:0;background:none;color:var(--green)}.booking-head div{text-align:center;display:grid;grid-template-columns:auto auto auto;gap:16px;align-items:center}.booking-head div span{font-size:20px;font-weight:800}.booking-head small{grid-column:1/4;color:var(--muted)}.results-wrap{max-width:1180px;margin:auto;padding:40px 20px 80px;display:grid;grid-template-columns:220px 1fr;gap:28px}.filter-card{background:#fff;padding:22px;border:1px solid var(--line);border-radius:5px;height:max-content}.filter-card h2{font-size:16px}.filter-card label{display:block;margin:14px 0;font-size:12px}.filter-card p{font-size:10px;color:var(--muted);line-height:1.5}.train-results>h1{font-size:22px}.train-results>h1 span{font-size:11px;color:var(--muted);font-weight:400}.train-row{background:#fff;border:1px solid var(--line);border-radius:5px;padding:20px;display:grid;grid-template-columns:52px 1fr 110px 130px;gap:18px;align-items:center;margin:12px 0}.train-number{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#fff2df;color:#b9741e;font-weight:900}.train-row h2{font-size:15px;margin:0 0 8px}.train-row p{font-size:11px;color:var(--muted);margin:0}.train-row p b{color:#aeb6bd;font-weight:400}.fare{display:grid}.fare small{color:var(--muted)}.fare strong{font-size:18px;margin:4px 0}.fare span{font-size:9px;color:var(--green)}.seat-layout{padding:35px 25px 80px;display:grid;grid-template-columns:1fr 270px;gap:25px}.coach-tabs{grid-column:1/3;background:#fff;border:1px solid var(--line);padding:12px;display:flex;gap:8px}.coach-tabs button{border:1px solid var(--line);background:#fff;padding:8px 18px}.coach-tabs button.active{background:var(--green);color:#fff}.coach-tabs span{margin-left:auto;font-size:9px;display:flex;gap:8px;align-items:center}.coach-tabs i{width:13px;height:13px;display:inline-block;border-radius:2px}.available{border:1px solid var(--green)}.selected{background:var(--orange)}.booked{background:#cad1d4}.coach{background:#fff;border:1px solid var(--line);border-radius:70px 70px 15px 15px;padding:25px;min-height:470px}.coach-front{text-align:center;font-size:9px;color:var(--muted);margin-bottom:20px}.seat-grid{display:grid;grid-template-columns:44px 44px 28px 44px 44px;justify-content:center;gap:13px}.seat{width:44px;height:44px;border:1px solid var(--green);border-radius:5px;background:#fff;color:var(--green);font-size:10px}.seat.booked{background:#d9dfe1;border-color:#d9dfe1;color:#89949a;cursor:not-allowed}.seat.selected{background:var(--orange);border-color:var(--orange);color:#fff}.seat-summary{background:#fff;border:1px solid var(--line);padding:24px;height:max-content}.seat-summary h2{font-size:17px}.seat-summary p{font-size:10px;color:var(--muted)}.seat-summary dl{border-top:1px solid var(--line);padding-top:15px;display:grid;grid-template-columns:1fr auto;font-size:11px}.seat-summary dd{margin:0;font-weight:800}.otp-card{width:min(430px,92%);margin:70px auto;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:42px;text-align:center;border-radius:7px}.phone-icon{width:70px;height:88px;border:6px solid #344150;background:#f3ad4f;display:grid;place-items:center;border-radius:12px;margin:auto;font-size:26px}.otp-card h1{font-size:22px;margin:22px 0 5px}.otp-card p{font-size:11px;color:var(--muted)}.otp-inputs{display:flex;justify-content:center;gap:10px;margin:26px 0}.otp-inputs input{width:52px;height:52px;border:0;border-bottom:2px solid var(--green);text-align:center;font-size:23px;outline:none}.otp-meta{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-bottom:22px}.otp-meta button{border:0;background:none;color:var(--green)}.otp-card .text-button{margin-top:15px}.checkout-shell{text-align:center;padding:70px 25px 100px}.success-mark{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-size:36px;margin:0 auto 22px}.checkout-shell h1{font-size:30px;margin:10px}.checkout-shell>p{color:var(--muted)}.ticket{max-width:760px;margin:35px auto;display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px dashed #b8c5c0;padding:25px;text-align:left;gap:25px}.ticket div{display:grid}.ticket small{font-size:9px;color:var(--muted)}.ticket strong{font-size:13px;margin-top:5px}.demo-status{color:#a65c19}.site-footer{border-top:2px solid var(--green);padding:28px clamp(24px,8vw,128px);display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:28px;font-size:10px;color:var(--muted)}.site-footer>div{display:flex;align-items:center;gap:10px;color:var(--orange)}.site-footer nav{display:flex;gap:12px}.site-footer button{font-size:10px}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#263b35;color:#fff;padding:12px 18px;border-radius:4px;font-size:11px;opacity:0;pointer-events:none;transition:.25s;z-index:50}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(max-width:900px){.site-header{height:auto;min-height:80px;padding:14px 22px;flex-wrap:wrap}.menu-toggle{display:block}.site-header nav{display:none;width:100%;flex-direction:column;gap:0;align-items:flex-start;padding:16px 0}.site-header nav.open{display:flex}.hero{grid-template-columns:1fr;padding:35px 20px}.hero-copy{display:none}.steps{padding:35px 15px}.steps article{padding:20px}.instructions,.train-info-shell,.auth-shell{grid-template-columns:1fr;gap:35px}.auth-brand{display:none}.auth-shell{max-width:560px}.registration-grid{grid-template-columns:1fr}.form-actions{grid-column:1}.results-wrap{grid-template-columns:1fr}.filter-card{display:none}.train-row{grid-template-columns:45px 1fr 90px}.train-row button{grid-column:2/4}.seat-layout{grid-template-columns:1fr}.coach-tabs{grid-column:1}.seat-summary{grid-row:3}.site-footer{grid-template-columns:1fr;text-align:center}.site-footer>div,.site-footer nav{justify-content:center}}
@media(max-width:600px){.demo-ribbon span{display:none}.site-header{position:relative}.brand-copy strong,.brand-copy b{font-size:14px}.rail-seal{width:42px;height:42px}.search-card{display:block}.search-card>*{margin-bottom:16px}.swap{display:none}.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px solid var(--line)}.instructions{padding:35px 20px}.instruction-art{height:180px}.form-page-card{margin:25px 12px;padding:22px}.contact-grid{grid-template-columns:1fr}.booking-head .back{position:static;margin-right:18px}.booking-head div span{font-size:14px}.train-row{grid-template-columns:45px 1fr}.fare{grid-column:2}.train-row button{grid-column:1/3}.coach{padding:18px 8px}.seat-grid{grid-template-columns:38px 38px 15px 38px 38px;gap:8px}.seat{width:38px;height:38px}.coach-tabs span{display:none}.ticket{grid-template-columns:1fr 1fr}.otp-card{padding:28px 18px}.otp-inputs input{width:45px}.site-footer nav{flex-wrap:wrap}}

/* Dark navy theme matched to the supplied booking-tools reference. */
:root{--green:#11c9b1;--green2:#0fa896;--orange:#ffd14a;--ink:#dce7f7;--muted:#93a4b9;--line:#20344e;--soft:#101e32;--shadow:0 12px 38px rgba(0,0,0,.38)}
body{background:#071321;color:var(--ink)}
.demo-ribbon{background:#020b15;border-bottom:1px solid #18304a;color:#91a7c0}.demo-ribbon strong{background:#ffd14a;color:#071321}
.site-header{background:#091525;border-color:#20344e;box-shadow:0 8px 22px rgba(0,0,0,.25)}
.brand{color:#11c9b1}.brand-copy small{color:#ffd14a}.site-header nav button,.site-footer button{color:#a9b8ca}.site-header nav button:hover{color:#11c9b1}.site-header nav .language{background:#15263c;color:#dce7f7}.menu-toggle{color:#dce7f7}
.rail-seal{background:radial-gradient(circle,#ffd14a 24%,#9e7621 26% 34%,#0aa58f 36% 45%,#102037 47%);border-color:#ffd14a;box-shadow:inset 0 0 0 3px #071321}
.hero{background:radial-gradient(circle at 86% 42%,rgba(17,201,177,.1) 0 20%,transparent 20.3%),linear-gradient(135deg,#071321,#0b1a2d 65%,#0b1728)}.hero:after{border-color:rgba(17,201,177,.07)}
.search-card,.auth-form,.form-page-card,.route-card,.filter-card,.train-row,.coach-tabs,.coach,.seat-summary,.otp-card,.ticket{background:linear-gradient(145deg,#111f34,#0d192b);border-color:#20344e;color:#dce7f7}
.field label,.auth-form label,.registration-grid label,.train-picker label{color:#93a4b9}.field input,.field select,.auth-form input,.registration-grid input,.registration-grid select,.train-picker input{color:#e8f2ff;background:#071321;border:1px solid #20344e;border-radius:5px;padding:11px 10px}.field input:focus,.field select:focus,.auth-form input:focus,.registration-grid input:focus,.train-picker input:focus{border-color:#11c9b1;box-shadow:0 0 0 2px rgba(17,201,177,.12)}
.password-wrap{border:0;background:#071321;border-radius:5px}.password-wrap input{background:transparent;border:0}.eye{color:#11c9b1}
.primary{background:linear-gradient(90deg,#ff4137,#ff5b3e);border-color:#ff4b3e;box-shadow:0 8px 18px rgba(255,65,55,.22)}.primary:hover{background:linear-gradient(90deg,#ff534a,#ff6a51)}.primary:disabled{background:#263a4f;border-color:#334b63;box-shadow:none}.outline{background:#101e32;border-color:#11c9b1;color:#11c9b1}
.hero-copy h1,.instructions h2,.auth-form h2,.page-heading h1,.train-picker h1,.route-title h2,.train-results>h1,.seat-summary h2,.otp-card h1,.checkout-shell h1{color:#dce7f7}.hero-copy h1 em,.eyebrow,.swap{color:#11c9b1}.train-art i{background:#11c9b1}.train-art span{filter:saturate(.85) brightness(.92)}
.steps article{border-color:#20344e}.steps article>span{color:#14243a}.step-icon{color:#ffd14a}.steps p,.instructions li{color:#93a4b9}.instructions li:before{color:#11c9b1}.instruction-art{background:#101e32;border:1px solid #20344e}
.auth-page{background:linear-gradient(135deg,#071321 0 50%,#0a1729 50%)}.auth-brand h1{color:#ffd14a}.auth-brand p{color:#11c9b1}.auth-brand b{background:#172941;color:#ffd14a}.auth-form>p,.page-heading p{color:#93a4b9}.auth-links button,.text-button{color:#11c9b1}.or:before,.or:after,.page-heading{border-color:#20344e}
.warning-box{background:#2a2418;border-color:#ffd14a;color:#f0d897}.route-title>span,.success-mark{background:#11c9b1;color:#05131e}.route-title b{background:#123b3b;color:#25dfc7}.timeline div{background:#101e32}.timeline i{background:#ffd14a}.timeline div:before{border-color:#ffd14a;background:#101e32}.route-meta{border-color:#20344e}.contact-grid article{background:#0c192b;border:1px solid #20344e}.contact-grid strong{color:#11c9b1}
.booking-page{background:#071321}.booking-head{background:#091525;border-color:#20344e}.booking-head .back{color:#11c9b1}.filter-card label,.train-row p,.booking-head small{color:#93a4b9}.train-number{background:#182a42;color:#ffd14a}.fare span{color:#11c9b1}
.coach-tabs button{background:#101e32;border-color:#20344e;color:#aebed0}.coach-tabs button.active{background:#11c9b1;color:#071321}.coach{background:linear-gradient(180deg,#101e32,#0b1728)}.available{border-color:#11c9b1}.selected{background:#ffd14a}.booked{background:#334257}.seat{background:#0b1728;border-color:#11c9b1;color:#11c9b1}.seat.booked{background:#26364b;border-color:#26364b;color:#667b92}.seat.selected{background:#ffd14a;border-color:#ffd14a;color:#071321}.seat-summary dl{border-color:#20344e}
.phone-icon{border-color:#20344e;background:#ffd14a;color:#071321}.otp-inputs input{background:#071321;color:#fff;border-color:#11c9b1}.otp-meta button{color:#11c9b1}.ticket{border-color:#31516b}.demo-status{color:#ffd14a}
.site-footer{background:#06101c;border-color:#11c9b1;color:#7589a0}.site-footer>div{color:#11c9b1}.toast{background:#11c9b1;color:#071321;font-weight:800}
::-webkit-scrollbar{width:9px}::-webkit-scrollbar-track{background:#071321}::-webkit-scrollbar-thumb{background:#20344e;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#11c9b1}

/* Bangladesh Railway inspired light theme for every demo page. */
:root{--green:#006747;--green2:#00866a;--orange:#e49a3a;--ink:#273447;--muted:#7b8795;--line:#dfe5e8;--soft:#f5f8f7;--shadow:0 12px 38px rgba(32,66,62,.12)}
body{background:#fff;color:var(--ink)}
.demo-ribbon{background:#fff8e8;border-bottom:1px solid #f1dfbc;color:#6d481a}.demo-ribbon strong{background:#e49a3a;color:#fff}
.site-header{background:#fff;border-color:#e7ece9;box-shadow:0 3px 14px rgba(25,79,60,.05)}
.brand{color:var(--orange)}.brand-copy small{color:var(--green)}.site-header nav button,.site-footer button{color:#4c5561}.site-header nav button:hover{color:var(--green)}.site-header nav .language{background:#f2f5f4;color:#4c5561}.menu-toggle{color:var(--green)}
.rail-logo{width:56px;height:56px;display:block;object-fit:contain;flex:0 0 auto}.rail-logo.large{width:142px;height:142px;margin:0 auto}.rail-logo.small{width:42px;height:42px}.site-footer>div{align-items:center}
.rail-seal{background:radial-gradient(circle,#f6d881 25%,#c79335 27% 35%,#0b714f 37% 46%,#f0c56e 48%);border-color:#b88228;box-shadow:inset 0 0 0 3px #fff7}
.hero{background:linear-gradient(115deg,#f3f8f6,#fff 60%)}.hero:after{border-color:#e4f0eb}
.search-card,.auth-form,.form-page-card,.route-card,.filter-card,.train-row,.coach-tabs,.coach,.seat-summary,.otp-card,.ticket{background:#fff;border-color:var(--line);color:var(--ink)}
.field label,.auth-form label,.registration-grid label,.train-picker label{color:#5c6876}.field input,.field select,.auth-form input,.registration-grid input,.registration-grid select,.train-picker input{color:var(--ink);background:transparent;border:0;border-bottom:1px solid #b8c2c9;border-radius:0;padding:9px 2px}.field input:focus,.field select:focus,.auth-form input:focus,.registration-grid input:focus,.train-picker input:focus{border-color:var(--green);box-shadow:none}
.password-wrap{border-bottom:1px solid #b8c2c9;background:transparent;border-radius:0}.password-wrap input{background:transparent;border:0}.eye{color:var(--green)}
.primary{background:var(--green);border-color:var(--green);box-shadow:none}.primary:hover{background:#004f37}.primary:disabled{background:#aebdb8;border-color:#aebdb8}.outline{background:#fff;border-color:var(--green);color:var(--green)}
.hero-copy h1,.instructions h2,.auth-form h2,.page-heading h1,.train-picker h1,.route-title h2,.train-results>h1,.seat-summary h2,.otp-card h1,.checkout-shell h1{color:var(--ink)}.hero-copy h1 em,.eyebrow,.swap{color:var(--green)}.train-art i{background:#8ea89f}.train-art span{filter:saturate(.7)}
.steps article{border-color:var(--line)}.steps article>span{color:#eef1f0}.step-icon{color:var(--orange)}.steps p,.instructions li{color:var(--muted)}.instructions li:before{color:var(--green)}.instruction-art{background:#f0f6f3;border:0}
.auth-page{background:linear-gradient(135deg,#f2f7f5 0 50%,#fff 50%)}.auth-brand h1{color:var(--orange)}.auth-brand p{color:var(--green)}.auth-brand b{background:#fff0df;color:#7f4d16}.auth-form>p,.page-heading p{color:var(--muted)}.auth-links button,.text-button{color:var(--green)}.or:before,.or:after,.page-heading{border-color:var(--line)}
.warning-box{background:#fff7e7;border-color:#d5932e;color:#694b25}.route-title>span,.success-mark{background:var(--green);color:#fff}.route-title b{background:#e7f4ef;color:var(--green)}.timeline div{background:#fff}.timeline i{background:var(--orange)}.timeline div:before{border-color:var(--orange);background:#fff}.route-meta{border-color:var(--line)}.contact-grid article{background:var(--soft);border:0}.contact-grid strong{color:var(--green)}
.booking-page{background:#f4f7f6}.booking-head{background:#fff;border-color:var(--line)}.booking-head .back{color:var(--green)}.filter-card label,.train-row p,.booking-head small{color:var(--muted)}.train-number{background:#fff2df;color:#b9741e}.fare span{color:var(--green)}
.coach-tabs button{background:#fff;border-color:var(--line);color:var(--ink)}.coach-tabs button.active{background:var(--green);color:#fff}.coach{background:#fff}.available{border-color:var(--green)}.selected{background:var(--orange)}.booked{background:#cad1d4}.seat{background:#fff;border-color:var(--green);color:var(--green)}.seat.booked{background:#d9dfe1;border-color:#d9dfe1;color:#89949a}.seat.selected{background:var(--orange);border-color:var(--orange);color:#fff}.seat-summary dl{border-color:var(--line)}
.phone-icon{border-color:#344150;background:#f3ad4f;color:var(--ink)}.otp-inputs input{background:#fff;color:var(--ink);border-color:var(--green)}.otp-meta button{color:var(--green)}.ticket{border-color:#b8c5c0}.demo-status{color:#a65c19}
.site-footer{background:#fff;border-color:var(--green);color:var(--muted)}.site-footer>div{color:var(--orange)}.toast{background:#263b35;color:#fff;font-weight:400}
::-webkit-scrollbar{width:9px}::-webkit-scrollbar-track{background:#f4f7f6}::-webkit-scrollbar-thumb{background:#bdc9c4;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--green)}
@media(max-width:600px){.rail-logo{width:48px;height:48px}.rail-logo.large{width:120px;height:120px}.rail-logo.small{width:38px;height:38px}}
