/* Ficha de clientes y proveedores (0.4): navegación por secciones a la izquierda y formulario continuo. */
.party-layout{display:flex;flex:1;min-height:0}
.party-rail{display:flex;flex-direction:column;gap:2px;width:178px;flex-shrink:0;padding:16px 10px;border-right:1px solid var(--line);background:#fafcf7;overflow:auto}
.party-rail button{border:0;background:none;text-align:left;padding:9px 12px;border-radius:6px;font-size:12px;color:var(--muted)}
.party-rail button:hover{background:#edf3e7;color:var(--green)}
.party-body{scroll-behavior:smooth}
.plain-fieldset{border:0;padding:0;margin:0;min-width:0}
.party-section{padding:4px 0 22px;margin-bottom:22px;border-bottom:1px solid var(--line)}
.party-section:last-child{border-bottom:0;margin-bottom:0}
.party-section>h3{font-size:12px;letter-spacing:1.2px;text-transform:uppercase;color:var(--green);margin:0 0 16px}
.party-section .small.muted{margin:12px 0 0}
.party-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.party-meta{margin-top:4px}
.doc-input{display:flex;gap:6px;align-items:stretch}
.doc-input input{flex:1;min-width:0}
.dv-box{min-width:44px;display:grid;place-items:center;border:1px solid #dce4d9;border-radius:6px;background:#f3f7ed;color:var(--green);font-weight:700;font-variant-numeric:tabular-nums}
.dv-box.bad{background:#fff1ef;color:var(--red);border-color:#f1d6d0}
@media(max-width:760px){.party-rail{display:none}}
.plain-fieldset:disabled .field small{display:none}
.pick-row{display:flex;gap:6px;align-items:stretch}
.pick-row select{flex:1;min-width:0}
.pick-row .btn{white-space:nowrap}
.picker-dialog{border:0;border-radius:12px;padding:22px;width:680px;max-width:95vw;max-height:88vh;display:none;flex-direction:column;gap:12px}
.picker-dialog[open]{display:flex}
.picker-dialog::backdrop{background:#102b2355}
.picker-head{display:flex;justify-content:space-between;align-items:center}
.picker-head h2{margin:0}
.picker-list{overflow:auto;flex:1;min-height:200px;max-height:58vh;border:1px solid var(--line);border-radius:8px}
.picker-list td{padding:7px 12px;border-bottom:1px solid #f0f2ee}
.picker-list tr.group td{color:#53675a;font-weight:650;background:#fafbf8}
.picker-list tr.pickable{cursor:pointer}
.picker-list tr.pickable:hover,.picker-list tr.pickable:focus{background:#edf3e7;outline:none}
.picker-list tr.current{background:#e6edaa}
.picker-code{font-variant-numeric:tabular-nums;white-space:nowrap;width:1%}
.picker-list .lvl-1{padding-left:12px}.picker-list .lvl-2{padding-left:24px}.picker-list .lvl-3{padding-left:36px}.picker-list .lvl-4,.picker-list .lvl-5,.picker-list .lvl-6{padding-left:48px}
.picker-list span[class^=lvl-]{display:inline-block}
.picker-list table{width:100%}.picker-list td:last-child{width:1%;white-space:nowrap}
.acct-combo{position:relative;flex:1;min-width:0}
.acct-text.invalid{border-color:#e0a49b}
.acct-list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 3px);margin:0;padding:4px;list-style:none;background:#fff;border:1px solid #c9d6c4;border-radius:7px;box-shadow:0 10px 28px #11291c26;max-height:260px;overflow:auto}
.acct-list li{padding:7px 10px;border-radius:5px;font-size:12px;cursor:pointer;display:flex;gap:10px}
.acct-list li.active,.acct-list li:hover{background:#edf3e7;color:var(--green)}
.acct-list li.acct-empty{cursor:default;color:var(--muted)}
.acct-code{font-variant-numeric:tabular-nums;color:var(--muted);min-width:78px}
.picker-list tr.pickable:focus{background:#d9e8c8;box-shadow:inset 3px 0 0 var(--green)}
.ai-card .help{margin:10px 0 16px}.ai-status{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ai-status p{margin:4px 0 0}.ai-key-row{margin-top:14px;max-width:620px}
@media(max-width:760px){.ai-status{grid-template-columns:1fr}}
.mfa-steps{padding-left:18px;line-height:1.8;margin:10px 0}.mfa-qr-wrap{display:flex;justify-content:center;margin:8px 0}.mfa-qr{width:200px;height:200px;image-rendering:pixelated;border:1px solid var(--line);border-radius:6px}
.mfa-secret{font-size:12px;background:#f3f6ed;padding:2px 6px;border-radius:4px;word-break:break-all}.mfa-codes{background:#f3f6ed;border:1px solid var(--line);border-radius:6px;padding:12px;font-size:14px;line-height:1.8;letter-spacing:1px;white-space:pre-wrap;word-break:break-all}
.security-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.security-grid p{margin:4px 0 0}.mirror-form{margin-top:12px;align-items:end}.security-events{max-height:340px}.event-warn td{color:#8a4b1c}
