@layer theme,base;@layer components{.builder-glass-card{background:var(--gradient-glass-card);-webkit-backdrop-filter:blur(var(--blur-2xl));backdrop-filter:blur(var(--blur-2xl));border:1px solid oklch(from var(--color-gray-600) l c h / .5);box-shadow:0 25px 50px -12px #0000004d;box-shadow:0 25px 50px -12px lab(0% 0 0/.3)}.builder-gradient-border{background:var(--gradient-brand-frame)}.builder-gradient-border-inner{background:var(--gradient-glass-card)}.builder-separator{background:linear-gradient(to right, transparent, oklch(from var(--color-gray-600) l c h / .5), transparent);height:1px}.step-badge{background-image:linear-gradient(to right, var(--color-brand-primary), var(--color-brand-secondary));width:2rem;height:2rem;color:var(--color-white);box-shadow:var(--shadow-md);border-radius:9999px;justify-content:center;align-items:center;font-size:1.125rem;font-weight:700;display:flex}.progress-track{background:oklch(from var(--color-gray-700) l c h / .5);border:1px solid oklch(from var(--color-gray-600) l c h / .3);border-radius:9999px}.progress-track-pulse{background:linear-gradient(to right, oklch(from var(--color-gray-800) l c h / .5), oklch(from var(--color-gray-700) l c h / .5), oklch(from var(--color-gray-800) l c h / .5))}.progress-fill{background:linear-gradient(to right, var(--color-brand-primary-400), var(--color-brand-secondary), var(--color-brand-primary-400));transition:width var(--duration-slower) ease-out;border-radius:9999px;box-shadow:0 4px 6px -1px #0000001a;box-shadow:0 4px 6px -1px lab(0% 0 0/.1)}.progress-glow{background:linear-gradient(to right, oklch(from var(--color-brand-primary-300) l c h / .5), oklch(from var(--color-brand-secondary-400) l c h / .5), oklch(from var(--color-brand-primary-300) l c h / .5));border-radius:9999px}.progress-shimmer{background:linear-gradient(90deg,#0000,#fff3,#0000);background:linear-gradient(90deg,#0000,lab(100% 0 0/.2),#0000);border-radius:9999px;transform:skew(-12deg)}.progress-step-dot{border:2px solid var(--color-gray-600);background:var(--color-gray-700);transition:background var(--duration-slow) ease, border-color var(--duration-slow) ease, transform var(--duration-slow) ease, box-shadow var(--duration-slow) ease;border-radius:9999px}.progress-step-dot.is-active{background:linear-gradient(to right, var(--color-brand-primary-400), var(--color-brand-secondary));border-color:var(--color-white);box-shadow:0 4px 6px -1px oklch(from var(--color-brand-secondary) l c h / .3)}.progress-step-dot.is-active .progress-step-dot-inner{background:linear-gradient(to right, oklch(from var(--color-brand-primary-300) l c h / .5), oklch(from var(--color-brand-secondary-400) l c h / .5));border-radius:9999px}.progress-step-dot.is-disabled{background:var(--color-gray-800);border-color:var(--color-gray-700);opacity:.5}.progress-step-dot.is-clickable:hover{box-shadow:var(--shadow-sm), 0 4px 6px -4px #0000001a;transform:scale(1.25)}@supports (color:lab(0% 0 0)){.progress-step-dot.is-clickable:hover{box-shadow:var(--shadow-sm), 0 4px 6px -4px lab(0% 0 0/.1)}}.progress-step-dot.is-clickable:active{transform:scale(1.1)}.circle-option-btn{background:linear-gradient(to right, oklch(from var(--color-gray-700) l c h / .8), oklch(from var(--color-gray-800) l c h / .8));width:5rem;height:5rem;-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));border:1px solid oklch(from var(--color-gray-600) l c h / .5);color:var(--color-gray-200);transition:background var(--duration-slow) ease, border-color var(--duration-slow) ease, transform var(--duration-slow) ease, box-shadow var(--duration-slow) ease, color var(--duration-slow) ease;border-radius:9999px;justify-content:center;align-items:center;font-size:1.125rem;display:flex;position:relative}.circle-option-btn:hover{background:linear-gradient(to right, oklch(from var(--color-gray-600) l c h / .8), oklch(from var(--color-gray-700) l c h / .8));border-color:oklch(from var(--color-gray-500) l c h / .6);box-shadow:var(--shadow-sm);color:var(--color-white);transform:scale(1.05)}.circle-option-btn:active{transform:scale(.95)}.circle-option-btn.is-selected{background:var(--gradient-brand-lr);color:var(--color-white);border-color:oklch(from var(--color-brand-primary-400) l c h / .5);box-shadow:0 10px 15px -3px oklch(from var(--color-brand-secondary) l c h / .3);transform:scale(1.05)}.circle-option-btn.is-selected:before{content:"";background:var(--gradient-brand-hover-lr);opacity:0;transition:opacity var(--duration-slow) ease;border-radius:9999px;position:absolute;inset:0}.circle-option-btn.is-selected:hover:before{opacity:1}.circle-option-btn.is-disabled{background:oklch(from var(--color-gray-800) l c h / .5);border-color:oklch(from var(--color-gray-700) l c h / .5);color:var(--color-gray-500)}.circle-option-btn.is-disabled:hover{background:oklch(from var(--color-gray-800) l c h / .5);border-color:oklch(from var(--color-gray-700) l c h / .5);color:var(--color-gray-500);box-shadow:none;transform:none}.circle-option-select-badge{border:2px solid var(--color-white);background:linear-gradient(to right, var(--color-warning-400), var(--color-warning-400));width:1rem;height:1rem;box-shadow:var(--shadow-sm);border-radius:9999px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse;position:absolute;top:-.25rem;right:-.25rem}.circle-option-select-badge-inner{background:linear-gradient(to right, oklch(from var(--color-warning-300) l c h / .5), oklch(from var(--color-warning-300) l c h / .5));border-radius:9999px;width:100%;height:100%}.circle-option-label{text-align:center;width:6rem;color:var(--color-gray-200);transition:color var(--duration-slow) ease;font-size:.875rem}.circle-option-label.is-selected{color:var(--color-white)}.circle-option-label.is-disabled{color:var(--color-gray-500)}@media (max-width:640px){.is-compact-mobile .button.is-character-option{min-width:auto;padding:.5rem .75rem;font-size:.875rem}.is-compact-mobile .circle-option-btn{width:3.5rem;height:3.5rem;font-size:.875rem}.is-compact-mobile .circle-option-label{width:4.5rem;font-size:.75rem}}.bot-image-card-frame{aspect-ratio:3/4;border:4px solid var(--color-gray-300);width:100%;transition:border-color var(--duration-slow) ease, transform var(--duration-slow) ease;border-radius:.375rem;position:relative;overflow:hidden}.bot-image-card-frame:hover{border-color:var(--color-brand-primary);transform:scale(1.1)}.bot-image-card-frame.is-selected{border-color:var(--color-brand-primary);transform:scale(1.1)}.bot-image-card-frame.is-skeleton:hover{border-color:var(--color-gray-300);transform:none}.bot-image-card-select-overlay{background:var(--color-brand-primary-600);opacity:.1;position:absolute;inset:0}.bot-image-card-media-badge{z-index:20;letter-spacing:.05em;text-transform:uppercase;-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));border-radius:.25rem;align-items:center;gap:.25rem;padding:.1875rem .375rem;font-size:.625rem;font-weight:600;display:flex;position:absolute;top:.375rem;right:.375rem}.bot-image-card-media-badge.is-active,.bot-image-card-media-badge.is-video{color:var(--color-white);background:#00000073;background:lab(0% 0 0/.45);border:1px solid #ffffff26;border:1px solid lab(100% 0 0/.15)}.bot-image-card-media-badge.is-skeleton{background:oklch(from var(--color-gray-800) l c h / .6);border:1px solid oklch(from var(--color-gray-600) l c h / .2);color:var(--color-gray-500)}.bot-image-card-live-dot{background:var(--color-brand-primary);width:.375rem;height:.375rem;box-shadow:0 0 4px var(--color-brand-primary);border-radius:9999px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.bot-image-card-live-dot.is-skeleton{background:var(--color-gray-500);box-shadow:none;animation:none}.avatar-type-card{cursor:pointer;aspect-ratio:2/3;box-shadow:0 0 0 2px oklch(from var(--color-gray-600) l c h / .5);transition:transform var(--duration-slow) ease, box-shadow var(--duration-slow) ease;border-radius:1rem;position:relative;overflow:hidden}.avatar-type-card:hover{box-shadow:0 0 0 2px oklch(from var(--color-gray-400) l c h / .7);transform:scale(1.05)}.avatar-type-card.is-selected{box-shadow:0 0 0 4px var(--color-brand-primary), 0 25px 50px -12px oklch(from var(--color-brand-primary) l c h / .3)}.avatar-type-card.is-selected:hover{box-shadow:0 0 0 4px var(--color-brand-primary), 0 25px 50px -12px oklch(from var(--color-brand-primary) l c h / .3)}.avatar-type-card-overlay{background:linear-gradient(#0000,#0003 50%,#000c);background:linear-gradient(#0000,lab(0% 0 0/.2) 50%,lab(0% 0 0/.8));position:absolute;inset:0}.avatar-type-card-indicator{background:var(--color-brand-primary);border-radius:9999px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;display:flex;position:absolute;top:1rem;right:1rem}.avatar-type-card-indicator-dot{background:var(--color-white);border-radius:9999px;width:.75rem;height:.75rem}.trait-picker-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:.75rem;display:grid}@media (min-width:640px){.trait-picker-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}}.trait-picker-grid .enum-item{overflow:visible}.trait-picker-grid .enum-label-reveal{border-radius:0}.summary-trait-pill{background:linear-gradient(to right, oklch(from var(--color-gray-700) l c h / .6), oklch(from var(--color-gray-800) l c h / .6));-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));border:1px solid oklch(from var(--color-gray-600) l c h / .4);color:var(--color-gray-200);transition:background var(--duration-base) ease, border-color var(--duration-base) ease, color var(--duration-base) ease;border-radius:.5rem;padding:.375rem .75rem;font-size:.875rem}.group:hover .summary-trait-pill{background:var(--gradient-brand-tint-lr);border-color:oklch(from var(--color-brand-primary-400) l c h / .4);color:var(--color-white)}.summary-section-card{background:linear-gradient(to right, oklch(from var(--color-gray-800) l c h / .5), oklch(from var(--color-gray-900) l c h / .5));-webkit-backdrop-filter:blur(var(--blur-xs));backdrop-filter:blur(var(--blur-xs));border:1px solid oklch(from var(--color-gray-600) l c h / .3);box-shadow:var(--shadow-sm);border-radius:.75rem}.summary-section-card.is-details{background:linear-gradient(to right, oklch(from var(--color-gray-800) l c h / .3), oklch(from var(--color-gray-900) l c h / .3));border-color:oklch(from var(--color-gray-600) l c h / .2);box-shadow:none}.summary-section-dot{background:var(--gradient-brand-lr);border-radius:9999px;width:.5rem;height:.5rem}.summary-avatar-ring{border:3px solid oklch(from var(--color-gray-600) l c h / .5);transition:border-color var(--duration-slow) ease, box-shadow var(--duration-slow) ease;border-radius:9999px}.group:hover .summary-avatar-ring{border-color:var(--color-brand-primary);box-shadow:0 10px 15px -3px oklch(from var(--color-brand-primary) l c h / .3)}.builder-stepper-btn{color:var(--color-gray-400);border:1px solid oklch(from var(--color-gray-600) l c h / .5);background:var(--color-gray-900);cursor:pointer;transition:color var(--duration-fast) ease, background var(--duration-fast) ease, border-color var(--duration-fast) ease}.builder-stepper-btn:hover:not(:disabled){color:var(--color-white);background:var(--color-gray-800);border-color:var(--color-brand-primary)}.builder-stepper-btn:disabled{opacity:.5;cursor:not-allowed}.builder-stepper-btn:disabled:hover{color:var(--color-gray-400);background:var(--color-gray-900)}.builder-stepper-btn.is-decrement{border-right:none;border-radius:.375rem 0 0 .375rem}.builder-stepper-btn.is-increment{border-left:none;border-radius:0 .375rem .375rem 0}.builder-stepper-input{background:var(--color-gray-900);color:var(--color-white);border:1px solid oklch(from var(--color-gray-600) l c h / .5);text-align:center;transition:border-color var(--duration-base) ease, box-shadow var(--duration-base) ease;font-weight:500;box-shadow:inset 0 1px 2px #0003;box-shadow:inset 0 1px 2px lab(0% 0 0/.2)}.builder-stepper-input:hover{border-color:var(--color-gray-500)}.builder-stepper-input:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 2px oklch(from var(--color-brand-primary) l c h / .3), inset 0 1px 2px #0003;outline:none}@supports (color:lab(0% 0 0)){.builder-stepper-input:focus{box-shadow:0 0 0 2px oklch(from var(--color-brand-primary) l c h / .3), inset 0 1px 2px lab(0% 0 0/.2)}}.builder-stepper-input{appearance:textfield}.builder-stepper-input::-webkit-inner-spin-button{appearance:none;margin:0}.builder-stepper-input::-webkit-outer-spin-button{appearance:none;margin:0}.builder-name-hint{background:oklch(from var(--color-danger-500) l c h / .1);border:1px solid oklch(from var(--color-danger-500) l c h / .3);animation:1.5s ease-in-out infinite name-hint-pulse}.builder-name-hint:hover{background:oklch(from var(--color-danger-500) l c h / .2);border-color:oklch(from var(--color-danger-500) l c h / .5)}.summary-avatar-edit-badge{background:var(--gradient-brand-lr);width:1.5rem;height:1.5rem;box-shadow:var(--shadow-sm);border-radius:9999px;justify-content:center;align-items:center;display:flex;position:absolute;bottom:-.25rem;right:-.25rem}.summary-hero{aspect-ratio:4/5;background:linear-gradient(to bottom, oklch(from var(--color-gray-800) l c h / .8), oklch(from var(--color-gray-900) l c h / .8));border:1px solid oklch(from var(--color-gray-600) l c h / .4);width:100%;box-shadow:var(--shadow-md);transition:box-shadow var(--duration-slow) ease, border-color var(--duration-slow) ease;border-radius:1rem;position:relative;overflow:hidden}.summary-hero:hover{border-color:oklch(from var(--color-brand-primary) l c h / .5);box-shadow:var(--shadow-md), 0 25px 50px -12px oklch(from var(--color-brand-primary) l c h / .3)}.summary-hero-image-btn{cursor:zoom-in;background:0 0;border:none;width:100%;height:100%;padding:0;position:absolute;inset:0}.summary-hero-image-btn:disabled{cursor:default}.summary-hero-image-btn:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:-2px}.summary-hero-image{object-fit:cover;object-position:center 30%}.summary-hero-loading{background:linear-gradient(135deg, oklch(from var(--color-gray-800) l c h / .6), oklch(from var(--color-gray-900) l c h / .8));flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex;position:absolute;inset:0}.summary-hero-loading-text{color:var(--color-gray-300);font-size:.875rem;font-weight:500}.summary-hero-blur-overlay{z-index:2;-webkit-backdrop-filter:blur(var(--blur-lg));backdrop-filter:blur(var(--blur-lg));cursor:pointer;text-align:center;background-color:#00000080;background-color:lab(0% 0 0/.5);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;padding:1rem;display:flex;position:absolute;inset:0}.summary-hero-blur-text{color:var(--color-white);font-size:1rem}.summary-hero-overlay{pointer-events:none;z-index:3;background:linear-gradient(#0000 30%,#00000026 55%,#000000d9);background:linear-gradient(#0000 30%,lab(0% 0 0/.15) 55%,lab(0% 0 0/.85));position:absolute;inset:0}.summary-hero-name-btn{z-index:4;text-align:left;cursor:pointer;-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm));transition:background var(--duration-base) ease, border-color var(--duration-base) ease, box-shadow var(--duration-base) ease;background:#00000040;background:lab(0% 0 0/.25);border:1px solid #ffffff1a;border:1px solid lab(100% 0 0/.1);border-radius:.75rem;align-items:center;gap:.75rem;padding:.625rem .875rem;display:flex;position:absolute;bottom:.75rem;left:.75rem;right:.75rem}.summary-hero-name-btn:hover{border-color:oklch(from var(--color-brand-primary) l c h / .5);box-shadow:0 0 16px oklch(from var(--color-brand-primary) l c h / .25);background:#00000073;background:lab(0% 0 0/.45)}.summary-hero-name-btn:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px}.summary-hero-name-edit{color:#ffffffb3;color:lab(100% 0 0/.7);transition:color var(--duration-base) ease}.summary-hero-name-btn:hover .summary-hero-name-edit{color:var(--color-white)}.summary-hero-name-edit-icon{background:var(--gradient-brand-lr);width:2rem;height:2rem;box-shadow:var(--shadow-sm);transition:transform var(--duration-base) ease;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.summary-hero-name-btn:hover .summary-hero-name-edit-icon{transform:scale(1.1)}.summary-tab-section{display:none}.summary-tab-section.is-active{display:block}}@layer utilities;body:has(.is-builder-page) main{padding-bottom:0}@media (min-width:768px){body:has(.is-builder-page) .button.is-cta{padding-top:1.25rem;padding-bottom:1.25rem;font-size:1.25rem}body:has(.is-builder-page) .button.is-cta svg{width:1.5rem;height:1.5rem}}@keyframes name-hint-pulse{0%,to{box-shadow:0 0 4px oklch(from var(--color-danger-500) l c h / .2)}50%{box-shadow:0 0 16px oklch(from var(--color-danger-500) l c h / .5), 0 0 32px oklch(from var(--color-danger-500) l c h / .2)}}
