:root{--active:#486267;font-family:system-ui,sans-serif;color:#24333a;background:#f4f7f7}*{box-sizing:border-box}body{margin:0;overflow:hidden}input,select,button{font:inherit;padding:3px 4px;border:1px solid #b7c6c8;background:#fff;border-radius:2px}button{cursor:pointer;background:#edf3f3}button:disabled{cursor:not-allowed}.topbar{height:42px;display:grid;grid-template-columns:350px 1fr 118px;align-items:center;gap:7px;padding:5px 7px;background:#e5eeee;font-size:12px}.project-fields{display:grid;grid-template-columns:minmax(0,1fr) 142px;gap:7px}.project-fields label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px}.project-fields input{min-width:0;width:100%}.topbar select{width:118px}.app-layout{height:calc(100vh - 42px);display:grid;grid-template-columns:350px minmax(430px,1fr) 320px;gap:7px;padding:7px;overflow:hidden}.vehicle-table{min-width:0;overflow:hidden;background:#fbfcfc}table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10px;line-height:1.05}th,td{height:16px;padding:1px 3px;border-bottom:1px solid #d5dfe1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}th{height:18px;background:#e7efef;text-align:left;font-weight:650}th:nth-child(1){width:13%}th:nth-child(2){width:19%}th:nth-child(3){width:26%}th:nth-child(4){width:42%}tbody tr[data-axle]{cursor:pointer}tbody tr.is-selected{outline:1px solid #657579;outline-offset:-1px}#work,.controls-column{min-width:0;min-height:0;display:grid;grid-template-rows:minmax(100px,1fr) 34px minmax(90px,1fr) 34px minmax(90px,1fr);gap:6px;overflow:visible}.viewer{min-height:0;overflow:hidden;background:#fff}.viewer svg{width:100%;height:100%;display:block}.section-viewer{display:grid;grid-template-rows:32px minmax(0,1fr)}.section-viewer svg{min-height:0}.section-head{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;padding:0 7px;font-size:11px;color:#3c5055}.section-head>div{grid-column:1}.section-head #sectionTitle,.section-head #sectionMeta{display:block;text-align:left}.section-head #sectionTitle{font-weight:600}.section-head>#vehicleSummary{grid-column:2;text-align:center;font-weight:600;white-space:nowrap}.axle-mark{cursor:pointer}.axle-mark.selected circle,.axle-mark.selected rect{stroke-width:3}.used-library{min-width:0;display:grid}.used-rail{min-width:0;display:flex;gap:4px;overflow-x:auto;overflow-y:hidden}.tile{min-width:96px;padding:2px 4px;font-size:11px;white-space:nowrap}.tile.is-selected{outline:1px dashed #7b898c;outline-offset:-3px}.tile.is-active{background:#dfe9e9;border:2px solid var(--active);outline:2px solid var(--active);outline-offset:-3px;color:var(--active);font-weight:700}.tile.is-active.is-selected{outline:2px solid var(--active)}.new-axle-panel{display:grid;grid-template-columns:max-content max-content minmax(100px,1fr) max-content max-content max-content;align-items:center;gap:6px;padding:2px 4px;font-size:12px}.new-axle-panel input{width:43px;text-align:right}.new-axle-panel #newGross{width:70px}.new-axle-panel output{font-weight:600;color:var(--active);text-align:center}.section-controls{grid-row:1;display:grid;align-content:start;gap:3px;padding:3px;font-size:12px;overflow:visible}.section-controls>label,.geometry-fields label{display:grid;grid-template-columns:142px 1fr;align-items:center}.geometry-fields{display:grid;gap:3px}.geometry-fields label>span{justify-self:end;white-space:nowrap}.section-controls input[type=number]{width:42px;text-align:right}.section-controls input[type=text]{width:150px}.section-actions{display:flex;flex-wrap:wrap;gap:4px}.section-actions button{font-size:11px}.section-actions #removeSection{color:#8e3030}.section-controls output{font-size:11px;color:var(--active)}.selected-axle-controls{grid-row:3;display:grid;align-content:start;gap:8px;padding:3px;font-size:12px}.selected-axle-controls label{display:grid;grid-template-columns:108px max-content;align-items:center}.selected-axle-controls input{width:40px;text-align:right}.selected-axle-controls #selectedGross{width:80px}.selected-axle-controls output{font-weight:600;color:var(--active)}#add{background:#2d7959;color:#fff;border-color:#2d7959}#add:disabled{background:#b8c8c2;border-color:#b8c8c2}.warnings{grid-row:5;align-self:end;min-height:52px;padding:4px;border-top:1px solid #cad7d8;font-size:11px;color:#58686c}.warnings b{display:block;color:#35484d;margin-bottom:3px}.warnings .warning{color:#9a552a}@media (max-width:1000px){body{overflow:auto}.app-layout{height:auto;min-height:calc(100vh - 42px);grid-template-columns:300px minmax(360px,1fr)}.controls-column{grid-column:2;grid-row:2;min-height:250px}.vehicle-table{max-height:680px}}
.topbar{height:56px;grid-template-columns:350px minmax(430px,1fr) 320px;align-items:stretch}.top-logo{min-width:0;display:flex;align-items:center}.top-logo img{display:block;width:100%;height:46px;object-fit:contain;object-position:left center}.top-middle{min-width:0;display:flex;align-items:center;gap:10px}.units-host{margin-left:auto;display:flex;gap:7px;align-items:center}.top-actions{display:flex;align-items:flex-start;justify-content:flex-start;gap:6px}.top-actions button{margin-top:2px}.app-layout{height:calc(100vh - 56px)}
.units-host{align-self:flex-start;margin-top:2px}
.topbar{height:32px;align-items:center;padding:5px 7px}.top-logo{justify-content:center;padding:0 7px}.top-logo img{width:100%;height:22px;object-position:center}.top-middle{align-items:center}.units-host{align-self:auto;margin-top:0}.top-actions{align-items:center}.top-actions button{margin-top:0}.app-layout{height:calc(100vh - 32px)}
.project-fields{width:min(100%,422px);grid-template-columns:minmax(273px,1fr) 142px}
.top-actions{position:relative;width:100%}.help-button{margin-left:auto!important;width:24px;height:24px;padding:0;border:1px solid #111;background:#fff;color:#111;font-size:17px;font-weight:700;line-height:20px}.help-menu{position:absolute;right:0;top:29px;z-index:50;width:320px;padding:9px 11px;background:#fff;border:1px solid #697a7e;color:#24333a;text-align:right;font-size:12px;line-height:1.28;box-shadow:0 2px 7px #80909480}.help-menu[hidden]{display:none}.help-menu section{padding:4px 0;border-bottom:1px solid #d3dddd}.help-menu section:last-of-type{border-bottom:0}.help-menu h2{margin:0 0 2px;font-size:12px;text-transform:uppercase}.help-menu ul{margin:0;padding:0;list-style:none}.help-menu li{margin:1px 0}.help-menu footer{padding-top:6px;font-weight:700}
.pdf-dialog{width:min(560px,calc(100vw - 32px));padding:0;border:1px solid #586b70;border-radius:5px;color:#24333a;box-shadow:0 12px 36px #24333a55}.pdf-dialog::backdrop{background:#1f2d3180}.pdf-dialog-form{display:grid;gap:14px;padding:18px}.pdf-dialog h2{margin:0;font-size:18px}.pdf-dialog-note{margin:0;color:#58686c;font-size:12px}.pdf-override-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pdf-override-grid label,.pdf-logo-field{display:grid;gap:4px;font-size:12px;font-weight:650}.pdf-override-grid input{width:100%;padding:7px}.pdf-logo-row{display:grid;grid-template-columns:1fr 110px;gap:12px;align-items:center}.pdf-logo-preview{width:110px;height:58px;display:flex;align-items:center;justify-content:center;border:1px dashed #a9b8bb;background:#f8fafa;color:#758589;font-size:11px;overflow:hidden}.pdf-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.pdf-dialog-actions{display:flex;justify-content:flex-end;gap:8px}.pdf-dialog-actions .primary{background:#2d7959;color:#fff;border-color:#2d7959}.pdf-reset{margin-right:auto}@media(max-width:560px){.pdf-override-grid,.pdf-logo-row{grid-template-columns:1fr}.pdf-logo-preview{width:100%;height:70px}}
@media print{.print-header-line{padding-left:1.65in;padding-right:.1in}.print-user-logo{position:absolute;left:.08in;top:.04in;z-index:3;display:block;max-width:1.45in;max-height:.42in;object-fit:contain}.print-override-line{margin-top:.025in;font-size:8pt;font-weight:700;text-align:center}}
.pdf-studio{width:min(1500px,97vw);height:95vh;max-width:none;padding:0}.pdf-studio-form{height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.pdf-studio-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #c7d2d4}.pdf-studio-head h2{margin:0}.pdf-studio-body{min-height:0;display:grid;grid-template-columns:300px minmax(0,1fr);background:#e8eeee}.pdf-studio-controls{overflow:auto;padding:14px;background:#fff;border-right:1px solid #c7d2d4}.pdf-studio-controls fieldset{display:grid;gap:8px;margin:0 0 12px;padding:10px;border:1px solid #c7d2d4}.pdf-studio-controls legend{font-size:12px;font-weight:700}.pdf-studio-controls label{display:grid;gap:4px;font-size:12px;font-weight:600}.pdf-studio-controls label.option{display:flex;align-items:center;gap:7px;font-weight:500}.pdf-studio-controls input[type=text],.pdf-studio-controls select{width:100%;padding:6px}.pdf-studio-controls input[type=range]{width:100%}.pdf-studio-preview-wrap{min-width:0;min-height:0;overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:22px}.pdf-preview-page,.pdf-export-page{position:relative;width:10.75in;height:8.2in;flex:none;display:flex;flex-direction:column;overflow:hidden;padding:.125in;border:1px solid #000;background:#fff;color:#111;font-family:Arial,sans-serif;font-size:9pt;box-sizing:border-box}.pdf-preview-page{transform-origin:top center;box-shadow:0 4px 18px #26383d44}.pdf-preview-page .print-header,.pdf-export-page .print-header{position:relative;min-height:.62in;text-align:center;font-size:10pt;line-height:1.18}.pdf-preview-page .print-header::after,.pdf-export-page .print-header::after{content:"";position:absolute;left:0;right:0;top:.5in;border-top:1px solid #000}.pdf-preview-page .print-header-line,.pdf-export-page .print-header-line{padding-top:.12in;text-align:center;font-weight:700}.pdf-preview-page .print-view,.pdf-export-page .print-view{flex:0 0 1.18in;display:grid;grid-template-rows:1fr;min-height:0}.pdf-preview-page .print-view svg,.pdf-export-page .print-view svg{width:100%;height:100%;display:block}.pdf-preview-page .print-sections,.pdf-export-page .print-sections{flex:0 0 1.42in;display:grid;grid-template-rows:1fr;min-height:0}.pdf-preview-page .print-section-cards,.pdf-export-page .print-section-cards{display:flex;justify-content:center;gap:.12in;align-items:stretch;min-height:0}.pdf-preview-page .print-section-card,.pdf-export-page .print-section-card{width:2.15in;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid #777;padding:3px;text-align:center;font-size:7pt;overflow:hidden}.pdf-preview-page .print-section-card svg,.pdf-export-page .print-section-card svg{width:100%;height:100%;min-height:0}.pdf-preview-page .print-table,.pdf-export-page .print-table{flex:1 1 auto;min-height:0;overflow:hidden;display:grid;grid-template-rows:1fr}.pdf-preview-page .print-table svg,.pdf-export-page .print-table svg{display:block;width:100%;height:auto}.pdf-preview-page .print-section-key,.pdf-export-page .print-section-key{font-size:7pt}.pdf-preview-page .print-user-logo,.pdf-export-page .print-user-logo{position:absolute;top:.04in;z-index:3;display:block;max-height:.42in;object-fit:contain}.logo-left .print-user-logo{left:.08in}.logo-center .print-user-logo{left:50%;transform:translateX(-50%)}.logo-right .print-user-logo{right:.08in}.hide-length-label .print-length-dimension{display:none}.hide-spacing-labels .spacing-label{display:none}.hide-section-dims .print-section-card svg text{display:none}.hide-max-width .print-max-width{display:none}.pdf-studio-actions{display:flex;align-items:center;gap:8px;padding:10px 14px;border-top:1px solid #c7d2d4;background:#fff}.pdf-studio-actions .status{margin-right:auto;font-size:12px;color:#58686c}.pdf-studio-actions .primary{background:#2d7959;color:#fff;border-color:#2d7959}.pdf-export-page{position:fixed;left:-20000px;top:0;z-index:-1}@media(max-width:900px){.pdf-studio-body{grid-template-columns:1fr}.pdf-studio-controls{max-height:38vh;border-right:0;border-bottom:1px solid #c7d2d4}.pdf-studio-preview-wrap{justify-content:flex-start}}
.pdf-preview-page .print-header::after,.pdf-export-page .print-header::after{display:none}.pdf-preview-page .print-table,.pdf-export-page .print-table{display:flex;flex-direction:column;justify-content:flex-end}.pdf-preview-page .print-schedule-svg,.pdf-export-page .print-schedule-svg{order:0;flex:0 0 auto}.pdf-preview-page .print-section-key,.pdf-export-page .print-section-key{order:1;margin-top:3px}
@media print{.print-header::after{display:none!important}.print-table{display:flex!important;flex-direction:column!important;justify-content:flex-end!important}.print-table .print-schedule-svg{order:0!important;flex:0 0 auto!important}.print-table .print-section-key{order:1!important;margin:3px 0 0!important}.print-table .print-schedule-svg{overflow:visible!important}}
.pdf-preview-page .print-header-line,.pdf-export-page .print-header-line{display:grid;gap:1px;padding-top:.02in;line-height:1.08}.print-title-company{font-size:10pt;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.print-title-permit{font-size:9pt;font-weight:700;min-height:9pt}.print-title-description{font-size:8.5pt;font-weight:600}@media print{.print-header-line{display:grid!important;gap:1px!important;padding-top:.02in!important;line-height:1.08!important}.print-title-company{font-size:10pt!important;font-weight:700!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.print-title-permit{font-size:9pt!important;font-weight:700!important;min-height:9pt!important}.print-title-description{font-size:8.5pt!important;font-weight:600!important}}
.pdf-preview-page.logo-top-left>.print-user-logo,.pdf-export-page.logo-top-left>.print-user-logo{position:absolute;left:.2in;right:auto;top:.16in;bottom:auto;transform:none;transform-origin:left top}.pdf-preview-page.logo-top-right>.print-user-logo,.pdf-export-page.logo-top-right>.print-user-logo{position:absolute;left:auto;right:.2in;top:.16in;bottom:auto;transform:none;transform-origin:right top}.pdf-preview-page.logo-table-left .print-table>.print-user-logo,.pdf-export-page.logo-table-left .print-table>.print-user-logo,.pdf-preview-page.logo-table-right .print-table>.print-user-logo,.pdf-export-page.logo-table-right .print-table>.print-user-logo{position:static;order:-1;top:auto;right:auto;bottom:auto;left:auto;transform:none;flex:0 0 auto;max-width:4in;max-height:1.15in;margin-bottom:.04in;object-fit:contain}.pdf-preview-page.logo-table-left .print-table>.print-user-logo,.pdf-export-page.logo-table-left .print-table>.print-user-logo{align-self:flex-start;transform-origin:left bottom}.pdf-preview-page.logo-table-right .print-table>.print-user-logo,.pdf-export-page.logo-table-right .print-table>.print-user-logo{align-self:flex-end;transform-origin:right bottom}.pdf-preview-page>.print-user-logo,.pdf-export-page>.print-user-logo{max-width:4in;max-height:1.15in;object-fit:contain}@media print{#printSheet.logo-top-left>.print-user-logo{position:absolute!important;left:.2in!important;right:auto!important;top:.16in!important;bottom:auto!important;transform:none!important;transform-origin:left top!important;max-width:4in!important;max-height:1.15in!important}#printSheet.logo-top-right>.print-user-logo{position:absolute!important;left:auto!important;right:.2in!important;top:.16in!important;bottom:auto!important;transform:none!important;transform-origin:right top!important;max-width:4in!important;max-height:1.15in!important}#printSheet.logo-table-left .print-table>.print-user-logo,#printSheet.logo-table-right .print-table>.print-user-logo{position:static!important;order:-1!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;transform:none!important;flex:0 0 auto!important;max-width:4in!important;max-height:1.15in!important;margin-bottom:.04in!important;object-fit:contain!important}#printSheet.logo-table-left .print-table>.print-user-logo{align-self:flex-start!important;transform-origin:left bottom!important}#printSheet.logo-table-right .print-table>.print-user-logo{align-self:flex-end!important;transform-origin:right bottom!important}}
.pdf-preview-page .print-header,.pdf-export-page .print-header{flex:0 0 auto;margin-bottom:.375in}.pdf-preview-page .print-view,.pdf-export-page .print-view{flex-basis:1.22in;margin-left:-.08in;width:calc(100% + .16in)}.pdf-preview-page .print-sections,.pdf-export-page .print-sections{flex:0 0 1.52in;margin-top:auto;margin-left:-.08in;width:calc(100% + .16in)}.pdf-preview-page .print-section-cards,.pdf-export-page .print-section-cards{gap:.08in}.pdf-preview-page .print-section-card,.pdf-export-page .print-section-card{flex:1 1 0;width:auto;max-width:2.55in}.pdf-preview-page .print-section-card svg text,.pdf-export-page .print-section-card svg text{font-size:12px}.pdf-preview-page .print-table,.pdf-export-page .print-table{flex:0 0 auto;min-height:0}@media print{.print-header{flex:0 0 auto!important;margin-bottom:.375in!important}.print-view{flex:0 0 1.22in!important;margin-left:-.08in!important;width:calc(100% + .16in)!important}.print-sections{flex:0 0 1.52in!important;margin-top:auto!important;margin-left:-.08in!important;width:calc(100% + .16in)!important}.print-section-cards{gap:.08in!important}.print-section-card{flex:1 1 0!important;width:auto!important;max-width:2.55in!important}.print-section-card svg text{font-size:12px!important}.print-table{flex:0 0 auto!important;min-height:0!important}}
.pdf-preview-page .print-view,.pdf-export-page .print-view{flex:1 1 1.22in;min-height:.82in}.pdf-preview-page .print-sections,.pdf-export-page .print-sections{flex:1 1 1.52in;min-height:1in;margin-top:.12in}.pdf-preview-page .print-view+.print-view,.pdf-export-page .print-view+.print-view{margin-top:.12in}.pdf-preview-page .print-view+.print-view svg,.pdf-export-page .print-view+.print-view svg{transform:translateY(.07in)}.pdf-preview-page .print-section-card,.pdf-export-page .print-section-card{border-color:transparent}@media print{.print-view{flex:1 1 1.22in!important;min-height:.82in!important}.print-sections{flex:1 1 1.52in!important;min-height:1in!important;margin-top:.12in!important}.print-view+.print-view{margin-top:.12in!important}.print-view+.print-view svg{transform:translateY(.07in)!important}.print-section-card{border-color:transparent!important}}
.pdf-preview-page .print-section-card,.pdf-export-page .print-section-card{grid-template-rows:minmax(0,1fr) auto}.pdf-preview-page .print-section-card>b,.pdf-export-page .print-section-card>b{padding-top:2px;font-size:9pt;line-height:1}@media print{.print-section-card{grid-template-rows:minmax(0,1fr) auto!important}.print-section-card>b{padding-top:2px!important;font-size:9pt!important;line-height:1!important}}
.pdf-preview-page .print-section-card,.pdf-export-page .print-section-card{grid-template-rows:auto auto;align-content:end}.pdf-preview-page .print-section-card svg,.pdf-export-page .print-section-card svg{height:auto;align-self:end}.pdf-preview-page .print-section-card>b,.pdf-export-page .print-section-card>b{padding-top:0;margin-top:-1px}@media print{.print-section-card{grid-template-rows:auto auto!important;align-content:end!important}.print-section-card svg{height:auto!important;align-self:end!important}.print-section-card>b{padding-top:0!important;margin-top:-1px!important}}
.pdf-preview-page .print-header+.print-view,.pdf-export-page .print-header+.print-view{flex-basis:1.42in;min-height:1in}@media print{.print-header+.print-view{flex-basis:1.42in!important;min-height:1in!important}}
.pdf-preview-page .print-table,.pdf-export-page .print-table{margin-top:.375in}@media print{.print-table{margin-top:.375in!important}}
.pdf-preview-page .print-view+.print-view,.pdf-export-page .print-view+.print-view,.pdf-preview-page .print-view+.print-sections,.pdf-export-page .print-view+.print-sections{margin-top:.06in}@media print{.print-view+.print-view,.print-view+.print-sections{margin-top:.06in!important}}
.pdf-preview-page .print-header+.print-view,.pdf-export-page .print-header+.print-view,.pdf-preview-page .print-view+.print-view,.pdf-export-page .print-view+.print-view{flex:1 1 1.32in;min-height:.92in}@media print{.print-header+.print-view,.print-view+.print-view{flex:1 1 1.32in!important;min-height:.92in!important}}
.pdf-preview-page .print-title-description,.pdf-export-page .print-title-description{font-size:10pt;font-weight:700;letter-spacing:.01em;text-transform:uppercase}@media print{.print-title-description{font-size:10pt!important;font-weight:700!important;letter-spacing:.01em!important;text-transform:uppercase!important}}
.pdf-option-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px}.pdf-option-grid .option{min-width:0}.hide-axle-numbers .print-header+.print-view .axle-mark>text:not(.spacing-label){display:none}.hide-section-labels .print-view+.print-view .axle-mark text,.hide-section-labels .print-section-card>b{display:none}
