@import "https://fonts.googleapis.com/css2?family=Pacifico&family=Inter:wght@400;500;600;700;800&family=Nunito:wght@400;600;700;800;900&display=swap";:root{--bg-base:#0d0d1e;--bg-surface:#14142d;--bg-card:#14142dbf;--bg-hover:#ffffff0f;--text-primary:#f0f0ff;--text-secondary:#b8b8d0;--text-muted:#6e6e88;--gradient-primary:linear-gradient(135deg, #ff69b4 0%, #e040fb 50%, #ff5f7e 100%);--gradient-secondary:linear-gradient(135deg, #a78bfa 0%, #818cf8 50%, #6366f1 100%);--gradient-accent:linear-gradient(135deg, #f0abfc 0%, #c084fc 100%);--gradient-sunset:linear-gradient(135deg, #fbbf24 0%, #f59e0b 50%, #ef4444 100%);--border-subtle:#ffffff12;--border-medium:#ffffff1f;--border-strong:#fff3;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 24px #00000059;--shadow-lg:0 24px 64px #00000073;--shadow-glow-pink:0 0 24px #ff69b44d;--font-display:"Nunito", "Inter", sans-serif;--font-body:"Inter", sans-serif;--font-accent:"Pacifico", cursive;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--radius-full:9999px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.35s ease;--transition-spring:.3s cubic-bezier(.34, 1.56, .64, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 20% 20%,#ff69b40a 0%,#0000 50%),radial-gradient(circle at 80% 80%,#a78bfa0a 0%,#0000 50%);min-height:100dvh;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);font-weight:800;line-height:1.2}p{color:var(--text-secondary);line-height:1.7}button{font-family:var(--font-body)}img{max-width:100%;height:auto;display:block}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#ffffff08;border-radius:3px}::-webkit-scrollbar-thumb{background:#ff69b44d;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ff69b480}::selection{color:#fff;background:#ff69b44d}:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #ff69b499}.gradient-text{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glass{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#14142d99}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.badge{color:var(--text-secondary);font-size:13px;font-weight:500;font-family:var(--font-body);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;background:#ffffff0f;border:1.5px solid #ffffff1f;border-radius:50px;align-items:center;gap:6px;padding:7px 16px;transition:all .2s;display:inline-flex}.badge:hover{color:var(--text-primary);background:#ffffff1f;border-color:#ffffff38;transform:translateY(-1px)}.badge--active{background:var(--gradient-primary);color:#fff;border-color:#0000;box-shadow:0 4px 16px #ff69b466}.badge--active:hover{background:var(--gradient-primary);transform:translateY(-1px);box-shadow:0 6px 20px #ff69b480}.badge__emoji{font-size:14px}.badge__label{line-height:1}.frame-card{cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff0a;border:1.5px solid #ffffff14;border-radius:16px;flex-direction:column;align-items:center;gap:10px;width:100%;padding:12px;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:flex}.frame-card:hover{background:#ffffff14;border-color:#ff69b466;transform:translateY(-4px);box-shadow:0 12px 32px #00000040}.frame-card--selected{background:#ff69b414;border-color:#ff69b4b3;transform:translateY(-4px);box-shadow:0 0 0 3px #ff69b433,0 12px 32px #00000040}.frame-card__preview{aspect-ratio:3/4;width:100%;transition:all .2s;position:relative;overflow:hidden}.frame-card__layout{flex-direction:column;gap:3px;display:flex;position:absolute;inset:6px}.frame-card__strip{flex-direction:column;gap:3px;height:100%;display:flex}.frame-card__grid2x2{grid-template-columns:1fr 1fr;gap:3px;height:100%;display:grid}.frame-card__single{height:100%}.frame-card__photo-slot{border-radius:4px;flex:1;min-height:0}.frame-card__sticker{pointer-events:none;line-height:1;position:absolute}.frame-card__check{background:var(--gradient-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:flex;position:absolute;top:6px;right:6px;box-shadow:0 2px 8px #ff69b480}.frame-card__info{text-align:center;width:100%}.frame-card__name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;margin:0 0 2px;font-size:12px;font-weight:600;overflow:hidden}.frame-card__count{color:var(--text-muted);margin:0;font-size:11px}.frame-selector{flex-direction:column;gap:20px;min-height:100%;padding:32px 24px;display:flex;position:relative}.frame-selector__header{text-align:center;animation:.5s both slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.frame-selector__title{font-size:clamp(22px,4vw,32px);font-weight:800;font-family:var(--font-display);color:var(--text-primary);background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;justify-content:center;align-items:center;gap:10px;margin:0 0 8px;display:flex}.frame-selector__title-icon{-webkit-text-fill-color:initial;background:0 0}.frame-selector__subtitle{color:var(--text-secondary);margin:0;font-size:14px}.frame-selector__categories{scrollbar-width:none;-ms-overflow-style:none;gap:8px;padding-bottom:4px;animation:.5s .1s both slideDown;display:flex;overflow-x:auto}.frame-selector__categories::-webkit-scrollbar{display:none}.frame-selector__grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px;animation:.4s .2s both fadeIn;display:grid}@media (width>=640px){.frame-selector__grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@keyframes fadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.frame-selector__loading{color:var(--text-muted);flex-direction:column;align-items:center;gap:16px;padding:60px 0;font-size:14px;display:flex}.frame-selector__spinner{border:3px solid #ff69b433;border-top-color:#ff69b4;border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.frame-selector__deco{opacity:.1;pointer-events:none;font-size:28px;animation:4s ease-in-out infinite float;position:absolute}.frame-selector__deco--1{animation-delay:0s;top:20px;right:20px}.frame-selector__deco--2{font-size:22px;animation-delay:1.5s;top:60%;right:10px}.frame-selector__deco--3{font-size:20px;animation-delay:.8s;top:40%;left:8px}@keyframes float{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-12px)rotate(8deg)}}.countdown-overlay{z-index:20;border-radius:inherit;background:#0003;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.countdown-overlay__number{font-size:clamp(80px,20vw,140px);font-weight:900;font-family:var(--font-display);background:var(--gradient-primary);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 40px #ff69b499);-webkit-background-clip:text;background-clip:text;line-height:1;animation:.4s cubic-bezier(.34,1.56,.64,1) both countPop}@keyframes countPop{0%{opacity:0;transform:scale(.3)rotate(-10deg)}to{opacity:1;transform:scale(1)rotate(0)}}.countdown-overlay__text{color:#fff;text-shadow:0 2px 8px #0006;margin-top:16px;font-size:clamp(14px,3.5vw,20px);font-weight:600;animation:.3s .15s both fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.filter-selector{flex-direction:column;gap:10px;display:flex}.filter-selector__title{color:var(--text-secondary);margin:0;padding:0 4px;font-size:13px;font-weight:600}.filter-selector__list{scrollbar-width:none;-ms-overflow-style:none;gap:10px;padding:4px 2px 8px;display:flex;overflow-x:auto}.filter-selector__list::-webkit-scrollbar{display:none}.filter-selector__item{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:2px solid #ffffff1a;border-radius:12px;flex-direction:column;flex-shrink:0;align-items:center;gap:5px;width:68px;padding:6px;transition:all .2s;display:flex;position:relative}.filter-selector__item:hover{background:#ff69b40f;border-color:#ff69b466;transform:translateY(-2px)}.filter-selector__item--active{background:#ff69b41a;border-color:#ff69b4cc;box-shadow:0 0 0 2px #ff69b433}.filter-selector__preview-wrap{border-radius:6px;width:52px;height:40px;overflow:hidden}.filter-selector__preview-img{object-fit:cover;width:100%;height:100%}.filter-selector__swatch{background:linear-gradient(135deg,#ff9eb5,#c8b6e2,#95d5e8);border-radius:6px;justify-content:center;align-items:center;width:52px;height:40px;display:flex}.filter-selector__swatch-emoji{font-size:18px}.filter-selector__label{color:var(--text-secondary);text-align:center;font-size:10px;font-weight:500;line-height:1.2}.filter-selector__item--active .filter-selector__label{color:#ff69b4;font-weight:600}.filter-selector__dot{background:var(--gradient-primary);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.btn{cursor:pointer;font-family:var(--font-body);letter-spacing:.3px;white-space:nowrap;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;border:none;border-radius:50px;justify-content:center;align-items:center;gap:8px;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.34,1.56,.64,1);display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";border-radius:inherit;background:#fff0;transition:background .15s;position:absolute;inset:0}.btn:hover:before{background:#ffffff1f}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn--sm{height:32px;padding:6px 16px;font-size:12px}.btn--md{height:42px;padding:10px 24px;font-size:14px}.btn--lg{height:52px;padding:14px 32px;font-size:16px}.btn--xl{border-radius:60px;height:64px;padding:18px 44px;font-size:18px}.btn--primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 20px #ff69b466}.btn--primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #ff69b480}.btn--secondary{background:var(--gradient-secondary);color:#fff;box-shadow:0 4px 20px #a78bfa66}.btn--secondary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #a78bfa80}.btn--ghost{color:var(--text-primary);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1.5px solid #ffffff26}.btn--ghost:hover:not(:disabled){background:#ffffff24;border-color:#ffffff40;transform:translateY(-1px)}.btn--danger{color:#fff;background:linear-gradient(135deg,#ff5f7e,#ff3a60);box-shadow:0 4px 20px #ff3a6066}.btn--danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #ff3a6080}.btn--success{color:#fff;background:linear-gradient(135deg,#56d9a4,#2ec67a);box-shadow:0 4px 20px #2ec67a66}.btn--success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #2ec67a80}.btn--full{width:100%}.btn--loading{pointer-events:none}.btn__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}.btn__icon{align-items:center;font-size:1.1em;display:flex}.camera-capture{flex-direction:column;gap:0;height:100%;min-height:0;display:flex}.camera-capture__header{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px 12px;display:flex}.camera-capture__back{color:var(--text-secondary);cursor:pointer;white-space:nowrap;font-size:14px;font-weight:500;font-family:var(--font-body);background:0 0;border:none;border-radius:50px;padding:6px 12px;transition:all .2s}.camera-capture__back:hover{color:var(--text-primary);background:#ffffff14}.camera-capture__progress{align-items:center;gap:8px;display:flex}.camera-capture__dot{border:2px solid #ff69b466;border-radius:50%;width:10px;height:10px;transition:all .3s}.camera-capture__dot--filled{background:var(--gradient-primary);border-color:#0000;box-shadow:0 0 8px #ff69b480}.camera-capture__dot--pulse{border-color:#ff69b4;animation:.8s ease-in-out infinite pulseDot}@keyframes pulseDot{0%,to{transform:scale(1)}50%{border-color:#ff69b4;transform:scale(1.3)}}.camera-capture__frame-name{color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:500}.camera-capture__body{flex:1;gap:16px;min-height:0;padding:0 20px 16px;display:flex}.camera-capture__video-wrap{background:#1a1a2e;border:2px solid #ffffff14;border-radius:20px;flex:1;min-width:0;min-height:300px;position:relative;overflow:hidden;box-shadow:0 8px 32px #0006}.camera-capture__video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.camera-capture__loading{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:13px;display:flex;position:absolute;inset:0}.camera-capture__video-spinner{border:3px solid #ff69b433;border-top-color:#ff69b4;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spinV}@keyframes spinV{to{transform:rotate(360deg)}}.camera-capture__error{text-align:center;height:100%;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;font-size:14px;display:flex}.camera-capture__error-icon{filter:grayscale()opacity(.5);font-size:48px}.camera-capture__frame-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#00000080;border:1px solid #ffffff1f;border-radius:50px;padding:4px 10px;font-size:11px;font-weight:500;position:absolute;top:12px;left:12px}.camera-capture__sidebar{scrollbar-width:thin;scrollbar-color:#ff69b44d transparent;flex-direction:column;flex-shrink:0;gap:16px;width:220px;display:flex;overflow-y:auto}@media (width<=780px){.camera-capture__body{flex-direction:column}.camera-capture__sidebar{flex-direction:row;gap:12px;width:100%;overflow:auto visible}.camera-capture__strips{flex-shrink:0;min-width:160px}}.camera-capture__strips{background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;padding:12px}.camera-capture__strips-title{color:var(--text-secondary);margin:0 0 10px;font-size:12px;font-weight:600}.camera-capture__strip-list{flex-direction:column;gap:6px;display:flex}@media (width<=780px){.camera-capture__strip-list{flex-direction:row}}.camera-capture__strip-slot{aspect-ratio:4/3;background:#ffffff0d;border:1.5px dashed #ffffff1f;border-radius:8px;justify-content:center;align-items:center;width:100%;transition:all .3s;display:flex;overflow:hidden}.camera-capture__strip-slot--filled{border-style:solid;border-color:#ff69b466;box-shadow:0 0 12px #ff69b426}.camera-capture__strip-slot img{object-fit:cover;width:100%;height:100%}.camera-capture__strip-num{color:#fff3;font-size:18px;font-weight:700}.camera-capture__controls{flex-direction:column;gap:8px;margin-top:auto;display:flex}.camera-capture__timer-select{background:#ffffff0a;border-radius:50px;justify-content:center;align-items:center;gap:8px;margin-bottom:4px;padding:6px 12px;display:flex}.camera-capture__timer-label{color:var(--text-muted);text-transform:uppercase;font-size:11px;font-weight:600}.camera-capture__timer-btn{color:var(--text-secondary);cursor:pointer;width:28px;height:28px;font-size:11px;font-family:var(--font-body);background:0 0;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.camera-capture__timer-btn:hover{color:var(--text-primary);background:#ffffff14}.camera-capture__timer-btn--active{background:var(--gradient-primary);color:#fff;border-color:#0000;font-weight:700}.camera-capture__flip-btn{color:var(--text-secondary);cursor:pointer;font-size:12px;font-family:var(--font-body);background:0 0;border:1.5px solid #ffffff1f;border-radius:50px;padding:8px 16px;transition:all .2s}.camera-capture__flip-btn:hover{color:var(--text-primary);background:#ffffff0f}.camera-capture__remaining{text-align:center;color:var(--text-muted);flex-shrink:0;padding:8px 20px 12px;font-size:13px}.camera-capture__remaining strong{color:#ff69b4}.photo-preview{flex-direction:column;height:100%;animation:.4s fadeIn;display:flex;position:relative;overflow:hidden}.photo-preview__header{text-align:center;flex-shrink:0;padding:24px 24px 16px;animation:.5s both slideDown}.photo-preview__title{font-size:clamp(20px,4vw,28px);font-weight:800;font-family:var(--font-display);background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 6px}.photo-preview__subtitle{color:var(--text-muted);margin:0;font-size:14px}.photo-preview__body{flex:1;align-items:flex-start;gap:24px;min-height:0;padding:0 24px 24px;display:flex}@media (width<=700px){.photo-preview__body{flex-direction:column;align-items:center;overflow-y:auto}}.photo-preview__result-wrap{background:#ffffff08;border:1px solid #ffffff14;border-radius:20px;flex:1;justify-content:center;align-items:center;min-height:300px;display:flex;position:relative;overflow:hidden}.photo-preview__result{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.photo-preview__image{object-fit:contain;border-radius:8px;max-width:100%;max-height:100%;animation:.5s cubic-bezier(.34,1.56,.64,1) both popIn;box-shadow:0 16px 48px #0006}@keyframes popIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.photo-preview__success-badge{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap;background:#2ec67ae6;border-radius:50px;padding:8px 20px;font-size:13px;font-weight:600;animation:.3s slideUp;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.photo-preview__composing{color:var(--text-secondary);flex-direction:column;align-items:center;gap:16px;display:flex}.photo-preview__compose-spinner{border:4px solid #ff69b433;border-top-color:#ff69b4;border-radius:50%;width:48px;height:48px;animation:.9s linear infinite spinP}@keyframes spinP{to{transform:rotate(360deg)}}.photo-preview__compose-sub{color:var(--text-muted);font-size:13px;animation:1.2s infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.4}}.photo-preview__error{color:var(--text-muted);font-size:14px}.photo-preview__actions{flex-direction:column;flex-shrink:0;gap:14px;width:280px;padding-top:8px;display:flex}@media (width<=700px){.photo-preview__actions{width:100%;max-width:400px}}.photo-preview__secondary-actions{gap:8px;display:flex}.photo-preview__secondary-actions>*{flex:1}.photo-preview__tips{background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;margin-top:4px;padding:14px 16px}.photo-preview__tip-title{color:var(--text-primary);margin:0 0 6px;font-size:13px;font-weight:600}.photo-preview__tip-text{color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.photo-preview__confetti{pointer-events:none;width:100%;height:40px;position:absolute;top:0;left:0;overflow:hidden}.photo-preview__confetti-item{font-size:20px;animation:linear both confettiFall;position:absolute;top:-20px}@keyframes confettiFall{0%{opacity:1;top:-20px;transform:rotate(0)scale(1)}to{opacity:0;top:80px;transform:rotate(360deg)scale(.5)}}.photobooth-page{flex-direction:column;min-height:100dvh;display:flex;position:relative;overflow:hidden}.photobooth-page__bg{pointer-events:none;z-index:0;position:fixed;inset:0}.blob{filter:blur(80px);opacity:.12;border-radius:50%;animation:8s ease-in-out infinite blobFloat;position:absolute}.blob--1{background:radial-gradient(circle,#ff69b4,#ff1493);width:500px;height:500px;animation-delay:0s;top:-150px;left:-100px}.blob--2{background:radial-gradient(circle,#a78bfa,#7c3aed);width:400px;height:400px;animation-delay:3s;top:30%;right:-100px}.blob--3{opacity:.08;background:radial-gradient(circle,#67e8f9,#0284c7);width:350px;height:350px;animation-delay:1.5s;bottom:10%;left:10%}.blob--4{opacity:.07;background:radial-gradient(circle,#fbbf24,#f59e0b);width:300px;height:300px;animation-delay:4.5s;bottom:20%;right:15%}@keyframes blobFloat{0%,to{transform:translate(0)scale(1)rotate(0)}33%{transform:translate(30px,-30px)scale(1.05)rotate(5deg)}66%{transform:translate(-20px,20px)scale(.96)rotate(-3deg)}}.photobooth-page__header{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0d0d1eb3;border-bottom:1px solid #ffffff0f;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 28px;display:flex;position:relative}.photobooth-page__logo{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;align-items:center;gap:10px;text-decoration:none;display:flex}.photobooth-page__logo-icon{filter:drop-shadow(0 0 12px #ff69b499);font-size:26px;animation:2.5s ease-in-out infinite logoPulse}@keyframes logoPulse{0%,to{filter:drop-shadow(0 0 8px #ff69b480)}50%{filter:drop-shadow(0 0 20px #ff69b4cc)}}.photobooth-page__logo-text{font-size:20px;font-weight:800;font-family:var(--font-display);color:var(--text-primary);letter-spacing:-.5px}.photobooth-page__logo-text span{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.photobooth-page__steps{align-items:center;gap:6px;display:flex}.step-indicator{opacity:.4;border-radius:50px;align-items:center;gap:6px;padding:6px 12px;transition:all .3s;display:flex}.step-indicator--active{opacity:1;background:#ff69b41a;border:1px solid #ff69b44d}.step-indicator--done{opacity:.7}.step-indicator__num{width:22px;height:22px;color:var(--text-secondary);background:#ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.step-indicator--active .step-indicator__num{background:var(--gradient-primary);color:#fff;box-shadow:0 0 12px #ff69b480}.step-indicator--done .step-indicator__num{color:#2ec67a;background:#2ec67a4d}.step-indicator__label{color:var(--text-secondary);white-space:nowrap;font-size:12px;font-weight:500}.step-indicator--active .step-indicator__label{color:#ff69b4;font-weight:600}@media (width<=650px){.step-indicator__label{display:none}.photobooth-page__steps{gap:4px}.step-indicator{padding:6px}}.photobooth-page__header-right{align-items:center;display:flex}.photobooth-page__tagline{color:var(--text-muted);white-space:nowrap;font-size:11px}@media (width<=500px){.photobooth-page__tagline{display:none}.photobooth-page__header{padding:12px 16px}}.photobooth-page__main{z-index:5;flex:1;align-items:stretch;min-height:0;padding:24px;display:flex;position:relative}@media (width<=600px){.photobooth-page__main{padding:12px}}.photobooth-page__card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#14142dbf;border:1px solid #ffffff14;border-radius:28px;flex-direction:column;flex:1;min-height:500px;animation:.5s cubic-bezier(.34,1.56,.64,1) both cardEnter;display:flex;overflow:hidden;box-shadow:0 24px 80px #0006,inset 0 0 0 1px #ffffff0a}@keyframes cardEnter{0%{opacity:0;transform:translateY(30px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.photobooth-page__footer{z-index:10;text-align:center;color:var(--text-muted);background:#0d0d1e80;border-top:1px solid #ffffff0a;flex-shrink:0;padding:12px 24px;font-size:12px;position:relative}
