/* Vula 0.3.74 — security, gate timing & inspector dashboards */
.security-shell,.inspector-shell{display:grid;gap:20px}.security-header,.inspector-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.security-header h2,.inspector-header h2{margin:4px 0 5px}.security-header p,.inspector-header p{margin:0;color:#697780}.security-clock{font-size:30px;font-weight:800;text-align:right}.security-clock small{display:block;font-size:11px;color:#758189;font-weight:600}.security-top-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:18px}.security-scanner-card,.security-summary-card,.security-notices,.security-roster,.security-schedule{padding:20px}.security-camera-wrap{height:260px;border-radius:18px;background:#15212a;overflow:hidden;position:relative;margin:12px 0}.security-camera-wrap video{width:100%;height:100%;object-fit:cover}.security-camera-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;padding:20px;background:#15212a}.security-camera-placeholder span{font-size:12px;opacity:.72;margin-top:5px}.security-scan-frame{position:absolute;width:170px;height:170px;border:2px solid rgba(255,255,255,.85);border-radius:18px;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}.security-scanner-actions,.security-mode-actions{display:flex;gap:8px;margin-bottom:12px}.security-mode-actions .vula-btn{flex:1}.security-scan-result{padding:13px 16px;border-radius:14px}.security-scan-result.ok{background:#e9f8f1;color:#116f4d}.security-scan-result.window{background:#fff5df;color:#875c17}.security-scan-result.invalid{background:#fdecec;color:#9b3434}.security-big-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.security-big-stats>div{padding:16px;background:#f7f9fa;border:1px solid #e4e9ec;border-radius:14px}.security-big-stats strong{display:block;font-size:24px}.security-big-stats span{display:block;font-size:12px;color:#718087;margin-top:3px}.security-buffer-form{margin-top:18px;border-top:1px solid #e3e8eb;padding-top:16px}.security-buffer-form>label>span{display:block;font-weight:700;margin-bottom:7px}.security-buffer-form label div{display:flex;align-items:center;gap:8px}.security-buffer-form input{width:76px}.security-buffer-form small{display:block;margin-top:7px;color:#718087}.security-request-list{display:grid;gap:9px}.security-request-list article{display:grid;grid-template-columns:minmax(180px,1fr) minmax(400px,1.4fr);gap:16px;padding:14px;border:1px solid #e2e7ea;border-radius:14px}.security-request-list article>div strong,.security-request-list article>div span,.security-request-list article>div small{display:block}.security-request-list article>div span,.security-request-list article>div small{font-size:12px;color:#738087}.security-request-list form{display:grid;grid-template-columns:190px minmax(120px,1fr) auto auto;gap:7px;align-items:center}.security-roster-tabs{display:flex;gap:6px;margin-bottom:12px}.security-roster-tabs button{border:1px solid #dfe5e8;background:#fff;border-radius:999px;padding:7px 12px;cursor:pointer}.security-roster-tabs button.active{background:#263b50;color:#fff;border-color:#263b50}.security-roster-list{display:grid;gap:6px}.security-roster-list article{display:grid;grid-template-columns:12px minmax(0,1fr) auto 100px;gap:11px;align-items:center;padding:11px 12px;border-bottom:1px solid #edf0f2}.security-roster-list article>div:nth-child(2) strong,.security-roster-list article>div:nth-child(2) span{display:block}.security-roster-list article>div:nth-child(2) span,.security-roster-list article>small{font-size:12px;color:#758189}.security-presence-dot{width:10px;height:10px;border-radius:50%;background:#c8d0d5}.security-presence-dot.onsite{background:#19a36e}.security-schedule-list{display:grid}.security-schedule-list>div{display:grid;grid-template-columns:minmax(140px,1fr) minmax(120px,.8fr) 130px auto;gap:10px;align-items:center;padding:11px 0;border-bottom:1px solid #edf0f2}.security-schedule-list span{font-size:12px;color:#718087}.security-schedule-list time{font-weight:700}.inspector-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:18px}.inspector-unit-list{padding:14px}.inspector-unit-list h3{padding:6px 8px;margin:0 0 6px}.inspector-unit-list>a{display:flex;justify-content:space-between;gap:10px;padding:11px 10px;border-radius:12px;text-decoration:none;color:inherit}.inspector-unit-list>a.active{background:#eef4ff}.inspector-unit-list a strong,.inspector-unit-list a span{display:block}.inspector-unit-list a span{font-size:12px;color:#748087}.inspection-dot{width:10px;height:10px;border-radius:50%;background:#c9d0d4;margin-top:5px}.inspection-dot.status-passed{background:#1b9e6b}.inspection-dot.status-conditional{background:#d7982b}.inspector-workspace{padding:22px}.inspector-unit-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.inspector-unit-head h2{margin:4px 0}.inspector-unit-head p{margin:0;color:#738087}.inspector-precheck{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.inspector-precheck>div{padding:13px;border:1px solid #e3e8eb;border-radius:13px;background:#fafcfd}.inspector-precheck small,.inspector-precheck strong{display:block}.inspector-precheck small{font-size:11px;color:#748087}.inspection-checklist{display:grid;gap:8px}.inspection-checklist article{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid #e2e7ea;border-radius:14px}.inspection-item-title{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(140px,1.2fr);gap:10px;align-items:center}.inspection-item-title input{width:100%}.inspection-status-buttons{display:flex;gap:5px}.inspection-status-buttons label input{position:absolute;opacity:0;pointer-events:none}.inspection-status-buttons label span{display:block;padding:7px 10px;border:1px solid #dfe5e8;border-radius:999px;font-size:12px;cursor:pointer;white-space:nowrap}.inspection-status-buttons label.selected span,.inspection-status-buttons label:has(input:checked) span{background:#263b50;border-color:#263b50;color:#fff}.inspection-footer{display:grid;grid-template-columns:220px minmax(0,1fr) auto;gap:12px;align-items:end;margin-top:18px;padding-top:18px;border-top:1px solid #e4e9ec}.inspection-history{margin-top:18px;border-top:1px solid #e3e8eb;padding-top:14px}.inspection-history summary{cursor:pointer;font-weight:700}.inspection-history>div{padding:9px 0;border-bottom:1px solid #edf0f2}.inspection-history strong,.inspection-history span,.inspection-history small{display:block}.inspection-history span,.inspection-history small{font-size:12px;color:#738087}.vendor-access-time-panel{margin-top:16px;border-top:1px solid #e4e9ec;padding-top:15px}.vendor-access-time-panel>div:first-child strong,.vendor-access-time-panel>div:first-child span{display:block}.vendor-access-time-panel>div:first-child span,.vendor-time-request-status small{font-size:12px;color:#718087;margin-top:3px}.vendor-time-request-status{display:flex;align-items:center;gap:9px;margin-top:10px}.vendor-time-request-details{margin-top:11px}.vendor-time-request-details summary{cursor:pointer;font-weight:700}.vendor-time-request-details form{margin-top:12px}.vendor-gate-note{padding:12px 14px;border-radius:13px;background:#f4f7f9}.vendor-gate-note strong,.vendor-gate-note span{display:block}.vendor-gate-note span{font-size:12px;color:#718087;margin-top:3px}
@media(max-width:900px){.security-top-grid,.inspector-layout{grid-template-columns:1fr}.security-request-list article{grid-template-columns:1fr}.security-request-list form{grid-template-columns:1fr 1fr}.security-schedule-list>div{grid-template-columns:1fr 1fr}.inspection-checklist article{grid-template-columns:1fr}.inspection-footer{grid-template-columns:1fr 1fr}.inspection-footer .vula-btn{grid-column:1/-1}.inspector-unit-list{display:flex;overflow:auto}.inspector-unit-list h3{display:none}.inspector-unit-list>a{min-width:180px}}
@media(max-width:600px){.security-header{display:block}.security-clock{text-align:left;margin-top:8px;font-size:24px}.security-big-stats,.inspector-precheck{grid-template-columns:1fr 1fr}.security-roster-list article{grid-template-columns:12px minmax(0,1fr) auto}.security-roster-list article>small{grid-column:2}.security-request-list form,.security-schedule-list>div,.inspection-footer{grid-template-columns:1fr}.inspection-item-title{grid-template-columns:1fr}.inspection-status-buttons{display:grid;grid-template-columns:1fr 1fr 1fr}.inspection-status-buttons label span{text-align:center}.security-camera-wrap{height:220px}.security-buffer-form label div{flex-wrap:wrap}}
@media(max-width:430px){.security-big-stats,.inspector-precheck{grid-template-columns:1fr}.inspection-status-buttons{grid-template-columns:1fr}.security-scanner-actions,.security-mode-actions{display:grid;grid-template-columns:1fr}}
