:root{--cute-pink:#ffb6c1;--cute-pink-light:pink;--cute-cream:#fff5ee;--cute-lavender:#e6e6fa;--cute-mint:#98fb98;--cute-peach:#ffdab9;--cute-rose:#ffe4e1;--cute-lilac:plum;--cute-baby-blue:#b0e0e6;--cute-gold:gold;--book-page:#fdf8e8;--book-spine:#8b7355;--book-edge:#d4c4a8;--book-shadow:rgba(139,115,85,.3)}body:has(.characters-fullscreen-container) .sidebar{display:none!important}body:has(.characters-fullscreen-container) .layout{grid-template-columns:1fr!important;gap:0!important}body:has(.characters-fullscreen-container) .content{max-width:100%!important;padding:0!important}.characters-fullscreen-container{position:relative;width:100vw;margin-left:calc(-50vw + 50%);overflow:visible}.book-background{position:relative;display:flex;justify-content:center;align-items:flex-start;padding:40px 20px;min-height:calc(100vh - 80px);background:linear-gradient(135deg,#ffe4e1,#e6e6fa 25%,#fff5ee 50%,#ffe4e1 75%,#e6e6fa);background-size:400% 400%;animation:gradientShift 15s ease infinite}.book-background:after,.book-background:before{content:"✨";position:fixed;font-size:24px;animation:twinkle 3s ease-in-out infinite;opacity:.6;z-index:1}.book-background:before{top:15%;left:5%;animation-delay:0s}.book-background:after{bottom:20%;right:5%;animation-delay:1.5s;content:"💕"}.flip-book-header{justify-content:space-between;padding:12px 30px;max-width:1400px;margin:0 auto;position:absolute;top:0;left:50%;transform:translateX(-50%);z-index:10}.flip-book-header,.flip-book-wrapper{display:flex;align-items:center;width:100%}.flip-book-wrapper{flex-direction:column;justify-content:center;min-height:calc(100vh - 60px);padding:50px 20px 20px}.flip-book{position:relative;box-shadow:0 30px 80px rgba(0,0,0,.4);border-radius:8px}.flip-book:before{inset:-20px;background:linear-gradient(145deg,#6b5b4f,#5a4a3f 50%,#4a3a2f);border-radius:12px;box-shadow:inset 0 2px 4px hsla(0,0%,100%,.1),inset 0 -2px 4px rgba(0,0,0,.2),0 10px 40px rgba(0,0,0,.3);border:3px dashed rgba(139,115,85,.4);outline:2px solid #5a4a3f;outline-offset:-8px}.flip-book:after,.flip-book:before{content:"";position:absolute;z-index:-1}.flip-book:after{inset:-8px;border:3px solid #d4b896;border-radius:6px;background:transparent}.sticker-editor-container{position:absolute;inset:0;pointer-events:none;z-index:25}.stickers-layer{position:absolute;inset:0}.sticker-item{position:absolute;cursor:default;pointer-events:auto;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sticker-item img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(2px 3px 4px rgba(0,0,0,.2))}.sticker-item.edit-mode{cursor:move}.sticker-item.edit-mode img{outline:2px dashed rgba(255,105,180,.6);outline-offset:2px}.sticker-item.selected img{outline:2px solid hotpink;outline-offset:2px}.resize-handle{position:absolute;bottom:-6px;right:-6px;width:14px;height:14px;background:hotpink;border:2px solid #fff;border-radius:50%;cursor:se-resize;box-shadow:0 2px 5px rgba(0,0,0,.3)}.sticker-controls{position:absolute;top:-35px;left:50%;transform:translateX(-50%);display:flex;gap:4px;background:#fff;padding:4px 8px;border-radius:20px;box-shadow:0 2px 10px rgba(0,0,0,.2)}.sticker-controls button{width:24px;height:24px;border:none;background:transparent;cursor:pointer;font-size:14px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.sticker-controls button:hover{background:rgba(255,105,180,.2)}.sticker-toolbar{position:absolute;bottom:-50px;left:50%;transform:translateX(-50%);display:flex;gap:10px;padding:8px 16px;background:#fff;border-radius:30px;box-shadow:0 4px 15px rgba(0,0,0,.15);pointer-events:auto;z-index:30}.sticker-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#ffb6c1,#ff69b4);color:#fff;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease}.sticker-upload-btn input{display:none}.sticker-upload-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(255,105,180,.4)}.sticker-clear-btn,.sticker-edit-btn{padding:8px 14px;border:2px solid rgba(139,115,85,.3);background:#fff;color:#5d4e37;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s ease}.sticker-clear-btn:hover,.sticker-edit-btn:hover{background:rgba(255,182,193,.2);border-color:#ffb6c1}.sticker-clear-btn.active,.sticker-edit-btn.active{background:linear-gradient(135deg,#90ee90,#32cd32);color:#fff;border-color:#32cd32}.sticker-clear-btn{background:rgba(220,20,60,.1);border-color:rgba(220,20,60,.3);color:crimson}.sticker-clear-btn:hover{background:rgba(220,20,60,.2)}.page-stickers-container{position:absolute;inset:0;pointer-events:none;z-index:10;overflow:visible}.page-sticker{position:absolute;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.page-sticker img{width:100%;height:auto;filter:drop-shadow(2px 3px 5px rgba(0,0,0,.15))}.page-sticker.dev-mode{pointer-events:auto;cursor:move}.page-sticker.dev-mode img{outline:2px dashed rgba(255,105,180,.4);outline-offset:2px}.page-sticker.dev-mode:hover img{outline-color:rgba(255,105,180,.8)}.page-sticker.selected img{outline:2px solid hotpink!important}.sticker-dev-controls{position:absolute;bottom:-30px;left:50%;transform:translateX(-50%);display:flex;gap:4px;background:#fff;padding:4px 8px;border-radius:16px;box-shadow:0 2px 8px rgba(0,0,0,.2);pointer-events:auto}.sticker-dev-controls button{width:22px;height:22px;border:none;background:rgba(255,182,193,.3);cursor:pointer;font-size:12px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.sticker-dev-controls button:hover{background:rgba(255,105,180,.4);transform:scale(1.1)}.dev-mode-badge{position:absolute;top:5px;left:50%;transform:translateX(-50%);background:rgba(255,105,180,.9);color:#fff;font-size:10px;font-weight:600;padding:3px 10px;border-radius:10px;pointer-events:none;z-index:100;white-space:nowrap}.sticker-resize-handle{position:absolute;bottom:-6px;right:-6px;width:14px;height:14px;background:hotpink;border:2px solid #fff;border-radius:50%;cursor:se-resize;box-shadow:0 2px 5px rgba(0,0,0,.3);z-index:10}.temp-sticker img{outline:2px dashed #32cd32!important;outline-offset:2px}.export-config-btn{position:absolute;bottom:5px;right:5px;padding:6px 12px;background:linear-gradient(135deg,#32cd32,#228b22);color:#fff;border:none;border-radius:15px;font-size:11px;font-weight:600;cursor:pointer;pointer-events:auto;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.2);transition:all .2s ease}.export-config-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px rgba(0,0,0,.3)}.drop-zone-hint{position:absolute;bottom:5px;left:5px;padding:4px 10px;background:hsla(0,0%,39%,.6);color:#fff;font-size:9px;font-weight:500;border-radius:10px;pointer-events:none;z-index:100}.page-stickers-container.drag-over:after{content:"Drop to add sticker";position:absolute;inset:0;background:rgba(255,105,180,.2);border:3px dashed hotpink;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:hotpink;z-index:50}.notebook-tabs{position:absolute;right:-45px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px;z-index:1}.notebook-tab-btn{width:40px;height:45px;background:linear-gradient(180deg,#f5e6c8,#e8d4b8);border:2px solid #d4c4a8;border-left:none;border-radius:0 8px 8px 0;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:3px 3px 8px rgba(0,0,0,.15);transition:all .3s ease}.notebook-tab-btn:hover{transform:translateX(5px);background:linear-gradient(180deg,#fff5e6,#f5e6c8);box-shadow:4px 4px 12px rgba(0,0,0,.2)}.notebook-tab-btn:first-child{background:linear-gradient(180deg,#ffe4e1,#ffb6c1);border-color:#ffb6c1}.notebook-tab-btn:nth-child(2){background:linear-gradient(180deg,#fff8dc,gold 50%);border-color:#daa520}.notebook-tab-btn:nth-child(3){background:linear-gradient(180deg,#e6f3ff,#87ceeb);border-color:skyblue}.flip-page{background:#fafafa;box-shadow:inset 0 0 20px rgba(139,115,85,.08);overflow:hidden;position:relative}.flip-page:before{inset:0;background-image:linear-gradient(hsla(0,0%,71%,.15) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,71%,.15) 1px,transparent 0);background-size:20px 20px}.flip-page:after,.flip-page:before{content:"";position:absolute;pointer-events:none}.flip-page:after{top:0;bottom:0;left:8px;width:2px;background:hsla(33,42%,71%,.5)}.flip-page-content{display:flex;flex-direction:column;gap:24px;padding:30px;height:100%;align-items:center;justify-content:space-around}.flip-card-wrapper{width:85%;max-width:320px;flex:0 0 auto;display:flex;align-items:center;justify-content:center}.flip-card-wrapper:first-child{transform:rotate(-3deg) translateX(-8px)}.flip-card-wrapper:nth-child(2){transform:rotate(5deg) translateX(8px)}.flip-card-wrapper .character-card{width:100%;height:auto;aspect-ratio:4/5;transform:rotate(0);animation:none;border-radius:14px;overflow:hidden;box-shadow:0 8px 25px rgba(0,0,0,.15)}.flip-card-wrapper .character-card:hover{transform:scale(1.05)!important}.flip-card-wrapper .card-image-wrapper{inset:0;border-radius:0}.flip-card-wrapper .card-image-wrapper img{object-fit:cover;object-position:center top}.flip-card-wrapper .empty-card-slot{width:100%;height:auto;aspect-ratio:4/5;transform:rotate(0)!important;animation:none;border-radius:12px}.flip-navigation{display:flex;gap:24px;margin-top:30px;padding:16px 24px;background:hsla(0,0%,100%,.9);box-shadow:0 4px 20px rgba(0,0,0,.1)}.flip-nav-btn,.flip-navigation{align-items:center;border-radius:50px}.flip-nav-btn{display:inline-flex;gap:8px;padding:10px 20px;border:2px solid rgba(255,182,193,.5);background:linear-gradient(135deg,#ffb6c1,#ff69b4);color:#fff;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease}.flip-nav-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px rgba(255,105,180,.4)}.flip-nav-btn:disabled{opacity:.4;cursor:not-allowed}.flip-page-indicator{font-family:Nunito Sans,sans-serif;font-size:14px;font-weight:600;color:#5d4e37}.book-container{position:relative;width:95%;max-width:1500px;min-height:calc(100vh - 160px);display:flex;perspective:2000px}.book-container:before{content:"";position:absolute;bottom:-30px;left:50%;transform:translateX(-50%);width:92%;height:50px;background:radial-gradient(ellipse,rgba(0,0,0,.3) 0,transparent 70%);filter:blur(12px)}.book-page{flex:1 1;background:linear-gradient(180deg,var(--book-page) 0,#f5ecd7 100%);padding:30px;position:relative;display:flex;flex-direction:column;box-shadow:inset 0 0 30px rgba(139,115,85,.1),inset 0 0 60px rgba(139,115,85,.05)}.book-page:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.03;pointer-events:none}.book-page:after{content:"🌸";position:absolute;font-size:20px;opacity:.4}.book-page-left{border-radius:8px 0 0 8px;border-right:1px solid var(--book-edge);transform:rotateY(2deg);transform-origin:right center}.book-page-left:after{top:15px;left:15px}.book-page-left{box-shadow:inset 0 0 30px rgba(139,115,85,.1),inset -3px 0 10px rgba(139,115,85,.15),-5px 0 15px rgba(0,0,0,.1)}.book-page-right{border-radius:0 8px 8px 0;border-left:1px solid var(--book-edge);transform:rotateY(-2deg);transform-origin:left center}.book-page-right:after{bottom:15px;right:15px;content:"🌺"}.book-page-right{box-shadow:inset 0 0 30px rgba(139,115,85,.1),inset 3px 0 10px rgba(139,115,85,.15),5px 0 15px rgba(0,0,0,.1)}.book-spine{width:30px;background:linear-gradient(90deg,var(--book-spine) 0,#a08060 50%,var(--book-spine) 100%);border-radius:2px;box-shadow:inset 0 0 10px rgba(0,0,0,.3),0 0 20px rgba(0,0,0,.2);position:relative}.book-spine:after,.book-spine:before{content:"";position:absolute;left:50%;transform:translateX(-50%);width:20px;height:3px;background:linear-gradient(90deg,#d4a574,#c4956a,#d4a574);border-radius:2px}.book-spine:before{top:20%}.book-spine:after{bottom:20%}.characters-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:2px dashed rgba(139,115,85,.2);position:relative;z-index:5}.characters-title{font-family:Nunito Sans,sans-serif;font-size:28px;font-weight:700;color:#5d4e37;margin:0;display:flex;align-items:center;gap:10px}.characters-title:before{content:"📚";font-size:24px}.characters-actions{display:flex;gap:12px;align-items:center}.style-toggle-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:50px;border:2px solid transparent;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.style-toggle-btn.style-simple{background:linear-gradient(135deg,#6b5b7a,#4a3f5c);color:#fff;box-shadow:0 4px 15px rgba(107,91,122,.4)}.style-toggle-btn.style-simple:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 6px 20px rgba(107,91,122,.5)}.style-toggle-btn.style-cute{background:linear-gradient(135deg,#ffb6c1,#ff69b4 50%,#ffb6c1);background-size:200% 200%;animation:shimmerGradient 3s ease infinite;color:#fff;border-color:hsla(0,0%,100%,.3);box-shadow:0 4px 15px rgba(255,105,180,.4),inset 0 1px 0 hsla(0,0%,100%,.3)}.style-toggle-btn.style-cute:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 8px 25px rgba(255,105,180,.5),inset 0 1px 0 hsla(0,0%,100%,.4)}.style-toggle-btn .toggle-icon{font-size:16px;transition:transform .3s ease}.style-toggle-btn:hover .toggle-icon{transform:rotate(15deg) scale(1.1)}.style-toggle-btn:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent 40%,hsla(0,0%,100%,.3) 50%,transparent 60%);transform:translateX(-100%);transition:transform .6s ease}.style-toggle-btn:hover:before{transform:translateX(100%)}.add-character-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:50px;border:2px solid rgba(255,182,193,.5);background:linear-gradient(135deg,#fff5ee,#ffe4e1);color:#8b4513;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px rgba(255,182,193,.3)}.add-character-btn:hover{transform:translateY(-2px) scale(1.02);background:linear-gradient(135deg,#ffe4e1,#ffb6c1);box-shadow:0 6px 18px rgba(255,182,193,.4);border-color:rgba(255,182,193,.8)}.add-character-btn .btn-icon{font-size:16px}.cards-container{flex:1 1;display:flex;flex-direction:column;gap:40px;align-items:center;padding:30px 20px 60px}.character-card{position:relative;width:400px;height:540px;border-radius:20px;overflow:visible;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);animation:breathing 4s ease-in-out infinite;flex-shrink:0}.character-card:first-child{transform:rotate(-14deg) translateX(-40px)}.character-card:nth-child(2){transform:rotate(12deg) translateX(50px)}.character-card:nth-child(3){transform:rotate(-9deg) translateX(-25px)}.character-card{background:linear-gradient(145deg,hsla(0,0%,100%,.95),rgba(255,240,245,.9) 50%,hsla(0,0%,100%,.95));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:4px solid rgba(255,182,193,.5);box-shadow:0 20px 60px rgba(255,182,193,.4),0 8px 20px rgba(0,0,0,.12),inset 0 3px 0 hsla(0,0%,100%,.9)}.character-card:hover{animation-play-state:paused;z-index:10;box-shadow:0 40px 90px rgba(255,105,180,.5),0 20px 45px rgba(0,0,0,.2),inset 0 3px 0 #fff;border-color:rgba(255,105,180,.7)}.character-card:hover .card-tags{opacity:1;transform:translateY(0)}.character-card:hover .card-overlay{opacity:1}.character-card:hover .card-name,.character-card:hover .card-visibility-badge{opacity:1;transform:translateY(0)}.character-card:first-child:hover{transform:rotate(-5deg) translateX(-40px) translateY(-20px) scale(1.08)}.character-card:nth-child(2):hover{transform:rotate(4deg) translateX(50px) translateY(-20px) scale(1.08)}.character-card:nth-child(3):hover{transform:rotate(-3deg) translateX(-25px) translateY(-20px) scale(1.08)}.card-image-wrapper{position:absolute;inset:8px;border-radius:12px}.card-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.character-card:hover .card-image-wrapper img{transform:scale(1.08)}.card-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(255,182,193,.6));opacity:0;transition:opacity .3s ease;pointer-events:none}.card-content{position:absolute;bottom:0;left:0;right:0;padding:16px 12px;z-index:2}.card-name{font-family:Nunito Sans,sans-serif;font-size:18px;font-weight:700;color:#5d4e37;text-shadow:0 1px 2px hsla(0,0%,100%,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform:translateY(10px)}.card-name,.card-tags{opacity:0;transition:all .3s ease}.card-tags{display:flex;gap:4px;flex-wrap:wrap;transform:translateY(8px)}.card-tag{padding:3px 8px;border-radius:20px;background:hsla(0,0%,100%,.9);color:#8b4513;font-size:10px;font-weight:600;border:1px solid rgba(255,182,193,.5)}.card-visibility-badge{position:absolute;top:16px;right:16px;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;z-index:3;opacity:0;transform:translateY(-10px);transition:all .3s ease}.card-visibility-badge.public{background:linear-gradient(135deg,#98fb98,#90ee90);color:#2e8b57;border:1px solid rgba(46,139,87,.3)}.card-visibility-badge.private{background:linear-gradient(135deg,#e6e6fa,plum);color:#6b4c7a;border:1px solid rgba(107,76,122,.3)}.empty-card-slot{position:relative;width:400px;height:540px;border-radius:20px;border:4px dashed rgba(139,115,85,.3);background:linear-gradient(145deg,rgba(255,245,238,.6),hsla(6,100%,94%,.4));display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);animation:gentleFloat 6s ease-in-out infinite;flex-shrink:0}.empty-card-slot:first-child{transform:rotate(-14deg) translateX(-40px)}.empty-card-slot:nth-child(2){transform:rotate(12deg) translateX(50px)}.empty-card-slot:nth-child(3){transform:rotate(-9deg) translateX(-25px)}.empty-card-slot:nth-child(4){transform:rotate(-12deg) translateX(-35px)}.empty-card-slot:nth-child(5){transform:rotate(10deg) translateX(40px)}.empty-card-slot:nth-child(6){transform:rotate(-7deg) translateX(-20px)}.empty-card-slot:nth-child(4){transform:rotate(-9deg) translateX(-20px)}.empty-card-slot:nth-child(5){transform:rotate(7deg) translateX(25px)}.empty-card-slot:nth-child(6){transform:rotate(-5deg) translateX(-10px)}.empty-card-slot:hover{border-color:rgba(255,182,193,.6);background:linear-gradient(145deg,hsla(6,100%,94%,.7),rgba(255,182,193,.4));transform:translateY(-4px) scale(1.02);box-shadow:0 12px 30px rgba(255,182,193,.25)}.empty-card-slot:hover .empty-icon{transform:scale(1.15) rotate(90deg);color:hotpink}.empty-card-slot:hover .empty-text{color:#d2691e}.empty-icon{font-size:36px;color:rgba(139,115,85,.4);transition:all .4s cubic-bezier(.4,0,.2,1)}.empty-text{font-family:Nunito Sans,sans-serif;font-size:12px;font-weight:600;color:rgba(139,115,85,.5);transition:color .3s ease}.heart-particles-container{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:10}.heart-particle{position:absolute;font-size:14px;animation:floatUpHeart 1.5s ease-out forwards;opacity:0}.heart-particle:first-child{left:15%;animation-delay:.08s;font-size:14px}.heart-particle:nth-child(2){left:30%;animation-delay:.16s;font-size:16px}.heart-particle:nth-child(3){left:45%;animation-delay:.24s;font-size:12px}.heart-particle:nth-child(4){left:60%;animation-delay:.32s;font-size:18px}.heart-particle:nth-child(5){left:75%;animation-delay:.4s;font-size:14px}.heart-particle:nth-child(6){left:25%;animation-delay:.48s;font-size:16px}.heart-particle:nth-child(7){left:55%;animation-delay:.56s;font-size:13px}.heart-particle:nth-child(8){left:85%;animation-delay:.64s;font-size:15px}@keyframes breathing{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.02) translateY(-3px)}}@keyframes gentleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes shimmerGradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes twinkle{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@keyframes floatUpHeart{0%{opacity:1;transform:translateY(0) scale(.5)}50%{opacity:1}to{opacity:0;transform:translateY(-80px) scale(1)}}.characters-simple-mode .book-background{background:var(--bg);animation:none;padding:24px;display:block}.characters-simple-mode .book-background:after,.characters-simple-mode .book-background:before{display:none}.characters-simple-mode .book-container{display:block;width:100%;max-width:1200px;margin:0 auto;min-height:auto;perspective:none}.characters-simple-mode .book-container:before,.characters-simple-mode .book-spine{display:none}.characters-simple-mode .book-page{background:transparent;box-shadow:none;padding:0;margin-bottom:32px}.characters-simple-mode .book-page:after,.characters-simple-mode .book-page:before{display:none}.characters-simple-mode .book-page-left,.characters-simple-mode .book-page-right{transform:none;border-radius:0;border:none;box-shadow:none;background:transparent}.characters-simple-mode .characters-header{border-bottom:1px solid hsla(0,0%,100%,.08);margin-bottom:24px;padding-bottom:16px}.characters-simple-mode .characters-title{color:var(--text);font-size:24px}.characters-simple-mode .characters-title:before{display:none}.characters-simple-mode .cards-container{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:28px;gap:28px;padding:0}.characters-simple-mode .character-card{width:100%;height:auto;aspect-ratio:3/4;background:var(--panel);border:1px solid hsla(0,0%,100%,.08);border-radius:12px;animation:none;box-shadow:0 4px 16px rgba(0,0,0,.2);overflow:hidden}.characters-simple-mode .character-card:first-child,.characters-simple-mode .character-card:nth-child(2),.characters-simple-mode .character-card:nth-child(3),.characters-simple-mode .character-card:nth-child(n){transform:none}.characters-simple-mode .character-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.3);border-color:hsla(0,0%,100%,.15)}.characters-simple-mode .character-card:first-child:hover,.characters-simple-mode .character-card:nth-child(2):hover,.characters-simple-mode .character-card:nth-child(3):hover,.characters-simple-mode .character-card:nth-child(n):hover{transform:translateY(-4px)}.characters-simple-mode .card-image-wrapper{inset:0;border-radius:0}.characters-simple-mode .card-name{color:var(--text);text-shadow:none;opacity:1;transform:none}.characters-simple-mode .card-visibility-badge{opacity:1;transform:none}.characters-simple-mode .card-visibility-badge.public{background:rgba(46,139,87,.3);color:#90ee90;border-color:rgba(46,139,87,.4)}.characters-simple-mode .card-visibility-badge.private{background:rgba(107,76,122,.3);color:plum;border-color:rgba(107,76,122,.4)}.characters-simple-mode .card-tag{background:hsla(0,0%,100%,.1);color:var(--text);border-color:hsla(0,0%,100%,.15)}.characters-simple-mode .card-overlay{background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.7));opacity:1}.characters-simple-mode .card-tags{opacity:1;transform:none}.characters-simple-mode .empty-card-slot{display:none!important}.characters-simple-mode .empty-icon,.characters-simple-mode .empty-text{color:hsla(0,0%,100%,.4)}.characters-simple-mode .empty-icon{font-size:32px}.characters-simple-mode .add-character-btn{background:var(--btn-bg);color:#fff;border-color:var(--btn-border);box-shadow:none;border-radius:8px}.characters-simple-mode .add-character-btn:hover{background:var(--btn-bg);filter:brightness(1.1);transform:none}.characters-simple-mode .style-toggle-btn.style-simple{background:var(--btn-bg);box-shadow:none}@media(max-width:1200px){.book-container{flex-direction:column;height:auto;min-height:calc(100vh - 140px)}.book-spine{width:100%;height:20px}.book-page-left,.book-page-right{transform:none;border-radius:8px}.book-page-left{border-right:none;border-bottom:2px solid var(--book-edge)}.book-page-right{border-left:none;border-top:2px solid var(--book-edge)}}@media(max-width:768px){.book-background{padding:12px}.book-page{padding:16px}.characters-header{flex-direction:column;gap:12px;align-items:flex-start}.characters-title{font-size:22px}.characters-actions{width:100%;justify-content:flex-end}.cards-container{grid-template-columns:repeat(2,1fr);gap:12px}.add-character-btn,.style-toggle-btn{padding:8px 14px;font-size:12px}}@media(max-width:480px){.cards-container{grid-template-columns:repeat(2,1fr);gap:10px}.character-card,.empty-card-slot{border-radius:12px}.card-name{font-size:12px}.empty-icon{font-size:28px}.empty-text{font-size:10px}}@import"https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Rajdhani:wght@400;500;600;700&family=Orbitron:wght@400;500;600;700;800;900&display=swap";.stage-theme{--stage-font-display:"Bebas Neue","Impact",sans-serif;--stage-font-body:"Rajdhani","Segoe UI",sans-serif;--stage-font-tech:"Orbitron",monospace;--stage-bg-dark:#0a0612;--stage-bg-mid:#150d1f;--stage-purple:#9333ea;--stage-pink:#ec4899;--stage-cyan:#22d3ee;--stage-gold:#fbbf24;--stage-white:#f8fafc;--stage-gradient-primary:linear-gradient(135deg,var(--stage-purple),var(--stage-pink));--stage-gradient-gold:linear-gradient(135deg,#fbbf24,#f59e0b,#d97706);--stage-gradient-holographic:linear-gradient(135deg,#ff6b9d,#c44cff 20%,#4cc9ff 40%,#44ff9d 60%,#ffeb3b 80%,#ff6b9d);--stage-glow-purple:0 0 40px rgba(147,51,234,.5);--stage-glow-pink:0 0 40px rgba(236,72,153,.5);--stage-glow-gold:0 0 30px rgba(251,191,36,.6)}body:has(.stage-theme){overflow:hidden;background:#0a0612}body:has(.stage-theme) .site-header{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(10,6,18,.8)!important;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(147,51,234,.2)!important}body:has(.stage-theme) .layout{display:block!important;padding:0!important}body:has(.stage-theme) .sidebar{display:none!important}body:has(.stage-theme) .content{max-width:100%!important;width:100%!important;padding:0!important;margin:0!important}body:has(.stage-theme) .site-footer{display:none!important}.stage-theme{position:fixed;inset:0;z-index:50;font-family:var(--stage-font-body);overflow:hidden;background:var(--stage-bg-dark)}.stage-background{position:absolute;inset:0;overflow:hidden;z-index:0}.stage-gradient-1{position:absolute;top:-50%;left:-25%;width:150%;height:100%;background:radial-gradient(ellipse at center,rgba(147,51,234,.15) 0,transparent 60%);animation:pulseGlow 8s ease-in-out infinite}.stage-gradient-2{position:absolute;bottom:-30%;right:-25%;width:100%;height:80%;background:radial-gradient(ellipse at center,rgba(236,72,153,.12) 0,transparent 55%);animation:pulseGlow 10s ease-in-out infinite reverse}.stage-floor{height:35%;background:linear-gradient(0deg,#0a0612 0,rgba(10,6,18,.95) 20%,transparent)}.stage-floor,.stage-floor:before{position:absolute;bottom:0;left:0;right:0}.stage-floor:before{content:"";height:2px;background:var(--stage-gradient-primary);box-shadow:0 0 20px rgba(147,51,234,.5),0 0 40px rgba(236,72,153,.3)}@keyframes pulseGlow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.stage-spotlights{position:absolute;inset:0;overflow:hidden;z-index:15}.stage-spotlights,.stage-spotlights *{pointer-events:none!important}.spotlight{position:absolute;width:300px;height:600px;background:linear-gradient(180deg,hsla(0,0%,100%,.03) 0,hsla(0,0%,100%,.08) 50%,transparent);transform-origin:top center;filter:blur(2px)}.spotlight.spotlight-1{top:0;left:20%;animation:spotlightSweep1 12s ease-in-out infinite}.spotlight.spotlight-2{top:0;left:50%;animation:spotlightSweep2 15s ease-in-out infinite;opacity:.7}.spotlight.spotlight-3{top:0;right:20%;animation:spotlightSweep3 10s ease-in-out infinite}@keyframes spotlightSweep1{0%,to{transform:rotate(-20deg)}50%{transform:rotate(15deg)}}@keyframes spotlightSweep2{0%,to{transform:rotate(10deg)}50%{transform:rotate(-25deg)}}@keyframes spotlightSweep3{0%,to{transform:rotate(25deg)}50%{transform:rotate(-10deg)}}.stage-sparkles{position:absolute;inset:0;pointer-events:none}.sparkle{background:radial-gradient(circle,#fff 0,transparent 70%);animation:sparkleFloat linear infinite;opacity:0}.sparkle,.sparkle:before{position:absolute;border-radius:50%}.sparkle:before{content:"";inset:-2px;background:radial-gradient(circle,hsla(0,0%,100%,.8) 0,transparent 60%)}@keyframes sparkleFloat{0%{opacity:0;transform:translateY(0) scale(0)}10%{opacity:1;transform:translateY(-20px) scale(1)}90%{opacity:1;transform:translateY(-80px) scale(.8)}to{opacity:0;transform:translateY(-100px) scale(0)}}.stage-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;top:-20px;border-radius:2px;animation:confettiFall linear infinite;opacity:.8}@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0deg);opacity:1}to{transform:translateY(100vh) rotate(2turn);opacity:0}}.stage-content{position:relative;z-index:10;display:flex;flex-direction:column;align-items:center;height:100%;padding-top:80px}.stage-header{text-align:center;margin-bottom:20px;z-index:20}.stage-title{font-family:var(--stage-font-display);font-size:clamp(48px,10vw,96px);font-weight:400;letter-spacing:.1em;margin:0;line-height:1}.title-glow{-webkit-text-fill-color:transparent;text-shadow:none;position:relative}.title-glow,.title-glow:before{background:var(--stage-gradient-primary);-webkit-background-clip:text;background-clip:text}.title-glow:before{content:attr(data-text);position:absolute;left:0;top:0;-webkit-text-fill-color:transparent;filter:blur(20px);opacity:.6;z-index:-1}.stage-subtitle{margin-top:8px}.fan-chant{font-family:var(--stage-font-tech);font-size:14px;font-weight:500;letter-spacing:.3em;color:var(--stage-gold);text-shadow:0 0 20px rgba(251,191,36,.5);animation:fanChantPulse 2s ease-in-out infinite}@keyframes fanChantPulse{0%,to{opacity:1}50%{opacity:.7}}.stage-carousel-container{flex:1 1}.stage-carousel,.stage-carousel-container{display:flex;align-items:center;justify-content:center;width:100%;position:relative}.stage-carousel{height:500px;transform-style:preserve-3d}.stage-card{position:absolute;width:280px;height:400px;cursor:pointer;transform-style:preserve-3d;transition:filter .3s ease}.stage-card:not(.center){filter:brightness(.6) saturate(.8)}.stage-card.center{filter:brightness(1) saturate(1)}.stage-card.center .card-frame:before{opacity:1;animation:holographicShift 3s linear infinite}.stage-card.center .card-holographic{opacity:.4}.stage-card:hover:not(.transitioning) .card-shine{opacity:.6;transform:translateX(100%)}.card-frame{inset:-4px;padding:4px;background:linear-gradient(135deg,rgba(147,51,234,.6),rgba(236,72,153,.6),rgba(34,211,238,.6),rgba(251,191,36,.6));background-size:300% 300%;z-index:0}.card-frame,.card-frame:before{position:absolute;border-radius:20px}.card-frame:before{content:"";inset:0;background:var(--stage-gradient-holographic);background-size:200% 200%;opacity:0;transition:opacity .5s ease}.card-frame:after{content:"";position:absolute;inset:4px;border-radius:16px;background:var(--stage-bg-dark)}@keyframes holographicShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.frame-corner{position:absolute;width:24px;height:24px;z-index:2}.frame-corner:after,.frame-corner:before{content:"";position:absolute;background:var(--stage-gold);box-shadow:var(--stage-glow-gold)}.frame-corner.tl{top:0;left:0}.frame-corner.tl:before{width:24px;height:3px;top:0;left:0}.frame-corner.tl:after{width:3px;height:24px;top:0;left:0}.frame-corner.tr{top:0;right:0}.frame-corner.tr:before{width:24px;height:3px;top:0;right:0}.frame-corner.tr:after{width:3px;height:24px;top:0;right:0}.frame-corner.bl{bottom:0;left:0}.frame-corner.bl:before{width:24px;height:3px;bottom:0;left:0}.frame-corner.bl:after{width:3px;height:24px;bottom:0;left:0}.frame-corner.br{bottom:0;right:0}.frame-corner.br:before{width:24px;height:3px;bottom:0;right:0}.frame-corner.br:after{width:3px;height:24px;bottom:0;right:0}.frame-edge{position:absolute;background:linear-gradient(90deg,transparent,var(--stage-gold),transparent);z-index:1}.frame-edge.bottom,.frame-edge.top{left:30px;right:30px;height:1px}.frame-edge.left,.frame-edge.right{top:30px;bottom:30px;width:1px;background:linear-gradient(180deg,transparent,var(--stage-gold),transparent)}.frame-edge.top{top:0}.frame-edge.bottom{bottom:0}.frame-edge.left{left:0}.frame-edge.right{right:0}.card-image-wrapper{position:relative;width:100%;height:100%;border-radius:16px;overflow:hidden;z-index:1}.card-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.stage-card.center:hover .card-image{transform:scale(1.05)}.card-shine{background:linear-gradient(105deg,transparent 40%,hsla(0,0%,100%,.4) 50%,transparent 60%);transform:translateX(-100%);transition:transform .6s ease,opacity .3s ease}.card-holographic,.card-shine{position:absolute;inset:0;opacity:0;pointer-events:none}.card-holographic{background:var(--stage-gradient-holographic);background-size:400% 400%;mix-blend-mode:overlay;transition:opacity .5s ease;animation:holographicShift 4s linear infinite}.card-info{position:absolute;bottom:0;left:0;right:0;padding:60px 20px 20px;background:linear-gradient(0deg,rgba(10,6,18,.95) 0,transparent);z-index:2;border-radius:0 0 16px 16px}.card-name{font-family:var(--stage-font-display);font-size:28px;font-weight:400;color:var(--stage-white);letter-spacing:.05em;margin:0 0 8px;text-shadow:0 2px 10px rgba(0,0,0,.5)}.card-cta{display:flex;align-items:center;gap:8px;font-family:var(--stage-font-tech);font-size:12px;font-weight:500;letter-spacing:.2em;color:var(--stage-gold)}.cta-arrow{animation:arrowBounce 1s ease-in-out infinite}@keyframes arrowBounce{0%,to{transform:translateX(0)}50%{transform:translateX(4px)}}.center-spotlight{position:absolute;inset:-40px;background:radial-gradient(ellipse at center,rgba(147,51,234,.2) 0,rgba(236,72,153,.1) 30%,transparent 70%);z-index:-1;pointer-events:none;animation:centerSpotlightPulse 3s ease-in-out infinite}@keyframes centerSpotlightPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.empty-slot{position:relative;width:100%;height:100%;border-radius:16px;border:2px dashed rgba(147,51,234,.4);background:rgba(147,51,234,.05);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;transition:all .3s ease;z-index:1}.empty-slot:hover{border-color:rgba(147,51,234,.6);background:rgba(147,51,234,.1)}.empty-slot-icon{font-size:48px;font-weight:200;color:var(--stage-purple);line-height:1}.empty-slot-text{font-family:var(--stage-font-display);font-size:20px;color:var(--stage-white);letter-spacing:.1em}.empty-slot-hint{font-family:var(--stage-font-tech);font-size:11px;color:hsla(0,0%,100%,.4);letter-spacing:.2em}.stage-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;border:2px solid rgba(147,51,234,.5);background:rgba(10,6,18,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--stage-white);cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:100}.stage-nav-btn svg{width:28px;height:28px}.stage-nav-btn:hover:not(:disabled){border-color:var(--stage-purple);background:rgba(147,51,234,.2);box-shadow:var(--stage-glow-purple);transform:translateY(-50%) scale(1.1)}.stage-nav-btn:disabled{opacity:.3;cursor:not-allowed}.stage-nav-btn.prev{left:max(20px,50% - 350px)}.stage-nav-btn.next{right:max(20px,50% - 350px)}.stage-indicators{position:fixed;bottom:40px;left:50%;transform:translateX(-50%);display:flex;gap:16px;z-index:100;padding:12px 20px;background:rgba(10,6,18,.7);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:30px;border:1px solid rgba(147,51,234,.2)}.indicator-light{width:12px;height:12px;border-radius:50%;border:none;background:hsla(0,0%,100%,.2);cursor:pointer;transition:all .3s ease;position:relative}.indicator-light:before{content:"";position:absolute;inset:-4px;border-radius:50%;background:transparent;transition:all .3s ease}.indicator-light:hover{background:hsla(0,0%,100%,.5)}.indicator-light.active{background:var(--stage-pink);box-shadow:0 0 12px rgba(236,72,153,.8)}.indicator-light.active:before{background:rgba(236,72,153,.3);animation:indicatorPulse 1.5s ease-in-out infinite}@keyframes indicatorPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:0}}.light-sticks{position:fixed;bottom:100px;left:0;right:0;pointer-events:none;z-index:5}.light-stick{position:absolute;width:20px;height:120px}.light-stick:before{bottom:0;width:12px;height:60px;background:linear-gradient(0deg,#1a1a1a,#333);border-radius:6px}.light-stick:after,.light-stick:before{content:"";position:absolute;left:50%;transform:translateX(-50%)}.light-stick:after{top:0;width:20px;height:50px;background:var(--stage-purple);border-radius:10px 10px 6px 6px;box-shadow:0 0 30px rgba(147,51,234,.8)}.light-stick.stick-1{left:10%;animation:lightStickWave 2s ease-in-out infinite}.light-stick.stick-1:after{background:var(--stage-pink);box-shadow:0 0 30px rgba(236,72,153,.8)}.light-stick.stick-2{right:10%;animation:lightStickWave 2s ease-in-out .5s infinite}.stick-glow{position:absolute;top:-20px;left:50%;transform:translateX(-50%);width:60px;height:80px;background:radial-gradient(ellipse at center,rgba(147,51,234,.3) 0,transparent 70%);animation:glowPulse 1.5s ease-in-out infinite}.stick-1 .stick-glow{background:radial-gradient(ellipse at center,rgba(236,72,153,.3) 0,transparent 70%)}@keyframes lightStickWave{0%,to{transform:rotate(-15deg)}50%{transform:rotate(15deg)}}@keyframes glowPulse{0%,to{opacity:1;transform:translateX(-50%) scale(1)}50%{opacity:.6;transform:translateX(-50%) scale(1.2)}}.stage-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px;text-align:center}.empty-stage-icon{font-size:72px;animation:micBounce 2s ease-in-out infinite}@keyframes micBounce{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-10px) rotate(5deg)}}.stage-empty p{font-family:var(--stage-font-display);font-size:32px;color:var(--stage-white);margin:0}.stage-empty span{font-family:var(--stage-font-body);font-size:16px;color:hsla(0,0%,100%,.5)}.stage-modal-overlay{position:fixed;inset:0;z-index:9999;background:rgba(10,6,18,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:20px}.stage-modal{width:100%;max-width:420px;max-height:80vh;background:linear-gradient(180deg,rgba(21,13,31,.98),rgba(10,6,18,.98));border:1px solid rgba(147,51,234,.3);border-radius:24px;overflow:hidden;display:flex;flex-direction:column}.stage-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(147,51,234,.2)}.stage-modal-header h3{font-family:var(--stage-font-tech);font-size:14px;font-weight:600;letter-spacing:.2em;color:var(--stage-gold);margin:0}.stage-modal-header button{width:32px;height:32px;border-radius:50%;border:1px solid hsla(0,0%,100%,.2);background:transparent;color:var(--stage-white);font-size:20px;cursor:pointer;transition:all .2s ease}.stage-modal-header button:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.4)}.stage-modal-content{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px}.stage-modal-item{display:flex;align-items:center;gap:16px;padding:12px 16px;border-radius:12px;background:rgba(147,51,234,.08);border:1px solid transparent;cursor:pointer;transition:all .2s ease}.stage-modal-item:hover{background:rgba(147,51,234,.15);border-color:rgba(147,51,234,.3)}.modal-item-image{width:56px;height:56px;border-radius:12px;overflow:hidden;flex-shrink:0}.modal-item-image img{width:100%;height:100%;object-fit:cover}.modal-item-info{flex:1 1;min-width:0}.modal-item-name{font-family:var(--stage-font-display);font-size:18px;color:var(--stage-white);margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-item-status{font-family:var(--stage-font-tech);font-size:11px;color:hsla(0,0%,100%,.4);letter-spacing:.1em;text-transform:uppercase;margin:0}.stage-modal-footer{padding:16px 24px;border-top:1px solid rgba(147,51,234,.2)}.stage-modal-empty{padding:40px;text-align:center;color:hsla(0,0%,100%,.5);font-family:var(--stage-font-body)}.stage-btn-danger{width:100%;padding:12px 20px;border-radius:12px;border:1px solid rgba(239,68,68,.5);background:rgba(239,68,68,.15);color:#fca5a5;font-family:var(--stage-font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.stage-btn-danger:hover{background:rgba(239,68,68,.25);border-color:rgba(239,68,68,.7)}.stage-btn-danger:disabled{opacity:.5;cursor:not-allowed}.stage-confirm-modal{background:linear-gradient(180deg,rgba(21,13,31,.98),rgba(10,6,18,.98));border:1px solid rgba(147,51,234,.3);border-radius:24px;padding:32px;max-width:380px;text-align:center}.stage-confirm-modal h3{font-family:var(--stage-font-display);font-size:24px;color:var(--stage-white);margin:16px 0 12px}.stage-confirm-modal p{font-family:var(--stage-font-body);font-size:14px;color:hsla(0,0%,100%,.6);line-height:1.5;margin:0 0 24px}.confirm-icon{font-size:48px}.confirm-actions{display:flex;gap:12px;justify-content:center}.confirm-cancel{padding:12px 24px;border-radius:12px;border:1px solid hsla(0,0%,100%,.2);background:transparent;color:var(--stage-white);font-family:var(--stage-font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.confirm-cancel:hover{background:hsla(0,0%,100%,.08)}.confirm-remove{padding:12px 24px;border-radius:12px;border:none;background:#ef4444;color:#fff;font-family:var(--stage-font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.confirm-remove:hover{background:#dc2626}.confirm-remove:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.stage-carousel{height:400px}.stage-card{width:220px;height:320px}.stage-nav-btn{width:44px;height:44px}.stage-nav-btn svg{width:22px;height:22px}.stage-nav-btn.prev{left:10px}.stage-nav-btn.next{right:10px}.light-sticks{display:none}.stage-title{font-size:clamp(36px,8vw,60px)}.card-name{font-size:22px}}@media(max-width:480px){.stage-card{width:180px;height:260px}.stage-carousel{height:340px}.frame-corner{width:16px;height:16px}.frame-corner:before{width:16px;height:2px}.frame-corner:after{width:2px;height:16px}.card-info{padding:40px 12px 12px}.card-name{font-size:18px}.card-cta{font-size:10px}}.stage-detail-view{position:absolute;inset:0;width:100%;min-height:100vh;padding-top:70px;padding-bottom:100px;overflow-y:auto;overflow-x:hidden;z-index:10}.stage-detail-layout{display:flex;gap:80px;max-width:1300px;margin:0 auto;padding:20px 60px 0;min-height:calc(100vh - 200px);align-items:flex-start;position:relative;z-index:20}.stage-detail-left{flex:0 0 auto;width:420px;display:flex;flex-direction:column;align-items:center;position:-webkit-sticky;position:sticky;top:80px}.stage-detail-right{flex:1 1;display:flex;flex-direction:column;gap:50px;padding-top:80px;padding-left:60px;padding-right:20px;min-height:400px;position:relative;z-index:50;overflow:visible}.stage-character-frame{position:relative;width:100%;aspect-ratio:3/4;border:3px solid;border-image:var(--stage-gradient-primary) 1}.stage-character-frame:before{content:"";position:absolute;inset:-6px;background:var(--stage-gradient-holographic);background-size:300% 300%;animation:holographicShift 4s linear infinite;opacity:.15;z-index:-1}.stage-character-frame .character-image{width:100%;height:100%;overflow:hidden;position:relative}.stage-character-frame .character-image img{width:100%;height:100%;object-fit:cover}.stage-character-frame .image-shine{position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,hsla(0,0%,100%,.1) 50%,transparent 60%);animation:shineMove 4s ease-in-out infinite;pointer-events:none}.stage-character-frame .frame-decoration{position:absolute;font-size:18px;color:var(--stage-gold);text-shadow:var(--stage-glow-gold);animation:decorationTwinkle 2s ease-in-out infinite;z-index:10}.stage-character-frame .frame-decoration.top-left{top:-12px;left:-12px}.stage-character-frame .frame-decoration.top-right{top:-12px;right:-12px;animation-delay:.5s}.stage-character-frame .frame-decoration.bottom-left{bottom:-12px;left:-12px;animation-delay:1s}.stage-character-frame .frame-decoration.bottom-right{bottom:-12px;right:-12px;animation-delay:1.5s}.stage-character-info{flex-direction:column;margin-top:24px}.character-name-row,.stage-character-info{display:flex;align-items:center;gap:16px}.character-name-row .name-star{font-size:20px;color:var(--stage-gold);text-shadow:var(--stage-glow-gold);animation:starSpin 4s linear infinite}.character-name{font-family:var(--stage-font-display);font-size:clamp(28px,5vw,42px);font-weight:400;letter-spacing:.08em;background:var(--stage-gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0;text-align:center}.stage-character-info .cheer-button{display:flex;align-items:center;gap:10px;padding:12px 28px;border-radius:30px;border:none;background:var(--stage-gradient-primary);color:var(--stage-white);font-family:var(--stage-font-tech);font-size:13px;font-weight:600;letter-spacing:.15em;cursor:pointer;box-shadow:0 4px 20px rgba(147,51,234,.4);transition:all .3s ease}.stage-character-info .cheer-button:hover{box-shadow:0 6px 30px rgba(147,51,234,.6);transform:translateY(-2px)}.stage-textbox{position:relative;width:100%;isolation:isolate;overflow:visible;margin-left:40px;width:calc(100% - 40px)}.stage-textbox:first-child{margin-left:auto;width:80%;z-index:100}.stage-textbox textarea{display:block;width:100%;background:transparent;border:none;padding:28px 40px;font-family:var(--stage-font-body);font-size:22px;line-height:2;color:hsla(0,0%,100%,.8);resize:none;outline:none;cursor:text;position:relative;z-index:100;transform:rotateX(2deg);transform-origin:center center;transform-style:preserve-3d;scrollbar-width:none;-ms-overflow-style:none}.stage-textbox textarea::-webkit-scrollbar{display:none}.stage-textbox textarea::placeholder{color:rgba(147,51,234,.4);font-style:italic}.stage-textbox textarea:focus{border:1px solid rgba(147,51,234,.3);border-radius:8px;padding:27px 40px}.stage-textbox:first-child textarea{transform-origin:center center;padding:28px 40px}.stage-textbox:first-child textarea:focus{padding:27px 40px}.stage-textbox.large textarea{font-size:20px;line-height:2.3;min-height:240px}.stage-textbox.empty:before{content:"";position:absolute;inset:0;border:1px dashed rgba(147,51,234,.25);border-radius:12px;pointer-events:none;z-index:1}.stage-textbox.empty textarea{z-index:100}.floating-text{transform:rotateX(2deg) translateZ(0);transform-style:preserve-3d;perspective:1000px;font-family:var(--stage-font-body);font-size:22px;line-height:2.3;color:hsla(0,0%,100%,.8);position:relative;z-index:50;overflow:visible;will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:layout style paint}.floating-text,.stage-textbox:first-child .floating-text{transform-origin:center center;padding:28px 40px}.stage-textbox.large .floating-text{font-size:20px;line-height:2.5}.floating-space{white-space:pre}.floating-word{display:inline-block;position:relative;transform:translateZ(var(--float-offset,0)) rotateX(2deg) scale(1);transform-origin:center center;transition:transform .7s cubic-bezier(.25,.46,.45,.94),opacity .3s ease-out,font-size .4s cubic-bezier(.25,.46,.45,.94);animation:wordFloat 6s ease-in-out infinite;animation-delay:var(--float-delay,0s);cursor:pointer;will-change:transform,opacity,font-size;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform-style:preserve-3d;font-size:1em;contain:layout style paint;isolation:isolate;text-shadow:0 4px 12px rgba(0,0,0,.5),0 0 40px rgba(147,51,234,.25),0 0 80px rgba(236,72,153,.15)}.floating-word:hover{transform:translate3d(0,-20px,calc(var(--float-offset, 0px) + 80px)) rotateX(-8deg) scale(1.4);font-size:1.2em;opacity:1;animation-play-state:paused;z-index:100;transition:transform .35s cubic-bezier(.25,.46,.45,.94),opacity .2s ease-out,font-size .3s cubic-bezier(.25,.46,.45,.94);text-shadow:0 8px 20px rgba(0,0,0,.6),0 0 60px rgba(147,51,234,.8),0 0 120px rgba(236,72,153,.6),0 0 180px rgba(147,51,234,.3)}.floating-word:hover+.floating-space+.floating-word,.floating-word:hover+.floating-word{transform:translate3d(0,2px,calc(var(--float-offset, 0px) - 10px)) scale(.95);transition:transform .4s cubic-bezier(.25,.46,.45,.94)}.floating-word:hover~.floating-word{transform:translate3d(0,1px,calc(var(--float-offset, 0px) - 5px)) scale(.97);transition:transform .5s cubic-bezier(.25,.46,.45,.94)}@keyframes wordFloat{0%,to{transform:translateZ(var(--float-offset,0)) rotateX(2deg) scale(1)}20%{transform:translate3d(0,-6px,calc(var(--float-offset, 0px) + 10px)) rotateX(4deg) scale(1)}40%{transform:translate3d(0,-10px,calc(var(--float-offset, 0px) + 18px)) rotateX(6deg) scale(1)}60%{transform:translate3d(0,-10px,calc(var(--float-offset, 0px) + 18px)) rotateX(6deg) scale(1)}80%{transform:translate3d(0,-6px,calc(var(--float-offset, 0px) + 10px)) rotateX(4deg) scale(1)}}.stage-gallery-wrapper{max-width:1400px;margin:60px auto 0;padding:0 60px}.stage-save-btn{position:fixed;bottom:30px;right:30px;display:flex;align-items:center;gap:10px;padding:14px 28px;border-radius:30px;border:none;background:var(--stage-gradient-primary);color:var(--stage-white);font-family:var(--stage-font-body);font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 4px 20px rgba(147,51,234,.5);z-index:100;transition:all .3s ease}.stage-save-btn:hover:not(:disabled){box-shadow:0 6px 30px rgba(147,51,234,.7)}.stage-save-btn:disabled{opacity:.7;cursor:not-allowed}@media(max-width:1000px){.stage-detail-layout{flex-direction:column;gap:50px;padding:30px 24px 0;align-items:center}.stage-detail-left{width:100%;max-width:360px;position:relative;top:auto}.stage-detail-right{width:100%;padding-top:20px;min-height:auto;perspective:1000px}.stage-textbox:first-child{width:90%}.floating-text,.stage-textbox textarea{transform:rotateX(5deg) rotateY(-3deg);font-size:20px}.stage-textbox.large .floating-text,.stage-textbox.large textarea{font-size:18px}.stage-gallery-wrapper{padding:0 24px;margin-top:50px}}@media(max-width:480px){.stage-detail-layout{padding:20px 16px 0;gap:40px}.stage-detail-left{max-width:300px}.character-name{font-size:28px}.stage-textbox:first-child{width:95%}.stage-textbox textarea{font-size:17px;padding:20px 0}.floating-text{font-size:17px}.stage-textbox.large .floating-text,.stage-textbox.large textarea{font-size:16px}.floating-word:hover{transform:translateZ(calc(var(--float-offset, 0px) + 30px)) translateY(-10px) scale(1.08) rotateX(-3deg)}.stage-save-btn{bottom:20px;right:20px;padding:12px 20px;font-size:14px}}.stage-detail-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:20px}.stage-detail-empty .empty-mic{font-size:80px;animation:micBounce 2s ease-in-out infinite}.stage-detail-empty p{font-family:var(--stage-font-display);font-size:28px;color:var(--stage-white)}.stage-detail-backdrop{position:fixed;inset:0;z-index:-1;overflow:hidden}.backdrop-image{position:absolute;inset:-50px;background-size:cover;background-position:50%;filter:blur(40px) saturate(1.2);opacity:.4;transform:scale(1.1)}.backdrop-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,6,18,.7),rgba(10,6,18,.85) 50%,rgba(10,6,18,.95))}.stage-lasers{position:absolute;inset:0;overflow:hidden;pointer-events:none}.laser{position:absolute;top:0;width:4px;height:100%;opacity:.15}.laser.laser-1{left:15%;background:linear-gradient(to bottom,var(--stage-purple),transparent);animation:laserMove1 8s ease-in-out infinite}.laser.laser-2{left:40%;background:linear-gradient(to bottom,var(--stage-pink),transparent);animation:laserMove2 10s ease-in-out infinite}.laser.laser-3{left:60%;background:linear-gradient(to bottom,var(--stage-cyan),transparent);animation:laserMove3 7s ease-in-out infinite}.laser.laser-4{left:85%;background:linear-gradient(to bottom,var(--stage-gold),transparent);animation:laserMove4 9s ease-in-out infinite}@keyframes laserMove1{0%,to{transform:translateX(0) rotate(-15deg);opacity:.15}50%{transform:translateX(100px) rotate(15deg);opacity:.25}}@keyframes laserMove2{0%,to{transform:translateX(0) rotate(10deg);opacity:.1}50%{transform:translateX(-80px) rotate(-20deg);opacity:.2}}@keyframes laserMove3{0%,to{transform:translateX(0) rotate(-5deg);opacity:.2}50%{transform:translateX(60px) rotate(10deg);opacity:.1}}@keyframes laserMove4{0%,to{transform:translateX(0) rotate(20deg);opacity:.15}50%{transform:translateX(-100px) rotate(-10deg);opacity:.25}}.stage-pyro-container{position:absolute;bottom:0;left:0;right:0;height:200px;pointer-events:none}.stage-pyro-container.active .pyro{animation:pyroShoot .8s ease-out forwards}.pyro{position:absolute;bottom:0;width:6px;height:0;background:linear-gradient(to top,var(--stage-gold),#fff);border-radius:3px;opacity:0;box-shadow:0 0 20px var(--stage-gold),0 0 40px var(--stage-gold)}@keyframes pyroShoot{0%{height:0;opacity:0}20%{height:var(--pyro-height);opacity:1}to{height:0;opacity:0;transform:translateY(-100px)}}.stage-floating-hearts{position:fixed;inset:0;z-index:5;overflow:hidden}.stage-floating-hearts,.stage-floating-hearts *{pointer-events:none!important}.floating-heart{position:absolute;bottom:-50px;animation:heartFloat linear infinite;opacity:.6}@keyframes heartFloat{0%{transform:translateY(0) rotate(0deg);opacity:.6}to{transform:translateY(-100vh) rotate(20deg);opacity:0}}.stage-detail-header{position:fixed;top:60px;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:linear-gradient(180deg,rgba(10,6,18,.9) 0,transparent)}.stage-back-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:30px;border:1px solid rgba(147,51,234,.4);background:rgba(10,6,18,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--stage-white);font-family:var(--stage-font-tech);font-size:12px;font-weight:500;letter-spacing:.1em;cursor:pointer;transition:all .3s ease}.stage-back-btn:hover{border-color:var(--stage-purple);background:rgba(147,51,234,.2);box-shadow:var(--stage-glow-purple)}.header-fanchant .cheer-count{font-family:var(--stage-font-tech);font-size:14px;color:var(--stage-gold);text-shadow:0 0 10px rgba(251,191,36,.5)}.stage-detail-content{max-width:800px;margin:0 auto;padding:40px 24px 100px}.stage-hero{display:flex;flex-direction:column;align-items:center;margin-bottom:60px;position:relative}.spotlight-ring{position:absolute;inset:-60px;pointer-events:none}.ring{position:absolute;inset:0;border-radius:50%;border:2px solid transparent}.ring.ring-1{inset:0;border-color:rgba(147,51,234,.3);animation:ringPulse 3s ease-in-out infinite}.ring.ring-2{inset:-20px;border-color:rgba(236,72,153,.2);animation:ringPulse 3s ease-in-out .5s infinite}.ring.ring-3{inset:-40px;border-color:rgba(34,211,238,.1);animation:ringPulse 3s ease-in-out 1s infinite}@keyframes ringPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.5}}.hero-image-container{position:relative;width:320px;height:400px}.hero-frame{position:absolute;inset:-10px;border:3px solid;border-image:var(--stage-gradient-primary) 1;pointer-events:none}.hero-frame:before{content:"";position:absolute;inset:-2px;background:var(--stage-gradient-holographic);background-size:300% 300%;animation:holographicShift 4s linear infinite;opacity:.3;z-index:-1}.frame-decoration{position:absolute;font-size:20px;color:var(--stage-gold);text-shadow:var(--stage-glow-gold);animation:decorationTwinkle 2s ease-in-out infinite}.frame-decoration.top-left{top:-15px;left:-15px}.frame-decoration.top-right{top:-15px;right:-15px;animation-delay:.5s}.frame-decoration.bottom-left{bottom:-15px;left:-15px;animation-delay:1s}.frame-decoration.bottom-right{bottom:-15px;right:-15px;animation-delay:1.5s}@keyframes decorationTwinkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.hero-image{width:100%;height:100%;border-radius:8px;overflow:hidden;position:relative}.hero-image img{width:100%;height:100%;object-fit:cover}.image-shine{position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,hsla(0,0%,100%,.15) 50%,transparent 60%);animation:shineMove 3s ease-in-out infinite}@keyframes shineMove{0%{transform:translateX(-100%) translateY(-100%)}to{transform:translateX(100%) translateY(100%)}}.hero-name-banner{display:flex;align-items:center;gap:20px;margin-top:30px}.name-stars{font-size:24px;color:var(--stage-gold);text-shadow:var(--stage-glow-gold);animation:starSpin 4s linear infinite}@keyframes starSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.hero-name{font-family:var(--stage-font-display);font-size:clamp(36px,8vw,56px);font-weight:400;letter-spacing:.1em;background:var(--stage-gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0;text-align:center}.cheer-button{display:flex;align-items:center;gap:12px;margin-top:24px;padding:14px 32px;border-radius:40px;border:none;background:var(--stage-gradient-primary);color:var(--stage-white);font-family:var(--stage-font-tech);font-size:14px;font-weight:600;letter-spacing:.2em;cursor:pointer;box-shadow:0 4px 20px rgba(147,51,234,.4);transition:all .3s ease}.cheer-button:hover{box-shadow:0 6px 30px rgba(147,51,234,.6)}.stage-info-section{display:flex;flex-direction:column;gap:32px}.stage-wristbands{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.wristband{display:inline-block;padding:8px 20px;border-radius:20px;background:linear-gradient(135deg,hsla(var(--band-hue),70%,50%,.2) 0,hsla(var(--band-hue),70%,40%,.3) 100%);border:1px solid hsla(var(--band-hue),70%,60%,.4);color:hsla(var(--band-hue),70%,80%,1);font-family:var(--stage-font-tech);font-size:11px;font-weight:500;letter-spacing:.15em;text-transform:uppercase}.stage-bio-card{background:rgba(147,51,234,.08);border:1px solid rgba(147,51,234,.2);border-radius:20px;overflow:hidden}.bio-header{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;background:rgba(147,51,234,.1);border-bottom:1px solid rgba(147,51,234,.15)}.bio-header span{font-family:var(--stage-font-tech);font-size:12px;font-weight:600;letter-spacing:.3em}.bio-header span,.bio-header svg{color:var(--stage-gold)}.bio-content{padding:24px}.bio-content p{font-family:var(--stage-font-body);font-size:16px;line-height:1.8;color:hsla(0,0%,100%,.85);margin:0;text-align:center}.stage-details-card{background:rgba(21,13,31,.6);border:1px solid rgba(236,72,153,.15);border-radius:20px;overflow:hidden}.details-header{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px}.details-header span:not(.header-line){font-family:var(--stage-font-tech);font-size:12px;font-weight:600;letter-spacing:.3em;color:var(--stage-pink)}.details-header .header-line{flex:1 1;max-width:100px;height:1px;background:linear-gradient(90deg,transparent,var(--stage-pink),transparent)}.details-content{padding:24px}.details-text{font-family:var(--stage-font-body);font-size:15px;line-height:1.9;color:hsla(0,0%,100%,.75)}.details-text p{margin:0 0 16px}.details-text p:last-child{margin-bottom:0}.stage-gallery-section{margin-top:20px}.gallery-header{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px}.gallery-header span{font-family:var(--stage-font-tech);font-size:12px;font-weight:600;letter-spacing:.3em}.gallery-header span,.gallery-header svg{color:var(--stage-cyan)}.stage-editor-section{margin-top:40px;padding-top:40px;border-top:1px solid hsla(0,0%,100%,.1)}@media(max-width:768px){.hero-image-container{width:260px;height:340px}.hero-name{font-size:32px}.stage-detail-header{padding:12px 16px}.stage-detail-content{padding:30px 16px 80px}.cheer-button{padding:12px 24px;font-size:12px}}@media(max-width:480px){.hero-image-container{width:220px;height:290px}.hero-frame{inset:-6px}.frame-decoration{font-size:16px}.hero-name-banner{gap:12px}.name-stars{font-size:18px}}.stage-gallery{width:100%;margin-top:20px}.stage-gallery-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px;color:var(--stage-purple)}.stage-gallery-loading span{font-family:var(--stage-font-tech);font-size:12px;letter-spacing:.2em;color:hsla(0,0%,100%,.5)}.stage-gallery-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding:0 8px}.header-decoration{display:flex;align-items:center;gap:10px;font-family:var(--stage-font-tech);font-size:11px;font-weight:600;letter-spacing:.25em;color:var(--stage-gold)}.header-decoration svg{animation:starSpin 4s linear infinite}.add-photocard-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:20px;border:1px solid rgba(147,51,234,.4);background:rgba(147,51,234,.15);color:var(--stage-white);font-family:var(--stage-font-tech);font-size:11px;font-weight:500;letter-spacing:.1em;cursor:pointer;transition:all .3s ease}.add-photocard-btn:hover{background:rgba(147,51,234,.3);border-color:var(--stage-purple);box-shadow:0 0 20px rgba(147,51,234,.3)}.stage-gallery-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:12px}.stage-gallery-empty svg{color:var(--stage-pink);opacity:.5}.stage-gallery-empty p{font-family:var(--stage-font-display);font-size:20px;color:var(--stage-white);margin:0}.stage-gallery-empty span{font-family:var(--stage-font-body);font-size:14px;color:hsla(0,0%,100%,.4)}.stage-photocard-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:32px;gap:32px;perspective:1000px}.stage-photocard{position:relative;aspect-ratio:3/4;border-radius:12px;cursor:pointer;transform-style:preserve-3d;background:linear-gradient(135deg,rgba(20,15,30,.9),rgba(30,20,45,.9));border:2px solid var(--frame-color);box-shadow:0 4px 20px rgba(0,0,0,.4),0 0 20px var(--frame-glow);overflow:hidden}.stage-photocard:hover .photocard-shine{opacity:.6;transform:translateX(100%)}.stage-photocard:hover .photocard-holographic{opacity:.5}.photocard-holographic{background:var(--stage-gradient-holographic);background-size:400% 400%;mix-blend-mode:overlay;opacity:0;transition:opacity .5s ease;animation:holographicShift 4s linear infinite;z-index:3}.photocard-frame,.photocard-holographic{position:absolute;inset:0;pointer-events:none}.photocard-frame{z-index:4}.photocard-frame .frame-corner{position:absolute;font-size:10px;color:var(--frame-color);text-shadow:0 0 8px var(--frame-glow)}.photocard-frame .frame-corner.tl{top:4px;left:6px}.photocard-frame .frame-corner.tr{top:4px;right:6px}.photocard-frame .frame-corner.bl{bottom:4px;left:6px}.photocard-frame .frame-corner.br{bottom:4px;right:6px}.photocard-image{position:absolute;inset:6px;border-radius:8px;overflow:hidden;z-index:1}.photocard-image img{width:100%;height:100%;object-fit:cover}.photocard-shine{position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,hsla(0,0%,100%,.3) 50%,transparent 60%);transform:translateX(-100%);transition:transform .5s ease,opacity .3s ease;opacity:0;pointer-events:none;z-index:2}.photocard-serial{position:absolute;bottom:8px;right:10px;font-family:var(--stage-font-tech);font-size:9px;font-weight:500;letter-spacing:.1em;color:hsla(0,0%,100%,.4);z-index:5}.hover-sparkle{position:absolute;top:50%;left:50%;font-size:16px;pointer-events:none;z-index:10}.stage-lightbox-overlay{position:fixed;inset:0;z-index:10000;background:rgba(10,6,18,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;padding:20px}.stage-lightbox{position:relative;max-width:400px;width:100%;display:flex;flex-direction:column;align-items:center;gap:24px}.lightbox-close{position:absolute;top:-50px;right:0;width:44px;height:44px;border-radius:50%;border:1px solid hsla(0,0%,100%,.2);background:hsla(0,0%,100%,.1);color:var(--stage-white);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.lightbox-close:hover{background:hsla(0,0%,100%,.2)}.lightbox-card{position:relative;width:100%;aspect-ratio:3/4;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,rgba(20,15,30,.95),rgba(35,25,50,.95));border:3px solid var(--stage-gold);box-shadow:0 8px 40px rgba(0,0,0,.5),0 0 60px rgba(251,191,36,.2)}.lightbox-card img{width:100%;height:100%;object-fit:cover}.lightbox-holographic{background:var(--stage-gradient-holographic);background-size:400% 400%;mix-blend-mode:overlay;opacity:.3;animation:holographicShift 4s linear infinite;z-index:2}.lightbox-frame,.lightbox-holographic{position:absolute;inset:0;pointer-events:none}.lightbox-frame{z-index:3}.lightbox-frame .frame-star{position:absolute;font-size:20px;color:var(--stage-gold);text-shadow:0 0 15px rgba(251,191,36,.6);animation:starSpin 4s linear infinite}.lightbox-frame .frame-star.tl{top:12px;left:14px}.lightbox-frame .frame-star.tr{top:12px;right:14px;animation-direction:reverse}.lightbox-frame .frame-star.bl{bottom:12px;left:14px;animation-delay:1s}.lightbox-frame .frame-star.br{bottom:12px;right:14px;animation-direction:reverse;animation-delay:1s}.lightbox-shine{position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,hsla(0,0%,100%,.1) 50%,transparent 60%);animation:shineMove 3s ease-in-out infinite;pointer-events:none;z-index:4}.lightbox-actions{display:flex;gap:12px}.lightbox-delete{display:flex;align-items:center;gap:8px;padding:12px 20px;border-radius:12px;border:1px solid rgba(239,68,68,.5);background:rgba(239,68,68,.15);color:#fca5a5;font-family:var(--stage-font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.lightbox-delete:hover{background:rgba(239,68,68,.25);border-color:rgba(239,68,68,.7)}.stage-add-modal{width:100%;max-width:480px;max-height:80vh;background:linear-gradient(180deg,rgba(21,13,31,.98),rgba(10,6,18,.98));border:1px solid rgba(147,51,234,.3);border-radius:24px;overflow:hidden;display:flex;flex-direction:column}.add-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(147,51,234,.2)}.add-modal-header h3{font-family:var(--stage-font-tech);font-size:14px;font-weight:600;letter-spacing:.2em;color:var(--stage-gold);margin:0}.add-modal-header button{width:32px;height:32px;border-radius:50%;border:1px solid hsla(0,0%,100%,.2);background:transparent;color:var(--stage-white);font-size:20px;cursor:pointer;transition:all .2s ease}.add-modal-header button:hover{background:hsla(0,0%,100%,.1)}.add-modal-tabs{display:flex;padding:16px;gap:8px}.add-modal-tabs button{flex:1 1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:12px;border:1px solid hsla(0,0%,100%,.1);background:transparent;color:hsla(0,0%,100%,.5);font-family:var(--stage-font-body);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.add-modal-tabs button:hover{border-color:rgba(147,51,234,.3);color:hsla(0,0%,100%,.8)}.add-modal-tabs button.active{border-color:var(--stage-purple);background:rgba(147,51,234,.15);color:var(--stage-white)}.add-modal-content{flex:1 1;overflow-y:auto;padding:16px}.modal-empty,.modal-loading{display:flex;align-items:center;justify-content:center;padding:60px 20px;color:hsla(0,0%,100%,.5);font-family:var(--stage-font-body)}.import-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.import-item{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .2s ease}.import-item img{width:100%;height:100%;object-fit:cover}.import-item:hover{border-color:var(--stage-purple)}.import-item:hover .import-overlay{opacity:1}.import-overlay{position:absolute;inset:0;background:rgba(147,51,234,.6);opacity:0;transition:opacity .2s ease;color:var(--stage-white)}.import-overlay,.upload-zone{display:flex;align-items:center;justify-content:center}.upload-zone{padding:40px}.upload-btn{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 60px;border-radius:16px;border:2px dashed rgba(147,51,234,.4);background:rgba(147,51,234,.05);color:var(--stage-white);cursor:pointer;transition:all .3s ease}.upload-btn span{font-family:var(--stage-font-body);font-size:16px;font-weight:600}.upload-btn .upload-hint{font-size:12px;color:hsla(0,0%,100%,.4);font-weight:400}.upload-btn:hover{border-color:var(--stage-purple);background:rgba(147,51,234,.1)}.upload-btn:disabled{opacity:.5;cursor:not-allowed}.stage-crop-modal{width:100%;max-width:500px;background:linear-gradient(180deg,rgba(21,13,31,.98),rgba(10,6,18,.98));border:1px solid rgba(147,51,234,.3);border-radius:24px;overflow:hidden}.crop-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(147,51,234,.2)}.crop-header h3{font-family:var(--stage-font-display);margin:0}.crop-header button,.crop-header h3{font-size:20px;color:var(--stage-white)}.crop-header button{width:32px;height:32px;border-radius:50%;border:1px solid hsla(0,0%,100%,.2);background:transparent;cursor:pointer}.crop-container{position:relative;width:100%;height:350px}.crop-controls{padding:16px 24px}.crop-controls input[type=range]{width:100%;height:4px;background:hsla(0,0%,100%,.1);border-radius:2px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.crop-controls input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--stage-purple);border-radius:50%;cursor:pointer}.crop-actions{display:flex;gap:12px;padding:16px 24px;border-top:1px solid rgba(147,51,234,.2)}.crop-cancel{flex:1 1;padding:14px;border-radius:12px;border:1px solid hsla(0,0%,100%,.2);background:transparent;color:var(--stage-white);font-family:var(--stage-font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.crop-cancel:hover{background:hsla(0,0%,100%,.08)}.crop-confirm{flex:2 1;padding:14px;border-radius:12px;border:none;background:var(--stage-gradient-primary);color:var(--stage-white);font-family:var(--stage-font-body);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.crop-confirm:hover{box-shadow:0 4px 20px rgba(147,51,234,.4)}.crop-confirm:disabled{opacity:.6;cursor:not-allowed}@media(max-width:1024px){.stage-gallery-wrapper{max-width:900px;padding:0 40px}.stage-photocard-grid{grid-template-columns:repeat(3,1fr);gap:24px}}@media(max-width:768px){.stage-gallery-wrapper{padding:0 24px}.stage-photocard-grid{gap:16px}.import-grid,.stage-photocard-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.stage-photocard-grid{gap:12px}}