:root{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:#eef4f7;background:#0e1519;--card:#172229;--line:#31424c;--muted:#9cafb9;--ok:#6fd59b;--warn:#ffcc67;--bad:#ff7b78;--accent:#73b8ff;--cargo:#67aaf1;--selected:#f1b867}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#0b1115,#111b20 45%,#0c1317);min-height:100vh}a{color:inherit}.toolbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px clamp(12px,3vw,38px);background:rgba(11,17,21,.92);border-bottom:1px solid #2b3c45;backdrop-filter:blur(15px)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand img{width:38px;height:38px}.brand span{display:grid}.brand strong{font-size:17px}.brand small{font-size:10px;color:var(--muted);font-weight:700}.tool-actions,.demo-actions,.inline-actions{display:flex;gap:8px;flex-wrap:wrap}.ghost,button{border:1px solid var(--line);background:#1b2a32;color:#f4f8fa;border-radius:12px;padding:9px 12px;font-weight:800;cursor:pointer;text-decoration:none}.ghost:hover,button:hover{border-color:#658296;background:#223640}button.primary,.primary{background:#244e73;border:1px solid #4f8dbc;color:#fff;border-radius:12px;padding:10px 14px;font-weight:900;text-decoration:none}.wrap{max-width:1240px;margin:auto;padding:18px clamp(10px,2vw,22px) 40px}.intro{display:flex;align-items:end;justify-content:space-between;gap:22px;flex-wrap:wrap;padding:16px 3px 4px}.intro h1{font-size:clamp(30px,4.8vw,58px);letter-spacing:-.045em;line-height:1;margin:8px 0}.intro p{max-width:720px;color:var(--muted);line-height:1.5;margin:0}.kicker{display:inline-block;font-size:10px;font-weight:950;letter-spacing:.14em;color:#9ed0ff;border:1px solid #35566a;border-radius:999px;padding:5px 8px}.notice{margin:14px 0;padding:11px 13px;border:1px solid #674e25;background:#2a2416;border-radius:12px;color:#ffe1a4;font-size:13px;line-height:1.45}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.top-grid{align-items:start}.card{background:rgba(23,34,41,.96);border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:0 10px 35px #0004}.card h2{margin:.1em 0 .65em}.card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.card-head h2{margin-bottom:4px}.small{padding:7px 9px;font-size:11px}.helper{font-size:12px;color:var(--muted);line-height:1.45;margin:4px 0}.steps{display:grid;gap:7px}.step{display:flex;gap:10px;align-items:flex-start}.step>span{min-width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#284252;font-weight:900}.step p{margin:2px 0;color:#d8e2e7;font-size:13px;line-height:1.4}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.fields.collapsed{display:none}.fields label{display:block;color:var(--muted);font-size:12px}.fields input{width:100%;margin-top:4px;padding:9px 10px;border:1px solid #3a4d58;border-radius:9px;background:#0e171c;color:#f1f6f8;font-size:15px}.cargo-card,.views-card,.results-grid{margin-top:12px}.cargo-list{display:grid;gap:8px;margin-top:10px}.cargo-item{border:1px solid #30434d;border-radius:12px;padding:10px;background:#101a1f}.cargo-item.selected{border-color:#e0b05d;box-shadow:0 0 0 1px #e0b05d33}.cargo-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.cargo-head input{font-weight:850;background:transparent;border:0;border-bottom:1px solid #3d515c;color:#fff;padding:4px;width:min(240px,55vw)}.cargo-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:8px}.cargo-fields label{font-size:11px;color:var(--muted)}.cargo-fields input{min-width:0;width:100%;margin-top:3px;padding:8px;border-radius:8px;border:1px solid #354a55;background:#0d171c;color:#f2f6f8}.cargo-coords{font-size:11px;color:var(--muted);margin-top:7px}.icon-button{padding:7px 9px}.views{display:grid;grid-template-columns:1fr 1fr;gap:10px}.view{background:#0b1216;border:1px solid #2d404b;border-radius:12px;padding:7px;overflow:hidden}.view h3{margin:2px 4px 6px;color:#cfe1e9;font-size:14px}.view svg{width:100%;height:220px;display:block;touch-action:none;background:#0d171c;border-radius:8px}.view.front{grid-column:1/-1;max-width:680px;width:100%;justify-self:center}.selection-output{font-size:12px;color:#f4d9a7;font-weight:800}.cargoRect{fill:var(--cargo);fill-opacity:.68;stroke:#d5ecff;stroke-width:1.5;cursor:grab;pointer-events:all}.cargoRect.dragging{fill-opacity:.9;cursor:grabbing}.view svg.dragging{cursor:grabbing}.cargoRect.selected{fill:var(--selected);stroke:#fff1ca;stroke-width:2}.cargoText{fill:#fff;font-weight:800;font-size:12px;pointer-events:none}.deck{fill:#22323a;stroke:#6b8796;stroke-width:1.5}.vehicleBody{fill:#16272f;stroke:#6f8b99;stroke-width:2}.vehicleGlass{fill:#31515f;stroke:#9bb9c7;stroke-width:1.4}.chassis{stroke:#718d9a;stroke-width:6;stroke-linecap:round}.wheel{fill:#05090b;stroke:#c2d2d9;stroke-width:2}.hub{fill:#617984;stroke:#c2d2d9;stroke-width:1}.fifth{fill:#b5c4ca;stroke:#edf4f6;stroke-width:1.2}.axle{stroke:#dfe9ee;stroke-width:3}.axleGuide{stroke:#93aab5;stroke-width:1.5;stroke-dasharray:5 5}.centreline{stroke:#657d88;stroke-width:1;stroke-dasharray:8 7}.ground{stroke:#445861;stroke-width:2}.direction{fill:#9eb5c1;font-size:12px;font-weight:800;letter-spacing:.08em}.directionLine{stroke:#9eb5c1;stroke-width:2;fill:none}.resultrow{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:8px;padding:9px 0;border-bottom:1px solid #263740}.resultrow:last-child{border-bottom:0}.bar{height:9px;background:#0c1317;border-radius:99px;overflow:hidden;margin-top:5px}.bar i{display:block;height:100%;background:var(--ok)}.bar i.warn{background:var(--warn)}.bar i.bad{background:var(--bad)}.kpi{font-size:22px;font-weight:900}.mini{font-size:11px;color:var(--muted)}.statusbox{padding:12px;border-radius:10px;border:1px solid #344b57;background:#0f191e;line-height:1.45}.statusbox.ok{border-color:#347654}.statusbox.warn{border-color:#866829}.statusbox.bad{border-color:#8e3f3d}.messages{display:grid;gap:6px;margin-top:8px}.message{font-size:12px;padding:7px 9px;border-radius:8px;background:#10191e;border-left:3px solid #866829}.opt-message{margin-top:10px}.commercial{display:flex;align-items:center;justify-content:space-between;gap:26px;margin-top:16px;padding:22px;border:1px solid #426270;border-radius:18px;background:linear-gradient(135deg,#172a33,#1a2429)}.commercial span{font-size:10px;letter-spacing:.13em;font-weight:950;color:#9ed0ff}.commercial h2{margin:7px 0;font-size:clamp(22px,3vw,34px)}.commercial p{color:var(--muted);margin:0;max-width:760px}.cta{white-space:nowrap}footer{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;color:#8196a1;font-size:11px;padding:18px 4px 0}footer a{font-weight:900}.hidden{display:none!important}
@media(max-width:860px){.grid{grid-template-columns:1fr}.views{grid-template-columns:1fr}.view.front{grid-column:auto;max-width:none}.fields{grid-template-columns:1fr 1fr}.cargo-fields{grid-template-columns:1fr 1fr}.view svg{height:200px}.commercial{align-items:flex-start;flex-direction:column}.cta{white-space:normal}}
@media(max-width:560px){.toolbar{position:relative}.brand small{display:none}.tool-actions .ghost:first-child{display:none}.wrap{padding:10px 8px 30px}.fields{grid-template-columns:1fr}.card{padding:11px}.intro{align-items:flex-start}.demo-actions{width:100%}.demo-actions button{flex:1}.resultrow{grid-template-columns:1fr .7fr .7fr}.kpi{font-size:18px}.card-head{flex-direction:column}.cargo-head input{width:50vw}.view svg{height:180px}}
