:root{font-family:Inter,system-ui,sans-serif;color:#221a2f;background:#fff6ff;--ink: #221a2f;--ink-soft: #4f4369;--muted: #6f6a8a;--card: #ffffff;--card-soft: #f9f6ff;--border: #ece2ff;--accent: #6a4cff;--accent-2: #ff5bd6;--accent-3: #ffb648;--focus: #1f8bff;--shadow: 0 20px 40px rgba(46, 26, 110, .16)}body{margin:0;color:var(--ink);background:radial-gradient(circle at top,#fff4ef,#f7f3ff 42%,#f3f8ff);position:relative;overflow-x:hidden}body:before,body:after{content:"";position:fixed;z-index:-1;width:420px;height:420px;border-radius:50%;filter:blur(40px);opacity:.5;animation:float 16s ease-in-out infinite}body:before{top:-120px;left:-120px;background:radial-gradient(circle,#ffb648cc,#ff5bd633)}body:after{bottom:-160px;right:-120px;background:radial-gradient(circle,#5a93ffb3,#6a4cff33);animation-delay:-6s}@keyframes float{0%,to{transform:translateY(0) translate(0)}50%{transform:translateY(20px) translate(12px)}}.page{min-height:100vh;padding:56px 24px 90px;display:grid;gap:28px;position:relative}.hero{max-width:820px;display:grid;gap:12px;padding:10px 0}.hero-brand{display:flex;align-items:center;gap:10px}.brand-logo{width:36px;height:36px;border-radius:99px;object-fit:cover;box-shadow:0 10px 18px #5c3bfe26}.hero--fun h1{font-size:clamp(2.2rem,3.8vw,3.4rem);margin:0;letter-spacing:-.02em}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:0 0 8px;font-weight:700}.subtitle{color:var(--ink-soft);margin:0;font-size:1rem}.badge{background:linear-gradient(135deg,#ffe1a8,#ffb648);color:#5b3a00;padding:6px 14px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 22px #ffb64859}.chip{background:#fff;border:1px solid #f0e8ff;color:#4b2fa2;font-size:12px;padding:8px 14px;border-radius:999px;box-shadow:0 12px 20px #5c3bfe1a}.card{background:var(--card);border-radius:24px;padding:26px;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.6)}.card--soft{background:linear-gradient(180deg,#fff,#fbf7ff);border:1px solid #f0e8ff}input[type=checkbox],input[type=radio]{accent-color:var(--accent)}.field{display:grid;gap:8px;font-size:14px;color:var(--ink)}.field input,.field select{padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.field-readonly{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#fff}.field-readonly-text{font-weight:600;color:var(--ink)}.field-readonly-link{font-size:12px;color:var(--accent);text-decoration:none;font-weight:600}.field-readonly-link:hover{text-decoration:underline}.count-input{display:grid;grid-template-columns:44px 1fr 44px;gap:8px;align-items:center}.count-input input{text-align:center;font-weight:700}.count-btn{height:44px;border-radius:12px;border:1px solid var(--border);background:#fff;font-size:20px;font-weight:800;color:var(--ink);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.count-btn:hover{transform:translateY(-1px);border-color:#6a4cff66;box-shadow:0 10px 20px #5c3bfe1f}.count-btn:focus-visible{outline:3px solid rgba(31,139,255,.45);outline-offset:2px}.count-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.calendar{position:relative;display:grid;gap:8px;z-index:5}.calendar-input{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:600;color:var(--ink);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.calendar-input:hover{border-color:#6a4cff66;box-shadow:0 10px 18px #5c3bfe1a}.calendar-input:focus-visible{outline:3px solid rgba(31,139,255,.45);outline-offset:2px}.calendar-input-icon{font-size:18px}.calendar-pop{position:absolute;top:calc(100% + 10px);left:0;width:min(320px,100%);background:#fff;border-radius:18px;border:1px solid #f1eaff;box-shadow:0 18px 36px #461f8c29;padding:14px;z-index:100}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.calendar-month{font-weight:800}.calendar-nav{width:32px;height:32px;border-radius:50%;border:1px solid var(--border);background:#fff;cursor:pointer;font-weight:800}.calendar-nav:hover{border-color:#6a4cff66}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.calendar-weekday{text-align:center;font-size:12px;font-weight:700;color:var(--muted);padding:4px 0}.calendar-day{height:36px;border-radius:12px;border:1px solid transparent;background:#f8f5ff;color:var(--ink);font-weight:700;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.calendar-day:hover{background:#ffdaa1;color:#6b3d00;box-shadow:0 10px 18px #5c3bfe1f;transform:translateY(-1px)}.calendar-day--empty{pointer-events:none}.calendar-day:focus-visible{outline:3px solid rgba(31,139,255,.45);outline-offset:2px}.calendar-day--selected{background:linear-gradient(135deg,#6a46ff,#ff5bd6);color:#fff;box-shadow:0 12px 24px #6a46ff40}.calendar-day--disabled{background:#f1eef8;color:#b5afc7;cursor:not-allowed;box-shadow:none;transform:none}.calendar-day--disabled:hover{background:#f1eef8;color:#b5afc7;box-shadow:none;transform:none}.modal{position:fixed;z-index:1200;inset:0;display:flex;align-items:center;justify-content:center;padding:20px}.modal-dialog{width:min(920px,96%);max-height:90vh;margin:0;display:flex;align-items:center;justify-content:center}.modal-content{background:var(--card);max-width:920px;width:100%;max-height:90vh;border-radius:14px;box-shadow:0 30px 60px #2616561f;border:1px solid #efe4ff;display:flex;flex-direction:column;overflow:hidden;transform-origin:center center;animation:fadeInUp .28s cubic-bezier(.22,.98,.6,1)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;font-size:large;border-bottom:1px solid #f2eaff;flex:0 0 auto}.modal-title{margin:0;font-weight:700}.modal-body{padding:20px;overflow:auto;flex:1 1 auto}.modal-footer{display:flex;gap:10px;justify-content:flex-end;padding:14px 20px;border-top:1px solid #f2eaff;flex:0 0 auto}.modal-backdrop{position:fixed;z-index:1100;inset:0;background:#140c2800;animation:fadeBackdrop .22s ease-out forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeBackdrop{0%{background:#140c2800}to{background:#140c2899}}.modal-open{overflow:hidden}.btn-close{background:transparent;border:none;width:28px;height:28px;border-radius:6px;cursor:pointer}.btn{padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:700}.btn-primary{background:var(--accent);color:#fff;border:none}.btn-secondary{background:#f0f0ff;border:1px solid #eee}.btn-outline{background:transparent;border:1px solid #ded6ff}.link{background:none;border:none;color:var(--accent);padding:0;cursor:pointer;font-weight:700}.calendar-day--empty{background:transparent;border:none;box-shadow:none}.slots-legend{display:flex;gap:14px;align-items:center;margin-top:10px;font-size:13px;color:var(--muted)}.legend-item{display:inline-flex;align-items:center;gap:8px}.legend-dot{width:12px;height:12px;border-radius:50%;display:inline-block;box-shadow:0 6px 10px #2e1a6e0f}.legend-dot--available{background:#37c26b}.legend-dot--opens{background:linear-gradient(135deg,#ffb648,#ff5bd6)}.legend-dot--full{background:#c9c0d6}.field input:focus-visible,.field select:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #6a4cff33;outline:2px solid transparent}.primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;border-radius:999px;padding:16px 24px;font-weight:800;border:none;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;box-shadow:0 18px 34px #5c3bfe47;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.primary:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 24px 40px #5c3bfe52}.primary:focus-visible{outline:3px solid rgba(31,139,255,.45);outline-offset:2px}.slots{display:flex;flex-wrap:wrap;gap:12px}.slot{border:1px solid var(--border);background:#fff;padding:10px 18px;border-radius:999px;cursor:pointer;font-weight:700;color:#3e2d67;transition:transform .15s ease,box-shadow .15s ease,border-color .2s ease}.slot:hover{transform:translateY(-2px);box-shadow:0 12px 20px #5c3bfe2e;border-color:#5c3bfe66}.slot:focus-visible{outline:3px solid rgba(31,139,255,.45);outline-offset:2px}.slot--active{background:linear-gradient(135deg,#6a46ff,#ff5bd6);color:#fff;border-color:transparent;transform:translateY(-4px) scale(1.03);box-shadow:0 20px 36px #6a46ff40}.slot:disabled{background-color:#e7e2f5!important;border-color:#e7e2f5!important;opacity:.7!important;cursor:not-allowed;transform:none!important;box-shadow:none!important}.addons{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;min-width:0}.addons>.checkbox-item{min-width:0;overflow:hidden}.checkbox-item{display:flex;align-items:center;gap:12px;font-size:14px;padding:10px 12px;border-radius:12px;border:1px solid #e8e3ff;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .12s ease;justify-content:space-between}.checkbox-item:focus-visible{outline:3px solid rgba(31,139,255,.35);outline-offset:2px}.checkbox-item[aria-checked=true],.addon--active{border-color:var(--accent);box-shadow:0 12px 24px #6a4cff29;transform:translateY(-4px)}.addon-item .addon-left{display:flex;gap:12px;align-items:center;min-width:0}.addon-content{display:flex;flex-direction:column;gap:6px;min-width:0;overflow:hidden}.addon-title{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:wrap;display:block}.addon-desc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:13px}.addon-image{width:72px;height:48px;object-fit:cover;border-radius:6px;margin-left:8px;flex-shrink:0}@media(max-width:900px){.addons{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.addons{grid-template-columns:1fr}}.checkbox-item input{width:18px;height:18px}.checkbox-item:hover{transform:translateY(-1px);box-shadow:0 12px 22px #5c3bfe1f}.checkbox-item:focus-within{outline:3px solid rgba(31,139,255,.35);outline-offset:2px;border-color:#6a4cff59}.checkbox-item input:checked+span{font-weight:700;color:#3b2d67}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.muted{color:var(--muted);font-size:13px;margin:0}.error{color:#b00020;margin:0;font-weight:600}.layout{display:grid;gap:26px;grid-template-columns:minmax(0,1fr)}.step-card{border:1px solid #f1eaff;border-radius:22px;padding:20px;background:linear-gradient(180deg,#fff,#fcf9ff);display:grid;gap:14px;transition:transform .35s cubic-bezier(.2,.9,.2,1),box-shadow .25s ease}.step-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px #461f8c2e}.booking-progress{display:flex;align-items:center;gap:12px;justify-content:center;margin-bottom:2em!important;flex-wrap:wrap}.progress-step{display:flex;gap:8px;align-items:center;cursor:default;padding:8px 12px;border-radius:999px;background:#5c3bfe14;color:#3b2d67;min-width:120px;justify-content:center;border:1px solid rgba(106,76,255,.2)}.progress-step .step-icon{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#ffe1a8,#ffb648);color:#6b3d00;display:inline-flex;align-items:center;justify-content:center;font-weight:800;margin-right:6px;box-shadow:0 8px 18px #5c3bfe14}.progress-step.completed{background:linear-gradient(90deg,#e9f7ff,#f3f0ff);animation:pop .42s cubic-bezier(.2,.9,.3,1)}.progress-step.active{transform:translateY(-3px) scale(1.02);box-shadow:0 18px 40px #5c3bfe24}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animated.enter .step-content,.step-card.animated.enter{animation:fadeInUp .42s ease both}.packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:900px){.packages-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.packages-grid{grid-template-columns:1fr}}.packages-grid,.package-option,.step-content{min-width:0}.package-description{margin-top:8px;overflow:hidden;text-overflow:ellipsis}.package-option{display:block;border-radius:12px;padding:12px;border:1px solid var(--border);background:#fff;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;box-sizing:border-box;overflow:hidden;min-width:0}.package-option input[type=radio]{position:absolute;opacity:0;pointer-events:none}.package-option--active{border-color:var(--accent);box-shadow:0 16px 30px #6a4cff1f;transform:translateY(-4px)}.package-image{width:100%;height:120px;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.package-image img{width:100%;height:100%;object-fit:cover}.package-title{display:flex;flex-direction:column;font-size:large;font-weight:600;gap:2px}.package-description{margin-top:8px}.package-meta{margin-top:8px;font-weight:600}.package-price{display:flex;align-items:baseline;gap:8px;margin-top:8px}.package-price-amount{font-size:1.25rem;font-weight:800;color:var(--accent);line-height:1}.package-price-unit{font-size:.82rem;color:var(--ink-soft);font-weight:600;margin-left:4px}.packages-note{margin-top:10px;color:var(--muted);font-size:12px}.btn{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:12px;border:none;background:transparent;color:#3b3a4a;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,color .12s ease}.btn:focus-visible{outline:3px solid rgba(31,139,255,.45);outline-offset:2px}.btn-link{background:transparent;color:var(--accent);padding:.25rem .5rem;border-radius:6px;text-decoration:none;font-weight:600}.btn.btn-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-2) 100%);color:#fff;box-shadow:0 12px 24px #5c3bfe33;padding:10px 16px;border-radius:14px;border:none;font-weight:800;text-decoration:none}.btn.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 36px #5c3bfe3d}.btn.btn-outline-secondary{background:#fff;border:1px solid var(--border);color:#463f63;padding:8px 12px;border-radius:12px;text-decoration:none}.btn.btn-outline-secondary:hover{transform:translateY(-1px);box-shadow:0 8px 16px #5c3bfe14}.summary-card{border-radius:20px;padding:20px;background:linear-gradient(180deg,#fff,#fbf6ff);box-shadow:0 16px 32px #2314641a;position:relative;overflow:visible}.summary-card.celebrate:after{content:"✨";position:absolute;right:14px;top:-18px;font-size:22px;animation:pop .9s ease-in-out 0s 1}.step{width:32px;height:32px;border-radius:50%;background:#ffe1a8;color:#6b3d00;font-weight:800;display:inline-flex;align-items:center;justify-content:center}.pricing-summary{background:#f8f3ff;border-radius:16px;padding:16px;display:grid;gap:10px;border:1px solid #eee0ff}.pricing-title{font-weight:800}.price-row--muted{color:var(--muted);font-size:13px}.option-card input{accent-color:var(--accent)}.option-card:hover{transform:translateY(-1px);box-shadow:0 12px 22px #5c3bfe24}.option-card:focus-within{outline:3px solid rgba(31,139,255,.4);outline-offset:2px}.option-card--active{border-color:var(--accent);box-shadow:0 12px 24px #5c3bfe3d}.option-title{font-weight:800}.summary-card h3{margin:0 0 12px;font-size:18px}.summary-note{margin-top:12px;color:var(--muted);font-size:12px}.step-header h3{margin-top:-.1rem;margin-bottom:0}.d-flex{display:flex}.align-items-start{align-items:flex-start}.align-items-center{align-items:center}.justify-content-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.mb-3{margin-bottom:12px}.text-muted{color:var(--muted)}.small{font-size:12px}@media(min-width:960px){.layout{grid-template-columns:minmax(0,1fr) 340px}}@media(max-width:900px){.summary{position:static}}@media(max-width:720px){.page{padding:36px 16px 72px}.hero-title{flex-direction:column;align-items:flex-start}.grid{grid-template-columns:1fr}.booking-progress{justify-content:flex-start}}@media(max-width:540px){.progress-sep{display:none}.progress-step{min-width:100px;font-size:12px}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}body:before,body:after{animation:none!important}}:root{font-family:Inter,system-ui,sans-serif;color:#201b2f;background:#f7f5ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#fff8f0,#f7f5ff 45%,#f1f4ff)}.page{min-height:100vh;padding:48px 24px 80px;display:grid;gap:28px}.page--booking{max-width:1200px;margin:0 auto}.hero{max-width:760px;display:grid;gap:12px}.hero--fun h1{font-size:clamp(2.2rem,3.4vw,3.2rem);margin:0;letter-spacing:-.02em}.skeleton{background:linear-gradient(90deg,#e6e6ec,#f5f5fa,#e6e6ec);background-size:200% 100%;animation:shimmer 1.2s linear infinite;border-radius:8px;display:inline-block}.skeleton.skeleton-line{height:12px;border-radius:6px;margin:6px 0}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-package .package-image .skeleton{border-radius:8px}.skeleton-package .skeleton-line{display:block}.calendar-grid .skeleton{margin:4px}.slots .skeleton{margin-right:12px}.summary-card .skeleton{height:18px;margin-bottom:10px;border-radius:6px}.hero-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#6b6b7a;margin:0 0 8px}.subtitle{color:#4b4560;margin:0}.badge{background:#ffe5b4;color:#6b3d00;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-chips{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.chip{background:#fff;border:1px solid #ece8ff;color:#5c4b94;font-size:12px;padding:6px 12px;border-radius:999px;box-shadow:0 8px 16px #5c3bfe14}.card{background:#fff;border-radius:20px;padding:24px;box-shadow:0 18px 40px #2314641f}.card--soft{background:linear-gradient(180deg,#fff,#fbfaff);border:1px solid #f0edff}input,select,button{font-family:inherit}.stack{display:grid;gap:18px}.stack--lg{gap:22px}.field{display:grid;gap:6px;font-size:14px;color:#2c2c3a}.field input,.field select{padding:12px 14px;border-radius:12px;border:1px solid #e2def9;background:#fbfaff;transition:border-color .2s ease,box-shadow .2s ease}.field input:focus,.field select:focus{border-color:#5c3bfe;box-shadow:0 0 0 3px #5c3bfe26;outline:none}.primary{background:linear-gradient(135deg,#5c3bfe,#8e5bff);color:#fff;border-radius:999px;padding:14px 22px;font-weight:700;border:none;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;gap:8px;box-shadow:0 12px 24px #5c3bfe40;cursor:pointer}.primary--wide{width:100%}.slots{display:flex;flex-wrap:wrap;gap:10px}.slot{border:1px solid #e2def9;background:#fff;padding:8px 16px;border-radius:999px;cursor:pointer;font-weight:600;color:#463f63;transition:transform .15s ease,box-shadow .15s ease,border-color .2s ease}.slot:hover{transform:translateY(-1px);box-shadow:0 8px 16px #5c3bfe26}.slot--active{background:#5c3bfe;color:#fff;border-color:#5c3bfe}.ghost{border:1px solid #deddf5;background:#fff;padding:10px 16px;border-radius:999px;text-decoration:none;color:#3f3f52;display:inline-flex;justify-content:center}.addons{display:grid;gap:8px}.checkbox-item{display:flex;align-items:center;gap:8px;font-size:14px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.muted{color:#6b6b7a;font-size:13px}.error{color:#c62828;margin:0}ul{padding-left:18px}.layout{display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}.panel{width:100%}.summary{position:sticky;top:24px;align-self:start}.step-card{border:1px solid #f0edff;border-radius:18px;padding:18px;background:#fff;display:grid;gap:14px;transition:transform .35s cubic-bezier(.2,.9,.2,1),box-shadow .25s ease}.progress-step{display:flex;gap:8px;align-items:center;cursor:default;padding:6px 10px;border-radius:999px;background:#5c3bfe0f;color:#3b2d67;min-width:110px;justify-content:center}.progress-step .step-icon{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#ffdca6,#ffd59a);color:#6b3d00;display:inline-flex;align-items:center;justify-content:center;font-weight:700;margin-right:6px;box-shadow:0 8px 18px #5c3bfe14}@keyframes pop{0%{transform:scale(.9);opacity:.6}60%{transform:scale(1.06);opacity:1}to{transform:scale(1);opacity:1}}.progress-step.completed{background:linear-gradient(90deg,#e9f7ff,#e7f6ff);animation:pop .42s cubic-bezier(.2,.9,.3,1)}.progress-sep{width:22px;height:2px;background:linear-gradient(90deg,#f0edff,#e9f7ff);border-radius:4px}.progress-step.active{transform:translateY(-4px) scale(1.02);box-shadow:0 18px 40px #5c3bfe1f}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animated.enter .step-content,.step-card.animated.enter{animation:fadeInUp .36s ease both}.slots--fun .slot{min-width:110px;padding:12px 14px;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:6px}.slot-time{font-weight:800}.slot-meta{font-size:11px;color:#7b6f96}.slot--active{background:linear-gradient(135deg,#6a46ff,#8f61ff);color:#fff;border-color:transparent;transform:translateY(-6px) scale(1.03);box-shadow:0 18px 40px #6a46ff38}.slot--active:after{content:"";display:block;height:6px;width:6px;border-radius:50%;background:#fff9;left:5px;position:absolute;top:14px}.btn{font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border-radius:10px;border:none;background:transparent;color:#3b3a4a;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,color .12s ease}.btn:focus{outline:none;box-shadow:0 0 0 4px #5c3bfe14}.btn-sm{padding:6px 10px;font-size:13px;border-radius:8px}.btn-link{background:transparent;color:#5c3bfe;padding:.25rem .5rem;border-radius:6px;text-decoration:none}.btn-link:hover{text-decoration:underline}.btn-link.btn-sm{font-size:13px;padding:4px 6px}.btn.btn-primary{background:linear-gradient(135deg,#5c3bfe,#8e5bff);color:#fff;box-shadow:0 12px 24px #5c3bfe2e;padding:10px 14px;border-radius:12px;border:none;font-weight:700}.btn.btn-primary:hover{transform:translateY(-2px);box-shadow:0 18px 36px #5c3bfe33}.btn.btn-primary:active{transform:translateY(1px) scale(.995)}.btn.btn-outline-secondary{background:#fff;border:1px solid #e2def9;color:#463f63;padding:8px 12px;border-radius:10px}.btn.btn-outline-secondary:hover{transform:translateY(-1px);box-shadow:0 8px 16px #5c3bfe0f}.btn.btn-outline-danger{background:#fff;border:1px solid #ffd6d6;color:#b82a2a}.btn:disabled,.btn[disabled]{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.summary-card{border-radius:16px;padding:18px;background:linear-gradient(180deg,#fff,#fbfaff);box-shadow:0 12px 28px #2314640f;position:relative;overflow:visible}.summary-card.celebrate:after{content:"🎉";position:absolute;right:14px;top:-18px;font-size:22px;animation:pop .9s ease-in-out 0s 1}.step-header{display:flex;gap:12px;align-items:flex-start}.step{width:32px;height:32px;border-radius:50%;background:#ffe5b4;color:#6b3d00;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.pricing-summary{background:#f9f7ff;border-radius:16px;padding:16px;display:grid;gap:10px;border:1px solid #eee8ff}.pricing-title{font-weight:700}.pricing-list{display:grid;gap:8px}.price-row{display:flex;justify-content:space-between;font-size:14px}.price-row--muted{color:#6b6b7a;font-size:13px}.radio-group{display:grid;gap:12px}.option-card{border:1px solid #e8e3ff;border-radius:16px;padding:14px 16px;display:flex;align-items:center;gap:12px;background:#fff;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease}.option-card input{accent-color:#5c3bfe}.option-card:hover{transform:translateY(-1px);box-shadow:0 10px 20px #5c3bfe1f}.option-card--active{border-color:#5c3bfe;box-shadow:0 10px 20px #5c3bfe33}.option-title{font-weight:700}.option-sub{font-size:13px;color:#5b5680}.summary-card h3{margin:0 0 12px}.summary-list{display:grid;gap:10px}.summary-row{display:flex;justify-content:space-between;font-size:14px}.summary-divider{height:1px;background:#eee8ff;margin:16px 0}.summary-note{margin-top:12px;color:#6b6b7a;font-size:12px}.summary-card{background:#fff}.summary-card h3{font-size:18px}@media(min-width:960px){.layout{grid-template-columns:minmax(0,1fr) 320px}}.slot:disabled{background-color:#ccc!important;border-color:#ccc!important;opacity:.6!important}
