.cake-gallery-card{position:relative;border-radius:16px!important;overflow:hidden;transition:all .3s ease;cursor:pointer;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08)!important;height:100%}.cake-gallery-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(255,51,102,.15)!important}.cake-gallery-card:hover .cake-image{transform:scale(1.05)}.cake-gallery-card:hover .image-overlay{background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.65))}.cake-gallery-card:hover .cake-name{transform:translateY(-2px)}.cake-gallery-card:hover .image-count-overlay{transform:scale(1.05);background:rgba(251,72,85,.95)}.cake-gallery-card .image-container{position:relative;width:100%;height:220px;overflow:hidden;cursor:pointer;outline:none}.cake-gallery-card .image-container:focus{outline:2px solid var(--brand-dark-pink);outline-offset:2px}@media(max-width:1024px){.cake-gallery-card .image-container{height:200px}}@media(max-width:768px){.cake-gallery-card .image-container{height:180px}}@media(max-width:480px){.cake-gallery-card .image-container{height:160px}}.cake-gallery-card .cake-image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.cake-gallery-card .image-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.5));transition:background .3s ease;pointer-events:none;z-index:1}.cake-gallery-card .cake-number-badge{position:absolute;top:12px;left:12px;background:hsla(0,0%,100%,.95);color:var(--brand-dark-pink);padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:700;z-index:3;backdrop-filter:blur(8px);box-shadow:0 2px 6px rgba(0,0,0,.15)}@media(max-width:480px){.cake-gallery-card .cake-number-badge{top:8px;left:8px;padding:3px 8px;font-size:.7rem}}.cake-gallery-card .image-count-overlay{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.75);color:#fff;padding:5px 10px;border-radius:16px;font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:4px;z-index:3;transition:all .3s ease;backdrop-filter:blur(8px)}.cake-gallery-card .image-count-overlay svg{font-size:.9rem}@media(max-width:480px){.cake-gallery-card .image-count-overlay{top:8px;right:8px;padding:4px 8px;font-size:.7rem}}.cake-gallery-card .card-content-overlay{position:absolute;bottom:0;left:0;right:0;padding:16px;display:flex;flex-direction:column;gap:4px;z-index:2}@media(max-width:768px){.cake-gallery-card .card-content-overlay{padding:14px}}@media(max-width:480px){.cake-gallery-card .card-content-overlay{padding:12px}}.cake-gallery-card .cake-name{font-family:Playfair Display,serif;font-weight:700!important;font-size:1.2rem!important;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.3);transition:transform .3s ease;line-height:1.2;margin:0!important;text-align:left}@media(max-width:1024px){.cake-gallery-card .cake-name{font-size:1.1rem!important}}@media(max-width:768px){.cake-gallery-card .cake-name{font-size:1rem!important}}@media(max-width:480px){.cake-gallery-card .cake-name{font-size:.95rem!important}}.cake-gallery-card .view-gallery-hint{font-family:Poppins,sans-serif;font-weight:500;font-size:.75rem;color:hsla(0,0%,100%,.9);text-shadow:0 1px 4px rgba(0,0,0,.3);text-align:left}@media(max-width:480px){.cake-gallery-card .view-gallery-hint{font-size:.7rem}}@media(prefers-color-scheme:dark){.cake-gallery-card{background:rgba(40,40,40,.95)}.cake-gallery-card .cake-number-badge{background:rgba(50,50,50,.95);color:#fb4855;border:1px solid rgba(251,72,85,.3)}}@media(prefers-reduced-motion:reduce){.cake-gallery-card,.cake-image,.cake-name,.image-count-overlay,.image-overlay{transition:none}.cake-gallery-card:hover,.cake-gallery-card:hover .cake-image,.cake-gallery-card:hover .cake-name{transform:none}}.category-card-link{text-decoration:none;display:block;width:100%;transition:transform .3s ease}.category-card-link:hover{transform:translateY(-4px)}.category-card-link:focus-visible{outline:2px solid var(--primary-color,#ff3366);outline-offset:4px;border-radius:16px}.category-card{border-radius:16px;overflow:hidden;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.08),0 0 0 2px rgba(251,187,209,.3);transition:all .3s ease;height:100%;position:relative;background:#fff;border:2px solid rgba(0,0,0,0)}.category-card:hover{box-shadow:0 8px 20px rgba(255,51,102,.2),0 0 0 3px rgba(255,154,158,.4),0 0 20px rgba(251,187,209,.3);border-color:rgba(255,154,158,.5)}.category-card:hover .category-card__image{transform:scale(1.05)}.category-card:hover .category-card__overlay{background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.65))}.category-card:hover .category-card__title{transform:translateY(-2px)}.category-card__image-container{position:relative;width:100%;height:220px;overflow:hidden;background:linear-gradient(135deg,#ffe6f0,#fff0f5)}@media(max-width:1024px){.category-card__image-container{height:200px}}@media(max-width:768px){.category-card__image-container{height:180px}}@media(max-width:480px){.category-card__image-container{height:160px}}.category-card__image{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.category-card__overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.5));transition:background .3s ease;pointer-events:none}.category-card__content{position:absolute;bottom:0;left:0;right:0;padding:20px;display:flex;flex-direction:column;gap:6px;z-index:2}@media(max-width:768px){.category-card__content{padding:16px}}@media(max-width:480px){.category-card__content{padding:14px}}.category-card__title{font-family:Playfair Display,serif;font-weight:700;font-size:1.4rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.3);transition:transform .3s ease;line-height:1.2;margin:0}@media(max-width:1024px){.category-card__title{font-size:1.3rem}}@media(max-width:768px){.category-card__title{font-size:1.2rem}}@media(max-width:480px){.category-card__title{font-size:1.1rem}}.category-card__count{font-family:Poppins,sans-serif;font-weight:600;font-size:.8rem;color:hsla(0,0%,100%,.95);text-transform:uppercase;letter-spacing:.5px;text-shadow:0 1px 4px rgba(0,0,0,.3);background:rgba(255,51,102,.85);padding:4px 10px;border-radius:12px;display:inline-block;width:fit-content}@media(max-width:480px){.category-card__count{font-size:.75rem;padding:3px 8px}}@media(prefers-color-scheme:dark){.category-card{background:linear-gradient(135deg,rgba(40,40,40,.95),rgba(50,40,45,.95))}.category-card__title{color:var(--text-primary-dark,#f0f0f0)}.category-card__description{color:var(--text-secondary-dark,#b0b0b0)}.category-card:hover{box-shadow:0 8px 24px rgba(255,51,102,.3)}}@media(prefers-reduced-motion:reduce){.category-card,.category-card-link,.category-card__image,.category-card__overlay,.category-card__title{transition:none}.category-card-link:hover,.category-card:hover .category-card__image{transform:none}}.cake-image-gallery-modal .gallery-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:rgba(0,0,0,.9);border-bottom:1px solid hsla(0,0%,100%,.1)}.cake-image-gallery-modal .gallery-header .gallery-title{color:#fff!important;font-weight:600!important;margin:0!important;flex:1}.cake-image-gallery-modal .gallery-header .gallery-controls{display:flex;align-items:center;gap:8px}.cake-image-gallery-modal .gallery-header .gallery-controls .image-counter{color:hsla(0,0%,100%,.7)!important;font-size:.875rem!important;min-width:60px;text-align:center}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button{color:#fff!important;padding:8px!important}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button:hover{background:hsla(0,0%,100%,.1)!important}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button.close-button:hover{background:rgba(244,67,54,.2)!important;color:#ff5252!important}.cake-image-gallery-modal .gallery-content{padding:0!important;background:#000;display:flex;flex-direction:column;height:100%;overflow:hidden}.cake-image-gallery-modal .main-image-container{position:relative;flex:1;display:flex;align-items:center;justify-content:center;min-height:400px;background:#000;touch-action:pan-y pinch-zoom;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.cake-image-gallery-modal .main-image-container .nav-button{position:absolute;top:50%;transform:translateY(-50%);z-index:2;color:#fff!important;background:rgba(0,0,0,.5)!important;backdrop-filter:blur(8px);padding:12px!important;transition:all .3s ease!important;touch-action:manipulation}.cake-image-gallery-modal .main-image-container .nav-button:hover{background:rgba(0,0,0,.8)!important;transform:translateY(-50%) scale(1.1)}.cake-image-gallery-modal .main-image-container .nav-button:active{transform:translateY(-50%) scale(.95)}.cake-image-gallery-modal .main-image-container .nav-button.prev-button{left:16px}.cake-image-gallery-modal .main-image-container .nav-button.next-button{right:16px}.cake-image-gallery-modal .main-image-container .nav-button svg{font-size:1.5rem}.cake-image-gallery-modal .main-image-container .image-wrapper{position:relative;max-width:100%;max-height:100%;display:flex;align-items:center;justify-content:center;touch-action:none}.cake-image-gallery-modal .main-image-container .image-wrapper .main-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.5);pointer-events:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}.cake-image-gallery-modal .main-image-container .image-wrapper .image-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:hsla(0,0%,100%,.7)}.cake-image-gallery-modal .thumbnails-container{background:rgba(0,0,0,.9);border-top:1px solid hsla(0,0%,100%,.1);padding:16px 0}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper{display:flex;gap:8px;padding:0 24px;overflow-x:auto;scroll-behavior:smooth}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar{height:4px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar-track{background:hsla(0,0%,100%,.1);border-radius:2px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.3);border-radius:2px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.5)}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail{flex-shrink:0;width:80px;height:80px;border:2px solid rgba(0,0,0,0);border-radius:8px;overflow:hidden;cursor:pointer;transition:all .3s ease;background:none;padding:0}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail:hover{border-color:hsla(0,0%,100%,.5);transform:scale(1.05)}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail.active{border-color:var(--brand-dark-pink);transform:scale(1.1);box-shadow:0 4px 16px rgba(251,72,85,.3)}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail img{width:100%;height:100%;object-fit:cover}.cake-image-gallery-modal.fullscreen .main-image-container .image-wrapper .main-image{max-height:calc(100vh - 160px)}.cake-image-gallery-modal.fullscreen .gallery-header{padding:20px 32px}.cake-image-gallery-modal.fullscreen .thumbnails-container .thumbnails-wrapper{padding:0 32px}@media(max-width:768px){.cake-image-gallery-modal .MuiDialog-paper{margin:0!important;max-height:100vh!important;height:100vh!important;max-width:100vw!important;border-radius:0!important}.cake-image-gallery-modal .gallery-header{padding:10px 12px}.cake-image-gallery-modal .gallery-header .gallery-title{font-size:.95rem!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cake-image-gallery-modal .gallery-header .gallery-controls{gap:4px}.cake-image-gallery-modal .gallery-header .gallery-controls .image-counter{font-size:.75rem!important;min-width:45px}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button{padding:6px!important}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button svg{font-size:1.2rem}.cake-image-gallery-modal .gallery-content{height:calc(100vh - 56px)!important}.cake-image-gallery-modal .main-image-container{min-height:unset;height:calc(100vh - 56px - 100px)}.cake-image-gallery-modal .main-image-container .nav-button{padding:8px!important;width:40px;height:40px;background:rgba(0,0,0,.6)!important}.cake-image-gallery-modal .main-image-container .nav-button.prev-button{left:4px}.cake-image-gallery-modal .main-image-container .nav-button.next-button{right:4px}.cake-image-gallery-modal .main-image-container .nav-button svg{font-size:1.1rem}.cake-image-gallery-modal .main-image-container .image-wrapper .main-image{max-height:calc(100vh - 56px - 100px);border-radius:0;width:100%;object-fit:contain}.cake-image-gallery-modal .thumbnails-container{padding:8px 0;position:sticky;bottom:0}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper{padding:0 12px;gap:6px;-webkit-overflow-scrolling:touch}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar{height:3px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail{width:60px;height:60px;border-radius:6px;border-width:2px;touch-action:manipulation;-webkit-tap-highlight-color:rgba(0,0,0,0)}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail:active{transform:scale(.95)}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail.active{border-width:3px}}@media(max-width:480px){.cake-image-gallery-modal .gallery-header{padding:8px 10px}.cake-image-gallery-modal .gallery-header .gallery-title{font-size:.875rem!important}.cake-image-gallery-modal .gallery-header .gallery-controls{gap:2px}.cake-image-gallery-modal .gallery-header .gallery-controls .image-counter{font-size:.7rem!important;min-width:40px}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button{padding:4px!important}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button svg{font-size:1.1rem}.cake-image-gallery-modal .gallery-content{height:calc(100vh - 48px)!important}.cake-image-gallery-modal .main-image-container{height:calc(100vh - 48px - 88px)}.cake-image-gallery-modal .main-image-container .nav-button{width:36px;height:36px;padding:6px!important}.cake-image-gallery-modal .main-image-container .nav-button.prev-button{left:2px}.cake-image-gallery-modal .main-image-container .nav-button.next-button{right:2px}.cake-image-gallery-modal .main-image-container .nav-button svg{font-size:1rem}.cake-image-gallery-modal .main-image-container .image-wrapper .main-image{max-height:calc(100vh - 48px - 88px)}.cake-image-gallery-modal .thumbnails-container{padding:6px 0}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper{padding:0 8px;gap:4px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail{width:50px;height:50px;border-radius:4px;min-width:50px}}@media(hover:none)and (pointer:coarse){.cake-image-gallery-modal .control-button:active,.cake-image-gallery-modal .nav-button:active,.cake-image-gallery-modal .thumbnail:active{opacity:.7}}