.cake-gallery-card{cursor:pointer;background:#fff;height:100%;transition:all .3s;position:relative;overflow:hidden;border-radius:16px!important;box-shadow:0 2px 8px #00000014!important}.cake-gallery-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #ff336626!important}.cake-gallery-card:hover .cake-image{transform:scale(1.05)}.cake-gallery-card:hover .image-overlay{background:linear-gradient(#0000001a 0%,#000000a6 100%)}.cake-gallery-card:hover .cake-name{transform:translateY(-2px)}.cake-gallery-card:hover .image-count-overlay{background:#fb4855f2;transform:scale(1.05)}.cake-gallery-card .image-container{cursor:pointer;outline:none;width:100%;height:220px;position:relative;overflow:hidden}.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{object-fit:cover;width:100%;height:100%;transition:transform .4s}.cake-gallery-card .image-overlay{pointer-events:none;z-index:1;background:linear-gradient(#0000000d 0%,#00000080 100%);width:100%;height:100%;transition:background .3s;position:absolute;top:0;left:0}.cake-gallery-card .cake-number-badge{color:var(--brand-dark-pink);z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffffff2;border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:700;position:absolute;top:12px;left:12px;box-shadow:0 2px 6px #00000026}@media (max-width:480px){.cake-gallery-card .cake-number-badge{padding:3px 8px;font-size:.7rem;top:8px;left:8px}}.cake-gallery-card .image-count-overlay{color:#fff;z-index:3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;border-radius:16px;align-items:center;gap:4px;padding:5px 10px;font-size:.75rem;font-weight:600;transition:all .3s;display:flex;position:absolute;top:12px;right:12px}.cake-gallery-card .image-count-overlay svg{font-size:.9rem}@media (max-width:480px){.cake-gallery-card .image-count-overlay{padding:4px 8px;font-size:.7rem;top:8px;right:8px}}.cake-gallery-card .card-content-overlay{z-index:2;flex-direction:column;gap:4px;padding:16px;display:flex;position:absolute;bottom:0;left:0;right:0}@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{color:#fff;text-shadow:0 2px 8px #0000004d;text-align:left;font-family:Playfair Display,serif;line-height:1.2;transition:transform .3s;margin:0!important;font-size:1.2rem!important;font-weight:700!important}@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{color:#ffffffe6;text-shadow:0 1px 4px #0000004d;text-align:left;font-family:Poppins,sans-serif;font-size:.75rem;font-weight:500}@media (max-width:480px){.cake-gallery-card .view-gallery-hint{font-size:.7rem}}@media (prefers-color-scheme:dark){.cake-gallery-card{background:#282828f2}.cake-gallery-card .cake-number-badge{color:#fb4855;background:#323232f2;border:1px solid #fb48554d}}@media (prefers-reduced-motion:reduce){.cake-gallery-card,.cake-image,.image-overlay,.cake-name,.image-count-overlay{transition:none}.cake-gallery-card:hover,.cake-gallery-card:hover .cake-image,.cake-gallery-card:hover .cake-name{transform:none}}
.category-card-link{width:100%;text-decoration:none;transition:transform .3s;display:block}.category-card-link:hover{transform:translateY(-4px)}.category-card-link:focus-visible{outline:2px solid var(--primary-color,#f36);outline-offset:4px;border-radius:16px}.category-card{cursor:pointer;background:#fff;border:2px solid #0000;border-radius:16px;height:100%;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000014,0 0 0 2px #fbbbd14d}.category-card:hover{border-color:#ff9a9e80;box-shadow:0 8px 20px #f363,0 0 0 3px #ff9a9e66,0 0 20px #fbbbd14d}.category-card:hover .category-card__image{transform:scale(1.05)}.category-card:hover .category-card__overlay{background:linear-gradient(#0000001a 0%,#000000a6 100%)}.category-card:hover .category-card__title{transform:translateY(-2px)}.category-card__image-container{background:linear-gradient(135deg,#ffe6f0 0%,#fff0f5 100%);width:100%;height:220px;position:relative;overflow:hidden}@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{object-fit:cover;width:100%;height:100%;transition:transform .4s}.category-card__overlay{pointer-events:none;background:linear-gradient(#0000000d 0%,#00000080 100%);width:100%;height:100%;transition:background .3s;position:absolute;top:0;left:0}.category-card__content{z-index:2;flex-direction:column;gap:6px;padding:20px;display:flex;position:absolute;bottom:0;left:0;right:0}@media (max-width:768px){.category-card__content{padding:16px}}@media (max-width:480px){.category-card__content{padding:14px}}.category-card__title{color:#fff;text-shadow:0 2px 8px #0000004d;margin:0;font-family:Playfair Display,serif;font-size:1.4rem;font-weight:700;line-height:1.2;transition:transform .3s}@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{color:#fffffff2;text-transform:uppercase;letter-spacing:.5px;text-shadow:0 1px 4px #0000004d;background:#ff3366d9;border-radius:12px;width:fit-content;padding:4px 10px;font-family:Poppins,sans-serif;font-size:.8rem;font-weight:600;display:inline-block}@media (max-width:480px){.category-card__count{padding:3px 8px;font-size:.75rem}}@media (prefers-color-scheme:dark){.category-card{background:linear-gradient(135deg,#282828f2 0%,#32282df2 100%)}.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 #ff33664d}}@media (prefers-reduced-motion:reduce){.category-card-link,.category-card,.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{background:#000000e6;border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.cake-image-gallery-modal .gallery-header .gallery-title{flex:1;color:#fff!important;margin:0!important;font-weight:600!important}.cake-image-gallery-modal .gallery-header .gallery-controls{align-items:center;gap:8px;display:flex}.cake-image-gallery-modal .gallery-header .gallery-controls .image-counter{text-align:center;min-width:60px;color:#ffffffb3!important;font-size:.875rem!important}.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:#ffffff1a!important}.cake-image-gallery-modal .gallery-header .gallery-controls .control-button.close-button:hover{color:#ff5252!important;background:#f4433633!important}.cake-image-gallery-modal .gallery-content{background:#000;flex-direction:column;height:100%;display:flex;overflow:hidden;padding:0!important}.cake-image-gallery-modal .main-image-container{touch-action:pan-y pinch-zoom;-webkit-user-select:none;user-select:none;background:#000;flex:1;justify-content:center;align-items:center;min-height:400px;display:flex;position:relative}.cake-image-gallery-modal .main-image-container .nav-button{z-index:2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);touch-action:manipulation;position:absolute;top:50%;transform:translateY(-50%);color:#fff!important;background:#00000080!important;padding:12px!important;transition:all .3s!important}.cake-image-gallery-modal .main-image-container .nav-button:hover{transform:translateY(-50%)scale(1.1);background:#000c!important}.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{touch-action:none;justify-content:center;align-items:center;max-width:100%;max-height:100%;display:flex;position:relative}.cake-image-gallery-modal .main-image-container .image-wrapper .main-image{object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none;border-radius:8px;max-width:100%;max-height:70vh;box-shadow:0 8px 32px #00000080}.cake-image-gallery-modal .main-image-container .image-wrapper .image-loading{color:#ffffffb3;justify-content:center;align-items:center;min-height:200px;display:flex}.cake-image-gallery-modal .thumbnails-container{background:#000000e6;border-top:1px solid #ffffff1a;padding:16px 0}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper{scroll-behavior:smooth;gap:8px;padding:0 24px;display:flex;overflow-x:auto}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar{height:4px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar-track{background:#ffffff1a;border-radius:2px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:2px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar-thumb:hover{background:#ffffff80}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:8px;flex-shrink:0;width:80px;height:80px;padding:0;transition:all .3s;overflow:hidden}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail:hover{border-color:#ffffff80;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 #fb48554d}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail img{object-fit:cover;width:100%;height:100%}.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{border-radius:0!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;margin:0!important}.cake-image-gallery-modal .gallery-header{padding:10px 12px}.cake-image-gallery-modal .gallery-header .gallery-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:.95rem!important}.cake-image-gallery-modal .gallery-header .gallery-controls{gap:4px}.cake-image-gallery-modal .gallery-header .gallery-controls .image-counter{min-width:45px;font-size:.75rem!important}.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 - 156px)}.cake-image-gallery-modal .main-image-container .nav-button{width:40px;height:40px;background:#0009!important;padding:8px!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{object-fit:contain;border-radius:0;width:100%;max-height:calc(100vh - 156px)}.cake-image-gallery-modal .thumbnails-container{padding:8px 0;position:sticky;bottom:0}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper{-webkit-overflow-scrolling:touch;gap:6px;padding:0 12px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper::-webkit-scrollbar{height:3px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail{touch-action:manipulation;-webkit-tap-highlight-color:#0000;border-width:2px;border-radius:6px;width:60px;height:60px}.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{min-width:40px;font-size:.7rem!important}.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 - 136px)}.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 - 136px)}.cake-image-gallery-modal .thumbnails-container{padding:6px 0}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper{gap:4px;padding:0 8px}.cake-image-gallery-modal .thumbnails-container .thumbnails-wrapper .thumbnail{border-radius:4px;width:50px;min-width:50px;height:50px}}@media (hover:none) and (pointer:coarse){.cake-image-gallery-modal .nav-button:active,.cake-image-gallery-modal .thumbnail:active,.cake-image-gallery-modal .control-button:active{opacity:.7}}
