.kinomos-ad { --ad-bg:#fff; --ad-text:#203c31; --ad-muted:#63786c; --ad-border:#d9e6dc; width:250px; position:fixed; right:20px; bottom:110px; z-index:80; border:1px solid var(--ad-border); border-radius:16px; background:var(--ad-bg); color:var(--ad-text); box-shadow:0 12px 40px #102d2526; overflow:hidden; font-family:inherit; }
.kinomos-ad *, .kinomos-ad *::before { box-sizing:border-box; }
.kinomos-ad[hidden], .kinomos-ad-slide[hidden] { display:none; }
.kinomos-ad-top { display:flex; align-items:center; justify-content:space-between; padding:5px 10px 5px 16px; border-bottom:1px solid var(--ad-border); }
.kinomos-ad-top > span { color:var(--ad-muted); font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.kinomos-ad button { display:inline-flex; align-items:center; justify-content:center; border:0; background:transparent; color:var(--ad-muted); min-width:32px; min-height:32px; border-radius:7px; cursor:pointer; }
.kinomos-ad-top button { font-size:22px; }
.kinomos-ad button:hover { background:#7aaf8f20; color:var(--ad-text); }
.kinomos-ad :is(button,a):focus-visible { outline:2px solid #589577; outline-offset:-3px; }
.kinomos-ad .kinomos-ad-destination { display:block; color:inherit; text-decoration:none; }
.kinomos-ad-image { display:block; width:100%; height:155px; object-fit:cover; }
.kinomos-ad-placeholder,.kinomos-ad-brand { display:flex; align-items:center; justify-content:center; gap:12px; padding:14px; min-height:136px; background:linear-gradient(130deg,#e1eee5,#f1e6c9); color:#225044; }
.kinomos-ad-placeholder { flex-direction:column; }
.kinomos-ad-placeholder span:first-child { font-size:38px; font-weight:700; }
.kinomos-ad-placeholder span:last-child { font-size:11px; }
.kinomos-ad-brand img { width:88px; height:88px; object-fit:contain; }
.kinomos-ad-brand > span { font-size:19px; line-height:1.25; font-weight:700; letter-spacing:-.04em; }
.kinomos-ad-copy { padding:16px; }
.kinomos-ad .kinomos-ad-label { display:block; font-size:10px; text-transform:uppercase; letter-spacing:.1em; color:var(--ad-muted); }
.kinomos-ad h3 { color:var(--ad-text); font-size:20px; line-height:1.25; font-weight:700; margin:8px 0; overflow-wrap:anywhere; }
.kinomos-ad p { color:var(--ad-muted); font-size:12px; line-height:1.6; margin:0 0 14px; }
.kinomos-ad-cta { display:flex; align-items:center; justify-content:space-between; padding:11px 13px; background:#23644e; color:white; border-radius:9px; font-size:12px; font-weight:600; }
.kinomos-ad-destination:hover .kinomos-ad-cta { background:#194b39; }
.kinomos-ad-controls { display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--ad-border); padding:5px 10px; color:var(--ad-muted); font-size:11px; }
[data-theme="dark"] .kinomos-ad { --ad-bg:#192a22; --ad-text:#e0ece4; --ad-muted:#acc2b2; --ad-border:#3b5445; box-shadow:0 12px 40px #0005; }
@media(max-width:1100px), (max-height:650px) {
    .kinomos-ad { position:relative; right:auto; bottom:auto; z-index:auto; width:calc(100% - 32px); max-width:680px; margin:24px auto; }
    .kinomos-ad .kinomos-ad-destination { display:grid; grid-template-columns:130px minmax(0,1fr); }
    .kinomos-ad-image { height:100%; min-height:170px; }
    .kinomos-ad-brand { flex-direction:column; gap:0; padding:8px; }
    .kinomos-ad-brand > span { font-size:14px; text-align:center; }
    .kinomos-ad-copy { padding:14px; }
    .kinomos-ad h3 { font-size:17px; }
    .kinomos-ad h3 br { display:none; }
    .kinomos-ad button { min-width:44px; min-height:44px; }
}
@media(max-width:380px) { .kinomos-ad .kinomos-ad-destination { grid-template-columns:95px minmax(0,1fr); } .kinomos-ad-brand img { width:72px; height:72px; } }
/* The feed's old top banner supplied this clearance below its fixed header. */
.ki-feed-page .feed-flex-wrapper { margin-top:76px; }
@media(max-width:1100px), (max-height:650px) {
    .ki-feed-page .kinomos-ad { margin-top:88px; }
    .ki-feed-page .feed-flex-wrapper { margin-top:0; }
}
