/* GUARDER OS v4.1 — compact unified master, sticky tables, police document center */
.v41-compact-heading{margin-bottom:12px!important;padding-bottom:0!important;align-items:center!important}
.v41-compact-heading h1{font-size:25px!important;margin-bottom:2px!important}
.v41-compact-heading .eyebrow{margin-bottom:4px!important}
.v41-compact-heading .muted{margin:2px 0 0!important;max-width:760px;font-size:11px!important;line-height:1.45!important}
.v41-member-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:10px}
.v41-member-kpis article{padding:11px 13px;border:1px solid rgba(125,151,176,.18);border-radius:12px;background:linear-gradient(180deg,rgba(20,31,44,.9),rgba(12,20,30,.94))}
.v41-member-kpis small{display:block;color:#778c9f;font-size:10px}.v41-member-kpis b{display:block;margin-top:4px;font-size:19px;color:#edf4fa}.v41-member-kpis em{display:block;margin-top:2px;color:#8ea2b3;font-size:10px;font-style:normal}
.v41-member-tabs{display:flex;gap:7px;margin-bottom:9px;flex-wrap:wrap}.v41-member-tabs button{border:1px solid rgba(125,151,176,.22);background:#0d1824;color:#aebdcc;border-radius:9px;padding:7px 11px;cursor:pointer;font-size:11px}.v41-member-tabs button.active{border-color:rgba(236,190,82,.55);background:rgba(236,190,82,.1);color:#f1ce72}
.v41-member-toolbar{display:grid!important;grid-template-columns:minmax(300px,1fr) 160px 170px auto;gap:9px;margin-bottom:9px!important;position:sticky;top:77px;z-index:7;backdrop-filter:blur(12px)}
.v41-member-table table{min-width:1120px}.v41-member-table td{vertical-align:middle}.v41-member-table td small{display:block;color:#73889b;margin-top:3px;white-space:nowrap}.v41-idcell{display:flex;align-items:center;gap:9px;min-width:142px}.v41-idcell>span>b{display:block;color:#e4edf4}.v41-idcell>span>small{display:flex;gap:3px!important;flex-wrap:wrap;white-space:normal!important}.v41-idcell>span>small span{display:inline-block;padding:2px 5px;border:1px solid rgba(74,160,215,.24);border-radius:999px;color:#8fc4e6;font-size:9px}.v41-actions{min-width:170px;justify-content:flex-end}.v41-actions .mini-btn{font-size:10px;padding:6px 7px}.v41-warn{color:#e7be61!important}
.v41-sticky-scroll{max-height:calc(100vh - 300px)!important;overflow:auto!important;overscroll-behavior:contain;scrollbar-gutter:stable}
.v41-sticky-scroll table{border-collapse:separate!important;border-spacing:0!important}
.v41-sticky-scroll thead th{position:sticky!important;top:0!important;z-index:5!important;background:#0b1723!important;box-shadow:0 1px 0 rgba(66,103,133,.38),0 8px 14px rgba(3,9,15,.22)}
.v41-sticky-scroll thead th:first-child{left:0;z-index:6}
.page .table-panel>.table-scroll:not(.v41-sticky-scroll){max-height:calc(100vh - 300px);overflow:auto}
.page .table-panel>.table-scroll thead th{position:sticky;top:0;z-index:4;background:#0b1723}
.field-v40-mini-table thead th{position:sticky;top:0;z-index:2;background:#0e1b28}
.v41-pdf-toolbar{display:grid!important;grid-template-columns:minmax(240px,1.2fr) 170px minmax(230px,1fr) auto;gap:9px;margin-bottom:10px!important;position:sticky;top:77px;z-index:7;backdrop-filter:blur(12px)}
.v41-readiness{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:10px}.v41-readiness>article{padding:10px 11px;border:1px solid rgba(127,152,176,.18);border-radius:11px;background:#0d1824}.v41-readiness>article.ok{border-color:rgba(82,214,154,.38)}.v41-readiness>article.warn{border-color:rgba(240,191,88,.42)}.v41-readiness small{display:block;color:#758a9d;font-size:9px}.v41-readiness b{display:block;margin-top:4px;color:#e9f1f7;font-size:13px}.v41-readiness em{display:block;margin-top:3px;color:#8ea2b3;font-size:9px;font-style:normal;line-height:1.35}.v41-missing{grid-column:1/-1;padding:8px 11px;border:1px solid rgba(240,191,88,.2);border-radius:10px;background:rgba(240,191,88,.045)}.v41-missing summary{cursor:pointer;color:#ebc86f;font-size:11px;font-weight:800}.v41-missing>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 12px;margin-top:8px}.v41-missing p{margin:0;padding:5px 0;border-bottom:1px solid rgba(255,255,255,.04);font-size:10px}.v41-missing p b{display:inline;margin:0 6px 0 0;font-size:10px}.v41-missing p span{color:#9fb0be}
.v41-doc-warning{margin:0 0 10px;padding:9px 11px;border:1px solid rgba(236,190,82,.18);border-radius:10px;background:rgba(236,190,82,.05);color:#b6c1cb;font-size:10px;line-height:1.5}
.v41-pdf-sheet{padding:0!important;background:#d9dde2!important;display:grid;gap:16px;min-height:0!important}
.v41-doc-page{width:210mm;min-height:297mm;margin:0 auto;background:#fff;color:#111;padding:12mm 12mm 11mm;box-sizing:border-box;page-break-after:always;box-shadow:0 8px 26px rgba(0,0,0,.16)}.v41-doc-page:last-child{page-break-after:auto}.v41-doc-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:2px solid #111;padding-bottom:9px;margin-bottom:11px}.v41-doc-head small{display:block;font-size:8px;letter-spacing:.08em;color:#555}.v41-doc-head h2{margin:3px 0 2px;font-size:20px;color:#111}.v41-doc-head p{margin:0;font-size:9px;color:#555}.v41-doc-head>div:last-child{text-align:right;display:grid;gap:2px;font-size:8.5px;color:#333}.v41-doc-head>div:last-child b{font-size:11px;color:#111}
.v41-official-info{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #666;margin-bottom:10px}.v41-official-info>div{padding:6px 7px;border-right:1px solid #aaa;border-bottom:1px solid #aaa;min-height:38px}.v41-official-info>div:nth-child(4n){border-right:0}.v41-official-info>div.wide{grid-column:span 2}.v41-official-info small{display:block;font-size:7.5px;color:#666}.v41-official-info b{display:block;margin-top:2px;font-size:9px;color:#111;line-height:1.3}
.v41-form-table,.v41-roster-table{width:100%;border-collapse:collapse;color:#111}.v41-form-table th,.v41-form-table td,.v41-roster-table th,.v41-roster-table td{border:1px solid #666;padding:5px 6px;color:#111}.v41-form-table th{width:18%;background:#f1f1f1;font-size:8.5px}.v41-form-table td{font-size:9px}.v41-roster-table{table-layout:fixed;font-size:8.2px}.v41-roster-table th{background:#eee;font-size:8px;text-align:center}.v41-roster-table td{text-align:center;height:21px;word-break:break-all}.v41-roster-table th:nth-child(1),.v41-roster-table td:nth-child(1){width:7%}.v41-roster-table th:nth-child(2),.v41-roster-table td:nth-child(2){width:15%}.v41-roster-table th:nth-child(3),.v41-roster-table td:nth-child(3){width:22%}.v41-roster-table th:nth-child(4),.v41-roster-table td:nth-child(4){width:35%}.v41-roster-table th:nth-child(5),.v41-roster-table td:nth-child(5){width:21%}.v41-sign-area{margin-top:32px;text-align:center;color:#111;font-size:10px;line-height:1.8}.v41-sign-area b{font-size:11px}.v41-sign-area strong{display:block;margin-top:24px;font-size:13px}.v41-doc-note{margin-top:10px;font-size:8px;color:#444;white-space:pre-wrap}
@media(max-width:1200px){.v41-member-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.v41-readiness{grid-template-columns:repeat(3,minmax(0,1fr))}.v41-missing>div{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.v41-member-kpis,.v41-readiness{grid-template-columns:1fr 1fr}.v41-member-toolbar,.v41-pdf-toolbar{grid-template-columns:1fr;position:static}.v41-missing>div{grid-template-columns:1fr}.v41-sticky-scroll{max-height:calc(100vh - 260px)!important}.v41-doc-page{width:100%;min-width:760px}}
@media print{#fieldPdfSheet{display:block!important;background:#fff!important;padding:0!important}#fieldPdfSheet .v41-doc-page{box-shadow:none!important;margin:0!important;width:100%!important;min-height:0!important;padding:9mm 10mm!important}.v41-doc-warning,.v41-readiness,.v41-pdf-toolbar{display:none!important}@page{size:A4 portrait;margin:0}}

/* v4.1 detail improvements */
.field-v40-assigned-box{border:1px solid rgba(82,170,230,.16);border-radius:10px;padding:10px 11px;background:rgba(45,117,164,.045)}
.field-v40-assigned-box>small{display:block;color:#7890a4;margin-bottom:6px}.field-v40-assigned-box #fieldSlotAssigned{display:flex;gap:6px;flex-wrap:wrap}.field-v40-assigned-box #fieldSlotAssigned span{display:inline-flex;padding:4px 8px;border:1px solid rgba(82,214,154,.25);border-radius:999px;color:#9de5c2;background:rgba(82,214,154,.06);font-size:11px}.field-v40-assigned-box #fieldSlotAssigned em{font-style:normal;color:#73899c}
.field-v40-contract-sheet{border:1px solid rgba(129,153,175,.18);border-radius:12px;background:#09131d;padding:16px}.field-v40-contract-sheet header{border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:10px;margin-bottom:12px}.field-v40-contract-sheet header small{color:#6f8598}.field-v40-contract-sheet header h3{margin:3px 0 0;color:#edf4fa;font-size:18px}.field-v40-contract-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.field-v40-contract-grid>div{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.055)}.field-v40-contract-grid>div.wide{grid-column:1/-1}.field-v40-contract-grid small,.field-v40-contract-sheet footer small{display:block;color:#6f8598;font-size:10px;margin-bottom:3px}.field-v40-contract-grid b{color:#dce7ef;font-size:12px}.field-v40-contract-sheet section{margin-top:14px}.field-v40-contract-sheet section h4{margin:0 0 7px;color:#f0cb70;font-size:12px}.field-v40-contract-sheet section p{margin:0;color:#b7c5d0;font-size:11px;line-height:1.65}.field-v40-contract-sheet ol{margin:0;padding-left:20px;color:#b7c5d0;font-size:11px;line-height:1.65}.field-v40-contract-sheet li+li{margin-top:6px}.field-v40-contract-sheet footer{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.field-v40-contract-sheet footer>div{display:flex;flex-direction:column;gap:3px}.field-v40-contract-sheet footer b{color:#e7eef4}.field-v40-contract-sheet footer span{color:#8fa2b2;font-size:10px}
.page .table-scroll.v41-sticky-scroll{position:relative}.page .table-scroll.v41-sticky-scroll thead{position:sticky;top:0;z-index:5}.page .table-scroll.v41-sticky-scroll thead th{white-space:nowrap}
@media(max-width:760px){.field-v40-contract-grid,.field-v40-contract-sheet footer{grid-template-columns:1fr}.field-v40-contract-grid>div.wide{grid-column:auto}}
