/* Full-width sponsor creatives; administration and campaign behavior are unchanged. */
.sponsored-ad-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-block:28px;align-items:stretch}
.sponsored-ad-grid .promotion-card{height:auto;min-height:0;padding:0;border:1px solid #e1e5ec;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 2px 9px #10234205;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.sponsored-ad-grid .sponsored-ad-link{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0;min-height:100%;height:100%;color:inherit;text-decoration:none}
.sponsored-ad-grid .sponsored-label{position:static;align-self:flex-start;display:inline-flex;margin:9px 12px;padding:3px 7px;border:1px solid #e6eaf0;border-radius:5px;background:#f9fafc;color:#6c778b;font-size:10px;line-height:12px;font-weight:500;z-index:1}
.sponsored-ad-grid .sponsor-visual{position:relative;isolation:isolate;flex:0 0 auto;display:grid;place-items:center;aspect-ratio:16/9;width:100%;overflow:hidden;background:#eef1f5}
.sponsored-ad-grid .sponsor-ambience{position:absolute;inset:-12%;width:124%;height:124%;max-width:none;object-fit:cover;filter:blur(22px);opacity:.64;pointer-events:none;z-index:-1}
.sponsored-ad-grid .sponsored-ad-image{display:block;position:absolute;inset:0;z-index:0;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center;margin:0;padding:0;border:0;border-radius:0;background:transparent;flex:none}
.sponsored-ad-grid .sponsor-card-body{display:flex;flex:1 1 auto;flex-direction:column;align-items:flex-start;gap:11px;min-width:0;padding:17px}
.sponsored-ad-grid .sponsored-ad-heading{height:auto;flex:none;min-width:0;width:100%;overflow:hidden}
.sponsored-ad-grid .promotion-card h2,.sponsored-ad-grid .sponsored-ad-brand{display:block;min-height:0;margin:0;font-size:16px;line-height:1.3;font-weight:700;letter-spacing:-.015em;color:#15223b;white-space:normal;overflow-wrap:anywhere}
.sponsored-ad-grid .promotion-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:40px;max-height:40px;font-size:13px;line-height:20px;color:#66738a;margin:0}
.sponsored-ad-grid .sponsored-ad-title{font-weight:600}
.sponsored-ad-grid .promotion-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;margin-top:auto;padding:7px 13px;border-radius:7px;background:#071e4b;color:#fff;font-size:12px;line-height:18px;font-weight:650;box-sizing:border-box}
.sponsored-ad-grid .promotion-empty{background:#fff;border:1px dashed #cdd6e3}
.sponsored-ad-grid .promotion-empty .sponsored-ad-link{justify-content:flex-start;align-items:stretch;background:transparent;gap:0;border-radius:inherit}
.sponsored-ad-grid .promotion-empty .sponsor-visual{background:radial-gradient(ellipse at top,#eef3fc,#f7f9fc)}
.sponsored-ad-grid .promotion-empty-icon{display:grid;place-items:center;width:72px;height:72px;color:#49658e;background:#fff;border:1px solid #e0e7f1;border-radius:22px;box-shadow:0 8px 24px #233f7010}
.sponsored-ad-grid .promotion-empty-icon svg{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sponsored-ad-grid .promotion-empty-cta{font-size:16px;line-height:21px;font-weight:700;padding:0;text-align:left;color:#15223b}
.sponsored-ad-grid .promotion-empty .promotion-cta{background:#eef3fc;color:#0b2c61;border:1px solid #dae4f3}
.sponsored-ad-grid .sponsored-ad-link:focus-visible{outline:3px solid #2962b2;outline-offset:-4px}
.sponsored-ad-grid .sponsor-visual--landscape{background:#090a0e}.sponsored-ad-grid .sponsor-visual--landscape .sponsor-ambience{opacity:.25;filter:blur(22px) brightness(.4)}
@media(hover:hover){.sponsored-ad-grid .promotion-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px #11284615;border-color:#bdc9dc}.sponsored-ad-grid .promotion-card:hover .promotion-cta{background:#d90018;color:#fff}}
@media(max-width:1100px){.sponsored-ad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.sponsored-ad-grid{grid-template-columns:minmax(0,1fr);gap:18px;margin-block:22px}.sponsored-ad-grid .sponsor-card-body{padding:16px}.sponsored-ad-grid .promotion-card h2,.sponsored-ad-grid .promotion-empty-cta{font-size:17px}.sponsored-ad-grid .promotion-card p{font-size:13px}}
@media(prefers-reduced-motion:reduce){.sponsored-ad-grid .promotion-card{transition:none}.sponsored-ad-grid .promotion-card:hover{transform:none}}

/* Compact advertising administration */

#ads .admin-ad-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start;margin:18px 0}
#ads .admin-ad-card{min-width:0;margin:0;padding:16px;border:1px solid #dde3ec;border-radius:14px;background:white;overflow-wrap:anywhere;box-shadow:0 2px 8px #0c204008}
#ads .admin-ad-card h3{font-size:18px;line-height:1.35;margin:8px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#ads .admin-ad-card p{font-size:13px;line-height:1.5;margin:7px 0}
#ads .admin-ad-card .meta{font-size:12px;color:#68748c}
#ads .admin-ad-card .admin-ad-image{display:block;width:100%;height:140px;max-height:140px;object-fit:contain;background:#f7f8fb;border-radius:9px;margin:10px 0}
#ads .admin-ad-card details{margin:10px 0;border-top:1px solid #edf0f5;padding-top:9px}
#ads .admin-ad-card summary{cursor:pointer;font-size:13px;font-weight:600;color:#233b65}
#ads .admin-ad-card form{max-width:none;margin:0}
#ads .admin-ad-card input,#ads .admin-ad-card select,#ads .admin-ad-card textarea{min-width:0;width:100%;font-size:13px;padding:8px;box-sizing:border-box}
#ads .admin-ad-card input[type=hidden]{display:none}
#ads .admin-ad-card textarea{min-height:65px}
#ads .ad-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#ads .ad-form-grid label{min-width:0;font-size:12px}
#ads .admin-decision-buttons{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
#ads .admin-decision-buttons button{width:auto;font-size:12px;padding:9px 12px;border-radius:8px}
#ads button[value=approved]{background:#166534;color:#fff;border-color:#166534}
#ads .admin-ad-card small{display:block;font-size:11px;color:#68748c;line-height:1.5;margin-top:8px}
#ads .admin-intake-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}
#ads .admin-intake-tabs a{font-size:12px;padding:7px 10px;border-radius:8px}
#ads .admin-intake-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap}
#ads .admin-intake-filters label{flex:1;min-width:180px}
#ads .admin-settings{margin-top:14px}
@media(max-width:1100px){#ads .admin-ad-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){#ads .admin-ad-grid{grid-template-columns:1fr}#ads .ad-form-grid{grid-template-columns:1fr}}


/* Shared public/admin 16:9 viewports; SVG retains the entire nonblank creative. */
.ct-ad-media{position:relative;isolation:isolate;display:block;width:100%;aspect-ratio:16/9;overflow:hidden;background:#eef1f5}
.ct-ad-media .sponsor-ambience{position:absolute;inset:-12%;width:124%;height:124%;max-width:none;object-fit:cover;filter:blur(22px);opacity:.64;z-index:-1}
.ct-ad-media .sponsored-ad-image{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;z-index:0}
.ct-ad-media.sponsor-visual--landscape{background:#090a0e}.ct-ad-media.sponsor-visual--landscape .sponsor-ambience{opacity:.25;filter:blur(22px) brightness(.4)}
#ads .admin-ad-preview{width:100%;height:auto;max-height:none;aspect-ratio:16/9;border-radius:9px;margin:12px 0}
#ads .admin-ad-preview .sponsored-ad-image{width:100%;height:100%}

#ads .ad-quick-remove{margin-top:14px}#ads .ad-quick-remove button{background:#fff;color:#a72836;border:1px solid #e4cbd0;padding:8px 12px;font-size:12px}
