body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1rem;font-weight:400;line-height:1.5}h1,h2,h3,h4,h5,h6{color:#0f172a;font-family:Cal Sans,Inter,sans-serif;margin-bottom:1rem}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.25}h1{font-size:3rem}@media(min-width:768px){h1{font-size:3.75rem;font-weight:700;line-height:1.25}}h2{font-size:1.875rem;font-weight:700;line-height:1.25}@media(min-width:768px){h2{font-size:2.25rem;font-weight:700;line-height:1.25}}h3{font-size:1.5rem;font-weight:600;line-height:1.25}@media(min-width:768px){h3{font-size:1.875rem;font-weight:600;line-height:1.25}}h4{font-size:1.25rem;font-weight:600;line-height:1.25}@media(min-width:768px){h4{font-size:1.5rem;font-weight:600;line-height:1.25}}h5{font-size:1.125rem}h5,h6{font-weight:500;line-height:1.25}h6{font-size:1rem}p{color:#475569;line-height:1.625;margin-bottom:1rem}a{color:#8b47ff;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}a:hover{color:#7c3aed;text-decoration:underline}a:focus{border-radius:2px;box-shadow:0 0 0 3px #a16eff4d;outline:none}ol,ul{margin-bottom:1rem;padding-left:1.5rem}li{color:#475569;margin-bottom:.25rem}code{background:#f8fafc;border-radius:.125rem;color:#7c3aed;padding:.25rem .5rem}code,pre{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.875rem;font-weight:400;line-height:1.5}pre{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:.375rem;margin-bottom:1rem;overflow-x:auto;padding:1rem}pre code{background:none;padding:0}input,select,textarea{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;font-size:.875rem;font-weight:400;line-height:1.5;padding:.625rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:100%}input:focus,select:focus,textarea:focus{border-color:#a16eff;box-shadow:0 0 0 3px #a16eff1a;outline:none}input::placeholder,select::placeholder,textarea::placeholder{color:#64748b}input:disabled,select:disabled,textarea:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}button{align-items:center;border:1px solid #0000;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}button:disabled{cursor:not-allowed;opacity:.5}.container{margin-left:auto;margin-right:auto;max-width:1280px;padding-left:1rem;padding-right:1rem;width:100%}@media(max-width:639px){.container{padding-left:.5rem;padding-right:.5rem}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-center{justify-content:center}.flex-between,.flex-center{align-items:center;display:flex}.flex-between{justify-content:space-between}.grid{display:grid}.grid-center{display:grid;place-items:center}.hidden{display:none}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.m-0{margin:0}.m-1{margin:.25rem}.m-2{margin:.5rem}.m-3{margin:.75rem}.m-4{margin:1rem}.m-6{margin:1.5rem}.m-8{margin:2rem}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.mt-0{margin-top:0}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mb-0{margin-bottom:0}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}@media(max-width:639px){.mobile-p-1{padding:.25rem!important}.mobile-p-2{padding:.5rem!important}.mobile-p-3{padding:.75rem!important}.mobile-px-1{padding-left:.25rem!important;padding-right:.25rem!important}.mobile-px-2{padding-left:.5rem!important;padding-right:.5rem!important}.mobile-px-3{padding-left:.75rem!important;padding-right:.75rem!important}.mobile-py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.mobile-py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.mobile-py-3{padding-bottom:.75rem!important;padding-top:.75rem!important}.mobile-m-0{margin:0!important}.mobile-mx-0{margin-left:0!important;margin-right:0!important}.mobile-my-0{margin-bottom:0!important;margin-top:0!important}}.fade-in{animation:fadeIn .3s cubic-bezier(0,0,.2,1) 0ms forwards;opacity:0}.slide-in-up{animation:slideInUp .3s cubic-bezier(0,0,.2,1) 0ms forwards;opacity:0;transform:translateY(20px)}.scale-in{animation:scaleIn .2s cubic-bezier(0,0,.2,1) 0ms forwards;opacity:0;transform:scale(.95)}.card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 1px 2px 0 #0000000d;transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.card-elevated{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.card-elevated:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.card-purple{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.card-purple:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.card-purple{border:1px solid #e9ddff;box-shadow:0 4px 6px -1px #7c3aed1a,0 2px 4px -1px #7c3aed0f}.card-purple:hover{border-color:#d7c1ff;box-shadow:0 10px 15px -3px #7c3aed1a,0 4px 6px -2px #7c3aed0d}.btn-primary{align-items:center;border:1px solid #0000;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#8b47ff;color:#fff}.btn-primary:hover:not(:disabled){background:#7c3aed}.btn-primary:active{background:#6b21a8}.btn-secondary{align-items:center;border:1px solid #0000;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:#fff;border-color:#cbd5e1;color:#8b47ff}.btn-secondary:hover:not(:disabled){background:#faf7ff;border-color:#d7c1ff}.btn-ghost{align-items:center;border:1px solid #0000;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.btn-ghost:disabled{cursor:not-allowed;opacity:.5}.btn-ghost{background:#0000;color:#475569}.btn-ghost:hover:not(:disabled){background:#f8fafc;color:#0f172a}.draggable{cursor:grab;transition:transform .15s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.draggable:active{cursor:grabbing}.draggable.dragging{opacity:.5;transform:rotate(5deg);z-index:1050}.drop-zone{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:.5rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.drop-zone.drag-over{background:#faf7ff;border-color:#a16eff}.glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}.gradient-purple{background:linear-gradient(135deg,#8b47ff,#6b21a8)}.gradient-purple-light{background:linear-gradient(135deg,#faf7ff,#f3edff)}.text-gradient-purple{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#7c3aed,#581c87);-webkit-background-clip:text;background-clip:text}.loading{overflow:hidden;position:relative}.loading:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#fff9,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shimmer{0%{left:-100%}to{left:100%}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f8fafc}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#be9aff}::selection{background:#e9ddff;color:#581c87}::-moz-selection{background:#e9ddff;color:#581c87}:focus-visible{box-shadow:0 0 0 3px #a16eff4d;outline:none}@media print{*{background:#fff!important;box-shadow:none!important;color:#000!important}.no-print{display:none!important}}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;position:-webkit-sticky;position:sticky;top:0;z-index:1020}.header__content{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding:1rem 0}.header__logo{gap:.75rem}.header__logo,.header__logo-icon{align-items:center;display:flex;justify-content:center}.header__logo-icon{background:#8b47ff;border-radius:.5rem;color:#fff;height:40px;width:40px}.header__logo-text{align-items:center;color:#0f172a;display:flex;font-size:1.25rem;font-weight:700;gap:0;justify-content:center;line-height:1.5}.header__author{color:#475569;font-size:.875rem;font-weight:400;line-height:1.5;margin-left:.5rem;margin-top:2px}@media(max-width:639px){.header__author,.header__nav{display:none}}.header__nav-list{align-items:center;display:flex;gap:2rem;justify-content:center;list-style:none;margin:0;padding:0}.header__nav-link{background:none;border:none;border-radius:.375rem;color:#475569;cursor:pointer;font-size:.875rem;font-weight:500;line-height:1.5;padding:.5rem .75rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.header__nav-link:hover{background:#f8fafc;color:#8b47ff;text-decoration:none}.header__nav-link--active{background:#8b47ff;color:#fff;font-weight:600}.header__nav-link--active:hover{background:#7c3aed;color:#fff;text-decoration:none}.header__nav-link--subdued{opacity:.7}.header__nav-link--subdued:hover{background:#f8fafc;color:#8b47ff}.header__nav-link--play{align-items:center;animation:playButtonGlow 3s ease-in-out infinite;background:linear-gradient(135deg,#4c1d95,#7c3aed);color:#fff;display:flex;font-weight:600;gap:.5rem;justify-content:center;overflow:hidden;position:relative}.header__nav-link--play:hover{background:linear-gradient(135deg,#5b21b6,#8b5cf6);box-shadow:0 4px 12px #7c3aed66;transform:translateY(-1px)}.header__nav-link--play .sparkle-animation{bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0}.header__nav-link--play .sparkle-animation .sparkle{animation:sparkleFloat 2s ease-in-out infinite;font-size:.75rem;font-weight:400;line-height:1.5;position:absolute}.header__nav-link--play .sparkle-animation .sparkle:first-child{animation-delay:0s;left:15%;top:20%}.header__nav-link--play .sparkle-animation .sparkle:nth-child(2){animation-delay:.7s;right:15%;top:60%}.header__nav-link--play .sparkle-animation .sparkle:nth-child(3){animation-delay:1.4s;bottom:20%;left:50%}.header__actions{align-items:center;display:flex;gap:.75rem;justify-content:center}@media(max-width:639px){.header__actions{display:none}}.header__theme-toggle{align-items:center;background:none;border:1px solid #e2e8f0;border-radius:.375rem;color:#475569;cursor:pointer;display:flex;height:40px;justify-content:center;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:40px}.header__theme-toggle:hover{background:#f8fafc;border-color:#8b47ff;color:#8b47ff}.header__user-menu{position:relative}.header__user-button{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;color:#0f172a;cursor:pointer;display:flex;gap:.5rem;justify-content:center;padding:.5rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.header__user-button:hover{background:#faf7ff;border-color:#8b47ff}.header__user-avatar{align-items:center;background:#f3edff;border-radius:9999px;color:#8b47ff;display:flex;height:28px;justify-content:center;width:28px}.header__user-avatar--large{height:40px;width:40px}.header__user-name{color:#0f172a;font-size:.875rem;font-weight:500;line-height:1.5}.header__user-dropdown{animation:scaleIn .2s cubic-bezier(0,0,.2,1) 0ms forwards;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;opacity:0;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);transform:scale(.95);width:280px;z-index:1000}.header__user-info{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;gap:.75rem;justify-content:center;padding:1rem}.header__user-name-large{color:#0f172a;font-size:1rem;font-weight:600;line-height:1.5}.header__user-email{color:#475569;font-size:.875rem;font-weight:400;line-height:1.5}.header__user-actions{padding:.5rem}.header__user-action{align-items:center;background:none;border:none;border-radius:.375rem;color:#475569;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.75rem;justify-content:center;line-height:1.5;padding:.75rem;text-align:left;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:100%}.header__user-action:hover{background:#f8fafc;color:#0f172a}.header__user-action:last-child{color:#ef4444}.header__user-action:last-child:hover{background:#ef44441a;color:#ef4444}.header__mobile-toggle{align-items:center;background:none;border:none;color:#475569;cursor:pointer;display:flex;height:40px;justify-content:center;width:40px}@media(min-width:768px){.header__mobile-toggle{display:none}}.header__mobile-toggle:hover{color:#8b47ff}@media(min-width:768px){.header__mobile-menu{display:none}}.header__mobile-menu{animation:slideInUp .2s cubic-bezier(0,0,.2,1) 0ms forwards;background:#fff;border-top:1px solid #e2e8f0;opacity:0;padding:1rem 0;transform:translateY(20px)}.header__mobile-nav-list{list-style:none;margin:0 0 1.5rem;padding:0}.header__mobile-nav-link{background:none;border:none;color:#475569;cursor:pointer;display:block;font-size:1rem;font-weight:500;line-height:1.5;padding:.75rem 0;text-align:left;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:100%}.header__mobile-nav-link:hover{color:#8b47ff;text-decoration:none}.header__mobile-nav-link--active{background:#faf7ff;border-radius:.375rem;color:#8b47ff;font-weight:600;margin:0;padding:.75rem 1rem}.header__mobile-nav-link--active:hover{background:#f3edff;color:#7c3aed;text-decoration:none}.header__mobile-nav-link--subdued{opacity:.7}.header__mobile-nav-link--subdued:hover{background:#f8fafc;color:#8b47ff}.header__mobile-nav-link--play{align-items:center;background:linear-gradient(135deg,#4c1d95,#7c3aed);border-bottom:none;border-radius:.375rem;color:#fff;display:flex;font-weight:600;gap:.5rem;justify-content:center;justify-content:flex-start;margin:0;padding:.75rem 1rem}.header__mobile-nav-link--play:hover{background:linear-gradient(135deg,#5b21b6,#8b5cf6)}.header__mobile-nav-link:last-child{border-bottom:none}.header__mobile-actions{border-top:1px solid #e2e8f0;display:none;padding-top:1rem}@keyframes playButtonGlow{0%,to{box-shadow:0 0 5px #7c3aed4d}50%{box-shadow:0 0 20px #7c3aed99,0 0 30px #7c3aed66}}@keyframes sparkleFloat{0%,to{opacity:0;transform:translateY(0) scale(.5)}50%{opacity:1;transform:translateY(-3px) scale(1)}}.hero{background:linear-gradient(135deg,#fff,#faf7ff);overflow:hidden;padding:5rem 0 6rem;position:relative}.hero__background{bottom:0;mix-blend-mode:multiply;overflow:hidden;pointer-events:none;right:0;z-index:0}.hero__background,.hero__background--desktop{height:100%;left:0;position:absolute;top:0;width:100%}.hero__background--desktop canvas{height:110%!important;opacity:95%}.hero__background--desktop a{display:none!important}.hero:before{background-image:radial-gradient(circle at 25% 25%,#7c3aed1a 0,#0000 50%),radial-gradient(circle at 75% 75%,#7c3aed0d 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.hero__content{grid-gap:3rem;align-items:center;display:grid;gap:3rem;grid-template-columns:1fr 1fr;margin-bottom:4rem;position:relative;z-index:2}@media(min-width:1024px){.hero__content{gap:4rem}}@media(min-width:768px){.hero__content{gap:3rem;grid-template-columns:1fr;text-align:center}}.hero__text{z-index:2}@media(min-width:768px){.hero__text{order:2}}.hero__title{color:#f8fafc;font-size:3rem;font-weight:700;line-height:1.25;margin-bottom:1.5rem;text-shadow:0 2px 4px #0000001a}.hero__title span{-webkit-text-fill-color:#0000;animation:gradientSlide 3s linear infinite alternate;background:linear-gradient(90deg,#b690fd,#fff 33%,#73e1f6 66%,#b690fd);-webkit-background-clip:text;background-clip:text;background-position:0 0;position:relative;text-shadow:none}@media(min-width:1024px){.hero__title{font-size:3.75rem;font-weight:700;line-height:1.25}}@media(max-width:639px){.hero__title{font-size:2.25rem;font-weight:700;line-height:1.25}}.hero__description{color:#f8fafc;font-size:1.5rem;font-weight:400;line-height:1.625;margin-bottom:2rem;max-width:600px;text-shadow:0 1px 2px #0000001a}@media(min-width:768px){.hero__description{margin:0 auto 2rem}}@media(max-width:639px){.hero__description{font-size:1.125rem;font-weight:400;line-height:1.625}}.hero__actions{align-items:center;display:flex;gap:1rem;justify-content:center}@media(min-width:768px){.hero__actions{justify-content:center}}@media(max-width:639px){.hero__actions{align-items:stretch;flex-direction:column}}.hero__visual{position:relative;z-index:2}@media(min-width:768px){.hero__visual{margin:0 auto;max-width:500px;order:1}}.hero__card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.hero__card--main{position:relative;z-index:1}.hero__card--floating{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;position:absolute}.hero__card--floating.hero__card--top{height:80px;padding:.75rem;right:-spacing(6);top:-spacing(4);width:120px}@media(max-width:639px){.hero__card--floating.hero__card--top{height:70px;padding:.5rem;right:-spacing(3);top:-spacing(2);width:100px}}.hero__card--floating.hero__card--bottom{bottom:-spacing(4);height:60px;left:-spacing(6);padding:.75rem;width:100px}@media(max-width:639px){.hero__card--floating.hero__card--bottom{bottom:-spacing(2);height:50px;left:-spacing(3);padding:.5rem;width:80px}}.hero__card-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem 1.5rem}@media(max-width:639px){.hero__card-header{padding:.75rem 1rem}}.hero__card-dots{align-items:center;display:flex;gap:.5rem;justify-content:center}.hero__card-dots span{border-radius:50%;height:8px;width:8px}.hero__card-dots span:first-child{background:#ff5f57}.hero__card-dots span:nth-child(2){background:#ffbd2e}.hero__card-dots span:nth-child(3){background:#28ca42}.hero__card-title{color:#475569;font-size:.875rem;font-weight:500;line-height:1.5}.hero__card-content{padding:1.5rem}@media(max-width:639px){.hero__card-content{padding:1rem}}.hero__demo-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr)}.hero__demo-item{background:linear-gradient(135deg,#be9aff,#8b47ff);border-radius:.375rem;height:40px}.hero__demo-item:first-child{height:30px}.hero__demo-item:nth-child(2){height:50px}.hero__demo-item:nth-child(3){height:35px}.hero__demo-item:nth-child(4){height:45px}.hero__demo-item:nth-child(5){height:25px}.hero__demo-item:nth-child(6){height:55px}.hero__mini-bars,.hero__mini-chart{align-items:center;align-items:flex-end;display:flex;height:100%;justify-content:center;width:100%}.hero__mini-bars{gap:2px}.hero__mini-bar{background:linear-gradient(0deg,#a16eff,#be9aff);border-radius:1px;flex:1 1;min-height:8px}.hero__progress-rings{align-items:center;display:flex;gap:.5rem;height:100%;justify-content:center;width:100%}.hero__progress-ring{flex-shrink:0}.hero__features{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));position:relative;z-index:2}@media(max-width:639px){.hero__features{gap:1.5rem;grid-template-columns:1fr}}.hero__feature{align-items:center;align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 2px 0 #0000000d;display:flex;gap:1rem;justify-content:center;padding:1.5rem;transition:all .15s cubic-bezier(.4,0,.2,1)}.hero__feature:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}@media(max-width:639px){.hero__feature{flex-direction:column;padding:2rem 1.5rem;text-align:center}}.hero__feature-icon{align-items:center;background:#f3edff;border-radius:.75rem;color:#8b47ff;display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.hero__feature-content{flex:1 1}.hero__feature-title{color:#0f172a;font-size:1.25rem;font-weight:600;line-height:1.25;margin-bottom:.5rem}.hero__feature-description{color:#475569;font-size:1rem;font-weight:400;line-height:1.625;margin:0}@keyframes gradientSlide{0%{background-position:0 0}to{background-position:300px 0}}.connector-item{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 1px 2px 0 #0000000d;cursor:grab;padding:1rem;-webkit-user-select:none;user-select:none;width:100%}.connector-item:hover{border-color:#d7c1ff;border-color:var(--connector-color,#d7c1ff);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-1px);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.connector-item--dragging{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;cursor:grabbing;z-index:1050}.connector-item--target{border-color:#a16eff;box-shadow:0 0 0 3px #7c3aed4d;cursor:crosshair}.connector-item--source{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.connector-item--compact{cursor:pointer;min-height:80px;padding:.5rem;width:140px}.connector-item--compact .connector-item__header{gap:.5rem;margin-bottom:.25rem}.connector-item--compact .connector-item__icon{height:32px;width:32px}.connector-item--compact .connector-item__name{font-size:.75rem;font-weight:500;line-height:1.5;margin-bottom:0}.connector-item--compact .connector-item__connection-point{height:16px;right:-4px;width:16px}.connector-item--expanded{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:scale(1.02);width:320px;z-index:1050}.connector-item--expanded .connector-item__connection-point{height:20px;right:-8px;width:20px}.connector-item__header{align-items:center;align-items:flex-start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.connector-item__icon{align-items:center;background:#faf7ff;background:var(--connector-bg,#faf7ff);border:1px solid #e9ddff;border:1px solid var(--connector-color,#e9ddff);border-radius:.375rem;color:#8b47ff;color:var(--connector-color,#8b47ff);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.connector-item__info{flex:1 1;min-width:0}.connector-item__name{color:#0f172a;font-size:.875rem;font-weight:600;line-height:1.25;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.connector-item__category{background:#faf7ff;background:var(--connector-bg,#faf7ff);border:1px solid #e9ddff;border:1px solid var(--connector-color,#e9ddff);border-radius:9999px;color:#8b47ff;color:var(--connector-color,#8b47ff);font-size:.75rem;font-weight:500;letter-spacing:.025em;line-height:1.5;padding:.25rem .5rem;text-transform:uppercase}.connector-item__connection-point{align-items:center;background:#8b47ff;background:var(--connector-color,#8b47ff);border:2px solid #fff;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:24px;justify-content:center;position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:24px;z-index:10}.connector-item__connection-point:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-50%) scale(1.2)}.connector-item__connection-point:focus{box-shadow:0 0 0 3px #a16eff4d;outline:none}.connector-item__description{color:#475569;font-size:.75rem;font-weight:400;line-height:1.625;line-height:1.4;margin-bottom:.75rem}.connector-item__features{display:flex;flex-wrap:wrap;gap:.375rem}.connector-item__feature{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.125rem;color:#64748b;font-size:.75rem;font-weight:500;line-height:1.5;padding:.25rem .5rem}.connector-item__feature--more{background:#faf7ff;background:var(--connector-bg,#faf7ff);border-color:#e9ddff;border-color:var(--connector-color,#e9ddff);color:#8b47ff;color:var(--connector-color,#8b47ff)}.connector-item__compact-hint{color:#64748b;font-size:.75rem;font-style:italic;font-weight:400;line-height:1.5;margin-top:.25rem;text-align:center}.sortable-connector__remove{align-items:center;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:100%;color:#64748b;cursor:pointer;display:block;height:24px;justify-content:center;padding:2px 4px 4px;position:absolute;right:-.5rem;top:-.5rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:24px;z-index:10}.sortable-connector__remove:hover{background:#ef4444;border-color:#ef4444;color:#fff}.sortable-connector__remove:focus{box-shadow:0 0 0 3px #a16eff4d;outline:none}.sortable-connector__remove svg{height:12px;width:12px}.connector-palette{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 2px 0 #0000000d;display:flex;flex-direction:column;flex-shrink:0;height:-webkit-fit-content;height:fit-content;max-height:80vh;width:320px}@media(min-width:1024px){.connector-palette{width:380px}}@media(min-width:768px){.connector-palette{width:300px}}@media(max-width:639px){.connector-palette{flex-shrink:0;width:320px}}.connector-palette--collapsed{width:200px}@media(min-width:768px){.connector-palette--collapsed{width:180px}}@media(max-width:639px){.connector-palette--collapsed{width:200px}}.connector-palette--collapsed .connector-palette__category-items{display:flex;flex-direction:column;gap:.25rem}.connector-palette__header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem}.connector-palette__header-content{flex:1 1}.connector-palette__header-content h4{color:#0f172a;font-size:1.25rem;font-weight:600;line-height:1.25;margin-bottom:.5rem}.connector-palette__header-content p{color:#64748b;font-size:.875rem;font-weight:400;line-height:1.5;margin:0}.connector-palette__toggle{background:#0000;border:none;border-radius:.375rem;color:#475569;cursor:pointer;display:block;flex-shrink:0;height:32px;margin-left:8px;padding:4px 0 0;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:32px}.connector-palette__toggle:hover{background:#f1f5f9;color:#0f172a}.connector-palette__toggle:active{background:#faf7ff;color:#8b47ff}.connector-palette__content{flex:1 1;overflow-y:auto;padding:1rem}.connector-palette__content::-webkit-scrollbar{width:6px}.connector-palette__content::-webkit-scrollbar-track{background:#f8fafc;border-radius:9999px}.connector-palette__content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:9999px}.connector-palette__content::-webkit-scrollbar-thumb:hover{background:#be9aff}.connector-palette__category:not(:last-child){margin-bottom:1.5rem}.connector-palette__category-title{border-bottom:1px solid #e2e8f0;color:#475569;font-size:.875rem;font-weight:600;letter-spacing:.025em;line-height:1.5;margin-bottom:.75rem;padding-bottom:.5rem;text-transform:uppercase}.connector-palette__category-items{display:flex;flex-direction:column;gap:.5rem}.connector-palette__item{cursor:grab}.connector-palette__item:active{cursor:grabbing}.connector-palette__item.dragging{transform:rotate(2deg)}.connector-palette__item:hover{transform:translateY(-2px);transition:transform .2s ease}.connector-palette__item--minified .connector-item{min-height:auto}.connector-palette__item--minified .connector-item__header{padding:.5rem}.connector-palette__item--minified .connector-item__name{font-size:.75rem;font-weight:500;line-height:1.5}.connector-palette__item--minified .connector-item__icon{height:16px;width:16px}.note{background:#fef3c7;border:1px solid #f59e0b;border-radius:.375rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;font-family:Comic Sans MS,cursive,sans-serif;min-height:100px;transition:transform .2s ease,box-shadow .2s ease;-webkit-user-select:none;user-select:none;width:200px;z-index:10}.note:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:scale(1.02)}.note--dragging{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;transform:scale(1.05) rotate(2deg);z-index:20}.note--editing{background:#fef3c7;border-color:#be9aff;box-shadow:0 0 0 2px #7c3aed33,0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:scale(1.02)}.note__header{display:flex;justify-content:flex-end;padding:.5rem .5rem 0}.note__actions{align-items:center;display:flex;gap:.25rem;justify-content:center;opacity:0;transition:opacity .2s ease}.note--editing .note__actions,.note:hover .note__actions{opacity:1}.note__action-btn{background:#0000;color:#475569;cursor:pointer;display:block;height:20px;margin-right:4px;padding:0;transition:all .2s ease;width:20px}.note__action-btn:hover{border-color:#475569;transform:scale(1.1)}.note__action-btn--remove:hover{border-color:#ef4444;color:#ef4444}.note__action-btn--save:hover{border-color:#10b981;color:#10b981}.note__action-btn--cancel:hover{border-color:#77643b;color:#77643b}.note__content{padding:.25rem .5rem .5rem}.note__text{word-wrap:break-word;color:#0f172a;font-size:.875rem;font-weight:400;line-height:1.625;min-height:40px;white-space:pre-wrap}.note__text:empty:before{color:#64748b;content:"Empty note";font-style:italic}.note__textarea{background:#ffffff80;border:1px solid #0000001a;border-radius:.125rem;color:#0f172a;font-family:inherit;font-size:.875rem;font-weight:400;line-height:1.625;min-height:60px;padding:.5rem;resize:vertical;width:100%}.note__textarea:focus{background:#fffc;border-color:#be9aff;outline:none}.note__hint,.note__textarea::placeholder{color:#64748b;font-style:italic}.note__hint{font-size:.75rem;font-weight:400;line-height:1.5;padding:0 .5rem .5rem;text-align:center}@keyframes noteAppear{0%{opacity:0;transform:scale(0) rotate(-10deg)}50%{transform:scale(1.1) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.note--new{animation:noteAppear .4s ease-out}.configuration-panel{background:#fff;border-left:1px solid #e2e8f0;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;height:100%;position:absolute;right:0;top:0;transform:translateX(0);transition:transform .15s cubic-bezier(.4,0,.2,1);width:300px;z-index:100}@media(max-width:639px){.configuration-panel{left:0;right:0;width:100%}}.configuration-panel__header{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem}.configuration-panel__title{align-items:center;display:flex;gap:.75rem}.configuration-panel__icon{align-items:center;background:#8b47ff;border-radius:.5rem;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.configuration-panel__name{color:#0f172a;font-size:1.125rem;font-weight:600;line-height:1.5;margin:0}.configuration-panel__category{color:#475569;font-size:.875rem;font-weight:400;line-height:1.5;margin:0}.configuration-panel__close{background:#0000;border:none;border-radius:.375rem;color:#475569;cursor:pointer;display:block;height:32px;padding:4px 0 0;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:32px}.configuration-panel__close:hover{background:#f1f5f9;color:#0f172a}.configuration-panel__content{flex:1 1;overflow-y:auto;padding:1rem}.configuration-panel__description{color:#475569;font-size:.875rem;font-weight:400;line-height:1.5;margin:0 0 1rem}.configuration-panel__footer{background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;gap:.5rem;padding:1rem}.configuration-panel__button{align-items:center;border:1px solid #0000;border-radius:.375rem;cursor:pointer;display:inline-flex;flex:1 1;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.configuration-panel__button:disabled{cursor:not-allowed;opacity:.5}.configuration-panel__button--primary{align-items:center;border:1px solid #0000;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.configuration-panel__button--primary:disabled{cursor:not-allowed;opacity:.5}.configuration-panel__button--primary{background:#8b47ff;color:#fff}.configuration-panel__button--primary:hover:not(:disabled){background:#7c3aed}.configuration-panel__button--primary:active{background:#6b21a8}.configuration-panel__button--secondary{align-items:center;border:1px solid #0000;border-radius:.375rem;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.configuration-panel__button--secondary:disabled{cursor:not-allowed;opacity:.5}.configuration-panel__button--secondary{background:#fff;border-color:#cbd5e1;color:#8b47ff}.configuration-panel__button--secondary:hover:not(:disabled){background:#faf7ff;border-color:#d7c1ff}.config-form__group{margin-bottom:1rem}.config-form__group--checkbox{margin-bottom:.75rem}.config-form__label{color:#0f172a;display:block;font-size:.875rem;font-weight:500;line-height:1.5;margin-bottom:.5rem}.config-form__input,.config-form__select,.config-form__textarea{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;font-size:.875rem;font-weight:400;line-height:1.5;padding:.625rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:100%}.config-form__input:focus,.config-form__select:focus,.config-form__textarea:focus{border-color:#a16eff;box-shadow:0 0 0 3px #a16eff1a;outline:none}.config-form__input::placeholder,.config-form__select::placeholder,.config-form__textarea::placeholder{color:#64748b}.config-form__input:disabled,.config-form__select:disabled,.config-form__textarea:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.config-form__textarea{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.75rem;font-weight:400;line-height:1.5;min-height:80px;resize:vertical}.config-form__range{margin-bottom:.25rem;width:100%}.config-form__range-value{background:#f8fafc;border-radius:.25rem;color:#475569;display:inline-block;font-size:.75rem;font-weight:500;line-height:1.5;padding:.25rem .5rem}.config-form__checkbox-group{display:flex;flex-direction:column;gap:.5rem}.config-form__checkbox-label{align-items:center;color:#475569;cursor:pointer;display:flex;font-size:.875rem;font-weight:400;gap:.5rem;line-height:1.5;margin-bottom:0}.config-form__checkbox-label:hover{color:#0f172a}.config-form__checkbox{border:1px solid #cbd5e1;border-radius:.125rem;cursor:pointer;height:16px;width:16px}.config-form__checkbox:checked{background:#8b47ff;border-color:#8b47ff}.config-form__placeholder{color:#64748b;font-style:italic;padding:1.5rem 1rem;text-align:center}.configuration-panel{animation:slideInUp .3s cubic-bezier(0,0,.2,1) 0ms forwards;opacity:0;transform:translateY(20px)}@keyframes slideInFromRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}.canvas-container{display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden;width:100%}.canvas-container__header{align-items:center;align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.canvas-container__title h4{color:#0f172a;font-size:1.25rem;font-weight:600;line-height:1.25;margin-bottom:.5rem}.canvas-container__title p{color:#64748b;font-size:.875rem;font-weight:400;line-height:1.5;margin:0}.canvas-container__actions{align-items:center;display:flex;gap:.5rem;justify-content:center}.canvas{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:.75rem;flex:1 1;max-height:500px;max-width:100%;min-width:600px;overflow:auto;position:relative;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:100%}@media(max-width:639px){.canvas{height:400px;max-height:calc(100vh - 150px);min-height:300px;min-width:600px}}@media(min-width:768px){.canvas{min-width:600px}}.canvas--drag-over{background:#faf7ff;border-color:#a16eff}.canvas--drag-over .canvas__grid{background-image:linear-gradient(#7c3aed40 1px,#0000 0),linear-gradient(90deg,#7c3aed40 1px,#0000 0)}.canvas--empty{align-items:center;display:flex;justify-content:center}.canvas__scrollable-content{box-sizing:border-box;height:100%;max-height:100%;min-height:550px;position:relative;width:100%}.canvas__empty-state{padding:2rem;text-align:center}@media(max-width:639px){.canvas__empty-state{padding:1.5rem 1rem}}.canvas__empty-state-icon{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:9999px;box-shadow:0 1px 2px 0 #0000000d;color:#64748b;display:flex;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}@media(max-width:639px){.canvas__empty-state-icon{height:60px;margin-bottom:1rem;width:60px}}.canvas__empty-state h5{color:#475569;font-size:1.125rem;font-weight:600;line-height:1.25;margin-bottom:.75rem}.canvas__empty-state p{color:#64748b;font-size:.875rem;font-weight:400;line-height:1.625;margin:0 auto;max-width:300px}.canvas__connectors{min-height:550px}.canvas__connectors,.canvas__notes{height:100%;position:relative;width:100%}.canvas__notes{pointer-events:none}.canvas__notes .note{pointer-events:auto}.canvas__connections{left:0;pointer-events:none;position:absolute;top:0;z-index:0}.canvas__connections .connection-endpoint{pointer-events:auto}.canvas__grid{background-image:linear-gradient(#7c3aed26 1px,#0000 0),linear-gradient(90deg,#7c3aed26 1px,#0000 0);background-position:0 0,0 0;background-size:20px 20px;bottom:0;height:100%;left:0;opacity:.25;pointer-events:none;position:absolute;right:0;top:0;width:100%}.sortable-connector{width:140px;z-index:1}.sortable-connector:hover{z-index:2}.sortable-connector--target{z-index:5}.sortable-connector--target:hover{z-index:6}.sortable-connector--source{z-index:3}.sortable-connector--source:hover{z-index:4}.sortable-connector--expanded{width:auto;z-index:10}.sortable-connector--expanded .connector-item{animation:expandConnector .3s cubic-bezier(.4,0,.2,1)}@keyframes expandConnector{0%{opacity:.8;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.connection-path:hover{stroke:#7c3aed;stroke-width:3}.connection-path--connected{stroke:#7c3aedcc;stroke-dasharray:none}.connection-path--unconnected{stroke:#7c3aed66;stroke-dasharray:4,4}.connection-endpoint:hover{fill:#7c3aedcc;stroke-width:3;cursor:pointer}.connection-endpoint:active{fill:#7c3aed}.canvas-action-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;color:#475569;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.25rem;justify-content:center;line-height:1.5;padding:.5rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.canvas-action-btn:hover{background:#f8fafc;border-color:#d7c1ff;color:#8b47ff}.canvas-action-btn svg{color:currentColor}.drag-drop-canvas{padding:2rem 8rem}@media(max-width:639px){.drag-drop-canvas{padding:1rem .5rem}}.drag-drop-canvas__header{margin-left:auto;margin-right:auto;max-width:1280px;padding-left:1rem;padding-right:1rem;width:100%}@media(max-width:639px){.drag-drop-canvas__header{padding-left:.5rem;padding-right:.5rem}}.drag-drop-canvas__header{align-items:center;align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:2rem}.drag-drop-canvas__header h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#7c3aed,#581c87);-webkit-background-clip:text;background-clip:text;font-size:1.875rem;font-weight:700;line-height:1.25;margin-bottom:.5rem}.drag-drop-canvas__header p{color:#475569;font-size:1.125rem;font-weight:400;line-height:1.625;margin:0}@media(max-width:639px){.drag-drop-canvas__header{align-items:stretch;flex-direction:column;gap:1rem}}.drag-drop-canvas__actions{align-items:center;display:flex;flex-shrink:0;gap:1rem;justify-content:center}@media(max-width:639px){.drag-drop-canvas__actions{justify-content:space-between}}.drag-drop-canvas__count{background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;color:#64748b;font-size:.875rem;font-weight:500;line-height:1.5;padding:.5rem .75rem}.drag-drop-canvas__workspace{margin-left:auto;margin-right:auto;max-width:1280px;padding-left:1rem;padding-right:1rem}@media(max-width:639px){.drag-drop-canvas__workspace{padding-left:.5rem;padding-right:.5rem}}.drag-drop-canvas__workspace{display:flex;gap:2rem;max-height:calc(100vh - 100px);max-width:100%;min-height:660px;min-width:0;overflow-x:auto;overflow-y:auto;scroll-behavior:smooth;width:100%}@media(max-width:639px){.drag-drop-canvas__workspace{flex-direction:column;gap:1rem;max-height:100%;min-height:500px}}@media(min-width:640px)and (max-width:1023px){.drag-drop-canvas__workspace{flex-direction:column;gap:1rem;max-height:100%}}.drag-drop-canvas__workspace::-webkit-scrollbar{height:8px}.drag-drop-canvas__workspace::-webkit-scrollbar-track{background:#f8fafc;border-radius:9999px}.drag-drop-canvas__workspace::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:9999px}.drag-drop-canvas__workspace::-webkit-scrollbar-thumb:hover{background:#be9aff}@media(min-width:768px){.drag-drop-canvas__workspace{gap:1.5rem}}.tab-content{padding:1.5rem}@media(max-width:639px){.tab-content{padding:1rem .75rem}}@media(min-width:768px){.tab-content{padding:1.5rem 1rem}}.tab-content__header{margin-bottom:2rem}.tab-content__title-section{max-width:600px}.tab-content__title{color:#0f172a;font-size:1.5rem;font-weight:700;line-height:1.25;margin-bottom:.75rem}.tab-content__description{color:#475569;font-size:1rem;font-weight:400;line-height:1.625;margin:0}.tab-content__grid{grid-gap:2rem;display:grid;gap:2rem}@media(min-width:1024px){.tab-content__grid{grid-template-columns:2fr 1fr;grid-template-rows:auto auto}}.tab-content__section-title{border-bottom:2px solid #e9ddff;color:#0f172a;display:inline-block;font-size:1.125rem;font-weight:600;line-height:1.25;margin-bottom:1rem;padding-bottom:.5rem}@media(min-width:1024px){.tab-content__stats{grid-column:1;grid-row:1}.tab-content__features{grid-column:2;grid-row:1/3}.tab-content__code{grid-column:1;grid-row:2}}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media(max-width:639px){.stats-grid{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}.stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 1px 2px 0 #0000000d;transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.stat-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.stat-card{padding:1.25rem}@media(max-width:639px){.stat-card{padding:1rem}}.stat-card__header{align-items:center;align-items:flex-start;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.stat-card__label{color:#475569;flex:1 1;font-size:.875rem;font-weight:500;line-height:1.5}.stat-card__change{align-items:center;display:flex;flex-shrink:0;gap:.25rem;justify-content:center}.stat-card__change-value{font-size:.75rem;font-weight:600;line-height:1.5}.stat-card__change-value--up{color:#10b981}.stat-card__change-value--down{color:#ef4444}.stat-card__change-value--neutral{color:#64748b}.stat-card__value{color:#0f172a;font-size:1.5rem;font-weight:700;line-height:1.25}.trend-icon--up{color:#10b981}.trend-icon--down{color:#ef4444}.trend-icon--neutral{color:#64748b}.features-list{display:flex;flex-direction:column;gap:.75rem}.feature-item{align-items:center;align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.375rem;display:flex;gap:.75rem;justify-content:center;padding:.75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}@media(max-width:639px){.feature-item{gap:.5rem;padding:.625rem}}.feature-item:hover{background:#faf7ff;border-color:#e9ddff}.feature-item__icon{color:#8b47ff;flex-shrink:0;margin-top:.125rem}.feature-item__text{color:#475569;flex:1 1;font-size:.875rem;font-weight:400;line-height:1.625}.code-block{background:#0f172a;border:1px solid #94a3b8;border-radius:.5rem;overflow:hidden}.code-block pre{background:none;border:none;margin:0;overflow-x:auto;padding:1.5rem}.code-block pre code{background:none;color:#f1f5f9;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.875rem;font-weight:400;line-height:1.5;line-height:1.6;padding:0;white-space:pre}.code-block .keyword{color:#c792ea}.code-block .string{color:#c3e88d}.code-block .comment{color:#546e7a;font-style:italic}.code-block .function{color:#82aaff}.code-block .variable{color:#f07178}.rearrangeable-tabs{padding:2rem 9rem}@media(max-width:639px){.rearrangeable-tabs{padding:1rem .5rem}}.rearrangeable-tabs__header{margin-left:auto;margin-right:auto;max-width:1280px;padding-left:1rem;padding-right:1rem;width:100%}@media(max-width:639px){.rearrangeable-tabs__header{padding-left:.5rem;padding-right:.5rem}}.rearrangeable-tabs__header{align-items:center;align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:2rem;max-width:none}.rearrangeable-tabs__header h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#7c3aed,#581c87);-webkit-background-clip:text;background-clip:text;font-size:1.875rem;font-weight:700;line-height:1.25;margin-bottom:.5rem}.rearrangeable-tabs__header p{color:#475569;font-size:1.125rem;font-weight:400;line-height:1.625;margin:0}@media(max-width:639px){.rearrangeable-tabs__header{align-items:stretch;flex-direction:column;gap:1rem}}.rearrangeable-tabs__stats{align-items:center;display:flex;flex-shrink:0;gap:1rem;justify-content:center}.rearrangeable-tabs__count{background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;color:#64748b;font-size:.875rem;font-weight:500;line-height:1.5;padding:.5rem .75rem}.rearrangeable-tabs__container{margin-left:auto;margin-right:auto;max-width:1280px;padding-left:1rem;padding-right:1rem;width:100%}@media(max-width:639px){.rearrangeable-tabs__container{padding-left:.5rem;padding-right:.5rem}}.rearrangeable-tabs__container{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 2px 0 #0000000d;max-width:none;overflow:hidden}@media(max-width:639px){.rearrangeable-tabs__container{border-left:none;border-radius:0;border-right:none;margin:0}}.rearrangeable-tabs__nav{background:#f8fafc;border-bottom:1px solid #e2e8f0}.rearrangeable-tabs__list{-ms-overflow-style:none;display:flex;overflow-x:auto;scrollbar-width:none}.rearrangeable-tabs__list::-webkit-scrollbar{display:none}@media(max-width:639px){.rearrangeable-tabs__list{padding:0 .5rem}}.rearrangeable-tabs__content{min-height:500px}@media(max-width:639px){.rearrangeable-tabs__content{min-height:400px}}.sortable-tab{align-items:center;background:#0000;border:none;cursor:pointer;display:flex;flex-shrink:0;position:relative;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);white-space:nowrap}.sortable-tab:hover{background:#6b728014}.sortable-tab--active{background:#7c3aed0d}.sortable-tab--active:after{background:#8b47ff;bottom:0;content:"";height:2px;left:0;position:absolute;right:0}.sortable-tab--dragging{opacity:.5;transform:rotate(2deg);z-index:1050}.sortable-tab--pinned:before{background:#a16eff;border-radius:50%;content:"";height:4px;left:.25rem;position:absolute;top:.25rem;width:4px}.sortable-tab__content{align-items:center;display:flex;gap:.5rem;justify-content:center;min-height:60px;padding:1rem}@media(max-width:639px){.sortable-tab__content{gap:.375rem;padding:.75rem 1rem}}.sortable-tab__drag-handle{align-items:center;color:#64748b;cursor:grab;display:flex;justify-content:center;opacity:0;transition:opacity .15s cubic-bezier(.4,0,.2,1)}.sortable-tab:hover .sortable-tab__drag-handle{opacity:1}.sortable-tab__drag-handle:active{cursor:grabbing}.sortable-tab__icon{align-items:center;color:#475569;display:flex;height:20px;justify-content:center;width:20px}.sortable-tab--active .sortable-tab__icon{color:#8b47ff}.sortable-tab__title{color:#475569;font-size:.875rem;font-weight:500;line-height:1.5}.sortable-tab--active .sortable-tab__title{color:#0f172a;font-weight:600}.sortable-tab__actions{display:contents;gap:.25rem;opacity:0;transition:opacity .15s cubic-bezier(.4,0,.2,1)}.sortable-tab:hover .sortable-tab__actions{opacity:1}.sortable-tab__pin{background:none;border:none;border-radius:.125rem;color:#64748b;cursor:pointer;display:block;height:24px;padding:6px 0;transition:all .2s ease;width:24px}.sortable-tab__pin:hover{color:#8b47ff}.sortable-tab__pin:hover>svg{transform:scale(1.1)}.sortable-tab__pin--active{background:#f3edff;color:#8b47ff}.sortable-tab__pin--active:hover{background:#e9ddff;transform:scale(1.1)}.paginated-table{padding:2rem 9rem}@media(max-width:639px){.paginated-table{padding:1rem .5rem}}.paginated-table__header{margin-left:auto;margin-right:auto;max-width:1280px;padding-left:1rem;padding-right:1rem;width:100%}@media(max-width:639px){.paginated-table__header{padding-left:.5rem;padding-right:.5rem}}.paginated-table__header{align-items:center;align-items:flex-start;display:flex;gap:1.5rem;justify-content:space-between;margin-bottom:2rem;max-width:none}.paginated-table__header h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#7c3aed,#581c87);-webkit-background-clip:text;background-clip:text;font-size:1.875rem;font-weight:700;line-height:1.25;margin-bottom:.5rem}.paginated-table__header p{color:#475569;font-size:1.125rem;font-weight:400;line-height:1.625;margin:0}@media(max-width:639px){.paginated-table__header{align-items:stretch;flex-direction:column;gap:1rem}}.paginated-table__stats{align-items:center;display:flex;flex-shrink:0;gap:1rem;justify-content:center}.paginated-table__count{background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;color:#64748b}.paginated-table__count,.paginated-table__selected{font-size:.875rem;font-weight:500;line-height:1.5;padding:.5rem .75rem}.paginated-table__selected{background:#8b47ff;border-radius:9999px;color:#fff}.paginated-table__container{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 2px 0 #0000000d;margin:0 1rem;max-width:none;overflow:hidden}@media(max-width:639px){.paginated-table__container{border-left:none;border-radius:0;border-right:none;margin:0}}@media(min-width:1024px){.paginated-table__container{margin:0 auto;max-width:1280px;max-width:none;padding-left:0;padding-right:0;width:100%}}@media(min-width:1024px)and (max-width:639px){.paginated-table__container{padding-left:.5rem;padding-right:.5rem}}.table-controls{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:space-between;padding:1.5rem}@media(max-width:639px){.table-controls{align-items:stretch;flex-direction:column;padding:1rem .75rem}}.table-controls__left,.table-controls__right{align-items:center;display:flex;gap:.75rem;justify-content:center}@media(max-width:639px){.table-controls__left,.table-controls__right{justify-content:space-between}}.table-controls__button{align-items:center;display:flex;gap:.5rem;justify-content:center;padding:.5rem .75rem;white-space:nowrap}.search-input{position:relative}.search-input__icon{color:#64748b;left:.75rem;position:absolute;top:50%;transform:translateY(-50%)}.search-input__field{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;font-size:.875rem;font-weight:400;line-height:1.5;padding:.625rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:100%}.search-input__field:focus{border-color:#a16eff;box-shadow:0 0 0 3px #a16eff1a;outline:none}.search-input__field::placeholder{color:#64748b}.search-input__field:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.search-input__field{padding-left:2.5rem;width:300px}@media(max-width:639px){.search-input__field{width:100%}}.table-wrapper{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table__header{background:#f1f5f9;border-bottom:1px solid #e2e8f0;color:#475569;font-size:.875rem;font-weight:600;line-height:1.5;padding:1rem 1.5rem;text-align:left;white-space:nowrap}.data-table__header--sortable{cursor:pointer;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.data-table__header--sortable:hover{background:#faf7ff;color:#7c3aed}.data-table__header--checkbox{text-align:center;width:60px}.data-table__row{transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.data-table__row:hover{background:#f8fafc}.data-table__row--selected{background:#faf7ff}.data-table__row--selected:hover{background:#f3edff}.data-table__cell{border-bottom:1px solid #e2e8f0;color:#0f172a;font-size:.875rem;font-weight:400;line-height:1.5;max-width:220px;overflow:hidden;padding:1rem 1.5rem;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}@media(max-width:639px){.data-table__cell{max-width:150px;padding:.75rem}}.data-table__cell--checkbox{text-align:center}.sort-icon{margin-left:.5rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.sort-icon--inactive{color:#64748b}.sort-icon--active{color:#8b47ff}.user-info{gap:.75rem;justify-content:center;justify-content:flex-start}.user-info,.user-info__avatar{align-items:center;display:flex}.user-info__avatar{background:#8b47ff;border-radius:9999px;color:#fff;flex-shrink:0;font-size:.875rem;font-weight:600;height:40px;justify-content:center;line-height:1.5;width:40px}.user-info__details{display:flex;flex-direction:column;gap:.125rem;min-width:0}.user-info__name{color:#0f172a;font-size:.875rem;font-weight:500;line-height:1.5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-info__id{color:#64748b;font-weight:400}.role-badge,.user-info__id{font-size:.75rem;line-height:1.5}.role-badge{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:9999px;color:#475569;font-weight:500}.role-badge,.status-badge{letter-spacing:.025em;padding:.375rem .75rem;text-transform:uppercase}.status-badge{border-radius:9999px;font-size:.75rem;font-weight:600;line-height:1.5}.status-badge.status--success{background:#10b9811a;border:1px solid #10b98133;color:#059669}.status-badge.status--error{background:#ef44441a;border:1px solid #ef444433;color:#dc2626}.status-badge.status--warning{background:#f59e0b1a;border:1px solid #f59e0b33;color:#d97706}.status-badge.status--neutral{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569}.score-indicator{align-items:center;display:flex;gap:.5rem;justify-content:center}.score-indicator__bar{background:#f1f5f9;border-radius:9999px;flex-shrink:0;height:8px;overflow:hidden;width:60px}.score-indicator__fill{background:linear-gradient(90deg,#a16eff,#8b47ff);border-radius:9999px;height:100%;transition:width .3s ease}.score-indicator__text{color:#475569;font-size:.75rem;font-weight:500;line-height:1.5;min-width:35px}.table-actions{align-items:center;display:flex;gap:.5rem;justify-content:center}.table-actions__button{background:#fff;border:1px solid #cbd5e1;border-radius:.125rem;color:#475569;cursor:pointer;font-size:.75rem;font-weight:500;line-height:1.5;padding:.375rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.table-actions__button:hover{background:#f8fafc;border-color:#94a3b8}.table-actions__button--danger{border-color:#ef44444d;color:#ef4444}.table-actions__button--danger:hover{background:#ef44440d;border-color:#ef4444}.checkbox{accent-color:#8b47ff;cursor:pointer;height:16px;width:16px}.pagination{align-items:center;background:#f8fafc;display:flex;gap:1rem;justify-content:space-between;padding:1.5rem}@media(max-width:639px){.pagination{align-items:stretch;flex-direction:column;gap:1rem;padding:1rem .75rem}}.pagination__info{align-items:center;color:#475569;display:flex;font-size:.875rem;font-weight:400;gap:1rem;justify-content:center;line-height:1.5}@media(max-width:639px){.pagination__info{justify-content:space-between}}.pagination__select{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;font-size:.875rem;font-weight:400;line-height:1.5;padding:.625rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:100%}.pagination__select:focus{border-color:#a16eff;box-shadow:0 0 0 3px #a16eff1a;outline:none}.pagination__select::placeholder{color:#64748b}.pagination__select:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.pagination__select{min-width:120px;padding:.5rem .75rem;width:auto}.pagination__controls{align-items:center;display:flex;gap:.5rem;justify-content:center}.pagination__button{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;color:#475569;cursor:pointer;display:contents;height:36px;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:36px}.pagination__button:hover:not(:disabled){background:#faf7ff;border-color:#d7c1ff;color:#8b47ff}.pagination__button:disabled{cursor:not-allowed;opacity:.5}.pagination__pages{align-items:center;display:flex;gap:.25rem;justify-content:center}.pagination__ellipsis{color:#64748b}.pagination__ellipsis,.pagination__page{align-items:center;display:flex;font-size:.875rem;font-weight:500;height:36px;justify-content:center;line-height:1.5;width:36px}.pagination__page{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;color:#475569;cursor:pointer;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.pagination__page:hover{background:#faf7ff;border-color:#d7c1ff;color:#8b47ff}.pagination__page--active{background:#8b47ff;border-color:#8b47ff;color:#fff}.pagination__page--active:hover{background:#7c3aed;border-color:#7c3aed;color:#fff}.spinning{animation:spin 1s linear infinite}.component-showcase__section{border-bottom:1px solid #e2e8f0}.component-showcase__section:last-child{border-bottom:none}.component-showcase__section:nth-child(2n){background:#f8fafc}.footer{background:#0f172a;color:#e2e8f0;padding:4rem 0 2rem}.footer__content{grid-gap:3rem;display:grid;gap:3rem;grid-template-columns:2fr 1fr;margin-bottom:3rem}@media(min-width:1024px){.footer__content{gap:4rem}}@media(min-width:768px){.footer__content{gap:2.5rem;grid-template-columns:1fr}}.footer__about{max-width:500px}@media(min-width:768px){.footer__about{max-width:none;text-align:center}}.footer__about-title{-webkit-text-fill-color:#0000;background:#a16eff;background-clip:text;-webkit-background-clip:text;color:#fff;font-size:1.5rem;font-weight:700;line-height:1.25;margin-bottom:1rem}.footer__about-description{color:#cbd5e1;font-size:1rem;font-weight:400;line-height:1.625;line-height:1.7}.footer__contact{max-width:300px}@media(min-width:768px){.footer__contact{margin:0 auto;max-width:none;text-align:center}}.footer__contact-title{color:#fff;font-size:1rem;font-weight:600;letter-spacing:.025em;line-height:1.25;margin-bottom:1.5rem;text-transform:uppercase}.footer__contact-list{display:flex;flex-direction:column;gap:1rem}.footer__contact-item{align-items:flex-start;display:flex;flex-direction:column;gap:.25rem}@media(min-width:768px){.footer__contact-item{align-items:center}}.footer__contact-label{color:#94a3b8;font-size:.75rem;font-weight:500;letter-spacing:.025em;line-height:1.5;text-transform:uppercase}.footer__contact-link{align-items:center;color:#e2e8f0;display:inline-flex;font-size:.875rem;font-weight:400;gap:.5rem;line-height:1.5;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);white-space:nowrap}.footer__contact-link:hover{color:#be9aff;text-decoration:none}.footer__contact-link svg{flex-shrink:0}.footer__logo{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-bottom:1.5rem}@media(min-width:768px){.footer__logo{justify-content:center}}.footer__logo-icon{align-items:center;background:#8b47ff;border-radius:.5rem;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.footer__logo-text{color:#fff;font-size:1.25rem;font-weight:700;line-height:1.5}.footer__description{color:#cbd5e1;font-size:1rem;font-weight:400;line-height:1.625;margin-bottom:2rem}@media(min-width:768px){.footer__description{text-align:center}}.footer__social{align-items:center;display:flex;gap:1rem;justify-content:center}@media(min-width:768px){.footer__social{justify-content:center}}.footer__social-link{align-items:center;background:#1e293b;border-radius:.375rem;color:#cbd5e1;display:flex;height:40px;justify-content:center;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);width:40px}.footer__social-link:hover{background:#8b47ff;color:#fff;text-decoration:none}.footer__links{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(3,1fr)}@media(max-width:639px){.footer__links{gap:1.5rem;grid-template-columns:1fr}.footer__link-section{text-align:center}}.footer__link-title{color:#fff;font-size:1rem;font-weight:600;letter-spacing:.025em;line-height:1.25;margin-bottom:1rem;text-transform:uppercase}.footer__link-list{list-style:none;margin:0;padding:0}.footer__link-list li{margin-bottom:.75rem}.footer__link-list li:last-child{margin-bottom:0}.footer__link{color:#cbd5e1;font-size:.875rem;font-weight:400;line-height:1.5;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.footer__link:hover{color:#be9aff;text-decoration:none}.footer__bottom{border-top:1px solid #1e293b;padding-top:2rem}.footer__bottom-content{align-items:center;display:flex;gap:1.5rem;justify-content:space-between}@media(min-width:768px){.footer__bottom-content{flex-direction:column;gap:1rem;text-align:center}}.footer__copyright{color:#94a3b8;font-size:.875rem;font-weight:400;line-height:1.5;margin:0}.footer__bottom-links{align-items:center;display:flex;gap:1.5rem;justify-content:center}@media(max-width:639px){.footer__bottom-links{flex-direction:column;gap:.75rem}}.footer__bottom-link{color:#94a3b8;font-size:.875rem;font-weight:400;line-height:1.5;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.footer__bottom-link:hover{color:#be9aff;text-decoration:none}.setup-phase{margin:0 auto;max-width:800px}.setup-phase__header{margin-bottom:2rem;text-align:center}@media(max-width:639px){.setup-phase__header{margin-bottom:1.5rem}}.setup-phase__title{color:#0f172a;font-size:1.875rem;font-weight:700;line-height:1.25;margin-bottom:.75rem}@media(max-width:639px){.setup-phase__title{font-size:1.5rem;font-weight:700;line-height:1.25}}.setup-phase__description{color:#475569;font-size:1.125rem;font-weight:400;line-height:1.625;margin:0 auto;max-width:500px}@media(max-width:639px){.setup-phase__description{font-size:1rem;font-weight:400;line-height:1.625}}.setup-form{display:flex;flex-direction:column;gap:2rem}@media(max-width:639px){.setup-form{gap:1.5rem}}.setup-section{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;box-shadow:0 1px 2px 0 #0000000d;padding:1.5rem;transition:all .3s ease}.setup-section:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}@media(max-width:639px){.setup-section{padding:1rem}}.setup-section__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}@media(max-width:639px){.setup-section__header{align-items:flex-start;flex-direction:column;gap:.75rem}}.setup-section__title{align-items:center;color:#0f172a;display:flex;font-size:1.25rem;font-weight:600;gap:.75rem;justify-content:center;line-height:1.25;margin-bottom:1rem}@media(max-width:639px){.setup-section__title{font-size:1.125rem;font-weight:600;gap:.5rem;line-height:1.25}}.setup-section__icon{font-size:1.5rem;font-weight:400;line-height:1.5}@media(max-width:639px){.setup-section__icon{font-size:1.25rem;font-weight:400;line-height:1.5}}.setup-section__note{color:#64748b;font-size:.875rem;font-weight:400;line-height:1.5;margin-bottom:1rem;margin-top:.75rem;text-align:center}.category-toggles{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}@media(max-width:639px){.category-toggles{gap:.5rem;grid-template-columns:1fr}}.category-toggle{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:.5rem;cursor:pointer;display:flex;gap:.5rem;justify-content:center;padding:.75rem 1rem;position:relative;transition:all .3s ease}.category-toggle:hover:not(:disabled){border-color:#d7c1ff;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.category-toggle--active{background:#faf7ff;border-color:#a16eff}.category-toggle--active .category-toggle__name{color:#7c3aed;font-weight:600}.category-toggle--locked{cursor:not-allowed;opacity:.8}.category-toggle--locked:hover{box-shadow:none;transform:none}.category-toggle__icon{font-size:1.25rem;font-weight:400;line-height:1.5}@media(max-width:639px){.category-toggle__icon{font-size:1.125rem;font-weight:400;line-height:1.5}}.category-toggle__name{color:#475569;font-size:.875rem;font-weight:500;line-height:1.5;text-align:center;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}@media(max-width:639px){.category-toggle__name{font-size:.75rem;font-weight:500;line-height:1.5}}.category-toggle__lock{font-size:.75rem;font-weight:400;line-height:1.5;opacity:.7;position:absolute;right:.25rem;top:.25rem}.player-count-selector{align-items:center;display:flex;gap:1rem;justify-content:center;margin:1rem 0}@media(max-width:639px){.player-count-selector{gap:.75rem}}.count-btn{align-items:center;background:#8b47ff;border:none;border-radius:9999px;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;font-weight:700;height:48px;justify-content:center;line-height:1.5;transition:all .2s ease;width:48px}.count-btn:hover:not(:disabled){background:#7c3aed;transform:scale(1.1)}.count-btn:active:not(:disabled){transform:scale(.95)}.count-btn:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}@media(max-width:639px){.count-btn{font-size:1.125rem;font-weight:700;height:40px;line-height:1.5;width:40px}}.count-display{align-items:center;display:flex;flex-direction:column;gap:.25rem;justify-content:center;min-width:100px}.count-display .count-number{color:#7c3aed;font-size:2.25rem;font-weight:700;line-height:1.25}@media(max-width:639px){.count-display .count-number{font-size:1.875rem;font-weight:700;line-height:1.25}}.count-display .count-label{color:#475569;font-size:.875rem;font-weight:500;letter-spacing:.025em;line-height:1.5;text-transform:uppercase}.custom-toggle{align-items:center;cursor:pointer;display:flex;gap:.5rem;justify-content:center}.custom-toggle input{display:none}.custom-toggle__slider{background:#f1f5f9;border-radius:9999px;height:24px;position:relative;transition:all .2s ease;width:44px}.custom-toggle__slider:after{background:#fff;border-radius:9999px;box-shadow:0 1px 2px 0 #0000000d;content:"";height:20px;left:2px;position:absolute;top:2px;transition:all .2s ease;width:20px}.custom-toggle__label{color:#475569;font-size:.875rem;font-weight:500;line-height:1.5}input:checked+.custom-toggle__slider{background:#8b47ff}input:checked+.custom-toggle__slider:after{transform:translateX(20px)}input:checked~.custom-toggle__label{color:#7c3aed}.role-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media(max-width:639px){.role-grid{gap:.75rem;grid-template-columns:1fr}}.role-card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 1px 2px 0 #0000000d;transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.role-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.role-card{padding:1rem;text-align:center;transition:all .3s ease}.role-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-4px)}.role-card--regular{border-left:4px solid #3b82f6}.role-card--undercover{border-left:4px solid #f59e0b}.role-card--mrwhite{border-left:4px solid #64748b}.role-card__icon{font-size:1.875rem;font-weight:400;line-height:1.5;margin-bottom:.5rem}@media(max-width:639px){.role-card__icon{font-size:1.5rem;font-weight:400;line-height:1.5}}.role-card__title{color:#0f172a;font-size:1rem;font-weight:600;line-height:1.25;margin-bottom:.5rem}@media(max-width:639px){.role-card__title{font-size:.875rem;font-weight:600;line-height:1.25}}.role-card__count{color:#8b47ff;font-size:1.5rem;font-weight:700;line-height:1.25;margin-bottom:.5rem}@media(max-width:639px){.role-card__count{font-size:1.25rem;font-weight:700;line-height:1.25}}.role-card__count-control{margin-bottom:.5rem}.role-card__description{color:#64748b;font-size:.75rem;font-weight:400;line-height:1.5;margin:0}.mini-counter{gap:.5rem}.mini-counter,.mini-counter button{align-items:center;display:flex;justify-content:center}.mini-counter button{background:#f3edff;border:none;border-radius:.125rem;color:#7c3aed;cursor:pointer;font-size:.875rem;font-weight:700;height:28px;line-height:1.5;width:28px}.mini-counter button:hover:not(:disabled){background:#e9ddff}.mini-counter button:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.mini-counter span{color:#8b47ff;font-size:1.25rem;font-weight:700;line-height:1.5;min-width:24px;text-align:center}.player-names-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}@media(max-width:639px){.player-names-grid{gap:.75rem;grid-template-columns:1fr}}.player-input__label{color:#475569;display:block;font-size:.875rem;font-weight:500;line-height:1.5;margin-bottom:.5rem}.player-input__field{background:#fff;border:1px solid #cbd5e1;border-radius:.375rem;font-size:.875rem;font-weight:400;line-height:1.5;padding:.625rem .75rem;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.player-input__field:focus{border-color:#a16eff;box-shadow:0 0 0 3px #a16eff1a;outline:none}.player-input__field::placeholder{color:#64748b}.player-input__field:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.player-input__field{width:100%}.validation-feedback{background:#ef44440d;border:1px solid #ef444433;border-radius:.5rem;margin-bottom:1rem;padding:1rem}.validation-feedback__title{align-items:center;color:#ef4444;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;justify-content:flex-start;line-height:1.25;margin-bottom:.75rem}.validation-feedback__list{list-style:none;margin:0;padding:0}.validation-feedback__list li{color:#ef4444;font-size:.875rem;font-weight:400;line-height:1.5;padding:.25rem 0 .25rem 1rem;position:relative}.validation-feedback__list li:before{color:#ef4444;content:"•";font-weight:700;left:0;position:absolute}.setup-actions{margin-top:1rem;text-align:center}.start-game-btn{align-items:center;background:linear-gradient(135deg,#8b47ff,#7c3aed);border:none;border-radius:.75rem;color:#fff;cursor:pointer;display:flex;display:inline-flex;font-size:1.125rem;font-weight:600;gap:.75rem;justify-content:center;line-height:1.5;min-width:200px;overflow:hidden;padding:1rem 2rem;position:relative;transition:all .3s ease}.start-game-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6b21a8);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.start-game-btn:active:not(:disabled){transform:translateY(0)}.start-game-btn:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.start-game-btn--ready{animation:pulse 2s ease-in-out infinite}.start-game-btn--ready .start-game-btn__sparkles{opacity:1}.start-game-btn__icon{font-size:1.25rem;font-weight:400;line-height:1.5}.start-game-btn__sparkles{bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.start-game-btn__sparkles .sparkle{animation:sparkle 1.5s ease-in-out infinite;font-size:.875rem;font-weight:400;line-height:1.5;position:absolute}.start-game-btn__sparkles .sparkle:first-child{animation-delay:0s;left:20%;top:20%}.start-game-btn__sparkles .sparkle:nth-child(2){animation-delay:.5s;right:20%;top:60%}.start-game-btn__sparkles .sparkle:nth-child(3){animation-delay:1s;bottom:20%;left:50%}@media(max-width:639px){.start-game-btn{font-size:1rem;font-weight:600;line-height:1.5;min-width:160px;padding:.75rem 1.5rem}}@keyframes sparkle{0%,to{opacity:0;transform:scale(.5) rotate(0deg)}50%{opacity:1;transform:scale(1) rotate(180deg)}}.assignment-phase{margin:0 auto;max-width:600px}.assignment-phase--loading{align-items:center;display:flex;justify-content:center;min-height:400px}.assignment-phase__header{margin-bottom:2rem;text-align:center}@media(max-width:639px){.assignment-phase__header{margin-bottom:1.5rem}}.assignment-phase__title{color:#0f172a;font-size:1.875rem;font-weight:700;line-height:1.25;margin-bottom:1rem}@media(max-width:639px){.assignment-phase__title{font-size:1.5rem;font-weight:700;line-height:1.25}}.assignment-phase__progress{margin:0 auto;max-width:400px}.assignment-phase__actions{margin-top:1.5rem;text-align:center}.progress-text{color:#475569;display:block;font-size:.875rem;font-weight:500;line-height:1.5;margin-bottom:.5rem}.progress-bar{background:#f1f5f9;border-radius:9999px;height:8px;overflow:hidden;width:100%}.progress-bar__fill{background:linear-gradient(90deg,#a16eff,#8b47ff);border-radius:9999px;height:100%;transition:width .5s ease}.loading-spinner{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center}.loading-spinner .spinner{animation:spin 1s linear infinite;border:4px solid #f1f5f9;border-radius:9999px;border-top-color:#8b47ff;height:48px;width:48px}.loading-spinner p{color:#475569;font-size:1rem;font-weight:500;line-height:1.5}.ai-indicator{align-items:center;background:linear-gradient(135deg,#7c3aed1a,#a855f71a);border:1px solid #7c3aed33;border-radius:9999px;display:flex;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.5rem 1rem}.ai-indicator .ai-icon{animation:pulse 2s ease-in-out infinite;font-size:.875rem;font-weight:400;line-height:1.5}.ai-indicator .ai-text{color:#7c3aed;font-size:.75rem;font-weight:500;line-height:1.5}.error-actions{margin-top:1rem;text-align:center}.error-actions .retry-btn{align-items:center;background:#8b47ff;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;margin:0 auto .75rem;padding:.75rem 1.5rem;transition:all .2s ease}.error-actions .retry-btn:hover{background:#7c3aed;transform:translateY(-1px)}.error-actions .retry-btn:active{transform:translateY(0)}.error-actions .error-help{color:#64748b;font-size:.875rem;font-weight:400;line-height:1.5;margin:0 auto;max-width:300px}.preview-message{text-align:center}.preview-message p{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.375rem;color:#475569;font-size:.875rem;font-weight:500;line-height:1.5;margin:0;padding:.75rem 1rem}.preview-message p:hover{background:#fff;border-color:#e9ddff}.player-card{background:#fff;border:1px solid #e2e8f0;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transition:box-shadow .15s cubic-bezier(.4,0,.2,1)}.player-card:hover{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.player-card{padding:2rem;text-align:center}@media(max-width:639px){.player-card{padding:1.5rem}}.player-card__header{margin-bottom:1.5rem}.player-card__name{color:#0f172a;font-size:1.5rem;font-weight:700;line-height:1.25;margin-bottom:.75rem}@media(max-width:639px){.player-card__name{font-size:1.25rem;font-weight:700;line-height:1.25}}.role-indicator{align-items:center;border-radius:9999px;display:flex;display:inline-flex;font-size:.875rem;font-weight:600;gap:.5rem;justify-content:center;line-height:1.5;padding:.5rem 1rem}.role-indicator--regular{background:#3b82f61a;border:1px solid #3b82f633;color:#1d4ed8}.role-indicator--undercover{background:#f59e0b1a;border:1px solid #f59e0b33;color:#d97706}.role-indicator--mrwhite{background:#6b72801a;border:1px solid #6b728033;color:#374151}.word-reveal-section{margin:1.5rem 0;min-height:200px}.mr-white-message,.word-reveal-section{align-items:center;display:flex;justify-content:center}.mr-white-message{border-radius:.75rem;flex-direction:column;gap:.5rem;padding:1.5rem}.mr-white-message__icon{font-size:2.25rem;font-weight:400;line-height:1.5}@media(max-width:639px){.mr-white-message__icon{font-size:1.875rem;font-weight:400;line-height:1.5}}.mr-white-message__title{color:#fff;font-size:1.25rem;font-weight:700;line-height:1.25;margin:0}@media(max-width:639px){.mr-white-message__title{font-size:1.125rem;font-weight:700;line-height:1.25}}.mr-white-message__description{color:#fff;font-size:1rem;font-weight:400;line-height:1.625;margin:0;max-width:300px;text-align:center}@media(max-width:639px){.mr-white-message__description{font-size:.875rem;font-weight:400;line-height:1.625}}.word-container{height:200px;perspective:1000px;width:300px}@media(max-width:639px){.word-container{height:180px;width:280px}}.word-curtain{height:100%;position:relative;transform-style:preserve-3d;transition:transform .8s ease;width:100%}.word-curtain--revealed{transform:rotateY(180deg)}.word-curtain__back,.word-curtain__front{align-items:center;-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:.75rem;display:flex;flex-direction:column;gap:.75rem;height:100%;justify-content:center;position:absolute;width:100%}.word-curtain__front{background:linear-gradient(135deg,#f3edff,#e9ddff);border:2px solid #d7c1ff}.word-curtain__front .curtain-icon{font-size:1.875rem;font-weight:400;line-height:1.5}@media(max-width:639px){.word-curtain__front .curtain-icon{font-size:1.5rem;font-weight:400;line-height:1.5}}.word-curtain__front p{color:#475569;font-size:1rem;font-weight:500;line-height:1.5;margin:0;text-align:center}@media(max-width:639px){.word-curtain__front p{font-size:.875rem;font-weight:500;line-height:1.5}}.word-curtain__back{background:linear-gradient(135deg,#8b47ff,#7c3aed);border:2px solid #6b21a8;transform:rotateY(180deg)}.reveal-btn{align-items:center;background:#8b47ff;border:1px solid #0000;border-radius:.375rem;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;justify-content:center;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.reveal-btn:hover:not(:disabled){background:#7c3aed}.reveal-btn:active{background:#6b21a8}.reveal-btn{font-size:.875rem;font-weight:600;line-height:1.5;padding:.75rem 1.5rem}.reveal-btn:disabled{cursor:not-allowed;opacity:.5}@media(max-width:639px){.reveal-btn{font-size:.75rem;font-weight:600;line-height:1.5;padding:.5rem 1rem}}.revealed-word{align-items:center;color:#fff;display:flex;flex-direction:column;gap:.5rem;justify-content:center;text-align:center}.revealed-word .word-icon{font-size:1.875rem;font-weight:400;line-height:1.5}@media(max-width:639px){.revealed-word .word-icon{font-size:1.5rem;font-weight:400;line-height:1.5}}.revealed-word .word-text{font-size:1.5rem;font-weight:700;line-height:1.25;margin:.5rem 0}@media(max-width:639px){.revealed-word .word-text{font-size:1.25rem;font-weight:700;line-height:1.25}}.revealed-word .word-role{font-size:.875rem;font-weight:500;line-height:1.5;opacity:.9}@media(max-width:639px){.revealed-word .word-role{font-size:.75rem;font-weight:500;line-height:1.5}}.next-btn{align-items:center;background:linear-gradient(135deg,#8b47ff,#7c3aed);border:none;border-radius:.75rem;color:#fff;cursor:pointer;display:flex;display:inline-flex;font-size:1.125rem;font-weight:600;gap:.5rem;justify-content:center;line-height:1.5;padding:1rem 2rem;transition:all .3s ease}.next-btn:hover:not(:disabled){background:linear-gradient(135deg,#7c3aed,#6b21a8);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.next-btn:disabled{cursor:not-allowed;opacity:.5}.next-btn:disabled:hover{box-shadow:none;transform:none}.next-btn__icon{font-size:1.125rem;font-weight:400;line-height:1.5}@media(max-width:639px){.next-btn{font-size:1rem;font-weight:600;line-height:1.5;padding:.75rem 1.5rem}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.gameplay-phase{margin:0 auto;max-width:800px;padding:1rem}.gameplay-phase h2{color:#0f172a;font-size:1.5rem;font-weight:700;line-height:1.25;margin-bottom:1.5rem;text-align:center}.gameplay-phase h3{color:#0f172a;font-size:1.25rem;font-weight:600;line-height:1.5;margin-bottom:1rem}.gameplay-phase p{color:#475569;font-size:1rem;font-weight:400;line-height:1.625;margin-bottom:1rem;text-align:center}.gameplay-phase .game-status{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}@media(min-width:768px){.gameplay-phase .game-status{gap:1rem;grid-template-columns:1fr}}.gameplay-phase .alive-players{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:1rem}.gameplay-phase .players-list{display:flex;flex-direction:column;gap:.5rem}.gameplay-phase .player-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:.375rem;display:flex;justify-content:space-between;padding:.5rem .75rem}.gameplay-phase .player-item .player-name{color:#0f172a;font-size:1rem;font-weight:500;line-height:1.5}.gameplay-phase .player-item .player-status{background:#10b981;border-radius:9999px;color:#10b981;font-size:.875rem;font-weight:400;line-height:1.5;padding:.25rem .5rem}.gameplay-phase .game-info{align-items:center;display:flex;flex-direction:column;gap:.75rem;justify-content:center}.gameplay-phase .voting-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:1.5rem 0}.gameplay-phase .player-vote-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:1rem;text-align:center;transition:transform .2s ease}.gameplay-phase .player-vote-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.gameplay-phase .player-vote-card h3{color:#0f172a;font-size:1.125rem;font-weight:600;line-height:1.5;margin-bottom:.75rem}.gameplay-phase .vote-btn{align-items:center;background:#f59e0b;border:none;border-radius:.375rem;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;padding:.75rem 1rem;transition:all .2s ease;width:100%}.gameplay-phase .vote-btn:hover:not(:disabled){background:#f59e0b;transform:translateY(-1px)}.gameplay-phase .vote-btn:disabled{background:#64748b;cursor:not-allowed;transform:none}.gameplay-phase .elimination-result{margin:1.5rem 0;text-align:center}.gameplay-phase .player-role-reveal{align-items:center;background:#f8fafc;border:2px solid #a16eff;border-radius:.5rem;display:inline-flex;gap:.75rem;margin:1rem 0;padding:1rem 1.5rem}.gameplay-phase .player-role-reveal .role-icon{font-size:2rem}.gameplay-phase .player-role-reveal .role-name{color:#0f172a;font-size:1.25rem;font-weight:700;line-height:1.5}.gameplay-phase .mr-white-guess{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;margin-top:1.5rem;padding:1rem}.gameplay-phase .guess-input{align-items:center;display:flex;flex-direction:column;gap:.75rem}.gameplay-phase .guess-input p{color:#8b47ff;font-size:1.125rem;font-weight:500;line-height:1.5;margin:0}.gameplay-phase .guess-input .guess-input-field{border:2px solid #d7c1ff;border-radius:.375rem;font-size:1.125rem;font-weight:400;line-height:1.5;max-width:300px;padding:.75rem 1rem;text-align:center;width:100%}.gameplay-phase .guess-input .guess-input-field:focus{border-color:#a16eff;box-shadow:0 0 0 3px #7c3aed1a;outline:none}.gameplay-phase .guess-result{text-align:center}.gameplay-phase .guess-result p{font-size:1.125rem;font-weight:400;line-height:1.5;margin:.5rem 0}.gameplay-phase .guess-result .guess-correct{color:#10b981;font-weight:600}.gameplay-phase .guess-result .guess-incorrect{color:#ef4444;font-weight:600}.gameplay-phase .mr-white-survives{background:#10b981;border:1px solid #10b981;border-radius:.375rem;margin-top:1rem;padding:.75rem}.gameplay-phase .mr-white-survives p{color:#10b981;font-size:1rem;font-weight:500;line-height:1.5;margin:0}.gameplay-phase--game-over .game-results{margin-top:1.5rem;text-align:center}.gameplay-phase--game-over .final-roles{margin:1.5rem auto;max-width:500px;text-align:left}.gameplay-phase--game-over .player-role{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:.375rem;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.5rem .75rem}.gameplay-phase--game-over .player-role .player-name{color:#0f172a;font-size:1rem;font-weight:500;line-height:1.5}.gameplay-phase--game-over .player-role .player-role-badge{border-radius:9999px;font-size:.875rem;font-weight:500;line-height:1.5;padding:.25rem .5rem;text-transform:capitalize}.gameplay-phase--game-over .player-role .player-role-badge[class*=regular]{background:#10b981;color:#10b981}.gameplay-phase--game-over .player-role .player-role-badge[class*=undercover]{background:#f59e0b;color:#f59e0b}.gameplay-phase--game-over .player-role .player-role-badge[class*=mrwhite]{background:#f1f5f9;color:#334155}.gameplay-phase--game-over .player-role .player-word{color:#64748b;font-size:.875rem;font-style:italic;font-weight:400;line-height:1.5}.gameplay-phase .continue-btn,.gameplay-phase .guess-submit-btn,.gameplay-phase .play-again-btn,.gameplay-phase .start-voting-btn,.gameplay-phase .submit-votes-btn{align-items:center;background:#8b47ff;border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;display:block;font-size:1rem;font-weight:500;gap:.5rem;justify-content:center;line-height:1.5;margin:1rem auto 0;padding:.75rem 1.5rem;transition:all .2s ease}.gameplay-phase .continue-btn:hover:not(:disabled),.gameplay-phase .guess-submit-btn:hover:not(:disabled),.gameplay-phase .play-again-btn:hover:not(:disabled),.gameplay-phase .start-voting-btn:hover:not(:disabled),.gameplay-phase .submit-votes-btn:hover:not(:disabled){background:#7c3aed;transform:translateY(-1px)}.gameplay-phase .continue-btn:disabled,.gameplay-phase .guess-submit-btn:disabled,.gameplay-phase .play-again-btn:disabled,.gameplay-phase .start-voting-btn:disabled,.gameplay-phase .submit-votes-btn:disabled{background:#64748b;cursor:not-allowed;transform:none}.gameplay-phase .guess-submit-btn{background:#8b47ff;margin-top:.5rem;padding:.5rem 1rem}.gameplay-phase .guess-submit-btn:disabled{background:#64748b}.gameplay-phase .play-again-btn,.gameplay-phase .play-again-btn:hover:not(:disabled){background:#10b981}.results-phase{margin:0 auto;max-width:800px;padding:2rem}.results-phase__header{margin-bottom:3rem;text-align:center}.results-phase__content{display:flex;flex-direction:column;gap:3rem}.results-phase__actions{margin-top:3rem;text-align:center}.winner-announcement{background:linear-gradient(135deg,var(--color-primary-50) 0,var(--color-primary-100) 100%);border:2px solid var(--color-primary-200);border-radius:16px;padding:2rem}.winner-announcement--civilians{background:linear-gradient(135deg,var(--color-success-50) 0,var(--color-success-100) 100%);border-color:var(--color-success-200)}.winner-announcement--undercovers{background:linear-gradient(135deg,var(--color-warning-50) 0,var(--color-warning-100) 100%);border-color:var(--color-warning-200)}.winner-icon{font-size:4rem;margin-bottom:1rem}.winner-title{color:var(--color-text-primary);font-size:2.5rem;font-weight:700;margin:0 0 .5rem}.winner-subtitle{color:var(--color-text-secondary);font-size:1.2rem;margin:0}.game-words h2{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.words-display{display:flex;flex-wrap:wrap;gap:2rem;justify-content:center}.word-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-sm);min-width:200px;padding:1.5rem;text-align:center}.word-card--civilian{background:var(--color-success-50);border-color:var(--color-success-200)}.word-card--undercover{background:var(--color-warning-50);border-color:var(--color-warning-200)}.word-label{color:var(--color-text-secondary);font-size:.9rem;font-weight:600;margin-bottom:.5rem}.word-value{font-weight:700}.player-roles h2,.word-value{color:var(--color-text-primary);font-size:1.5rem}.player-roles h2{font-weight:600;text-align:center}.player-roles h2,.role-group{margin-bottom:2rem}.role-group__title{align-items:center;color:var(--color-text-primary);display:flex;font-size:1.2rem;font-weight:600;gap:.5rem;margin-bottom:1rem}.role-group__title .role-icon{font-size:1.5rem}.role-group__players{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.player-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;display:flex;flex-direction:column;gap:.5rem;padding:1rem;transition:all .2s ease}.player-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.player-card--eliminated{background:var(--color-surface-secondary);border-color:var(--color-border-secondary);opacity:.7}.player-name{color:var(--color-text-primary);font-size:1.1rem;font-weight:600}.player-word{color:var(--color-text-secondary);font-size:.9rem;font-style:italic}.elimination-badge{align-self:flex-start;background:var(--color-error-100);border-radius:4px;color:var(--color-error-700);font-size:.8rem;font-weight:500;padding:.25rem .5rem}.play-again-btn{border:1px solid #0000;border-radius:.375rem;cursor:pointer;font-size:.875rem;font-weight:500;justify-content:center;line-height:1.5;padding:.625rem 1rem;text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}.play-again-btn:disabled{cursor:not-allowed;opacity:.5}.play-again-btn{background:#8b47ff;color:#fff}.play-again-btn:hover:not(:disabled){background:#7c3aed}.play-again-btn:active{background:#6b21a8}.play-again-btn{align-items:center;border-radius:12px;display:inline-flex;font-size:1.2rem;gap:.5rem;padding:1rem 2rem}.play-again-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@media(max-width:768px){.results-phase{padding:1rem}.results-phase__content{gap:2rem}.winner-announcement{padding:1.5rem}.winner-title{font-size:2rem}.winner-icon{font-size:3rem}.words-display{align-items:center;flex-direction:column}.word-card{max-width:300px;min-width:auto;width:100%}.role-group__players{grid-template-columns:1fr}}.undercover-game__phase-indicator{margin-bottom:2rem}@media(max-width:639px){.undercover-game__phase-indicator{margin-bottom:1.5rem}}.undercover-game__content{min-height:400px}.phase-steps{align-items:center;display:flex;gap:1rem;justify-content:center}@media(max-width:639px){.phase-steps{gap:.5rem;overflow-x:auto;padding:.5rem 0}}.phase-step{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center;min-width:80px;padding:.75rem;position:relative}@media(max-width:639px){.phase-step{gap:.25rem;min-width:60px;padding:.5rem}}.phase-step:after{background:#cbd5e1;content:"";height:2px;position:absolute;right:-.5rem;top:50%;transform:translateY(-50%);width:1rem}@media(max-width:639px){.phase-step:after{right:-.25rem;width:.5rem}}.phase-step:last-child:after{display:none}.phase-step--active .phase-step__number{background:#8b47ff;box-shadow:0 0 0 4px #7c3aed33;color:#fff;transform:scale(1.1)}.phase-step--active .phase-step__label{color:#7c3aed;font-weight:600}.phase-step--active:after{background:#be9aff}.phase-step__number{align-items:center;background:#f1f5f9;border-radius:9999px;color:#475569;display:flex;font-size:.875rem;font-weight:600;height:32px;justify-content:center;line-height:1.5;transition:all .3s ease;width:32px}@media(max-width:639px){.phase-step__number{font-size:.75rem;font-weight:600;height:28px;line-height:1.5;width:28px}}.phase-step__label{color:#64748b;font-size:.875rem;font-weight:500;line-height:1.5;text-align:center;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1);white-space:nowrap}@media(max-width:639px){.phase-step__label{font-size:.75rem;font-weight:500;line-height:1.5}}@keyframes fadeIn{to{opacity:1}}@keyframes slideInUp{to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{to{opacity:1;transform:scale(1)}}.game-section{min-height:calc(100vh - 80px)}.game-section__hero{background:linear-gradient(135deg,#581c87,#7c3aed 50%,#6b21a8);overflow:hidden;padding:4rem 0 3rem;position:relative;text-align:center}.game-section__hero:before{animation:float 6s ease-in-out infinite;background-image:radial-gradient(circle at 20% 30%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 80% 70%,#ffffff14 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@media(max-width:639px){.game-section__hero{padding:3rem 0 2rem}}.game-section__title{color:#fff;font-size:3rem;font-weight:700;line-height:1.25;margin-bottom:1rem;position:relative;text-shadow:0 2px 4px #0000004d;z-index:2}@media(max-width:639px){.game-section__title{font-size:2.25rem;font-weight:700;line-height:1.25}}.game-section__description{color:#ffffffe6;font-size:1.25rem;font-weight:400;line-height:1.625;margin:0 auto;max-width:600px;position:relative;z-index:2}@media(max-width:639px){.game-section__description{font-size:1.125rem;font-weight:400;line-height:1.625}}.game-section__content{padding:3rem 0}@media(max-width:639px){.game-section__content{padding:2rem 0}}.game-tabs__nav{border-bottom:1px solid #e2e8f0;display:flex;justify-content:center;margin-bottom:2rem}@media(max-width:639px){.game-tabs__nav{margin-bottom:1.5rem}}.game-tabs__tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;cursor:pointer;display:flex;gap:.75rem;justify-content:center;padding:1rem 1.5rem;position:relative;transition:all .3s ease}@media(max-width:639px){.game-tabs__tab{gap:.5rem;padding:.75rem 1rem}}.game-tabs__tab:hover{background:#faf7ff;transform:translateY(-2px)}.game-tabs__tab--active{background:#faf7ff;border-bottom-color:#8b47ff}.game-tabs__tab--active .game-tabs__tab-icon{animation:bounce 1s ease-in-out infinite}.game-tabs__tab--active .game-tabs__tab-text{color:#7c3aed;font-weight:600}.game-tabs__tab-icon{display:block;font-size:1.5rem;font-weight:400;line-height:1.5}@media(max-width:639px){.game-tabs__tab-icon{font-size:1.25rem;font-weight:400;line-height:1.5}}.game-tabs__tab-text{color:#475569;font-size:1.125rem;font-weight:500;line-height:1.5;transition:color .15s cubic-bezier(.4,0,.2,1),background-color .15s cubic-bezier(.4,0,.2,1),border-color .15s cubic-bezier(.4,0,.2,1)}@media(max-width:639px){.game-tabs__tab-text{font-size:1rem;font-weight:500;line-height:1.5}}.game-tabs__content{min-height:500px}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-10px) rotate(1deg)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}60%{transform:translateY(-3px)}}
/*# sourceMappingURL=main.4c3e52f3.css.map*/