[hidden]{display:none!important}
:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17212b;background:#f4f6f8;--ink:#17324d;--soft:#e8eef4;--border:#d7dee6;--danger:#a52a2a;--ok:#206a42;--warn:#9a6200;--card:#fff}
*{box-sizing:border-box}body{margin:0;background:#f4f6f8}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,h4{color:#17212b}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(430px,100%);background:white;padding:28px;border-radius:18px;box-shadow:0 12px 35px rgba(18,42,66,.12)}.brand-mark{width:54px;height:54px;border-radius:14px;background:var(--ink);color:white;display:grid;place-items:center;font-weight:800;font-size:20px}.build-badge{display:inline-flex;background:#e5f3ea;color:#206a42;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:800}.stack{display:grid;gap:14px;margin-top:20px}label{display:grid;gap:7px;font-weight:650}input,select,textarea{width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:10px;background:white;color:#17212b}textarea{min-height:92px;resize:vertical}.primary,.secondary,.ghost,.danger{border:0;border-radius:10px;padding:11px 15px;font-weight:700}.primary{background:var(--ink);color:white}.secondary{background:var(--soft);color:var(--ink)}.ghost{background:transparent;border:1px solid var(--border)}.danger{background:#fde9e9;color:var(--danger)}.small{padding:7px 10px;font-size:13px}.link-button{border:0;background:none;color:var(--ink);padding:14px 0 0}.muted{color:#667585}.message{margin-top:12px;padding:11px;border:1px solid #d8dee6;border-radius:10px;background:rgba(23,50,77,.04);white-space:pre-wrap}.topbar{position:sticky;top:0;z-index:10;background:var(--ink);color:white;padding:12px 18px;display:flex;justify-content:space-between;align-items:center;gap:14px}.topbar strong{color:white}.brand-line{display:flex;align-items:center;gap:7px}.version{opacity:.8;font-size:12px}.clean-pill{font-size:10px;letter-spacing:.08em;background:rgba(255,255,255,.18);padding:3px 6px;border-radius:999px}.user-chip{display:flex;align-items:center;gap:8px}.pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#e8eef4;color:#17324d;font-size:12px;font-weight:800;text-transform:capitalize}.topbar .pill{background:rgba(255,255,255,.16);color:white}.top-ghost{color:white;border-color:rgba(255,255,255,.35)}.nav-tabs{background:white;border-bottom:1px solid var(--border);display:flex;overflow:auto;padding:0 12px}.nav-tabs button{border:0;background:none;padding:14px 12px;white-space:nowrap;color:#596879;font-weight:700}.nav-tabs button.active{color:var(--ink);border-bottom:3px solid var(--ink)}.page-shell{max-width:1160px;margin:0 auto;padding:22px}.view{display:none}.active-view{display:block}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.page-heading h2{margin:0 0 4px}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin-bottom:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px;margin-bottom:18px}.stat{background:white;border:1px solid var(--border);border-radius:14px;padding:16px}.stat strong{display:block;font-size:26px;color:var(--ink)}.stat span{font-size:13px;color:#667585}.section-card{background:white;border:1px solid var(--border);border-radius:14px;padding:16px;margin-bottom:16px}.section-title{display:flex;justify-content:space-between;align-items:center}.section-title h3,.section-card h3{margin-top:0}.card-list{display:grid;gap:10px}.item-card{background:white;border:1px solid var(--border);border-radius:13px;padding:14px;display:grid;gap:8px}.item-card.compact{padding:10px}.item-card h3,.item-card h4{margin:0}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row-between{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.meta{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;color:#667585}.badge{padding:4px 8px;border-radius:999px;background:#edf1f4;font-size:12px;font-weight:750}.badge.due{background:#fff0ce;color:var(--warn)}.badge.overdue{background:#fde4e4;color:var(--danger)}.badge.complete{background:#e3f3ea;color:var(--ok)}.button-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.empty{padding:22px;text-align:center;color:#758392;border:1px dashed var(--border);border-radius:12px;background:white}.modal{width:min(760px,calc(100% - 24px));border:0;border-radius:16px;padding:0;box-shadow:0 20px 60px rgba(0,0,0,.3);max-height:90vh}.modal::backdrop{background:rgba(10,20,30,.45)}.modal form{padding:18px;max-height:90vh;overflow:auto}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.modal-head h3{margin:0}.icon-button{border:0;background:none;font-size:28px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{grid-column:1/-1}.actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px;flex-wrap:wrap}.checkbox-list{border:1px solid var(--border);border-radius:10px;max-height:320px;overflow:auto;padding:8px}.check-row{display:flex;align-items:center;gap:9px;padding:7px}.check-row input{width:auto}.toast{position:fixed;right:16px;bottom:16px;z-index:100;background:#17212b;color:white;padding:12px 14px;border-radius:10px;max-width:380px}.hint-box{padding:12px;border:1px solid #d8dee6;border-radius:10px;background:rgba(23,50,77,.04);font-size:.92rem}.request-note{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#f7fafc}.signature-wrap{display:grid;gap:8px}.signature-pad{display:block;width:100%;height:170px;border:2px solid #9aa5b1!important;border-radius:10px;background:#fff!important;touch-action:none;user-select:none;-webkit-user-select:none;cursor:crosshair}.signature-label{font-weight:700;margin-bottom:7px}.signature-status{margin-top:7px;font-size:13px;font-weight:700;color:#8a98a8}.signature-status.signature-ok{color:#1f8a4c}.signature-note{font-size:12px;color:#667585}.help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.help-card{border:1px solid var(--border);border-radius:12px;padding:14px;background:white}.help-card h3{margin-top:0}.help-card li{margin:6px 0;line-height:1.4}.bulk-drop{margin:14px 0;padding:14px;border:1px dashed var(--border);border-radius:12px;background:#fbfcfd}.bulk-preview-card{border-left:4px solid #7e91a4}.bulk-preview-card[data-kind="TOOLBOX_TALK"]{border-left-color:#855eaa}.bulk-preview-card[data-kind="SDS"]{border-left-color:#2c7a5a}.bulk-preview-card[data-kind="SSW"]{border-left-color:#9a6200}.bulk-preview-card[data-kind="RISK_ASSESSMENT"]{border-left-color:#295f8c}.bulk-preview-card[data-kind="COSHH"]{border-left-color:#a0522d}.bulk-grid{display:grid;grid-template-columns:140px minmax(180px,1fr) 170px 135px;gap:8px;margin-top:9px}.bulk-grid label{font-size:12px}.bulk-summary{margin-top:14px}.diagnostic-ok{color:var(--ok);font-weight:700}.diagnostic-warn{color:var(--warn);font-weight:700}.link-results{max-height:330px;overflow:auto;margin-top:10px}.codeish{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;background:#f3f5f7;border-radius:7px;padding:3px 6px}.progress-line{font-size:13px;color:#667585}.danger-note{border-left:4px solid var(--danger);padding:10px 12px;background:#fff4f4;border-radius:8px}.success-note{border-left:4px solid var(--ok);padding:10px 12px;background:#f2fbf6;border-radius:8px}
@media(max-width:760px){.page-shell{padding:14px}.filters,.form-grid,.button-grid,.bulk-grid{grid-template-columns:1fr}.user-chip #currentUserName{display:none}.page-heading{align-items:flex-start}.row-between{flex-direction:column}.topbar{padding:10px 12px}.bulk-grid .wide{grid-column:1}.modal{width:calc(100% - 12px)}}

/* v2.0.2 document index pages */
.document-index-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:18px}
.document-index-card{display:grid;gap:7px;text-align:left;min-height:118px;padding:16px;border:1px solid var(--border);border-radius:14px;background:white;color:#17212b;box-shadow:0 2px 8px rgba(18,42,66,.04)}
.document-index-card:hover{border-color:#8ea1b4;box-shadow:0 5px 14px rgba(18,42,66,.08)}
.document-index-card strong{font-size:28px;color:var(--ink)}
.document-index-name{font-weight:800;font-size:16px;color:var(--ink)}
.document-index-context{border-left:4px solid var(--ink)}
.document-index-context h3{margin-bottom:4px}
@media(max-width:760px){.document-index-grid{grid-template-columns:1fr}.document-index-card{min-height:98px}}

/* v2.0.5 live document register */
.document-register-card{grid-column:1/-1;min-height:132px;border-width:2px;position:relative}
.document-register-card .document-index-name{font-size:20px}
.document-register-card strong{font-size:34px}
.register-open-label{font-weight:800;color:var(--ink)}
.register-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;margin-bottom:14px;border:1px solid var(--border);border-radius:14px;background:white}
.register-section{margin:0 0 16px;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:white}
.register-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.register-section-heading h3{margin:0}
.register-list{display:grid;gap:0;border-top:1px solid var(--border)}
.register-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:11px 0;border-bottom:1px solid var(--border);align-items:center}
.register-main{display:grid;grid-template-columns:minmax(70px,auto) minmax(0,1fr);gap:12px;align-items:start}
.register-main strong{white-space:nowrap}
.register-main span{overflow-wrap:anywhere}
.register-meta{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;color:var(--muted);font-size:13px}
.compact-empty{padding:12px 0}
@media(max-width:760px){.document-register-card{min-height:115px}.register-toolbar{align-items:stretch;flex-direction:column}.register-row{grid-template-columns:1fr;gap:7px}.register-main{grid-template-columns:1fr;gap:3px}.register-meta{justify-content:flex-start}}


/* v2.1.1 My Safety traffic-light status + SDS name alignment build */
#mySafetyStats .stat{position:relative;overflow:hidden;border-width:2px;min-height:112px;padding-left:19px}
#mySafetyStats .stat::before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:currentColor}
#mySafetyStats .stat strong{font-size:30px}
#mySafetyStats .traffic-dot{position:absolute;right:14px;top:14px;width:14px;height:14px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(255,255,255,.42)}
.traffic-green{color:#258a4b!important;border-color:#36a864!important;background:#e9f7ee!important}
.traffic-amber{color:#a66a00!important;border-color:#e0a21a!important;background:#fff4d6!important}
.traffic-red{color:#b72f2f!important;border-color:#dc4a4a!important;background:#fde8e8!important}
#mySafetyStats .traffic-green strong,#mySafetyStats .traffic-green span:not(.traffic-dot){color:#1f6f3d!important}
#mySafetyStats .traffic-amber strong,#mySafetyStats .traffic-amber span:not(.traffic-dot){color:#805400!important}
#mySafetyStats .traffic-red strong,#mySafetyStats .traffic-red span:not(.traffic-dot){color:#962727!important}
.training-status-card{border-left-width:7px!important}
.training-status-card.traffic-green,.training-status-card.traffic-amber,.training-status-card.traffic-red{background:var(--card)!important;color:inherit!important}
.training-status-card.traffic-green{border-color:#36a864!important}
.training-status-card.traffic-amber{border-color:#e0a21a!important}
.training-status-card.traffic-red{border-color:#dc4a4a!important}
@media(max-width:760px){#mySafetyStats{grid-template-columns:repeat(2,minmax(0,1fr))}#mySafetyStats .stat{min-height:105px}}

/* v2.2.1 controlled-document traffic lights and Pending Approval queue */
.approval-overview-card{border-width:2px}
.document-control-stats .stat{position:relative;overflow:hidden;border-width:2px;min-height:105px;padding-left:19px}
.document-control-stats .stat::before{content:"";position:absolute;inset:0 auto 0 0;width:8px;background:currentColor}
.document-control-stats .traffic-dot{position:absolute;right:14px;top:14px;width:14px;height:14px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(255,255,255,.55)}
.document-control-stats .traffic-green strong,.document-control-stats .traffic-green span:not(.traffic-dot){color:#1f6f3d!important}
.document-control-stats .traffic-amber strong,.document-control-stats .traffic-amber span:not(.traffic-dot){color:#805400!important}
.document-control-stats .traffic-red strong,.document-control-stats .traffic-red span:not(.traffic-dot){color:#962727!important}
.traffic-legend{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.legend{display:inline-flex;align-items:center;gap:6px;border:2px solid;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;background:var(--card)}
.legend::before{content:"";width:9px;height:9px;border-radius:50%;background:currentColor}
.legend.green{color:#258a4b;border-color:#36a864}.legend.amber{color:#a66a00;border-color:#e0a21a}.legend.red{color:#b72f2f;border-color:#dc4a4a}
.pending-approval-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin:18px 0 10px}.pending-approval-head h4{margin:0 0 3px}
.document-status-card,.training-catalogue-card{border-style:solid!important;border-width:2px!important;border-left-width:8px!important;background:var(--card)!important;color:inherit!important}
.document-status-card.traffic-green,.training-catalogue-card.traffic-green{border-color:#36a864!important}
.document-status-card.traffic-amber,.training-catalogue-card.traffic-amber{border-color:#e0a21a!important}
.document-status-card.traffic-red,.training-catalogue-card.traffic-red{border-color:#dc4a4a!important}
.document-status-card.traffic-neutral,.training-catalogue-card.traffic-neutral{border-color:#8a98a8!important}
.traffic-neutral{color:#667585!important;border-color:#8a98a8!important;background:#f0f3f5!important}
.pending-use-warning{border:2px solid #dc4a4a;border-left-width:8px;border-radius:10px;background:#fff2f2;color:#962727;padding:10px 12px;font-weight:900;letter-spacing:.015em}
.traffic-register-green{border-left:6px solid #36a864;padding-left:10px}
.pending-approval-list .item-card{box-shadow:0 2px 9px rgba(18,42,66,.05)}
@media(max-width:760px){.traffic-legend{justify-content:flex-start}.pending-approval-head{flex-direction:column}.document-control-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v2.2.2 top filters, annual Safety Awareness and monthly reports */
.document-top-filters{margin-top:-2px;margin-bottom:16px}
.awareness-my-section{margin-top:20px;border-width:2px}
#myAwarenessStats .stat,#awarenessStats .stat{position:relative;overflow:hidden;border-width:2px;min-height:100px;padding-left:19px}
#myAwarenessStats .stat .traffic-dot,#awarenessStats .stat .traffic-dot{position:absolute;right:14px;top:14px;width:13px;height:13px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(255,255,255,.55)}
.awareness-card,.schedule-card{border-style:solid!important;border-width:2px!important;border-left-width:8px!important;background:var(--card)!important;color:inherit!important}
.awareness-card.traffic-green,.schedule-card.traffic-green{border-color:#36a864!important}
.awareness-card.traffic-amber{border-color:#e0a21a!important}
.awareness-card.traffic-red{border-color:#dc4a4a!important}
.awareness-card.traffic-neutral,.schedule-card.traffic-neutral{border-color:#8a98a8!important}
.awareness-sheet{display:grid;gap:14px}.awareness-kicker{font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.awareness-guidance{border:1px solid var(--border);border-radius:12px;padding:14px;background:#fbfcfd;line-height:1.48}.awareness-guidance p{margin:0 0 10px}.awareness-guidance p:last-child{margin-bottom:0}.awareness-guidance-list{margin:8px 0 12px;padding-left:22px}.awareness-guidance-list li{margin:6px 0}
.review-confirm-box{border:2px solid #d6e1ea;border-radius:12px;padding:12px;background:#f8fbfd}.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:10px;padding:11px 15px;font-weight:700}.button-link.secondary{background:var(--soft);color:var(--ink)}
.monthly-report-section{border-left:6px solid var(--ink)}
.schedule-card{margin-top:8px}
@media(max-width:760px){.document-top-filters{position:sticky;top:53px;z-index:6;background:#f4f6f8;padding:8px 0 4px;margin-bottom:10px}#myAwarenessStats,#awarenessStats{grid-template-columns:repeat(2,minmax(0,1fr))}.awareness-my-section{padding:13px}}

/* v2.2.3 employee-focused awareness + configurable monthly PPE checks */
.ppe-my-section{margin-top:20px;border-width:2px}
#myPpeStats .stat,#ppeStats .stat{position:relative;overflow:hidden;border-width:2px;min-height:96px;padding-left:19px}
#myPpeStats .stat .traffic-dot,#ppeStats .stat .traffic-dot{position:absolute;right:14px;top:14px;width:13px;height:13px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(255,255,255,.55)}
.ppe-status-card{border-style:solid!important;border-width:2px!important;border-left-width:8px!important;background:var(--card)!important;color:inherit!important}
.ppe-status-card.traffic-green{border-color:#36a864!important}.ppe-status-card.traffic-amber{border-color:#e0a21a!important}.ppe-status-card.traffic-red{border-color:#dc4a4a!important}.ppe-status-card.traffic-neutral{border-color:#8a98a8!important}
.ppe-check-grid{display:grid;gap:12px;margin:12px 0}.ppe-check-row{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(180px,.8fr) minmax(220px,1fr);gap:12px;align-items:end;padding:12px;border:1px solid var(--border);border-radius:12px;background:#fbfcfd}.ppe-check-row label{margin:0}.ppe-chip-list{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.ppe-catalogue-list{max-height:58vh;overflow:auto}.signature-readback{margin-top:12px;padding:10px;border:1px solid var(--border);border-radius:10px;background:#fbfcfd}
@media(max-width:760px){#myPpeStats,#ppeStats{grid-template-columns:repeat(2,minmax(0,1fr))}.ppe-check-row{grid-template-columns:1fr}.ppe-my-section{padding:13px}}

/* v2.2.4 report-only access */
.report-access[hidden],.report-manager-content[hidden]{display:none!important}


/* v2.3.0 Departments + approval audience */
.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}
.audience-grid h5{margin:0 0 8px;font-size:.95rem}
.approval-audience-card{margin-top:14px}
.approval-audience-card .checkbox-list{max-height:220px;overflow:auto}
.audience-everyone{padding:10px 12px;border:1px solid var(--line,#d8dee6);border-radius:10px;margin:8px 0 12px}
.evidence-report-section{border-left:4px solid var(--accent,#2e6da4)}
@media(max-width:760px){.audience-grid{grid-template-columns:1fr}.approval-audience-card .checkbox-list{max-height:180px}}


/* v2.6.0 full traffic-light UI + mobile tidy */
:root{
  --traffic-green:#258a4b;--traffic-green-border:#36a864;--traffic-green-bg:#e9f7ee;
  --traffic-amber:#8a5a00;--traffic-amber-border:#e0a21a;--traffic-amber-bg:#fff4d6;
  --traffic-red:#a82727;--traffic-red-border:#dc4a4a;--traffic-red-bg:#fde8e8;
  --traffic-grey:#667585;--traffic-grey-border:#9aa5b1;--traffic-grey-bg:#f0f3f5;
}
.stats-grid .stat[class*="traffic-"]{position:relative;overflow:hidden;border-width:2px;min-height:102px;padding-left:19px}
.stats-grid .stat[class*="traffic-"]::before{content:"";position:absolute;inset:0 auto 0 0;width:7px;background:currentColor}
.stats-grid .stat .traffic-dot{position:absolute;right:14px;top:14px;width:12px;height:12px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(255,255,255,.55)}
.stat.traffic-neutral{color:var(--traffic-grey)!important;border-color:var(--traffic-grey-border)!important;background:var(--traffic-grey-bg)!important}
.stat.traffic-neutral strong,.stat.traffic-neutral span:not(.traffic-dot){color:#52606d!important}
.item-card.traffic-card,.item-card.training-status-card,.item-card.document-status-card,.item-card.training-catalogue-card,.item-card.awareness-card,.item-card.ppe-status-card{
  border-style:solid!important;border-width:1px!important;border-left-width:7px!important;background:var(--card)!important;color:inherit!important;box-shadow:0 2px 7px rgba(18,42,66,.04)
}
.item-card.traffic-green{border-left-color:var(--traffic-green-border)!important}
.item-card.traffic-amber{border-left-color:var(--traffic-amber-border)!important}
.item-card.traffic-red{border-left-color:var(--traffic-red-border)!important}
.item-card.traffic-neutral{border-left-color:var(--traffic-grey-border)!important}
.status-chip{display:inline-flex;align-items:center;gap:7px;border:1px solid;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:850;white-space:nowrap;background:white}
.status-dot{width:9px;height:9px;border-radius:50%;background:currentColor;flex:0 0 auto}
.status-green{color:var(--traffic-green);border-color:var(--traffic-green-border);background:var(--traffic-green-bg)}
.status-amber{color:var(--traffic-amber);border-color:var(--traffic-amber-border);background:var(--traffic-amber-bg)}
.status-red{color:var(--traffic-red);border-color:var(--traffic-red-border);background:var(--traffic-red-bg)}
.status-neutral{color:var(--traffic-grey);border-color:var(--traffic-grey-border);background:var(--traffic-grey-bg)}
.action-bar{margin-top:2px;align-items:center}
.card-more>summary{list-style:none;cursor:pointer;border:1px solid var(--border);border-radius:10px;padding:10px 13px;font-weight:750;color:var(--ink);background:#fff}
.card-more>summary::-webkit-details-marker{display:none}
.card-more>summary::after{content:" ▾";font-size:11px;color:#667585}
.card-more[open]>summary::after{content:" ▴"}
.more-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;padding:9px;border:1px solid var(--border);border-radius:11px;background:#f8fafb}
.traffic-key{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px}
.legend.neutral{color:var(--traffic-grey);border-color:var(--traffic-grey-border)}
.compliance-progress{margin-top:2px;padding-top:8px;border-top:1px solid #edf1f4}
.compact-note{padding:7px 10px;display:inline-block}
.qa-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid var(--border)}
.qa-row:last-child{border-bottom:0}
.filters input,.filters select{min-height:44px}
.primary,.secondary,.ghost,.danger{min-height:42px}
@media(max-width:760px){
  .page-shell{padding:12px}.page-heading{margin-bottom:14px}.page-heading h2{font-size:1.35rem}
  .stats-grid{gap:8px}.stats-grid .stat[class*="traffic-"]{min-height:92px;padding:13px 13px 13px 17px}.stats-grid .stat strong{font-size:24px}
  .item-card{padding:12px}.status-chip{white-space:normal}
  .action-bar{display:grid;grid-template-columns:1fr;align-items:stretch}.action-bar>button,.action-bar>.card-more,.action-bar>.card-more>summary{width:100%}
  .more-actions{display:grid;grid-template-columns:1fr}.more-actions button{width:100%}
  .traffic-key{gap:5px}.traffic-key .legend{font-size:11px;padding:4px 7px}
  .nav-tabs{padding:0 6px;scrollbar-width:none}.nav-tabs::-webkit-scrollbar{display:none}.nav-tabs button{padding:12px 9px}
  .section-card{padding:13px}.topbar{gap:8px}.brand-line{min-width:0;flex-wrap:wrap}.user-chip{gap:5px}
}

/* Safety Tracker v2.8.3 demo mode */
.demo-entry{margin-top:10px}.demo-entry-divider{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:.82rem;margin:8px 0}.demo-entry-divider:before,.demo-entry-divider:after{content:"";height:1px;background:var(--border);flex:1}.demo-launch-button{width:100%;min-height:48px;border-radius:14px;border:1px solid #2f7ee6;background:linear-gradient(135deg,#245c9c,#2f7ee6);color:#fff;font-weight:800;font-size:1rem}.demo-entry-note{font-size:.82rem;margin:8px 0 0;text-align:center}
.demo-shell{min-height:100vh;background:var(--bg);color:var(--text)}.demo-topbar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:12px;padding:12px 18px;background:#071a35;border-bottom:1px solid rgba(255,255,255,.08)}.demo-brand-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.demo-company{font-size:.82rem;color:#b9cae1;margin-top:2px}.demo-mode-badge{background:#8b4b00;color:#ffd78b;border:1px solid #c67a11;border-radius:999px;padding:7px 12px;font-weight:900;letter-spacing:.05em;font-size:.78rem;white-space:nowrap}.demo-top-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.demo-role-label{display:flex;align-items:center;gap:7px;color:#d9e6f5;font-size:.82rem}.demo-role-label select{width:auto;min-width:120px;padding:8px 30px 8px 10px}.demo-warning{margin:12px auto 0;max-width:1180px;padding:11px 14px;border-radius:12px;border:1px solid #6a4d16;background:#2a210f;color:#f4d58a}.demo-nav{position:sticky;top:76px;z-index:20;background:var(--panel);border-bottom:1px solid var(--border)}.demo-page-shell{padding-top:16px}.demo-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-bottom:14px}.demo-hero-card{padding:18px;border:1px solid var(--border);background:var(--panel);border-radius:18px}.demo-hero-card h2,.demo-hero-card h3{margin-top:0}.demo-guide{border-left:5px solid #d08a14}.demo-guide ol{padding-left:20px;margin:8px 0}.demo-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}.demo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.demo-record{border:1px solid var(--border);border-left-width:7px;border-radius:17px;background:var(--panel);padding:15px;box-shadow:0 8px 22px rgba(0,0,0,.08)}.demo-record.green{border-left-color:#2b9b60}.demo-record.amber{border-left-color:#d18a13}.demo-record.red{border-left-color:#cc3737}.demo-record.grey{border-left-color:#707982}.demo-record h3{font-size:1.02rem;margin:0 0 6px}.demo-meta{display:flex;gap:7px;flex-wrap:wrap;color:var(--muted);font-size:.82rem;margin:5px 0}.demo-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.demo-status{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border-radius:999px;font-size:.78rem;font-weight:800}.demo-status:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}.demo-status.green{background:rgba(43,155,96,.14);color:#5bd68d}.demo-status.amber{background:rgba(209,138,19,.15);color:#f1bd58}.demo-status.red{background:rgba(204,55,55,.16);color:#ff8d8d}.demo-status.grey{background:rgba(112,121,130,.16);color:#aeb7c2}.demo-section-title{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:10px}.demo-section-title h2{margin:0}.demo-section-title p{margin:4px 0 0}.demo-empty{padding:25px;border:1px dashed var(--border);border-radius:16px;color:var(--muted);text-align:center}.demo-role-summary{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.demo-metric{border-radius:15px;padding:14px;border:1px solid var(--border);background:var(--panel)}.demo-metric strong{font-size:1.55rem;display:block}.demo-metric.green{border-color:#277348}.demo-metric.amber{border-color:#855c14}.demo-metric.red{border-color:#8f2f2f}.demo-metric.grey{border-color:#555f69}.demo-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:100;display:grid;place-items:center;padding:18px}.demo-modal-card{width:min(620px,100%);max-height:88vh;overflow:auto;background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:16px;box-shadow:0 22px 60px rgba(0,0,0,.45)}.demo-sim-form{display:grid;gap:10px}.demo-sim-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.demo-field{border:1px solid var(--border);border-radius:12px;padding:10px;background:rgba(255,255,255,.025)}.demo-field span{display:block;color:var(--muted);font-size:.75rem;margin-bottom:3px}.demo-evidence{padding:14px;border-radius:14px;background:rgba(43,155,96,.08);border:1px solid rgba(43,155,96,.35)}
@media(max-width:760px){.demo-topbar{grid-template-columns:1fr auto;padding:10px 12px}.demo-mode-badge{grid-column:2;grid-row:1}.demo-top-actions{grid-column:1/-1;justify-content:flex-start}.demo-role-label{flex:1}.demo-role-label select{flex:1;min-width:0}.demo-warning{margin:8px 10px 0}.demo-nav{top:123px}.demo-hero{grid-template-columns:1fr}.demo-sim-row{grid-template-columns:1fr}.demo-page-shell{padding-left:12px;padding-right:12px}.demo-actions button{flex:1 1 145px}}

/* v2.8.0 Admin/User view switch + safe offline mode */
.mode-switch{white-space:nowrap}
.offline-banner{position:sticky;top:49px;z-index:9;padding:10px 16px;background:#fff3cd;color:#664d03;border-bottom:1px solid #ffda6a;font-size:13px;line-height:1.4}
.offline-banner span{opacity:.8;margin-left:6px}
@media(max-width:760px){.user-chip{flex-wrap:wrap;justify-content:flex-end}.mode-switch{padding:6px 8px;font-size:12px}.offline-banner{top:52px;padding:9px 12px}.topbar .version,.topbar .clean-pill{display:none}}


/* v2.8.0 contractor permit + asbestos lookup */
.contractor-entry-button{width:100%;margin-top:12px}
.contractor-portal-card{max-width:920px;width:min(920px,calc(100% - 24px));margin:20px auto}
.contractor-portal-card .section-card{margin-top:14px}
.loading-note{padding:24px;text-align:center;color:var(--muted,#5f6b76)}
.permit-summary{margin:10px 0;line-height:1.55}
#cpHotWorkQuestions[hidden]{display:none!important}
#contractorView .auth-card{align-self:flex-start}
#contractorView .signature-pad{touch-action:none}
@media(max-width:720px){.contractor-portal-card{width:calc(100% - 12px);margin:6px auto}.contractor-portal-card .row-between{align-items:flex-start;gap:8px}.contractor-portal-card .brand-mark{margin-bottom:8px}}

/* v2.8.3 login password security */
.security-login-note{margin-top:.7rem;padding:.7rem .8rem;border-radius:10px;font-size:.88rem;line-height:1.35;background:#fff7df;border:1px solid #e6c766;color:#4c3a00}

/* v2.9.1 high-risk work selection */
.high-risk-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 12px}
.high-risk-grid .check-row,.high-risk-controls .check-row{border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--panel)}
.high-risk-controls{display:grid;gap:8px;margin-top:10px}.high-risk-controls [hidden]{display:none!important}.no-high-risk{border-style:dashed!important}
@media(max-width:720px){.high-risk-grid{grid-template-columns:1fr}}

/* v2.9.8 Contractor permit/access control */
.my-safety-onsite-wrap{margin:-2px 0 18px}.my-safety-onsite-button{width:100%;border:2px solid var(--border);border-radius:16px;background:#fff;padding:15px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;text-align:left;color:#17212b;box-shadow:0 3px 10px rgba(18,42,66,.06)}.my-safety-onsite-button.traffic-green{border-color:#2c9a58;background:#f2fbf6}.my-safety-onsite-button.traffic-amber{border-color:#d68a00;background:#fff8e8}.my-safety-onsite-button.traffic-red{border-color:#c83b3b;background:#fff2f2}.my-safety-onsite-button.traffic-neutral{border-color:#8794a1;background:#f7f9fb}.onsite-shortcut-main{display:grid;gap:3px;min-width:0}.onsite-shortcut-main strong{font-size:1.12rem;color:inherit}.onsite-shortcut-main span{font-size:.9rem;color:#5f6d7a;line-height:1.35}.onsite-shortcut-status{font-size:.78rem;font-weight:800;padding:5px 9px;border-radius:999px;background:rgba(23,50,77,.08);white-space:nowrap}.traffic-red .onsite-shortcut-status{color:#a32121;background:#fde1e1}.traffic-amber .onsite-shortcut-status{color:#8c5b00;background:#ffedbd}.traffic-green .onsite-shortcut-status{color:#1e7042;background:#dff3e8}.onsite-shortcut-action{font-weight:850;color:var(--ink);white-space:nowrap}
@media(max-width:760px){.my-safety-onsite-button{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;padding:14px}.onsite-shortcut-status{grid-column:1;justify-self:start}.onsite-shortcut-action{grid-column:2;grid-row:1 / span 2;align-self:center}}


/* v2.10.0 guided document creator */
.creator-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.creator-tile{border:1px solid var(--border,#45515e);background:var(--panel,#1f2328);border-radius:18px;padding:18px;text-align:left;display:flex;flex-direction:column;gap:8px;min-height:130px}.creator-tile strong{font-size:1.08rem}.creator-tile span{color:var(--muted,#aab4bf);line-height:1.4}.creator-source-list{display:grid;gap:8px;max-height:230px;overflow:auto;margin:10px 0 14px}.creator-source-choice{padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:12px}.creator-form{margin-top:14px}.creator-form textarea{min-height:92px}.creator-flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:14px}.creator-flags h4{grid-column:1/-1;margin:0 0 4px}.creator-rule-list{display:grid;gap:10px}.creator-rule-list>div,.creator-recommend{padding:12px;border-radius:14px;border:1px solid rgba(255,255,255,.12)}.creator-recommend{margin:10px 0}.creator-actions{flex-wrap:wrap}@media(max-width:760px){.creator-grid{grid-template-columns:1fr}.creator-flags{grid-template-columns:1fr}}

/* v2.10.5 integrated template-driven creator */
.creator-people-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.creator-people-checks .check-row{padding:10px;border:1px solid rgba(255,255,255,.12);border-radius:12px}.creator-people-checks .full{grid-column:1/-1}.creator-form select{width:100%}.creator-form label>span.muted{display:block;margin-top:5px;font-weight:400;font-size:.84rem}.creator-form input[type=number]{min-height:44px}@media(max-width:760px){.creator-people-checks{grid-template-columns:1fr}}

.dashboard-version{display:inline-block;font-size:.62em;font-weight:700;vertical-align:middle;margin-left:.45rem;padding:.2rem .45rem;border:1px solid rgba(96,165,250,.45);border-radius:999px;color:#93c5fd;background:rgba(30,64,175,.15)}
.creator-form select{min-height:48px}.creator-form .muted{font-weight:400}.coshh-template-note{border-left:4px solid #3b82f6}

/* v2.10.8 restored full COSHH RA creator */
.coshh-subsection{border:1px solid var(--border);border-radius:14px;padding:14px;background:rgba(23,50,77,.035)}
.coshh-subsection h4{margin:0 0 10px;color:var(--ink)}
.creator-form .coshh-template-note{margin-bottom:4px}
@media(max-width:760px){.coshh-subsection{padding:11px}}

/* v2.10.9 My Safety live contractor + key shortcuts */
.my-safety-live-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:-2px 0 18px}
.my-safety-live-shortcuts .my-safety-onsite-wrap{margin:0;min-width:0}
.my-safety-live-shortcuts .my-safety-onsite-button{height:100%;min-height:146px}
.key-shortcut-button{border-color:#2f7ee6!important;background:#eef5ff!important;color:#123b73!important}
.key-shortcut-button .onsite-shortcut-main strong{color:#1f5fb3!important}
.key-shortcut-button.key-active{border-color:#2f7ee6!important;background:#e9f2ff!important}
.key-shortcut-button.key-active .onsite-shortcut-status{color:#184f96;background:#d5e7ff}
.key-shortcut-button.key-clear{border-color:#55a27a!important;background:#f2fbf6!important}
.key-shortcut-button.key-clear .onsite-shortcut-main strong{color:#246c46!important}
.key-shortcut-button.key-clear .onsite-shortcut-status{color:#1e7042;background:#dff3e8}
.key-holder-card{border-left:7px solid #2f7ee6!important}
.key-register-summary{display:flex;align-items:baseline;gap:9px;margin:12px 0;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:#f7faff}
.key-register-summary strong{font-size:1.8rem;color:#1f5fb3}
.key-register-summary span{color:#5f6d7a}
@media(max-width:760px){.my-safety-live-shortcuts{grid-template-columns:1fr}.my-safety-live-shortcuts .my-safety-onsite-button{min-height:0}}

/* v2.10.11 document control, disclaimers and editable approved controls */
.compliance-disclaimer{margin:12px 0;padding:12px 14px;border:1px solid #c7d5e3;border-radius:10px;background:#f5f8fb;color:#24384a;font-size:.92rem;line-height:1.45}
.contractor-disclaimer{margin-bottom:16px}
.app-compliance-footer{max-width:1180px;margin:18px auto 30px;padding:10px 16px;color:#647383;font-size:.78rem;text-align:center}
.creator-disabled{opacity:.7}
.creator-tile:disabled{opacity:.48;cursor:not-allowed;filter:grayscale(.35)}
.register-row .row{margin-top:6px}
@media (prefers-color-scheme:dark){.compliance-disclaimer{background:#152536;border-color:#31465a;color:#d7e2ec}.app-compliance-footer{color:#9fb0c0}}

/* v2.10.12 clickable My Safety training summary */
.my-safety-stat-button{appearance:none;-webkit-appearance:none;width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer;border:1px solid var(--border,#d8e0e7)}
.my-safety-stat-button:hover,.my-safety-stat-button:focus-visible{transform:translateY(-1px);box-shadow:0 7px 18px rgba(20,42,64,.12)}
.my-safety-stat-button.active{outline:3px solid rgba(31,73,110,.18);outline-offset:2px}
.my-safety-drilldown{margin-bottom:12px}
.my-safety-category-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin-top:12px}
.my-safety-category-button{appearance:none;-webkit-appearance:none;border:1px solid var(--border,#d8e0e7);border-radius:12px;background:#fff;color:var(--ink,#17324d);padding:12px;text-align:left;cursor:pointer;min-height:66px}
.my-safety-category-button strong,.my-safety-category-button span{display:block}
.my-safety-category-button span{margin-top:4px;font-size:.82rem;color:var(--muted,#687786)}
.my-safety-category-button.active{border-color:#244b6f;box-shadow:0 0 0 2px rgba(36,75,111,.13)}
@media(max-width:640px){.my-safety-category-grid{grid-template-columns:1fr 1fr}.my-safety-drilldown-head{align-items:flex-start;flex-direction:column}.my-safety-drilldown-head button{width:100%}}

/* v2.10.13 Chemical / COSHH Linking */
.document-control-quick-actions{display:flex;gap:8px;margin-left:auto}
.document-control-link-button{cursor:pointer;font-weight:800}
.chemical-linking-stats{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}
.chemical-link-card h4{margin:0 0 7px}
.chemical-link-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.chemical-linked-reference{appearance:none;-webkit-appearance:none;width:100%;border:1px solid var(--border,#d8e0e7);border-radius:12px;padding:12px;text-align:left;background:#fff;color:var(--ink,#17324d);cursor:pointer}
.chemical-linked-reference strong,.chemical-linked-reference span{display:block}
.chemical-linked-reference span{margin-top:5px;color:var(--muted,#687786);font-size:.86rem}
.chemical-linked-reference.has-link{border-color:#22804a;box-shadow:0 0 0 1px rgba(34,128,74,.10)}
.chemical-linked-reference.missing-link{border-color:#c28513;background:#fff8e9}
.chemical-linked-reference:hover,.chemical-linked-reference:focus-visible{transform:translateY(-1px);box-shadow:0 6px 14px rgba(20,42,64,.10)}
@media(max-width:700px){.document-control-quick-actions{width:100%;margin:10px 0 0}.document-control-link-button{width:100%}.chemical-link-summary{grid-template-columns:1fr}}

/* v2.10.15 evidence/reporting UI cleanup */
.evidence-grouped-list{display:grid;gap:.75rem}
.evidence-group{border:1px solid var(--border,#d7dde4);border-radius:12px;overflow:hidden;background:var(--panel,#fff)}
.evidence-group-title{padding:.65rem .8rem;font-weight:700;background:rgba(127,127,127,.08);border-bottom:1px solid var(--border,#d7dde4)}
.evidence-group .evidence-choice{margin:0;border-radius:0;border:0;border-bottom:1px solid rgba(127,127,127,.14)}
.evidence-group .evidence-choice:last-child{border-bottom:0}
.evidence-choice.auto-linked{box-shadow:inset 3px 0 0 currentColor;background:rgba(34,139,94,.07)}
.evidence-auto-note{display:block;margin-top:.25rem;font-size:.78rem;font-weight:600;opacity:.8}
.evidence-auto-note[hidden]{display:none!important}
@media(max-width:700px){.evidence-group-title{padding:.6rem}.evidence-picker-list .check-row{align-items:flex-start}}

/* v2.10.17 UI + evidence reporting cleanup */
.training-doc-required{background:#b42318!important;color:#fff!important;border:1px solid #8f1c13!important}
.training-doc-required:hover{background:#941f16!important}
.training-doc-opened{background:#16794b!important;color:#fff!important;border:1px solid #0f623c!important}
.training-doc-opened:hover{background:#12653f!important}
.evidence-picker-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;margin:12px 0}
.evidence-selected-summary{display:flex;align-items:baseline;gap:7px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#f8fafb;min-width:220px}
.evidence-selected-summary strong{font-size:1.35rem;color:var(--ink)}
.evidence-selected-summary span{font-weight:800}.evidence-selected-summary small{color:var(--muted);margin-left:auto}
.evidence-mode-buttons{display:flex;gap:7px;flex-wrap:wrap}
.evidence-mode-buttons button.active{background:var(--ink);color:#fff}
.evidence-group{border:1px solid var(--border,#d7dde4);border-radius:12px;overflow:hidden;background:var(--panel,#fff)}
.evidence-group-title{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;list-style:none;padding:.72rem .8rem;font-weight:800;background:rgba(127,127,127,.08)}
.evidence-group-title::-webkit-details-marker{display:none}
.evidence-group-title:after{content:"▾";font-size:.85rem;opacity:.7}
.evidence-group:not([open]) .evidence-group-title:after{content:"▸"}
.evidence-group-count{font-size:.78rem;color:var(--muted);font-weight:700}
.evidence-group-body{border-top:1px solid var(--border,#d7dde4)}
.evidence-group .evidence-choice{margin:0;border-radius:0;border:0;border-bottom:1px solid rgba(127,127,127,.14)}
.evidence-group .evidence-choice:last-child{border-bottom:0}
.evidence-choice.auto-linked{box-shadow:inset 4px 0 0 var(--ok);background:rgba(34,139,94,.07)}
.evidence-auto-note{display:block;margin-top:.3rem;font-size:.78rem;font-weight:700;color:var(--ok)}
.evidence-auto-note[hidden]{display:none!important}
.evidence-missing-list{display:grid;gap:6px;margin-top:8px}
.evidence-search-label{margin-top:2px}
.evidence-compact-section{padding:12px}
.evidence-training-details>summary{cursor:pointer;padding:4px 2px 10px}
.evidence-training-actions{justify-content:flex-end;margin-bottom:8px}
@media(max-width:700px){.evidence-picker-toolbar{align-items:stretch}.evidence-selected-summary{width:100%}.evidence-mode-buttons{display:grid;grid-template-columns:repeat(3,1fr);width:100%}.evidence-mode-buttons button{padding:9px 6px}.evidence-group-title{padding:.68rem}.evidence-picker-list .check-row{align-items:flex-start}.training-doc-required,.training-doc-opened{width:100%}}

/* v2.10.18 training evidence accuracy */
.training-doc-required{background:#b91c1c!important;color:#fff!important;border-color:#ef4444!important}.training-doc-opened{background:#047857!important;color:#fff!important;border-color:#22c55e!important}

/* v2.10.19 My Safety overview + H&S Training */
.my-safety-category-button.traffic-green{border-left:6px solid #16a34a}.my-safety-category-button.traffic-amber{border-left:6px solid #d97706}.my-safety-category-button.traffic-red{border-left:6px solid #dc2626}.my-safety-category-button.traffic-neutral{border-left:6px solid #94a3b8}.my-safety-category-button .traffic-dot{display:inline-block;margin-right:7px}.hs-training-grid{margin-bottom:16px}.hs-training-grid .my-safety-category-button.active{outline:3px solid rgba(15,23,42,.18);transform:translateY(-1px)}

/* v2.10.28 checklist hub card layout hotfix */
.dashboard-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:stretch;width:100%}
.dashboard-tile{appearance:none;-webkit-appearance:none;width:100%;min-width:0;min-height:118px;border:2px solid var(--border);border-left-width:8px;border-radius:16px;padding:18px;display:grid;grid-template-columns:14px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:6px;align-content:center;align-items:start;text-align:left;font:inherit;box-shadow:0 3px 10px rgba(18,42,66,.06);overflow:hidden}
.dashboard-tile .traffic-dot{display:block!important;grid-column:1;grid-row:1 / span 2;width:12px;height:12px;margin-top:4px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(255,255,255,.5)}
.dashboard-tile strong{display:block;grid-column:2;grid-row:1;font-size:1.12rem;line-height:1.25;color:inherit;overflow-wrap:anywhere}
.dashboard-tile>span:not(.traffic-dot){display:block;grid-column:2;grid-row:2;font-size:.92rem;line-height:1.35;color:inherit;opacity:.82;overflow-wrap:anywhere}
.dashboard-tile:hover,.dashboard-tile:focus-visible{transform:translateY(-1px);box-shadow:0 7px 18px rgba(18,42,66,.12)}
.dashboard-tile:focus-visible{outline:3px solid rgba(31,73,110,.22);outline-offset:2px}
@media(max-width:760px){.dashboard-tiles{grid-template-columns:1fr;gap:12px}.dashboard-tile{min-height:104px;padding:16px;border-radius:15px}.dashboard-tile strong{font-size:1.08rem}.dashboard-tile>span:not(.traffic-dot){font-size:.9rem}}


/* v2.12.6 simplified Documents navigation
   Documents now drills down: section -> status -> list. */
#documentsView .document-top-filters[hidden],
#documentsView #documentIndexGrid[hidden],
#documentsView #documentsList[hidden],
#documentsView #documentIndexContext[hidden]{display:none!important}
#documentsView .document-index-grid{
  grid-template-columns:repeat(auto-fit,minmax(185px,1fr));
  gap:12px;
}
#documentsView .document-index-card{
  min-height:132px;
  padding:16px;
  background:var(--card)!important;
  color:inherit!important;
  border:2px solid var(--border);
  box-shadow:none;
  align-content:start;
}
#documentsView .document-index-card:hover,
#documentsView .document-index-card:focus-visible{border-color:#6f88a0}
#documentsView .document-index-name{font-size:17px;line-height:1.2}
#documentsView .document-section-counts{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:auto;
}
#documentsView .document-section-counts span{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:3px 8px;
  border:1px solid var(--border);
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  color:var(--muted);
  background:var(--soft);
}
#documentsView .document-status-tile{border-left-width:7px}
#documentsView .document-status-green{border-left-color:#36a864}
#documentsView .document-status-amber{border-left-color:#e0a21a}
#documentsView .document-status-red{border-left-color:#dc4a4a}
#documentsView .document-status-neutral{border-left-color:#8a98a8}
#documentsView .document-utility-card{border-style:dashed}
#documentsView .document-index-context{
  margin-bottom:14px;
  background:var(--card)!important;
}
#documentsView .document-list-pager{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:10px;
  align-items:center;
  margin:0 0 14px;
  padding:10px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
}
#documentsView .document-list-pager strong{text-align:center}
#documentsView .document-list-pager:last-child{margin:14px 0 0}
@media(max-width:760px){
  #documentsView .document-index-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  #documentsView .document-index-card{min-height:118px;padding:13px}
  #documentsView .document-index-card strong{font-size:25px}
  #documentsView .document-index-name{font-size:15px}
  #documentsView .document-section-counts{gap:4px}
  #documentsView .document-section-counts span{font-size:10.5px;padding:2px 6px}
  #documentsView .document-list-pager{grid-template-columns:1fr 1fr}
  #documentsView .document-list-pager strong{grid-column:1/-1;grid-row:1}
}
@media(max-width:390px){
  #documentsView .document-index-grid{gap:8px}
  #documentsView .document-index-card{min-height:112px;padding:11px}
}


/* v2.12.8 dedicated Documents bulk import */
#documentsView .document-bulk-import-tile{border-style:solid;border-left:7px solid #6f88a0}
#bulkImportView .section-card{max-width:1100px}
#bulkImportView .bulk-summary{margin-top:14px}
@media(max-width:760px){
  #bulkImportView .page-heading{gap:10px}
  #bulkImportView .page-heading>button{width:100%}
}


/* v2.12.9 dedicated Document Folders + section-heading order */
#documentsView .document-folders-tile{
  border-style:solid;
  border-left:7px solid #7f8fa4;
}
#documentsView #documentIndexContext{
  margin-top:0;
  margin-bottom:12px;
}
#documentsView #documentIndexContext h3{
  font-size:1.25rem;
}
#documentsView #docFolderWorkspaceV21119{
  margin-top:0;
}


/* v2.12.10 single Documents Home navigation */
#documentsView .nav-hub-v21044[data-nav-hub="documents"],
#creatorView .nav-hub-v21044[data-nav-hub="documents"]{
  display:none!important;
}
#documentsView .document-home-actions{
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
#documentsView .document-home-actions button{
  min-height:42px;
}
#documentsView .document-index-card[data-open-document-linking],
#documentsView .document-index-card[data-open-document-downloads]{
  border-style:solid;
}
#creatorView .page-heading>.row{
  justify-content:flex-end;
  flex-wrap:wrap;
}
@media(max-width:760px){
  #documentsView .page-heading{
    align-items:flex-start;
  }
  #documentsView .document-home-actions{
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  #documentsView .document-home-actions button{
    width:100%;
  }
  #creatorView .page-heading>.row{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
  }
  #creatorView .page-heading>.row button{
    width:100%;
  }
}


/* v2.12.22 Documents Bulk Import rebuild */
#documentsView .document-bulk-import-tile{border-left-color:#4d769f}
#bulkImportView .bulk-import-steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  margin:-4px 0 16px;
}
#bulkImportView .bulk-import-steps>div{
  min-width:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card,#fff);
}
#bulkImportView .bulk-import-steps strong{
  flex:0 0 28px;
  width:28px;
  height:28px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:var(--ink);
  color:#fff;
}
#bulkImportView .bulk-import-steps span{font-weight:800;font-size:.88rem}
#bulkImportView .bulk-file-selection{margin-top:10px;line-height:1.45;word-break:break-word}
#bulkImportView .bulk-import-actions{margin-top:12px}
#bulkImportView #bulkImportAfterActions{margin:12px 0 4px;justify-content:flex-start}
#bulkImportView .bulk-preview-card{overflow:hidden}
@media(max-width:760px){
  #bulkImportView .bulk-import-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  #bulkImportView .bulk-import-actions>button,
  #bulkImportView #bulkImportAfterActions>button{width:100%}
}

/* v2.12.24 primary Documents upload actions */
#documentsHomeActions{align-items:stretch}
#bulkImportTopBtn{border:2px solid #6f9bc5;font-weight:850}
@media(max-width:760px){
  #documentsHomeActions{width:100%;display:grid;grid-template-columns:1fr 1fr}
  #documentsHomeActions #documentsCreateBtn{grid-column:1/-1}
}


/* v2.12.27 clickable My Safety summary tiles */
.my-safety-stat-button{width:100%;text-align:left;font:inherit;cursor:pointer;appearance:none;-webkit-appearance:none}
.my-safety-stat-button:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(15,23,42,.10)}
.my-safety-stat-button:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:2px}
.hs-status-filter{margin-bottom:12px}
