@font-face{font-family:"PF Agora Sans Pro";src:url("brand/PFAgoraSansPro-Light.ttf") format("truetype");font-weight:300 500;font-style:normal;font-display:swap}
@font-face{font-family:"PF Agora Sans Pro";src:url("brand/PFAgoraSansPro-Bold.ttf") format("truetype");font-weight:600 800;font-style:normal;font-display:swap}
@font-face{font-family:"PF Agora Sans Pro";src:url("brand/PFAgoraSansPro-UltraBlack.ttf") format("truetype");font-weight:900;font-style:normal;font-display:swap}
:root{--yellow:#f4c400;--yellow-dark:#d8ae00;--ink:#171717;--muted:#72777c;--line:#e3e5e7;--canvas:#f3f4f5;--white:#fff;--green:#1f8a5b;--red:#b83c34;--orange:#b96e00}
*{box-sizing:border-box}
html{background:var(--canvas)}
body{margin:0;color:var(--ink);background:var(--canvas);font-family:"PF Agora Sans Pro","Segoe UI",Arial,sans-serif;font-size:14px;font-weight:300;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
input,select,textarea{width:100%;border:1px solid #d9dcde;border-radius:8px;background:#fff;outline:none;padding:10px 11px;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{border-color:#b99a00;box-shadow:0 0 0 3px rgba(244,196,0,.13)}
textarea{resize:vertical;line-height:1.5}
label{display:flex;flex-direction:column;gap:7px;color:#4c5155;font-size:12px;font-weight:650}
label small{color:#92969a;font-size:10px;font-weight:300;line-height:1.35}
.app-shell{min-height:100vh;display:grid;grid-template-columns:235px minmax(0,1fr);grid-template-rows:68px minmax(calc(100vh - 68px),auto)}
.topbar{grid-column:1/-1;position:sticky;top:0;z-index:30;height:68px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #dfe1e3;padding:0 24px}
.brand{display:flex;align-items:center;gap:15px}.brand img{width:92px;height:50px;object-fit:contain}.brand>span{width:1px;height:25px;background:#dedfe1}.brand small{color:#6f7479;font-size:13px}
.account{display:flex;align-items:center;gap:10px}.account>span:nth-child(2){display:flex;flex-direction:column;line-height:1.25}.account b{font-size:12px}.account small{color:#8a8f93;font-size:9px;margin-top:2px}.account>a{margin-left:8px;border-left:1px solid var(--line);padding-left:18px;color:#6e7377;font-size:11px}.avatar{width:35px;height:35px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--yellow);font-size:11px;font-weight:800}
.sidebar{grid-column:1;grid-row:2;position:sticky;top:68px;height:calc(100vh - 68px);display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line);padding:18px 13px}.sidebar nav{display:grid;gap:4px}.sidebar nav a{height:42px;display:flex;align-items:center;gap:11px;border-radius:8px;color:#50555a;padding:0 12px;font-size:13px;font-weight:650}.sidebar nav a:hover{background:#f5f5f3}.sidebar nav a.active{background:#fff5bd;color:#191919}.sidebar nav a i{width:22px;height:22px;display:grid;place-items:center;border:1px solid #dadddf;border-radius:6px;background:#fff;font-style:normal;font-size:10px}.sidebar nav a.active i{border-color:#e4c83c;background:var(--yellow)}
.sidebar-help{margin-top:auto;display:flex;flex-direction:column;border-top:1px solid var(--line);padding:17px 9px 5px}.sidebar-help b{font-size:10px}.sidebar-help a{margin:7px 0 4px;font-size:12px;font-weight:700}.sidebar-help small{color:#969a9e;font-size:9px}
.workspace{grid-column:2;grid-row:2;min-width:0;padding:29px clamp(20px,3vw,46px) 60px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.page-head h1{margin:5px 0 5px;font-size:28px;letter-spacing:-.025em}.page-head>div:first-child>p:last-child{margin:0;color:#858a8e;font-size:11px}.eyebrow{margin:0!important;color:#8b7600!important;font-size:9px!important;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.page-actions,.form-actions,.document-submit,.row-actions{display:flex;align-items:center;gap:8px}.page-actions{flex-wrap:wrap;justify-content:flex-end}
.primary-button,.secondary-button{min-height:40px;border-radius:8px;padding:0 16px;font-size:11px;font-weight:750;display:inline-flex;align-items:center;justify-content:center}.primary-button{border:1px solid var(--yellow);background:var(--yellow)}.primary-button:hover{background:#ffd10b}.secondary-button{border:1px solid #d8dbdd;background:#fff}.secondary-button:hover{border-color:#baa000;background:#fffdf1}.button-link{width:auto}.icon-button{width:30px;height:30px;display:grid;place-items:center;border:1px solid #dfe1e3;border-radius:7px;background:#fff;font-size:12px}.icon-button:hover{border-color:#b99a00}.icon-button.danger{color:var(--red)}
.panel,.metric-card{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 1px 1px rgba(20,20,20,.02)}.panel{padding:20px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.panel-head h2{margin:0;font-size:15px}.panel-head p{margin:5px 0 0;color:#969a9e;font-size:9px}.panel-head>a{color:#786500;font-size:10px;font-weight:700}.panel-head>b{font-size:15px}
.flash{border-radius:8px;padding:11px 13px;margin-bottom:16px;font-size:11px;font-weight:650}.flash.success{color:#166643;background:#e9f7f0;border:1px solid #b9e2ce}.flash.error{color:#923129;background:#fff0ee;border:1px solid #efc4bf}
.filter-strip{display:flex;align-items:flex-end;gap:10px;margin-bottom:14px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px}.filter-strip label{min-width:200px;flex:1;color:#858a8e;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.filter-strip input,.filter-strip select{height:39px;padding-top:7px;padding-bottom:7px;color:#282b2e;font-size:11px;text-transform:none;letter-spacing:normal}.document-filter label:first-of-type{flex:2}.document-filter .secondary-button{height:39px}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:13px}.metric-card{min-height:118px;display:flex;flex-direction:column;position:relative;overflow:hidden;padding:18px 19px}.metric-card small{color:#7f8488;font-size:10px;font-weight:650}.metric-card strong{margin:11px 0 7px;font-size:clamp(20px,2vw,27px);white-space:nowrap;letter-spacing:-.025em}.metric-card span{color:#969a9e;font-size:9px}.metric-card.primary-metric:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--yellow)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(330px,.85fr);gap:13px;margin-bottom:13px}.table-panel{margin-bottom:13px;padding-bottom:5px;overflow:hidden}
.line-chart{width:100%;overflow:hidden}.line-chart svg{display:block;width:100%;height:210px}.line-chart line{stroke:#e9ebec;stroke-width:1}.line-chart polyline{fill:none;stroke:#d7ad00;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.line-chart circle{fill:#fff;stroke:#d7ad00;stroke-width:3}.line-chart text{fill:#92969a;font-size:9px}.chart-empty{min-height:190px;display:grid;place-items:center;color:#969a9e;text-align:center;font-size:11px}
.donut-layout{min-height:195px;display:grid;grid-template-columns:155px 1fr;align-items:center;gap:18px}.donut{width:145px;height:145px;display:grid;place-items:center;position:relative;border-radius:50%;background:#eceeef}.donut:before{content:"";position:absolute;inset:24px;border-radius:50%;background:#fff}.donut span{position:relative;z-index:1;display:flex;flex-direction:column;text-align:center}.donut b{font-size:11px}.donut small{color:#999da1;font-size:8px;margin-top:3px}.breakdown-list{display:grid;gap:13px}.breakdown-list>div{display:flex;align-items:center;gap:8px}.breakdown-list i{width:7px;height:28px;border-radius:2px}.breakdown-list span{display:flex;flex-direction:column;flex:1}.breakdown-list b{font-size:9px}.breakdown-list small{color:#969a9e;font-size:8px;margin-top:3px}.breakdown-list em{font-style:normal;font-size:10px;font-weight:750}
.data-table{width:calc(100% + 40px);margin-left:-20px;overflow-x:auto}.table-row{display:grid;align-items:center;min-width:820px;min-height:62px;border-top:1px solid #eaeced;padding:9px 20px}.table-row>span{min-width:0;font-size:10px}.table-row>span:not(.row-actions){display:flex;flex-direction:column}.table-row b{font-size:11px}.table-row small{color:#969a9e;font-size:8px;margin-top:4px;line-height:1.35}.table-head{min-height:32px;border-top:0;background:#fafafa;color:#989ca0;font-size:8px;text-transform:uppercase;letter-spacing:.06em}.table-head span{font-size:8px}.fleet-table .table-row{grid-template-columns:minmax(230px,1.35fr) minmax(130px,.8fr) minmax(130px,.8fr) minmax(100px,.65fr) minmax(100px,.65fr) 38px}.compact-table .table-row{grid-template-columns:minmax(210px,1.3fr) minmax(170px,1fr) 75px 90px 85px}.machine-admin-table .table-row{grid-template-columns:minmax(220px,1.3fr) 125px 120px 85px 85px}.service-table .table-row{grid-template-columns:150px minmax(390px,2fr) minmax(150px,.7fr);line-height:1.45}.documents-table .table-row{grid-template-columns:minmax(190px,1.2fr) 90px minmax(180px,1.1fr) 130px minmax(130px,.8fr) 112px}.documents-table .table-row>span:first-child{display:flex;flex-direction:row;align-items:center;gap:9px}.documents-table .row-actions{flex-direction:row;gap:5px}.row-actions form{margin:0}.row-actions{flex-direction:row!important;justify-content:flex-end}.pdf-badge{width:30px;height:35px;display:grid;place-items:center;flex:0 0 auto;border-radius:5px;color:#9d3e36;background:#f8e8e6;font-style:normal;font-size:7px;font-weight:850}.status-pill{display:inline-flex;width:max-content;border-radius:999px;background:#fff2b5;color:#6d5b00;padding:5px 8px;font-style:normal;font-size:8px;font-weight:700}.muted-row{opacity:.55}.table-empty{min-height:90px;display:grid;place-items:center;color:#969a9e;font-size:11px;border-top:1px solid #eaeced}
.recommendations-panel{max-height:380px;overflow-y:auto}.recommendation{display:grid;grid-template-columns:9px 1fr;gap:10px;border-top:1px solid #eaeced;padding:12px 0}.recommendation:first-of-type{border-top:0}.recommendation>i{width:8px;height:8px;margin-top:3px;border-radius:50%;background:var(--orange)}.recommendation span{display:flex;flex-direction:column}.recommendation b{font-size:10px}.recommendation small{color:#74797d;font-size:9px;line-height:1.5;margin-top:5px}
.management-grid{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(560px,1.3fr);gap:13px}.form-panel{align-self:start}.stack-form{display:grid;gap:14px}.form-grid{display:grid;gap:12px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid .full{grid-column:1/-1}.form-actions{margin-top:3px}.info-note{border-radius:8px;background:#f3f4f5;color:#6d7276;padding:11px 12px;font-size:9px;line-height:1.45}
.document-form{display:grid;gap:13px;max-width:1100px}.form-section{display:grid;grid-template-columns:42px 1fr;gap:17px}.section-number{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--yellow);font-weight:800}.form-content{display:grid;gap:15px}.form-content h2{margin:3px 0 -8px;font-size:15px}.form-content>p{margin:0;color:#919599;font-size:10px}.inline-button{align-self:flex-start;border:0;background:transparent;color:#796500;padding:0;font-size:9px;font-weight:750;text-align:left}.file-drop{min-height:130px;display:flex;align-items:center;justify-content:center;flex-direction:row;border:1.5px dashed #cfd2d4;border-radius:10px;background:#fafafa;padding:20px;cursor:pointer}.file-drop:hover{border-color:#caa200;background:#fffdf0}.file-drop input{position:absolute;width:1px;height:1px;opacity:0}.file-drop>i{width:43px;height:50px;display:grid;place-items:center;flex:0 0 auto;border-radius:6px;color:#9d3e36;background:#f7e7e5;font-style:normal;font-size:8px;font-weight:850;margin-right:13px}.file-drop>span{display:flex;flex-direction:column}.file-drop b{font-size:11px}.file-drop small{color:#919599;margin-top:5px}.document-submit{justify-content:flex-end;position:sticky;bottom:0;z-index:10;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);padding:12px}
.users-panel{padding-bottom:8px}.user-row{display:flex;align-items:center;gap:11px;border-top:1px solid var(--line);padding:13px 0}.user-row:first-of-type{border-top:0}.user-copy{display:flex;flex-direction:column;flex:1}.user-copy b{font-size:11px}.user-copy small{color:#919599;font-size:9px;margin-top:4px}.user-row details{position:relative}.user-row summary{list-style:none;border:1px solid #dfe1e3;border-radius:7px;background:#fff;padding:7px 10px;cursor:pointer;font-size:9px}.user-actions{position:absolute;right:0;top:34px;z-index:10;width:270px;border:1px solid var(--line);border-radius:9px;background:#fff;box-shadow:0 12px 35px rgba(0,0,0,.13);padding:11px}.user-actions form{display:flex;gap:6px;margin:5px 0}.user-actions input{height:36px;font-size:10px}.user-actions button{min-height:36px;white-space:nowrap;padding:0 10px}
.empty-state{min-height:260px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center}.empty-state h2{margin:0;font-size:20px}.empty-state p{color:#83888c;margin:8px 0 18px}.empty-state .form-actions{justify-content:center}.check-row{display:flex;align-items:flex-start;flex-direction:row!important;gap:9px}.check-row input{width:17px;height:17px;margin:1px 0 0}.check-row span{font-weight:400;line-height:1.4}
.login-body,.install-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 50% 0,#fff6bf 0,transparent 35%),#f2f3f4;padding:24px}.login-card,.install-card{width:min(430px,100%);border:1px solid var(--line);border-radius:14px;background:#fff;box-shadow:0 22px 70px rgba(0,0,0,.09);padding:32px}.login-card>img,.install-card>img{width:110px;height:58px;object-fit:contain;object-position:left;margin-bottom:22px}.login-card h1,.install-card h1{font-size:24px;margin:6px 0 6px}.login-card>p:not(.eyebrow),.install-card>p:not(.eyebrow){color:#7f8488;font-size:11px;line-height:1.45;margin:0 0 19px}.install-card{width:min(720px,100%)}.install-form{display:grid;gap:17px}.install-form fieldset{border:1px solid var(--line);border-radius:10px;padding:16px}.install-form legend{padding:0 7px;font-size:12px;font-weight:750}.install-next{color:#555a5e;line-height:1.7;padding-left:20px;font-size:12px}.button-link.primary-button{color:#171717}
@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.management-grid{grid-template-columns:1fr}.form-grid.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.app-shell{display:block}.topbar{height:60px;padding:0 14px}.brand>span,.brand small,.account>span:nth-child(2){display:none}.brand img{width:78px;height:43px}.account>a{padding-left:12px;margin-left:0}.sidebar{position:sticky;top:60px;z-index:25;height:auto;display:block;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:7px 10px}.sidebar nav{display:flex;gap:6px}.sidebar nav a{min-width:max-content;height:38px;padding:0 10px}.sidebar-help{display:none}.workspace{padding:23px 14px 45px}.page-head{align-items:flex-start;flex-direction:column}.page-actions{width:100%;justify-content:flex-start}.filter-strip{align-items:stretch;flex-wrap:wrap}.filter-strip label{min-width:170px}.dashboard-grid{grid-template-columns:1fr}.donut-layout{grid-template-columns:140px 1fr}.management-grid{grid-template-columns:1fr}.document-submit{position:static}.table-panel{overflow:visible}}
@media(max-width:560px){.account .avatar{display:none}.page-head h1{font-size:23px}.page-actions{flex-direction:column;align-items:stretch}.page-actions .button-link{width:100%}.metric-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{min-height:105px;padding:14px}.metric-card strong{font-size:18px}.panel{padding:15px}.data-table{width:calc(100% + 30px);margin-left:-15px}.donut-layout{grid-template-columns:1fr}.donut{width:125px;height:125px;margin:auto}.breakdown-list{grid-template-columns:1fr 1fr}.form-grid.two,.form-grid.four{grid-template-columns:1fr}.form-section{grid-template-columns:1fr}.section-number{width:30px;height:30px}.document-submit{flex-direction:column-reverse}.document-submit>*{width:100%}.filter-strip label{min-width:100%;}.login-card,.install-card{padding:24px 18px}.user-actions{right:-5px;width:250px}}

