/* KAIRO Digital / fase B — escalas visuales y estados de alquiler. */
#kb-rental-layer[hidden]{display:none!important}
#kb-rental-layer{position:fixed;inset:0;z-index:999998;display:grid;place-items:center;padding:16px;background:rgba(1,5,12,.87);backdrop-filter:blur(9px);overflow:auto;box-sizing:border-box}
body.kb-rental-open{overflow:hidden}
#kb-rental-layer *{box-sizing:border-box}
.kb-rental-dialog{width:min(710px,100%);min-width:0;max-width:100%;max-height:calc(100dvh - 32px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #6984a5;border-radius:17px;background:linear-gradient(135deg,#15283e 0%,#081321 70%);box-shadow:0 35px 110px #000e,0 0 50px #356aa017;color:#f4f7ff;font:16px/1.55 'Manrope',system-ui,sans-serif}
.kb-rental-head{padding:20px 25px 16px;border-bottom:1px solid #39536d;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;background:linear-gradient(110deg,#203952,#0a192b)}
.kb-rental-head small,.kb-shelf-head small{font:800 11px/1.4 'IBM Plex Mono',monospace;letter-spacing:.15em;color:#e8c284}
.kb-rental-head h2{font:800 clamp(23px,3vw,32px)/1.15 'Manrope',system-ui;margin:6px 0 0;color:#fff;outline:none}
.kb-rental-x{width:43px;height:43px;flex:none;border:1px solid #6c8aaa;border-radius:10px;background:#1d334b;color:#fff;font-size:26px;cursor:pointer}
.kb-rental-body{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;overflow-x:hidden;padding:22px 26px 25px}
.kb-rental-body p{line-height:1.58}
.kb-steps{padding:0;margin:0 0 22px;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.kb-steps li{text-align:center;position:relative;min-width:0;color:#829ab2;font-size:12px}
.kb-steps li:not(:last-child):after{content:'';position:absolute;left:calc(50% + 20px);right:calc(-50% + 20px);top:15px;height:1px;background:#49627a}
.kb-steps li span{width:30px;height:30px;border:1px solid #5a7794;display:grid;place-items:center;margin:0 auto 5px;border-radius:100%;font:900 12px/1 'Manrope';background:#17283d;color:#d1dded}
.kb-steps li.done span{background:#345d62;border-color:#80c4b8;color:white}
.kb-steps li.current span{background:#dbb575;color:#0b1727;border-color:#ffe1a9;box-shadow:0 0 0 4px #d1a26424}
.kb-steps li small{display:block;overflow-wrap:anywhere;font-size:11px;font-weight:750;letter-spacing:0}
.kb-steps li.current{color:#ffddac}
.kb-lead{font-size:16px;color:#e4ecf6;margin:0 0 16px}
.kb-lead strong{color:#fff}
.kb-amount{display:flex;align-items:center;justify-content:space-between;gap:14px;border-block:1px solid #425970;padding:14px 0;margin:14px 0;color:#e0eaf5}
.kb-amount strong{font-size:22px;font-weight:900;color:#ffe0a3}
.kb-advisory{background:#1c2d40;border:1px solid #667e95;border-left:4px solid #d8ac67;border-radius:12px;padding:13px 15px;color:#e7f0fc;margin:16px 0}
.kb-advisory strong{color:#ffdfaa}
.kb-advisory p{margin:5px 0 0;font-size:14px;color:#d1e0ef}
.kb-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.kb-btn,.kb-copy,.kb-refresh{border:1px solid #6c89a6;border-radius:10px;background:#213b56;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:11px 16px;text-decoration:none!important;font:800 14px/1.3 'Manrope',system-ui,sans-serif;cursor:pointer;transition:background .15s,border-color .15s}
.kb-btn.primary{background:linear-gradient(120deg,#cda15f,#ebc88d);border-color:#f4d29b;color:#091626}
.kb-btn.plain{border-color:#41576c;background:transparent}
.kb-btn.small{min-height:40px;padding:9px 13px;font-size:13px}
.kb-btn:hover,.kb-copy:hover,.kb-refresh:hover{filter:brightness(1.11)}
.kb-btn:focus-visible,.kb-copy:focus-visible,.kb-refresh:focus-visible,.kb-rental-x:focus-visible{outline:3px solid #9cd8ff;outline-offset:3px}
.kb-btn:disabled,.kb-copy:disabled{opacity:.48;cursor:wait}
.kb-status{color:#c1dafa;font-size:14px;min-height:1.4em;margin:10px 0 0}
.kb-note{color:#ffe2b4;border:1px solid #735d43;background:#3b31272b;border-radius:9px;padding:10px 12px;font-size:13px;margin:13px 0}
.kb-demo-banner{background:#2c2a1d;border:1px solid #d0a55b;color:#ffe4a7;border-radius:8px;font:750 12px/1.5 'Manrope',sans-serif;padding:8px 10px;margin:-4px 0 16px}
.kb-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:16px;background:#0b192b;border:1px solid #4f6680;border-radius:11px;margin:13px 0}
.kb-summary>div{display:flex;flex-direction:column;gap:2px;min-width:0;grid-column:1}
.kb-summary>div small{color:#9eb8cf;font-size:12px}
.kb-summary strong{color:#fff;font-weight:800;overflow-wrap:anywhere}
.kb-summary .kb-copy{grid-column:2;grid-row:3;align-self:end}
.kb-code{font-family:'IBM Plex Mono',monospace;font-size:13px;overflow-wrap:anywhere}
.kb-bank{border:1px solid #6e714f;border-radius:11px;padding:15px;background:linear-gradient(125deg,#273322,#17242d)}
.kb-bank h3{margin:0 0 8px;font:800 16px 'Manrope'}
.kb-bank p{margin:6px 0;font-size:13px;color:#d5e4ee}
.kb-copyrow{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.kb-copyrow strong{overflow-wrap:anywhere;font:800 18px/1.3 'IBM Plex Mono',monospace;color:#ffdfa3}
.kb-copy,.kb-refresh{min-height:38px;padding:8px 12px;font-size:12px}
.kb-hint{font-size:13px!important;color:#b9d0e5;margin:8px 0 0}
.kb-status-pill{border:1px solid #af8f5a;background:#ac803329;color:#ffe2ac;border-radius:100px;padding:5px 10px;font-size:12px;font-weight:850;white-space:normal}
.kb-status-pill[data-state="paid"],.kb-status-pill[data-state="already_granted"]{border-color:#62a59d;background:#0b443d73;color:#bff4de}
.kb-status-pill[data-state="rejected"],.kb-status-pill[data-state="expired"],.kb-status-pill[data-state="cancelled"]{border-color:#a45f5f;background:#572b2b80;color:#ffc8c8}
.kb-status-pill[data-state="payment_review"]{border-color:#729ec3;color:#bee4ff;background:#2f527267}
#k-r27-shelf.kb-shelf{margin:18px 0 28px;padding:16px 18px;border:1px solid #425e7a;border-radius:16px;background:linear-gradient(140deg,#122338,#091726)}
.kb-shelf-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:17px}
.kb-shelf-head h3{margin:6px 0 0;font-size:22px;line-height:1.2;color:#fff}
.kb-list-title{font-size:15px;color:#d0e5fa;margin:22px 0 10px;border-bottom:1px solid #3c5570;padding-bottom:10px}
.kb-access-card,.kb-order-card{background:#122842;border:1px solid #426183;border-radius:12px;padding:15px 16px;margin:12px 0}
.kb-access-card{background:linear-gradient(115deg,#173b40,#0d2835);border-color:#3f777b}
.kb-order-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}
.kb-order-top strong{color:#f5f9ff;font-size:16px;line-height:1.3}
.kb-access-card p,.kb-order-card p{font-size:13px;line-height:1.5;color:#c9d8e9;margin:9px 0}
.kb-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:12px}
.kb-access-confirm{border:1px solid #d6ad6f;background:#352a204d;border-radius:9px;padding:12px;margin-top:12px;color:#ffebc9}
.kb-access-confirm[hidden]{display:none!important}
.kb-access-confirm p{font-size:13px;color:#ffe0b8;margin:0}
.kb-card-status{color:#ebd09c!important;margin:9px 0 0!important}
.kb-empty{border:1px dashed #516f8e;padding:18px;border-radius:10px;color:#c9dbef}
.kb-error{border:1px solid #b96061;border-radius:10px;padding:13px;color:#ffd3d3}
.kb-loading{color:#c4dcec}
@media(max-width:600px){#kb-rental-layer{padding:8px}.kb-rental-dialog{max-height:calc(100dvh - 16px);border-radius:14px}.kb-rental-head{padding:16px}.kb-rental-body{padding:17px 15px 22px}.kb-actions{flex-direction:column}.kb-actions>.kb-btn{width:100%}.kb-summary{grid-template-columns:minmax(0,1fr)}.kb-summary .kb-copy{grid-column:1;grid-row:auto;justify-self:start}.kb-shelf-head h3{font-size:19px}.kb-shelf-head{align-items:flex-start}#k-r27-shelf.kb-shelf{padding:13px}.kb-steps li small{font-size:10px}}
@media(prefers-reduced-motion:reduce){.kb-btn,.kb-copy,.kb-refresh{transition:none}}
/* Shortcut within the approved account header, without replacing existing actions. */
#account-signed .account-signed-head .kb-shelf-jump{max-width:100%;white-space:normal;flex-shrink:0;background:linear-gradient(115deg,#2b485f,#17304a);border-color:#ad996e;color:#ffe4b2}
#k-r27-shelf{scroll-margin-top:72px}
@media(max-width:700px){#account-signed .account-signed-head .kb-shelf-jump{width:100%;margin-top:10px}}

/* 27.29 Checkout controlado: agrupa opciones sin reemplazar la transferencia. */
.kb-method-picker{display:grid;gap:10px;padding:14px 15px;margin:14px 0;background:#152b43;border:1px solid #537a9b;border-radius:12px}.kb-method-picker strong{color:#ffdfa6}.kb-method-picker .kb-btn{justify-self:start}.kb-method-picker p{margin:0}.kb-rental-body #kb-openpay-link{display:flex;align-items:flex-start;flex-wrap:wrap;gap:10px}.kb-rental-body #kb-openpay-link>strong,.kb-rental-body #kb-openpay-link>p{flex-basis:100%;margin:0}@media(max-width:600px){.kb-method-picker .kb-btn,#kb-openpay-link .kb-btn{width:100%}}

/* KAIRO 27.30: seguimiento desde toda la tarjeta y elección explícita de transferencia. */
.kb-order-clickable{cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.kb-order-clickable:hover{border-color:#cda66d;background:#1a334c;transform:translateY(-1px)}
.kb-order-clickable:focus-visible{outline:3px solid #9cd8ff;outline-offset:3px}
.kb-card-link{color:#f4d59b;font-size:13px;font-weight:800}
.kb-status-pill[data-state="checkout"]{border-color:#7099cc;background:#26507c55;color:#c5e4ff}
.kb-status-pill[data-state="transfer"]{border-color:#b69b60;background:#74603048;color:#ffe2ac}
.kb-method-picker .kb-btn.kb-selected{border-color:#ecc68f;box-shadow:inset 0 0 0 1px #ecc68f}
#kb-openpay-checkout{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
#kb-openpay-checkout strong,#kb-openpay-checkout p{flex-basis:100%;margin:0}
@media(max-width:600px){#kb-openpay-checkout .kb-btn{width:100%}}

/* KAIRO 27.31 — panel interno de descarga */
#kb-download-layer[hidden]{display:none!important}
#kb-download-layer{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:18px;background:rgba(3,8,18,.84);backdrop-filter:blur(10px)}
#kb-download-layer *{box-sizing:border-box}
body.kb-download-open{overflow:hidden}
.kb-download-dialog{position:relative;width:min(920px,100%);border-radius:18px;background:linear-gradient(180deg,#0f2238,#08111d);border:1px solid #446789;box-shadow:0 26px 70px rgba(0,0,0,.5);padding:22px}
.kb-download-close{position:absolute;top:14px;right:14px;width:42px;height:42px;border-radius:12px;border:1px solid #5c7c9b;background:#17314d;color:#fff;font:700 24px/1 system-ui;cursor:pointer}
.kb-download-shell{display:grid;grid-template-columns:minmax(180px,260px) minmax(0,1fr);gap:22px;align-items:center}
.kb-download-poster{border-radius:16px;overflow:hidden;background:#12263b;border:1px solid #39536b;aspect-ratio:2/3;display:grid;place-items:center;min-height:0}
.kb-download-poster img{display:block;width:100%;height:100%;object-fit:cover}
.kb-download-poster-fallback{display:grid;gap:8px;padding:18px;text-align:center;color:#f2d199}
.kb-download-poster-fallback strong{font:800 22px/1.2 'Manrope',system-ui,sans-serif;color:#fff}
.kb-download-poster-fallback span{font:700 12px/1.2 'IBM Plex Mono',monospace;letter-spacing:.16em}
.kb-download-kicker{display:block;margin:0 0 10px;color:#f2ca85;font:700 12px/1.2 'IBM Plex Mono',monospace;letter-spacing:.16em}
.kb-download-copy h3{margin:0 0 10px;color:#fff;font:800 clamp(26px,3.6vw,40px)/1.05 'Manrope',system-ui,sans-serif}
.kb-download-text{margin:0 0 12px;color:#dce8f4;font:500 16px/1.6 'Manrope',system-ui,sans-serif}
.kb-download-notice{margin:0 0 18px;padding:14px 15px;border:1px solid #cfaa6e;border-radius:12px;background:rgba(199,149,80,.08);color:#ffe2b2;font:600 14px/1.5 'Manrope',system-ui,sans-serif}
.kb-download-actions{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:720px){#kb-download-layer{padding:10px}.kb-download-dialog{padding:16px 15px 18px}.kb-download-shell{grid-template-columns:1fr;gap:16px}.kb-download-poster{width:min(220px,100%);justify-self:center}.kb-download-actions{flex-direction:column}.kb-download-actions .kb-btn{width:100%}.kb-download-close{top:10px;right:10px}}

/* KAIRO 27.34 — Top Loader aprobado, Transfer.it externo */
.kb-download-poster{background:transparent;border:0;border-radius:0;overflow:visible;aspect-ratio:auto;align-self:center;min-height:0;padding:4px}
.kb-download-poster>.k-premium-toploader{width:100%;max-width:254px;margin:0 auto}
.kb-download-poster>.k-premium-toploader>.k-premium-poster{max-width:none}
@media(max-width:720px){.kb-download-poster>.k-premium-toploader{max-width:185px}}

/* KAIRO 27.35 — descarga: resuelve conflicto de selectores del Top Loader. */
#kb-download-layer{overflow-y:auto;overscroll-behavior:contain;align-items:center}
#kb-download-layer .kb-download-dialog{max-height:calc(100dvh - 28px);overflow-y:auto;overscroll-behavior:contain}
#kb-download-layer .kb-download-shell{grid-template-columns:minmax(0,214px) minmax(0,1fr);gap:24px;align-items:center}
#kb-download-layer .kb-download-poster{width:100%;max-width:214px;min-width:0;display:block;place-items:unset;align-self:center;padding:0;border:0;overflow:visible;aspect-ratio:auto}
#kb-download-layer .kb-download-poster>.k-premium-toploader{position:relative;display:block;width:100%;max-width:214px;aspect-ratio:1122 / 1402;margin:0;line-height:0}
#kb-download-layer .kb-download-poster .k-premium-toploader>.k-premium-poster{position:absolute;display:block;left:18.72%;top:15.05%;width:61.15%;height:69.61%;max-width:none;object-fit:cover;object-position:center;z-index:1}
#kb-download-layer .kb-download-poster .k-premium-toploader>.k-premium-plastic{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:fill;z-index:3}
#kb-download-layer .kb-download-poster>img{width:100%;height:auto;object-fit:cover}
#kb-download-layer .kb-download-copy{min-width:0;padding-right:35px;overflow-wrap:anywhere}
#kb-download-layer .kb-download-copy h3{font-size:clamp(22px,2.8vw,32px);line-height:1.12;overflow-wrap:break-word}
#kb-download-layer .kb-download-text{font-size:14px;line-height:1.5}
#kb-download-layer .kb-download-notice{font-size:13px;line-height:1.45;margin-bottom:15px}
#kb-download-layer .kb-download-actions{gap:8px}
#kb-download-layer .kb-download-actions .kb-btn{min-height:43px;font-size:13px;padding:10px 14px}
@media(max-width:720px){
 #kb-download-layer{padding:10px}
 #kb-download-layer .kb-download-dialog{max-height:calc(100dvh - 20px);padding:16px}
 #kb-download-layer .kb-download-shell{grid-template-columns:1fr;gap:10px}
 #kb-download-layer .kb-download-poster{max-width:140px;justify-self:center;margin:auto}
 #kb-download-layer .kb-download-poster>.k-premium-toploader{max-width:140px}
 #kb-download-layer .kb-download-copy{padding-right:0}
 #kb-download-layer .kb-download-copy h3{font-size:clamp(21px,6vw,28px)}
 #kb-download-layer .kb-download-notice{padding:10px 12px}
 #kb-download-layer .kb-download-actions{display:grid;grid-template-columns:1fr}
}
@media(min-width:721px) and (max-height:570px){#kb-download-layer{align-items:start}}
@media(prefers-reduced-motion:reduce){#kb-download-layer *,#kb-rental-layer *{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}
/* 27.35 — cuenta y controles de pago legibles. */
.kb-history{border:1px solid #3b5671;border-radius:12px;padding:0;margin:16px 0;background:#091827}
.kb-history>summary{cursor:pointer;color:#d1e3f2;padding:14px 16px;font:700 13px/1.4 'Manrope',system-ui,sans-serif;list-style-position:inside}
.kb-history[open]>summary{border-bottom:1px solid #3b5671}
.kb-history>.kb-history-list{padding:3px 12px 12px}
.kb-history .kb-order-card{opacity:.93}
.kb-history summary:focus-visible{outline:3px solid #9cd8ff;outline-offset:3px}
.kb-search-empty{padding:12px;color:#deecfa;background:#10283c;border:1px solid #4f7290;border-radius:10px}
#kb-download-go:focus-visible,.kb-download-close:focus-visible,#kb-download-cancel:focus-visible{outline:3px solid #9cd8ff;outline-offset:3px}
