
/* Cubano, de verdad V4 — final integration */
html[data-access="preview"] body{--v4-access-accent:#70b9ff}
#authGate,.auth-gate,.login-gate,.creator-access-button:not(#v4-dev),[data-fake-auth]{display:none!important}
#v4-loading,#v4-transition{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;align-content:center;gap:18px;background:radial-gradient(circle at 50% 40%,#143b78,#061630 65%);opacity:0;visibility:hidden;transition:.25s}
#v4-loading.show,#v4-transition.show{opacity:1;visibility:visible}
#v4-loading strong{color:white;font:700 14px system-ui;letter-spacing:.07em}
.v4-loader-flag{position:relative;width:118px;height:72px;overflow:hidden;filter:drop-shadow(0 16px 25px rgba(0,0,0,.28));animation:v4Float 1.2s ease-in-out infinite alternate}
.v4-loader-flag i{display:block;height:14.4px;background:#fff;transform-origin:left;animation:v4Wave .65s ease-in-out infinite alternate}.v4-loader-flag i:nth-child(1),.v4-loader-flag i:nth-child(3){background:#0b55a1}.v4-loader-flag b{position:absolute;left:0;top:0;width:48px;height:72px;clip-path:polygon(0 0,100% 50%,0 100%);background:#d9202a;color:#fff;display:grid;place-items:center;padding-right:18px;font-size:19px}
@keyframes v4Wave{to{transform:skewY(2deg) scaleX(.98)}}@keyframes v4Float{to{transform:translateY(-5px)}}
#v4-account-gate,#v4-boot-error,#v4-preview-end,#v4-completion{position:fixed;inset:0;z-index:999990;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at 50% 20%,rgba(37,96,184,.28),transparent 35%),linear-gradient(145deg,#061630,#031126)}
#v4-account-gate section,#v4-boot-error section,#v4-preview-end section{width:min(100%,520px);padding:38px;border-radius:28px;text-align:center;color:#fff;background:linear-gradient(155deg,rgba(22,61,120,.84),rgba(7,28,63,.93));border:1px solid rgba(255,255,255,.13);box-shadow:0 35px 90px rgba(0,0,0,.42)}
.v4-gate-brand{font:700 28px Georgia,serif}.v4-gate-brand em{color:#f1333d;font-weight:500}.v4-account-required>body>*:not(#v4-account-gate):not(#v4-loading){visibility:hidden}
#v4-account-gate h1,#v4-preview-end h1{font:700 clamp(32px,6vw,54px)/1 Georgia,serif;margin:20px 0 13px}#v4-account-gate p,#v4-preview-end p{color:#b8c9e3;line-height:1.55}
.v4-primary,.v4-secondary{display:flex;justify-content:center;align-items:center;min-height:50px;margin:12px 0;border-radius:14px;text-decoration:none;font:800 14px system-ui}.v4-primary{color:white;background:linear-gradient(100deg,#50aaff,#5950f3)}.v4-secondary{color:#dceaff;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.05)}
#v4-account-gate small{display:block;margin-top:24px;color:#8196b7;font-size:11px}
#v4-toast{position:fixed;left:50%;bottom:26px;z-index:1000001;transform:translate(-50%,18px);opacity:0;padding:13px 17px;border-radius:14px;background:#f8fbff;color:#07152e;font:750 13px system-ui;box-shadow:0 18px 50px rgba(0,0,0,.35);transition:.25s;pointer-events:none}#v4-toast.show{opacity:1;transform:translate(-50%,0)}
#v4-profile-button{position:fixed;right:22px;top:20px;z-index:90000;width:43px;height:43px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:linear-gradient(135deg,#3b9eff,#574cf0);color:white;display:grid;place-items:center;overflow:hidden;font:800 13px system-ui;box-shadow:0 13px 32px rgba(0,0,0,.24);cursor:pointer}#v4-profile-button img{width:100%;height:100%;object-fit:cover}
#v4-profile{position:fixed;right:18px;top:74px;z-index:100001;width:min(390px,calc(100vw - 24px));padding:23px;border-radius:24px;color:white;background:linear-gradient(155deg,rgba(17,52,105,.97),rgba(5,22,50,.98));border:1px solid rgba(255,255,255,.13);box-shadow:0 35px 80px rgba(0,0,0,.45);transform:translateX(calc(100% + 30px));transition:.3s}#v4-profile.show{transform:none}
.v4-close{position:absolute;right:15px;top:12px;border:0;background:transparent;color:#cfe0f8;font-size:27px;cursor:pointer}.v4-profile-head{display:grid;grid-template-columns:64px 1fr auto;gap:13px;align-items:center;padding-right:25px}.v4-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:#276ec7;border:2px solid rgba(255,255,255,.17)}.v4-avatar img{width:100%;height:100%;object-fit:cover}.v4-profile-head h2{margin:0;font:700 20px system-ui}.v4-profile-head p{margin:5px 0 0;color:#9fb2d2;font:500 12px system-ui}.v4-plan{padding:7px 9px;border-radius:999px;background:rgba(85,165,255,.14);border:1px solid rgba(93,171,255,.23);font:800 10px system-ui;letter-spacing:.08em}
.v4-manage{display:block;margin:19px 0;padding:13px;border-radius:13px;color:#dceaff;text-decoration:none;background:rgba(255,255,255,.055);font:700 12px system-ui}.v4-academy{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:12px;padding:13px;border-radius:16px;text-decoration:none;color:white;background:#fff}.v4-academy img{width:54px;height:54px;border-radius:50%;object-fit:cover}.v4-academy strong{display:block;color:#0b2f67;font:800 13px system-ui}.v4-academy small{display:block;margin-top:3px;color:#5f7190;font:500 10px system-ui}.v4-academy b{color:#174f9d}
#v4-settings{position:fixed;inset:0;z-index:100002;display:none;place-items:center;padding:18px;background:rgba(1,9,24,.74);backdrop-filter:blur(10px)}#v4-settings.show{display:grid}#v4-settings section{position:relative;width:min(440px,100%);padding:28px;border-radius:24px;background:#0a234b;color:white;border:1px solid rgba(255,255,255,.13)}#v4-settings h2{margin:0 0 19px;font:700 26px Georgia,serif}.v4-language-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.v4-language-choices button{padding:15px;border-radius:15px;border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.055);color:white;font-weight:800;cursor:pointer}.v4-language-choices svg{display:block;width:43px;height:29px;margin:0 auto 8px;border-radius:50%;object-fit:cover;clip-path:circle(42%)}#v4-reset{width:100%;margin-top:20px;padding:13px;border-radius:13px;color:#ffc5c8;background:rgba(217,32,42,.12);border:1px solid rgba(217,32,42,.28);font-weight:750;cursor:pointer}
.v4-speaker-a,[data-speaker="A"],.speaker-a{--speaker:#ef3b45!important}.v4-speaker-b,[data-speaker="B"],.speaker-b{--speaker:#4da7ff!important}.v4-speaker-a::first-letter,.v4-speaker-a strong:first-child{color:#ef3b45!important}.v4-speaker-b::first-letter,.v4-speaker-b strong:first-child{color:#4da7ff!important}
body.v4-dialogue .step-title,body.v4-dialogue .dialogue-title,body.v4-dialogue .meaning-title,body.v4-culture .step-title,body.v4-culture .culture-title,body.v4-culture .insight-title{display:none!important}
body.v4-dialogue .red-rail,body.v4-dialogue .side-accent,body.v4-culture .red-rail,body.v4-culture .side-accent{display:none!important}
body.v4-culture img,body.v4-culture .media-frame img,.culture-card img,.insight-card img{width:100%!important;min-height:240px;max-height:min(48vh,520px);object-fit:cover!important;border-radius:20px}
.photo-credit,.image-credit,.media-credit,.credit-line,[data-photo-credit]{display:none!important}
body:not(.v4-story) [data-lexicon],body:not(.v4-story) .lex-token,body:not(.v4-story) .lexical-token,body:not(.v4-story) .interactive-word,body:not(.v4-story) .v3-lex-token{pointer-events:none!important;text-decoration:none!important;border-bottom:0!important;cursor:text!important}
body.v4-story .lexicon-strip,body.v4-story .word-chip-row,body.v4-story .story-hints,body.v4-story .microstory-chips{display:none!important}
body.v4-order button:is([data-action="check"],.check-button),body.v4-order button[aria-label="Check"]{display:none!important}#v4-order-note{color:#fff;font:700 13px system-ui;text-align:center;margin:12px}.v4-ready{box-shadow:0 0 0 3px rgba(255,255,255,.13),0 0 28px rgba(66,154,255,.24)!important}
#v4-dev{position:fixed;left:17px;bottom:17px;z-index:90001;border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:10px 13px;background:#d91f29;color:#fff;font:900 10px system-ui;letter-spacing:.1em;cursor:pointer;box-shadow:0 12px 32px rgba(0,0,0,.28)}
html[data-creator="true"] [disabled],html[data-creator="true"] [aria-disabled="true"]{pointer-events:auto!important;opacity:1!important}
#v4-preview-end button{width:100%;padding:13px;border-radius:13px;border:1px solid rgba(255,255,255,.14);background:transparent;color:white}
#v4-completion{overflow:auto;align-items:start;padding:35px 15px}.v4-complete-panel{width:min(950px,100%);margin:auto;color:#fff;text-align:center}.v4-complete-panel>span{color:#65b4ff;font:800 11px system-ui;letter-spacing:.16em;text-transform:uppercase}.v4-complete-panel>h1{font:700 clamp(38px,7vw,74px)/1 Georgia,serif;margin:13px}.v4-complete-panel>p{color:#b8cae3}.v4-final-video{aspect-ratio:16/9;margin:25px auto;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.13);background:#000}.v4-final-video iframe{width:100%;height:100%;border:0}.v4-complete-panel label{display:grid;gap:8px;text-align:left;max-width:580px;margin:22px auto;font:700 12px system-ui}.v4-complete-panel input{height:52px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:#071a38;color:white;padding:0 15px;font:inherit}.v4-complete-panel>.v4-primary{max-width:580px;margin:12px auto;border:0;width:100%}
#v4-certificate-paper{margin:35px auto 12px;padding:50px;width:min(100%,1050px);aspect-ratio:1.414/1;background:#fff;color:#10284d;text-align:center;border:10px double #173f77;box-shadow:0 30px 70px rgba(0,0,0,.32);display:flex;flex-direction:column;justify-content:space-between}#v4-certificate-paper header{display:flex;align-items:center;justify-content:center;gap:18px}#v4-certificate-paper header img{width:82px;height:82px;border-radius:50%;object-fit:cover}#v4-certificate-paper header span{font:700 13px system-ui;letter-spacing:.14em;text-transform:uppercase;color:#ce2029}#v4-certificate-paper header h1{font:700 38px Georgia,serif;margin:5px}#v4-certificate-paper main>p{font:500 19px/1.6 Georgia,serif}#v4-certificate-paper h2{font:700 44px Georgia,serif;margin:20px;border-bottom:2px solid #ce2029;padding-bottom:10px}.v4-competence{max-width:800px;margin:25px auto;font-size:16px!important}#v4-certificate-paper footer{display:flex;justify-content:space-between;align-items:end;text-align:left}#v4-certificate-paper footer div{display:grid;gap:5px}#v4-certificate-paper footer span{font:600 11px system-ui;color:#60728c}.v4-signature{text-align:right!important}#v4-print-cert{padding:12px 18px;border:0;border-radius:12px;background:#fff;color:#092149;font-weight:800}
@media(max-width:700px){#v4-profile-button{right:12px;top:12px}.v4-language-choices{grid-template-columns:1fr}.v4-profile-head{grid-template-columns:55px 1fr}.v4-avatar{width:55px;height:55px}.v4-plan{grid-column:2;width:max-content}#v4-certificate-paper{padding:24px;aspect-ratio:auto;min-height:680px}#v4-certificate-paper h2{font-size:30px}#v4-certificate-paper header h1{font-size:26px}}
@media print{body>*{display:none!important}#v4-completion,#v4-cert-output,#v4-certificate-paper{display:block!important;position:static!important;background:white!important;padding:0!important;margin:0!important;box-shadow:none!important}#v4-certificate-paper{width:100%;height:100%;border:8px double #173f77!important}#v4-print-cert{display:none!important}}

/* Public release: native local profile, no account or creator controls. */
#creator-button,#creator-fab{display:none!important}
@media print{body>*{display:none!important}body>#v4-completion{display:block!important}.v4-complete-panel>*:not(#v4-cert-output){display:none!important}#v4-print-cert{display:none!important}}
