/* Modal de autenticación (extraído de inline) */
.tcrd-modal-overlay{position:fixed; inset:0; z-index:9999; background:rgba(15,23,42,.6); backdrop-filter:blur(8px); display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; transition:opacity .2s;}
.tcrd-modal-overlay[hidden]{display:none !important;}
.tcrd-modal-overlay.is-open{opacity:1; pointer-events:auto;}
.tcrd-modal-content{width:90%; max-width:380px; background:#fff; border-radius:24px; box-shadow:0 25px 50px -12px rgba(0,0,0,.25); overflow:hidden; transform:scale(0.95); transition:transform .2s; position:relative;}
.tcrd-modal-overlay.is-open .tcrd-modal-content{transform:scale(1);}
.tcrd-modal-close{position:absolute; top:10px; right:10px; border:0; background:transparent; font-size:18px; color:#94a3b8; cursor:pointer; line-height:1; padding:6px; z-index:10; border-radius:6px; transition:color .2s, background .2s;}
.tcrd-modal-close:hover{color:#0f172a; background:rgba(15,23,42,.06);}
.tcrd-modal-header{padding:12px 40px 0 16px; margin-bottom:12px; border-bottom:1px solid rgba(15,23,42,.08);}
.tcrd-modal-tabs{display:flex; gap:0; padding:0;}
.tcrd-modal-tab{flex:1; min-width:0; padding:8px 0 10px; border:0; background:transparent; color:#94a3b8; font-weight:600; cursor:pointer; font-size:13px; transition:all .2s ease; text-align:center; position:relative; border-bottom:2px solid transparent; margin-bottom:-1px;}
.tcrd-modal-tab:hover{color:#64748b;}
.tcrd-modal-tab.is-active{color:#0f172a; border-bottom-color:#e11d48;}
.tcrd-modal-body{padding:16px 20px 20px;}
.tcrd-tab-pane{display:none;}
.tcrd-tab-pane.is-active{display:block; animation:tcrd-fade-in .2s;}
@keyframes tcrd-fade-in{from{opacity:0}to{opacity:1}}
.tcrd-field{margin-bottom:12px;}
.tcrd-field label{display:block; margin-bottom:5px; font-size:13px; font-weight:600; color:#334155;}
.tcrd-modal-content *{box-sizing:border-box;}
.tcrd-field input{width:100%; padding:10px 12px; border:1px solid #cbd5e1; border-radius:10px; font-size:15px; transition:border .2s; margin:0;}
.tcrd-field input:focus{border-color:#0f172a; outline:none;}
.tcrd-password-wrap{position:relative; display:flex; align-items:center;}
.tcrd-password-wrap input{padding-right:44px;}
.tcrd-password-toggle{position:absolute; right:8px; top:50%; transform:translateY(-50%); background:transparent; border:0; padding:4px; cursor:pointer; color:#64748b; display:flex; align-items:center; justify-content:center; border-radius:6px; transition:color .2s;}
.tcrd-password-toggle:hover{color:#0f172a;}
.tcrd-field-check{margin-bottom:12px; font-size:13px; color:#64748b;}
.tcrd-btn-full{width:100%; display:flex; align-items:center; justify-content:center; font-size:15px; padding:11px 14px; border-radius:10px; background:#e11d48; color:#fff; border:0;}
.tcrd-btn-full:hover{background:#be123c;}
.tcrd-divider{display:flex; align-items:center; margin:14px 0; color:#94a3b8; font-size:11px; text-transform:uppercase; letter-spacing:1px;}
.tcrd-divider::before, .tcrd-divider::after{content:""; flex:1; height:1px; background:#e2e8f0;}
.tcrd-divider span{padding:0 8px;}
.tcrd-social-login{display:grid; gap:10px;}
.tcrd-btn-social{display:flex; align-items:center; justify-content:center; gap:10px; width:100%; padding:10px 12px; background:#fff; border:1px solid #cbd5e1; border-radius:10px; font-size:14px; font-weight:600; color:#334155; cursor:pointer; transition:all .2s; position:relative; overflow:hidden;}
.tcrd-btn-social:hover{background:#f8fafc; border-color:#94a3b8; transform:translateY(-2px); box-shadow:0 4px 12px rgba(0,0,0,.08);}
.tcrd-lostpassword-intro{margin:0 0 12px; font-size:13px; color:#64748b; line-height:1.5;}
.tcrd-auth-foot{text-align:center; font-size:13px; color:#64748b; margin-top:14px;}
.tcrd-auth-foot a{color:#0f172a; text-decoration:underline; font-weight:600;}
.tcrd-auth-msg{margin-top:10px; font-size:13px; text-align:center; min-height:16px;}
.tcrd-auth-msg.error{color:#ef4444;}
.tcrd-auth-msg.success{color:#22c55e;}
