/* ===== RC Group Merch Configurator V1.7 – realistic mockup version ===== */
.merch-configurator-overlay{position:fixed;inset:0;background:rgba(0,0,0,.82);backdrop-filter:blur(14px);z-index:10050;display:none;align-items:center;justify-content:center;padding:24px}
.merch-configurator-overlay.active{display:flex}
.merch-configurator-modal{width:min(1240px,100%);max-height:min(92vh,940px);background:linear-gradient(140deg,#070b12 0%,#0e1723 100%);border:1px solid rgba(127,184,236,.22);border-radius:28px;overflow:hidden;box-shadow:0 40px 140px rgba(0,0,0,.72);color:#fff;display:grid;grid-template-rows:auto 1fr}
.merch-configurator-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 26px;border-bottom:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01))}
.merch-configurator-title{margin:0;font-size:clamp(22px,3vw,34px);line-height:1;letter-spacing:-.04em;text-transform:uppercase}
.merch-configurator-subtitle{margin:8px 0 0;color:rgba(255,255,255,.7);font-size:14px;line-height:1.5;max-width:680px}
.merch-configurator-close{width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;font-size:28px;line-height:1;cursor:pointer}
.merch-configurator-body{display:grid;grid-template-columns:minmax(330px,430px) minmax(0,1fr);gap:0;min-height:0;overflow:hidden}
.merch-configurator-controls{padding:26px;overflow-y:auto;border-right:1px solid rgba(255,255,255,.08)}
.merch-control-group{margin-bottom:24px}
.merch-control-label{display:block;color:#7fb8ec;font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.merch-range-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.merch-range-value{color:#fff;font-weight:700;font-size:14px}
.merch-product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.merch-side-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.merch-color-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.merch-product-btn,.merch-side-btn{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:#fff;border-radius:18px;padding:12px;cursor:pointer;font-weight:800;font-size:13px;transition:.2s ease}
.merch-side-btn{min-height:54px}
.merch-product-btn:hover,.merch-side-btn:hover,.merch-product-btn.active,.merch-side-btn.active{background:rgba(70,120,166,.9);border-color:rgba(127,184,236,.8);transform:translateY(-2px)}
.merch-product-btn{display:flex;align-items:center;gap:12px;text-align:left;min-height:88px}
.merch-product-thumb{width:56px;height:56px;display:grid;place-items:center;border-radius:14px;background:radial-gradient(circle at 50% 32%,rgba(255,255,255,.08),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.08);overflow:hidden;flex:0 0 56px}
.merch-product-thumb img{width:100%;height:100%;object-fit:contain;display:block}
.merch-product-name{display:block;line-height:1.2}
.merch-color-btn{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;text-align:left;transition:.2s ease}
.merch-color-btn:hover,.merch-color-btn.active{border-color:rgba(127,184,236,.8);background:rgba(70,120,166,.2)}
.merch-color-swatch{width:22px;height:22px;border-radius:50%;border:2px solid rgba(255,255,255,.26);flex:0 0 22px;box-shadow:0 0 0 1px rgba(0,0,0,.12) inset}.merch-color-name{font-size:13px;font-weight:700}
.merch-file-input{width:100%;border:1px dashed rgba(127,184,236,.45);background:rgba(127,184,236,.08);border-radius:16px;padding:18px;color:rgba(255,255,255,.82)}
.merch-range{width:100%;accent-color:#75aee0}
.merch-help-text{color:rgba(255,255,255,.58);font-size:13px;line-height:1.55;margin-top:10px}
.merch-preview-area{padding:28px;overflow-y:auto;background:radial-gradient(circle at 50% 22%,rgba(92,146,211,.18),transparent 36%),linear-gradient(180deg,#05080d 0%,#030406 100%)}
.merch-preview-headline{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}.merch-preview-headline strong{font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#7fb8ec}.merch-preview-headline span{font-size:13px;color:rgba(255,255,255,.68);max-width:520px;line-height:1.5}
.merch-preview-stage{min-height:560px;display:flex;align-items:center;justify-content:center;padding:22px;border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01));border:1px solid rgba(255,255,255,.08)}
.merch-product-preview{position:relative;width:min(100%,540px);aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;--merch-color:#14161a}
.merch-product-surface{position:absolute;inset:0}
.merch-product-mask,.merch-product-shading{position:absolute;inset:0;width:100%;height:100%}
.merch-product-mask{background:var(--merch-color);-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain;mask-position:center;mask-repeat:no-repeat;mask-size:contain;filter:saturate(.96) brightness(.98)}
.merch-product-shading{object-fit:contain;mix-blend-mode:multiply;opacity:.9;pointer-events:none;user-select:none}
.merch-placeholder-logo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;text-align:center;width:min(240px,62%);min-height:110px;padding:18px 20px;border-radius:22px;border:1px dashed rgba(127,184,236,.45);background:rgba(6,10,16,.46);backdrop-filter:blur(8px);font-size:14px;line-height:1.5;color:rgba(255,255,255,.72)}
.merch-logo-layer{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);cursor:grab;touch-action:none;z-index:2;filter:drop-shadow(0 10px 20px rgba(0,0,0,.28))}.merch-logo-layer:active{cursor:grabbing}
.merch-logo-layer img{width:100%;height:auto;display:block;max-width:none;object-fit:contain}
.merch-preview-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.merch-preview-meta span{padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);font-size:13px;color:rgba(255,255,255,.82)}
.merch-configurator-actions{margin-top:22px;display:flex;gap:12px;flex-wrap:wrap}.merch-action-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);color:#fff;text-decoration:none;font-weight:800;cursor:pointer;min-height:50px;transition:.2s ease}.merch-action-btn:hover{transform:translateY(-2px);border-color:rgba(127,184,236,.8)}.merch-action-primary{background:linear-gradient(90deg,#7a5cff 0%,#2cb7ff 100%);border:none}.merch-action-secondary{background:rgba(24,184,118,.18);border-color:rgba(50,210,136,.35)}
@media (max-width:980px){.merch-configurator-body{grid-template-columns:1fr}.merch-configurator-controls{border-right:none;border-bottom:1px solid rgba(255,255,255,.08)}.merch-preview-stage{min-height:480px}.merch-product-preview{width:min(100%,460px)}}
@media (max-width:640px){.merch-configurator-overlay{padding:10px}.merch-configurator-modal{max-height:96vh;border-radius:20px}.merch-configurator-header{padding:18px 18px 16px}.merch-configurator-controls,.merch-preview-area{padding:18px}.merch-product-grid{grid-template-columns:1fr 1fr}.merch-color-grid{grid-template-columns:1fr 1fr}.merch-product-btn{padding:10px;min-height:80px}.merch-product-thumb{width:48px;height:48px;flex-basis:48px}.merch-preview-stage{min-height:390px;padding:12px}.merch-configurator-actions{flex-direction:column}.merch-action-btn{width:100%}.merch-placeholder-logo{font-size:13px;width:min(220px,72%)}}


/* ===== RC Group Merch Configurator V1.9 – formulario email ===== */
.merch-request-form {
    margin-top: 24px;
    padding: 22px;
    border-radius: 22px;
    border: 1px solid rgba(127,184,236,.22);
    background: rgba(255,255,255,.045);
}

.merch-request-form-header {
    display: grid;
    gap: 7px;
    margin-bottom: 18px;
}

.merch-request-form-header strong {
    color: #ffffff;
    font-size: 16px;
}

.merch-request-form-header span {
    color: rgba(255,255,255,.62);
    font-size: 13px;
    line-height: 1.5;
}

.merch-form-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.merch-request-form label {
    display: grid;
    gap: 8px;
    color: rgba(255,255,255,.76);
    font-size: 13px;
    font-weight: 700;
}

.merch-request-form input,
.merch-request-form textarea {
    width: 100%;
    border: 1px solid rgba(255,255,255,.14);
    background: rgba(0,0,0,.28);
    color: #ffffff;
    border-radius: 14px;
    padding: 13px 14px;
    outline: none;
    font: inherit;
}

.merch-request-form input:focus,
.merch-request-form textarea:focus {
    border-color: rgba(127,184,236,.75);
    box-shadow: 0 0 0 3px rgba(127,184,236,.12);
}

.merch-form-full {
    margin-top: 14px;
}

.merch-form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
}

.merch-form-status {
    margin-top: 14px;
    color: rgba(255,255,255,.72);
    font-size: 13px;
    line-height: 1.5;
}

.merch-form-status.success {
    color: #63e6a2;
}

.merch-form-status.error {
    color: #ff8585;
}

.merch-action-btn:disabled {
    opacity: .55;
    pointer-events: none;
}

@media (max-width: 640px) {
    .merch-form-grid {
        grid-template-columns: 1fr;
    }
}
