*{box-sizing:border-box;margin:0;padding:0}body{color:#2b2118;background:#fdfaf5;min-height:100vh;font-family:Segoe UI,Arial,sans-serif}.app-shell{min-height:100vh;display:flex}.sidebar{color:#fef3ec;background:linear-gradient(#9a3412 0%,#7c2d12 100%);flex-direction:column;flex-shrink:0;width:230px;height:100vh;padding:20px 0;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff26;align-items:center;gap:10px;padding:0 22px 18px;font-size:18px;font-weight:700;display:flex}.sidebar-menu{flex-direction:column;flex:1;gap:2px;padding:16px 12px;display:flex}.sidebar-link{color:#fcd9c0;border-radius:10px;align-items:center;gap:12px;padding:11px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:all .15s;display:flex}.sidebar-link:hover{color:#fff;background:#ffffff1a}.sidebar-link-aktif{color:#fff;background:#c2410c}.sidebar-icon{align-items:center;display:flex}.sidebar-logout{color:#fcd9c0;cursor:pointer;background:0 0;border:none;border-top:1px solid #ffffff26;border-radius:0;align-items:center;gap:12px;margin:0 12px;padding:11px 14px;font-family:inherit;font-size:14px;font-weight:500;transition:all .15s;display:flex}.sidebar-logout:hover{color:#fff}.app-main{flex-direction:column;flex:1;min-width:0;display:flex}.app-content{width:100%;max-width:900px;padding:24px 28px 60px}.topbar{background:#fff;border-bottom:1px solid #f0e3d5;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:18px 28px;display:flex}.topbar-title{color:#8c2f0a;letter-spacing:-.2px;font-size:18px;font-weight:700}.topbar-sub{color:#6b5a4c;margin-top:2px;font-size:13px}.topbar-user{align-items:center;gap:12px;display:flex}.topbar-user-info{flex-direction:column;align-items:flex-end;line-height:1.3;display:flex}.topbar-user-name{color:#2b2118;font-size:14px;font-weight:600}.topbar-avatar{color:#9a3412;background:#fbe8dc;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:15px;font-weight:700;display:flex}.role-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:99px;margin-top:2px;padding:2px 8px;font-size:11px;font-weight:700}.role-admin{color:#9a3412;background:#fbe8dc}.role-petugas{color:#6b5a4c;background:#f1ede8}.card{background:#fff;border:1px solid #f3e7db;border-radius:16px;margin-bottom:24px;padding:28px;box-shadow:0 6px 24px #2b211814}.card h2{color:#8c2f0a;margin-bottom:20px;font-size:19px;font-weight:600}.form-group{margin-bottom:16px}.form-group label{color:#6b5a4c;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.input{color:#2b2118;background:#fffaf5;border:1.5px solid #ecdbc9;border-radius:10px;outline:none;width:100%;padding:12px 14px;font-family:inherit;font-size:15px;transition:all .2s}.input:focus{background:#fff;border-color:#d9480f;box-shadow:0 0 0 3px #d9480f1f}.btn{color:#fff;cursor:pointer;background:#c2410c;border:none;border-radius:10px;width:100%;padding:13px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s}.btn:hover{background:#9a3412}.btn-hapus{color:#b91c1c;cursor:pointer;background:#fee2e2;border:none;border-radius:8px;margin-top:10px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s}.btn-hapus:hover{background:#fecaca}.pesan{color:#8c2f0a;text-align:center;background:#fff1e6;border-radius:8px;margin-top:14px;padding:10px 14px;font-size:14px}.section-title{color:#8c2f0a;margin-bottom:16px;font-size:19px;font-weight:600}.kartu{background:#fff;border:1px solid #f3e7db;border-left:4px solid #d9480f;border-radius:14px;margin-bottom:12px;padding:18px 20px;transition:transform .2s;box-shadow:0 3px 12px #2b21180f}.kartu:hover{transform:translate(3px)}.kartu-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.kartu h3{color:#5c2a0c;font-size:17px}.kartu p{color:#6b5a4c;margin-bottom:3px;font-size:14px}.kosong{text-align:center;color:#b7a794;padding:30px;font-size:15px}.badge{text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700}.badge-peralatan{color:#1e40af;background:#dbeafe}.badge-bahan{color:#166534;background:#dcfce7}.badge-warning{color:#92400e;background:#fef3c7}.badge-kondisi-baik{color:#166534;background:#dcfce7}.badge-kondisi-rusak_ringan{color:#92400e;background:#fef3c7}.badge-kondisi-rusak_berat{color:#991b1b;background:#fee2e2}.badge-kondisi-tidak_layak{color:#374151;background:#e5e7eb}.kartu-link{color:#5c2a0c;text-decoration:none}.kartu-link:hover{text-decoration:underline}.kartu-aksi{align-items:center;gap:8px;margin-top:12px;display:flex}.kartu-aksi .btn-hapus{margin-top:0}.btn-detail{color:#8c2f0a;background:#fff1e6;border:1px solid #f0d3bd;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s}.btn-detail:hover{background:#ffe4d1}.link-kembali{color:#8c2f0a;margin-bottom:16px;font-size:14px;font-weight:600;text-decoration:none;display:inline-block}.link-kembali:hover{text-decoration:underline}.detail-card .kartu-head{margin-bottom:18px}.detail-baris{border-bottom:1px solid #f3e7db;justify-content:space-between;gap:16px;padding:10px 0;font-size:14px;display:flex}.detail-baris:last-child{border-bottom:none}.detail-baris span{color:#6b5a4c}.detail-baris b{color:#2b2118;text-align:right}.detail-hint{color:#6b5a4c;margin-bottom:14px;font-size:13px}.kondisi-aksi{flex-wrap:wrap;gap:8px;display:flex}.btn-kondisi{color:#8c2f0a;cursor:pointer;background:#fff;border:1.5px solid #f0d3bd;border-radius:8px;padding:10px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s}.btn-kondisi:hover:not(:disabled){background:#fff1e6}.btn-kondisi-aktif,.btn-kondisi:disabled{color:#fff;cursor:default;background:#c2410c;border-color:#0000}.auth-page{background:#fdfaf5;align-items:stretch;min-height:100vh;display:flex}.auth-card{background:#fff;border-radius:20px;grid-template-columns:1fr 1fr;width:100%;max-width:960px;min-height:520px;margin:auto;display:grid;overflow:hidden;box-shadow:0 20px 50px #7c2d1226}.auth-brand{color:#fef3ec;background:linear-gradient(160deg,#9a3412 0%,#7c2d12 100%);flex-direction:column;justify-content:center;padding:48px 40px;display:flex}.auth-brand-icon{margin-bottom:20px}.auth-brand h2{margin-bottom:12px;font-size:26px;font-weight:700}.auth-brand p{color:#fcd9c0;font-size:14px;line-height:1.7}.auth-form-wrap{flex-direction:column;justify-content:center;padding:48px 44px;display:flex}.auth-title{color:#8c2f0a;margin:0 0 4px;font-size:26px}.auth-sub{color:#6b5a4c;margin:0 0 20px;font-size:13px;line-height:1.6}.auth-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;margin-bottom:14px;padding:10px 12px;font-size:13px}.btn-block{width:100%;margin-top:6px}.auth-foot{text-align:center;color:#6b5a4c;margin-top:16px;font-size:13px}.auth-foot a{color:#d9480f;font-weight:600;text-decoration:none}.auth-foot a:hover{text-decoration:underline}@media (width<=720px){.auth-card{grid-template-columns:1fr;max-width:420px;min-height:auto}.auth-brand{display:none}.app-shell{flex-direction:column}.sidebar{flex-flow:wrap;width:100%;height:auto;padding:12px;position:static}.sidebar-menu{flex-flow:wrap;padding:8px 0}.sidebar-brand{border-bottom:none;padding:0 10px}.sidebar-logout{border-top:none;margin-left:auto}}.input-password{align-items:center;display:flex;position:relative}.input-password .input{width:100%;padding-right:90px}.toggle-password{color:#c2410c;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:.85rem;font-weight:600;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.toggle-password:hover{background:#c2410c14}
