.promo-overlay,.promo-sheet{--promo-surface: #181b16;--promo-raised: #1d211a;--promo-line: #2c3128;--promo-ink: #f1f2ec;--promo-muted: #b5b9ad;--promo-accent: #34d27b;--promo-on-accent: #062012;font-family:inherit;color:var(--promo-ink)}[data-theme=light] .promo-overlay,[data-theme=light] .promo-sheet{--promo-surface: #ffffff;--promo-raised: #ffffff;--promo-line: #dfe3da;--promo-ink: #161a14;--promo-muted: #555c50;--promo-accent: #007b43;--promo-on-accent: #ffffff}.promo-overlay{position:fixed;inset:0;z-index:9000;display:flex;align-items:center;justify-content:center;padding:24px;background:#06080599;animation:promo-fade .2s ease-out}.promo-dialog{display:flex;width:min(840px,100%);max-height:calc(100vh - 48px);overflow:hidden;border:1px solid var(--promo-line);border-radius:22px;background:var(--promo-surface);box-shadow:0 30px 80px #00000080;animation:promo-rise .24s ease-out}.promo-media{position:relative;flex:0 0 360px;min-height:480px;background:#0d0f0c}.promo-media video,.promo-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}.promo-badge,.promo-label{font-size:11px;font-weight:700;letter-spacing:.06em}.promo-badge{position:absolute;top:14px;left:14px;padding:4px 8px;border-radius:6px;background:var(--promo-accent);color:var(--promo-on-accent)}.promo-body{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;gap:18px;padding:52px 44px 36px}.promo-body h2{margin:0;font-size:30px;line-height:1.2;font-weight:700;letter-spacing:-.01em}.promo-summary{margin:0;font-size:15px;line-height:1.55;color:var(--promo-muted)}.promo-body ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px;font-size:15px}.promo-body li{display:flex;align-items:center;gap:10px}.promo-body li svg{flex-shrink:0;color:var(--promo-accent)}.promo-actions{display:flex;gap:10px;margin-top:auto;padding-top:8px}.promo-primary,.promo-secondary{height:50px;padding:0 20px;border-radius:12px;font:inherit;font-size:15px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;cursor:pointer;transition:filter .15s ease,background .15s ease}.promo-primary{flex:1;border:0;background:var(--promo-accent);color:var(--promo-on-accent);font-weight:700}.promo-primary:hover{filter:brightness(1.08);color:var(--promo-on-accent)}.promo-secondary{border:1px solid var(--promo-line);background:transparent;color:var(--promo-ink)}.promo-secondary:hover{background:#7f7f7f1a;color:var(--promo-ink)}.promo-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:22px;background:transparent;color:var(--promo-muted);display:flex;align-items:center;justify-content:center;cursor:pointer}.promo-close:hover{background:#7f7f7f24;color:var(--promo-ink)}.promo-primary:focus-visible,.promo-secondary:focus-visible,.promo-close:focus-visible{outline:2px solid var(--promo-accent);outline-offset:2px}.promo-sheet{position:fixed;left:12px;right:12px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:9000;display:flex;gap:12px;padding:12px;border:1px solid var(--promo-line);border-radius:18px;background:var(--promo-raised);box-shadow:0 16px 40px #00000073;animation:promo-rise .24s ease-out}.promo-sheet-poster{flex-shrink:0;width:86px;height:112px;object-fit:cover;border-radius:10px}.promo-sheet-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px;padding-right:28px}.promo-sheet .promo-label{color:var(--promo-accent)}.promo-sheet h2{margin:0;font-size:16px;line-height:1.25;font-weight:700}.promo-sheet p{margin:0;font-size:13px;line-height:1.4;color:var(--promo-muted)}.promo-sheet .promo-primary{flex:none;height:40px;margin-top:auto;font-size:14px}.promo-sheet .promo-close{top:2px;right:2px}@keyframes promo-fade{0%{opacity:0}to{opacity:1}}@keyframes promo-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(max-width:900px){.promo-media{flex-basis:300px}.promo-body{padding:48px 32px 28px}.promo-body h2{font-size:26px}}@media(prefers-reduced-motion:reduce){.promo-overlay,.promo-dialog,.promo-sheet{animation:none}}
