@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap";:root{color:#1d2621;font-synthesis:none;--ink:#17231c;--forest:#1d3428;--cream:#f2f0e9;--paper:#faf9f5;--line:#d9d8cf;--red:#c74c3d;--amber:#d99525;--muted:#717970;background:#f2f0e9;font-family:DM Sans,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button,a{transition:all .18s}.auth{grid-template-columns:1.12fr .88fr;min-height:100vh;display:grid}.auth-brand{background:var(--forest);color:#f5f1e6;flex-direction:column;justify-content:space-between;padding:55px 9vw 40px;display:flex;position:relative;overflow:hidden}.brandmark{letter-spacing:.13em;align-items:center;gap:12px;font-weight:800;display:flex}.brandmark svg{color:#17231c;background:#d9a236;width:31px;height:31px;padding:5px}.auth h1{margin:18px 0 30px;font:400 clamp(56px,6vw,92px)/.89 Instrument Serif,serif}.auth h1 em{color:#d9a236}.lede{color:#c5cec7;max-width:570px;font-size:18px;line-height:1.7}.eyebrow,.kicker,.section-label{text-transform:uppercase;letter-spacing:.14em;color:#8a918a;font-size:11px;font-weight:700}.auth-brand .eyebrow{color:#d9a236}.rail-lines{opacity:.24;gap:12px;height:75px;display:flex}.rail-lines span{border-left:2px solid #fff;height:140px;transform:rotate(58deg)}.auth-panel{background:var(--paper);place-items:center;padding:35px;display:grid}.auth-panel form{width:min(430px,100%)}.auth-panel h2{margin:8px 0;font:400 42px Instrument Serif,serif}.auth-panel form>p{color:var(--muted)}label{flex-direction:column;gap:8px;margin-top:20px;font-size:13px;font-weight:600;display:flex}input,select,textarea{color:var(--ink);background:#fff;border:1px solid #cacbc3;border-radius:3px;outline:none;padding:13px 14px}input:focus,select:focus,textarea:focus{border-color:#547560;box-shadow:0 0 0 3px #54756018}textarea{resize:vertical;min-height:92px}.check{flex-direction:row;align-items:center;font-weight:500}.check input{width:auto}.primary{background:var(--forest);color:#fff;cursor:pointer;border:0;border-radius:3px;justify-content:center;align-items:center;gap:9px;padding:14px 20px;font-weight:700;display:flex}.auth .primary{width:100%;margin-top:25px}.primary:hover{background:#2b4a39}.link{color:#466652;cursor:pointer;background:0 0;border:0;width:100%;padding:18px}.error,.success{border-left:3px solid var(--red);color:#752a21;background:#f9e9e6;margin-top:14px;padding:12px 14px}.success{color:#28523a;background:#e6f2e9;border-color:#4f8162}.app{grid-template-columns:235px 1fr;min-height:100vh;display:grid}.app aside{background:var(--ink);color:#e8ece9;z-index:10;flex-direction:column;width:235px;height:100vh;padding:26px 17px;display:flex;position:fixed}.sidebar-head{justify-content:space-between;padding:0 10px 34px;display:flex}.section-label{color:#6f8175;padding:0 11px}.app nav{gap:4px;display:grid}.app nav a,.side-bottom a,.side-bottom button{color:#aab5ae;cursor:pointer;background:0 0;border:0;border-radius:3px;align-items:center;gap:12px;width:100%;padding:11px;font-size:14px;text-decoration:none;display:flex}.app nav a:hover,.side-bottom a:hover,.side-bottom button:hover{color:#fff;background:#ffffff0a}.app nav a.active{color:#fff;background:#31473a}.app nav a.active:before{content:"";background:#d9a236;width:3px;height:22px;position:absolute;left:17px}.side-bottom{border-top:1px solid #2d3932;margin-top:auto;padding-top:12px}.side-bottom small{color:#53645a;letter-spacing:.16em;padding:20px 11px 0;font-size:9px;display:block}.content{grid-column:2;min-width:0}.content>header{border-bottom:1px solid var(--line);height:64px;color:var(--muted);background:#f7f5ef;justify-content:flex-end;align-items:center;gap:25px;padding:0 4vw;font-size:12px;display:flex}.signal{border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.signal.live{background:#5c9c70;box-shadow:0 0 0 4px #5c9c701c}.avatar{background:#d9d3c1;border:0;border-radius:50%;width:34px;height:34px;font-size:11px;font-weight:700}.page{max-width:1500px;margin:auto;padding:45px 4vw 70px}.page-title{justify-content:space-between;align-items:flex-end;margin-bottom:30px;display:flex}.page-title h1{margin:5px 0;font:400 clamp(38px,4vw,54px) Instrument Serif,serif}.page-title p{color:var(--muted);margin:0}.compact{padding:11px 15px;text-decoration:none}.stats{border:1px solid var(--line);background:var(--paper);grid-template-columns:repeat(4,1fr);margin-bottom:22px;display:grid}.metric{border-right:1px solid var(--line);padding:21px 24px;position:relative}.metric:last-child{border:0}.metric p{color:var(--muted);margin:0;font-size:12px}.metric strong{margin:10px 0 4px;font:400 39px Instrument Serif,serif;display:block}.metric small{color:#8d938e}.metric.warn:before{content:"";background:var(--amber);height:3px;position:absolute;top:0;left:0;right:0}.grid-main{grid-template-columns:1.55fr .75fr;gap:22px;display:grid}.panel{background:var(--paper);border:1px solid var(--line)}.panel-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:20px 23px;display:flex}.panel-title h2,.panel h2{margin:3px 0;font:400 25px Instrument Serif,serif}.panel-title a{color:#446250;align-items:center;font-size:12px;text-decoration:none;display:flex}.vehicle{border-bottom:1px solid #e5e3dc;grid-template-columns:44px 1fr auto 68px 18px;align-items:center;gap:15px;padding:14px 21px;display:grid}.vehicle:last-child{border:0}.train-tile{color:#315441;background:#e2e6e0;border-radius:3px;place-items:center;width:42px;height:42px;display:grid}.train-tile.rolling_stock{color:#765b3e;background:#e8dfd4}.vehicle-main b{font-size:14px}.vehicle-main b span{color:#5d675f;font-weight:500}.vehicle-main p{color:var(--muted);margin:4px 0;font-size:11px}.badge{text-transform:uppercase;letter-spacing:.09em;color:#59635c;background:#e4e6e2;border-radius:2px;padding:6px 8px;font-size:9px}.badge.in_service{color:#36704a;background:#dfede3}.badge.testing,.badge.inspection{color:#8a5a11;background:#f4e9d4}.runtime{color:var(--muted);font-size:11px}.attention .panel-title{background:#f5f0e5}.work-card{border-bottom:1px solid var(--line);grid-template-columns:41px 1fr 18px;align-items:center;gap:13px;padding:19px;display:grid}.work-number{color:#386348;text-align:center;background:#dce9df;padding:8px;font:400 21px Instrument Serif}.work-number.amber{color:#805512;background:#f1dfc4}.work-card b{font-size:13px}.work-card p{color:var(--muted);margin:4px 0;font-size:11px;line-height:1.5}.era-panel{grid-template-columns:.6fr 1fr;gap:40px;margin-top:22px;padding:24px;display:grid}.era-panel>div>p:last-child{color:var(--muted);font-size:13px}.era-bars>div{grid-template-columns:72px 1fr 24px;align-items:center;gap:10px;margin:8px 0;font-size:11px;display:grid}.era-bars div div{background:#e5e5df;height:7px}.era-bars i{background:#466653;height:100%;display:block}.empty,.placeholder{text-align:center;color:var(--muted);padding:60px}.empty svg,.placeholder svg{color:#72907e}.toolbar{gap:10px;margin-bottom:15px;display:flex}.toolbar .search{flex:1;margin:0;position:relative}.toolbar .search svg{color:#7d857f;position:absolute;top:13px;left:13px}.toolbar input{width:100%;padding-left:42px}.toolbar select{min-width:170px}.register .vehicle{padding:18px 22px}.steps{color:#9a9f9a;text-transform:uppercase;letter-spacing:.1em;align-items:center;margin-bottom:23px;font-size:10px;font-weight:700;display:flex}.steps i{background:#d4d4cc;flex:1;height:1px;margin:0 14px}.steps .active{color:#32543f}.intake-form{gap:18px;display:grid}.intake-form>.panel{padding:26px}.intake-form h2{margin:0}.form-help{color:var(--muted);margin:6px 0 18px;font-size:12px}.type-cards{grid-template-columns:1fr 1fr;gap:12px;display:grid}.type-cards button{text-align:left;border:1px solid var(--line);cursor:pointer;color:var(--ink);background:#fff;grid-template-columns:42px 1fr;column-gap:12px;padding:17px;display:grid}.type-cards button svg{background:#e5e9e5;grid-row:1/3;width:40px;height:40px;padding:8px}.type-cards b{align-self:end}.type-cards span{color:var(--muted);font-size:11px}.type-cards button.selected{background:#f4f7f3;border-color:#456653;box-shadow:inset 0 0 0 1px #456653}.form-heading{justify-content:space-between;display:flex}.form-ref{letter-spacing:.1em;color:#929992;font:700 9px monospace}.form-grid{grid-template-columns:repeat(2,1fr);gap:0 18px;display:grid}.form-grid .wide{grid-column:1/-1}.form-grid label{margin-top:14px}.form-actions{justify-content:flex-end;gap:10px;display:flex}.secondary{border:1px solid var(--line);cursor:pointer;background:0 0;padding:12px 18px}.icon{background:0 0;border:0}.mobile{display:none}.placeholder{margin-top:30px}.placeholder h2{font-size:30px}.placeholder p{max-width:500px;margin:auto}.intake-page{max-width:1050px}@media (width<=950px){.stats{grid-template-columns:1fr 1fr}.metric:nth-child(2){border-right:0}.metric:nth-child(-n+2){border-bottom:1px solid var(--line)}.grid-main,.auth{grid-template-columns:1fr}.auth-brand{min-height:42vh;padding:35px}.auth h1{font-size:53px}.auth-panel{padding:50px 25px}.era-panel{grid-template-columns:1fr}}@media (width<=700px){.app{display:block}.app aside{transition:all .2s;transform:translate(-100%)}.app aside.open{transform:none}.content,.mobile{display:block}.content>header{justify-content:space-between}.page{padding:28px 18px}.page-title{flex-direction:column;align-items:flex-start;gap:20px}.stats{grid-template-columns:1fr 1fr}.metric{padding:16px}.metric strong{font-size:30px}.vehicle{grid-template-columns:42px 1fr auto}.vehicle .runtime,.vehicle>svg{display:none}.badge{grid-column:3}.toolbar{flex-wrap:wrap}.toolbar .search{flex-basis:100%}.toolbar select{flex:1;min-width:130px}.form-grid,.type-cards{grid-template-columns:1fr}.steps span:not(.active),.steps i{display:none}.steps:after{content:"Step 1 of 4";margin-left:auto}.era-panel{padding:18px}.auth-brand .lede{font-size:14px}.auth h1{font-size:45px}}.vehicle-link{color:inherit;text-decoration:none}.vehicle-link:hover{background:#f1f4ef}.record-grid{grid-template-columns:repeat(2,1fr);gap:18px;margin-top:20px;display:grid}.record-card{gap:18px;padding:24px;display:flex}.record-card>svg{color:#4f735d}.record-card p{color:var(--muted);font-size:12px}.small-value{font:500 18px DM Sans,sans-serif!important}.catalogue-form,.settings-card{max-width:900px;padding:25px}.catalogue-form>.primary{margin-top:22px}.request-list{margin-top:20px}.request-list article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.request-list article p{color:var(--muted);margin:4px 0;font-size:12px}.product-matches{border:1px solid var(--line);background:#fff;display:grid}.product-matches button{border:0;border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;padding:11px 14px}.product-matches button:hover{background:#eff4ef}.product-matches span{color:var(--muted);margin-top:3px;font-size:11px;display:block}.settings-card hr{border:0;border-top:1px solid var(--line);margin:24px 0}.settings-card .secondary{align-items:center;gap:8px;display:flex}.api-key{overflow-wrap:anywhere;background:#edf0eb;margin-top:15px;padding:15px}.api-key p{color:var(--muted);font-size:11px}@media (width<=700px){.record-grid{grid-template-columns:1fr}}.brandmark img{object-fit:cover;object-position:center;border-radius:4px;width:96px;height:64px}.auth-brand>.brandmark img{width:150px;height:100px}.brandmark span{color:#f5f1e6;font-size:13px}.sidebar-head .brandmark{width:180px;height:68px}.side-bottom small{font-size:0}.side-bottom small:after{content:"FLEET@OORAIL / OPS 01";font-size:9px}
