@font-face{font-family:OpenSans;src:url(/fonts/OpenSans-Regular.ttf)format("truetype");font-display:swap;font-weight:400}@font-face{font-family:OpenSans;src:url(/fonts/OpenSans-Semibold.ttf)format("truetype");font-display:swap;font-weight:600 800}:root{color:#1b2633;font-synthesis:none;letter-spacing:0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--primary:#087e8b;--navy:#17324d;--muted:#66788a;--border:#d7e0e7;--danger:#c63c3c;background:#f3f6f8;font-family:OpenSans,Malgun Gothic,Apple SD Gothic Neo,sans-serif;font-size:14px;line-height:1.5}*{box-sizing:border-box;letter-spacing:0;min-width:0}fieldset.edit-fields{border:0;min-inline-size:0;margin:0;padding:0}body{overscroll-behavior-y:contain;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:var(--primary);color:#fff;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:1px solid #0000;border-radius:6px;padding:11px 16px;font-weight:600}button:disabled{cursor:default;opacity:.48}button:hover:enabled{filter:brightness(.97)}button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #df8b29}button svg{vertical-align:middle;flex:none}a{color:var(--primary)}h1,h2,h3,p{margin:0}h1{font-size:22px;line-height:1.3}h2{font-size:19px;line-height:1.4}h3{font-size:14px}input,select,textarea{background:#fff;border:1px solid #cbd6de;border-radius:6px;outline:none;width:100%;min-width:0;max-width:100%;padding:12px;font-size:16px;display:block}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px #087e8b1a}textarea{resize:vertical;line-height:1.65}input[type=checkbox]{width:19px;height:19px;accent-color:var(--primary);flex:none;padding:0;display:inline-block}input:disabled{background:#f3f6f8}strong,b{font-weight:700}.muted{color:var(--muted);font-size:13px}.error{color:#b92d31;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0;font-size:13px}.secondary{color:#243945;border-color:var(--border);background:#fff}.danger{background:var(--danger)}.danger-outline{color:var(--danger);background:#fff;border-color:#e2b1b1}.danger-text{color:var(--danger)!important}.text-button{color:var(--primary);background:0 0;border:0;padding:8px 4px}.full-width{width:100%;margin-top:12px}.small,.small-button{justify-content:center;align-items:center;gap:5px;min-height:33px;padding:7px 11px;font-size:12px;display:inline-flex}.icon-button{width:36px;height:36px;color:inherit;background:0 0;border-radius:5px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.icon-button:hover:enabled{background:#e8eff3}.visually-hidden{clip-path:inset(50%);white-space:nowrap;position:absolute;overflow:hidden;width:1px!important;height:1px!important}.app-shell{background:#f3f6f8;max-width:1040px;min-height:100dvh;margin:auto}.page-header{background:#fff;border-bottom:1px solid #e2e8ee;align-items:center;gap:12px;min-height:76px;padding:16px 22px;display:flex}.page-header h1{flex:1;font-size:22px;font-weight:700}.header-actions{align-items:center;gap:8px;display:flex}.refresh-button{color:var(--muted);background:0 0;align-items:center;gap:6px;padding:8px 0 8px 8px;font-size:12px;display:flex}.sync-strip{color:#607580;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;min-height:50px;padding:14px 20px;font-size:12px;display:grid}.sync-state{white-space:nowrap}.sync-end{grid-column:3;justify-content:flex-end;align-items:center;display:flex}.bulk-trigger{color:var(--primary);white-space:nowrap;background:0 0;align-items:center;gap:4px;padding:5px 0;font-size:11px;display:inline-flex}.readonly{white-space:nowrap;font-size:11px}.date-controls{justify-content:center;align-items:center;gap:0;display:flex}.date-controls .icon-button{width:25px;height:28px}.date-button{color:#324b57;white-space:nowrap;background:0 0;padding:3px 2px;font-size:12px}.table-wrap{width:calc(100% - 32px);margin:0 auto 30px}.equipment-wrap{max-width:910px}.fluid-wrap,.meter-wrap{max-width:820px}.status-table{border-collapse:collapse;table-layout:fixed;color:#171d22;background:#fff;border:1px solid #202020;width:100%}.status-table th,.status-table td{overflow-wrap:anywhere;text-align:center;vertical-align:middle;border:1px solid #555;padding:0}.status-table th{background:#e7e7e7;height:38px;padding:4px;font-size:11px;font-weight:700}.status-table th.table-title{background:#fff;height:48px;font-size:18px}.status-table th button{color:inherit;font:inherit;background:0 0;width:100%;padding:3px}.status-table td{height:46px;font-size:11px}.status-table .cell-button,.status-table .identifier{color:inherit;width:100%;min-height:45px;font-size:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:0;border-radius:0;padding:6px 4px;font-weight:400;line-height:1.4}.status-table .cell-button:hover:enabled{filter:none;background:#e9f5f5}.status-table .identifier{font-weight:600}.category-cell{white-space:pre-wrap;padding:4px!important;font-size:10px!important}.eq-category{width:15%}.eq-id{width:20.7%}.eq-date,.eq-movement{width:15.7%}.eq-notes{width:32.9%}.equipment-table td:last-child{font-size:10px}.type1-text{color:#d85b00!important}.type4-text{color:#087a3e!important}.capacity{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;display:flex}.meter-table th{height:40px}.meter-identity{font-weight:600;padding:4px!important}.blank-cell{color:#c0c9cf}.empty{text-align:center;color:var(--muted);padding:38px 16px;font-size:13px}.home-header{background:var(--navy);color:#fff;align-items:center;gap:20px;min-height:146px;padding:22px;display:flex}.home-identity{flex:0 0 180px}.brand{align-items:center;gap:10px;display:flex}.brand img{object-fit:contain;border-radius:8px;width:42px;height:42px}.brand h1{font-size:24px}.home-sync{color:#c9dce3;background:0 0;padding:6px 0 0;font-size:12px;font-weight:400}.account-link{color:#c9dce3;background:0 0;align-items:center;gap:5px;padding:5px 0 0;font-size:11px;display:flex}.home-log{color:#fff;text-align:left;background:0 0;flex:1;padding:0;font-size:11px;font-weight:400;overflow:hidden}.home-log-title{color:#a5c6d0;justify-content:space-between;align-items:center;margin-bottom:5px;font-size:11px;display:flex}.home-log-line{white-space:nowrap;gap:8px;line-height:1.85;display:flex;overflow:hidden}.home-log-line time{color:#a5c6d0;flex:none;font-size:10px}.home-log-line>span{text-overflow:ellipsis;overflow:hidden}.home-menu{flex-direction:column;gap:12px;padding:24px 20px;display:flex}.menu-item{text-align:left;color:#18384b;background:#fff;border:1px solid #d7e0e7;border-radius:6px;align-items:center;gap:14px;min-height:78px;padding:19px 20px;display:flex;box-shadow:0 1px 2px #17324d08}.menu-item>span{flex:1;font-size:17px;font-weight:700}.menu-item>svg:first-child{color:#087e8b}.menu-fluid>svg:first-child{color:#c87a18}.menu-incidents>svg:first-child{color:#52769b}.menu-notices>svg:first-child{color:#a66261}.menu-item>svg:last-child{color:#8a9da9}.home-footer{justify-content:space-between;align-items:center;gap:10px;padding:0 22px 24px;display:flex}.home-footer button{color:#526a79;background:0 0;align-items:center;gap:5px;padding:8px 0;font-size:12px;display:flex}.pull-indicator{text-align:center;color:var(--primary);padding-top:10px;font-size:12px}.modal{color:inherit;width:min(360px,100vw - 28px);max-width:calc(100vw - 28px);max-height:calc(var(--visible-height,100dvh) - 32px);overscroll-behavior:contain;background:#fff;border:1px solid #d7e0e7;border-radius:8px;margin:clamp(14px,8dvh,70px) auto auto;padding:18px;overflow:hidden auto;box-shadow:0 12px 50px #0d263735}.modal.wide{width:min(440px,100vw - 28px)}.modal::backdrop{background:#0009}.modal-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.modal-heading h2{overflow-wrap:anywhere}.modal-heading .icon-button{color:#5e7381;width:28px;height:28px}.modal-subtitle{overflow-wrap:anywhere;margin:-5px 0 16px}.field{flex-direction:column;gap:6px;margin-bottom:14px;font-size:13px;display:flex}.field>span{color:#485e6c;font-weight:600}.paired-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.type-panel h3{text-align:center;margin-bottom:8px;font-size:15px}.type-current{text-align:center;margin-bottom:12px;font-size:11px}.dialog-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:18px;display:grid}.dialog-actions>button{min-height:46px;padding:10px 7px}.reload-input{width:100%;margin:5px 0 14px}.hold-button{-webkit-user-select:none;user-select:none;touch-action:none;-webkit-touch-callout:none;position:relative;overflow:hidden}.hold-button.holding:after{content:"";transform-origin:0;background:#e89b43;width:100%;height:3px;animation:2s linear hold;position:absolute;bottom:0;left:0}.hold-button.holding{filter:brightness(.95)}@keyframes hold{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.location-picker-band{padding:16px 18px 0}.place-select{color:#1e3440;background:#fff;border:1px solid #e2e8ed;justify-content:center;align-items:center;gap:8px;width:100%;min-height:56px;font-size:16px;display:flex}.location-groups{flex-direction:column;gap:14px;padding:0 18px 30px;display:flex}.place-group{background:#fff;border:1px solid #cbd6de;border-radius:6px;padding:12px 14px}.place-group-title{color:#304b58;background:0 0;padding:0 0 8px;font-size:15px}.equipment-tiles{flex-wrap:wrap;align-items:flex-start;gap:10px 14px;display:flex}.equipment-tile{color:#000;background:0 0;border:0;grid-template-rows:62px auto auto;place-items:center;gap:2px;width:100px;padding:2px 0 6px;font-size:12px;display:grid}.tile-short,.tile-motno{text-align:center;overflow-wrap:anywhere;width:100%;font-size:12px;font-weight:700;line-height:1.5;display:block}.gauge{justify-content:center;align-items:stretch;gap:6px;height:58px;display:inline-flex}.gauge-track{background:#edf2f2;border:1px solid #778f96;width:20px;display:inline-flex;position:relative;overflow:hidden}.gauge-fill{max-height:100%;position:absolute;bottom:0;left:1px;right:1px}.gauge-fill.type1{background:#e66e08}.gauge-fill.type4{background:#159653}.gauge.small{flex:none;gap:4px;height:42px}.gauge.small .gauge-track{width:15px}.truck-mark{color:#3c6474}.equipment-roster{max-height:min(52dvh,420px);margin:0 -5px;overflow-y:auto}.roster-row{cursor:pointer;border-bottom:1px solid #e4ebef;align-items:center;gap:12px;padding:12px 6px;display:flex;position:relative}.roster-row>input{opacity:0;position:absolute}.roster-row>span:nth-last-child(2),.roster-row>span:last-child:not(.gauge){flex:1}.roster-row strong{font-size:12px}.roster-row small{color:var(--muted);margin-top:2px;font-size:11px;display:block}.check-mark{border:1px solid #a4b5c1;border-radius:4px;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;flex:none!important}.check-mark.checked{background:var(--primary);border-color:var(--primary);color:#fff}.roster-row:focus-within .check-mark{outline-offset:2px;outline:2px solid #e49631}.place-picker{width:min(400px,100vw - 28px)}.place-options h3{color:var(--primary);padding:12px 0 5px;font-size:12px}.place-option{color:#233c49;background:#fff;border-bottom:1px solid #e4ebef;border-radius:0;justify-content:space-between;align-items:center;width:100%;padding:11px 4px;font-size:14px;display:flex}.place-option>span{color:var(--muted);font-size:11px}.calendar-modal{width:min(380px,100vw - 28px)}.calendar-month{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.weekday{text-align:center;color:var(--muted);padding:5px 0;font-size:12px}.calendar-day{color:#334a58;aspect-ratio:1;background:0 0;border:1px solid #0000;padding:0;font-size:13px;position:relative}.calendar-day.today{border-color:#db831b}.calendar-day.selected{background:var(--primary);color:#fff}.calendar-day i{background:#db831b;border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:calc(50% - 2px)}.calendar-day.selected i{background:#fff}.log-modal{width:min(650px,100vw - 28px)}.log-row{border-bottom:1px solid #e5ebef;align-items:flex-start;gap:12px;padding:12px 0;font-size:12px;display:flex}.log-row>span{overflow-wrap:anywhere;flex:1}.log-row time{color:var(--muted);flex:none}.record-count{color:var(--muted);white-space:nowrap;font-size:12px}.search-band{padding:16px 18px 0}.search-band input{font-size:14px}.post-refresh{color:var(--muted);justify-content:space-between;align-items:center;padding:8px 20px;font-size:12px;display:flex}.post-list{flex-direction:column;gap:10px;padding:0 18px 30px;display:flex}.post-card{text-align:left;color:#233746;border:1px solid var(--border);background:#fff;padding:16px;font-weight:400;display:block;position:relative}.post-card>strong{overflow-wrap:anywhere;font-size:16px;display:block}.post-card time{color:var(--muted);margin-top:4px;font-size:11px;display:block}.post-card p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:10px;font-size:13px;display:-webkit-box;overflow:hidden}.photo-count{color:var(--muted);margin-top:7px;font-size:11px;display:block}.post-detail-actions{justify-content:flex-end;gap:7px;margin:0 0 15px;display:flex}.post-content{white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:20px;font-size:14px;line-height:1.8}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.photo-button,.photo-placeholder{aspect-ratio:1.25;width:100%;color:var(--muted);background:#edf2f5;border-radius:5px;justify-content:center;align-items:center;padding:0;display:flex;overflow:hidden}.photo-button img,.photo-item>img{object-fit:cover;width:100%;height:100%}.photo-toolbar{align-items:center;gap:8px;margin:12px 0;display:flex}.photo-toolbar>span{color:var(--muted);flex:1;font-size:12px}.photo-item{aspect-ratio:1.25;border-radius:5px;position:relative;overflow:hidden}.photo-item .icon-button{color:#b13535;background:#fff;border-radius:50%;width:27px;height:27px;position:absolute;top:4px;right:4px}.viewer-modal{color:#fff;width:min(980px,100vw - 20px);max-width:calc(100vw - 20px);max-height:calc(var(--visible-height,100dvh) - 20px);background:#14232c;margin:10px auto auto;padding:12px}.viewer-modal .modal-heading .icon-button{color:#fff}.photo-stage{touch-action:none;-webkit-user-select:none;user-select:none;background:#0b161d;justify-content:center;align-items:center;height:min(72dvh,680px);display:flex;overflow:hidden}.photo-stage img{object-fit:contain;will-change:transform;transform-origin:50%;max-width:100%;max-height:100%}.viewer-nav{justify-content:space-between;align-items:center;padding-top:10px;display:flex}.viewer-nav .text-button{color:#bfd8df}.admin-content,.settings-content{max-width:760px;margin:auto;padding:18px}.admin-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.admin-tabs button{border:1px solid var(--border);color:#3a5563;background:#fff;padding:10px 4px;font-size:13px}.admin-tabs button.active,.sub-tabs button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.sub-tabs{gap:8px;padding-top:14px;display:flex}.sub-tabs button{color:#344d5d;border:1px solid var(--border);background:#fff;padding:7px 13px;font-size:12px}.section-toolbar{justify-content:space-between;align-items:center;margin:15px 0 10px;display:flex}.section-toolbar strong{font-size:13px}.admin-list{border-top:1px solid var(--border)}.admin-row{border-bottom:1px solid var(--border);background:#fff;flex-wrap:wrap;align-items:center;min-height:54px;padding:4px 8px;display:flex}.admin-row.selected{background:#e9f4f5}.admin-select{color:#29414f;text-align:left;overflow-wrap:anywhere;background:0 0;flex:1;min-width:120px;padding:12px 5px;font-size:13px}.row-actions{justify-content:flex-end;align-items:center;gap:3px;display:flex}.row-actions .icon-button{width:31px;height:33px}.user-row{border-bottom:1px solid var(--border);padding:14px 0;font-size:13px}.user-row>span.muted{overflow-wrap:anywhere;font-size:11px;display:block}.status-chip{color:#47737a;background:#e9f1f1;border-radius:4px;margin:6px 0;padding:2px 6px;font-size:10px;display:inline-block}.status-chip.pending{color:#9c6517;background:#fff2d9}.status-chip.blocked{color:#ac3e3e;background:#fce8e8}.user-actions{flex-wrap:wrap;gap:6px;display:flex}.budget-row{gap:8px;margin:15px 0;font-size:13px;display:grid}.budget-row progress{width:100%;accent-color:var(--primary)}.budget-row>span{font-size:12px}.settings-section{border-bottom:1px solid var(--border);padding:6px 0 20px}.settings-section h2{margin-bottom:10px;font-size:17px}.setting-row{border-bottom:1px solid #e2e9ee;justify-content:space-between;align-items:center;gap:16px;padding:17px 0;font-size:14px;display:flex}.account-details{grid-template-columns:75px minmax(0,1fr);gap:15px 20px;margin:6px 0 30px;font-size:14px;display:grid}.account-details dt{color:var(--muted)}.account-details dd{overflow-wrap:anywhere;margin:0}.auth-screen{background:#f3f6f8;justify-content:center;align-items:center;min-height:100dvh;padding:24px 20px;display:flex}.auth-panel{text-align:center;width:100%;max-width:360px}.auth-logo{object-fit:contain;width:145px;height:145px;margin:0 auto 10px}.auth-panel>h1{color:var(--navy);margin-bottom:30px;font-size:29px}.auth-panel form{text-align:left}.auth-panel form h2{text-align:center;margin-bottom:20px;font-size:18px}.social-buttons{flex-direction:column;gap:12px;display:flex}.social-buttons>button{justify-content:center;align-items:center;gap:12px;min-height:49px;font-size:15px;display:flex}.google-button{color:#243948;background:#fff;border:1px solid #cbd6de}.google-button img{width:20px;height:20px}.apple-button{background:#15191c}.apple-symbol{font-size:22px;line-height:1}.remember{color:#526875;justify-content:center;align-items:center;gap:8px;margin:20px 0;font-size:13px;display:flex}.recovery-link{color:#677b89;font-size:12px}.legal-links{justify-content:center;align-items:center;gap:20px;margin:25px 0 10px;font-size:11px;display:flex}.legal-links a{color:#718391;text-decoration:none}.approval-state{padding:10px 0}.approval-state>svg{color:var(--primary);margin-bottom:15px}.approval-state h2{margin-bottom:10px;font-size:18px}.approval-state .muted{margin-bottom:20px}.boot{flex-direction:column;justify-content:center;align-items:center;gap:8px;height:100dvh;display:flex}.boot img{object-fit:contain;width:110px;height:110px}.boot p{color:var(--navy);font-size:24px;font-weight:700}.toast{bottom:max(20px, env(safe-area-inset-bottom));color:#fff;z-index:99999;background:#233e50;border-radius:6px;width:max-content;max-width:calc(100vw - 30px);padding:13px 20px;font-size:13px;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 3px 20px #0002}.connection-banner{color:#81531b;background:#fff0d4;padding:9px 16px;font-size:12px}.preview-badge{color:#49746a;text-align:center;background:#e5efed;padding:3px;font-size:10px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width>=760px){.app-shell{border-left:1px solid #d7e0e7;border-right:1px solid #d7e0e7}.home{max-width:860px;margin:auto}.home-header{border-radius:0 0 6px 6px;min-height:165px;padding:30px}.home-identity{flex-basis:240px}.home-menu{gap:13px;padding:28px 30px}.menu-item{min-height:80px}.home-footer{padding:0 32px 30px}.home-log,.home-log-title{font-size:12px}.page-header{min-height:84px;padding:20px 28px}.table-wrap{width:calc(100% - 48px)}.status-table td{height:50px;font-size:13px}.status-table .cell-button,.status-table .identifier{min-height:49px}.status-table th,.equipment-table td:last-child{font-size:12px}.category-cell{font-size:12px!important}.sync-strip{padding:16px 28px}.equipment-tile{width:105px}.tile-short,.tile-motno{font-size:13px}.location-groups{padding:0 26px 30px}.location-picker-band{padding:20px 26px 0}.post-list{padding:0 26px 30px}}@media (width<=430px){.home-header{gap:12px;min-height:140px;padding:18px 16px}.home-identity{flex-basis:126px}.brand{gap:6px}.brand img{width:30px;height:30px}.brand h1{font-size:21px}.home-log{font-size:10px}.home-log-line{gap:5px}.home-log-line time{font-size:9px}.home-menu{gap:10px;padding:18px 16px}.menu-item{gap:12px;min-height:70px;padding:15px 16px}.menu-item>span{font-size:15px}.page-header{gap:8px;min-height:72px;padding:15px}.page-header h1{font-size:18px}.page-header .icon-button{width:30px}.header-actions{gap:5px}.refresh-button{font-size:11px}.refresh-button svg{display:none}.sync-strip{gap:3px;padding:12px 15px;font-size:11px}.bulk-trigger{font-size:10px}.date-button{font-size:11px}.date-controls .icon-button{width:21px}.readonly{font-size:10px}.table-wrap{width:calc(100% - 24px)}.status-table th{height:34px;font-size:10px}.status-table td{font-size:10px}.status-table .cell-button{padding:5px 2px}.equipment-table td:last-child{font-size:10px}.capacity{gap:1px}.record-count{font-size:11px}.home-footer{gap:5px;padding:0 17px 24px}.home-footer button{font-size:11px}.equipment-tiles{gap:8px 5px}.equipment-tile{width:92px}.tile-short,.tile-motno{font-size:11px}.paired-fields{gap:10px}.modal{margin-top:14px;padding:15px}.modal-heading h2{font-size:18px}.type-current{font-size:10px}.field{font-size:12px}.field input{padding:11px 9px}.post-detail .modal-heading h2{font-size:17px}}@media (width<=340px){.paired-fields{grid-template-columns:minmax(0,1fr)}.home-identity{flex-basis:116px}.home-header{gap:9px;padding:16px 12px}.home-log-line time{display:none}.page-header h1{font-size:16px}.bulk-trigger{font-size:9px}.date-controls .icon-button{width:18px}.sync-strip{padding:10px 12px;font-size:10px}.date-button{font-size:10px}.equipment-tile{width:83px}.tile-short,.tile-motno{font-size:10px}.row-actions{width:100%}.home-footer button{font-size:10px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important}}
