.accessibility-bubble{position:fixed!important;bottom:20px!important;left:20px!important;width:60px!important;height:60px!important;background:linear-gradient(135deg,var(--magenta) 0,var(--purple) 100%)!important;border:none!important;border-radius:50%!important;cursor:pointer!important;z-index:99999!important;box-shadow:0 4px 20px rgba(255,0,128,.3)!important;transition:all .3s ease!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:24px!important;color:white!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;user-select:none!important;touch-action:manipulation!important}.accessibility-bubble:hover{transform:scale(1.1)!important;box-shadow:0 6px 30px rgba(255,0,128,.4)!important}.accessibility-bubble:focus{outline:3px solid var(--magenta)!important;outline-offset:2px!important}.accessibility-bubble:not(:hover):not(:focus){visibility:visible!important;opacity:1!important;display:flex!important;pointer-events:auto!important}.accessibility-bubble:active{transform:scale(.95)!important}.accessibility-bubble *{pointer-events:none!important}.accessibility-bubble:not([disabled]){pointer-events:auto!important;cursor:pointer!important}.accessibility-bubble:after,.accessibility-bubble:before{display:none!important}.accessibility-icon{font-size:28px;line-height:1}.accessibility-panel{position:fixed!important;bottom:90px!important;left:20px!important;width:320px!important;max-height:80vh!important;background:white!important;border-radius:16px!important;box-shadow:0 8px 40px rgba(0,0,0,.15)!important;z-index:99998!important;overflow:hidden!important;border:2px solid var(--light-pink)!important;animation:slideInUp .3s ease-out!important;display:block!important;visibility:visible!important;opacity:1!important}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.accessibility-panel[role=dialog]{display:block!important;visibility:visible!important;opacity:1!important;z-index:99998!important}.accessibility-backdrop{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:rgba(0,0,0,.1)!important;z-index:99997!important;display:flex!important;align-items:flex-end!important;justify-content:flex-start!important;padding:0 0 90px 20px!important}.accessibility-header{background:linear-gradient(135deg,var(--magenta) 0,var(--purple) 100%);color:white;padding:16px 20px;display:flex;justify-content:space-between;align-items:center}.accessibility-header h2{margin:0;font-size:18px;font-weight:600;color:white}.accessibility-close{background:none;border:none;color:white;font-size:24px;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s ease}.accessibility-close:hover{background-color:rgba(255,255,255,.2)}.accessibility-close:focus{outline:2px solid white;outline-offset:2px}.accessibility-content{padding:20px;max-height:60vh;overflow-y:auto}.accessibility-group{margin-bottom:20px}.accessibility-group label{display:block;font-weight:600;color:var(--black);margin-bottom:8px;font-size:14px}.accessibility-group select{width:100%;padding:10px 12px;border:2px solid var(--gray-light);border-radius:8px;background:white;font-size:14px;color:var(--black);transition:border-color .2s ease}.accessibility-group select:focus{outline:none;border-color:var(--magenta)}.accessibility-group small{display:block;color:var(--gray);font-size:12px;margin-top:4px;line-height:1.4}.checkbox-label{display:flex!important;align-items:center;cursor:pointer;font-size:14px;margin-bottom:8px}.checkbox-label input[type=checkbox]{display:none}.checkmark{width:20px;height:20px;border:2px solid var(--gray-light);border-radius:4px;margin-left:10px;position:relative;transition:all .2s ease;flex-shrink:0}.checkbox-label input[type=checkbox]:checked+.checkmark{background:var(--magenta);border-color:var(--magenta)}.checkbox-label input[type=checkbox]:checked+.checkmark:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:white;font-size:12px;font-weight:700}.checkbox-label:hover .checkmark{border-color:var(--magenta)}.accessibility-actions{margin-top:24px;padding-top:20px;border-top:1px solid var(--gray-light)}.accessibility-reset{background:var(--gray-light);color:var(--black);border:none;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;width:100%}.accessibility-reset:hover{background:var(--gray);color:white}.accessibility-reset:focus{outline:2px solid var(--magenta);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:6px;background:var(--magenta);color:white;padding:8px 16px;text-decoration:none;border-radius:4px;font-weight:600;z-index:1002;transition:top .2s ease;display:none}.skip-link:focus{top:6px;display:block}.accessibility-tabs{display:flex;border-bottom:1px solid var(--gray-light);margin-bottom:20px}.tab-button{flex:1;padding:12px 16px;background:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--gray);border:none;border-bottom:2px solid transparent;transition:all .2s ease}.tab-button.active,.tab-button:hover{color:var(--magenta);background:var(--light-pink)}.tab-button.active{border-bottom-color:var(--magenta)}.tab-button:focus{outline:2px solid var(--magenta);outline-offset:-2px}.accessibility-checker{padding:0}.checker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--gray-light)}.checker-header h3{margin:0;font-size:16px;color:var(--black)}.check-button{background:var(--magenta);color:white;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:background-color .2s ease}.check-button:hover:not(:disabled){background:var(--magenta-dark)}.check-button:disabled{background:var(--gray);cursor:not-allowed}.issues-list{max-height:300px;overflow-y:auto;margin-bottom:16px}.no-issues{text-align:center;color:var(--magenta);font-weight:500;padding:20px;background:var(--light-pink);border-radius:8px;margin:0}.issue{display:flex;justify-content:space-between;align-items:flex-start;padding:12px;margin-bottom:8px;border-radius:6px;border-right:3px solid}.issue-error{background:#ffebee;border-color:#f44336}.issue-warning{background:#fff3e0;border-color:#ff9800}.issue-info{background:#e3f2fd;border-color:#2196f3}.issue-content{flex:1;display:flex;flex-direction:column;gap:4px}.issue-type{font-size:16px;margin-left:8px}.issue-message{font-weight:500;color:var(--black);font-size:14px}.issue-fix{font-size:12px;color:var(--gray);font-style:italic}.highlight-button{background:var(--purple);color:white;border:none;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:11px;font-weight:500;transition:background-color .2s ease;flex-shrink:0}.highlight-button:hover{background:var(--purple-light)}.checker-summary{padding-top:16px;border-top:1px solid var(--gray-light);text-align:center}.checker-summary p{margin:0;font-size:12px;color:var(--gray)}.font-normal{font-size:16px}.font-large{font-size:18px}.font-large h1{font-size:clamp(32px,8vw,48px)}.font-large h2{font-size:clamp(24px,6vw,36px)}.font-large h3{font-size:clamp(20px,5vw,28px)}.font-large .btn,.font-large .cta-button,.font-large p{font-size:18px}.font-extra-large{font-size:20px}.font-extra-large h1{font-size:clamp(36px,9vw,56px)}.font-extra-large h2{font-size:clamp(28px,7vw,42px)}.font-extra-large h3{font-size:clamp(24px,6vw,32px)}.font-extra-large .btn,.font-extra-large .cta-button,.font-extra-large p{font-size:20px}.contrast-high{--black:#000000;--gray:#333333;--magenta:#CC0066;--magenta-dark:#990044;--purple:#6600AA;--purple-light:#8800CC}.contrast-high body{background:#FFFFFF;color:#000000}.contrast-high .content-card{background:#FFFFFF;border:2px solid #000000}.contrast-high .cta-button{background:#000000;color:#FFFFFF;border:2px solid #000000}.contrast-high .cta-button:hover{background:#333333}.cursor-large *{cursor:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z" fill="%23000"/></svg>'),auto!important}.cursor-large a,.cursor-large button,.cursor-large input,.cursor-large select,.cursor-large textarea{cursor:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 24 24"><path d="M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z" fill="%23000"/></svg>'),pointer!important}.screen-reader-mode .accessibility-bubble,.screen-reader-mode .accessibility-panel{display:none}.keyboard-navigation .accessibility-bubble:focus,.keyboard-navigation .accessibility-close:focus,.keyboard-navigation .accessibility-reset:focus,.keyboard-navigation :focus{outline:3px solid var(--magenta)!important;outline-offset:2px!important}.reduced-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reduced-motion .accessibility-panel{animation:none}@media (max-width:768px){.accessibility-panel{width:280px;left:10px;bottom:80px}.accessibility-bubble{width:50px!important;height:50px!important;bottom:15px!important;left:15px!important;font-size:20px!important;position:fixed!important;z-index:99999!important;visibility:visible!important;opacity:1!important;display:flex!important;pointer-events:auto!important;cursor:pointer!important;touch-action:manipulation!important}.accessibility-icon{font-size:22px}}@media (max-width:480px){.accessibility-panel{width:calc(100vw - 20px);left:10px;right:10px}}@media (prefers-contrast:high){.accessibility-bubble,.accessibility-group select,.accessibility-panel{border:2px solid #000000}}@media (prefers-reduced-motion:reduce){.accessibility-bubble{transition:none}.accessibility-panel{animation:none}.accessibility-bubble:hover{transform:none}}.cookie-banner{position:fixed;bottom:0;right:0;left:0;background:#ffffff;border-top:2px solid #f0f0f0;box-shadow:0 -4px 24px rgba(0,0,0,.1);z-index:1000;padding:0;animation:slideUp .4s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-banner-content{max-width:1200px;margin:0 auto;padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1.5rem}.cookie-banner-text{display:flex;flex-direction:column;gap:.75rem}.cookie-banner-title{font-size:1.2rem;font-weight:600;color:#1a1a1a;margin:0;letter-spacing:-.01em}.cookie-banner-description{font-size:.95rem;line-height:1.6;color:#2c3e50;margin:0}.cookie-banner-link{color:#6c5ce7;text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s ease;display:inline-block;margin-top:.25rem}.cookie-banner-link:hover{color:#5a4cd6;text-decoration:underline}.cookie-banner-link:focus{outline:2px solid #6c5ce7;outline-offset:2px;border-radius:4px}.cookie-banner-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.cookie-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.cookie-btn:focus{outline:2px solid #6c5ce7;outline-offset:2px}.cookie-btn-accept{background:linear-gradient(135deg,#6c5ce7,#a29bfe);color:white;box-shadow:0 4px 12px rgba(108,92,231,.3)}.cookie-btn-accept:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(108,92,231,.4);background:linear-gradient(135deg,#5a4cd6,#9286fd)}.cookie-btn-primary{background:#ffffff;color:#6c5ce7;border:2px solid #6c5ce7}.cookie-btn-primary:hover{background:#f8f9fa;transform:translateY(-1px)}.cookie-btn-secondary{background:#f8f9fa;color:#2c3e50;border:2px solid #e9ecef}.cookie-btn-secondary:hover{background:#e9ecef;border-color:#dee2e6;transform:translateY(-1px)}.cookie-settings{background:#f8f9fa;border-radius:12px;padding:1.5rem;margin-top:.5rem}.cookie-settings-title{font-size:1.1rem;font-weight:600;color:#1a1a1a;margin:0 0 1.25rem;letter-spacing:-.01em}.cookie-setting-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem 0;border-bottom:1px solid #e9ecef;gap:1.5rem}.cookie-setting-item:last-of-type{border-bottom:none}.cookie-setting-info{flex:1}.cookie-setting-label{display:flex;flex-direction:column;gap:.5rem;cursor:pointer}.cookie-setting-label strong{font-size:.95rem;font-weight:600;color:#1a1a1a}.cookie-setting-description{font-size:.85rem;color:#6c757d;line-height:1.5}.cookie-toggle{position:relative;display:inline-block;width:48px;height:28px;flex-shrink:0}.cookie-toggle input{opacity:0;width:0;height:0}.cookie-toggle-slider{position:absolute;cursor:pointer;top:0;right:0;left:0;bottom:0;background-color:#dee2e6;transition:.3s;border-radius:28px}.cookie-toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:white;transition:.3s;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2)}.cookie-toggle input:checked+.cookie-toggle-slider{background:linear-gradient(135deg,#6c5ce7,#a29bfe)}.cookie-toggle input:checked+.cookie-toggle-slider:before{transform:translateX(20px)}.cookie-toggle input:focus+.cookie-toggle-slider{box-shadow:0 0 0 3px rgba(108,92,231,.2)}.cookie-toggle.disabled{opacity:.6;cursor:not-allowed}.cookie-toggle.disabled .cookie-toggle-slider{cursor:not-allowed;background-color:#6c5ce7}.cookie-settings-actions{display:flex;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e9ecef;justify-content:flex-end}.cookie-settings-note{font-size:.85rem;color:#6c757d;margin:1rem 0 0;text-align:center;line-height:1.6}.cookie-settings-note a{color:#6c5ce7;text-decoration:none;font-weight:500}.cookie-settings-note a:hover{text-decoration:underline}@media (max-width:768px){.cookie-banner-content{padding:1.25rem 1.5rem;gap:1.25rem}.cookie-banner-title{font-size:1.1rem}.cookie-banner-description{font-size:.9rem}.cookie-banner-actions{flex-direction:column;width:100%}.cookie-btn{justify-content:center}.cookie-settings{padding:1.25rem}.cookie-setting-item{flex-direction:column;gap:1rem}.cookie-toggle{align-self:flex-start}.cookie-settings-actions{flex-direction:column}.cookie-btn{width:100%}}@media (max-width:480px){.cookie-banner-content{padding:1rem 1.25rem}.cookie-banner-title{font-size:1rem}.cookie-banner-description{font-size:.85rem}.cookie-settings{padding:1rem}.cookie-setting-label strong{font-size:.9rem}.cookie-setting-description{font-size:.8rem}}@media (prefers-contrast:high){.cookie-banner{border-top-width:3px;border-top-color:#000000}.cookie-btn{border-width:2px}.cookie-toggle-slider{border:2px solid #000000}}@media (prefers-reduced-motion:reduce){.cookie-banner{animation:none}.cookie-btn,.cookie-toggle-slider,.cookie-toggle-slider:before{transition:none}}