@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Crimson+Text:wght@400;600&display=swap);.level-node{border-radius:clamp(8px,2vw,12px);cursor:pointer;height:clamp(60px,15vw,90px);position:absolute;touch-action:manipulation;transform:translate(-50%,-50%);transition:all .3s ease;-webkit-user-select:none;user-select:none;width:clamp(60px,15vw,90px);z-index:10}.level-node.locked{background:linear-gradient(135deg,#ebe5db,#ddd4c7);border:clamp(1px,.3vw,2px) solid #b8a890;box-shadow:0 clamp(2px,.8vw,6px) clamp(4px,1.5vw,10px) #2c241914;cursor:not-allowed}.level-node.unlocked{animation:subtlePulse 3s infinite;background:linear-gradient(135deg,#8b7355,#6b5b47);border:clamp(1px,.3vw,2px) solid #5a4a3a;box-shadow:0 clamp(3px,1vw,8px) clamp(6px,2.5vw,15px) #2c241926}.level-node.completed{background:linear-gradient(135deg,#9d8b73,#8b7355);border:clamp(1px,.3vw,2px) solid #6b5b47;box-shadow:0 clamp(3px,1vw,8px) clamp(6px,2.5vw,15px) #9b8b7340}@keyframes subtlePulse{0%,to{box-shadow:0 clamp(3px,1vw,8px) clamp(6px,2.5vw,15px) #2c241926;transform:translate(-50%,-50%) scale(1)}50%{box-shadow:0 clamp(4px,1.2vw,10px) clamp(8px,3vw,18px) #2c241933;transform:translate(-50%,-50%) scale(1.01)}}.node-content{flex-direction:column;height:100%;padding:clamp(4px,1vw,8px);position:relative}.character-container,.node-content{align-items:center;display:flex;justify-content:center}.character-container{height:70%;width:100%}.character-container,.node-icon{margin-bottom:clamp(2px,.5vw,4px)}.node-icon{font-size:clamp(1.2rem,3.5vw,2rem);opacity:.8}.node-number{background:#2c24194d;border-radius:clamp(2px,.5vw,4px);color:#faf8f5;font-family:Playfair Display,serif;font-size:clamp(.7rem,2.2vw,1.1rem);font-weight:600;letter-spacing:.02em;min-width:clamp(18px,4vw,24px);padding:clamp(1px,.3vw,3px) clamp(4px,1vw,6px);text-align:center;text-shadow:1px 1px 2px #0000004d}.friend-indicators{flex-wrap:wrap;gap:clamp(1px,.5vw,3px);max-width:clamp(25px,6vw,35px);position:absolute;right:clamp(-8px,-2vw,-5px);top:clamp(-8px,-2vw,-5px)}.friend-indicator{align-items:center;background:#faf8f5f2;border:1px solid #2c241933;box-shadow:0 1px 3px #2c241914;display:flex;font-size:clamp(.5rem,1.5vw,.8rem);height:clamp(12px,3vw,18px);justify-content:center;width:clamp(12px,3vw,18px)}.completion-badge{background:#8b7355;border-radius:2px;box-shadow:0 2px 6px #2c241926;color:#faf8f5;font-family:Playfair Display,serif;font-size:clamp(.7rem,2.2vw,1rem);font-weight:400;height:clamp(16px,4.5vw,24px);right:clamp(-10px,-2.5vw,-6px);top:clamp(-10px,-2.5vw,-6px);width:clamp(16px,4.5vw,24px);z-index:11}.completion-badge,.lock-overlay{align-items:center;display:flex;justify-content:center;position:absolute}.lock-overlay{background:#00000080;border-radius:clamp(8px,2vw,12px);font-size:1.2rem;height:100%;left:0;top:0;width:100%;z-index:12}.node-title{background:#faf8f5f2;border:1px solid #c7b59b33;border-radius:2px;bottom:clamp(-45px,-8vw,-35px);box-shadow:0 2px 8px #2c24191a;color:#2c2419;font-family:Crimson Text,serif;font-size:clamp(.65rem,1.6vw,.85rem);font-weight:400;left:50%;letter-spacing:.02em;opacity:0;padding:clamp(4px,1vw,8px) clamp(8px,2vw,14px);pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .3s ease;white-space:nowrap}.level-node:hover .node-title{opacity:1}.level-node.locked:hover .node-title{opacity:.7}.level-node[data-type=grand-finale].unlocked{animation:luxuryShimmer 4s linear infinite;background:linear-gradient(135deg,#a6956b,#8b7355);border-color:#6b5b47}@keyframes luxuryShimmer{0%,to{box-shadow:0 clamp(3px,1vw,8px) clamp(6px,2.5vw,15px) #2c241926}50%{box-shadow:0 clamp(4px,1.2vw,10px) clamp(8px,3vw,18px) #a6956b40}}.level-node:active{transform:translate(-50%,-50%) scale(.98)}@media (max-width:430px){.level-node{border-radius:clamp(6px,1.5vw,10px);height:clamp(50px,12vw,70px);width:clamp(50px,12vw,70px)}.node-content{padding:clamp(3px,.8vw,6px)}.character-container{height:65%}.character-container,.node-icon{margin-bottom:clamp(1px,.3vw,3px)}.node-icon{font-size:clamp(1rem,2.8vw,1.6rem)}.node-number{border-radius:clamp(2px,.4vw,3px);font-size:clamp(.6rem,1.8vw,.9rem);min-width:clamp(16px,3.5vw,22px);padding:clamp(1px,.2vw,2px) clamp(3px,.8vw,5px)}.friend-indicators{gap:clamp(1px,.3vw,2px);max-width:clamp(20px,5vw,30px);right:clamp(-6px,-1.5vw,-4px);top:clamp(-6px,-1.5vw,-4px)}.friend-indicator{border-radius:1px;font-size:clamp(.4rem,1.2vw,.7rem);height:clamp(10px,2.5vw,16px);width:clamp(10px,2.5vw,16px)}.completion-badge{border-radius:1px;font-size:clamp(.6rem,1.8vw,.9rem);height:clamp(14px,3.8vw,22px);right:clamp(-8px,-2vw,-5px);top:clamp(-8px,-2vw,-5px);width:clamp(14px,3.8vw,22px)}.lock-overlay{border-radius:clamp(6px,1.5vw,10px);font-size:clamp(1rem,2.8vw,1.4rem)}.node-title{border-radius:1px;bottom:clamp(-35px,-7vw,-30px);font-size:clamp(.6rem,1.4vw,.8rem);padding:clamp(3px,.8vw,6px) clamp(6px,1.5vw,12px)}.level-node{min-height:44px;min-width:44px}.level-node.completed,.level-node.unlocked{box-shadow:0 clamp(2px,.8vw,6px) clamp(4px,2vw,12px) #2c241926}.level-node.locked{box-shadow:0 clamp(1px,.6vw,4px) clamp(3px,1.2vw,8px) #2c241914}}@media (min-width:431px) and (max-width:768px){.level-node{height:clamp(55px,14vw,80px);width:clamp(55px,14vw,80px)}.node-title{bottom:clamp(-40px,-7vw,-32px)}}.chibi-character{height:clamp(55px,12vw,80px);pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:clamp(55px,12vw,80px);will-change:transform;z-index:100}.character-sprite{align-items:center;animation:characterBreathe 4s ease-in-out infinite;display:flex;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));justify-content:center;position:relative;will-change:transform;z-index:101}.character-sprite-svg{height:100%;width:100%}.character-sprite-svg,.character-sprite-svg>div{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}@keyframes characterBreathe{0%,to{transform:scaleX(1)}50%{transform:scale3d(1.03,1.03,1)}}.character-shadow{animation:shadowPulse 4s ease-in-out infinite;background:#0000004d;border-radius:50%;bottom:-5px;height:clamp(6px,1.5vw,12px);left:50%;position:absolute;transform:translateX(-50%);width:clamp(20px,6vw,35px);will-change:transform,opacity;z-index:99}@keyframes shadowPulse{0%,to{opacity:.3;transform:translateX(-50%) scaleX(1)}50%{opacity:.4;transform:translateX(-50%) scale3d(1.05,1.05,1)}}.character-name{animation:nameBob 3s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#faf8f5f2;border:1px solid #c7b59b4d;border-radius:2px;bottom:clamp(-35px,-7vw,-25px);box-shadow:0 2px 6px #2c24191a;color:#2c2419;font-family:Playfair Display,serif;font-size:clamp(.6rem,1.8vw,.8rem);font-weight:400;left:50%;letter-spacing:.02em;padding:clamp(3px,1vw,6px) clamp(6px,2vw,12px);position:absolute;transform:translateX(-50%);white-space:nowrap;will-change:transform;z-index:102}@keyframes nameBob{0%,to{transform:translate3d(-50%,0,0)}50%{transform:translate3d(-50%,-3px,0)}}.sparkle-effects{height:clamp(50px,15vw,80px);left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);width:clamp(50px,15vw,80px);will-change:transform;z-index:98}.sparkle{animation-timing-function:ease-in-out;font-size:clamp(.8rem,2.5vw,1.4rem);position:absolute;will-change:transform,opacity}.sparkle:first-child{left:10px;top:10px}.sparkle:nth-child(2){right:10px;top:10px}.sparkle:nth-child(3){bottom:10px;left:10px}.chibi-character.moving{animation:characterMove .6s ease-in-out}@keyframes characterMove{0%,to{transform:translate3d(-50%,-50%,0) scaleX(1) rotate(0deg)}25%{transform:translate3d(-50%,-50%,0) scale3d(1.05,1.05,1) rotate(2deg)}50%{transform:translate3d(-50%,-50%,0) scale3d(1.02,1.02,1) rotate(-2deg)}75%{transform:translate3d(-50%,-50%,0) scale3d(1.05,1.05,1) rotate(2deg)}}.chibi-character.celebrating{animation:celebration 1.2s ease-in-out}@keyframes celebration{0%,to{transform:translate3d(-50%,-50%,0) scaleX(1) rotate(0deg)}25%{transform:translate3d(-50%,-50%,0) scale3d(1.15,1.15,1) rotate(8deg)}50%{transform:translate3d(-50%,-50%,0) scale3d(1.2,1.2,1) rotate(-8deg)}75%{transform:translate3d(-50%,-50%,0) scale3d(1.15,1.15,1) rotate(8deg)}}.chibi-character.celebrating .sparkle-effects{animation:sparkleBoost 1.2s ease-in-out}@keyframes sparkleBoost{0%,to{opacity:1;transform:translate3d(-50%,-50%,0) scaleX(1)}50%{opacity:1;transform:translate3d(-50%,-50%,0) scale3d(1.3,1.3,1)}}.chibi-character[data-stage=beginning] .character-sprite{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) hue-rotate(0deg)}.chibi-character[data-stage=middle] .character-sprite{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) hue-rotate(120deg)}.chibi-character[data-stage=end] .character-sprite{animation:characterBreathe 3s ease-in-out infinite,rainbow 5s linear infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) hue-rotate(240deg)}@keyframes rainbow{0%{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) hue-rotate(0deg)}to{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3)) hue-rotate(1turn)}}@media (max-width:430px){.chibi-character{height:clamp(65px,15vw,85px);width:clamp(65px,15vw,85px)}.character-shadow{bottom:-4px;height:clamp(8px,2vw,14px);width:clamp(28px,7vw,40px)}.character-name{border-radius:6px;bottom:clamp(-35px,-8vw,-25px);font-family:Playfair Display,serif;font-size:clamp(.7rem,1.8vw,.9rem);font-weight:400;padding:clamp(4px,1.2vw,6px) clamp(8px,2vw,12px)}.sparkle{font-size:clamp(1rem,2.5vw,1.4rem)}.sparkle:first-child{right:clamp(-12px,-3vw,-8px);top:clamp(-12px,-3vw,-8px)}.sparkle:nth-child(2){left:clamp(-10px,-2.5vw,-6px);top:clamp(-10px,-2.5vw,-6px)}.sparkle:nth-child(3){bottom:clamp(-12px,-3vw,-8px);right:clamp(-4px,-1vw,-2px)}.sparkle-effects{height:clamp(75px,18vw,100px);width:clamp(75px,18vw,100px)}}@media (min-width:431px) and (max-width:768px){.chibi-character{height:clamp(60px,12vw,75px);width:clamp(60px,12vw,75px)}.character-name{bottom:clamp(-38px,-7vw,-28px);font-family:Playfair Display,serif;font-weight:400}.character-shadow{height:clamp(7px,1.8vw,12px);width:clamp(25px,6vw,35px)}.sparkle-effects{height:clamp(70px,16vw,90px);width:clamp(70px,16vw,90px)}}.level-map{background:linear-gradient(135deg,#fefcfa,#f8f5f0 30%,#f0ebe1 70%,#ebe5db);border:1px solid #c7b59b33;border-radius:clamp(2px,1vw,8px);box-shadow:0 clamp(6px,1.5vw,12px) clamp(16px,4vw,32px) #2c241914;height:clamp(50vh,70vh,80vh);margin:0 auto;max-width:100vw;min-height:clamp(400px,50vh,600px);overflow:hidden}.level-map,.map-container{position:relative;width:100%}.map-container{animation:subtleFloat 40s ease-in-out infinite;background-image:radial-gradient(circle at 20% 50%,#c7b59b14 1px,#0000 0),radial-gradient(circle at 80% 50%,#8b73550a .5px,#0000 0);background-size:120px 120px,60px 60px;height:100%}@keyframes subtleFloat{0%,to{background-position:0 0,0 0}50%{background-position:120px 0,-60px 0}}.level-path{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.level-path polyline{stroke:#c7b59b;stroke-width:clamp(1.5,.4vw,2.5);stroke-dasharray:none;stroke-linecap:round;stroke-linejoin:round;opacity:.25}.level-modal{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#2c2419bf;display:flex;height:100vh;justify-content:center;left:0;padding:16px;position:fixed;top:0;width:100vw;z-index:1000}.level-modal-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#faf8f5fa;border:1px solid #c7b59b4d;border-radius:clamp(4px,1.5vw,12px);box-shadow:0 clamp(16px,4vw,28px) clamp(32px,6vw,48px) #2c24191f;font-family:Crimson Text,serif;max-height:clamp(70vh,85vh,90vh);max-width:clamp(300px,90vw,500px);overflow-y:auto;padding:clamp(20px,5vw,40px);position:relative;width:100%}.close-button{align-items:center;background:#8b7355;border:none;border-radius:2px;color:#faf8f5;cursor:pointer;display:flex;font-family:Playfair Display,serif;font-size:clamp(11px,2.2vw,14px);font-weight:400;height:clamp(26px,5vw,36px);justify-content:center;position:absolute;right:clamp(12px,3vw,20px);top:clamp(12px,3vw,20px);transition:all .3s ease;width:clamp(26px,5vw,36px)}.close-button:hover{background:#6b5b47;transform:scale(1.03)}.level-modal-content h2{color:#2c2419;font-family:Playfair Display,serif;font-size:clamp(1.4rem,4vw,2rem);margin-bottom:clamp(16px,4vw,24px)}.level-description,.level-modal-content h2{font-weight:400;letter-spacing:.02em;text-align:center}.level-description{color:#6b5b47;font-size:clamp(.95rem,2.5vw,1.1rem);line-height:1.7;margin-bottom:clamp(20px,5vw,32px)}.friend-requirement{background:#f1f5f9cc;border:1px solid #e2e8f080;border-radius:12px;margin:24px 0;padding:24px}.friend-requirement h3{color:#1e293b;font-size:1.125rem;font-weight:600;margin-bottom:12px}.required-friends{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.required-friend{background:#ffffffe6;border:1px solid;border-radius:12px;font-size:.875rem;font-weight:500;padding:8px 16px}.friend-hint{color:#64748b;font-size:.875rem;font-style:italic;line-height:1.5}.level-actions{margin-top:32px}.code-input-section{display:flex;flex-direction:column;gap:16px}.code-input-section label{color:#1e293b;font-size:.875rem;font-weight:600;letter-spacing:.025em}.code-input{background:#fffffff2;border:1px solid #cbd5e1;border-radius:8px;font-family:Inter,sans-serif;font-size:1rem;padding:16px;transition:all .2s ease}.code-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.continue-button,.start-puzzle-button,.submit-code-button{background:#2c2419;border:1px solid #2c2419;border-radius:2px;box-shadow:none;color:#faf8f5;cursor:pointer;font-family:Playfair Display,serif;font-size:clamp(.8rem,2.2vw,1rem);font-weight:400;letter-spacing:.1em;padding:clamp(14px,3.5vw,20px) clamp(20px,5vw,32px);text-transform:uppercase;transition:all .3s ease;width:100%}.continue-button:hover,.start-puzzle-button:hover,.submit-code-button:hover{background:#faf8f5;border:1px solid #2c2419;color:#2c2419}.level-modal-content h2{font-size:1.5rem;margin-bottom:12px}.level-description{font-size:.9rem;margin-bottom:20px}.required-friends{justify-content:center}.friend-requirement{margin:16px 0;padding:16px}.level-actions{margin-top:24px}.code-input{border-radius:clamp(6px,2vw,10px);font-size:clamp(14px,3.5vw,18px);padding:clamp(12px,3vw,18px)}.continue-button,.start-puzzle-button,.submit-code-button{font-size:.9rem;min-height:44px;padding:14px 20px}.challenge-container{width:100%}.challenge-content{text-align:left}.challenge-content h3{color:#1e293b;font-size:clamp(1.2rem,4vw,1.8rem);font-weight:700;margin-bottom:clamp(12px,3vw,20px);text-align:center}.intro-rules{background:#f1f5f9cc;border-radius:12px;margin:16px 0;padding:16px}.intro-rules h4{color:#1e293b;font-size:1rem;font-weight:600;margin-bottom:8px}.intro-rules ul{margin:0;padding-left:20px}.intro-rules li{color:#475569;line-height:1.5;margin:8px 0}.friend-section{background:#f1f5f9cc;border-radius:12px;margin:16px 0;padding:16px}.friend-instruction{color:#64748b;font-style:italic;margin-bottom:12px}.puzzle-section{background:#f1f5f9cc;border-radius:12px;margin:16px 0;padding:16px}.puzzle-question{background:#fffc;border-left:4px solid #3b82f6;border-radius:8px;color:#1e293b;font-size:1.1rem;font-weight:500;line-height:1.6;margin:12px 0;padding:12px}.hint-box{background:#fde04733;border:1px solid #f59e0b4d;border-radius:8px;margin:12px 0;padding:12px}.hint-box p{color:#92400e;font-size:.9rem;margin:4px 0}.challenge-button{background:linear-gradient(135deg,#0f172a,#1e293b);border:none;border-radius:clamp(6px,2vw,10px);box-shadow:0 clamp(3px,1vw,6px) clamp(8px,2vw,15px) #00000026;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:clamp(.8rem,2.2vw,1.1rem);font-weight:600;letter-spacing:.025em;margin-top:clamp(12px,3vw,20px);min-height:clamp(40px,8vw,50px);padding:clamp(12px,3vw,18px) clamp(16px,4vw,24px);transition:all .2s ease;width:100%}.challenge-button:hover:not(:disabled){background:linear-gradient(135deg,#1e293b,#334155);box-shadow:0 8px 24px #0003;transform:translateY(-1px)}.challenge-button:active{transform:translateY(0) scale(.98)}.challenge-button:disabled{cursor:not-allowed;opacity:.5}.hint-button{background:#3b82f61a;border:1px solid #3b82f64d;border-radius:6px;color:#3b82f6;cursor:pointer;font-size:.8rem;margin-top:12px;min-height:36px;padding:8px 16px;width:100%}.hint-button:hover{background:#3b82f633}.finale-section,.multi-friend-section{margin:16px 0}.finale-button{animation:finaleGlow 2s ease-in-out infinite alternate;background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important;font-size:1rem!important;padding:16px 20px!important}@keyframes finaleGlow{0%{box-shadow:0 4px 12px #8b5cf64d}to{box-shadow:0 8px 24px #8b5cf699}}@media (max-width:430px){.level-map{border-radius:4px;height:clamp(45vh,60vh,70vh);margin:8px;min-height:380px}.level-modal{padding:12px}.level-modal-content{border-radius:6px;max-height:85vh;max-height:calc(100vh - 40px);padding:20px 16px}.level-modal-content h2{font-size:1.5rem;margin-bottom:16px}.level-description{font-size:.95rem;margin-bottom:20px}.close-button{font-size:12px;height:32px;right:12px;top:12px;width:32px}.friend-requirement{border-radius:6px;margin:16px 0;padding:16px}.friend-requirement h3{font-size:1rem;margin-bottom:10px}.required-friends{gap:6px;justify-content:flex-start}.required-friend{border-radius:4px;font-size:.8rem;padding:6px 12px}.code-input{border-radius:4px;font-size:16px;min-height:44px;padding:12px}.continue-button,.start-puzzle-button,.submit-code-button{border-radius:4px;font-size:.9rem;min-height:48px;padding:14px 20px}.challenge-content h3{font-size:1.3rem;margin-bottom:12px}.friend-section,.intro-rules,.puzzle-section{border-radius:6px;margin:14px 0;padding:14px}.puzzle-question{border-radius:6px;font-size:1rem;padding:12px}.hint-box{border-radius:4px;margin:10px 0;padding:10px}.hint-button{border-radius:4px;font-size:.8rem;min-height:40px;padding:10px 16px}.finale-section{margin:12px 0}.code-input-section{gap:12px}.code-input-section label{font-size:.85rem}}@media (min-width:431px) and (max-width:768px){.level-modal-content{max-width:500px;padding:24px 20px}.close-button{right:16px;top:16px}}.app{background:linear-gradient(135deg,#faf8f5,#f5f1eb 30%,#ede7dd 70%,#e8e0d4);background-attachment:fixed;color:#2c2419;font-family:Crimson Text,Georgia,serif;font-weight:400;letter-spacing:.02em;min-height:100vh;min-height:100svh;overflow-x:hidden;overscroll-behavior:none;touch-action:manipulation}.welcome-screen{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.welcome-content{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fefcf9f2;border:1px solid #c7b59b33;border-radius:2px;box-shadow:0 32px 64px #2c241914;max-width:650px;padding:clamp(40px,8vw,80px) clamp(30px,6vw,60px);position:relative;text-align:center}.welcome-title{color:#2c2419;font-family:Playfair Display,serif;font-size:clamp(2rem,6vw,3.2rem);font-weight:400;letter-spacing:.01em;line-height:1.15;margin-bottom:clamp(20px,4vw,32px);text-transform:none}.welcome-subtitle{color:#6b5b47;font-size:clamp(1rem,2.5vw,1.25rem);font-style:italic;font-weight:400;line-height:1.6;margin-bottom:clamp(32px,6vw,50px)}.adventure-preview{background:#f8f5f099;border:1px solid #c7b59b4d;border-left:none;border-radius:0;border-right:none;margin:clamp(24px,5vw,40px) 0;padding:clamp(24px,5vw,40px)}.adventure-preview p{color:#5a4a3a;letter-spacing:.02em;line-height:1.7;margin:clamp(8px,2vw,16px) 0}.adventure-preview p,.start-button{font-size:clamp(.9rem,2.2vw,1.1rem);font-weight:400}.start-button{background:#2c2419;border:1px solid #2c2419;border-radius:0;box-shadow:none;color:#faf8f5;cursor:pointer;font-family:Playfair Display,serif;letter-spacing:.1em;overflow:hidden;padding:clamp(12px,3vw,18px) clamp(32px,6vw,48px);position:relative;text-transform:uppercase;transition:all .3s ease}.start-button:hover{background:#faf8f5;border:1px solid #2c2419;color:#2c2419}.app-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fefcf9f2;border-bottom:1px solid #c7b59b33;box-shadow:none;color:#2c2419;display:flex;justify-content:space-between;padding:clamp(20px,4vw,36px) clamp(24px,5vw,50px)}.app-header h1{font-family:Playfair Display,serif;font-size:clamp(1.3rem,3.5vw,1.8rem);margin:0}.app-header h1,.progress-info{font-weight:400;letter-spacing:.02em}.progress-info{align-items:center;color:#6b5b47;display:flex;font-size:clamp(.8rem,2vw,.95rem);gap:clamp(16px,4vw,28px)}.friend-indicators{align-items:center;display:flex;gap:clamp(6px,1.5vw,10px)}.friend-indicator{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#f8f5f0e6;border:1px solid #c7b59b4d;border-radius:2px;color:#6b5b47;font-family:Playfair Display,serif;font-size:clamp(.7rem,1.8vw,.9rem);font-weight:400;letter-spacing:.02em;padding:clamp(3px,.8vw,6px) clamp(6px,1.5vw,10px);text-transform:uppercase}.app-main{flex:1 1;padding:clamp(12px,3vw,24px)}@media (max-width:430px){.welcome-screen{min-height:100vh;min-height:100svh;padding:16px}.welcome-content{max-width:100%;padding:32px 20px;width:100%}.welcome-title{font-size:1.8rem;line-height:1.2;margin-bottom:16px}.welcome-subtitle{font-size:1rem;margin-bottom:24px}.adventure-preview{margin:20px 0;padding:20px 16px}.adventure-preview p{font-size:.9rem;margin:6px 0}.start-button{font-size:.9rem;min-height:48px;padding:14px 28px;width:100%}.app-header{flex-direction:column;gap:12px;padding:calc(16px + env(safe-area-inset-top)) 16px 12px;text-align:center}.app-header h1{font-size:1.4rem;margin:0}.progress-info{align-items:center;flex-direction:row;font-size:.85rem;gap:16px;justify-content:center}.friend-indicators{gap:6px}.friend-indicator{align-items:center;display:flex;font-size:.7rem;justify-content:center;min-height:24px;min-width:24px;padding:4px 8px}.app-main{padding:12px 16px calc(12px + env(safe-area-inset-bottom))}}@media (min-width:431px) and (max-width:768px){.app-header{align-items:center;flex-direction:row;justify-content:space-between;padding:20px 24px}.progress-info{flex-direction:row;gap:20px}}.start-button:active{transform:scale(.98)}
/*# sourceMappingURL=main.ec638d27.css.map*/