.lens-modal{position:fixed;top:0;left:0;width:100%;height:100%;z-index:99999;display:none;opacity:0;transition:opacity 0.4s cubic-bezier(.4,0,.2,1)}.lens-modal.active{display:block;opacity:1}.lens-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgb(26 26 46 / .95) 0%,rgb(22 33 62 / .98) 100%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lens-modal-container{position:relative;width:96%;max-width:1600px;max-height:92vh;margin:4vh auto;background:linear-gradient(145deg,#0f0f1e 0%,#1a1a2e 50%,#16213e 100%);border-radius:24px;box-shadow:0 30px 90px rgb(0 0 0 / .5),0 0 1px 1px rgb(102 126 234 / .1),inset 0 1px 0 rgb(255 255 255 / .05);overflow:hidden;z-index:100000;animation:modalSlideIn 0.5s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideIn{from{transform:translateY(-80px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.lens-modal-close{position:absolute;top:24px;right:24px;width:48px;height:48px;background:rgb(255 255 255 / .08);border:2px solid rgb(255 255 255 / .15);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all 0.3s cubic-bezier(.4,0,.2,1);z-index:100001;color:rgb(255 255 255 / .9);backdrop-filter:blur(10px)}.lens-modal-close:hover{background:linear-gradient(135deg,#ff3b3b 0%,#ff6b6b 100%);border-color:#ff3b3b;transform:rotate(90deg) scale(1.1);box-shadow:0 8px 24px rgb(255 59 59 / .4)}.lens-modal-close svg{stroke-width:2.5;filter:drop-shadow(0 2px 4px rgb(0 0 0 / .3))}.lens-modal-content{padding:50px 40px 40px;max-height:92vh;overflow-y:auto;overflow-x:hidden}.lens-modal-content::-webkit-scrollbar{width:12px}.lens-modal-content::-webkit-scrollbar-track{background:rgb(255 255 255 / .03);border-radius:10px;margin:10px 0}.lens-modal-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#667eea 0%,#764ba2 100%);border-radius:10px;border:2px solid rgb(255 255 255 / .05)}.lens-modal-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#764ba2 0%,#667eea 100%)}.lens-modal-header{text-align:center;margin-bottom:50px;padding-bottom:30px;border-bottom:2px solid rgb(102 126 234 / .15);position:relative;max-width:100%}.lens-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;background:linear-gradient(135deg,rgb(102 126 234 / .15) 0%,rgb(118 75 162 / .15) 100%);border:1px solid rgb(102 126 234 / .3);border-radius:50px;color:#a8b3ff;font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;margin-bottom:20px}.lens-badge svg{fill:gold;filter:drop-shadow(0 0 8px rgb(255 215 0 / .6))}.lens-title{margin:0 0 20px;display:flex;flex-direction:column;gap:8px;max-width:100%}.brand-name{font-size:16px;font-weight:600;color:#667eea;letter-spacing:3px;text-transform:uppercase}.lens-name{font-size:36px;font-weight:700;background:linear-gradient(135deg,#fff 0%,#a8b3ff 100%);-webkit-background-clip:text;-webkit-text-fill-color:#fff0;background-clip:text;line-height:1.2;word-wrap:break-word;max-width:100%}.lens-description{font-size:16px;line-height:1.7;color:rgb(255 255 255 / .7);max-width:900px;margin:0 auto 25px;word-wrap:break-word}.lens-key-features{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:25px}.feature-tag{display:flex;align-items:center;gap:8px;padding:10px 18px;background:rgb(255 255 255 / .05);border:1px solid rgb(255 255 255 / .1);border-radius:12px;color:#fff;font-size:14px;font-weight:500;transition:all 0.3s ease}.feature-tag:hover{background:rgb(102 126 234 / .15);border-color:rgb(102 126 234 / .4);transform:translateY(-2px)}.feature-tag svg{stroke-width:2;color:#667eea}.compatibility-section{margin-top:40px;max-width:100%;overflow:hidden}.section-header{text-align:center;margin-bottom:40px;max-width:100%}.section-header h3{display:inline-flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#fff;margin-bottom:12px;flex-wrap:wrap;justify-content:center}.section-header h3 svg{stroke-width:2;color:#667eea;flex-shrink:0}.section-subtitle{font-size:15px;color:rgb(255 255 255 / .6);margin:0;word-wrap:break-word}.compatible-cameras-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:24px;max-width:100%}.camera-card{background:linear-gradient(145deg,rgb(255 255 255 / .06) 0%,rgb(255 255 255 / .02) 100%);border:1px solid rgb(255 255 255 / .08);border-radius:18px;padding:28px 24px;position:relative;transition:all 0.4s cubic-bezier(.4,0,.2,1);opacity:0;animation:fadeInUp 0.6s ease forwards;overflow:hidden;max-width:100%;min-height:420px;display:flex;flex-direction:column;gap:0}.camera-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,#667eea,transparent);opacity:0;transition:opacity 0.3s ease}.camera-card:hover{transform:translateY(-8px);border-color:rgb(102 126 234 / .4);box-shadow:0 20px 40px rgb(0 0 0 / .4),0 0 0 1px rgb(102 126 234 / .2),inset 0 1px 0 rgb(255 255 255 / .1)}.camera-card:hover::before{opacity:1}.camera-card.premium-card{background:linear-gradient(145deg,rgb(102 126 234 / .1) 0%,rgb(118 75 162 / .08) 100%);border-color:rgb(102 126 234 / .3)}.camera-card.premium-card::before{background:linear-gradient(90deg,#ffd700,#ffed4e,#ffd700)}.camera-card.cinema-card{background:linear-gradient(145deg,rgb(255 59 59 / .08) 0%,rgb(255 107 107 / .06) 100%);border-color:rgb(255 59 59 / .25)}.camera-card.cinema-card::before{background:linear-gradient(90deg,#ff3b3b,#ff6b6b,#ff3b3b)}.camera-card.mid-range-card{background:linear-gradient(145deg,rgb(67 233 123 / .08) 0%,rgb(56 178 172 / .06) 100%);border-color:rgb(67 233 123 / .2)}.camera-card.entry-card{background:linear-gradient(145deg,rgb(255 255 255 / .04) 0%,rgb(255 255 255 / .01) 100%);border-color:rgb(255 255 255 / .06)}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.camera-rank{position:absolute;top:-14px;right:24px;width:48px;height:48px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:21px;color:#fff;box-shadow:0 6px 20px rgb(102 126 234 / .5),inset 0 1px 0 rgb(255 255 255 / .3);border:3px solid rgb(255 255 255 / .25);z-index:10}.rank-number{width:48px;height:48px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:21px;color:#fff;box-shadow:0 6px 20px rgb(102 126 234 / .5),inset 0 1px 0 rgb(255 255 255 / .3);border:3px solid rgb(255 255 255 / .25)}.rank-badge{margin-top:6px;padding:4px 12px;background:linear-gradient(135deg,#ffd700 0%,#ffed4e 100%);color:#1a1a2e;font-size:11px;font-weight:700;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 4px 12px rgb(255 215 0 / .4)}.camera-header{margin-bottom:22px;max-width:100%;padding-bottom:16px;border-bottom:1px solid rgb(255 255 255 / .06)}.camera-brand{display:block;font-size:11px;font-weight:700;letter-spacing:2.8px;color:#667eea;margin-bottom:8px;text-transform:uppercase}.camera-model{font-size:26px;font-weight:700;color:#fff;margin:0 0 10px;line-height:1.2;word-wrap:break-word;max-width:100%;letter-spacing:-.5px}.camera-type{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:rgb(255 255 255 / .65);padding:4px 0;flex-wrap:wrap;font-weight:500}.camera-type svg{stroke-width:2;opacity:.7;flex-shrink:0}.camera-specs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:22px;padding:0;flex-grow:1}.spec-item{display:flex;align-items:center;gap:14px;min-height:58px;background:linear-gradient(135deg,rgb(102 126 234 / .08) 0%,rgb(118 75 162 / .05) 100%);padding:14px 16px;border-radius:12px;border:1px solid rgb(102 126 234 / .15);transition:all 0.3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.spec-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#667eea 0%,#764ba2 100%);opacity:0;transition:opacity 0.3s ease}.spec-item:hover{background:linear-gradient(135deg,rgb(102 126 234 / .15) 0%,rgb(118 75 162 / .1) 100%);border-color:rgb(102 126 234 / .35);transform:translateX(4px);box-shadow:0 4px 16px rgb(102 126 234 / .25)}.spec-item:hover::before{opacity:1}.spec-item .spec-icon{font-size:24px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgb(102 126 234 / .2) 0%,rgb(118 75 162 / .15) 100%);border-radius:10px;flex-shrink:0;border:2px solid rgb(102 126 234 / .3);box-shadow:0 4px 12px rgb(102 126 234 / .2);transition:all 0.3s ease}.spec-item:hover .spec-icon{transform:scale(1.08);box-shadow:0 6px 16px rgb(102 126 234 / .35)}.spec-details{display:flex;flex-direction:column;gap:3px;flex:1;overflow:visible}.spec-value{font-size:15px;font-weight:600;color:#fff;letter-spacing:-.2px;white-space:nowrap;overflow:visible}.spec-label{font-size:10px;color:rgb(255 255 255 / .55);text-transform:uppercase;letter-spacing:.8px;font-weight:600;white-space:nowrap}.camera-specs{margin-bottom:20px;flex:1}.camera-spec{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid rgb(255 255 255 / .08);transition:all 0.3s ease;position:relative}.camera-spec::before{content:'';position:absolute;left:0;bottom:0;width:0;height:1px;background:linear-gradient(90deg,rgb(56 239 125 / .8),transparent);transition:all 0.3s ease}.camera-spec:hover::before{width:100%}.camera-spec:hover{padding-left:8px;color:rgb(56 239 125 / .9)}.camera-spec:last-child{border-bottom:none}.camera-spec .spec-icon{font-size:1rem;min-width:20px;text-align:center;color:rgb(56 239 125 / .8);filter:drop-shadow(0 0 5px rgb(56 239 125 / .3))}.camera-spec .spec-text,.camera-spec span:not(.spec-icon){color:rgb(255 255 255 / .9);font-size:.85rem;font-weight:600;flex:1}.compatibility-footer{display:flex;flex-direction:column;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid rgb(255 255 255 / .06)}.compatibility-score{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 14px;background:rgb(102 126 234 / .08);border-radius:10px;border:1px solid rgb(102 126 234 / .15)}.score-label{font-size:11px;color:rgb(255 255 255 / .6);text-transform:uppercase;letter-spacing:1.2px;font-weight:600}.score-stars{color:gold;font-size:18px;letter-spacing:3px;text-shadow:0 0 12px rgb(255 215 0 / .6);white-space:nowrap}.compatibility-features{display:flex;flex-wrap:wrap;gap:6px}.feature-pill{padding:5px 12px;background:rgb(102 126 234 / .15);border:1px solid rgb(102 126 234 / .3);border-radius:20px;font-size:11px;font-weight:600;color:#a8b3ff;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.modal-footer-info{margin-top:50px;padding-top:30px;border-top:2px solid rgb(102 126 234 / .15);max-width:100%}.info-box{display:flex;align-items:flex-start;gap:16px;padding:20px 24px;background:rgb(102 126 234 / .08);border:1px solid rgb(102 126 234 / .2);border-radius:12px;max-width:100%}.info-box svg{flex-shrink:0;margin-top:2px;stroke-width:2;color:#667eea}.info-box p{margin:0;font-size:14px;line-height:1.6;color:rgb(255 255 255 / .8);word-wrap:break-word}.info-box strong{color:#fff}.lens-modal-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#fff}.loader-spinner{width:64px;height:64px;border:4px solid rgb(255 255 255 / .1);border-top-color:#667eea;border-radius:50%;animation:spin 1s cubic-bezier(.68,-.55,.265,1.55) infinite;margin-bottom:24px}@keyframes spin{to{transform:rotate(360deg)}}.lens-modal-loader p{font-size:16px;color:rgb(255 255 255 / .7)}.lens-modal-error{text-align:center;padding:80px 20px;color:#ff6b6b}.lens-modal-error p{font-size:18px}body.modal-open{overflow:hidden}@media (max-width:1400px){.compatible-cameras-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}}@media (max-width:1200px){.compatible-cameras-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}.camera-card{padding:20px;ntainer{min-height:380px}95vh}auto;border-radius:16px;.compatible-cameras-grid{grid-template-columns:repeat(2,1fr);{gap:16px;padding:40px 20px 30px}}}@media (max-width:768px){top:16px;top:16px;right:16px;right:16px;width:44px;4px;height:44px}.lens-name{font-size:26px}.lens-description{.lens-description{font-size:14px}.lens-key-features{.lens-key-features{gap:8px}feature-tag{.feature-tag{padding:8px 14px;padding:8px 14px;13px;font-size:13px}section-header h3{.section-header h3{font-size:22px;font-size:22px}compatible-cameras-grid{.compatible-cameras-grid{grid-template-columns:1fr;grid-template-columns:1fr;gap:16px}.camera-card{padding:22px 18px;min-height:auto}.camera-model{font-size:22px}.camera-specs-grid{grid-template-columns:1fr;gap:10px}.camera-specs{gap:8px}.spec-item,.camera-spec{min-height:54px;padding:12px 14px;gap:12px}.spec-item .spec-icon,.camera-spec .spec-icon{width:38px;height:38px;font-size:20px}.spec-value,.camera-spec span:not(.spec-icon){font-size:14px}}@media (max-width:480px){ntent{.lens-modal-content{x 16px 25px;padding:35px 16px 25px}lens-name{.lens-name{font-size:22px;font-size:22px}.camera-card{padding:16px;padding:16px}}.rank-number{width:40px;width:40px;height:40px;height:40px;font-size:18px;font-size:18px}.camera-specs-grid{grid-template-columns:1fr;grid-template-columns:1fr;gap:10px}.spec-item{45px;min-height:45px}}================================================================*/ * Compatible Button States */ .lens-compatible-btn,.lens-compatible-btn,.btn-compare-premium{position:relative;cursor:pointer;transition:all 0.3s cubic-bezier(.4,0,.2,1);transition:all 0.3s cubic-bezier(.4,0,.2,1)}}.lens-compatible-btn:hover,.btn-compare-premium:hover{(-2px);transform:translateY(-2px);8px 20px rgb(102 126 234 / .3);box-shadow:0 8px 20px rgb(102 126 234 / .3)}.lens-compatible-btn:active,.btn-compare-premium:active{ranslateY(0);transform:translateY(0)}te */ -btn.loading,.lens-compatible-btn.loading,ium.loading{.btn-compare-premium.loading{pointer-events:none;opacity:.7}.lens-compatible-btn.loading::after,btn-compare-premium.loading::after{.btn-compare-premium.loading::after{content:'';content:'';te;position:absolute;top:50%;left:50%;left:50%;width:16px;width:16px;height:16px;:-8px 0 0 -8px;margin:-8px 0 0 -8px;gba(255,255,255,.3);border:2px solid rgb(255 255 255 / .3);color:#fff;border-top-color:#fff;s:50%;border-radius:50%;btnSpin 0.6s linear infinite;animation:btnSpin 0.6s linear infinite}@keyframes btnSpin{to{transform:rotate(360deg)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;0,0);overflow:hidden;margin:-1px;padding:0;height:1px;width:1px;position:absolute;to{transform:rotate(360deg)}white-space:nowrap;border-width:0}.retry-btn{margin-top:20px;padding:12px 32px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border:none;border-radius:8px;color:#fff;font-size:14px;px;font-weight:600;font-weight:600;cursor:pointer;cursor:pointer}opacity:.7;margin-bottom:20px;box-shadow:0 8px 20px rgb(102 126 234 / .4);transform:translateY(-2px);transition:all 0.3s ease;transition:all 0.3s ease}.retry-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgb(102 126 234 / .4)}.lens-modal-error svg{margin-bottom:20px;opacity:.7}.lens-card-mid .lens-modal-trigger{cursor:pointer;transition:all 0.3s ease}.lens-card-mid .lens-modal-trigger:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgb(0 0 0 / .2)}.lens-modal-trigger,.lens-compatible-btn,.btn-compare-premium,.btn-compare-mid,.btn-compare-budget,.compatible-btn,[data-lens-modal]{cursor:pointer;transition:all 0.3s ease;position:relative;overflow:hidden}.lens-modal-trigger:hover,.btn-compare-premium:hover,.btn-compare-mid:hover,.btn-compare-budget:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgb(0 0 0 / .15)}.lens-modal_trigger.loading::after,.btn-compare-premium.loading::after,.btn-compare-mid.loading::after,.btn-compare-budget.loading::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgb(255 255 255 / .3),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{100%{left:100%}}.lens-card-premium,.lens-card-mid,.lens-card-budget{transition:transform 0.3s ease,box-shadow 0.3s ease}.lens-card-premium:hover,.lens-card-mid:hover,.lens-card-budget:hover{transform:translateY(-4px)}.lens-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:999999;opacity:0;transition:opacity 0.3s ease}.lens-modal.active{display:block;opacity:1}.lens-modal-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgb(0 0 0 / .75);backdrop-filter:blur(5px);cursor:pointer}.lens-modal-container{position:relative;width:90%;max-width:1200px;max-height:90vh;margin:5vh auto;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgb(0 0 0 / .3);overflow:hidden;transform:translateY(-80px) scale(.9);transition:transform 0.3s cubic-bezier(.34,1.56,.64,1)}.lens-modal.active .lens-modal-container{transform:translateY(0) scale(1)}.lens-modal-close{position:absolute;top:20px;right:20px;width:44px;height:44px;background:rgb(255 255 255 / .95);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all 0.3s ease;box-shadow:0 4px 12px rgb(0 0 0 / .15)}.lens-modal-close:hover{background:#fff;transform:rotate(90deg) scale(1.1);box-shadow:0 6px 20px rgb(0 0 0 / .2)}.lens-modal-close svg{color:#333;transition:color 0.3s ease}.lens-modal-close:hover svg{color:#e74c3c}.lens-modal-content{padding:40px;max-height:90vh;overflow-y:auto;overflow-x:hidden}.lens-modal-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center}.loader-spinner{width:60px;height:60px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.lens-modal-loader p{font-size:16px;color:#666;margin:0}.lens-modal-error{display:flex;flex-direction:column;align-items:center;padding:60px 40px;text-align:center}.lens-modal-error svg{color:#e74c3c;margin-bottom:20px}.lens-modal-error p{font-size:16px;color:#666;margin:0 0 30px 0}.retry-btn{padding:12px 30px;background:#3498db;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:16px;transition:all 0.3s ease}.retry-btn:hover{background:#2980b9;transform:translateY(-2px);box-shadow:0 4px 12px rgb(52 152 219 / .3)}body.modal-open{overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width:768px){.lens-modal-container{width:95%;margin:2.5vh auto;max-height:95vh;border-radius:12px}.lens-modal-content{padding:30px 20px}.lens-modal-close{top:15px;right:15px;width:40px;height:40px}.lens-modal-loader{padding:60px 20px}.loader-spinner{width:50px;height:50px}}@media (max-width:480px){.lens-modal-container{width:100%;height:100%;max-height:100vh;margin:0;border-radius:0}.lens-modal-content{padding:20px 15px;max-height:calc(100vh - 80px)}}