.ad-layout-container{container:ad-layout/inline-size}.advertisement-slot{background:0 0;display:block;position:relative;overflow:hidden;container:ad-slot/inline-size}.advertisement-placeholder{background:#00000003;border-radius:8px;justify-content:center;align-items:center;transition:all .3s;display:flex;position:relative}.advertisement-placeholder:before{content:"";background:linear-gradient(90deg,#0000,#fff6,#0000);animation:2s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.ad-position-header{width:100%;max-width:728px;margin:0 auto 1rem;overflow:hidden}.ad-position-sidebar{width:100%;max-width:300px;max-height:250px;position:sticky;top:1rem;overflow:hidden}.ad-position-in_article{text-align:center;width:100%;max-width:100%;margin:1.5rem auto;overflow:hidden}.ad-position-footer{width:100%;max-width:728px;margin:2rem auto 0;overflow:hidden}.ad-position-list_item{width:100%;margin:1rem 0}.ad-position-sticky{z-index:1000;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0}.ad-position-popup{z-index:9999;background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}@container ad-slot (max-width:320px){.advertisement-slot{--ad-size:mobile-small;min-height:100px}.ad-display-container{font-size:.875rem}.banner-ad h3{font-size:.75rem;line-height:1.2}}@container ad-slot (min-width:321px) and (max-width:768px){.advertisement-slot{--ad-size:mobile;min-height:150px}.ad-display-container{font-size:.9375rem}}@container ad-slot (min-width:769px) and (max-width:1024px){.advertisement-slot{--ad-size:tablet;min-height:200px}.ad-display-container{font-size:1rem}}@container ad-slot (min-width:1025px){.advertisement-slot{--ad-size:desktop;min-height:250px}.ad-display-container{font-size:1rem}}@supports not (container-type:inline-size){@media (max-width:320px){.advertisement-slot{--ad-size:mobile-small;min-height:100px}}@media (min-width:321px) and (max-width:768px){.advertisement-slot{--ad-size:mobile;min-height:150px}}@media (min-width:769px) and (max-width:1024px){.advertisement-slot{--ad-size:tablet;min-height:200px}}@media (min-width:1025px){.advertisement-slot{--ad-size:desktop;min-height:250px}}}.ad-type-banner{border-radius:8px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 2px 4px #0000001a}.ad-type-banner:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.ad-type-text{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1rem;transition:background-color .2s}.ad-type-text:hover{background:#f1f5f9}.ad-type-native{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.ad-type-product{background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s;overflow:hidden}.ad-type-product:hover{border-color:#d1d5db;box-shadow:0 4px 6px #0000000d}.ad-type-video{background:#000;border-radius:8px;position:relative;overflow:hidden}.ad-type-tag{width:100%;position:relative}.ab-test-a{border-left:3px solid #3b82f6}.ab-test-b{border-left:3px solid #ef4444}.ad-label{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;text-align:center;margin-bottom:.25rem;font-size:.75rem}.ad-info-overlay img,.mock-asp-container img,.banner-ad img{margin:0 auto;display:block}.adsense-container{width:100%;position:relative}.adsense-fallback,.adsense-placeholder{color:#6b7280;background:#f9fafb;border:1px dashed #d1d5db;border-radius:6px;justify-content:center;align-items:center;font-size:.875rem;display:flex}.adsense-placeholder{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.html-embed-error,.iframe-embed-error,.js-embed-error{text-align:center;border-radius:6px;padding:1rem;font-size:.875rem}.html-embed-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.iframe-embed-error{color:#d97706;background:#fffbeb;border:1px solid #fde68a}.js-embed-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.ad-display-container{contain:layout style paint;will-change:transform}.ad-placeholder{background:#f0f0f0;animation:2s infinite loading}@keyframes loading{0%{opacity:.7}50%{opacity:1}to{opacity:.7}}@media (prefers-contrast:high){.advertisement-slot{border:2px solid #000}.ad-label{color:#000;font-weight:700}}@media (prefers-reduced-motion:reduce){.advertisement-placeholder:before,.ad-placeholder,.adsense-placeholder{animation:none}.ad-type-banner{transition:none}.ad-type-banner:hover{transform:none}}@media (prefers-color-scheme:dark){.advertisement-placeholder{background:#ffffff0d}.ad-type-text{color:#f9fafb;background:#1f2937;border-color:#374151}.ad-type-text:hover{background:#111827}.ad-type-native,.ad-type-product{background:#1f2937;border-color:#374151}.adsense-fallback,.adsense-placeholder{color:#9ca3af;background:#1f2937;border-color:#374151}}@media (max-width:768px){.ad-display-container{touch-action:manipulation}.ad-type-banner,.ad-type-product{min-height:44px}.ad-position-sticky{padding-bottom:env(safe-area-inset-bottom)}.ad-position-header,.ad-position-footer{width:100vw;max-width:100%;margin:0 0 0 calc(50% - 50vw)}.ad-position-header .advertisement-placeholder,.ad-position-footer .advertisement-placeholder{background:0 0;border-radius:0}.ad-position-header .ad-type-banner,.ad-position-footer .ad-type-banner{border-radius:0}.ad-position-in_article{max-width:100%;min-height:unset;margin:.25rem auto;padding:0;line-height:1}.ad-position-sidebar{display:none}}@media print{.advertisement-slot,.ad-display-container{display:none}}.development-ad-layout{position:relative}.development-ad-layout:before{content:"Development Mode";color:#3b82f6;z-index:1000;background:#eff6ff;border-radius:3px;padding:2px 6px;font-size:10px;position:absolute;top:-20px;left:0}.ad-display-container:focus{outline-offset:2px;outline:2px solid #3b82f6}.ad-display-container:focus:not(:focus-visible){outline:none}.ad-loading{position:relative;overflow:hidden}.ad-loading:after{content:"";background:linear-gradient(90deg,#0000,#fff9,#0000);width:100%;height:100%;animation:2s infinite loading-sweep;position:absolute;top:0;left:0;transform:translate(-100%)}@keyframes loading-sweep{0%{transform:translate(-100%)}to{transform:translate(200%)}}
