/* MCM — Portal de proveedores y panel privado (complementa /assets/site.css) */
.ptop{position:sticky;top:0;z-index:20;background:rgba(18,20,22,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.ptop .wrap{display:flex;align-items:center;gap:14px;min-height:64px}
.ptop img{height:44px;width:auto}
.ptop b{font:600 13px/1.2 var(--f-body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ptop b span{display:block;color:var(--cream);font:700 18px/1.1 var(--f-display);letter-spacing:.02em}
.pmain{padding:28px 0 120px}
.pmain h1{font-size:clamp(30px,6vw,46px);margin:6px 0 10px}
.pmain .lead{color:var(--muted);max-width:640px}
.pcardx{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--r);padding:20px;margin-top:18px}
.pcardx h2{font-size:22px;margin-bottom:4px;display:flex;align-items:center;gap:10px}
.pcardx h2 i{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--yellow);color:var(--ink-text);font:700 15px/1 var(--f-body);font-style:normal}
.pcardx>p.ayuda{color:var(--muted);font-size:15px;margin-bottom:6px}
.campos{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.campos .full{grid-column:1/-1}
.campo{display:grid;gap:6px;align-content:start}
.campo>span{font:600 13px/1.2 var(--f-body);letter-spacing:.06em;text-transform:uppercase;color:var(--cream)}
.campo>span small{font-weight:500;text-transform:none;letter-spacing:0;color:var(--muted)}
.campo input,.campo select,.campo textarea{width:100%;min-height:50px;padding:12px 14px;border-radius:10px;border:1px solid rgba(245,243,238,.22);background:var(--ink);color:var(--cream);font:500 17px/1.3 var(--f-body);-webkit-appearance:none;appearance:none}
.campo textarea{min-height:110px;resize:vertical}
.campo select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F5F3EE' stroke-width='2.4'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:36px}
.campo input:focus,.campo select:focus,.campo textarea:focus{outline:3px solid var(--yellow);outline-offset:1px;border-color:transparent}
.campo .nota{font-size:13px;color:var(--muted)}
.campo.error input,.campo.error select,.campo.error textarea,.campo.error .seg{outline:2px solid #F97066}
.campo .err{color:#FDA29B;font-size:14px}
.precio{display:grid;grid-template-columns:1fr auto;gap:8px}
.seg{display:flex;flex-wrap:wrap;gap:8px}
.seg label{position:relative}
.seg input{position:absolute;opacity:0;pointer-events:none}
.seg span{display:inline-flex;align-items:center;min-height:46px;padding:0 16px;border-radius:999px;border:1px solid rgba(245,243,238,.22);font:600 15px/1 var(--f-body);cursor:pointer;user-select:none}
.seg input:checked+span{background:var(--yellow);border-color:var(--yellow);color:var(--ink-text)}
.seg input:focus-visible+span{outline:3px solid var(--yellow);outline-offset:2px}
.fotos{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;margin-top:12px}
.fotos figure{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;background:var(--ink-3)}
.fotos img{width:100%;height:100%;object-fit:cover}
.fotos button{position:absolute;top:4px;right:4px;width:30px;height:30px;border-radius:50%;background:rgba(18,20,22,.85);color:#fff;font-size:18px;line-height:1}
.fotos figcaption{position:absolute;left:4px;bottom:4px;padding:2px 6px;border-radius:6px;background:rgba(18,20,22,.8);font-size:11px}
.agregar{display:grid;place-items:center;gap:6px;min-height:120px;margin-top:12px;border:2px dashed rgba(242,183,5,.55);border-radius:var(--r);color:var(--yellow);font:600 16px/1.3 var(--f-body);text-align:center;cursor:pointer;padding:16px}
.agregar small{color:var(--muted);font-weight:500}
.agregar input{position:absolute;opacity:0;width:1px;height:1px}
.check{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.45;color:var(--cream)}
.check input{width:24px;height:24px;flex:0 0 24px;margin-top:1px;accent-color:var(--yellow)}
.check a{color:var(--yellow);text-decoration:underline}
.enviar{position:sticky;bottom:0;z-index:15;margin-top:22px;padding:14px 0 calc(14px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--ink) 24%)}
.enviar .btn{width:100%;margin:0}
.btn[disabled]{opacity:.55;pointer-events:none}
.barra{height:8px;border-radius:99px;background:var(--ink-3);overflow:hidden;margin-top:12px}
.barra i{display:block;height:100%;width:0;background:var(--yellow);transition:width .25s}
.aviso{padding:14px 16px;border-radius:12px;font-size:15px;margin-top:14px}
.aviso--error{background:rgba(180,35,24,.18);border:1px solid rgba(249,112,102,.5);color:#FECDCA}
.aviso--ok{background:rgba(37,211,102,.12);border:1px solid rgba(37,211,102,.45);color:#D1FADF}
.aviso--info{background:rgba(242,183,5,.1);border:1px solid rgba(242,183,5,.4);color:var(--cream)}
.listo{text-align:center;padding:30px 20px}
.listo .ico{width:72px;height:72px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:var(--wa);color:#fff;font-size:40px}
.listo .codigo{display:inline-block;margin:10px 0;padding:8px 14px;border-radius:10px;background:var(--ink-3);font:700 22px/1 var(--f-display);letter-spacing:.06em;color:var(--yellow)}
.enlace{display:flex;gap:8px;margin-top:10px}
.enlace input{flex:1;min-width:0;min-height:46px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:var(--ink);color:var(--cream);font-size:14px}
.mis{margin-top:10px;display:grid;gap:8px}
.mis div{display:flex;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:10px;background:var(--ink);font-size:15px}
.mis em{font-style:normal;color:var(--yellow);white-space:nowrap}
.legal{font-size:16px;line-height:1.65;color:var(--cream)}
.legal h2{font-size:24px;margin:26px 0 8px}
.legal p,.legal li{margin:8px 0;color:#D9D6CF}
.legal ul{padding-left:22px}
.oculto{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
@media (max-width:640px){.campos{grid-template-columns:1fr}.pcardx{padding:16px}}
.pasos{display:grid;gap:12px;margin-top:12px;padding-left:22px;color:#D9D6CF;font-size:16px;line-height:1.5}
.pasos b{color:var(--cream)}
.faq{border-top:1px solid var(--line);padding:12px 0}
.faq summary{cursor:pointer;font-weight:600;color:var(--cream);list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::after{content:"+";color:var(--yellow);font-size:20px;line-height:1}
.faq[open] summary::after{content:"−"}
.faq p{margin-top:8px;color:#D9D6CF;font-size:16px}
.ptop a{display:flex}
