.sponsor-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:10000;opacity:0;transition:opacity .3s ease}.sponsor-modal.show{display:flex;align-items:center;justify-content:center;opacity:1}.sponsor-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.sponsor-modal-content{position:relative;background:var(--card-background-color,#fff);border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.2);max-width:400px;width:90%;max-height:90vh;overflow:hidden;z-index:10001;transform:scale(.9);transition:transform .3s ease}.sponsor-modal.show .sponsor-modal-content{transform:scale(1)}.sponsor-modal-close{position:absolute;top:10px;right:10px;width:32px;height:32px;border:none;background:rgba(0,0,0,.1);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10002;transition:all .2s ease;color:var(--body-text-color,#333)}.sponsor-modal-close:hover{background:rgba(0,0,0,.2);transform:rotate(90deg)}.sponsor-modal-close span{font-size:24px;line-height:1;font-weight:300}.sponsor-modal-header{padding:20px 20px 10px;text-align:center;border-bottom:1px solid var(--border-color,#e5e5e5)}.sponsor-modal-header h3{margin:0;font-size:20px;font-weight:600;color:var(--body-text-color,#333)}.sponsor-modal-body{padding:20px;text-align:center}.sponsor-qrcode-image{max-width:100%;height:auto;border-radius:8px;box-shadow:0 2px 8px rgba(0,0,0,.1);display:block;margin:0 auto}@media(prefers-color-scheme:dark){.sponsor-modal-content{background:var(--card-background-color,#2d2d2d)}.sponsor-modal-header{border-bottom-color:var(--border-color,#444)}.sponsor-modal-close{background:rgba(255,255,255,.1);color:var(--body-text-color,#e5e5e5)}.sponsor-modal-close:hover{background:rgba(255,255,255,.2)}}@media(max-width:768px){.sponsor-modal-content{width:95%;max-width:350px}.sponsor-modal-header h3{font-size:18px}.sponsor-modal-body{padding:15px}}@keyframes modalFadeIn{from{opacity:0}to{opacity:1}}@keyframes modalSlideIn{from{transform:scale(.9)translateY(-20px);opacity:0}to{transform:scale(1)translateY(0);opacity:1}}.sponsor-modal.show .sponsor-modal-overlay{animation:modalFadeIn .3s ease}.sponsor-modal.show .sponsor-modal-content{animation:modalSlideIn .3s ease}