:root{
  --soc-canvas:#f4f6f4;
  --soc-surface:#ffffff;
  --soc-surface-soft:#f8faf9;
  --soc-ink:#162421;
  --soc-muted:#66736f;
  --soc-line:#dce4e1;
  --soc-line-strong:#c7d3cf;
  --soc-green:#08766b;
  --soc-green-deep:#05584f;
  --soc-green-soft:#e7f4f0;
  --soc-amber:#9a6300;
  --soc-amber-soft:#fff6dc;
  --soc-danger:#aa342b;
  --soc-danger-soft:#fff0ee;
  --soc-shadow:0 12px 36px rgba(20,49,42,.09);
  --soc-radius:14px;
  --soc-font:"Segoe UI Variable",Inter,"Segoe UI",sans-serif;
  --soc-display:"Aptos Display","Segoe UI Variable Display","Segoe UI",sans-serif;
  --soc-data:"Cascadia Code","SFMono-Regular",Consolas,monospace;
}

dialog.field-mode{
  width:min(1420px,calc(100vw - 32px));
  max-width:none;
  height:min(880px,calc(100dvh - 32px));
  max-height:none;
  margin:auto;
  padding:0;
  border:1px solid var(--soc-line);
  border-radius:18px;
  background:var(--soc-canvas);
  color:var(--soc-ink);
  box-shadow:var(--soc-shadow);
  overflow:hidden;
  font-family:var(--soc-font);
}
dialog.field-mode::backdrop{background:rgba(14,28,25,.38);backdrop-filter:blur(2px)}
dialog.field-mode #visitForm{height:100%;padding:0;overflow:auto;overscroll-behavior:contain;background:var(--soc-canvas)}
dialog.field-mode .modal-head{
  min-height:48px;padding:8px 18px;border-bottom:1px solid var(--soc-line);background:rgba(255,255,255,.96);
  position:sticky;top:0;z-index:40;display:flex;align-items:center;
}
dialog.field-mode .modal-head .eyebrow{display:none}
dialog.field-mode #visitModalTitle{margin:0;font:650 14px/1.2 var(--soc-font);color:var(--soc-muted)}
dialog.field-mode #closeVisit{margin-left:auto;width:36px;height:36px;border-radius:10px;font-size:20px}
dialog.field-mode #visitHierarchy{display:none}
dialog.field-mode > form > .form-grid,
dialog.field-mode > form > label:has(#visitNotes),
dialog.field-mode > form > .visit-actions{display:none}

.foundation-panel{padding:0 24px 30px!important;margin:0!important;background:transparent!important;border:0!important;scroll-margin-top:52px}
.foundation-heading{display:none!important}
.foundation-message{max-width:1180px;margin:12px auto 0}

.field-context{
  max-width:1180px;margin:0 auto;padding:14px 22px!important;
  display:grid!important;grid-template-columns:minmax(220px,2fr) minmax(150px,1fr) minmax(190px,1.35fr) repeat(3,minmax(84px,max-content)) max-content!important;
  gap:8px 16px!important;align-items:center;background:var(--soc-surface)!important;border:0!important;border-bottom:1px solid var(--soc-line)!important;
  border-radius:0!important;box-shadow:none!important;position:relative;
}
.field-context::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:4px;border-radius:0 4px 4px 0;background:var(--soc-green)}
.field-context > div{min-width:0!important}
.field-context > div small{display:block;margin-bottom:3px;color:var(--soc-muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.field-context > div strong{display:block;min-width:0;color:var(--soc-ink);font-size:13px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.field-context > div:first-child small{color:var(--soc-green)}
.field-context > div:first-child strong{font:750 15px/1.25 var(--soc-display);letter-spacing:-.015em;white-space:nowrap;text-wrap:nowrap}
.field-context > div:nth-child(n+4) strong{font-family:var(--soc-data);font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}
.save-pill{justify-self:end;align-self:center;padding:7px 11px!important;border-radius:999px!important;background:var(--soc-green-soft)!important;color:var(--soc-green-deep)!important;font-size:12px!important;font-weight:750!important;white-space:nowrap}
.save-pill::before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:currentColor}
.save-pill[data-save-status="pending"]{background:var(--soc-amber-soft)!important;color:var(--soc-amber)!important}
.save-pill[data-save-status="error"],.save-pill[data-save-status="conflict"]{background:var(--soc-danger-soft)!important;color:var(--soc-danger)!important}

.visit-meta-toggle{display:block;max-width:1180px;width:100%;margin:0 auto;padding:10px 22px;border:0;border-bottom:1px solid var(--soc-line);border-radius:0;background:var(--soc-surface);color:var(--soc-green);font-size:12px;font-weight:700;text-align:right;cursor:pointer}
.field-meta-expanded > .form-grid,.field-meta-expanded > label:has(#visitNotes),.field-meta-expanded > .visit-actions{display:grid!important;max-width:1136px;margin:16px auto 0}
.field-meta-expanded > .visit-actions{margin-bottom:18px}

.field-steps{
  max-width:1180px;margin:14px auto 18px!important;padding:4px!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;
  gap:4px!important;border:1px solid var(--soc-line)!important;border-radius:12px!important;background:#e9eeec!important;position:sticky;top:55px;z-index:30;box-shadow:0 5px 18px rgba(23,52,45,.06)
}
.field-steps button{min-height:40px!important;padding:8px 14px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:#5f6d69!important;font-size:13px!important;font-weight:700!important;box-shadow:none!important;display:flex!important;justify-content:center!important;gap:8px!important;align-items:center}
.field-steps button span{display:grid!important;place-items:center;width:21px!important;height:21px!important;border:1px solid var(--soc-line-strong)!important;border-radius:50%!important;background:rgba(255,255,255,.65)!important;font:700 11px/1 var(--soc-data)!important}
.field-steps button.active{background:var(--soc-surface)!important;color:var(--soc-green-deep)!important;box-shadow:0 1px 4px rgba(22,55,47,.12)!important}
.field-steps button.active span{border-color:var(--soc-green)!important;background:var(--soc-green)!important;color:#fff!important}
.field-steps button:focus-visible{outline:3px solid rgba(8,118,107,.28)!important;outline-offset:2px}

.field-step-panel{max-width:1180px;margin:0 auto!important;padding:0!important}
.field-intro{margin:0 0 14px!important;align-items:end!important}
.field-intro .eyebrow{margin:0 0 4px;color:var(--soc-green);font-size:10px;letter-spacing:.09em}
.field-intro h3{margin:0;font:740 23px/1.15 var(--soc-display);letter-spacing:-.022em;text-wrap:balance}
.field-intro p.muted{margin:5px 0 0;font-size:13px;max-width:680px}
.field-intro .badge.warning{max-width:320px}

.field-mode .panel,.field-mode .field-step-panel > details,.field-mode .ghe-summary-card,.field-mode .workers-summary-card{
  border:1px solid var(--soc-line)!important;border-radius:var(--soc-radius)!important;background:var(--soc-surface)!important;box-shadow:0 1px 2px rgba(16,43,37,.035)!important
}
.ghe-profile{padding:0!important;overflow:hidden}
.ghe-profile .ghe-summary{padding:18px 20px;display:grid;grid-template-columns:180px 1fr;gap:14px 24px}
.ghe-summary-main small,.section-kicker{display:block;color:var(--soc-muted);font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.ghe-summary-main strong{display:block;margin-top:5px;font-size:15px}
.ghe-summary-copy{color:#33443f;font-size:14px;line-height:1.55}
.ghe-profile .foundation-grid{padding:18px 20px;border-top:1px solid var(--soc-line);background:var(--soc-surface-soft)}
.ghe-profile:not(.editing) .foundation-grid{display:none!important}
.ghe-profile .ghe-profile-actions{padding:0 20px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.ghe-profile > #assessmentSaveState{display:none}
.ghe-profile .ghe-save-mirror{font-size:11px;color:var(--soc-muted)}
.ghe-profile .ghe-profile-actions button{min-height:36px}

.field-step-panel[data-field-panel="ghe"] > details{margin-top:12px!important;overflow:hidden}
.field-step-panel[data-field-panel="ghe"] > details > summary{padding:16px 18px!important;list-style:none;cursor:pointer;font-size:14px;font-weight:720;display:flex;align-items:center;gap:10px}
.field-step-panel[data-field-panel="ghe"] > details > summary::after{content:"Abrir";margin-left:auto;color:var(--soc-green);font-size:12px;font-weight:700}
.field-step-panel[data-field-panel="ghe"] > details[open] > summary{border-bottom:1px solid var(--soc-line)}
.field-step-panel[data-field-panel="ghe"] > details[open] > summary::after{content:"Recolher"}
.environment-summary{margin-left:4px;color:var(--soc-muted);font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.environment-grid{padding:18px!important;background:var(--soc-surface-soft)}

.activity-list{display:grid;gap:10px;padding:12px 16px 16px}
.activity-card{padding:0!important;border:1px solid var(--soc-line)!important;border-radius:11px!important;background:#fff!important;overflow:hidden}
.activity-card-head{padding:14px 15px!important;margin:0!important}
.activity-card-head .eyebrow{margin-bottom:3px!important;color:var(--soc-muted)!important;font-size:10px!important}
.activity-card-head h4{margin:0!important;font-size:14px!important}
.activity-card .activity-state{margin-left:auto;display:flex;align-items:center;gap:8px}
.activity-card.field-activity-collapsed > .foundation-grid{display:none!important}
.activity-card > .foundation-grid{padding:16px;border-top:1px solid var(--soc-line);background:var(--soc-surface-soft)}
.activity-state button{min-height:32px;padding:5px 9px;font-size:11px}

.workers-summary-card{margin-top:12px;padding:18px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.worker-metrics{display:flex;gap:24px;margin-top:10px}
.worker-metrics span{display:grid;gap:2px;color:var(--soc-muted);font-size:11px}
.worker-metrics strong{font:700 18px/1 var(--soc-data);color:var(--soc-ink)}
.workers-summary-card button{align-self:center}

.risk-workspace{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
.risk-workspace.drawer-open{grid-template-columns:minmax(300px,.72fr) minmax(0,1.5fr)!important;align-items:start}
.risk-sidebar{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}
.drawer-open .risk-sidebar{grid-template-columns:1fr}
.risk-summary{
  min-height:178px;padding:18px!important;border:1px solid var(--soc-line)!important;border-radius:var(--soc-radius)!important;background:var(--soc-surface)!important;color:var(--soc-ink)!important;text-align:left!important;display:grid!important;align-content:start;gap:12px!important;box-shadow:0 1px 2px rgba(16,43,37,.035)!important
}
.risk-summary:hover{border-color:#9ec6bd!important;box-shadow:0 8px 24px rgba(16,70,59,.08)!important;transform:translateY(-1px)}
.risk-summary.active{border-color:var(--soc-green)!important;box-shadow:0 0 0 2px rgba(8,118,107,.1)!important}
.risk-summary-head{display:flex;align-items:flex-start;gap:12px}
.risk-index{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--soc-green-soft);color:var(--soc-green-deep);font:750 12px/1 var(--soc-data);flex:none}
.risk-summary-title{min-width:0}
.risk-summary-title strong{font:720 15px/1.3 var(--soc-display);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.risk-summary-title small{display:block;margin-top:4px;color:var(--soc-muted);font-size:11px}
.risk-reading{display:flex;align-items:baseline;gap:8px}
.risk-reading strong{font:750 25px/1 var(--soc-data);letter-spacing:-.04em}
.risk-reading span{color:var(--soc-muted);font-size:12px}
.risk-counts{display:flex;flex-wrap:wrap;gap:6px}
.risk-counts span{padding:4px 7px;border-radius:6px;background:var(--soc-surface-soft);border:1px solid var(--soc-line);color:#4e5f5a;font-size:10px;font-weight:650}
.risk-summary-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;color:var(--soc-green);font-size:11px;font-weight:700}
.risk-summary-foot .risk-complete{color:var(--soc-green-deep)}

.risk-editor{display:none;min-width:0}
.drawer-open .risk-editor{display:block;position:sticky;top:112px;max-height:calc(100dvh - 150px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--soc-line);border-radius:var(--soc-radius);background:var(--soc-surface);box-shadow:var(--soc-shadow)}
.risk-editor-toolbar{position:sticky;top:0;z-index:8;padding:14px 16px;border-bottom:1px solid var(--soc-line);background:rgba(255,255,255,.97);display:flex;align-items:center;gap:12px}
.risk-editor-toolbar div{min-width:0}
.risk-editor-toolbar small{display:block;color:var(--soc-muted);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.risk-editor-toolbar strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
.risk-editor-toolbar button{margin-left:auto}
.risk-editor .risk-card{border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
.risk-editor .risk-card > .risk-card-head{padding:16px 18px!important;margin:0!important;border-bottom:1px solid var(--soc-line)}
.risk-editor .risk-card.risk-core-collapsed > .risk-core-grid{display:none!important}
.risk-core-toggle{width:100%;padding:14px 18px;border:0;border-bottom:1px solid var(--soc-line);border-radius:0;background:var(--soc-surface);color:var(--soc-ink);font-size:13px;font-weight:720;text-align:left;cursor:pointer}
.risk-core-grid{padding:16px 18px;background:var(--soc-surface-soft)}
.risk-editor .risk-detail-section,.risk-editor .soc-fields{margin:0!important;border:0!important;border-bottom:1px solid var(--soc-line)!important;border-radius:0!important;box-shadow:none!important}
.risk-editor .risk-detail-section > summary,.risk-editor .soc-fields > summary{padding:14px 18px!important}
.risk-editor .risk-detail-list,.risk-editor .field-equipment-groups,.risk-editor .characterization-card,.risk-editor .soc-fields > .foundation-grid{padding:14px 18px!important;background:var(--soc-surface-soft)}
.risk-detail-card{border-color:var(--soc-line)!important;border-radius:10px!important;background:#fff!important}
.risk-card-actions{margin:0!important;padding:16px 18px!important;background:#fff8f7!important}

.review-summary{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-bottom:14px!important}
.review-summary article{padding:18px!important;border:1px solid var(--soc-line)!important;border-radius:var(--soc-radius)!important;background:var(--soc-surface)!important;display:grid!important;grid-template-columns:1fr auto;gap:10px 16px!important;align-items:center!important}
.review-summary article strong{font:720 15px/1.25 var(--soc-display)!important}
.review-summary article span{grid-column:1;color:var(--soc-muted)!important;font-size:12px!important}
.review-summary article .review-status{grid-column:2;grid-row:1 / span 2;align-self:start;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:750}
.review-status.pending{background:var(--soc-amber-soft);color:var(--soc-amber)}
.review-status.complete{background:var(--soc-green-soft);color:var(--soc-green-deep)}
.review-summary article button{grid-column:1 / -1;justify-self:start;min-height:34px;padding:6px 10px}
.review-pending-list{margin:0 0 14px;padding:14px 16px;border:1px solid #efddaa;border-radius:12px;background:var(--soc-amber-soft)}
.review-pending-list strong{font-size:12px}
.review-pending-list ul{margin:8px 0 0;padding-left:18px;color:#72511c;font-size:12px;line-height:1.55}
.field-mode #socReviewSummary{display:none!important}
.review-technical{border:1px solid var(--soc-line);border-radius:var(--soc-radius);background:var(--soc-surface);overflow:hidden}
.review-technical-toggle{width:100%;padding:16px 18px;border:0;border-radius:0;background:var(--soc-surface);color:var(--soc-ink);font-size:13px;font-weight:720;text-align:left;cursor:pointer}
.review-technical-toggle::after{content:"Abrir tabela";float:right;color:var(--soc-green);font-size:11px}
.technical-open .review-technical-toggle::after{content:"Fechar tabela"}
.field-mode #socReviewTabs,.field-mode #socReviewTable{display:none!important}
.field-mode .technical-open #socReviewTabs{padding:12px 14px 0!important;margin:12px 0 0!important;display:flex!important;overflow:auto;scrollbar-width:thin}
.field-mode .technical-open #socReviewTable{margin:12px 0 0!important;max-height:430px;display:block!important;overflow:auto;overscroll-behavior:contain}
.export-block{margin-top:14px!important;border:1px solid var(--soc-line)!important;border-radius:12px!important;background:var(--soc-surface)!important;padding:14px 16px!important}

.field-mode button{touch-action:manipulation}
.field-mode button,.field-mode input,.field-mode textarea,.field-mode select{font-family:var(--soc-font)}
.field-mode button:focus-visible,.field-mode input:focus-visible,.field-mode textarea:focus-visible,.field-mode select:focus-visible,.field-mode summary:focus-visible{outline:3px solid rgba(8,118,107,.25)!important;outline-offset:2px!important}
.field-mode h3,.field-mode h4{font-family:var(--soc-display);text-wrap:balance}
.field-mode .badge{font-size:10px!important;letter-spacing:.01em}
.field-mode .muted{color:var(--soc-muted)!important}

@media (max-width:900px){
  dialog.field-mode{width:100vw;height:100dvh;border:0;border-radius:0}
  .foundation-panel{padding:0 14px 24px!important}
  .field-context{grid-template-columns:1fr 1fr!important;padding:16px 16px 14px!important;gap:12px!important}
  .field-context > div:first-child{grid-column:1 / -1;grid-row:auto}
  .field-context > div:first-child strong{font-size:20px}
  .field-context > div:nth-child(3){grid-column:1 / -1}
  .save-pill{position:absolute;right:14px;top:14px}
  .field-steps{top:49px;margin:10px auto 14px!important}
  .field-intro{align-items:flex-start!important;gap:10px!important}
  .risk-workspace.drawer-open{grid-template-columns:1fr!important}
  .risk-sidebar{grid-template-columns:1fr!important}
  .drawer-open .risk-sidebar{display:none!important}
  .drawer-open .risk-editor{position:static;max-height:none}
  .review-summary{grid-template-columns:1fr!important}
  .workers-summary-card{grid-template-columns:1fr}
  .worker-metrics{justify-content:space-between;gap:8px}
}

@media (max-width:540px){
  .foundation-panel{padding-inline:10px!important}
  .modal-head{padding-inline:12px!important}
  .field-context{margin-inline:-10px;padding:24px 14px 12px!important;border-radius:0!important}
  .field-context > div:first-child strong{font-size:16px}
  .field-context .save-pill{display:none}
  .field-context > div:nth-child(2) strong,.field-context > div:nth-child(3) strong{white-space:normal}
  .field-context > div:nth-child(4),.field-context > div:nth-child(5),.field-context > div:nth-child(6){display:none}
  .field-steps{margin-inline:0!important}
  .field-steps button{font-size:12px!important;padding-inline:7px!important}
  .field-intro h3{font-size:20px}
  .field-intro .badge.warning{max-width:none}
  .ghe-profile .ghe-summary{grid-template-columns:1fr;padding:16px}
  .ghe-profile .foundation-grid,.environment-grid{grid-template-columns:1fr!important;padding:14px!important}
  .risk-summary{min-height:160px}
  .review-summary article{padding:15px!important}
  .field-next{position:sticky;bottom:0;z-index:12;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(244,246,244,0),var(--soc-canvas) 24%)}
}

@media (prefers-reduced-motion:reduce){
  .field-mode *{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}
}

/* UX de inspeção: hierarquia contínua, densidade técnica e estados legíveis. */
.field-mode{
  --soc-canvas:#f2f5f3;
  --soc-surface-soft:#f6f8f7;
  --soc-line:#d7e0dc;
  --soc-line-strong:#b9c8c2;
  --soc-green:#086d63;
  --soc-green-deep:#064f49;
  --soc-green-soft:#e4f1ed;
}

dialog.field-mode .modal-head{min-height:50px;padding:8px 20px}
dialog.field-mode #visitModalTitle{font-size:13px;font-weight:720;letter-spacing:.01em}
.foundation-panel{padding-bottom:42px!important}

.field-context{padding-block:13px!important;box-shadow:0 8px 24px rgba(18,54,46,.045)!important}
.field-context::before{top:13px;bottom:13px;width:3px}
.field-context > div small{font-size:9px;letter-spacing:.11em}
.field-context > div strong{font-size:12px}
.field-context > div:first-child strong{font-size:14px}
.visit-meta-toggle{min-height:38px;padding-block:9px;color:var(--soc-green-deep)}

.field-steps{margin-top:12px!important;margin-bottom:22px!important;border-radius:9px!important;background:#e7ece9!important;box-shadow:none!important}
.field-steps button{min-height:38px!important;border-radius:6px!important;font-size:12px!important;letter-spacing:.005em}
.field-steps button.active{box-shadow:0 1px 2px rgba(22,55,47,.14)!important}

.field-intro{position:relative;min-height:50px;padding-left:16px!important;margin-bottom:16px!important}
.field-intro::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;border-radius:3px;background:var(--soc-green)}
.field-intro h3{font-size:22px;line-height:1.12}
.field-intro p.muted{max-width:760px;line-height:1.45}
.field-intro .badge.warning{align-self:center;border:1px solid #e9d39f;background:#fff7e2!important}

.field-mode label{gap:6px;color:#31423e;font-size:12px;font-weight:720;letter-spacing:.005em}
.field-mode input:not([type="checkbox"]):not([type="radio"]),
.field-mode select,
.field-mode textarea{
  min-height:42px;padding:9px 11px;border:1px solid var(--soc-line-strong);border-radius:8px;background:#fff;color:var(--soc-ink);font-size:13px;line-height:1.4;box-shadow:0 1px 0 rgba(18,45,39,.02);transition:border-color .14s ease,box-shadow .14s ease,background .14s ease;
}
.field-mode textarea{min-height:86px}
.field-mode input:not([type="checkbox"]):not([type="radio"]):hover,
.field-mode select:hover,.field-mode textarea:hover{border-color:#8ca69f}
.field-mode input:focus-visible,.field-mode select:focus-visible,.field-mode textarea:focus-visible{border-color:var(--soc-green)!important;box-shadow:0 0 0 3px rgba(8,109,99,.14)!important;outline:0!important}
.field-mode input[aria-invalid="true"],.field-mode select[aria-invalid="true"],.field-mode textarea[aria-invalid="true"],.field-mode .error input,.field-mode .error select,.field-mode .error textarea{border-color:var(--soc-danger)!important;background:var(--soc-danger-soft)!important}
.field-mode input:disabled,.field-mode select:disabled,.field-mode textarea:disabled{border-color:#dde4e1!important;background:#eef2f0!important;color:#71807c!important;box-shadow:none!important;cursor:not-allowed}
.field-mode input[readonly],.field-mode textarea[readonly],.field-mode .readonly-value{border:1px solid #d8e2de!important;border-left:3px solid #9fb8b1!important;border-radius:7px!important;background:#f3f6f5!important;color:#41514d!important;box-shadow:none!important}
.field-mode input[type="checkbox"],.field-mode input[type="radio"]{width:18px;height:18px;min-width:18px;margin:1px 0 0;accent-color:var(--soc-green)}
.field-mode button{min-height:38px;border-radius:8px!important;font-size:12px;letter-spacing:.005em}
.field-mode .primary{background:var(--soc-green)!important;box-shadow:0 1px 2px rgba(4,59,53,.18)}
.field-mode .secondary{border-color:var(--soc-line-strong);background:#fff;color:var(--soc-green-deep)}
.field-mode button:disabled{filter:saturate(.4);opacity:.5!important;cursor:not-allowed}

.field-mode .panel,.field-mode .field-step-panel > details,.field-mode .ghe-summary-card{border-radius:10px!important;box-shadow:none!important}
.ghe-profile{border-left:3px solid var(--soc-green)!important}
.ghe-profile .ghe-summary{padding:16px 18px;grid-template-columns:170px 1fr}
.ghe-profile .ghe-profile-actions{padding-inline:18px}
.field-step-panel[data-field-panel="ghe"] > details{border-radius:9px!important}
.field-step-panel[data-field-panel="ghe"] > details > summary{min-height:48px;padding:13px 16px!important;font-size:13px}
.environment-summary{font-size:11px}
.activity-list{gap:0;padding:0 16px 14px}
.activity-card{border:0!important;border-bottom:1px solid var(--soc-line)!important;border-radius:0!important}
.activity-card:last-child{border-bottom:0!important}
.activity-card-head{padding:13px 2px!important}
.activity-card > .foundation-grid{padding-inline:12px}

.workers-summary-card{
  margin-top:12px;padding:16px 18px;border:1px solid var(--soc-line)!important;border-left:3px solid var(--soc-green)!important;border-radius:10px!important;
  grid-template-columns:minmax(190px,.9fr) minmax(380px,1.5fr) auto;gap:18px;background:var(--soc-surface)!important;box-shadow:none!important
}
.worker-summary-copy{display:grid;gap:3px}
.worker-summary-copy > strong{font:720 15px/1.25 var(--soc-display)}
.worker-summary-copy > small{color:var(--soc-muted);font-size:11px}
.worker-snapshot-count{font:760 22px/1 var(--soc-data);color:var(--soc-green-deep)}
.worker-metrics{display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));gap:0;margin:0;border-left:1px solid var(--soc-line)}
.worker-metrics span{min-height:44px;padding:2px 14px;border-right:1px solid var(--soc-line);align-content:center}
.worker-metrics span:last-child{border-right:0}
.worker-metrics strong{font-size:17px}
.worker-metrics .has-alert strong{color:var(--soc-amber)}

.risk-workspace{gap:16px!important}
.risk-sidebar{display:flex!important;flex-direction:column;gap:0!important;border-top:1px solid var(--soc-line);border-bottom:1px solid var(--soc-line);background:var(--soc-surface)}
.risk-summary{
  position:relative;width:100%;min-height:0;padding:12px 14px!important;border:0!important;border-bottom:1px solid var(--soc-line)!important;border-radius:0!important;background:var(--soc-surface)!important;
  display:grid!important;grid-template-columns:30px minmax(230px,1.6fr) minmax(110px,.55fr) minmax(210px,1fr) minmax(128px,.55fr);gap:8px 14px!important;align-items:center!important;box-shadow:none!important;transform:none!important
}
.risk-summary:last-child{border-bottom:0!important}
.risk-summary::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--soc-line-strong)}
.risk-summary[data-completeness="complete"]::before{background:var(--soc-green)}
.risk-summary[data-completeness="pending"]::before{background:var(--soc-amber)}
.risk-summary:hover{border-color:var(--soc-line)!important;background:#f5f9f7!important;box-shadow:none!important;transform:none!important}
.risk-summary.active{background:var(--soc-green-soft)!important;box-shadow:inset 0 0 0 1px #91beb5!important}
.risk-index{width:24px;height:24px;border-radius:5px;font-size:10px}
.risk-summary-title{display:grid;gap:3px;min-width:0}
.risk-summary-title small{order:0;margin:0;color:var(--soc-muted);font-size:9px;font-weight:750;letter-spacing:.06em;text-transform:uppercase}
.risk-summary-title strong{order:1;font:720 13px/1.28 var(--soc-display);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.risk-reading{display:grid;gap:2px;align-items:center}
.risk-reading strong{font-size:19px;letter-spacing:-.025em}
.risk-reading span{font-size:10px;line-height:1.3}
.risk-counts{gap:4px}
.risk-counts span{padding:3px 5px;border:0;border-radius:4px;background:#edf2f0;font-size:9px}
.risk-summary-foot{display:grid;justify-items:end;gap:4px;margin:0;text-align:right}
.risk-summary-foot .risk-complete{font-size:10px;color:#4a5c57}
.risk-open-label{color:var(--soc-green);font-size:11px}
.risk-open-label::after{content:" →"}

.risk-workspace.drawer-open{grid-template-columns:minmax(315px,.72fr) minmax(0,1.45fr)!important}
.drawer-open .risk-sidebar{border:1px solid var(--soc-line);border-radius:9px;overflow:hidden}
.drawer-open .risk-summary{grid-template-columns:26px minmax(0,1fr) auto;grid-template-areas:"index title reading" "index counts counts" "index foot foot";gap:7px 9px!important;padding:12px!important}
.drawer-open .risk-index{grid-area:index;align-self:start}
.drawer-open .risk-summary-title{grid-area:title}
.drawer-open .risk-summary-title strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.drawer-open .risk-reading{grid-area:reading;justify-items:end;text-align:right}
.drawer-open .risk-counts{grid-area:counts}
.drawer-open .risk-summary-foot{grid-area:foot;display:flex;justify-content:space-between;text-align:left}
.drawer-open .risk-editor{border-radius:9px;box-shadow:0 10px 28px rgba(20,49,42,.07)}
.risk-editor-toolbar{padding:11px 14px}
.risk-editor-toolbar small{font-size:9px;letter-spacing:.1em}
.risk-editor .risk-card > .risk-card-head{padding:14px 16px!important}
.risk-core-toggle,.risk-editor .risk-detail-section > summary,.risk-editor .soc-fields > summary{min-height:44px;padding:12px 16px!important;font-size:12px}

.review-summary{display:block!important;margin-bottom:14px!important;border:1px solid var(--soc-line);border-radius:10px;background:var(--soc-surface);overflow:hidden}
.review-overall{min-height:68px;padding:14px 16px;border-left:3px solid var(--soc-amber);border-bottom:1px solid var(--soc-line);display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fbfcfb}
.review-overall > span:first-child{display:grid;gap:3px}
.review-overall small{color:var(--soc-muted);font-size:9px;font-weight:750;letter-spacing:.1em;text-transform:uppercase}
.review-overall strong{font:740 17px/1.2 var(--soc-display);color:var(--soc-ink)}
.review-overall-meta{font:650 11px/1.2 var(--soc-data);color:var(--soc-muted)}
.review-area-list{display:grid!important;grid-template-columns:1fr 1fr}
.review-summary .review-area-list article{margin:0!important;padding:13px 16px!important;border:0!important;border-right:1px solid var(--soc-line)!important;border-bottom:1px solid var(--soc-line)!important;border-radius:0!important;background:#fff!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto auto;gap:8px 12px!important;align-items:center!important}
.review-summary .review-area-list article:nth-child(2n){border-right:0!important}
.review-summary .review-area-list article:nth-last-child(-n+2){border-bottom:0!important}
.review-area-copy{display:grid;gap:3px;min-width:0}
.review-summary article .review-area-copy strong{font:720 13px/1.25 var(--soc-display)!important}
.review-summary article .review-area-copy small{color:var(--soc-muted);font-size:10px}
.review-summary article .review-status{grid-column:auto;grid-row:auto;align-self:center;white-space:nowrap}
.review-summary article button{grid-column:auto;justify-self:end;min-height:32px;padding:5px 9px}
.review-pending-list{border:1px solid #e8d7ae;border-left:3px solid var(--soc-amber);border-radius:8px;background:#fffaf0}
.review-pending-list ul{columns:2;column-gap:32px}
.review-technical{border-radius:9px}
.review-technical-toggle{min-height:46px;padding:13px 16px}

.field-mode .table-wrap{max-width:100%;border-radius:8px;overscroll-behavior-x:contain}
.field-mode .worker-mark-table th{font-size:10px;letter-spacing:.06em}
.field-mode .worker-mark-table td{padding-block:10px}
.field-mode .empty{min-height:180px;padding:28px;color:var(--soc-muted)}

@media (max-width:900px){
  .workers-summary-card{grid-template-columns:1fr auto}
  .worker-metrics{grid-column:1 / -1;grid-row:2;border-top:1px solid var(--soc-line);border-left:0;padding-top:10px}
  .risk-summary{grid-template-columns:26px minmax(0,1fr) minmax(90px,.45fr);grid-template-areas:"index title reading" "index counts counts" "index foot foot"}
  .risk-index{grid-area:index;align-self:start}.risk-summary-title{grid-area:title}.risk-reading{grid-area:reading;justify-items:end;text-align:right}.risk-counts{grid-area:counts}.risk-summary-foot{grid-area:foot;display:flex;justify-content:space-between;text-align:left}
  .risk-workspace.drawer-open{grid-template-columns:1fr!important}
  .review-area-list{grid-template-columns:1fr}
  .review-summary .review-area-list article{border-right:0!important;border-bottom:1px solid var(--soc-line)!important}
  .review-summary .review-area-list article:last-child{border-bottom:0!important}
}

@media (max-width:540px){
  dialog.field-mode .modal-head{padding-inline:12px}
  .foundation-panel{padding-inline:10px!important}
  .field-context{margin-inline:-10px;padding:13px 13px 11px!important;grid-template-columns:1fr 1fr!important;gap:9px 12px!important}
  .field-context > div:first-child,.field-context > div:nth-child(3){grid-column:1 / -1}
  .field-context > div:nth-child(4),.field-context > div:nth-child(5),.field-context > div:nth-child(6){display:block}
  .field-context > div strong,.field-context > div:first-child strong{font-size:11px;white-space:normal;line-height:1.3}
  .field-context > div:first-child strong{font-size:13px}
  .field-context .save-pill{display:inline-flex;position:static;justify-self:start;padding:5px 8px!important;font-size:10px!important}
  .visit-meta-toggle{margin-inline:-10px;width:calc(100% + 20px);padding-inline:14px;text-align:left}
  .field-steps{top:49px;margin-inline:0!important;padding:3px!important}
  .field-steps button{min-height:42px!important;padding:5px 4px!important;gap:4px!important;font-size:10px!important;line-height:1.15;text-align:left}
  .field-steps button span{width:18px!important;height:18px!important;font-size:9px!important}
  .field-intro{padding-left:12px!important;display:grid!important}
  .field-intro h3{font-size:19px}
  .field-intro p.muted{font-size:12px}
  .field-intro .badge.warning{justify-self:start}
  .ghe-profile .ghe-summary{padding:14px;gap:8px}
  .ghe-profile .ghe-profile-actions{padding:0 14px 14px;align-items:stretch;flex-direction:column}
  .ghe-profile .ghe-profile-actions button{width:100%}
  .workers-summary-card{padding:14px;grid-template-columns:1fr;gap:12px}
  .workers-summary-card > button{width:100%}
  .worker-metrics{grid-column:auto;grid-row:auto;grid-template-columns:1fr 1fr;padding:0;border:1px solid var(--soc-line);border-radius:7px;overflow:hidden}
  .worker-metrics span{padding:9px 10px;border-right:1px solid var(--soc-line);border-bottom:1px solid var(--soc-line)}
  .worker-metrics span:nth-child(2n){border-right:0}.worker-metrics span:nth-last-child(-n+2){border-bottom:0}
  .risk-summary{padding:11px 10px!important;grid-template-columns:24px minmax(0,1fr) auto;gap:7px 8px!important}
  .risk-summary-title strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .risk-reading strong{font-size:16px}
  .risk-counts span{font-size:8px}
  .risk-summary-foot .risk-complete{font-size:9px}
  .drawer-open .risk-editor{border:0;border-radius:0;box-shadow:none;margin-inline:-1px}
  .risk-editor-toolbar{top:49px}
  .review-overall{align-items:flex-start;flex-direction:column;gap:5px}
  .review-overall strong{font-size:15px}
  .review-summary .review-area-list article{grid-template-columns:minmax(0,1fr) auto;padding:12px!important}
  .review-summary article .review-status{grid-column:2;grid-row:1}
  .review-summary article button{grid-column:1 / -1;width:100%}
  .review-pending-list ul{columns:1}
  .field-mode .foundation-toolbar{padding:11px 12px}
  .field-mode .foundation-toolbar button{width:100%}
  .field-next{margin-inline:-10px;padding-inline:10px}
  .field-next button{width:100%}
}

@media (max-width:390px){
  .field-context{grid-template-columns:1fr!important}
  .field-context > div:first-child,.field-context > div:nth-child(3){grid-column:auto}
  .field-context > div:nth-child(4),.field-context > div:nth-child(5),.field-context > div:nth-child(6){display:grid;grid-template-columns:90px 1fr;align-items:baseline;gap:8px}
  .field-context > div:nth-child(4) small,.field-context > div:nth-child(5) small,.field-context > div:nth-child(6) small{margin:0}
  .field-steps button{font-size:9px!important}
  .field-steps button span{display:none!important}
  .activity-card-head{padding-inline:0!important}
  .activity-card .activity-state{margin-top:9px;justify-content:space-between}
}

/* Polimento final da visita: densidade, linguagem operacional e mobile seguro. */
#visitsRows td:nth-child(6),table:has(#visitsRows) th:nth-child(6){display:none}
#view-visits>.section-heading p.muted{font-size:0}
#view-visits>.section-heading p.muted::after{content:"Visitas em andamento com histórico protegido.";font:400 14px/1.5 var(--soc-font)}
#environmentSaveState,.activity-save-state{display:none!important}
[data-field-panel="review"] .field-intro>.badge.warning{display:none!important}

.visit-context-toggle{display:none}
.ghe-profile .ghe-summary{grid-template-columns:150px minmax(0,1fr);gap:7px 18px;padding:11px 16px 8px}
.ghe-profile .ghe-summary-copy{line-height:1.35}
.ghe-profile .ghe-profile-actions{padding:0 16px 10px;gap:8px}
.ghe-profile .ghe-profile-actions button{min-height:32px;padding:5px 9px}
.field-step-panel[data-field-panel="ghe"]>details{margin-top:8px!important}
.field-step-panel[data-field-panel="ghe"]>details>summary{min-height:42px;padding:9px 14px}
.field-step-panel[data-field-panel="ghe"] .foundation-toolbar{padding:9px 14px}
.field-step-panel[data-field-panel="ghe"] .activity-card-head{padding-block:9px}
.field-step-panel[data-field-panel="ghe"] .activity-card{padding-block:8px}

.risk-summary{border-color:#e3e9e6!important;background:#fff!important}
.risk-summary:hover{background:#f7faf9!important}
.risk-summary.active{border-color:#cbdad5!important;background:#f1f7f5!important;box-shadow:inset 3px 0 0 var(--soc-green)}
.risk-counts span{border-color:#e1e7e4!important;background:transparent!important}
.risk-reading{background:#f7faf9;border-radius:7px;padding:5px 8px}

.review-summary .review-area-list article{padding-block:11px!important}
.review-summary article .review-status{padding:4px 7px;font-size:9px}
.review-summary article .review-status.pending{border:1px solid #e9ddc3;background:#fffaf0;color:#74591f}
.review-summary article button{min-height:31px}
.review-overall{padding-block:10px}

@media (max-width:540px){
  .field-mode{--field-action-reserve:82px}
  .field-context{grid-template-columns:minmax(0,1fr) auto!important;gap:6px 10px!important;padding:9px 12px!important}
  .field-context>div:first-child{grid-column:1 / -1!important}
  .field-context>div:nth-child(2),.field-context>div:nth-child(3){display:grid!important;grid-column:1 / -1!important;grid-template-columns:84px minmax(0,1fr);align-items:baseline;gap:8px}
  .field-context>div:nth-child(n+4){display:none!important}
  .field-context-expanded .field-context>div:nth-child(n+4){display:grid!important;grid-column:1 / -1!important;grid-template-columns:84px minmax(0,1fr);align-items:baseline;gap:8px}
  .field-context>div small{margin:0!important;font-size:9px!important}
  .field-context>div strong,.field-context>div:first-child strong{font-size:11px!important;line-height:1.25}
  .field-context>div:first-child strong{font-size:13px!important}
  .field-context .save-pill{grid-column:2;justify-self:end!important;align-self:center}
  .visit-context-toggle{display:inline-flex;grid-column:1;align-items:center;justify-content:flex-start;min-height:32px;padding:3px 0;border:0;background:transparent;color:var(--soc-green);font:700 10px/1.2 var(--soc-font)}

  .field-steps{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:2px!important;padding:3px!important}
  .field-steps button{min-width:0;min-height:40px!important;padding:4px 3px!important;justify-content:center!important;text-align:center!important;font-size:9.5px!important;line-height:1.12!important}
  .field-steps button span{width:17px!important;height:17px!important;flex:0 0 17px;font-size:8px!important}

  .ghe-profile .ghe-summary{grid-template-columns:1fr;padding:10px 12px 7px;gap:5px}
  .ghe-profile .ghe-profile-actions{padding:0 12px 9px;align-items:center;flex-direction:row}
  .ghe-profile .ghe-profile-actions button{width:auto;min-height:31px}
  .field-step-panel[data-field-panel="ghe"]>details>summary{min-height:40px;padding:8px 12px}
  .field-step-panel[data-field-panel="ghe"] .foundation-toolbar{padding:8px 12px}

  .field-step-panel{padding-bottom:calc(var(--field-action-reserve) + env(safe-area-inset-bottom))!important}
  .field-next{min-height:64px;margin-inline:-10px;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important}
  .field-next button{min-height:44px}

  .risk-summary{padding:9px 9px!important;gap:6px 7px!important}
  .risk-reading{padding:4px 6px}
  .risk-counts{gap:4px!important}
  .risk-counts span{padding:3px 5px!important}

  .review-overall{padding:9px 11px}
  .review-summary .review-area-list article{padding:10px 11px!important;gap:7px 9px}
  .review-summary article .review-status{padding:3px 6px}
  .review-summary article button{min-height:36px}
}

@media (max-width:390px){
  .field-context{grid-template-columns:minmax(0,1fr) auto!important}
  .field-context>div:first-child,.field-context>div:nth-child(2),.field-context>div:nth-child(3){grid-column:1 / -1!important}
  .field-context-expanded .field-context>div:nth-child(n+4){grid-template-columns:80px minmax(0,1fr)!important}
  .field-steps button span{display:grid!important}
  .field-steps button{font-size:9px!important}
}
