/* Asset Inspection - responsive one-page workflow */
.asset-inspection-page {
  --ai-green: #079669;
  --ai-green-dark: #047857;
  --ai-blue: #1677ff;
  --ai-red: #e5485d;
  --ai-orange: #ea7a24;
  --ai-ink: #17233a;
  --ai-muted: #68758b;
  --ai-line: #dfe6ef;
  color: var(--ai-ink);
  max-width: 1680px;
  margin: 0 auto;
  padding-bottom: 28px;
}
.asset-inspection-page * { box-sizing: border-box; }
.ai-page-header { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:18px; }
.ai-title-row { display:flex; align-items:center; gap:12px; }
.ai-title-icon { width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:linear-gradient(135deg,#dcfce7,#ccfbf1); color:var(--ai-green-dark); font-size:26px; font-weight:900; }
.ai-page-header h1 { margin:0; font-size:clamp(1.45rem,2vw,2rem); letter-spacing:-.03em; }
.ai-page-header p { margin:5px 0 0; color:var(--ai-muted); font-size:.92rem; }
.ai-header-meta { display:flex; flex-direction:column; align-items:flex-end; padding:10px 14px; border:1px solid var(--ai-line); border-radius:12px; background:#fff; }
.ai-header-meta span { color:var(--ai-muted); font-size:.72rem; }
.ai-header-meta strong { font-size:.9rem; }
.ai-setup-notice { display:flex; gap:12px; align-items:flex-start; margin-bottom:14px; padding:12px 15px; border:1px solid #fed7aa; border-left:5px solid #f59e0b; border-radius:12px; background:#fff7ed; color:#9a3412; font-size:.8rem; }
.ai-setup-notice strong { white-space:nowrap; }.ai-setup-notice span { color:#7c2d12; }
.ai-kpi-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.ai-kpi { position:relative; min-height:94px; background:#fff; border:1px solid var(--ai-line); border-radius:16px; padding:15px 18px; overflow:hidden; box-shadow:0 8px 24px rgba(15,23,42,.04); }
.ai-kpi::before { content:""; position:absolute; left:0; top:0; bottom:0; width:5px; background:#64748b; }
.ai-kpi span { display:block; font-size:.78rem; font-weight:700; color:var(--ai-muted); }
.ai-kpi strong { display:inline-block; margin-top:7px; font-size:1.75rem; line-height:1; }
.ai-kpi small { margin-left:6px; color:var(--ai-muted); }
.ai-kpi-blue::before { background:var(--ai-blue); }.ai-kpi-green::before { background:var(--ai-green); }.ai-kpi-red::before { background:var(--ai-red); }.ai-kpi-orange::before { background:var(--ai-orange); }
.ai-workflow-grid { display:grid; grid-template-columns:minmax(280px,.9fr) minmax(330px,1.05fr) minmax(340px,1.05fr); gap:14px; align-items:start; }
.ai-card { background:#fff; border:1px solid var(--ai-line); border-radius:18px; box-shadow:0 10px 32px rgba(15,23,42,.05); overflow:hidden; }
.ai-card-heading { min-height:64px; padding:15px 18px; display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid var(--ai-line); }
.ai-card-heading > div:first-child { display:flex; align-items:center; gap:10px; min-width:0; }
.ai-card-heading h2 { margin:0; font-size:1rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ai-step { flex:0 0 auto; width:27px; height:27px; border-radius:50%; display:grid; place-items:center; color:#fff; background:var(--ai-green); font-size:.78rem; font-weight:800; }
.ai-chip { display:inline-flex; align-items:center; justify-content:center; min-height:27px; padding:5px 10px; border-radius:999px; font-size:.72rem; font-weight:800; white-space:nowrap; }
.ai-chip-neutral { background:#f1f5f9; color:#64748b; }.ai-chip-active { background:#e0f2fe; color:#0369a1; }.ai-chip-success { background:#dcfce7; color:#047857; }.ai-chip-error { background:#ffe4e6; color:#be123c; }.ai-chip-warning { background:#ffedd5; color:#c2410c; }
.ai-camera-shell { position:relative; margin:16px; min-height:250px; aspect-ratio:4/3; border:2px dashed #86d8bb; border-radius:16px; overflow:hidden; background:linear-gradient(135deg,#f4fffa,#f8fbff); }
.ai-camera-shell video { display:none; width:100%; height:100%; object-fit:cover; background:#0f172a; }
.ai-camera-shell.active video { display:block; }
.ai-camera-placeholder { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:7px; cursor:pointer; text-align:center; padding:20px; }
.ai-camera-placeholder[hidden] { display:none; }
.ai-camera-placeholder strong { color:var(--ai-green-dark); font-size:1.05rem; }.ai-camera-placeholder small { color:var(--ai-muted); }
.ai-scan-symbol { font-size:54px; color:var(--ai-green); line-height:1; }
.ai-scan-guide { display:none; position:absolute; inset:16%; pointer-events:none; }
.ai-camera-shell.active .ai-scan-guide { display:block; }
.ai-scan-guide > span { position:absolute; width:34px; height:34px; border-color:#34d399; border-style:solid; filter:drop-shadow(0 1px 2px rgba(0,0,0,.5)); }
.ai-scan-guide span:nth-child(1){left:0;top:0;border-width:4px 0 0 4px;border-radius:8px 0 0 0}.ai-scan-guide span:nth-child(2){right:0;top:0;border-width:4px 4px 0 0;border-radius:0 8px 0 0}.ai-scan-guide span:nth-child(3){left:0;bottom:0;border-width:0 0 4px 4px;border-radius:0 0 0 8px}.ai-scan-guide span:nth-child(4){right:0;bottom:0;border-width:0 4px 4px 0;border-radius:0 0 8px 0}
.ai-scan-line { position:absolute; left:5%; right:5%; height:2px; top:12%; background:#34d399; box-shadow:0 0 10px #34d399; animation:aiScanLine 2s ease-in-out infinite; }
@keyframes aiScanLine { 0%,100%{top:12%;opacity:.6}50%{top:86%;opacity:1} }
.ai-camera-actions { display:flex; gap:8px; padding:0 16px 12px; }.ai-camera-actions .ai-btn-large { flex:1; }
.ai-btn { min-height:40px; border:0; border-radius:10px; padding:9px 14px; font:inherit; font-size:.84rem; font-weight:750; cursor:pointer; transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease; }
.ai-btn:hover:not(:disabled){transform:translateY(-1px)}.ai-btn:disabled{opacity:.55;cursor:not-allowed}.ai-btn-primary{color:#fff;background:linear-gradient(135deg,var(--ai-green),#08b9b6);box-shadow:0 8px 18px rgba(5,150,105,.18)}.ai-btn-light{color:#344155;background:#f1f5f9;border:1px solid #e2e8f0}.ai-btn-outline{color:var(--ai-green-dark);background:#fff;border:1px solid #9adcc3}.ai-btn-save{color:#fff;background:linear-gradient(135deg,#078d58,#05a878);box-shadow:0 9px 20px rgba(5,150,105,.22)}
.ai-divider { display:flex; align-items:center; gap:10px; padding:0 16px; color:#94a3b8; font-size:.75rem; }.ai-divider::before,.ai-divider::after{content:"";height:1px;background:#e2e8f0;flex:1}
.ai-manual-search { padding:12px 16px 8px; }.ai-manual-search label,.ai-full-field>span,.ai-form-grid label>span { display:block; margin-bottom:6px; color:#46546a; font-size:.76rem; font-weight:750; }
.ai-input-action { display:flex; gap:8px; }.ai-input-action input { min-width:0; flex:1; }
.ai-inspection-page input,.ai-inspection-page select,.ai-inspection-page textarea { width:100%; min-height:42px; border:1px solid #d8e0ea; border-radius:10px; background:#fff; color:var(--ai-ink); font:inherit; font-size:.86rem; padding:10px 12px; outline:none; }
.ai-inspection-page input:focus,.ai-inspection-page select:focus,.ai-inspection-page textarea:focus { border-color:#34b48a; box-shadow:0 0 0 3px rgba(16,185,129,.12); }
.ai-image-scan { padding:6px 16px 14px; display:flex; flex-wrap:wrap; align-items:center; gap:8px; }.ai-image-scan small { color:var(--ai-muted); font-size:.72rem; }
.ai-scan-message { min-height:36px; padding:8px 16px 14px; font-size:.78rem; color:var(--ai-muted); }.ai-scan-message.success{color:#047857}.ai-scan-message.error{color:#be123c}.ai-scan-message.warning{color:#b45309}.ai-scan-message.info{color:#0369a1}
.ai-asset-result { min-height:440px; padding:18px; }.ai-empty-asset,.ai-not-found-state { min-height:380px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; text-align:center; color:var(--ai-muted); }.ai-empty-asset>div,.ai-not-found-icon { width:74px;height:74px;border-radius:22px;display:grid;place-items:center;background:#f1f5f9;color:#94a3b8;font-size:40px}.ai-empty-asset strong,.ai-not-found-state h3{color:#344155;margin:0}.ai-empty-asset small,.ai-not-found-state p{max-width:280px}.ai-not-found-state code{padding:7px 10px;border-radius:8px;background:#fff1f2;color:#be123c;word-break:break-all}
.ai-asset-hero { display:flex; align-items:center; gap:14px; padding:14px; border-radius:14px; background:linear-gradient(135deg,#f0fdf4,#f0f9ff); border:1px solid #d7f0e4; margin-bottom:14px; }.ai-device-icon{flex:0 0 auto;width:64px;height:64px;border-radius:16px;display:grid;place-items:center;background:#fff;color:var(--ai-green);font-size:34px;box-shadow:0 7px 18px rgba(15,23,42,.08)}.ai-asset-hero span{font-size:.72rem;color:var(--ai-green-dark);font-weight:750}.ai-asset-hero h3{margin:4px 0 2px;font-size:1.18rem}.ai-asset-hero p{margin:0;color:var(--ai-muted);font-size:.82rem}
.ai-contract-source{display:inline-flex!important;margin-top:7px;padding:3px 7px;border-radius:999px;background:#e0f2fe;color:#0369a1!important;font-size:.64rem!important;font-weight:800!important;line-height:1.25}.ai-contract-source.ai-contract-missing{background:#fff1f2;color:#be123c!important}
.ai-asset-details { margin:0; }.ai-asset-details>div { display:grid; grid-template-columns:42% 58%; gap:10px; padding:9px 3px; border-bottom:1px solid #edf1f6; }.ai-asset-details dt{font-size:.78rem;font-weight:750;color:#536176}.ai-asset-details dd{margin:0;font-size:.84rem;word-break:break-word}.ai-source-status{color:#047857;font-weight:800}
.ai-inspection-disabled { min-height:440px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:var(--ai-muted); text-align:center; padding:20px; }.ai-inspection-disabled>span{font-size:42px;color:#cbd5e1}.ai-inspection-disabled strong{color:#475569}.ai-inspection-form{padding:16px}.ai-inspection-form[hidden],.ai-inspection-disabled[hidden]{display:none}.ai-inspection-form fieldset{border:0;padding:0;margin:0 0 15px}.ai-inspection-form legend{font-size:.78rem;font-weight:800;color:#46546a;margin-bottom:8px}
.ai-status-options { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }.ai-status-btn{min-height:48px;border:1px solid #dde5ee;border-radius:11px;background:#fff;color:#56637a;font-weight:750;font-size:.78rem;cursor:pointer}.ai-status-btn span{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#f1f5f9;margin-right:3px}.ai-status-btn.active[data-status="EXISTS"]{border-color:#65d8ae;background:#ecfdf5;color:#047857}.ai-status-btn.active[data-status="NOT_FOUND"]{border-color:#fda4af;background:#fff1f2;color:#be123c}.ai-status-btn.active[data-status="DAMAGED"]{border-color:#fdba74;background:#fff7ed;color:#c2410c}
.ai-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:14px; }.ai-change-note{display:block;margin-top:4px;min-height:16px;font-size:.68rem;color:#94a3b8}.ai-change-note.changed{color:#c2410c;font-weight:750}.ai-change-note.same{color:#059669}
.ai-accessory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }.ai-accessory-grid label{display:flex;align-items:center;gap:7px;min-height:38px;padding:7px 9px;border:1px solid #e2e8f0;border-radius:9px;font-size:.76rem;cursor:pointer}.ai-accessory-grid input{width:auto;min-height:0;accent-color:var(--ai-green)}
.ai-full-field { display:block; margin-bottom:12px; }.ai-full-field textarea{resize:vertical}.ai-gps-box{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;margin-bottom:12px}.ai-gps-box>div{min-width:0}.ai-gps-box strong{display:block;font-size:.78rem}.ai-gps-box small{display:block;margin-top:3px;color:var(--ai-muted);font-size:.68rem;word-break:break-word}.ai-btn-save{width:100%;min-height:48px}
.ai-change-card,.ai-history-card { margin-top:14px; }.ai-change-card[hidden]{display:none}.ai-change-summary{padding:14px 18px}.ai-change-row{display:grid;grid-template-columns:130px 1fr 30px 1fr;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf1f6}.ai-change-row:last-child{border-bottom:0}.ai-change-row>span{padding:8px 10px;background:#f8fafc;border-radius:8px;font-size:.82rem}.ai-change-row>b{text-align:center;color:var(--ai-orange)}
.ai-history-heading{flex-wrap:wrap}.ai-history-tools{display:flex;gap:8px}.ai-history-tools select{width:auto;min-height:38px}.ai-history-table-wrap{overflow:auto}.ai-history-table{width:100%;border-collapse:collapse;min-width:980px}.ai-history-table th{padding:11px 13px;background:#f8fafc;border-bottom:1px solid #dfe6ef;text-align:left;color:#536176;font-size:.72rem;text-transform:uppercase;white-space:nowrap}.ai-history-table td{padding:11px 13px;border-bottom:1px solid #edf1f6;font-size:.78rem;vertical-align:top}.ai-history-table td small{display:block;color:#8792a5;margin-top:3px}.ai-table-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:.7rem;font-weight:800;white-space:nowrap}.ai-table-badge.success{background:#dcfce7;color:#047857}.ai-table-badge.danger{background:#ffe4e6;color:#be123c}.ai-table-badge.warning{background:#ffedd5;color:#c2410c}.ai-table-badge.neutral{background:#f1f5f9;color:#64748b}.ai-history-empty{min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ai-muted);gap:5px}.ai-history-empty>span{font-size:38px;color:#cbd5e1}.ai-history-empty strong{color:#475569}.ai-mobile-action{display:none}
@media (max-width:1180px){
  .ai-workflow-grid{grid-template-columns:1fr 1fr}
  .ai-result-card{grid-column:1/-1}
  .ai-inspection-disabled{min-height:230px}
  .ai-asset-result{min-height:390px}
  .ai-kpi-grid{grid-template-columns:repeat(2,1fr)}
}

/* Asset Inspection mobile layout only. :has() intentionally scopes the shell
   changes to this page, so every other Web App page keeps its current layout. */
@media (max-width:768px){
  .main-wrapper:has(.asset-inspection-page){margin-left:0!important;width:100%!important}
  .main-content:has(> .asset-inspection-page){padding:6px!important;overflow-x:hidden}
  .main-wrapper:has(.asset-inspection-page) .topbar{padding:0 8px!important;gap:4px}
  .main-wrapper:has(.asset-inspection-page) .topbar-left{gap:5px!important;min-width:0}
  .main-wrapper:has(.asset-inspection-page) #topbar-title{font-size:1rem!important;line-height:1.15;max-width:118px;white-space:normal}
  .main-wrapper:has(.asset-inspection-page) .topbar-right{gap:4px!important}
  .main-wrapper:has(.asset-inspection-page) .topbar-right>.btn-icon{width:34px!important;height:34px!important;min-width:34px!important;padding:5px!important}
  .main-wrapper:has(.asset-inspection-page) .user-profile{gap:5px!important;margin-left:2px!important;padding-left:4px!important}
  .main-wrapper:has(.asset-inspection-page) #user-profile-pic-container{width:32px!important;height:32px!important}

  .asset-inspection-page{width:100%;max-width:none;padding-bottom:72px}
  .ai-page-header{display:none}
  .ai-setup-notice{margin-bottom:7px;padding:8px 10px;border-radius:9px;gap:2px;flex-direction:column;font-size:.68rem;line-height:1.35}
  .ai-setup-notice strong{white-space:normal}

  .ai-kpi-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(108px,31vw);gap:6px;margin:0 0 8px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;padding:1px 1px 4px;scrollbar-width:none}
  .ai-kpi-grid::-webkit-scrollbar{display:none}
  .ai-kpi{scroll-snap-align:start;min-height:58px;padding:8px 10px;border-radius:10px;box-shadow:none}
  .ai-kpi::before{width:4px}
  .ai-kpi span{font-size:.64rem;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .ai-kpi strong{margin-top:5px;font-size:1.22rem}
  .ai-kpi small{margin-left:3px;font-size:.61rem}

  .ai-workflow-grid{grid-template-columns:1fr;gap:7px}
  .ai-card{border-radius:11px;box-shadow:0 4px 14px rgba(15,23,42,.045)}
  .ai-card-heading{min-height:44px;padding:8px 10px;gap:7px}
  .ai-card-heading>div:first-child{gap:7px}
  .ai-card-heading h2{font-size:.82rem}
  .ai-step{width:22px;height:22px;font-size:.68rem}
  .ai-chip{min-height:22px;padding:3px 7px;font-size:.61rem}

  .ai-camera-shell{margin:8px;min-height:0;height:clamp(178px,48vw,220px);max-height:none;aspect-ratio:auto;border-radius:11px}
  .ai-camera-placeholder{gap:4px;padding:10px}
  .ai-scan-symbol{font-size:42px}
  .ai-camera-placeholder strong{font-size:.9rem}
  .ai-camera-placeholder small{font-size:.65rem}
  .ai-camera-actions{padding:0 8px 7px;gap:6px}
  .ai-btn{min-height:40px;border-radius:9px;padding:7px 9px;font-size:.76rem}
  .ai-divider{padding:0 9px;font-size:.65rem}
  .ai-manual-search{padding:7px 8px 4px}
  .ai-manual-search label,.ai-full-field>span,.ai-form-grid label>span{margin-bottom:4px;font-size:.68rem}
  .ai-input-action{display:grid;grid-template-columns:minmax(0,1fr) 70px;gap:6px}
  .ai-input-action button{width:auto;padding-inline:7px}
  .ai-inspection-page input,.ai-inspection-page select,.ai-inspection-page textarea{min-height:38px;border-radius:8px;padding:7px 9px;font-size:.76rem}
  .ai-image-scan{padding:4px 8px 8px;display:grid;grid-template-columns:1fr}
  .ai-image-scan .ai-btn{width:100%}
  .ai-image-scan small{display:none}
  .ai-scan-message{min-height:24px;padding:4px 9px 8px;font-size:.68rem}

  .ai-asset-result{min-height:0;padding:9px}
  .ai-empty-asset,.ai-not-found-state{min-height:150px;gap:5px;padding:8px}
  .ai-empty-asset>div,.ai-not-found-icon{width:50px;height:50px;border-radius:14px;font-size:28px}
  .ai-empty-asset strong,.ai-not-found-state h3{font-size:.86rem}
  .ai-empty-asset small,.ai-not-found-state p{font-size:.68rem}
  .ai-asset-hero{align-items:flex-start;gap:9px;padding:9px;border-radius:10px;margin-bottom:7px}
  .ai-device-icon{width:46px;height:46px;border-radius:11px;font-size:25px}
  .ai-asset-hero>div:last-child{min-width:0}
  .ai-asset-hero span{font-size:.62rem}
  .ai-asset-hero h3{margin:2px 0;font-size:.98rem;word-break:break-word}
  .ai-asset-hero p{font-size:.68rem}
  .ai-contract-source{margin-top:4px!important;padding:2px 6px;font-size:.56rem!important;white-space:normal}
  .ai-asset-details>div{grid-template-columns:38% 62%;gap:7px;padding:6px 2px}
  .ai-asset-details dt{font-size:.67rem}
  .ai-asset-details dd{font-size:.72rem}

  .ai-inspection-disabled{min-height:145px;padding:10px;gap:5px}
  .ai-inspection-disabled>span{font-size:30px}
  .ai-inspection-disabled strong{font-size:.82rem}
  .ai-inspection-disabled small{font-size:.67rem}
  .ai-inspection-form{padding:9px}
  .ai-inspection-form fieldset{margin-bottom:9px}
  .ai-inspection-form legend{font-size:.69rem;margin-bottom:5px}
  .ai-status-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .ai-status-btn{min-height:42px;padding:4px 3px;font-size:.65rem;line-height:1.15}
  .ai-status-btn span{display:block;margin:0 auto 2px;width:17px;height:17px}
  .ai-form-grid{grid-template-columns:1fr 1fr;gap:7px;margin-bottom:9px}
  .ai-change-note{min-height:13px;margin-top:2px;font-size:.59rem}
  .ai-accessory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .ai-accessory-grid label{min-height:34px;padding:5px 7px;border-radius:7px;font-size:.68rem}
  .ai-full-field{margin-bottom:8px}
  .ai-full-field textarea{min-height:58px;max-height:96px}
  .ai-gps-box{align-items:center;flex-direction:row;margin-bottom:8px;padding:8px 9px;border-radius:9px}
  .ai-gps-box strong{font-size:.69rem}
  .ai-gps-box small{font-size:.59rem}
  .ai-gps-box .ai-btn{flex:0 0 auto;max-width:128px}
  .ai-btn-save{min-height:43px}

  .ai-change-card,.ai-history-card{margin-top:7px}
  .ai-change-summary{padding:8px 10px}
  .ai-change-row{grid-template-columns:1fr;gap:4px;padding:7px 0}
  .ai-change-row>b{transform:rotate(90deg)}
  .ai-change-row>span{padding:6px 8px;font-size:.7rem}
  .ai-history-tools{width:100%;gap:5px}
  .ai-history-tools select{flex:1;min-height:34px}
  .ai-history-table{min-width:0;display:block}
  .ai-history-table thead{display:none}
  .ai-history-table tbody,.ai-history-table tr,.ai-history-table td{display:block;width:100%}
  .ai-history-table tr{padding:7px 9px;border-bottom:1px solid #dfe6ef}
  .ai-history-table td{display:grid;grid-template-columns:37% 63%;padding:4px 0;border:0;font-size:.68rem}
  .ai-history-table td::before{content:attr(data-label);color:#64748b;font-weight:750}

  .ai-mobile-action{position:fixed;display:grid;grid-template-columns:.8fr 1.2fr;gap:6px;left:7px;right:7px;bottom:7px;z-index:140;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);padding:6px;border:1px solid #dfe6ef;border-radius:11px;box-shadow:0 9px 28px rgba(15,23,42,.18)}
  .ai-mobile-action[hidden]{display:none}
  .ai-mobile-action .ai-btn{min-height:43px}
  .ai-inspection-form>.ai-btn-save{display:none}
}

@media (max-width:420px){
  .main-wrapper:has(.asset-inspection-page) #topbar-title{max-width:92px;font-size:.9rem!important}
  .ai-kpi-grid{grid-auto-columns:minmax(102px,34vw)}
  .ai-camera-shell{height:178px}
  .ai-form-grid{grid-template-columns:1fr}
  .ai-accessory-grid{grid-template-columns:1fr 1fr}
  .ai-gps-box{align-items:stretch;flex-direction:column}
  .ai-gps-box .ai-btn{max-width:none;width:100%}
  .ai-asset-details>div{grid-template-columns:40% 60%}
  .ai-history-table td{grid-template-columns:42% 58%}
}

/* V86.15 - Rack location and selectable Excel export */
.ai-field-hint{display:block;margin-top:3px;color:var(--ai-muted);font-size:.64rem;line-height:1.3}
.ai-rack-field input{text-transform:none}
.ai-history-tools{align-items:center;flex-wrap:wrap;justify-content:flex-end}
.ai-select-all-control{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:7px 10px;border:1px solid #dfe6ef;border-radius:10px;background:#fff;color:#46546a;font-size:.74rem;font-weight:750;cursor:pointer;white-space:nowrap}
.ai-select-all-control input,.ai-history-select{width:17px!important;height:17px!important;min-height:0!important;margin:0;padding:0;accent-color:var(--ai-green);cursor:pointer}
.ai-selected-count{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:.69rem;font-weight:800;white-space:nowrap}
.ai-btn-export{color:#fff;background:linear-gradient(135deg,#0f766e,#0891b2);box-shadow:0 7px 16px rgba(8,145,178,.16)}
.ai-select-column{width:46px;min-width:46px;text-align:center!important}
.ai-history-table tr.selected{background:#f0fdfa}
.ai-history-table tr.selected td{border-bottom-color:#c7f2e2}
.ai-history-limit-note{padding:8px 13px;border-bottom:1px solid #dfe6ef;background:#f8fafc;color:#64748b;font-size:.69rem}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

@media (max-width:768px){
  .ai-field-hint{font-size:.57rem}
  .ai-history-heading{align-items:flex-start}
  .ai-history-tools{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;width:100%}
  .ai-history-tools select{grid-column:1/2;width:100%}
  .ai-select-all-control{grid-column:2/3;min-height:34px;padding:5px 8px;font-size:.65rem}
  .ai-selected-count{grid-column:1/2;justify-self:start;min-height:28px;font-size:.61rem}
  .ai-btn-export{grid-column:2/3;min-height:34px;padding:5px 8px;font-size:.68rem}
  #ai-btn-refresh-history{grid-column:1/-1;min-height:34px}
  .ai-history-limit-note{padding:6px 9px;font-size:.6rem;line-height:1.35}
  .ai-history-table td.ai-select-column{display:flex;align-items:center;justify-content:space-between;grid-template-columns:none;padding:4px 0 7px;border-bottom:1px dashed #e2e8f0}
  .ai-history-table td.ai-select-column::before{content:"เลือก Export"}
  .ai-history-table td.ai-select-column input{margin-left:auto}
}
