.contract-choice-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.contract-choice-card{display:flex;flex-direction:column;min-height:210px;padding:22px;border:1px solid #dfe5ea;border-radius:18px;background:#fff;text-decoration:none;color:inherit}.contract-choice-card small{font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#66727d}.contract-choice-card strong{font-size:1.2rem;margin:8px 0}.contract-choice-card span{color:#5f6b75;line-height:1.5}.contract-choice-card b{margin-top:auto}.contract-capabilities{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.cap-pill{font-size:.78rem;padding:6px 9px;border-radius:999px;background:#eef3f6}.cap-pill.off{opacity:.55}.contract-editor-layout{display:grid;grid-template-columns:240px minmax(0,1fr) 290px;gap:18px;align-items:start}.contract-side-panel{position:sticky;top:18px;border:1px solid #dfe5ea;border-radius:16px;background:#fff;padding:16px;max-height:80vh;overflow:auto}.contract-side-panel h3{margin:0 0 12px}.contract-token-btn{display:block;width:100%;text-align:left;border:0;background:#f4f7f9;border-radius:8px;padding:8px 10px;margin:5px 0;cursor:pointer}.contract-token-btn:hover{background:#e9f2f7}.contract-editor-main textarea{min-height:620px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.55}.contract-helper{font-size:.82rem;color:#64717c}.contract-candidate{padding:9px 0;border-bottom:1px solid #edf0f2}.contract-candidate strong{display:block}.contract-audit-panel{background:#fff;border:1px solid #dfe5ea;border-radius:16px;padding:16px}.contract-audit-head h2{margin:3px 0 12px}.contract-audit-item{display:grid;grid-template-columns:75px 1fr;gap:6px 10px;padding:10px;border-radius:10px;margin:8px 0;background:#f5f7f8}.contract-audit-item small{grid-column:2;color:#7a858f}.severity-error{border-left:4px solid #b42318}.severity-warning{border-left:4px solid #b7791f}.severity-pass{border-left:4px solid #2f855a}.contract-preview-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.contract-paper{position:relative;width:210mm;min-height:297mm;margin:22px auto;background:#fff;box-shadow:0 10px 34px rgba(0,0,0,.12);padding:18mm 18mm 16mm;box-sizing:border-box;color:#1f2933}.contract-accent{position:absolute;left:0;top:0;bottom:0;width:3mm;background:#25a9df}.contract-doc-head{display:flex;justify-content:space-between;gap:30px;border-bottom:1px solid #ccd5dc;padding-bottom:12px;margin-bottom:25px}.contract-doc-head>div{display:flex;flex-direction:column}.contract-doc-head small,.contract-doc-head span{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#687783}.contract-doc-head b{text-align:right}.contract-body h1{text-align:center;font-size:1.15rem;margin:16px 0 28px}.contract-clause{break-inside:avoid;margin:0 0 18px}.contract-clause h2{font-size:.9rem;margin:0 0 7px}.contract-clause p,.contract-paragraph{font-size:.86rem;line-height:1.62;text-align:justify}.contract-custom-flag{display:inline-block;background:#fff4df;padding:4px 7px;border-radius:6px}.contract-signature{break-inside:avoid;width:72mm;margin-top:27mm}.signature-line{border-top:1px solid #333;margin-bottom:7px}.contract-signature strong,.contract-signature span,.contract-signature small{display:block}.contract-signature span,.contract-signature small{font-size:.72rem;color:#5e6871}.contract-doc-footer{position:absolute;bottom:8mm;left:18mm;right:18mm;border-top:1px solid #dde3e7;padding-top:5px;font-size:.62rem;color:#687783}.contract-page-break{break-before:page;height:1px}.contract-audit-actions{margin-top:14px}.contract-import-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.contract-import-summary div{padding:12px;background:#f5f7f8;border-radius:10px}.contract-field-section summary{font-weight:700;cursor:pointer;padding:8px 0}.contract-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.contract-field-grid .wide{grid-column:1/-1}.contract-inline-check{display:flex;gap:10px;align-items:flex-start;padding:12px;background:#f5f7f8;border-radius:10px}.contract-inline-check input{margin-top:3px}.contract-toolbar-note{font-size:.8rem;color:#61707b}@media(max-width:1100px){.contract-choice-grid{grid-template-columns:repeat(2,1fr)}.contract-editor-layout{grid-template-columns:1fr}.contract-side-panel{position:static;max-height:none}.contract-preview-grid{grid-template-columns:1fr}.contract-paper{width:100%;min-height:auto}.contract-field-grid{grid-template-columns:1fr}}@media print{.contract-paper{box-shadow:none;margin:0;width:210mm;min-height:297mm}.contract-preview-grid>.contract-audit-panel,.report-toolbar,.no-print{display:none!important}.contract-doc-footer{position:fixed}}

.contract-custom-token{margin-top:8px}

/* v1.6.0 R3 — alinhamento dos contratos com os componentes consolidados do RH.Me */
.contract-field-help{display:block;margin-top:6px;color:#687783;font-size:.74rem;line-height:1.4}
.contract-field-section>summary{display:flex;align-items:center;justify-content:space-between;gap:12px}
.contract-field-section>summary .btn{min-height:34px;padding:.45rem .7rem;font-size:.74rem}
.contract-field-section[open]>summary{margin-bottom:12px}
.contract-date-control{display:flex;gap:8px;align-items:stretch}.contract-date-control input{flex:1}.contract-date-control .btn{min-height:46px;white-space:nowrap}
.contract-date-summary{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:18px;padding:12px 14px;border-left:3px solid #25a9df;background:#f4f8fa;font-size:.78rem;color:#53616d}
.contract-date-summary strong{width:100%;color:#1f2933}.contract-date-summary span{white-space:nowrap}.contract-date-summary .is-error{color:#b42318;font-weight:700}
.contract-registry-field{position:relative}.contract-registry-results{position:absolute;left:0;right:0;top:calc(100% - 2px);z-index:90;background:#fff;border:1px solid #cfd7dc;box-shadow:0 12px 28px rgba(0,0,0,.14);max-height:310px;overflow:auto}
.contract-registry-option{display:grid;width:100%;grid-template-columns:120px minmax(0,1fr);gap:8px 12px;padding:11px 12px;border:0;border-bottom:1px solid #e5eaed;background:#fff;text-align:left;cursor:pointer;color:#18252e;font:inherit}
.contract-registry-option:hover,.contract-registry-option:focus{background:#eef8fc;outline:0}.contract-registry-option b{font-size:12px;color:#004d73;white-space:nowrap}.contract-registry-option span{font-size:12px;line-height:1.35;min-width:0}.contract-registry-option small{grid-column:2;font-size:10px;color:#657681}.contract-registry-empty{padding:12px;color:#64717c;font-size:.78rem;line-height:1.4}
.contract-responsibility-row{margin:14px 0 8px}.contract-responsibility-compact{display:flex;align-items:center;gap:9px;margin:0;padding:9px 12px;border:1px solid #dfe5ea;background:#f8fafb;font-size:.78rem;font-weight:400;letter-spacing:0}.contract-responsibility-compact input{width:auto;height:auto;flex:0 0 auto}.contract-responsibility-compact strong{font-size:.78rem}
@media(max-width:760px){.contract-field-section>summary{align-items:flex-start;flex-direction:column}.contract-field-section>summary .btn{width:100%}.contract-registry-option{grid-template-columns:1fr}.contract-registry-option small{grid-column:1}.contract-date-control{align-items:stretch}.contract-date-summary{display:block}.contract-date-summary span{display:block;margin-top:5px;white-space:normal}.contract-responsibility-compact{align-items:flex-start}}
@media print{.contract-registry-results{display:none!important}}
.contract-group-action{display:flex;justify-content:flex-end;margin:-4px 0 12px}.contract-group-action .btn{min-height:36px;padding:.5rem .75rem;font-size:.74rem}
@media(max-width:760px){.contract-group-action{justify-content:stretch}.contract-group-action .btn{width:100%}}

/* v1.6.0 R6 — helper acionado somente pelo ícone; nunca pelo foco do campo */
.contract-field-help{display:none!important}
.contract-help-field{position:relative}
.contract-field-label-row{display:flex;align-items:center;gap:7px;margin-bottom:6px}
.contract-field-label-row>label{margin:0}
.contract-help-wrap{position:relative;display:inline-flex;align-items:center;flex:0 0 auto}
.contract-help-indicator{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:1px solid #8a98a3;border-radius:50%;font:800 11px/1 inherit;color:#5f6d77;background:#fff;cursor:help}
.contract-help-indicator:hover,.contract-help-indicator:focus{border-color:#25a9df;color:#0a6f98;outline:2px solid rgba(37,169,223,.16);outline-offset:2px}
.contract-help-popover{position:absolute;left:0;top:calc(100% + 8px);z-index:140;width:max-content;max-width:min(360px,calc(100vw - 48px));padding:9px 11px;border:1px solid #cfd7dc;border-radius:6px;background:#17242d;color:#fff;box-shadow:0 10px 24px rgba(0,0,0,.18);font-size:.72rem;line-height:1.42;font-weight:400;letter-spacing:0;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-3px);transition:opacity .12s ease,transform .12s ease,visibility .12s ease;white-space:normal}
.contract-help-wrap:hover .contract-help-popover,.contract-help-wrap:focus-within .contract-help-popover{opacity:1;visibility:visible;transform:translateY(0)}
.contract-cargo-field{position:relative}
.contract-cargo-results{top:calc(100% - 1px);z-index:170}
.contract-registry-results{z-index:170}
@media(max-width:760px){.contract-help-popover{left:auto;right:0;max-width:calc(100vw - 56px)}}
@media print{.contract-help-wrap{display:none!important}}

/* v1.6.0 R6 — datas calculadas e estados de validação */
.contract-computed-date-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;margin-top:4px}.contract-computed-date-grid label{font-size:.7rem;color:#53616d}.contract-computed-date-grid input[readonly]{margin-top:5px;background:#fff;border:1px solid #d6dee3;color:#1f2933;font-weight:700;cursor:default}.contract-date-summary [data-contract-date-status]{width:100%;margin-top:4px}.contract-date-summary [data-contract-date-status].is-ok{color:#2f6b48}.contract-date-summary [data-contract-date-status].is-error{color:#b42318;font-weight:700}
@media(max-width:900px){.contract-computed-date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.contract-computed-date-grid{grid-template-columns:1fr}}
