.access-inventory{margin:16px 0}.access-inventory .inventory-counts{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}.inventory-counts span{padding:8px 12px;border:1px solid var(--line);border-radius:9px}.inventory-counts strong{color:#5edcbb}.inventory-controls{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin:14px 0}.inventory-controls label{display:grid;gap:5px;flex:1;min-width:140px}.inventory-controls input,.inventory-controls select{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--text)}.inventory-table{overflow:auto}.inventory-table table{width:100%;border-collapse:collapse;min-width:580px}.inventory-table th,.inventory-table td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.inventory-table td:nth-child(2){font-family:ui-monospace,Consolas,monospace}.inventory-footer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.inventory-footer form{margin-left:auto}.inventory-footer button:disabled{opacity:.5;cursor:default}@media(max-width:760px){.inventory-footer form{margin-left:0;width:100%}.inventory-counts span{flex:1;min-width:140px}}

.inventory-table td{vertical-align:top}.inventory-table td:nth-child(5){min-width:160px}.inventory-table td:nth-child(6){min-width:260px;max-width:420px}.inventory-table details p{font-size:12px;line-height:1.6}.inventory-table td small{font-size:11px}

.inventory-export{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}.inventory-export .muted{margin:0}

/* Rules workspace: compact controls, readable records and bounded scrolling. */
.access-rules-page .container{max-width:none!important;min-width:0;padding:24px!important}
.access-rules-page .card{padding:20px!important}
.access-rules-page main>*{min-width:0}
.access-rules-page .top{margin-bottom:16px}
.access-rules-page .protection-overview{padding:14px!important;margin:14px 0}
.access-rules-page .protection-grid{gap:10px 16px}
.access-rules-page .grid{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
.access-rules-page .grid>section{min-width:0;padding:14px}
.access-rules-page .grid h2{margin-bottom:10px;font-size:15px!important}
.access-rules-page textarea{min-height:156px;max-height:420px;line-height:1.6}
.access-rules-page .access-inventory{padding:18px;scroll-margin-top:16px}
.access-inventory .inventory-counts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.inventory-counts span{min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:6px;background:#101721;font-size:11px;padding:12px}
.inventory-counts strong{font-size:23px;line-height:1.25}
.inventory-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(120px,160px) minmax(130px,170px) max-content max-content;gap:10px;align-items:end;padding:12px;background:#101721;border:1px solid #293544;border-radius:10px}
.inventory-controls label{min-width:0}
.inventory-controls input,.inventory-controls select,.inventory-controls button,.inventory-controls>.btn{height:42px;margin:0;min-width:0}
.inventory-export{padding-bottom:12px;border-bottom:1px solid #293544}
.inventory-export button{flex-shrink:0}
.inventory-table{max-height:65vh;overflow:auto;overscroll-behavior:contain;border:1px solid #293544;border-radius:10px;scrollbar-gutter:stable}
.inventory-table table{width:100%;min-width:960px;table-layout:fixed}
.inventory-table th{position:sticky;top:0;z-index:1;background:#192230!important}
.inventory-table td{font-size:12px;line-height:1.65;padding:11px 12px!important}
.inventory-table th:nth-child(1){width:7%}.inventory-table th:nth-child(2){width:21%}.inventory-table th:nth-child(3){width:6%}.inventory-table th:nth-child(4){width:14%}.inventory-table th:nth-child(5){width:22%}.inventory-table th:nth-child(6){width:30%}
.inventory-table td:nth-child(5),.inventory-table td:nth-child(6){min-width:0;max-width:none}
.inventory-table .btn{font-size:11px;min-height:32px;padding:5px 9px;margin-top:6px}
.inventory-footer{gap:8px;padding-top:4px}
.inventory-footer>span{margin-right:auto;font-size:12px;color:#95a4b8}
.inventory-footer button{white-space:normal}
@media(min-width:1700px){.access-rules-page .grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){
.inventory-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.inventory-controls label:first-child{grid-column:1/-1}
.inventory-controls>button{grid-column:1}.inventory-controls>.btn{grid-column:2}
.access-inventory .inventory-counts{grid-template-columns:repeat(2,minmax(0,1fr))}
.inventory-table table,.inventory-table tbody{display:block;min-width:0;width:100%}
.inventory-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.inventory-table tbody{padding:10px}
.inventory-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;margin-bottom:10px;border:1px solid #344154;border-radius:9px;background:#101721;content-visibility:auto;contain-intrinsic-size:auto 280px}
.inventory-table tr:last-child{margin-bottom:0}
.inventory-table td{display:block;min-width:0;border:0!important;padding:9px 12px!important}
.inventory-table td:nth-child(2),.inventory-table td:nth-child(6),.inventory-table td[colspan]{grid-column:1/-1}
.inventory-table td[data-label]::before{content:attr(data-label);display:block;margin-bottom:4px;color:#95a4b8;font:600 11px/1.5 system-ui,sans-serif}
}
@media(max-width:650px){
.access-rules-page .container{padding:14px 10px!important}.access-rules-page .card{padding:14px!important}
.access-rules-page .access-inventory{padding:12px}
.access-rules-page .grid{grid-template-columns:minmax(0,1fr)}
.access-rules-page .grid>section{padding:12px}
.inventory-counts span{padding:10px;min-width:0;font-size:10px}.inventory-counts strong{font-size:21px}
.inventory-export{align-items:stretch;gap:8px}.inventory-export button{width:100%}
.inventory-export .muted{font-size:11px;line-height:1.6}
.inventory-controls{padding:10px;gap:10px 8px}.inventory-controls button,.inventory-controls>.btn{font-size:11px;padding:8px}
.inventory-table tbody{padding:8px}.inventory-table tr{gap:0}
.inventory-footer form{width:100%}.inventory-footer form button{width:100%}
}

.inventory-help{margin:10px 0 12px;padding:9px 12px;border:1px solid #293544;border-radius:9px;background:#101721}.inventory-help summary{cursor:pointer;font-size:11px}.inventory-help p{line-height:1.7}
