/* CollabMaxxx Security Case Management. Everything is scoped to the isolated module. */
.sheet:has(.security-module){width:min(1440px,calc(100vw - 32px))}
.security-module{--security-ink:#17212b;--security-soft:#f4f7fa;--security-line:#d7e0e8;--security-blue:#018cf1;display:grid;gap:18px;min-width:0;color:var(--security-ink)}
.security-module button,.security-module input,.security-module select,.security-module textarea{min-width:0}
.security-module-head,.security-page-head,.security-search-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-width:0}
.security-module-head>div,.security-page-head>div{display:grid;gap:6px;min-width:0}
.security-module-head h3{font-size:clamp(1.35rem,3vw,2rem)}
.security-module-head p,.security-page-head p{color:var(--muted);line-height:1.5}
.security-page-head h4{font-size:clamp(1.25rem,2.4vw,1.75rem);letter-spacing:-.03em}
.security-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:16px;align-items:start;min-width:0}
.security-nav{position:sticky;top:0;max-height:calc(100vh - 150px);overflow:auto;display:grid;gap:5px;padding:8px;border:1px solid var(--security-line);border-radius:18px;background:var(--security-soft)}
.security-nav button{width:100%;border:0;border-radius:12px;background:transparent;padding:10px 12px;text-align:left;font-weight:700;font-size:.88rem;cursor:pointer;color:#536274}
.security-nav button:hover{background:#fff;color:var(--security-ink)}
.security-nav button.active{background:var(--security-blue);color:#fff;box-shadow:0 8px 20px rgba(1,140,241,.2)}
.security-content{display:grid;gap:16px;min-width:0;min-height:390px}
.security-loading{min-height:240px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}
.security-loading span{width:18px;height:18px;border:2px solid #c8d7e3;border-top-color:var(--security-blue);border-radius:50%;animation:security-spin .75s linear infinite}
@keyframes security-spin{to{transform:rotate(360deg)}}
.security-metric-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.security-metric-grid article{padding:16px;border:1px solid var(--security-line);border-radius:16px;background:#fff;display:grid;gap:4px}
.security-metric-grid strong{font-size:1.75rem;color:var(--security-blue)}
.security-metric-grid span{font-size:.82rem;color:var(--muted);font-weight:700}
.security-quick-actions{display:flex;gap:8px;flex-wrap:wrap}
.security-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.security-record-link{width:100%;border:0;border-top:1px solid var(--security-line);background:#fff;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;padding:11px 0;text-align:left;cursor:pointer;align-items:center}
.security-record-link:first-of-type{border-top:0}
.security-record-link:hover span{color:var(--security-blue)}
.security-record-link strong,.security-record-number{font-variant-numeric:tabular-nums;color:#38536a;font-size:.78rem;letter-spacing:.03em}
.security-record-link span{overflow-wrap:anywhere;font-weight:750}
.security-record-link small{color:var(--muted);white-space:nowrap}
.security-toolbar,.security-search-box{display:grid;grid-template-columns:minmax(220px,1fr) 190px;gap:10px;padding:10px;border:1px solid var(--security-line);border-radius:16px;background:var(--security-soft)}
.security-search-box{grid-template-columns:minmax(220px,1fr) auto auto;align-items:center}
.security-table{border:1px solid var(--security-line);border-radius:18px;overflow:hidden;background:#fff}
.security-list-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border-top:1px solid var(--security-line);min-width:0}
.security-list-row:first-child{border-top:0}
.security-list-row:hover{background:#f9fbfd}
.security-list-main{flex:1;min-width:0;border:0;background:transparent;text-align:left;display:grid;grid-template-columns:minmax(100px,auto) minmax(180px,1fr) auto;gap:12px;align-items:center;cursor:pointer;padding:0}
.security-list-main strong{overflow-wrap:anywhere}
.security-list-main small{color:var(--muted);text-align:right}
.security-record-form{display:grid;gap:16px}
.security-record-form>.form-grid{padding:16px;border:1px solid var(--security-line);border-radius:18px;background:var(--security-soft)}
.security-record-form .check-row{align-self:end;min-height:45px;padding:11px;border:1px solid var(--security-line);border-radius:13px;background:#fff}
.security-breadcrumb{justify-self:start;border:0;background:transparent;color:#006bad;font-weight:800;cursor:pointer;padding:3px 0}
.security-breadcrumb:hover{text-decoration:underline}
.security-detail-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:17px;border:1px solid var(--security-line);border-radius:18px;background:linear-gradient(135deg,#f6fbff,#fff)}
.security-detail-head>div:first-child{display:grid;gap:7px;min-width:0}
.security-detail-head h4{font-size:clamp(1.35rem,3vw,2rem);overflow-wrap:anywhere}
.security-detail-head .action-row{justify-content:flex-end}
.security-detail-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(270px,.7fr);gap:12px}
.security-detail-grid section{min-width:0}
.security-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.security-facts div{padding:10px;border-radius:12px;background:var(--security-soft);display:grid;gap:4px;min-width:0}
.security-facts span{font-size:.74rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.security-facts strong{font-size:.91rem;overflow-wrap:anywhere}
.security-related{display:grid;gap:7px}
.security-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.security-related article{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-top:1px solid var(--security-line)}
.security-related article:first-of-type{border-top:0}
.security-related article>span{min-width:0;overflow-wrap:anywhere}
.security-record-actions{position:sticky;bottom:-26px;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--security-line);border-radius:16px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px)}
.security-evidence-preview,.security-document-preview{display:block;width:100%;max-height:560px;border:1px solid var(--security-line);border-radius:16px;background:#101820;object-fit:contain}
.security-document-preview{height:min(620px,70vh);background:#fff}
.security-audio-preview{width:100%}
.security-evidence-drop{display:grid;gap:12px;padding:18px;border:2px dashed #9ecff0;border-radius:18px;background:#f5fbff;text-align:center;cursor:pointer}
.security-evidence-drop input{max-width:100%}
.security-progress{position:relative;display:grid;gap:8px;padding:12px;border:1px solid var(--security-line);border-radius:14px;background:#fff;overflow:hidden}
.security-progress>span{position:absolute;left:0;bottom:0;height:6px;width:0;background:var(--security-blue);transition:width .2s ease}
.security-progress strong{font-size:.86rem}
.security-file-preview{max-width:100%;max-height:520px;border:1px solid var(--security-line);border-radius:14px;background:#111}
.security-audio-recorder{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:12px;border:1px solid var(--security-line);border-radius:14px;background:#fff}
.security-audio-recorder output{color:var(--muted);font-size:.88rem}
.security-search-results,.security-saved-searches{display:grid;gap:8px}
.security-saved-searches{display:flex;flex-wrap:wrap}
.security-saved-searches button{border:1px solid var(--security-line);border-radius:999px;background:#fff;padding:7px 11px;cursor:pointer;font-size:.82rem}
.security-search-result{width:100%;display:grid;grid-template-columns:120px minmax(160px,1fr) minmax(160px,1fr);gap:12px;align-items:center;border:1px solid var(--security-line);border-radius:14px;background:#fff;padding:12px;text-align:left;cursor:pointer}
.security-search-result:hover{border-color:#79bff0;background:#f7fcff}
.security-search-result strong,.security-search-result small{overflow-wrap:anywhere}
.security-search-result small{color:var(--muted)}
.security-search-result em{grid-column:2/-1;color:#60798b;font-size:.78rem;font-style:normal}
.security-image-source{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center}
.security-upload-box{min-height:126px;border:2px dashed #9ecff0;border-radius:18px;background:#f5fbff;display:grid;place-content:center;justify-items:center;gap:7px;padding:16px;cursor:pointer;text-align:center}
.security-upload-box input{max-width:100%}
.security-ocr-original{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto;background:#101820;color:#f0f6fa;border-radius:12px;padding:13px;font-size:.82rem}
.security-association-map{display:grid;gap:10px}
.security-association-map article{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center;padding:14px;border:1px solid var(--security-line);border-radius:16px;background:#fff}
.security-association-map article>div{display:grid;gap:4px;min-width:0}
.security-association-map article>div:last-of-type{text-align:right}
.security-association-map article span,.security-association-map article small{font-size:.75rem;color:var(--muted)}
.security-association-map article strong{overflow-wrap:anywhere}
.security-association-map article small{grid-column:1/-1;text-align:center}
.security-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.security-compare-grid figure{margin:0;display:grid;gap:8px;min-width:0;overflow:hidden;border:1px solid var(--security-line);border-radius:16px;background:#101820;padding:10px;color:#fff}
.security-compare-grid img{width:100%;height:340px;object-fit:contain;transform-origin:center;transition:transform .15s ease}
.security-compare-grid figcaption{font-size:.82rem;overflow-wrap:anywhere}
.security-compare-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:10px 0}
.security-compare-controls label{display:flex;align-items:center;gap:8px;font-size:.86rem;font-weight:700}
.security-subhead{margin-top:20px;padding-top:18px;border-top:1px solid var(--security-line)}
.security-undo{position:fixed;right:22px;bottom:22px;z-index:3000;display:flex;align-items:center;gap:14px;max-width:min(440px,calc(100vw - 24px));padding:12px 14px;border-radius:16px;background:#17212b;color:#fff;box-shadow:0 16px 48px rgba(0,0,0,.24)}
.security-module .table-wrap table{min-width:760px}
.security-module .status{white-space:nowrap}

@media(max-width:1050px){
 .security-layout{grid-template-columns:1fr}
 .security-nav{position:static;display:flex;max-height:none;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
 .security-nav button{width:auto;flex:0 0 auto}
 .security-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .sheet:has(.security-module){width:100%;max-height:100dvh;height:100dvh;border-radius:0;padding:14px}
 .security-module-head,.security-page-head,.security-detail-head{align-items:stretch;flex-direction:column}
 .security-page-head>.button,.security-module-head>.button{width:100%}
 .security-metric-grid,.security-dashboard-grid,.security-detail-grid,.security-facts,.security-compare-grid{grid-template-columns:1fr}
 .security-toolbar,.security-search-box,.security-image-source{grid-template-columns:1fr}
 .security-image-source>span{text-align:center}
 .security-list-row{align-items:flex-start;flex-direction:column}
 .security-list-main{width:100%;grid-template-columns:1fr;gap:4px}
 .security-list-main small{text-align:left}
 .security-search-result{grid-template-columns:1fr;gap:5px}
 .security-search-result em{grid-column:auto}
 .security-association-map article{grid-template-columns:1fr;text-align:left}
 .security-association-map article>div:last-of-type,.security-association-map article small{text-align:left}
 .security-section-head,.security-record-actions{align-items:stretch;flex-direction:column}
 .security-record-actions{bottom:-14px}
 .security-compare-grid img{height:240px}
 .security-undo{left:12px;right:12px;bottom:74px;justify-content:space-between}
}
