:root{--ink:#0e1a2b;--ink-2:#2a3a52;--ink-3:#5a6a82;--paper:#faf7f2;--paper-2:#f2ece0;--line:#e3dbcb;--line-2:#d6cbb3;--lime:#c5f24a;--lime-ink:#0e1a2b;--helix-a:#4d6bff;--helix-t:#ff6a3d;--helix-g:#10b981;--helix-c:#b388ff;--ok:#10b981;--warn:#f59e0b;--err:#e25c45;--ease:cubic-bezier(.22,.61,.36,1);--ease-out:cubic-bezier(.16,1,.3,1);--f-display:"Instrument Serif", ui-serif, Georgia, serif;--f-body:"DM Sans", ui-sans-serif, system-ui, sans-serif;--f-mono:"JetBrains Mono", ui-monospace, monospace;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px}*,:before,:after{box-sizing:border-box}html,body{color:var(--ink);font-family:var(--f-body);-webkit-font-smoothing:antialiased;background:#efe9db;margin:0;padding:0}body{background:radial-gradient(1200px 600px at 10% -10%,#e7e0cf 0%,#0000 60%),radial-gradient(900px 500px at 110% 10%,#f7f2e4 0%,#0000 50%),#efe9db;min-height:100vh;padding:40px 24px}#root{justify-content:center;display:flex}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}input,select,textarea{font:inherit;color:inherit}.widget{--glow-x:50%;--glow-y:50%;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-xl);width:100%;max-width:1040px;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff9,0 30px 80px -40px #0e1a2b59,0 10px 30px -20px #0e1a2b33}.widget:before{content:"";pointer-events:none;z-index:1;background:radial-gradient(160px circle at var(--glow-x) var(--glow-y), #c5f24a33, transparent 70%);opacity:0;transition:opacity .4s var(--ease);position:absolute;inset:0}.widget:hover:before{opacity:1}.gene-particle{z-index:9999;pointer-events:none;font-family:var(--f-mono);letter-spacing:-.08em;color:var(--ink);opacity:0;filter:blur(.2px);transform:translate3d(var(--sx), var(--sy), 0) scale(.72) rotate(var(--r0));font-size:16px;font-weight:900;animation:.72s cubic-bezier(.18,.82,.22,1) forwards geneBurst;position:fixed;top:0;left:0}.gene-particle:before{content:"";z-index:-1;filter:blur(7px);background:#c5f24a40;border-radius:50%;width:22px;height:22px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes geneBurst{0%{opacity:0;transform:translate3d(var(--sx), var(--sy), 0) scale(.62) rotate(var(--r0))}18%{opacity:.25}to{opacity:0;transform:translate3d(calc(var(--sx) + var(--mx)), calc(var(--sy) + var(--my)), 0) scale(1.08) rotate(var(--r1))}}.dna-easter{z-index:9999;pointer-events:none;opacity:0;width:170px;height:170px;transform:translate3d(calc(var(--egg-x) - 85px), calc(var(--egg-y) - 85px), 0) scale(.72) rotate(var(--egg-rotate));filter:drop-shadow(0 0 18px #c5f24a57);animation:1.18s cubic-bezier(.16,.84,.2,1) forwards dnaEggFloat;position:fixed;top:0;left:0}.dna-easter:before{content:"";filter:blur(7px);background:radial-gradient(circle,#c5f24a57,#c5f24a14 48%,#0000 72%);border-radius:50%;animation:.82s ease-out forwards dnaEggGlow;position:absolute;inset:34px}.dna-easter svg{width:100%;height:100%;position:relative;overflow:visible}.dna-orbit{opacity:0;border:1px solid #0e1a2b17;border-radius:50%;animation:.96s cubic-bezier(.18,.84,.22,1) forwards dnaOrbit;position:absolute;inset:18px;transform:scale(.65)rotate(20deg)}.dna-helix-path{fill:none;stroke:#0e1a2b94;stroke-width:2.3px;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:260px;animation:.72s cubic-bezier(.18,.84,.22,1) forwards dnaLineDraw}.dna-helix-path.is-lime{stroke:#c5f24adb;animation-delay:70ms}.dna-rung-line{stroke:#c5f24ab8;stroke-width:1.9px;stroke-linecap:round;stroke-dasharray:70;stroke-dashoffset:70px;animation:.58s cubic-bezier(.18,.84,.22,1) forwards dnaLineDraw;animation-delay:var(--delay)}.dna-node-dot{opacity:0;transform-origin:50%;animation:.72s cubic-bezier(.18,.84,.22,1) forwards dnaNodePop;animation-delay:var(--delay);filter:drop-shadow(0 0 8px #c5f24a94)}.dna-base-label{opacity:0;fill:#0e1a2b73;font-family:var(--f-mono);letter-spacing:-.06em;animation:.76s forwards dnaBaseFloat;animation-delay:var(--delay);filter:drop-shadow(0 0 8px #c5f24a75);font-size:9px;font-weight:900}@keyframes dnaEggFloat{0%{opacity:0;transform:translate3d(calc(var(--egg-x) - 85px), calc(var(--egg-y) - 85px), 0) scale(.5) rotate(calc(var(--egg-rotate) - 12deg))}16%{opacity:1}68%{opacity:.96}to{opacity:0;transform:translate3d(calc(var(--egg-x) - 85px), calc(var(--egg-y) - 102px), 0) scale(1.1) rotate(calc(var(--egg-rotate) + 14deg))}}@keyframes dnaEggGlow{0%{opacity:0;transform:scale(.4)}22%{opacity:.92;transform:scale(1)}to{opacity:0;transform:scale(1.8)}}@keyframes dnaLineDraw{0%{stroke-dashoffset:260px;opacity:0}24%{opacity:1}to{stroke-dashoffset:0;opacity:.14}}@keyframes dnaNodePop{0%{opacity:0;transform:scale(.2)}26%{opacity:1;transform:scale(1.24)}to{opacity:0;transform:scale(.76)translateY(-5px)}}@keyframes dnaBaseFloat{0%{opacity:0;transform:translateY(5px)scale(.7)}28%{opacity:.58}to{opacity:0;transform:translateY(-9px)scale(.98)}}@keyframes dnaOrbit{0%{opacity:0;transform:scale(.5)rotate(0)}26%{opacity:.46}to{opacity:0;transform:scale(1.16)rotate(130deg)}}.hdr{background:linear-gradient(180deg, #f6efde 0%, var(--paper) 100%);border-bottom:1px solid var(--line);padding:22px 28px 0}.hdr__top{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.brand{font-family:var(--f-display);letter-spacing:-.01em;color:var(--ink);align-items:center;gap:12px;font-size:26px;display:flex}.brand__logo{object-fit:contain;width:auto;height:104px}.hdr__tag{font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line-2);background:var(--paper);border-radius:999px;padding:6px 10px;font-size:11px}.hdr__tag .dot{background:var(--ok);vertical-align:1px;width:6px;height:6px;animation:pulse 2s infinite var(--ease);border-radius:50%;margin-right:6px;display:inline-block;box-shadow:0 0 0 3px #10b9812e}@keyframes pulse{0%,to{box-shadow:0 0 0 3px #10b9812e}50%{box-shadow:0 0 0 6px #10b98100}}.progress{padding:14px 20px 18px;position:relative}.progress__track{height:56px;position:relative}.progress__helix{pointer-events:none;z-index:1;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='12'%3E%3Cpath d='M0,6Q15,1,30,6Q45,11,60,6' fill='none' stroke='%23D6CBB3' stroke-width='1.2'/%3E%3Cpath d='M0,6Q15,11,30,6Q45,1,60,6' fill='none' stroke='%23D6CBB3' stroke-width='1.2' stroke-dasharray='3,4'/%3E%3C/svg%3E") 50%/60px 12px repeat-x;height:12px;position:absolute;top:14px;left:10%;right:10%;transform:translateY(-50%)}.progress__steps{z-index:2;grid-template-columns:repeat(5,1fr);align-items:center;display:grid;position:absolute;inset:0}.step{font-family:var(--f-body);color:var(--ink-3);transition:color .3s var(--ease);flex-direction:column;align-items:center;gap:8px;font-size:12.5px;font-weight:500;display:flex;position:relative}.step__node{background:var(--paper);border:1.5px solid var(--line-2);width:28px;height:28px;transition:all .35s var(--ease);border-radius:50%;place-items:center;display:grid;position:relative}.step__node svg{opacity:0;width:12px;height:12px;transition:all .3s var(--ease-out);transform:scale(.6)}.step.is-done .step__node{background:var(--ink);border-color:var(--ink)}.step.is-done .step__node svg{opacity:1;color:var(--lime);transform:scale(1)}.step.is-active{color:var(--ink);font-weight:600}.step.is-active .step__node{background:var(--lime);border-color:var(--ink);animation:glow-pulse 2s infinite var(--ease);border-width:4.5px;box-shadow:0 0 0 4px #c5f24a59,0 0 14px 6px #c5f24a40,0 0 24px 10px #c5f24a1f}@keyframes glow-pulse{0%,to{box-shadow:0 0 0 4px #c5f24a59,0 0 14px 6px #c5f24a40,0 0 24px 10px #c5f24a1f}50%{box-shadow:0 0 0 7px #c5f24a2e,0 0 22px 10px #c5f24a26,0 0 32px 14px #c5f24a0f}}.body{justify-content:center;width:100%;min-height:540px;padding:28px 40px 40px;display:flex;position:relative}.pane{width:100%;max-width:960px;animation:paneIn .4s var(--ease-out)}@keyframes paneIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.backlink{width:fit-content;color:var(--ink-3);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;margin-bottom:18px;font-size:13px;text-decoration:none;transition:color .2s;display:flex}.backlink:hover{color:var(--ink)}.backlink svg{width:14px;height:14px}.h-eyebrow{font-family:var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--helix-t);align-items:center;gap:8px;margin-bottom:10px;font-size:11px;font-weight:500;display:inline-flex}.h-eyebrow:before{content:"";background:currentColor;width:18px;height:1px}.h-title{font-family:var(--f-display);letter-spacing:-.015em;color:var(--ink);margin:0 0 8px;font-size:44px;font-weight:400;line-height:1.02}.h-title em{color:var(--helix-t);font-style:italic}.h-sub{color:var(--ink-3);max-width:56ch;margin:0 0 28px;font-size:15px}.svc-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px;display:flex}.svc-head .h-eyebrow,.svc-head .h-title,.svc-head .h-sub{margin-bottom:0}.svc-head .h-title{margin:6px 0 10px}.svc-head .h-sub{max-width:520px}.svc-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.svc{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);text-align:left;transition:all .25s var(--ease);cursor:pointer;flex-direction:column;gap:12px;min-height:200px;padding:18px 18px 16px;display:flex;position:relative;overflow:hidden}.svc:before{content:"";background:var(--svc-c,var(--helix-a));transform-origin:0;height:3px;transition:transform .4s var(--ease);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.svc:hover{border-color:var(--ink);transform:translateY(-2px);box-shadow:0 12px 30px -16px #0e1a2b40}.svc:hover:before{transform:scaleX(1)}.svc.is-selected{border-color:var(--ink);box-shadow:0 0 0 2px var(--ink) inset, 0 12px 30px -16px #0e1a2b4d}.svc.is-selected:before{transform:scaleX(1)}.svc__top{justify-content:space-between;align-items:center;gap:12px;display:flex}.svc__badge{background:color-mix(in oklab, var(--svc-c) 14%, var(--paper));color:var(--svc-c);font-family:var(--f-mono);letter-spacing:.08em;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:10.5px;font-weight:600;display:inline-flex}.svc__badge:before{content:"";background:var(--svc-c);border-radius:50%;width:6px;height:6px}.svc__fmt{font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:10px}.svc__title{font-family:var(--f-display);letter-spacing:-.005em;margin:2px 0 0;font-size:22px;line-height:1.12}.svc__desc{color:var(--ink-3);flex:1;margin:0;font-size:13px;line-height:1.5}.svc__foot{border-top:1px dashed var(--line-2);justify-content:space-between;align-items:center;gap:10px;padding-top:12px;display:flex}.svc__dur{font-family:var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);align-items:center;gap:6px;font-size:11px;display:inline-flex}.svc__dur svg{width:12px;height:12px}.svc__price{font-family:var(--f-display);color:var(--ink);font-size:22px;line-height:1}.svc__price .from{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px;font-size:9.5px;font-weight:500;display:block}.sum-chip{background:var(--ink);color:var(--paper);border-radius:999px;align-items:center;gap:10px;margin-bottom:22px;padding:8px 14px;font-size:13px;display:inline-flex}.sum-chip strong{font-weight:600}.sum-chip .dot-c{background:var(--lime);border-radius:50%;width:8px;height:8px}.sched-grid{grid-template-columns:1.1fr 1fr;gap:28px;display:grid}.sched-grid>*{min-width:0}.label{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:10px;font-size:11px;font-weight:500;display:block}.prac-scroll{align-items:center;gap:6px;display:flex}.prac-arrow{border:1px solid var(--line);background:var(--paper);cursor:pointer;height:32px;transition:all .2s var(--ease);color:var(--ink);border-radius:50%;flex:0 0 32px;justify-content:center;align-items:center;display:flex}.prac-arrow:hover{background:var(--lime);border-color:var(--lime)}.prac-row{scrollbar-width:none;flex:1;gap:10px;min-width:0;padding-bottom:8px;display:flex;overflow-x:auto}.prac-row::-webkit-scrollbar{display:none}.prac{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);text-align:center;transition:all .25s var(--ease);cursor:pointer;flex:0 0 128px;padding:14px 10px 12px;position:relative}.prac:hover{border-color:var(--ink-2);transform:translateY(-2px)}.prac.is-selected{border-color:var(--ink);background:#fffdf7;box-shadow:0 10px 24px -14px #0e1a2b4d}.prac.is-selected:after{content:"";background:var(--lime);border:1.5px solid var(--ink);border-radius:50%;width:16px;height:16px;position:absolute;top:8px;right:8px}.prac__avatar{width:56px;height:56px;font-family:var(--f-display);color:var(--ink-2);border:1px solid var(--line);background:repeating-linear-gradient(45deg,#f2ece0 0 6px,#e7dfcc 6px 12px);border-radius:50%;place-items:center;margin:0 auto 10px;font-size:22px;display:grid;position:relative;overflow:hidden}.prac__avatar.any{background:var(--ink);color:var(--lime);border-color:var(--ink)}.prac__avatar img{object-fit:cover;width:100%;height:100%}.prac__name{color:var(--ink);font-size:13px;font-weight:600}.prac__role{color:var(--ink-3);margin-top:2px;font-size:11px}.cal{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);margin-top:14px;padding:12px}.cal__hdr{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.cal__month{font-family:var(--f-display);letter-spacing:-.01em;font-size:19px}.cal__nav{gap:6px;display:flex}.cal__nav button{border:1px solid var(--line);border-radius:50%;place-items:center;width:30px;height:30px;transition:all .2s;display:grid}.cal__nav button:hover{background:var(--paper-2);border-color:var(--ink-2)}.cal__grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.cal__dow{font-family:var(--f-mono);letter-spacing:.1em;color:var(--ink-3);text-align:center;padding:4px 0;font-size:10px}.day{color:var(--ink-2);transition:all .2s var(--ease);border:1px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:6px 4px;font-size:12px;font-weight:500;display:flex;position:relative}.day.is-muted{color:#c8bfaa}.day.is-avail{color:var(--ink);cursor:pointer}.day.is-avail:hover{border-color:var(--line-2);background:#fffdf7}.day.is-unavail{color:#d3a397;background:#e25c4512}.day.is-selected{background:var(--ink);color:var(--lime);box-shadow:0 6px 16px -8px #0e1a2b80}.day .dot{background:var(--ok);border-radius:50%;width:4px;height:4px}.day.is-unavail .dot{background:var(--err)}.day.is-selected .dot{background:var(--lime)}.cal__legend{color:var(--ink-3);font-size:11px;font-family:var(--f-mono);letter-spacing:.06em;text-transform:uppercase;gap:16px;margin-top:8px;display:flex}.cal__legend .lg{align-items:center;gap:6px;display:inline-flex}.cal__legend .lg .d{border-radius:50%;width:6px;height:6px}.cal--large{padding:18px}.cal--large .cal__month{font-size:24px}.cal--large .cal__grid{gap:4px}.cal--large .day{padding:10px 6px;font-size:14px}.cal--large .day .dot{width:5px;height:5px}.times{flex-direction:column;gap:12px;display:flex}.tod{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px}.tod__hdr{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink);border-bottom:1px dashed var(--line-2);align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;font-size:11px;display:flex}.tod__hdr .ic{border-radius:6px;place-items:center;width:22px;height:22px;display:grid}.tod__hdr .ic svg{width:12px;height:12px}.tod__grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.tslot{border:1px solid var(--line);background:var(--paper);font-family:var(--f-mono);color:var(--ink);letter-spacing:.02em;transition:all .2s var(--ease);cursor:pointer;text-align:center;border-radius:8px;padding:10px 8px;font-size:12.5px;font-weight:500}.tslot:hover{border-color:var(--ink);background:#fffdf7;transform:translateY(-1px)}.tslot.is-selected{background:var(--ink);color:var(--lime);border-color:var(--ink)}.times-empty{border:1px dashed var(--line-2);border-radius:var(--r-md);height:100%;color:var(--ink-3);text-align:center;background:repeating-linear-gradient(135deg,#0000 0 14px,#0e1a2b05 14px 15px);justify-content:center;align-items:center;padding:40px 20px;font-size:13.5px;display:flex}.gene-fact{border:1px solid var(--line);border-radius:var(--r-md);background:#fffdf7;grid-template-columns:56px 1fr;align-items:center;gap:16px;margin-top:26px;padding:16px 18px;display:grid}.gene-fact__icon{background:var(--ink);width:56px;height:56px;color:var(--lime);border-radius:12px;place-items:center;display:grid}.gene-fact__icon svg{width:32px;height:32px}.gene-fact__img{object-fit:contain;filter:brightness(0)saturate()invert(88%)sepia(44%)saturate(590%)hue-rotate(29deg)brightness(101%)contrast(93%);width:28px;height:28px}.gene-fact__eyebrow{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--helix-t);margin-bottom:4px;font-size:10.5px}.gene-fact__text{font-family:var(--f-display);color:var(--ink);font-size:18px;font-style:italic;line-height:1.3}.form{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form .col-2{grid-column:span 2}.field label{color:var(--ink);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.field .opt{color:var(--ink-3);margin-left:4px;font-size:12px;font-weight:400}.input,.jeen-select,.textarea{background:var(--paper);border:1px solid var(--line);width:100%;color:var(--ink);transition:all .2s var(--ease);border-radius:10px;padding:12px 14px;font-size:14px}.input:focus,.jeen-select:focus,.textarea:focus{border-color:var(--ink);background:#fffdf7;outline:none;box-shadow:0 0 0 4px #c5f24a59}.textarea{resize:vertical;min-height:90px;font-family:var(--f-body)}.dob-row{grid-template-columns:1fr 1.3fr 1fr;gap:8px;display:grid}.summary{border:1px solid var(--line);border-radius:var(--r-md);background:linear-gradient(180deg, #fffdf7 0%, var(--paper) 100%);grid-column:span 2;margin-top:8px;padding:20px;position:relative;overflow:hidden}.summary:before{content:"DNA";font-family:var(--f-mono);letter-spacing:.14em;color:var(--helix-t);opacity:.6;font-size:10px;position:absolute;top:10px;right:14px}.summary__title{font-family:var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px;font-size:11px}.summary__row{border-bottom:1px dashed var(--line-2);justify-content:space-between;padding:8px 0;font-size:14px;display:flex}.summary__row:last-child{border-bottom:0}.summary__row .k{color:var(--ink-3)}.summary__row .v{color:var(--ink);font-weight:500}.summary__total{border-top:1.5px solid var(--ink);justify-content:space-between;align-items:baseline;margin-top:10px;padding-top:14px;display:flex}.summary__total .k{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;font-size:11px}.summary__total .v{font-family:var(--f-display);color:var(--ink);font-size:30px}.pay-layout{grid-template-columns:1.2fr 1fr;gap:28px;display:grid}.pay-methods{flex-direction:column;gap:10px;display:flex}.pay-card-form{background:linear-gradient(180deg, #fffdf7 0%, var(--paper) 100%);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;gap:14px;padding:22px;display:flex}.confirm{text-align:center;max-width:620px;margin:0 auto;padding:30px 20px}.confirm__seal{width:140px;height:140px;margin:0 auto 22px;position:relative}.confirm__seal svg{width:100%;height:100%}.confirm__title{font-family:var(--f-display);letter-spacing:-.015em;margin:0 0 12px;font-size:48px;line-height:1.02}.confirm__title em{color:var(--helix-t);font-style:italic}.confirm__msg{color:var(--ink-3);margin:0 0 28px;font-size:15.5px}.ticket{text-align:left;border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);margin-bottom:22px;position:relative;overflow:hidden}.ticket:before,.ticket:after{content:"";background:#efe9db;border-radius:50%;width:18px;height:18px;position:absolute;top:50%;transform:translateY(-50%)}.ticket:before{left:-10px}.ticket:after{right:-10px}.ticket__stub{background:var(--ink);color:var(--paper);font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;padding:14px 22px;font-size:11px;display:flex}.ticket__stub .ref{color:var(--lime)}.ticket__body{grid-template-columns:1fr 1fr;gap:14px 24px;padding:18px 22px;display:grid}.ticket__row .k{font-family:var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);font-size:10.5px}.ticket__row .v{font-family:var(--f-display);margin-top:2px;font-size:20px;line-height:1.1}.confirm__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.nav{border-top:1px solid var(--line);background:var(--paper-2);justify-content:space-between;align-items:center;padding:20px 40px;display:flex}.nav__meta{font-family:var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-size:11px}.nav__meta strong{color:var(--ink)}.btn{transition:all .25s var(--ease);border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:12px 20px;font-size:13.5px;font-weight:600;display:inline-flex}.btn--primary{background:var(--lime);color:var(--ink);border:1px solid var(--ink);box-shadow:0 4px 0 0 var(--ink)}.btn--primary:hover:not(:disabled){box-shadow:0 5px 0 0 var(--ink);transform:translateY(-1px)}.btn--primary:active{box-shadow:0 2px 0 0 var(--ink);transform:translateY(2px)}.btn--primary:disabled{background:var(--paper-2);color:var(--ink-3);cursor:not-allowed;border-color:var(--line-2);box-shadow:none}.btn--ghost{color:var(--ink);border:1px solid var(--line-2);background:var(--paper)}.btn--ghost:hover{border-color:var(--ink);background:#fffdf7}.btn svg{width:14px;height:14px;transition:transform .2s}.btn--primary:hover svg{transform:translate(3px)}.skeleton{background:linear-gradient(90deg, var(--paper-2) 25%, var(--line) 50%, var(--paper-2) 75%);background-size:200% 100%;border-radius:8px;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.terms{color:var(--ink-3);grid-column:span 2;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;display:flex}.terms input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink);margin-top:2px}.page-error{min-height:200px;color:var(--err);justify-content:center;align-items:center;padding:40px;font-size:14px;display:flex}.loading-center{min-height:300px;color:var(--ink-3);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.spinner{border:3px solid var(--line);border-top-color:var(--ink);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.genome-bg,.dna-gesture-canvas{display:none}body.is-dna-drawing,body.is-dna-drawing *{cursor:crosshair!important;-webkit-user-select:none!important;user-select:none!important}@media (width>=861px){body{background:#0e1a2b;padding:0;display:block;overflow-x:hidden}#root{display:block}.genome-bg{z-index:0;pointer-events:none;isolation:isolate;background:radial-gradient(1100px 700px at 50% -10%,#c5f24a17,#0000 62%),radial-gradient(860px 560px at -10% 28%,#ff6a3d14,#0000 62%),radial-gradient(920px 620px at 108% 66%,#4d6bff1a,#0000 64%),radial-gradient(720px 420px at 52% 100%,#10b9810d,#0000 72%),linear-gradient(#07101b 0%,#0a1422 38%,#0e1a2b 100%);display:block;position:fixed;inset:0;overflow:hidden}.genome-bg:before{content:"";background:radial-gradient(420px 420px at calc(var(--bg-mx,50vw)) calc(var(--bg-my,40vh)), #faf7f20e, transparent 70%), radial-gradient(460px 460px at calc(100% - var(--bg-mx,50vw)) calc(100% - var(--bg-my,40vh)), #c5f24a14, transparent 72%), radial-gradient(540px 420px at 50% 14%, #faf7f20a, transparent 72%);opacity:.92;transform:translate3d(0, var(--bg-float-y,0px), 0);transition:transform .35s var(--ease), opacity .35s var(--ease);position:absolute;inset:-12%}.genome-bg:after{content:"";opacity:.42;mix-blend-mode:screen;background:radial-gradient(circle at 20% 18%,#faf7f214 0 1px,#0000 1.6px) 0 0/240px 240px,radial-gradient(circle at 72% 36%,#faf7f20e 0 1px,#0000 1.5px) 0 0/320px 320px,radial-gradient(circle at 38% 76%,#faf7f20d 0 1px,#0000 1.6px) 0 0/280px 280px,radial-gradient(circle at 82% 84%,#faf7f20b 0 1px,#0000 1.4px) 0 0/360px 360px;position:absolute;inset:0}.genome-bg canvas{opacity:.8;width:100%;height:100%;position:absolute;inset:0}.bg-orb{filter:blur(56px);opacity:.28;will-change:transform;width:42vw;min-width:360px;height:42vw;min-height:360px;animation:bgOrbFloat 18s var(--ease) infinite alternate;border-radius:999px;position:absolute}.bg-orb--lime{transform:translate3d(var(--bg-lime-x,0px), var(--bg-lime-y,0px), 0);background:radial-gradient(circle,#c5f24a57,#0000 70%);top:0;left:-14vw}.bg-orb--blue{transform:translate3d(var(--bg-blue-x,0px), var(--bg-blue-y,0px), 0);background:radial-gradient(circle,#4d6bff47,#0000 70%);animation-duration:22s;top:20vh;right:-16vw}.bg-orb--coral{transform:translate3d(var(--bg-coral-x,0px), var(--bg-coral-y,0px), 0);background:radial-gradient(circle,#ff6a3d38,#0000 68%);animation-duration:20s;bottom:-18vw;right:4vw}@keyframes bgOrbFloat{0%{transform:translate3d(var(--float-x,0px), var(--float-y,0px), 0) scale(1);opacity:.22}to{transform:translate3d(calc(var(--float-x,0px) + 16px), calc(var(--float-y,0px) - 14px), 0) scale(1.08);opacity:.34}}.cell-orb{opacity:.68;width:170px;height:170px;animation:cellFloat var(--cell-dur,18s) var(--ease) infinite alternate;background:radial-gradient(circle at 35% 35%,#faf7f224,#faf7f209 34%,#faf7f205 60%,#0000 72%),radial-gradient(circle at 64% 64%,#c5f24a1a,#0000 62%);border:1px solid #faf7f214;border-radius:50%;position:absolute;box-shadow:inset 0 0 0 1px #faf7f208,0 24px 60px -46px #000000a6,0 0 36px #c5f24a14}.cell-orb:before,.cell-orb:after{content:"";filter:blur(.3px);background:#faf7f214;border-radius:50%;position:absolute}.cell-orb:before{width:34px;height:34px;top:48px;left:38px;box-shadow:44px 28px #faf7f20b,70px -16px #faf7f20a}.cell-orb:after{background:#faf7f224;width:16px;height:16px;bottom:34px;right:36px;box-shadow:-56px -24px #faf7f20d}.cell-orb--1{--cell-dur:20s;top:18vh;left:6vw}.cell-orb--2{--cell-dur:17s;opacity:.48;width:128px;height:128px;top:12vh;right:7vw}.cell-orb--3{--cell-dur:23s;opacity:.54;width:200px;height:200px;bottom:12vh;right:12vw}.cell-orb--4{--cell-dur:16s;opacity:.44;width:108px;height:108px;bottom:8vh;left:14vw}@keyframes cellFloat{0%{transform:translate(0,0)}to{transform:translateY(-18px)}}.mol-cluster{opacity:.78;width:220px;height:160px;animation:clusterFloat var(--cluster-dur,18s) var(--ease) infinite alternate;position:absolute}.mol-cluster__link{transform-origin:0;background:linear-gradient(90deg,#faf7f200,#faf7f224,#faf7f200);height:1px;position:absolute}.mol-cluster__node{background:var(--mol-color,#c5f24aeb);border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;animation:4.6s ease-in-out infinite nodePulse;position:absolute;box-shadow:0 0 0 9px #faf7f208,0 0 16px #faf7f214}.mol-cluster__node--sm{width:7px;height:7px;margin:-3.5px 0 0 -3.5px}.mol-cluster--1{--cluster-dur:18s;top:18vh;left:18vw}.mol-cluster--2{--cluster-dur:20s;top:30vh;right:16vw}.mol-cluster--3{--cluster-dur:22s;bottom:18vh;left:24vw}@keyframes clusterFloat{0%{opacity:.66;transform:translate(0,0)}to{opacity:.84;transform:translateY(-14px)}}@keyframes nodePulse{0%,to{opacity:.86;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}.bg-burst{left:var(--x);top:var(--y);z-index:3;pointer-events:none;position:fixed}.bg-burst:before{content:"";width:18px;height:18px;animation:bgRipple .9s var(--ease-out) forwards;border:1px solid #c5f24ad9;border-radius:50%;position:absolute;top:-9px;left:-9px;box-shadow:0 0 #c5f24a4d,0 0 34px #c5f24a47}.bg-burst span{width:20px;height:20px;font-family:var(--f-mono);letter-spacing:.08em;color:var(--p-color,var(--lime));text-shadow:0 0 14px;transform:rotate(var(--a)) translate(0) scale(.65);opacity:0;animation:bgParticle .98s var(--ease-out) forwards;place-items:center;font-size:11px;font-weight:600;display:grid;position:absolute;top:-10px;left:-10px}@keyframes bgRipple{to{opacity:0;width:210px;height:210px;top:-105px;left:-105px;box-shadow:0 0 0 44px #c5f24a00,0 0 60px #c5f24a00}}@keyframes bgParticle{12%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translate(var(--d)) scale(1.05)}}.h-title{color:var(--paper)}.h-sub{color:#faf7f2a6}.backlink{color:#faf7f28c}.backlink:hover{color:var(--paper)}.label{color:#faf7f299}.field label{color:#faf7f2d9}.times-empty{color:#faf7f280;border-color:#faf7f226}.confirm__title{color:var(--paper)}.confirm__msg{color:#faf7f2a6}.loading-center{color:#faf7f28c}.spinner{border-color:#faf7f233;border-top-color:var(--lime)}.widget{width:100%;max-width:none;min-height:100vh;box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;display:flex;overflow:visible}.hdr{z-index:35;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:none;padding:20px clamp(18px,3vw,32px) 0;position:sticky;top:0}.hdr__top,.progress,.body{width:min(1380px,100% - 48px);margin-left:auto;margin-right:auto}.hdr__top{margin-bottom:16px}.brand{color:var(--paper)}.hdr__tag{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#faf7f2b3;background:#0e1a2b73;border-color:#faf7f21f}.step{color:#faf7f273}.step.is-active{color:var(--paper)}.step.is-done{color:#faf7f28c}.step__node{background:#faf7f21f;border-color:#faf7f22e}.step.is-done .step__node{background:var(--ink);border-color:var(--ink)}.progress__helix{opacity:.3}.body{flex:1;min-height:0;padding:32px 0 124px}.nav{z-index:40;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#faf7f2db;border:1px solid #0e1a2b1f;border-radius:24px;width:min(1380px,100% - 48px);padding:18px 22px;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 28px 50px -38px #0e1a2b80}.dna-gesture-canvas{z-index:120;pointer-events:none;opacity:.98;mix-blend-mode:screen;width:100vw;height:100vh;display:block;position:fixed;inset:0}.pane{max-width:none}.svc-head .h-sub{max-width:66ch}.sched-grid{grid-template-columns:1.15fr .95fr;gap:32px}.pay-layout{grid-template-columns:1.2fr .9fr;gap:32px}.form{max-width:900px}.confirm{max-width:760px}}@media (width>=861px) and (width<=1100px){.hdr__top,.progress,.body,.nav{width:min(100%,100% - 28px)}.nav{bottom:12px}.body{padding-bottom:118px}}@media (width<=860px){.body{padding:24px}.svc-grid,.sched-grid,.pay-layout,.form{grid-template-columns:1fr}.form .col-2{grid-column:auto}.ticket__body{grid-template-columns:1fr}.h-title{font-size:34px}.confirm__title{font-size:36px}.step__label{display:none}.hdr{padding:16px 18px 0}.nav{padding:16px 18px}.terms,.summary{grid-column:auto}.widget:before{display:none}.brand__logo{height:40px}.hdr__top{margin-bottom:10px}.progress{padding:8px 10px 12px}.progress__track{height:44px}}
