.app-footer{margin-top:var(--space-16);background:var(--bg-secondary);border-top:1px solid var(--glass-border);color:var(--text-secondary)}.footer-content{max-width:var(--container-max);padding:var(--space-12)var(--space-8)var(--space-10);gap:var(--space-10);grid-template-columns:1.4fr 1fr 1fr 1.4fr;margin:0 auto;display:grid}.footer-section{min-width:0}.footer-logo img{width:auto;height:64px;display:block}.footer-section .tagline{margin:var(--space-4)0;max-width:28ch;font-size:var(--font-size-sm);line-height:1.5}.social-icons{gap:var(--space-2);display:flex}.social-icons a{border:1px solid var(--glass-border);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--text-secondary);transition:color var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast);place-items:center;display:grid}.social-icons a:hover{color:#0c0b09;background:var(--color-primary);border-color:var(--color-primary)}.footer-heading{margin:0 0 var(--space-4);font-family:var(--font-family-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary);font-size:.72rem;font-weight:400}.footer-section ul{gap:var(--space-3);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.footer-section ul a{color:var(--text-secondary);font-size:var(--font-size-sm);transition:color var(--transition-fast);text-decoration:none}.footer-section ul a:hover{color:var(--text-primary);text-underline-offset:3px;text-decoration:underline}.footer-section.newsletter p{margin:0 0 var(--space-4);font-size:var(--font-size-sm);line-height:1.5}.newsletter-form{gap:0;display:flex}.newsletter-form input{min-width:0;height:44px;padding:0 var(--space-4);background:var(--bg-primary);border:1px solid var(--glass-border);border-radius:var(--radius-sm)0 0 var(--radius-sm);color:var(--text-primary);font:inherit;font-size:var(--font-size-sm);border-right:none;flex:1}.newsletter-form input::placeholder{color:var(--text-muted)}.newsletter-form input:focus-visible{outline-offset:-2px;border-color:var(--color-primary)}.newsletter-form button{height:44px;padding:0 var(--space-5);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:0 var(--radius-sm)var(--radius-sm)0;color:#0c0b09;font:inherit;font-size:var(--font-size-sm);cursor:pointer;transition:background var(--transition-fast);font-weight:700}.newsletter-form button:hover{background:var(--color-primary-light)}.footer-bottom{max-width:var(--container-max);padding:var(--space-5)var(--space-8);justify-content:space-between;gap:var(--space-4);border-top:var(--border-subtle);font-family:var(--font-family-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);margin:0 auto;font-size:.72rem;display:flex}.footer-cookie-link{font:inherit;letter-spacing:inherit;text-transform:inherit;color:var(--text-secondary);cursor:pointer;text-underline-offset:3px;background:0 0;border:none;padding:0;text-decoration:underline}.footer-cookie-link:hover{color:var(--text-primary)}.made-with-love{align-items:center;gap:var(--space-2);display:inline-flex}.heart-icon{color:var(--color-primary)}@media (max-width:900px){.footer-content{gap:var(--space-8);padding:var(--space-10)var(--space-5)var(--space-8);grid-template-columns:1fr 1fr}.footer-section.brand,.footer-section.newsletter{grid-column:1/-1}}@media (max-width:768px){.app-footer{margin-top:var(--space-10);padding-bottom:calc(var(--bottom-nav-height) + env(safe-area-inset-bottom,0px))}.footer-bottom{padding:var(--space-4)var(--space-5);flex-direction:column}}
.cc-bar{z-index:var(--z-toast);background:var(--bg-secondary);border-top:1px solid var(--color-primary);color:var(--text-primary);max-height:85vh;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -12px 32px rgba(0,0,0,.5)}.cc-main{max-width:var(--container-max);padding:var(--space-4)var(--space-8);align-items:center;gap:var(--space-8);margin:0 auto;display:flex}.cc-text{flex:1;min-width:0}.cc-title{margin:0 0 var(--space-1);font-family:var(--font-family-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary);font-size:.72rem}.cc-desc{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.5}.cc-desc a{color:var(--text-primary)}.cc-actions{gap:var(--space-3);flex-shrink:0;display:flex}.cc-btn{font:inherit;font-size:var(--font-size-sm);border-radius:var(--radius-sm);border:1px solid var(--glass-border);color:var(--text-primary);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);background:0 0;padding:.6rem 1.1rem;font-weight:600}.cc-btn:hover{border-color:var(--text-tertiary);background:var(--bg-elevated)}.cc-btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#0c0b09}.cc-btn-primary:hover{background:var(--color-primary-light);border-color:var(--color-primary-light)}.cc-btn-ghost{color:var(--text-secondary);text-underline-offset:3px;border-color:transparent;text-decoration:underline}.cc-panel{max-width:var(--container-max);padding:0 var(--space-8)var(--space-5);margin:0 auto}.cc-list{border-top:var(--border-subtle);margin:0;padding:0;list-style:none}.cc-row{justify-content:space-between;align-items:center;gap:var(--space-6);padding:var(--space-4)0;border-bottom:var(--border-subtle);display:flex}.cc-row-text{flex-direction:column;gap:2px;display:flex}.cc-row-title{align-items:center;gap:var(--space-2);font-weight:600;display:flex}.cc-row-desc{font-size:var(--font-size-sm);color:var(--text-tertiary)}.cc-tag{font-family:var(--font-family-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--color-secondary);border:1px solid var(--color-secondary);border-radius:var(--radius-sm);padding:1px 6px;font-size:.65rem}.cc-switch{border-radius:var(--radius-full);border:1px solid var(--glass-border);background:var(--bg-elevated);cursor:pointer;width:44px;height:24px;transition:background var(--transition-fast);flex-shrink:0;position:relative}.cc-switch:after{content:"";background:var(--text-primary);width:18px;height:18px;transition:transform var(--transition-fast);border-radius:50%;position:absolute;top:2px;left:2px}.cc-switch.is-on{background:var(--color-primary);border-color:var(--color-primary)}.cc-switch.is-on:after{background:#0c0b09;transform:translate(20px)}.cc-switch:disabled{opacity:.55;cursor:not-allowed}.cc-panel-actions{padding-top:var(--space-4);justify-content:flex-end;display:flex}@media (max-width:768px){.cc-bar{bottom:var(--bottom-nav-height);max-height:calc(100vh - var(--bottom-nav-height) - 16px)}.cc-main{align-items:stretch;gap:var(--space-4);padding:var(--space-4);flex-direction:column}.cc-actions{flex-wrap:wrap}.cc-actions .cc-btn-primary{flex:100%}.cc-actions .cc-btn{text-align:center;flex:auto}.cc-panel{padding:0 var(--space-4)var(--space-4)}}
