@import"https://fonts.googleapis.com/css2?family=Rubik:wght@400;500;600;700&display=swap";.app{width:100%;min-height:100vh;background-color:#fff;position:relative;overflow:visible}.logo-arcs{position:fixed;top:50%;left:50%;width:100vw;height:100vh;transform:translate(-50%,-50%) scale(2);z-index:0;pointer-events:none;transition:transform 1s cubic-bezier(.42,0,1,1);overflow:visible}.logo-arcs.shrunk{transform:translate(-50%,-50%) scale(.6)}.topbar-nav{position:fixed;top:0;left:0;right:0;height:60px;background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.1);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(-100%);animation:slideDownTopbar .5s ease-out forwards}@keyframes slideDownTopbar{to{opacity:1;transform:translateY(0)}}.nav-tabs{display:grid;grid-template-columns:1fr auto 1fr;width:100%;max-width:600px;align-items:center;gap:.5rem}.nav-tabs a:nth-child(1){justify-self:end}.nav-tabs a:nth-child(2){justify-self:center}.nav-tabs a:nth-child(3){justify-self:start}.nav-tab{padding:.5rem 1.5rem;background:transparent;border:none;border-radius:8px;color:#0009;font-size:.95rem;font-weight:500;cursor:pointer;transition:background-color .3s ease,color .3s ease;text-decoration:none;display:inline-block}.nav-tab:hover{color:#000c;background:#0000000d}.nav-tab.active{color:#000000e6;background:#00000014}.view-container{width:100%;min-height:100vh;padding-top:0;transition:padding-top .3s ease}.view-container.with-topbar{padding-top:60px}.empty-view{display:flex;align-items:center;justify-content:center;background-color:#4102f6;min-height:100vh}.main-view.empty-view{background-color:#4102f6!important}.thesis-content{opacity:0;animation:fadeInThesis .5s ease-in 1s forwards}@keyframes fadeInThesis{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.purple-fill-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#4102f6;z-index:1001;clip-path:circle(141.42% at 50% 50%);animation:purpleFillFromOutside 1s cubic-bezier(.42,0,1,1) forwards;pointer-events:none;will-change:clip-path;backface-visibility:hidden;-webkit-backface-visibility:hidden}@keyframes purpleFillFromOutside{0%{clip-path:circle(141.42% at 50% 50%)}to{clip-path:circle(0% at 50% 50%)}}@keyframes purpleFillFromOutside{0%{transform:translate(-50%,-50%) scale(0)}to{transform:translate(-50%,-50%) scale(1)}}.main-view{width:100%;min-height:100vh;background-color:#fff;display:flex;align-items:center;justify-content:center;position:relative;z-index:1;overflow:visible}.click-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:999;pointer-events:auto;cursor:pointer}.trace-animation{position:absolute;width:1000px;height:1100px;top:calc(60px + (100vh - 60px)/2);left:50%;transform:translate(-50%,-50%);z-index:0;pointer-events:none!important;transition:transform 1s cubic-bezier(.42,0,1,1);color:#0000001a}.trace-animation path,.trace-animation circle,.trace-animation g,.trace-animation foreignObject{pointer-events:none!important}.trace-animation.card-selected,.trace-animation.card-selected .shape-group.selected,.trace-animation.card-selected .shape-group.selected *{pointer-events:auto!important}.trace-animation.separated{transform:translate(-50%,-45%) scale(.72);pointer-events:none!important}.trace-animation.separated *{pointer-events:none!important}.trace-animation.card-selected{pointer-events:auto!important;width:1000px;height:1100px}.trace-animation.card-selected .shape-group.selected *{pointer-events:auto!important}.trace-animation.card-selected:has(.shape-square.selected),.trace-animation.card-selected:has(.shape-circle.selected),.trace-animation.card-selected:has(.shape-triangle.selected),.trace-animation.card-selected:has(.shape-triangle-inverted.selected),.trace-animation.card-selected:has(.shape-circle-triangle.selected),.trace-animation.card-selected:has(.shape-circle-square.selected),.trace-animation.card-selected:has(.shape-hexagon.selected),.trace-animation.card-selected:has(.shape-pentagon.selected){transform:translate(-50%,-45%) scale(.72)}.shape-group{transition:opacity .5s ease,transform .5s ease;pointer-events:none}.shape-group.hidden{opacity:0;pointer-events:none}.shape-group.selected{transform:translate(0);pointer-events:auto}.shape-group.selected .trace-square,.shape-group.selected .trace-circle,.shape-group.selected .trace-triangle,.shape-group.selected .trace-triangle-inverted,.shape-group.selected .trace-circle-triangle,.shape-group.selected .trace-circle-square,.shape-group.selected .trace-hexagon,.shape-group.selected .trace-pentagon{transition:fill .5s ease,stroke .5s ease}.shape-group.selected .trace-square{fill:#ff000026;stroke:red}.shape-group.selected .trace-circle{fill:#00800026;stroke:green;filter:drop-shadow(0 0 3px #008000)}.shape-group.selected .trace-triangle{fill:#cc990026;stroke:#c90}.shape-group.selected .trace-triangle-inverted{fill:#ffa50026;stroke:orange}.shape-group.selected .trace-circle-triangle{fill:#00b8b826;stroke:#00b8b8}.shape-group.selected .trace-circle-square{fill:#ff00ff26;stroke:#f0f}.shape-group.selected .trace-hexagon{fill:#0000ff26;stroke:#00f}.shape-group.selected .trace-pentagon{fill:#00800026;stroke:green}.shape-content{width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding:2rem 2rem 1rem;box-sizing:border-box;opacity:0;transition:opacity .5s ease .3s;pointer-events:auto;text-align:center;margin:0;padding-top:30%}.shape-group.selected .shape-content{justify-content:center;align-items:center;padding-top:1rem;padding:1rem 2rem}.shape-group.selected .shape-content{opacity:1}.shape-group.fading-out .shape-content{justify-content:center;align-items:center;padding-top:1rem;padding:1rem 2rem;opacity:0;transition:opacity .5s ease}.shape-title{font-size:2.5rem;font-weight:600;margin:0 0 1.5rem;text-align:center;color:#000000e6}.shape-description{font-size:1.1rem;line-height:1.6;margin:0;text-align:center;color:#000000b3;max-width:500px}.trace-square{stroke-dasharray:2400;stroke-dashoffset:2400;animation:traceSquare 3s linear forwards;transform-origin:500px 500px;transform:translate(0);transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease;fill:transparent}.trace-square.hovered{stroke:red;fill:#ff00001a}.trace-animation.separated .trace-square{transform:translate(0)}.trace-circle{stroke-dasharray:1884.96;stroke-dashoffset:1884.96;animation:traceCircle 3s linear forwards;transform-origin:500px 500px;transform:rotate(-90deg);transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease,filter .3s ease;fill:transparent}.trace-circle.hovered{stroke:green;fill:#0080001a;filter:drop-shadow(0 0 3px #008000)}.trace-animation.separated .trace-circle{transform:rotate(-90deg) scale(.5774);transform-origin:500px 500px}.trace-triangle{stroke-dasharray:1909.17;stroke-dashoffset:1909.17;animation:traceTriangle 3s linear forwards;transform-origin:500px 500px;transform:translate(0);transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease;fill:transparent}.trace-triangle.hovered{stroke:#c90;fill:#cc99001a}.trace-animation.separated .trace-triangle{transform:translate(0)}.trace-triangle-inverted{stroke-dasharray:1909.17;stroke-dashoffset:1909.17;animation:traceTriangleInverted 3s linear forwards;transform-origin:500px 500px;transform:translate(0);transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease;fill:transparent;opacity:0}.trace-triangle-inverted.hovered{stroke:orange;fill:#ffa5001a}.trace-animation.separated .trace-triangle-inverted{opacity:1;transform:translate(0)}.trace-circle-triangle{stroke-dasharray:2308.57;stroke-dashoffset:2308.57;transform-origin:500px 500px;transform:rotate(-90deg);transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease;opacity:0;fill:transparent}.trace-circle-triangle.hovered{stroke:#00b8b8;fill:#00b8b81a}.trace-animation.separated .trace-circle-triangle{opacity:1;animation:traceCircleTriangle 1s linear forwards;transform:rotate(-90deg)}.trace-outer-gray-circle{stroke-dasharray:2827.43;stroke-dashoffset:2827.43;transform-origin:500px 500px;transform:rotate(-90deg);opacity:0;fill:transparent;animation:traceOuterGrayCircle 2s linear 1s forwards}.trace-circle-square{stroke-dasharray:2664;stroke-dashoffset:2664;transform-origin:500px 500px;transform:rotate(-90deg);transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease;opacity:1;fill:transparent;animation:traceCircleSquare 3s linear forwards}.trace-secure-circle{stroke-dasharray:2827.43;stroke-dashoffset:2827.43;transform-origin:500px 500px;transform:rotate(-90deg);opacity:0;pointer-events:none;transition:opacity .3s ease,stroke .3s ease}.trace-secure-circle.hovered{opacity:1;animation:traceSecureCircle 1s linear forwards}.trace-secure-circle.hovered-square{stroke:red}.trace-secure-circle.hovered-triangle{stroke:#c90}.trace-secure-circle.hovered-triangle-inverted{stroke:orange}.trace-secure-circle.hovered-circle-triangle{stroke:#00b8b8}.trace-secure-circle.hovered-circle-square{stroke:#f0f}.trace-secure-circle.hovered-hexagon{stroke:#00f}.trace-secure-circle.hovered-pentagon{stroke:green}.trace-circle-square.hovered{stroke:#f0f;fill:#ff00ff1a}.trace-animation.separated .trace-circle-square{opacity:1;animation:none;stroke-dashoffset:0;transform:rotate(-90deg)}.trace-animation:not(.separated) .trace-triangle,.trace-animation:not(.separated) .trace-triangle-inverted,.trace-animation:not(.separated) .trace-circle-triangle,.trace-animation:not(.separated) .trace-hexagon,.trace-animation:not(.separated) .trace-pentagon{opacity:0;pointer-events:none}.trace-animation:not(.separated) .shape-triangle,.trace-animation:not(.separated) .shape-triangle-inverted,.trace-animation:not(.separated) .shape-circle-triangle,.trace-animation:not(.separated) .shape-hexagon,.trace-animation:not(.separated) .shape-pentagon{opacity:0;pointer-events:none}.trace-animation:not(.separated) .trace-circle-square{opacity:1}.trace-animation:not(.separated) .shape-circle-square{opacity:1}.trace-animation:not(.separated) .trace-circle{opacity:1}.trace-animation:not(.separated) .shape-circle{opacity:1}.main-view.index .trace-animation.separated .shape-circle-square{opacity:1}.main-view.index .trace-animation.separated .trace-circle-square{opacity:1;animation:traceCircleSquare 1s linear forwards;transform:rotate(-90deg)}.trace-hexagon{stroke-dasharray:2545.84;stroke-dashoffset:2545.84;transform-origin:500px 500px;transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease;fill:transparent;opacity:0}.trace-hexagon.hovered{stroke:#00f;fill:#0000ff1a}.trace-animation.separated .trace-hexagon{opacity:1;animation:traceHexagon 1s linear forwards;transform:translateY(0)}.trace-pentagon{stroke-dasharray:2078.44;stroke-dashoffset:2078.44;transform-origin:500px 500px;transition:transform 1s cubic-bezier(.42,0,1,1),fill .3s ease,stroke .3s ease;fill:transparent;opacity:0}.trace-pentagon.hovered{stroke:green;fill:#0080001a}.trace-animation.separated .trace-pentagon{opacity:1;animation:tracePentagon 1s linear forwards;transform:translateY(0)}@keyframes traceSquare{0%{stroke-dashoffset:2400}to{stroke-dashoffset:0}}@keyframes traceCircle{0%{stroke-dashoffset:1884.96}to{stroke-dashoffset:0}}@keyframes traceTriangle{0%{stroke-dashoffset:1909.17}to{stroke-dashoffset:0}}@keyframes traceTriangleInverted{0%{stroke-dashoffset:1909.17}to{stroke-dashoffset:0}}@keyframes traceCircleTriangle{0%{stroke-dashoffset:2308.57}to{stroke-dashoffset:0}}@keyframes traceOuterGrayCircle{0%{stroke-dashoffset:2827.43;opacity:0}10%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes traceCircleSquare{0%{stroke-dashoffset:2664}to{stroke-dashoffset:0}}@keyframes traceSecureCircle{0%{stroke-dashoffset:2827.43}to{stroke-dashoffset:0}}@keyframes traceHexagon{0%{stroke-dashoffset:2545.84}to{stroke-dashoffset:0}}@keyframes tracePentagon{0%{stroke-dashoffset:2078.44}to{stroke-dashoffset:0}}.logo-container{position:absolute;top:50vh;left:0;right:0;transform:translateY(calc(-50% + .5rem));z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform 1s cubic-bezier(.42,0,1,1) 0s,top 1s cubic-bezier(.42,0,1,1) 0s;will-change:transform,top;backface-visibility:hidden;-webkit-backface-visibility:hidden;pointer-events:none}.main-view.index .logo-container:not(.moved-to-top){transform:translateY(calc(-50% + .5rem))}.logo-container *{pointer-events:none}.logo-container.moved-to-top{top:calc(60px + 2rem);transform:translateY(0)}.main-view.view1 .logo-container.moved-to-top{top:calc(60px + 2rem)}.logo-container.fading-out{animation:fadeOutTitle .3s ease-out forwards}@keyframes fadeOutTitle{0%{opacity:1}to{opacity:0}}.logo-arcs .house-fading-out{opacity:1;transition:opacity .3s ease-out;animation:fadeOutHouse .4s ease-out .7s forwards}@keyframes fadeOutHouse{0%{opacity:1}to{opacity:0}}.app h1{color:#000;font-size:3rem;font-weight:600;margin:0;opacity:0;text-align:center;animation:fadeInLogo .5s ease-in forwards;transition:font-size 1s cubic-bezier(.25,.46,.45,.94);will-change:font-size}.logo-container.moved-to-top .app h1{font-size:2rem}@keyframes fadeInLogo{0%{opacity:0}to{opacity:1}}.reveal-text{color:gray;font-size:1.2rem;margin:.5rem 0 0;opacity:0;text-align:center;clip-path:inset(0 100% 0 0);animation:revealText 3s linear .3s forwards;transition:font-size 1s cubic-bezier(.25,.46,.45,.94),margin-top 1s cubic-bezier(.25,.46,.45,.94);will-change:clip-path,opacity}.logo-container.moved-to-top .reveal-text{font-size:.9rem;margin-top:.25rem}@keyframes revealText{0%{opacity:0;clip-path:inset(0 100% 0 0)}10%{opacity:1}to{opacity:1;clip-path:inset(0 0% 0 0)}}.click-to-start{color:#4102f6;font-size:1rem;margin:2.5rem 0 0;opacity:0;text-align:center;animation:fadeInClick .3s linear 3.3s forwards,glowPulse 2s cubic-bezier(.4,0,.6,1) 3.6s infinite;transition:none;visibility:visible;will-change:opacity}.click-to-start.hidden{opacity:0!important;visibility:hidden;animation:none;pointer-events:none}@keyframes fadeInClick{0%{opacity:0}to{opacity:.2}}@keyframes glowPulse{0%,to{opacity:.2}50%{opacity:.9}}.glass-cards{position:absolute;top:50%;left:50%;transform:translate(-50%,calc(-50% + 2.75rem));z-index:10;display:flex;flex-direction:column;gap:1rem;width:80%;max-width:400px;padding:2rem;opacity:0;animation:fadeInCards .4s cubic-bezier(.4,0,.2,1) 1s forwards;will-change:opacity,transform}.glass-card{background:#ffffffbf;backdrop-filter:blur(40px) saturate(180%);-webkit-backdrop-filter:blur(40px) saturate(180%);border:1px solid rgba(255,255,255,.5);border-radius:12px;padding:1.5rem 2rem;text-align:center;color:#000000d9;font-size:1rem;font-weight:600;letter-spacing:.5px;box-shadow:0 8px 32px #00000026,inset 0 1px #ffffff4d;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease,color .3s ease,background .3s ease;opacity:0;transform:translateY(10px) scale(.95);animation:fadeInCard .5s cubic-bezier(.4,0,.2,1) forwards;cursor:pointer;pointer-events:auto;will-change:opacity,transform}.glass-card:hover{transform:translateY(-2px);box-shadow:0 12px 40px #0000001a}.card-magenta:hover{border-color:#f0f6!important;color:#f0f!important}.card-blue:hover{border-color:#00f6!important;color:#00f!important}.card-turquoise:hover{border-color:#40e0d066!important;color:#40e0d0!important}.card-yellow:hover{border-color:#c906!important;color:#c90!important}.card-black:hover{border-color:#0006!important;color:#000!important}.card-red:hover{border-color:#f006!important;color:red!important}.card-purple:hover{border-color:#80008066!important;color:purple!important}.card-cyan:hover{border-color:#00c8c866!important;color:#00b8b8!important}.card-green:hover{border-color:#00800066!important;color:green!important}.card-orange:hover{border-color:#ffa50066!important;color:orange!important}@keyframes fadeInCards{0%{opacity:0}to{opacity:1}}@keyframes fadeInCard{0%{opacity:0;transform:translateY(10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.back-button{position:absolute;top:50%;left:50%;transform:translate(-50%,calc(-50% - 18rem + 30px));width:50px;height:50px;border-radius:50%;border:2px solid rgba(0,0,0,.2);background:#ffffffe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#000000b3;font-size:1.5rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .3s ease,transform .8s cubic-bezier(.42,0,1,1);box-shadow:0 4px 12px #0000001a;opacity:0;animation:fadeInButton .5s ease .5s forwards}.app:has(.shape-circle-triangle.selected) .back-button,.app:has(.shape-hexagon.selected) .back-button,.app:has(.shape-pentagon.selected) .back-button,.app:has(.shape-triangle.selected) .back-button,.app:has(.shape-triangle-inverted.selected) .back-button,.app:has(.shape-circle-square.selected) .back-button,.app:has(.shape-square.selected) .back-button,.app:has(.shape-circle.selected) .back-button{transform:translate(-50%,calc(-50% - 18rem + 30px))}.back-button:hover{background:#fff;border-color:#0000004d;box-shadow:0 6px 16px #00000026}.app:has(.shape-circle-triangle.selected) .back-button:hover,.app:has(.shape-hexagon.selected) .back-button:hover,.app:has(.shape-pentagon.selected) .back-button:hover,.app:has(.shape-triangle.selected) .back-button:hover,.app:has(.shape-triangle-inverted.selected) .back-button:hover,.app:has(.shape-circle-square.selected) .back-button:hover,.app:has(.shape-square.selected) .back-button:hover,.app:has(.shape-circle.selected) .back-button:hover{transform:translate(-50%,calc(-50% - 18rem + 30px)) scale(1.1)}.back-button:active{transform:translate(-50%,calc(-50% - 18rem + 30px)) scale(.95)}@keyframes fadeInButton{0%{opacity:0;transform:translate(-50%,calc(-50% - 18rem)) translateY(-10px)}to{opacity:1;transform:translate(-50%,calc(-50% - 18rem)) translateY(0)}}.hero-section{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;max-width:800px;width:90%;padding:2rem;pointer-events:none}@media (max-width: 768px){.hero-section{padding:1.5rem}}@media (max-width: 480px){.hero-section{padding:1rem}}.hero-title{font-size:3.5rem;font-weight:600;color:#000;margin:0 0 1.5rem;line-height:1.2;opacity:0;animation:fadeInHero .8s ease-in .3s forwards}@media (max-width: 768px){.hero-title{font-size:2.5rem}}@media (max-width: 480px){.hero-title{font-size:2rem}}.hero-subtitle{font-size:1.5rem;font-weight:400;color:#000000b3;margin:0 0 2.5rem;line-height:1.5;opacity:0;animation:fadeInHero .8s ease-in .6s forwards}@media (max-width: 768px){.hero-subtitle{font-size:1.2rem}}@media (max-width: 480px){.hero-subtitle{font-size:1rem}}.hero-cta{position:relative;padding:1rem 2.5rem;font-size:1.1rem;font-weight:600;color:#000;background:#fff;border:3px solid #ffbc04;border-radius:50px;cursor:pointer;pointer-events:auto;transition:transform .3s ease,box-shadow .3s ease;opacity:0;animation:fadeInHero .8s ease-in .9s forwards;z-index:1}.hero-cta:before{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50px;border:3px solid #fd3aa0;z-index:-1;pointer-events:none}.hero-cta:after{content:"";position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;border-radius:50px;border:3px solid #4102f6;z-index:-2;pointer-events:none}.hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.hero-cta:active{transform:translateY(0)}@keyframes fadeInHero{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem;background-color:red;font-family:Rubik,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;position:relative}.login-card{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:400px;box-shadow:0 10px 40px #0003;border:2px solid #ffd700}.login-card h2{margin:0 0 1.5rem;color:red;text-align:center;font-weight:700;font-size:2rem;background:linear-gradient(135deg,#b8860b,#daa520,#f4a460,gold 45%,gold,gold 55%,#f4a460,#daa520,#b8860b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% 200%;animation:goldenShine 4s ease-in-out infinite}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#555;font-weight:500}.form-group input{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:gold;box-shadow:0 0 0 3px #ffd7001a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#fee;color:#c33;padding:.75rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.submit-button{width:100%;padding:.75rem;background:linear-gradient(135deg,gold,#ffed00,gold);color:#8b6914;border:2px solid #ffd700;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 0 10px #ffd7004d}.submit-button:hover:not(:disabled){background:linear-gradient(135deg,#ffed00,#fff200,#ffed00);box-shadow:0 0 15px #ffd70080;transform:translateY(-2px)}.submit-button:disabled{opacity:.6;cursor:not-allowed}.switch-mode{margin-top:1.5rem;text-align:center}.switch-button{background:none;border:none;color:#b8860b;cursor:pointer;font-size:.9rem;text-decoration:underline;padding:0;transition:color .2s}.switch-button:hover{color:#8b6914}.login-back-button{position:absolute;top:calc(50% - 250px);left:50%;transform:translate(-50%);width:50px;height:50px;border-radius:50%;background-color:#fff;border:2px solid #ffd700;color:#b8860b;font-size:1.5rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s,box-shadow .2s;box-shadow:0 2px 8px #0003;z-index:10;padding:0;line-height:1;margin:0}.login-back-button:before{content:"◀";position:absolute;left:50%;transform:translate(calc(-50% - 1px)) scaleY(.8);color:inherit;font-size:1.125rem;line-height:1}.login-back-button:hover{background-color:gold;color:#8b6914;box-shadow:0 4px 12px #0000004d}@media (max-width: 768px){.login-back-button{top:1rem;left:50%;transform:translate(-50%);width:45px;height:45px;font-size:1.3rem}}.user-profile{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem;background:linear-gradient(135deg,#667eea,#764ba2)}.profile-card{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:500px;box-shadow:0 10px 40px #0000001a}.profile-card h2{margin:0 0 1.5rem;color:#333;text-align:center}.profile-info{margin-bottom:1.5rem}.info-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid #e0e0e0}.info-row:last-child{border-bottom:none}.info-row .label{font-weight:600;color:#555}.info-row .value{color:#333;word-break:break-all}.sign-out-button{width:100%;padding:.75rem;background:#dc3545;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s}.sign-out-button:hover{background:#c82333}.home-container{width:100%;min-height:100vh;background-color:red;display:flex;justify-content:center;align-items:flex-end;padding:2rem;font-family:Rubik,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative}.player-badge{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);width:120px;height:120px;border-radius:50%;background:#fff;border:4px solid #ffd700;display:flex;justify-content:center;align-items:center;box-shadow:0 4px 20px #0000004d;overflow:hidden;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.player-badge:hover{transform:translate(-50%) translateY(-4px);box-shadow:0 6px 24px #0006}.player-badge:active{transform:translate(-50%) translateY(-2px)}.player-badge-photo{width:100%;height:100%;display:flex;justify-content:center;align-items:center;background-color:#f0f0f0}.photo-placeholder{width:100%;height:100%;display:flex;justify-content:center;align-items:center;color:#999}.photo-placeholder svg{width:60px;height:60px}.pause-container{width:100%;min-height:100vh;background-color:#fff;position:relative;display:flex;justify-content:center;align-items:flex-end;padding:2rem;padding-top:80px;font-family:Rubik,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.pause-topbar{position:fixed;top:0;left:0;width:100%;background-color:#dc143c;border-bottom:4px solid #8b0000;box-shadow:0 4px 8px #0000004d,inset 0 1px #fff3;z-index:1000;padding:0;height:70px;display:flex;align-items:center;justify-content:center}.pause-tabs{display:flex;gap:20px;align-items:center;justify-content:center;height:100%}.pause-tab{background-color:#f44;border:3px solid #8b0000;border-radius:8px;color:#fff;font-size:18px;font-weight:700;padding:12px 32px;cursor:pointer;text-transform:uppercase;letter-spacing:1px;font-family:Rubik,sans-serif;box-shadow:0 4px #8b0000,inset 0 2px #ffffff4d,inset 0 -2px #0003;transition:all .1s ease;position:relative;text-shadow:2px 2px 0 rgba(0,0,0,.5);width:140px;min-width:140px;text-align:center;display:flex;align-items:center;justify-content:center}.pause-tab:hover{background-color:#f66;transform:translateY(2px);box-shadow:0 2px #8b0000,inset 0 2px #ffffff4d,inset 0 -2px #0003}.pause-tab:active{transform:translateY(4px);box-shadow:0 0 #8b0000,inset 0 2px #fff3,inset 0 -2px #0000004d}.pause-tab.active{background-color:red;border-color:#fff;box-shadow:0 4px #8b0000,inset 0 2px #fff6,inset 0 -2px #0003,0 0 10px #ffffff4d;animation:nintendo-glow 1.5s ease-in-out infinite}@keyframes nintendo-glow{0%,to{box-shadow:0 4px #8b0000,inset 0 2px #fff6,inset 0 -2px #0003,0 0 10px #ffffff4d}50%{box-shadow:0 4px #8b0000,inset 0 2px #fff6,inset 0 -2px #0003,0 0 15px #ffffff80}}.players-tab-content{width:100%;height:calc(100vh - 160px);display:flex;align-items:center;justify-content:center;position:absolute;top:70px;left:0}.players-grid{position:relative;width:500px;height:500px;display:flex;align-items:center;justify-content:center}.players-circle{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:360px;height:360px;border-radius:50%;border:2px solid rgba(0,0,0,.15);z-index:1;pointer-events:none}.player-badge-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;z-index:10}.player-badge-center .player-badge-photo{width:120px;height:120px;border-radius:50%;background:#fff;border:4px solid #ffd700;display:flex;justify-content:center;align-items:center;box-shadow:0 4px 20px #0000004d;overflow:hidden}.player-name{font-size:32px;font-weight:700;color:#333;font-family:Rubik,sans-serif;text-align:center;text-transform:uppercase;letter-spacing:2px}.player-badge-small{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(var(--angle)) translateY(calc(-1 * var(--radius))) rotate(calc(-1 * var(--angle)));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:5}.player-badge-photo-small{width:80px;height:80px;border-radius:50%;background:#fff;border:3px solid #ffd700;display:flex;justify-content:center;align-items:center;box-shadow:0 3px 15px #00000040;overflow:hidden}.player-name-small{font-size:18px;font-weight:600;color:#333;font-family:Rubik,sans-serif;text-align:center;text-transform:uppercase;letter-spacing:1px;white-space:nowrap}.player-emoji{font-size:60px;line-height:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.player-emoji-small{font-size:40px;line-height:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.manager-tab-content{width:100%;height:calc(100vh - 70px);position:absolute;top:70px;left:0;padding:2rem;overflow-y:auto;background:#f5f5f5;box-sizing:border-box}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:1.5rem;text-align:center;box-shadow:0 2px 8px #0000000d;transition:all .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:gold}.stat-value{font-size:36px;font-weight:700;color:#f44;font-family:Rubik,sans-serif;margin-bottom:.5rem}.stat-label{font-size:14px;font-weight:600;color:#666;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:1px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:2rem}.dashboard-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:visible;display:flex;flex-direction:column}.dashboard-card-header{background:linear-gradient(135deg,#f44,#c00);padding:1.25rem 1.5rem;border-bottom:3px solid #8b0000}.dashboard-card-title{font-size:20px;font-weight:700;color:#fff;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:1px;margin:0}.dashboard-card-content{padding:1.5rem;flex:1;overflow-y:auto;overflow-x:visible;position:relative}.players-grid-manager{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.player-card{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:10px;padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;transition:all .2s ease;position:relative}.player-card:hover{border-color:gold;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.player-card-badge{width:70px;height:70px;border-radius:50%;background:#fff;border:3px solid #ffd700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a}.clickable-emoji{cursor:pointer;transition:all .2s ease}.clickable-emoji:hover{transform:scale(1.1);filter:brightness(1.1)}.player-emoji-card{font-size:40px;line-height:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.photo-placeholder-card{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#999}.player-card-info{text-align:center;width:100%}.player-card-name{font-size:16px;font-weight:600;color:#333;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.player-card-main{font-size:11px;font-weight:500;color:gold;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:.5px}.emoji-picker-container-card{position:fixed;z-index:1000;margin-top:.5rem;border:2px solid #ffd700;border-radius:10px;padding:1rem;background:#fff;box-shadow:0 4px 16px #00000026;max-width:400px;max-height:500px;overflow-y:auto}.house-card{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:10px;padding:1.5rem;margin-bottom:1.5rem;transition:all .2s ease}.house-card:last-child{margin-bottom:0}.house-card:hover{border-color:gold;box-shadow:0 4px 12px #0000001a}.house-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid #e0e0e0}.house-card-name-wrapper{display:flex;align-items:center;gap:.75rem}.house-emoji{font-size:32px;line-height:1;display:flex;align-items:center;justify-content:center}.house-card-name{font-size:18px;font-weight:700;color:#333;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:1px;margin:0}.house-card-stats{font-size:12px;font-weight:600;color:#666;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:.5px;background:#e0e0e0;padding:4px 12px;border-radius:12px}.floor-section-card{margin-bottom:1.5rem}.floor-section-card:last-child{margin-bottom:0}.floor-header-card{font-size:14px;font-weight:600;color:#666;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem;padding-left:.75rem;border-left:3px solid #ffd700}.rooms-grid-card{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;position:relative}.room-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:.75rem;transition:all .2s ease;cursor:pointer;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}.room-card:hover{background:#fff9e6;border-color:gold;transform:translateY(-2px);box-shadow:0 2px 8px #0000001a}.room-emoji{font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}.room-card-name{font-size:13px;font-weight:600;color:#333;font-family:Rubik,sans-serif;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.room-card-type{font-size:11px;font-weight:400;color:#666;font-family:Rubik,sans-serif;text-transform:lowercase}.task-form{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:2px solid #e0e0e0}.task-input{width:100%;padding:.75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:14px;font-family:Rubik,sans-serif;transition:border-color .2s ease}.task-input:focus{outline:none;border-color:gold}.task-assignments{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.task-select{padding:.5rem;border:2px solid #e0e0e0;border-radius:6px;font-size:12px;font-family:Rubik,sans-serif;background:#fff;cursor:pointer;transition:border-color .2s ease}.task-select:focus{outline:none;border-color:gold}.task-create-button{background-color:#f44;border:2px solid #8b0000;border-radius:6px;color:#fff;font-size:14px;font-weight:600;padding:.75rem;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;font-family:Rubik,sans-serif;transition:all .1s ease}.task-create-button:hover{background-color:#f66;transform:translateY(-1px)}.tasks-list{display:flex;flex-direction:column;gap:.75rem}.tasks-empty{text-align:center;color:#999;font-size:14px;font-family:Rubik,sans-serif;padding:2rem}.task-item{background:#f9f9f9;border:2px solid #e0e0e0;border-radius:8px;padding:1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;transition:all .2s ease}.task-item:hover{border-color:gold;box-shadow:0 2px 8px #0000001a}.task-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.task-title{font-size:14px;font-weight:600;color:#333;font-family:Rubik,sans-serif;text-transform:uppercase;letter-spacing:.5px}.task-assignment{font-size:11px;font-weight:400;color:#666;font-family:Rubik,sans-serif}.task-actions{display:flex;gap:.5rem}.task-edit-button,.task-delete-button{padding:.5rem .75rem;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;font-family:Rubik,sans-serif;transition:all .1s ease;border:2px solid}.task-edit-button{background-color:gold;border-color:#ca0;color:#333}.task-edit-button:hover{background-color:#ffed4e;transform:translateY(-1px)}.task-delete-button{background-color:#f44;border-color:#8b0000;color:#fff}.task-delete-button:hover{background-color:#f66;transform:translateY(-1px)}.task-edit-form{width:100%;display:flex;flex-direction:column;gap:.75rem}.task-edit-input{width:100%;padding:.75rem;border:2px solid #ffd700;border-radius:6px;font-size:14px;font-family:Rubik,sans-serif}.task-edit-input:focus{outline:none;border-color:gold}.task-edit-assignments{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.task-select-small{padding:.4rem;border:2px solid #e0e0e0;border-radius:6px;font-size:11px;font-family:Rubik,sans-serif;background:#fff;cursor:pointer;transition:border-color .2s ease}.task-select-small:focus{outline:none;border-color:gold}.wondershelter-container{width:100%;height:100vh;background-color:red;display:flex;justify-content:center;align-items:center;font-family:Rubik,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;position:relative}.wondershelter-outer-circle{width:800px;height:800px;min-height:800px;border:24px solid #ffffff;border-radius:50%;display:flex;justify-content:center;align-items:center;box-sizing:border-box;position:relative}.wondershelter-circle{width:650px;height:650px;min-height:650px;border:4px solid #ffd700;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;box-sizing:border-box;overflow:visible;background-color:transparent;position:relative;box-shadow:0 0 15px #ffd70040,0 2px 6px #00000026;animation:circleShine 4s ease-in-out infinite}.wondershelter-circle-content{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;position:relative}.wondershelter-circle-content .wondershelter-title{margin:0;position:absolute;top:50%;transform:translateY(-50%)}.wondershelter-circle-content .wondershelter-login-button{margin-top:auto;position:relative;top:calc(50% + 5rem)}.wondershelter-circle:before{content:"";position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;border-radius:50%;background:linear-gradient(135deg,gold,#ffed00 20%,#ffeb3b,#fff200,#ffeb3b,#ffed00 80%,gold);background-size:200% 200%;z-index:-1;animation:borderShine 4s ease-in-out infinite;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;padding:4px}@keyframes borderShine{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes circleShine{0%,to{box-shadow:0 0 15px #ffd70040,0 2px 6px #00000026}50%{box-shadow:0 0 20px #ffd70059,0 2px 8px #0003}}.wondershelter-title{color:gold;font-size:4rem;font-weight:700;text-align:center;letter-spacing:normal;margin:0;flex-shrink:0;font-family:Rubik,sans-serif;background:linear-gradient(135deg,gold,#ffed00,#ffeb3b,#fff200 45%,#ffeb3b,#fff200 55%,#ffeb3b,#ffed00,gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% 200%;text-shadow:0 0 8px rgba(255,215,0,.8),0 0 16px rgba(255,215,0,.6),0 0 24px rgba(255,215,0,.4),0 2px 4px rgba(0,0,0,.3);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) drop-shadow(0 0 12px rgba(255,215,0,.6));animation:goldenShine 4s ease-in-out infinite,glowBreathe 3s ease-in-out infinite;position:relative}@keyframes goldenShine{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes glowBreathe{0%,to{text-shadow:0 0 8px rgba(255,215,0,.8),0 0 16px rgba(255,215,0,.6),0 0 24px rgba(255,215,0,.4),0 2px 4px rgba(0,0,0,.3);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) drop-shadow(0 0 12px rgba(255,215,0,.6))}50%{text-shadow:0 0 12px rgba(255,215,0,1),0 0 24px rgba(255,215,0,.8),0 0 36px rgba(255,215,0,.6),0 2px 4px rgba(0,0,0,.3);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) drop-shadow(0 0 18px rgba(255,215,0,.8))}}.wondershelter-login-button{background-color:#fff;color:red;border:2px solid #ffffff;border-radius:8px;padding:1rem 2.5rem;font-size:1.2rem;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit;letter-spacing:.05em;margin-top:0;display:block;visibility:visible;opacity:1}.wondershelter-login-button:hover{background-color:transparent;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.wondershelter-login-button:active{transform:translateY(0)}@media (max-width: 768px){.wondershelter-outer-circle{width:640px;height:640px;border-width:18px}.wondershelter-circle{width:520px;height:520px;border-width:3px}.wondershelter-title{font-size:2.5rem}}@media (max-width: 480px){.wondershelter-outer-circle{width:480px;height:480px;border-width:15px}.wondershelter-circle{width:390px;height:390px;border-width:2px;padding:1.5rem}.wondershelter-title{font-size:2rem}}.wondershelter-nav{position:absolute;top:2rem;right:2rem;z-index:10}.wondershelter-nav-link{color:#fff;text-decoration:none;font-size:1.2rem;font-weight:500;padding:.75rem 1.5rem;border:2px solid #ffffff;border-radius:8px;transition:all .2s;background-color:#ffffff1a}.wondershelter-nav-link:hover{background-color:#fff3;transform:translateY(-2px)}@media (max-width: 768px){.wondershelter-nav{top:1rem;right:1rem}.wondershelter-nav-link{font-size:1rem;padding:.5rem 1rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh}
