/* Profile workflows share the approved enterprise shell. */
#v-registro > :not(.wf-screen), #v-proyectos > :not(.wf-screen), #v-perfil > :not(.wf-screen), #v-cotiza > :not(.wf-screen), #v-privado > :not(.wf-screen), #v-control > :not(.wf-screen), #subscription-bar, #subscription-dialog { display:none !important; }
.ep-preview .view { min-width:0; }
.ep-preview .view:not(.on) { display:none !important; }
.ep-preview .wf-screen { display:block; width:100%; min-width:0; }
.ep-preview #v-registro > .wf-screen { padding:26px 30px; }
#wf-active-plan { margin:0 0 0 var(--sidebar); padding:10px 30px; border-bottom:1px solid #dfe3e9; background:#edf2fa; color:#35455e; font-size:13px; overflow-wrap:anywhere; }
.ep-collapsed .ep-release { display:none; }
.ep-preview .wf-screen h2 { font-size:20px; margin:0 0 14px; }
.ep-preview .wf-screen h3 { font-size:16px; }
.wf-screen p { max-width:80ch; }
.wf-toolbar, .wf-actions { display:flex; gap:12px; align-items:center; flex-wrap:wrap; margin:16px 0; }
.wf-toolbar > label { flex:1 1 200px; }
.wf-form { max-width:960px; }
.wf-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 24px; }
.wf-grid > *, .wf-field { min-width:0; }
.wf-field { display:flex; flex-direction:column; gap:6px; margin-bottom:16px; font-size:14px; color:#333d49; }
.ep-preview .wf-field input, .ep-preview .wf-field select, .ep-preview .wf-field textarea { width:100%; min-width:0; max-width:100%; padding:10px 12px; border:1px solid #b9c2cf; border-radius:4px; background:#fff; color:#20252d; font-size:15px; }
.wf-field textarea { min-height:110px; resize:vertical; }
.ep-preview .wf-field [aria-invalid=true] { border:2px solid #b33434; }
.wf-wide { grid-column:1 / -1; }
.wf-form fieldset { border:0; border-top:1px solid #d9dfe7; padding:18px 0 0; margin:20px 0; min-width:0; }
.wf-form legend { padding-right:12px; font-weight:600; }
.wf-checks { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 16px; max-height:250px; overflow-y:auto; border:1px solid #d9dfe7; padding:12px; border-radius:4px; }
.wf-checks label, .wf-check { display:flex; align-items:flex-start; gap:8px; font-size:14px; overflow-wrap:anywhere; }
.wf-checks input, .wf-check input { width:16px !important; height:16px; flex:0 0 16px; margin-top:3px; accent-color:#245ac2; }
.wf-profile-card { display:block; text-align:left; padding:24px; border:1px solid #cbd2dd; border-radius:6px; background:#fff; color:#20252d; min-height:150px; }
.wf-profile-card:hover { border-color:#245ac2; background:#f6f8fd; }
.wf-profile-card strong { display:block; font-size:20px; margin:12px 0 6px; }
.wf-profile-card span { display:block; font-weight:400; }
.wf-auth { max-width:460px; padding:24px 0; }
.wf-note { padding:12px 16px; border-left:3px solid #c79b29; background:#fff8e6; color:#5f4b16; margin:14px 0; overflow-wrap:anywhere; }
.wf-note.error { border-color:#bd3c3c; background:#fff1f1; color:#882626; }
.wf-note.success { border-color:#307a54; background:#eff8f2; color:#235a3e; }
.wf-plan { padding:16px 0; border-top:1px solid #dfe3e9; border-bottom:1px solid #dfe3e9; margin:18px 0; }
.wf-metrics { display:flex; flex-wrap:wrap; gap:16px 40px; margin:16px 0; }
.wf-metrics div { min-width:0; flex:1 1 130px; max-width:100%; }
.wf-metrics dt { color:#596574; font-size:13px; }
.wf-metrics dd { margin:4px 0; font-size:16px; font-weight:600; overflow-wrap:anywhere; }
.wf-scope-description { white-space:pre-wrap; overflow-wrap:anywhere; }
.wf-project-tabs { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); margin:12px 0 20px; gap:4px; }
.wf-project-tabs button { min-width:0; white-space:normal; }
.wf-pdf-preview { width:100%; height:400px; border:1px solid #dfe3e9; }
.wf-contract { margin-top:20px; padding-top:16px; border-top:1px solid #dfe3e9; }
@media (max-width:580px) {
  [data-client-contact] .wf-metrics { display:grid; grid-template-columns:minmax(0,1fr); }
  .wf-project-tabs { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .wf-pdf-preview { height:320px; }
}
.wf-profile-switch { display:flex; gap:8px; align-items:center; flex-wrap:wrap; font-size:13px; }
.wf-profile-switch select { max-width:200px; padding:8px; border:1px solid #b9c2cf; border-radius:4px; background:white; color:#20252d; }
.wf-table { width:100%; border-collapse:collapse; background:white; table-layout:fixed; }
.wf-table th { text-align:left; background:#eff2f6; color:#465264; font-size:13px; }
.wf-table td, .wf-table th { padding:12px; border-bottom:1px solid #e1e5eb; overflow-wrap:anywhere; }
.wf-table th:first-child { width:36%; }
.wf-table td small { display:block; margin-top:5px; color:#5b6775; }
.wf-guide-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; list-style:none; padding:0; margin:20px 0; }
.wf-guide-candidates { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
.wf-supplier-choice.wf-guide-candidate { gap:16px; padding:12px; border:1px solid #dfe3e9; border-radius:4px; text-decoration:none; }
.wf-guide-candidate input { flex:none; width:22px; height:22px; accent-color:#245ac2; }
.wf-guide-candidate span { min-width:0; }
.wf-guide-candidate small { display:block; color:#596574; margin-top:4px; }
.wf-guide-candidate[data-selected=true] { background:#eef3fb; border-color:#245ac2; }
.wf-guide-steps li { min-width:0; padding:10px 0; border-bottom:3px solid #dfe3e9; color:#596574; font-size:14px; }
.wf-guide-steps li[aria-current=step] { border-color:#245ac2; color:#20252d; font-weight:600; }
.wf-guide-table button { display:inline-flex; align-items:center; gap:6px; white-space:normal; }
.wf-link { background:none; border:0; padding:0; color:#245ac2; text-align:left; font-weight:600; text-decoration:underline; }
.wf-badge { display:inline-block; padding:3px 7px; background:#fff2cc; color:#695217; border:1px solid #e7d7a4; border-radius:3px; font-size:12px; }
.wf-steps { display:flex; list-style:none; padding:0; gap:12px; margin:20px 0; }
.wf-steps li { flex:1; border-top:3px solid #dce1e8; padding-top:8px; font-size:13px; }
.wf-steps li[aria-current] { border-color:#245ac2; font-weight:600; color:#204d9b; }
.ep-preview .wf-dialog { width:min(850px,calc(100vw - 32px)); max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); border:1px solid #cbd2dd; border-radius:6px; padding:24px; color:#20252d; background:white; overflow:auto; }
.wf-dialog::backdrop { background:rgba(20,25,35,.45); }
.wf-dialog h2 { font-size:22px; margin:0; }
.wf-dialog header { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.ep-preview .wf-dialog[open] { display:flex; flex-direction:column; overflow:hidden; }
.wf-dialog > header { flex:none; padding-bottom:16px; }
.wf-dialog > .wf-body { min-height:0; overflow:auto; }
.wf-dialog > .wf-body > .wf-actions { position:sticky; bottom:0; z-index:2; padding:12px 0; margin:0; background:white; border-top:1px solid #dfe3e9; }
.wf-docs { padding-left:22px; }
.wf-docs li { margin-bottom:10px; overflow-wrap:anywhere; }
.wf-empty { padding:28px 0; color:#5b6775; }
.wf-collaboration { margin-top:24px; padding-top:20px; border-top:1px solid #dfe3e9; min-width:0; }
.wf-account-code { overflow-wrap:anywhere; }
.wf-collab-heading { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.wf-collab-heading h3 { margin-right:auto; }
.wf-collab-heading [data-connection] { font-size:13px; color:#526473; }
.wf-file-review { margin:22px 0; border-top:1px solid #dfe3e9; padding-top:12px; }
.wf-file-review h4 { font-size:15px; overflow-wrap:anywhere; }
.wf-design-preview { display:block; max-width:100%; max-height:420px; object-fit:contain; margin:12px auto; }
.wf-comment-list,.wf-project-quotes { padding:0; list-style:none; }
.wf-comment-list li,.wf-project-quotes li { border-bottom:1px solid #e1e5eb; padding:12px 0; overflow-wrap:anywhere; }
.wf-comment-list time { color:#5b6775; font-size:12px; margin-left:12px; }
.wf-comment-list p,.wf-project-quotes p { white-space:pre-wrap; }
.wf-project-quotes li > span { display:block; margin:6px 0; }
.wf-filter-status { min-height:20px; color:#5b6775; }
.wf-supplier-table th:first-child { width:48px; }
.wf-supplier-table th:nth-child(2) { width:44%; }
.wf-supplier-table input[type="checkbox"] { width:18px; height:18px; accent-color:#245ac2; }
.wf-supplier-table td { vertical-align:top; }
.wf-supplier-table td:first-child,.wf-supplier-table th:first-child{padding:4px}
.wf-supplier-mark{display:flex;align-items:center;justify-content:center;min-height:44px;cursor:pointer}
.wf-supplier-choice{display:flex;align-items:center;min-height:44px;cursor:pointer;color:#245ac2;text-decoration:underline;overflow-wrap:anywhere}
.wf-supplier-disabled{color:#596574;text-decoration:none;cursor:not-allowed}
.wf-supplier-table tr[data-selected=true]{background:#edf3fc}
.wf-supplier-table tr:focus-within{outline:2px solid #245ac2;outline-offset:-2px}
.wf-supplier-table details { font-size:13px; margin-top:8px; }
.wf-supplier-footer { justify-content:space-between; flex-wrap:wrap; }
.wf-actions > button { display:inline-flex; align-items:center; gap:8px; }
.ep-topbar { flex-wrap:wrap; }
.wf-global-error { margin:12px 30px 12px calc(var(--sidebar) + 30px); }
@media(max-width:760px) { #wf-active-plan { margin-left:0; } }
@media(max-width:1000px) { .wf-grid { grid-template-columns:1fr; } .wf-wide { grid-column:auto; } }
@media(max-width:640px) {
 .ep-preview #v-registro > .wf-screen { padding:24px 16px; }
 #wf-active-plan { margin-left:0; padding:10px 16px; }
 .wf-checks { grid-template-columns:1fr; } .wf-table th:nth-child(2),.wf-table td:nth-child(2) { display:none; }
 .wf-table th:first-child { width:46%; } .wf-table td,.wf-table th { padding:10px 6px; font-size:13px; }
 .wf-steps { gap:8px; } .wf-steps li { font-size:12px; }
 .wf-profile-switch { width:100%; } .wf-profile-switch select { flex:1; max-width:none; }
 .ep-topbar { padding:12px 16px; } .wf-global-error { margin:12px 16px; }
 .wf-metrics { gap:12px 20px; } .wf-dialog { padding:16px !important; }
 .wf-guide-steps { grid-template-columns:minmax(0,1fr); gap:4px; }
 .wf-guide-table, .wf-guide-table tbody { display:block; }
 .wf-guide-table thead { display:none; }
 .wf-guide-table tr { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:12px 0; border-bottom:1px solid #e1e5eb; }
 .wf-guide-table td, .wf-guide-table td:nth-child(2) { display:block; width:auto; border:0; }
 .wf-guide-table td:first-child, .wf-guide-table td:last-child { grid-column:1 / -1; }
 .wf-guide-table td:nth-child(2)::before { content:attr(data-label); display:block; color:#596574; font-size:12px; }
 .wf-guide-table td:nth-child(3)::before { content:attr(data-label); display:block; color:#596574; font-size:12px; }
 .wf-supplier-table th:nth-child(2),.wf-supplier-table td:nth-child(2) { display:table-cell; }
 .wf-supplier-table th:first-child { width:44px; }
 .wf-supplier-table th:nth-child(2) { width:49%; }
}
.wf-pdf-toolbar{display:flex;align-items:center;gap:12px;margin:12px 0;flex-wrap:wrap}
.wf-pdf-toolbar label{display:flex;align-items:center;gap:8px}
.wf-pdf-toolbar input{width:72px}
.wf-pdf-canvas{display:block;width:100%;height:auto;border:1px solid #d7dde3;background:#fff}
.wf-project-quotes small{display:block;margin:4px 0;color:#596574;overflow-wrap:anywhere}
.wf-dossier{margin-top:24px;padding-top:20px;border-top:1px solid #dfe3e9;min-width:0}
.wf-document-record{padding:16px 0;border-bottom:1px solid #dfe3e9;overflow-wrap:anywhere}
.wf-document-record h4{font-size:16px;margin:0 0 10px}
.wf-dossier .wf-table-wrap{width:100%;overflow:auto}
.wf-dossier table{width:100%;border-collapse:collapse;font-size:14px}
.wf-dossier td,.wf-dossier th{padding:10px;text-align:left;border-bottom:1px solid #dfe3e9;vertical-align:top;overflow-wrap:anywhere}
.wf-document-image{display:block;max-width:100%;max-height:480px;object-fit:contain;margin:12px auto}
.wf-dossier form{margin-bottom:16px}
.wf-dossier input[type=file]{width:100%;min-width:0}
.wf-field-error{display:block;color:#882626;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.wf-error-list{margin:10px 0 0;padding-left:22px;line-height:1.6;overflow-wrap:anywhere}
.wf-error-list li+li{margin-top:6px}
.wf-error-link{display:inline;border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;text-decoration:underline;cursor:pointer;white-space:normal;overflow-wrap:anywhere}
.wf-error-link:focus-visible{outline:2px solid #2458c6;outline-offset:3px}
.wf-notifications{list-style:none;margin:0;padding:0}
.wf-notifications li{padding:16px 0;border-bottom:1px solid #dfe3e9;overflow-wrap:anywhere}
.wf-notifications li[data-unread=true]{border-left:3px solid #245ac2;padding-left:12px}
.wf-notifications .wf-badge{margin-left:8px}
.wf-notifications p{margin:6px 0}
.wf-notifications small{color:#596574}
[data-action=notifications]{display:inline-flex;align-items:center;gap:6px}
@media(max-width:640px){.wf-dossier table,.wf-dossier tbody{display:block}.wf-dossier thead{display:none}.wf-dossier tr{display:grid;grid-template-columns:minmax(0,1fr);padding:10px 0;border-bottom:1px solid #dfe3e9}.wf-dossier td{display:block;border:0;padding:4px 0}}
