:root{color:#172f2b;font-synthesis:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#f4f7f4;font-family:system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.7}:focus-visible{outline-offset:3px;outline:3px solid #148776}h1,h2,p,figure{margin:0}p{line-height:1.6}.shell{width:min(1120px,100% - 40px);margin:0 auto}.site-header{border-bottom:1px solid #d8e3dc;justify-content:space-between;align-items:center;gap:14px;min-height:88px;display:flex}.brand,.header-actions{align-items:center;gap:12px;display:flex}.brand strong{letter-spacing:.09em;display:block}.brand div span{color:#50665d;font-size:.79rem;display:block}.mark{color:#c8f7df;background:#123c38;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.mark svg{width:23px;height:23px}.tag{color:#476754;background:#e2eee5;border-radius:100px;padding:5px 10px;font-size:.75rem;font-weight:700}main{min-height:min(68vh,660px);padding:40px 0}footer{color:#52675e;border-top:1px solid #d8e3dc;padding:24px 0;font-size:.84rem}.login-layout{grid-template-columns:1.15fr 1fr;gap:22px;display:grid}.login-intro,.login-card,.panel{border-radius:22px;padding:clamp(22px,4vw,44px)}.login-intro{color:#f5fff8;background:radial-gradient(at 85% 8%,#236855 0%,#0000 57%),#123c38;flex-direction:column;justify-content:end;min-height:400px;display:flex}.eyebrow{color:#367760;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:750}.login-intro .eyebrow{color:#b9ebc9}.login-intro h1,.dashboard-intro h1{letter-spacing:-.055em;margin:12px 0;font-size:clamp(2rem,5vw,4.1rem);line-height:1.04}.login-intro p:last-child{color:#dbf2e4;max-width:37ch}.login-card,.panel{background:#fff;border:1px solid #dbe5df}.login-card h2,.panel h2{letter-spacing:-.025em;font-size:1.45rem}.login-card>p,.panel>p{color:#52675e;margin:8px 0 18px}.login-card label{margin:16px 0 6px;font-weight:650;display:block}.login-card input{color:#172f2b;background:#fff;border:1px solid #bfcfc5;border-radius:9px;width:100%;padding:11px}.login-card .primary{width:100%;margin-top:22px}.primary,.secondary{border-radius:9px;min-height:42px;padding:9px 13px;font-weight:650}.primary{color:#fff;background:#126054;border:1px solid #126054}.primary:hover{background:#0e4c43}.secondary{color:#205348;background:#fff;border:1px solid #c6d7cd}.secondary:hover,.secondary[aria-pressed=true]{background:#e2f2e8}.notice{background:#fff0e8;border-radius:8px;margin:12px 0;padding:10px 12px;color:#8e3b24!important}.dashboard-intro{margin:0 0 22px}.dashboard-intro h1{font-size:clamp(2rem,5vw,3.4rem)}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 20px;display:grid}.metric{background:#fff;border:1px solid #dbe5df;border-radius:14px;padding:16px}.metric dt{color:#50665d;font-size:.86rem;font-weight:600}.metric dd{font-variant-numeric:tabular-nums;margin:3px 0 0;font-size:clamp(1.6rem,3vw,2.4rem);font-weight:750}.filters{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.inventory-search{margin-top:18px}.inventory-search label{margin-bottom:6px;font-weight:650;display:block}.inventory-search input{border:1px solid #bfcfc5;border-radius:9px;flex:220px;min-width:0;padding:8px 11px}.inventory-scroll{position:relative;overflow-x:auto}.inventory-scroll table{border-collapse:collapse;text-align:left;width:100%}.inventory-scroll th,.inventory-scroll td{vertical-align:top;border-bottom:1px solid #e3ebe6;padding:10px}.inventory-scroll thead{background:#eef5f0}.inventory-scroll tbody th{min-width:170px;font-weight:500}.inventory-scroll tbody th span{color:#52675e;font-size:.82rem;display:block}.inventory-pages{flex-wrap:wrap;align-items:center;gap:12px;margin-top:18px;display:flex}.inventory-pages button:disabled{cursor:default}.photo-list{margin:0;padding:0;list-style:none}.photo-list li,.viewer figcaption{justify-content:space-between;align-items:center;gap:12px;display:flex}.photo-list li{border-top:1px solid #e3ebe6;padding:11px 0}.photo-list li span{color:#52675e;overflow-wrap:anywhere;font-size:.84rem;display:block}.photo-list li button{flex:none}.viewer{background:#f1f7f3;border-radius:12px;margin:0 0 16px;padding:12px}.viewer img{object-fit:contain;width:100%;max-height:460px;margin-top:10px;display:block}@media (width<=720px){.shell{width:calc(100% - 28px)}.site-header{min-height:70px}main{padding-top:22px}.login-layout{grid-template-columns:1fr;gap:14px}.login-intro{min-height:220px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}button,input,select,textarea{font:inherit}.panel+.panel{margin-top:18px}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.record-form,.movement-filter{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:14px 0 20px;display:grid}.record-form{background:#f1f7f3;border-radius:14px;padding:18px}.record-form h3,.record-form .wide,.movement-filter .form-actions{grid-column:1/-1}.record-form h3{margin:0;font-size:1.1rem}.record-form label,.movement-filter label{gap:6px;font-weight:650;display:grid}.record-form input,.record-form select,.record-form textarea,.movement-filter input,.movement-filter select,.filters input{color:#172f2b;background:#fff;border:1px solid #bfcfc5;border-radius:9px;width:100%;min-width:0;padding:9px 11px;font-weight:400}.filters input{flex:220px;width:auto}.movement-filter{grid-template-columns:2fr 1fr 1fr;align-items:end}.form-actions{flex-wrap:wrap;gap:8px;display:flex}.danger{color:#8e3b24;background:#fff;border:1px solid #e5b7a5;border-radius:9px;min-height:42px;padding:9px 13px;font-weight:650}.danger:hover{background:#fff0e8}.success{background:#e4f5ea;border-radius:8px;margin:12px 0;padding:10px 12px;color:#155c3b!important}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=720px){.record-form,.movement-filter{grid-template-columns:1fr}}.pickup-line{background:#fff;border:1px solid #d3e2d8;border-radius:12px;grid-template-columns:2fr 1fr;align-items:end;gap:10px 16px;margin:0;padding:12px;display:grid}.pickup-line legend{padding:0 6px;font-weight:700}.pickup-line .wide{grid-column:1/-1}.pickup-line>button{justify-self:start}.cell-note{color:#52675e;font-size:.8rem;display:block}.cell-note.warn{color:#8e3b24;font-weight:650}.badge{color:#3d564c;background:#e9efeb;border-radius:100px;padding:3px 9px;font-size:.78rem;font-weight:700;display:inline-block}.badge.pending{color:#6f4f00;background:#fff4d6}.badge.approved{color:#1f4c7a;background:#e1eefc}.badge.completed{color:#155c3b;background:#e4f5ea}.badge.rejected,.badge.cancelled{color:#8e3b24;background:#fbe9e3}@media (width<=720px){.pickup-line{grid-template-columns:1fr}}.notice-box{gap:8px;margin:0 0 16px;display:grid}.notice-box ul{margin:0;padding-left:20px}.notice-box button{justify-self:start}.filters select{color:#172f2b;background:#fff;border:1px solid #bfcfc5;border-radius:9px;padding:9px 11px}.detail-list{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px;margin:0;display:grid}.detail-list dt{color:#50665d;font-size:.8rem;font-weight:700}.detail-list dd{overflow-wrap:anywhere;margin:2px 0 0}.detail-list .wide{grid-column:1/-1}.request-photo{object-fit:contain;background:#fff;border-radius:10px;max-width:min(100%,320px);max-height:240px;margin-top:4px;display:block}.approve-form{border-top:1px solid #d3e2d8;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding-top:14px;display:grid}.approve-form label{gap:6px;font-weight:650;display:grid}.approve-form input,.approve-form select,.approve-form textarea{background:#fff;border:1px solid #bfcfc5;border-radius:9px;width:100%;padding:9px 11px;font-weight:400}.approve-form .wide{grid-column:1/-1}.choice{border:0;gap:6px;margin:0;padding:0;display:grid}.choice legend{margin-bottom:4px;font-weight:650}.choice label,.record-form label.inline{align-items:center;gap:8px;font-weight:500;display:flex}.choice input,.record-form label.inline input{width:auto}.badge.diproses,.badge.tersedia{color:#1f4c7a;background:#e1eefc}.badge.disetujui{color:#155c3b;background:#e4f5ea}.badge.revisi{color:#5b2f86;background:#f1e8fb}.badge.ditolak{color:#8e3b24;background:#fbe9e3}@media (width<=720px){.detail-list,.approve-form{grid-template-columns:1fr}}.photo-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.photo-link{background:#fff;border:1px solid #d3e2d8;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:6px 6px 6px 10px;display:flex}.photo-link span{overflow-wrap:anywhere;font-size:.86rem}.metrics.compact{margin:12px 0 8px}.metrics.compact dd{font-size:clamp(1.3rem,2.4vw,1.8rem)}.metric dd.small{font-size:clamp(1rem,1.8vw,1.3rem)}.asset-filter{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px 14px;margin:14px 0 16px;display:grid}.asset-filter label{gap:6px;font-weight:650;display:grid}.asset-filter input,.asset-filter select{background:#fff;border:1px solid #bfcfc5;border-radius:9px;width:100%;padding:9px 11px;font-weight:400}.asset-filter .wide{grid-column:1/-1}.asset-filter label.inline{align-items:center;gap:8px;font-weight:500;display:flex}.asset-filter label.inline input{width:auto}.bulk-bar{background:#fff7e0;border:1px solid #f0dca0;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;padding:10px 12px;display:flex}.bulk-bar select{background:#fff;border:1px solid #bfcfc5;border-radius:9px;padding:9px 11px}.plain-list{margin:4px 0 0;padding-left:18px}.plain-list li+li{margin-top:6px}.file-button{cursor:pointer;justify-content:center;justify-self:start;align-items:center;display:inline-flex;position:relative}.file-button input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.file-button:focus-within{outline-offset:3px;outline:3px solid #148776}.photo-field .photo-row img{max-height:200px}.photo-link .request-photo{max-width:140px;max-height:90px}.badge.kondisi-baik,.badge.status-selesai{color:#155c3b;background:#e4f5ea}.badge.kondisi-rusak_ringan,.badge.status-menunggu{color:#6f4f00;background:#fff4d6}.badge.kondisi-rusak_berat,.badge.status-rusak{color:#8e3b24;background:#fbe9e3}.badge.status-proses{color:#1f4c7a;background:#e1eefc}@media (width<=720px){.asset-filter{grid-template-columns:1fr 1fr}}.section-title{margin:18px 0 4px;font-size:1rem}.year-select{background:#fff;border:1px solid #bfcfc5;border-radius:9px;min-height:42px;padding:9px 11px}.inventory-scroll td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.inventory-scroll tfoot{background:#f5f9f6}.chart{margin:0}.chart figcaption{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:6px;display:flex}.legend{color:#3d564c;gap:14px;font-size:.86rem;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:12px;height:12px;display:inline-block}.chart-readout{color:#52675e;min-height:1.5em;margin-bottom:4px;font-size:.86rem}.chart-readout b,.chart-readout strong{color:#172f2b}.chart svg{width:100%;height:auto;display:block;overflow:visible}.chart .grid{stroke:#e3ebe6;stroke-width:1px}.chart .baseline{stroke:#9fb3a8;stroke-width:1px}.chart .axis{fill:#52675e;font-size:12px}.chart .hit{fill:#0000}.chart .bar-group{cursor:default;outline:none}.chart .bar-group.active .hit,.chart .bar-group:focus-visible .hit{fill:#eef5f0}.chart-table{margin-top:8px;font-size:.86rem}.chart-table table{border-collapse:collapse;margin-top:6px}.chart-table th,.chart-table td{text-align:right;border-bottom:1px solid #e3ebe6;padding:4px 10px}.chart-table th[scope=row],.chart-table thead th:first-child{text-align:left}.ranked{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ranked li{outline-offset:2px;grid-template-columns:minmax(90px,38%) 1fr auto;align-items:center;gap:10px;font-size:.88rem;display:grid}.ranked-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ranked-track{background:#eef5f0;border-radius:4px;height:12px;overflow:hidden}.ranked-bar{border-radius:0 4px 4px 0;min-width:2px;height:100%;display:block}.ranked-value{font-variant-numeric:tabular-nums;color:#3d564c;white-space:nowrap}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.overview-grid .panel+.panel{margin-top:0}.queue-list{flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:flex}.queue-list strong{margin-right:4px;font-size:1.1rem}.insight-head{margin:24px 0 0}.panel+.overview-grid,.overview-grid+.panel{margin-top:18px}@media (width<=720px){.overview-grid{grid-template-columns:1fr}}.auth-links{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:14px;display:flex}.link{color:#126054;text-underline-offset:3px;background:0 0;border:0;padding:4px 0;font-weight:650;text-decoration:underline}.login-layout.single{grid-template-columns:minmax(0,480px);justify-content:center}.inline-select{align-items:center;gap:8px;font-weight:650;display:inline-flex}.inline-select select{background:#fff;border:1px solid #bfcfc5;border-radius:9px;padding:9px 11px}.record-form+.record-form{margin-top:14px}
