*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.app-container{display:flex;flex-direction:column;min-height:100vh}.btn{font-weight:500;padding:10px 20px;transition:all .3s ease}.btn-primary{background-color:#4f46e5}.btn-primary:hover{background-color:#4338ca}.btn-success{background-color:#10b981}.btn-success:hover{background-color:#059669}.btn-success:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}.btn-secondary{background-color:#6b7280}.btn-secondary:hover{background-color:#4b5563}.btn-outline{background-color:transparent;border:2px solid #4f46e5;color:#4f46e5}.btn-outline:hover{background-color:#4f46e5;color:#fff}.form-input{border:1px solid #d1d5db;border-radius:6px;font-size:16px;padding:12px;transition:border-color .3s ease;width:100%}.form-input:focus{border-color:#4f46e5;outline:none}.form-error{color:#ef4444;font-size:14px;margin-top:5px}.card{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:24px}.spinner{border-top-color:#4f46e5;height:40px;margin:20px auto;width:40px}.canvas-container{background:#fff;border:1px solid #e5e7eb}.draggable-element.selected{outline:2px solid #4f46e5;outline-offset:2px}.image-element img{object-fit:fill}.toolbar{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;gap:12px;padding:16px}.toolbar-group{border-right:1px solid #e5e7eb;padding-right:12px}.toolbar-group:last-child{border-right:none}.sidebar{width:300px}.sidebar-section{margin-bottom:24px}.sidebar-title{font-size:18px;margin-bottom:12px}.character-gallery{grid-gap:12px;gap:12px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.character-card{border:2px solid #e5e7eb;border-radius:6px;padding:8px;transition:all .3s ease}.character-card:hover{border-color:#4f46e5;transform:translateY(-2px)}.character-card img{border-radius:4px;height:80px;margin-bottom:6px}.character-name{color:#6b7280;font-size:12px}@media (max-width:768px){.sidebar{border-left:none;border-top:1px solid #e5e7eb;width:100%}}.text-style-tear-box{padding:.5em!important}.text-style-3d-title{font-weight:900!important;line-height:.75em;text-align:center!important;text-transform:uppercase}.home-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.hero{color:#fff;overflow:hidden;padding:100px 20px;position:relative;text-align:center}.hero-banner-slider{animation:slideCarousel 60s linear infinite;bottom:0;display:flex;left:0;pointer-events:none;position:absolute;right:0;top:0;width:-webkit-fit-content;width:fit-content}.hero-banner-image{background-position:50%;background-repeat:no-repeat;background-size:cover;flex-shrink:0;height:100%;width:100vw}@keyframes slideCarousel{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.hero:before{background:linear-gradient(135deg,rgba(102,126,234,.85),rgba(118,75,162,.85))}.hero:after,.hero:before{bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.hero:after{background:hsla(0,0%,100%,.15)}.hero-content{margin:0 auto;max-width:800px;position:relative;z-index:2}.hero-title{align-items:center;display:flex;font-size:64px;font-weight:800;gap:20px;justify-content:center;margin:0 0 20px;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.hero-title .banner-icon{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.3));height:80px;width:auto}.hero-subtitle{font-size:28px;font-weight:600;line-height:1.4;margin:0 0 20px}.hero-description{font-size:18px;line-height:1.6;margin:0 0 40px;opacity:.95}.hero-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}.btn-large{font-weight:600;padding:16px 32px}.screenshot-gallery-section{background:linear-gradient(180deg,hsla(0,0%,100%,.95),#f9fafb);overflow:hidden;padding:80px 20px;position:relative}.screenshot-gallery-section:before{background:linear-gradient(90deg,transparent,rgba(102,126,234,.3),transparent);content:"";height:1px;left:0;position:absolute;right:0;top:0}.gallery-container{margin:0 auto;max-width:1400px}.gallery-title{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:48px;font-weight:800;margin:0 0 16px;text-align:center}.gallery-subtitle{color:#6b7280;font-size:20px;font-weight:400;margin:0 0 50px;text-align:center}.gallery-scroll-wrapper{margin-bottom:40px;position:relative}.gallery-scroll{-ms-overflow-style:none;display:flex;gap:24px;overflow-x:auto;padding:20px 0;scroll-behavior:smooth;scrollbar-width:none}.gallery-scroll::-webkit-scrollbar{display:none}.gallery-item{animation:fadeInUp .6s ease-out;flex-shrink:0;width:400px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.gallery-image-wrapper{background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,.15);cursor:pointer;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.gallery-image-wrapper:hover{box-shadow:0 20px 40px rgba(102,126,234,.3);transform:translateY(-8px) scale(1.02)}.gallery-image{display:block;height:auto;transition:transform .4s ease;width:100%}.gallery-image-wrapper:hover .gallery-image{transform:scale(1.05)}.gallery-overlay{align-items:center;background:linear-gradient(135deg,rgba(102,126,234,.9),rgba(118,75,162,.9));bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.gallery-image-wrapper:hover .gallery-overlay{opacity:1}.gallery-view-text{border:2px solid #fff;border-radius:50px;color:#fff;font-size:18px;font-weight:600;letter-spacing:1px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease}.gallery-image-wrapper:hover .gallery-view-text{transform:scale(1.1)}.gallery-navigation{display:flex;gap:16px;justify-content:center}.gallery-nav-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 4px 12px rgba(102,126,234,.3);color:#fff;cursor:pointer;display:flex;font-size:24px;height:56px;justify-content:center;transition:all .3s ease;width:56px}.gallery-nav-btn:hover{box-shadow:0 6px 20px rgba(102,126,234,.4);transform:scale(1.1)}.gallery-nav-btn:active{transform:scale(.95)}.gallery-nav-btn span{display:block;line-height:1}@media (max-width:768px){.gallery-title{font-size:36px}.gallery-subtitle{font-size:16px;margin-bottom:30px}.gallery-item{width:320px}.gallery-nav-btn{font-size:20px;height:48px;width:48px}}@media (max-width:480px){.screenshot-gallery-section{padding:60px 16px}.gallery-title{font-size:28px}.gallery-item{width:280px}}.cost-savings-section{background:#f9fafb;padding:60px 20px;text-align:center}.cost-savings-content{margin:0 auto;max-width:1000px}.cost-savings-section h2{color:#1f2937;font-size:32px;margin:0 0 40px}.cost-comparison{grid-gap:30px;align-items:center;display:grid;gap:30px;grid-template-columns:1fr auto 1fr;margin-bottom:30px}.cost-card{background:#fff;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.08);padding:30px 24px;text-align:left}.cost-card.traditional{border:2px solid #f87171}.cost-card.tinyfox{border:2px solid #22c55e;transform:scale(1.02)}.cost-card h3{color:#1f2937;font-size:20px;margin:0 0 16px}.cost-amount{color:#ef4444;font-size:28px;font-weight:700;margin-bottom:20px}.cost-amount.highlight{color:#22c55e;font-size:36px}.cost-breakdown{list-style:none;margin:0;padding:0}.cost-breakdown li{border-bottom:1px solid #e5e7eb;color:#4b5563;font-size:14px;padding:10px 0}.cost-breakdown li:last-child{border-bottom:none}.cost-card.tinyfox .cost-breakdown li{color:#16a34a;font-weight:500}.cost-divider{align-items:center;display:flex;justify-content:center}.vs-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 4px 12px rgba(102,126,234,.2);color:#fff;font-size:18px;font-weight:700;padding:12px 20px}.cost-savings-cta{color:#1f2937;font-size:15px;line-height:1.6;margin:0 auto;max-width:700px}.cost-savings-cta strong{color:#22c55e;font-size:16px}.earnings-info{background:#fff;border:2px solid #10b981;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.08);margin-top:30px;padding:30px}.earnings-info h3{color:#1f2937;font-size:24px;margin:0 0 16px}.earnings-description{color:#4b5563;font-size:15px;line-height:1.7;margin:0;text-align:left}.earnings-description strong{color:#10b981;font-weight:600}.audience-section{background:#fff;padding:80px 20px;text-align:center}.audience-section h2{color:#1f2937;font-size:42px;margin:0 0 60px}.audience-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto;max-width:1200px}.audience-card{background:#f9fafb;border-radius:16px;padding:40px 30px;transition:transform .3s,box-shadow .3s}.audience-card:hover{box-shadow:0 20px 40px rgba(0,0,0,.1);transform:translateY(-8px)}.audience-icon{font-size:64px;margin-bottom:20px}.audience-card h3{color:#1f2937;font-size:24px;margin:0 0 16px}.audience-card p{color:#6b7280;font-size:16px;line-height:1.6;margin:0}.how-it-works{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:80px 20px;text-align:center}.how-it-works h2{font-size:42px;margin:0 0 60px}.steps-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.step{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:16px;cursor:pointer;padding:40px 30px;position:relative;transition:all .3s ease}.step:hover{background:hsla(0,0%,100%,.15);box-shadow:0 8px 16px rgba(0,0,0,.2);transform:translateY(-4px)}.step-number{align-items:center;background:#fff;border-radius:50%;color:#667eea;display:flex;font-size:28px;font-weight:800;height:60px;justify-content:center;margin:0 auto 20px;transition:transform .3s ease;width:60px}.step:hover .step-number{transform:scale(1.1)}.step h3{font-size:22px;margin:0 0 16px}.step p{font-size:16px;line-height:1.6;margin:0 0 20px;opacity:.95}.view-screenshot-btn{background:hsla(0,0%,100%,.2);border:1px solid hsla(0,0%,100%,.4);border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:12px;padding:10px 20px;transition:all .3s ease}.view-screenshot-btn:hover{background:hsla(0,0%,100%,.3);border-color:hsla(0,0%,100%,.6)}.lightbox-overlay{animation:fadeIn .3s ease;background:rgba(0,0,0,.95);bottom:0;left:0;position:fixed;right:0;top:0;z-index:10000}.lightbox-content,.lightbox-overlay{align-items:center;display:flex;justify-content:center}.lightbox-content{height:90vh;position:relative;width:90vw}.lightbox-image{animation:zoomIn .3s ease;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);max-height:100%;max-width:100%;object-fit:contain}@keyframes zoomIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.lightbox-close{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:32px;height:50px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:50px;z-index:10001}.lightbox-close:hover{background:hsla(0,0%,100%,.3);transform:rotate(90deg) scale(1.1)}.lightbox-arrow{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.2);border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:40px;height:60px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:10001}.lightbox-arrow:hover{background:hsla(0,0%,100%,.3);transform:translateY(-50%) scale(1.1)}.lightbox-arrow-left{left:20px}.lightbox-arrow-right{right:20px}.lightbox-counter{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(0,0,0,.7);border-radius:25px;bottom:30px;color:#fff;font-size:16px;font-weight:600;left:50%;padding:10px 20px;position:absolute;transform:translateX(-50%);z-index:10001}@media (min-width:768px){.lightbox-overlay:after{color:hsla(0,0%,100%,.6);content:"Press ESC to close • Use arrow keys to navigate";font-size:14px;left:50%;position:absolute;top:30px;transform:translateX(-50%)}}@media (max-width:768px){.lightbox-close{font-size:24px;height:40px;right:10px;top:10px;width:40px}.lightbox-arrow{font-size:32px;height:50px;width:50px}.lightbox-arrow-left{left:10px}.lightbox-arrow-right{right:10px}.lightbox-counter{bottom:20px;font-size:14px;padding:8px 16px}}.screenshot-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.8);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.screenshot-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:90vh;max-width:90vw;overflow-y:auto;padding:40px;position:relative;width:100%}.screenshot-modal h2{color:#1f2937;font-size:32px;margin:0 0 16px}.modal-description{color:#6b7280;font-size:16px;line-height:1.6;margin:0 0 24px;max-width:800px}.modal-close{align-items:center;background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;font-size:24px;font-weight:300;height:40px;justify-content:center;line-height:1;position:absolute;right:20px;top:20px;transition:all .2s ease;width:40px}.modal-close:hover{background:#e5e7eb;color:#1f2937;transform:rotate(90deg)}.screenshot-carousel{align-items:center;display:flex;gap:16px;position:relative}.screenshot-container{align-items:center;background:#f9fafb;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);display:flex;flex:1 1;justify-content:center;max-height:calc(90vh - 250px);overflow:hidden}.screenshot-container img{display:block;height:auto;max-height:100%;max-width:100%;object-fit:contain;transition:opacity .3s ease;width:auto}.carousel-arrow{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:50%;color:#374151;cursor:pointer;display:flex;flex-shrink:0;font-size:36px;font-weight:300;height:50px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;-webkit-user-select:none;user-select:none;width:50px}.carousel-arrow:hover{background:#667eea;border-color:#667eea;color:#fff;transform:scale(1.1)}.carousel-arrow:active{transform:scale(.95)}.carousel-indicators{display:flex;gap:8px;justify-content:center;margin-top:20px}.carousel-indicator{background:#d1d5db;border:none;border-radius:50%;cursor:pointer;height:12px;padding:0;transition:all .3s ease;width:12px}.carousel-indicator:hover{background:#9ca3af;transform:scale(1.2)}.carousel-indicator.active{background:#667eea;border-radius:6px;width:32px}.carousel-counter{color:#6b7280;font-size:14px;font-weight:500;margin-top:12px;text-align:center}.publishing-section{background:#f9fafb;padding:80px 20px;text-align:center}.publishing-content{margin:0 auto;max-width:800px}.publishing-section h2{color:#1f2937;font-size:42px;margin:0 0 20px}.publishing-intro{color:#6b7280;font-size:18px;line-height:1.6;margin:0 0 40px}.publishing-benefits{background:#fff;border-radius:16px;box-shadow:0 4px 6px rgba(0,0,0,.05);margin-bottom:40px;padding:40px;text-align:left}.benefit{align-items:center;border-bottom:1px solid #e5e7eb;color:#374151;display:flex;font-size:16px;gap:16px;padding:16px 0}.benefit:last-child{border-bottom:none}.benefit-icon{align-items:center;background:#10b981;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:600;height:28px;justify-content:center;width:28px}.features-section{background:#fff;padding:80px 20px;text-align:center}.features-section h2{color:#1f2937;font-size:42px;margin:0 0 60px}.features-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1200px}.feature{border-radius:12px;padding:30px;transition:transform .3s}.feature:hover{transform:translateY(-4px)}.feature-icon{font-size:48px;margin-bottom:16px}.feature h3{color:#1f2937;font-size:20px;margin:0 0 12px}.feature p{color:#6b7280;font-size:15px;line-height:1.6;margin:0}.cta-section{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:100px 20px;text-align:center}.cta-section h2{font-size:48px;margin:0 0 16px}.cta-section p{font-size:20px;margin:0 0 40px;opacity:.95}.cta-buttons{display:flex;flex-wrap:wrap;gap:16px;justify-content:center}@media (max-width:768px){.hero-title{flex-direction:column;font-size:42px;gap:12px}.hero-title .banner-icon{height:60px}.hero-subtitle{font-size:22px}.hero-description{font-size:16px}.audience-section h2,.cost-savings-section h2,.features-section h2,.how-it-works h2,.publishing-section h2{font-size:32px}.cta-section h2{font-size:36px}.cost-comparison{gap:30px;grid-template-columns:1fr}.cost-divider{order:0}.cost-card.traditional{order:1}.cost-card.tinyfox{order:2;transform:scale(1)}.vs-badge{font-size:18px;padding:12px 20px}.cost-amount{font-size:28px}.cost-amount.highlight{font-size:36px}.cost-savings-cta{font-size:16px}.cost-savings-cta strong{font-size:18px}.audience-grid,.features-grid,.steps-grid{gap:30px;grid-template-columns:1fr}.cta-buttons,.hero-buttons{flex-direction:column}.btn-large{max-width:300px;width:100%}.screenshot-modal{max-height:95vh;padding:24px}.screenshot-modal h2{font-size:24px;margin-right:40px}.modal-description{font-size:14px}.modal-close{font-size:20px;height:36px;width:36px}.screenshot-carousel{flex-direction:column;gap:12px}.carousel-arrow{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:hsla(0,0%,100%,.95);font-size:32px;height:44px;position:absolute;top:50%;transform:translateY(-50%);width:44px;z-index:10}.carousel-arrow-left{left:8px}.carousel-arrow-right{right:8px}.carousel-arrow:hover{transform:translateY(-50%) scale(1.1)}.carousel-arrow:active{transform:translateY(-50%) scale(.95)}}.home-footer{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;margin-top:80px;padding:60px 20px 20px}.footer-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto 40px;max-width:1200px}.footer-section h4{color:#fff;font-size:18px;font-weight:600;margin-bottom:16px}.footer-section p{color:hsla(0,0%,100%,.9);font-size:14px;line-height:1.6;margin:0}.footer-section ul{list-style:none;margin:0;padding:0}.footer-section ul li{margin-bottom:12px}.footer-section ul li a{color:hsla(0,0%,100%,.9);font-size:14px;text-decoration:none;transition:color .2s}.footer-section ul li a:hover{color:#fff;text-decoration:underline}.footer-bottom{border-top:1px solid hsla(0,0%,100%,.2);margin:0 auto;max-width:1200px;padding-top:30px;text-align:center}.footer-bottom p{color:hsla(0,0%,100%,.8);font-size:14px;margin:8px 0}.footer-disclaimer{color:hsla(0,0%,100%,.6)!important;font-size:12px!important;font-style:italic}@media (max-width:768px){.home-footer{margin-top:60px;padding:40px 20px 20px}.footer-content{gap:30px;grid-template-columns:1fr}.footer-section{text-align:center}}.help-page{background:#f9fafb;min-height:100vh}.help-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:80px 20px;text-align:center}.help-header h1{font-size:48px;font-weight:800;margin:0 0 16px}.help-header p{font-size:20px;margin:0 auto;max-width:600px;opacity:.95}.help-content{margin:-40px auto 0;max-width:900px;padding:0 20px 80px}.faq-section{background:#fff;border-radius:16px;box-shadow:0 4px 6px rgba(0,0,0,.05);margin-bottom:40px;padding:40px}.faq-section h2{color:#1f2937;font-size:32px;margin:0 0 32px}.faq-list{display:flex;flex-direction:column;gap:12px}.faq-item{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:all .3s}.faq-item.open{border-color:#667eea;box-shadow:0 4px 12px rgba(102,126,234,.1)}.faq-question{align-items:center;background:#fff;border:none;color:#1f2937;cursor:pointer;display:flex;font-size:18px;font-weight:600;justify-content:space-between;padding:20px 24px;text-align:left;transition:background .2s;width:100%}.faq-question:hover{background:#f9fafb}.faq-item.open .faq-question{background:#f9fafb;color:#667eea}.faq-icon{color:#667eea;flex-shrink:0;font-size:24px;font-weight:600;margin-left:16px}.faq-answer{animation:slideDown .3s ease;background:#fff;padding:0 24px 24px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.faq-answer p{color:#6b7280;font-size:16px;line-height:1.6;margin:0 0 12px}.faq-answer p:last-child{margin-bottom:0}.faq-answer ol,.faq-answer ul{color:#6b7280;line-height:1.8;margin:12px 0;padding-left:24px}.faq-answer li{margin-bottom:8px}.faq-answer strong{color:#374151;font-weight:600}.faq-answer a{color:#667eea;text-decoration:underline}.faq-answer a:hover{color:#764ba2}.quick-links{background:#fff;border-radius:16px;box-shadow:0 4px 6px rgba(0,0,0,.05);margin-bottom:40px;padding:40px}.quick-links h2{color:#1f2937;font-size:32px;margin:0 0 32px}.links-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.link-card{background:#f9fafb;border-radius:12px;color:inherit;cursor:pointer;display:block;padding:30px;text-align:center;text-decoration:none;transition:all .3s}.link-card:hover{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 8px 16px rgba(0,0,0,.1);color:#fff;transform:translateY(-4px)}.link-icon{font-size:48px;margin-bottom:16px}.link-card h3{font-size:20px;margin:0 0 8px}.link-card p{font-size:14px;margin:0;opacity:.8}.contact-section{background:#fff;border-radius:16px;box-shadow:0 4px 6px rgba(0,0,0,.05);padding:40px;text-align:center}.contact-section h2{color:#1f2937;font-size:32px;margin:0 0 16px}.contact-section>p{color:#6b7280;font-size:18px;margin:0 0 24px}.contact-info{margin:0 auto;max-width:600px;padding:24px}.contact-info p{color:#6b7280;line-height:1.6;margin:0}@media (max-width:768px){.help-header h1{font-size:36px}.help-header p{font-size:16px}.contact-section,.faq-section,.quick-links{padding:24px}.contact-section h2,.faq-section h2,.quick-links h2{font-size:24px}.faq-question{font-size:16px;padding:16px}.faq-answer{padding:0 16px 16px}.links-grid{grid-template-columns:1fr}}.auth-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-card{background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.2);max-width:450px;padding:40px;width:100%}.auth-title{color:#1f2937;font-size:28px;font-weight:700;margin-bottom:8px;text-align:center}.auth-subtitle{font-size:18px;font-weight:400}.auth-description,.auth-subtitle{color:#6b7280;margin-bottom:32px;text-align:center}.auth-description{font-size:15px;line-height:1.5}.btn-full{margin-top:8px;width:100%}.auth-footer{color:#6b7280;margin-top:24px;text-align:center}.auth-footer a{color:#4f46e5;font-weight:500;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-divider{margin:24px 0;position:relative;text-align:center}.auth-divider:before{background:#e5e7eb;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.auth-divider span{color:#6b7280;font-size:14px;padding:0 16px;position:relative}.auth-divider span,.btn-google{background:#fff;font-weight:500}.btn-google{align-items:center;border:1px solid #d1d5db;color:#1f2937;display:flex;gap:12px;justify-content:center}.btn-google:hover{background:#f9fafb;border-color:#9ca3af}.btn-google:disabled{cursor:not-allowed;opacity:.5}.google-login-wrapper{align-items:center;display:flex;justify-content:center;margin:16px 0}.google-login-wrapper>div{width:100%!important}.wizard-overlay{align-items:center;animation:fadeIn .2s ease-in;background-color:rgba(0,0,0,.7);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.wizard-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.wizard-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px 28px}.wizard-header h2{color:#1f2937;font-size:24px;font-weight:600;margin:0}.wizard-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:32px;height:32px;justify-content:center;padding:0;transition:all .2s;width:32px}.wizard-close:hover{background-color:#f3f4f6;color:#374151}.wizard-close:disabled{cursor:not-allowed;opacity:.5}.wizard-progress{padding:20px 28px 0}.wizard-progress-bar{background-color:#e5e7eb;border-radius:10px;height:6px;margin-bottom:8px;overflow:hidden}.wizard-progress-fill{background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:10px;height:100%;transition:width .3s ease}.wizard-progress-text{color:#6b7280;font-size:13px;font-weight:500;text-align:center}.wizard-body{flex:1 1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:28px}.wizard-step{animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.wizard-step h3{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 8px}.wizard-description{color:#6b7280;font-size:14px;margin:0 0 24px}.wizard-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;padding:12px 16px}.form-group,.wizard-error{margin-bottom:20px}.form-label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-input,.form-select,.form-textarea{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.form-textarea{min-height:100px;resize:vertical}.form-hint{color:#6b7280;display:block;font-size:12px;margin-top:6px}.wizard-instructions{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:10px;margin-top:24px;padding:20px}.wizard-instructions h4{color:#0369a1;font-size:15px;font-weight:600;margin:0 0 12px}.wizard-instructions ol{color:#0c4a6e;margin:0 0 16px;padding-left:20px}.wizard-instructions ol li{font-size:14px;line-height:1.5;margin-bottom:8px}.wizard-tip{background-color:hsla(0,0%,100%,.6);border-radius:6px;color:#0c4a6e;font-size:13px;line-height:1.5;margin:0;padding:12px}.wizard-tip strong{color:#075985}.wizard-review{grid-gap:20px;display:grid;gap:20px;margin-bottom:24px}.review-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.review-section h4{color:#374151;font-size:15px;font-weight:600;margin:0 0 12px}.review-section p{color:#6b7280;font-size:14px;line-height:1.5;margin:8px 0}.review-section p strong{color:#1f2937;font-weight:500;margin-right:8px}.wizard-footer{align-items:center;background-color:#f9fafb;border-radius:0 0 12px 12px;border-top:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 28px}.wizard-actions-left,.wizard-actions-right{display:flex;gap:10px}.wizard-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:all .2s}.wizard-btn:disabled{cursor:not-allowed;opacity:.6}.wizard-btn-primary{background-color:#3b82f6;color:#fff}.wizard-btn-primary:hover:not(:disabled){background-color:#2563eb;box-shadow:0 4px 12px rgba(59,130,246,.3);transform:translateY(-1px)}.wizard-btn-success{background-color:#10b981;color:#fff}.wizard-btn-success:hover:not(:disabled){background-color:#059669;box-shadow:0 4px 12px rgba(16,185,129,.3);transform:translateY(-1px)}.wizard-btn-secondary{background-color:#fff;border:1px solid #d1d5db;color:#374151}.wizard-btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.wizard-btn-tertiary{background-color:#f3f4f6;border:1px solid #e5e7eb;color:#6b7280}.wizard-btn-tertiary:hover:not(:disabled){background-color:#e5e7eb;color:#374151}@media (max-width:640px){.wizard-modal{max-height:95vh;width:95%}.wizard-header{padding:20px}.wizard-header h2{font-size:20px}.wizard-body{padding:20px}.wizard-footer{flex-direction:column;gap:12px;padding:16px 20px}.wizard-actions-left,.wizard-actions-right{width:100%}.wizard-btn{flex:1 1;justify-content:center}}.dashboard-container{background-color:#f5f5f5;min-height:100vh}.dashboard-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 40px}.dashboard-header h1{align-items:center;color:#1f2937;display:flex;font-size:28px;gap:12px}.dashboard-header h1 .banner-icon{height:40px;width:auto}.user-info{color:#6b7280;font-size:14px}.api-badge{background:linear-gradient(135deg,#667eea,#764ba2)}.admin-badge,.api-badge{border-radius:4px;color:#fff;font-size:12px;margin-left:8px;padding:4px 8px}.admin-badge{background:linear-gradient(135deg,#f59e0b,#d97706);font-weight:600}.dashboard-content{margin:0 auto;max-width:1400px;padding:40px}.create-btn{font-size:18px;margin-bottom:32px;padding:12px 24px}.storybooks-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.storybook-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);display:flex;flex-direction:column;padding:24px;transition:all .3s ease}.storybook-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-2px)}.storybook-thumbnail{align-items:center;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;display:flex;height:200px;justify-content:center;margin-bottom:16px;overflow:hidden;width:100%}.storybook-thumbnail img{background:#fff;height:100%;object-fit:contain;width:100%}.storybook-content{cursor:pointer;flex:1 1;margin-bottom:16px}.storybook-content h3{color:#1f2937;font-size:20px;margin-bottom:8px}.storybook-description{color:#6b7280;font-size:14px;margin-bottom:12px}.storybook-meta{color:#9ca3af;display:flex;font-size:13px;gap:16px;margin-bottom:8px}.storybook-date{color:#9ca3af;font-size:12px}.storybook-actions{display:flex;gap:8px}.storybook-actions .btn{flex:1 1;font-size:14px;padding:8px 16px}.empty-state{font-size:18px}.modal-content{max-width:500px;width:90%}@media (max-width:768px){.dashboard-header{align-items:flex-start;flex-direction:column;gap:16px}.dashboard-header h1{font-size:24px}.dashboard-header h1 .banner-icon{height:32px}.header-actions{flex-wrap:wrap;gap:16px;width:100%}.storybooks-grid{grid-template-columns:1fr}}.canvas-container{border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);margin:0 auto;overflow:hidden;position:relative}.draggable-element{cursor:move;position:absolute;-webkit-user-select:none;user-select:none}.draggable-element.selected{outline:2px solid #007bff;outline-offset:-2px}.image-element{overflow:hidden}.image-element img{height:100%;object-fit:cover;pointer-events:none;width:100%}.text-element{word-wrap:break-word;align-items:flex-start;display:flex;overflow:visible;padding:0;white-space:pre-wrap}.text-element,.text-element>div{box-sizing:border-box;overflow-wrap:break-word}.text-element>div{width:100%;word-break:break-word}.text-element>textarea{box-sizing:border-box}.resize-handle{background-color:#007bff;border:1px solid #fff;border-radius:50%;box-shadow:0 1px 2px rgba(0,0,0,.2);height:6px;position:absolute;width:6px;z-index:10}.resize-handle:hover{background-color:#0056b3;transform:scale(1.2)}.resize-handle.nw{cursor:nw-resize;left:-3px;top:-3px}.resize-handle.ne{cursor:ne-resize;right:-3px;top:-3px}.resize-handle.sw{bottom:-3px;cursor:sw-resize;left:-3px}.resize-handle.se{bottom:-3px;cursor:se-resize;right:-3px}.layer-controls{display:flex;gap:6px;left:auto;position:absolute;right:6px;top:6px;transform:none;z-index:50}.layer-btn{align-items:center;background-color:#007bff;border:none;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.2);color:#fff;cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;transition:all .2s ease;width:24px}.layer-btn:hover{background-color:#0056b3;box-shadow:0 4px 8px rgba(0,0,0,.3);transform:translateY(-1px)}.layer-btn:active{box-shadow:0 1px 2px rgba(0,0,0,.2);transform:translateY(0)}.layer-btn.bring-front{background-color:#28a745}.layer-btn.bring-front:hover{background-color:#1e7e34}.layer-btn.send-back{background-color:#dc3545}.layer-btn.aspect-ratio-lock{background-color:#6c757d}.layer-btn.aspect-ratio-lock:hover{background-color:#545b62}.layer-btn.aspect-ratio-lock.active{background-color:#ffc107;color:#212529}.layer-btn.aspect-ratio-lock.active:hover{background-color:#e0a800}.image-inner{display:block;height:100%;position:relative;width:100%}@media (max-width:900px){.canvas-container{aspect-ratio:4/3;height:auto;width:100%}.resize-handle{height:16px;width:16px}.layer-controls{top:-45px}.layer-btn{font-size:16px;height:32px;width:32px}}.toolbar{display:flex;gap:16px}.toolbar-group{align-items:center;display:flex;gap:8px}.dropdown-wrapper{position:relative}.dropdown-menu{background:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);left:0;margin-top:4px;min-width:200px;padding:4px;position:absolute;top:100%;z-index:1000}.dropdown-item{align-items:center;background:#fff;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px;text-align:left;transition:background .2s;width:100%}.dropdown-item:hover{background:#f3f4f6}.style-preview{font-size:18px;min-width:24px}.style-name{color:#374151;font-weight:500}.toolbar label{align-items:center;color:#374151;display:flex;font-size:14px}.toolbar input,.toolbar select{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:6px 8px}.toolbar input:focus,.toolbar select:focus{border-color:#4f46e5;outline:none}.generation-progress-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.8);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.generation-progress-modal{animation:modalFadeIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,.3);max-width:500px;padding:32px;text-align:center;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.generation-progress-header h2{color:#333;font-size:24px;font-weight:600;margin:0 0 8px}.generation-item-name{color:#666;font-size:16px;font-weight:400;margin:0}.generation-progress-content{margin:32px 0}.generation-progress-bar-container{background:#f0f0f0;border-radius:6px;box-shadow:inset 0 2px 4px rgba(0,0,0,.1);height:12px;margin-bottom:16px;overflow:hidden;width:100%}.generation-progress-bar{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:6px;height:100%;position:relative;transition:width .3s ease}.generation-progress-bar:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3) 50%,transparent);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.generation-progress-percentage{color:#333;font-size:18px;font-weight:600;margin-bottom:24px}.generation-progress-message{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:24px;min-height:60px}.generation-message-text{color:#555;flex:1 1;font-size:16px;font-weight:500;line-height:1.4;text-align:center}.generation-message-spinner{flex-shrink:0}.spinner{animation:spin 1s linear infinite;border:3px solid #f3f3f3;border-top-color:#667eea;height:32px;width:32px}.generation-progress-info{margin-bottom:24px}.generation-info-text{color:#777;font-size:14px;line-height:1.4;margin:8px 0}.generation-progress-actions{display:flex;justify-content:center}.generation-cancel-btn{font-size:14px;opacity:.7;padding:12px 24px;transition:opacity .2s ease}.generation-cancel-btn:hover:not(:disabled){opacity:1}.generation-complete-content{align-items:center;display:flex;flex-direction:column;gap:24px}.generation-result-image{display:flex;justify-content:center;max-width:400px;width:100%}.generation-result-image img{border:2px solid #28a745;border-radius:12px}.generation-success-message{max-width:400px;text-align:center}@media (max-width:600px){.generation-progress-modal{margin:16px;padding:24px}.generation-progress-header h2{font-size:20px}.generation-progress-message{flex-direction:column;gap:12px}.generation-message-text{font-size:15px}}.gallery-modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.3);display:flex;flex-direction:column;height:85vh;max-height:900px;max-width:1400px;overflow:hidden;width:95vw}.gallery-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}.gallery-header h2{color:#1f2937;font-size:24px;font-weight:600;margin:0}.close-button{color:#6b7280;font-size:24px;padding:4px 8px}.close-button:hover{color:#1f2937}.moving-indicator{align-items:center;background:hsla(0,0%,100%,.95);border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.3);display:flex;gap:16px;left:50%;padding:24px 32px;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:1000}.moving-indicator span{color:#1f2937;font-size:16px;font-weight:600}.spinner{animation:spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#6366f1;height:24px;width:24px}@keyframes spin{to{transform:rotate(1turn)}}.gallery-body{display:flex;flex:1 1;overflow:hidden}.gallery-sidebar{background:#f9fafb;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0;width:200px}.gallery-tabs{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow-y:auto;padding:12px}.gallery-tab{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#4b5563;cursor:pointer;display:flex;font-size:14px;gap:10px;padding:12px 16px;transition:all .2s}.gallery-tab:hover{background:#f3f4f6;border-color:#d1d5db}.gallery-tab.active{background:#eef2ff;border-color:#6366f1;color:#4f46e5;font-weight:600}.gallery-tab.drag-over{background:#3b82f6;border:3px solid #2563eb;box-shadow:0 4px 12px rgba(59,130,246,.4);color:#fff;transform:scale(1.05)}.gallery-tab.drag-over .tab-count{background:#fff;color:#3b82f6}.gallery-tab.drag-over .tab-icon{animation:bounce .5s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.tab-icon{font-size:20px;line-height:1}.tab-label{flex:1 1}.tab-count{background:#e5e7eb;border-radius:12px;color:#6b7280;font-size:12px;font-weight:600;padding:2px 8px}.gallery-tab.active .tab-count{background:#c7d2fe;color:#4f46e5}.gallery-delete-zone{align-items:center;background:#fee2e2;border:3px dashed #ef4444;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;gap:8px;justify-content:center;margin:12px;min-height:100px;padding:20px 16px;position:relative;transition:all .3s ease;z-index:10}.gallery-delete-zone.drag-over{background:#dc2626;border-color:#991b1b;border-style:solid;box-shadow:0 4px 20px rgba(220,38,38,.4);transform:scale(1.08)}.gallery-delete-zone.drag-over .delete-icon{animation:shake .3s ease-in-out infinite;font-size:32px}.gallery-delete-zone.drag-over .delete-label{color:#fff;font-size:13px}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.delete-icon{font-size:28px;transition:all .3s ease}.delete-label{color:#991b1b;font-size:12px;font-weight:600;text-align:center;transition:all .3s ease}.gallery-grid-section{border-right:1px solid #e5e7eb;display:flex;flex:1 1;flex-direction:column;overflow:hidden}.gallery-grid-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.gallery-grid-header h3{color:#1f2937;font-size:18px;font-weight:600;margin:0}.image-count{color:#6b7280;font-size:14px}.gallery-image-grid{grid-gap:16px;align-content:start;display:grid;flex:1 1;gap:16px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));overflow-y:auto;padding:20px}.empty-state{align-items:center;color:#9ca3af;display:flex;flex-direction:column;grid-column:1/-1;justify-content:center;padding:60px 20px}.empty-state p{font-size:18px;font-weight:600;margin:0 0 8px}.empty-state span{font-size:14px}.gallery-image-item{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:grab;display:flex;flex-direction:column;gap:8px;padding:8px;transition:all .2s}.gallery-image-item:active{cursor:grabbing}.gallery-image-item:hover{border-color:#9ca3af;box-shadow:0 2px 8px rgba(0,0,0,.1);transform:translateY(-2px)}.gallery-image-item.selected{background:#eef2ff;border-color:#6366f1;box-shadow:0 2px 12px rgba(99,102,241,.2)}.image-thumbnail{align-items:center;aspect-ratio:1;background:#f3f4f6;border-radius:4px;display:flex;justify-content:center;overflow:hidden;width:100%}.image-thumbnail img{height:100%;object-fit:cover;width:100%}.image-name{align-items:center;color:#4b5563;display:flex;font-size:13px;justify-content:center;line-height:1.3;min-height:34px;text-align:center;word-break:break-word}.image-name-edit{display:flex;flex-direction:column;gap:6px}.image-name-edit input{border:2px solid #6366f1;border-radius:4px;font-size:13px;outline:none;padding:6px 8px;width:100%}.edit-buttons{display:flex;gap:4px}.edit-buttons button{border:none;border-radius:4px;cursor:pointer;flex:1 1;font-size:14px;padding:4px;transition:all .2s}.save-btn{background:#10b981;color:#fff}.save-btn:hover{background:#059669}.cancel-btn{background:#ef4444;color:#fff}.cancel-btn:hover{background:#dc2626}.gallery-preview-section{background:#f9fafb;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;width:350px}.preview-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:16px 20px}.preview-header h3{color:#1f2937;font-size:16px;font-weight:600;margin:0}.preview-actions{display:flex;gap:8px}.action-btn{background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;font-size:16px;line-height:1;padding:6px 10px;transition:all .2s}.action-btn:hover{background:#f3f4f6;border-color:#d1d5db}.rename-btn:hover{background:#dbeafe;border-color:#3b82f6}.delete-btn:hover{background:#fee2e2;border-color:#ef4444}.preview-image-container{align-items:center;background:#fff;display:flex;justify-content:center;min-height:300px;padding:20px}.preview-image-container img{border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);max-height:400px;max-width:100%}.preview-details{background:#fff;border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:12px;padding:20px}.detail-row{display:flex;gap:8px}.detail-label{color:#6b7280;font-size:14px;font-weight:600;min-width:50px}.detail-value{color:#1f2937;flex:1 1;font-size:14px;word-break:break-word}.detail-id{color:#6b7280;font-family:monospace;font-size:12px}.drag-hint{background:#eef2ff;border-top:1px solid #e5e7eb;margin-top:auto;padding:16px 20px}.drag-hint p{color:#4f46e5;font-size:13px;line-height:1.5;margin:0}.drag-hint strong{font-weight:600}.preview-empty{align-items:center;color:#9ca3af;display:flex;flex:1 1;justify-content:center;padding:40px 20px;text-align:center}.preview-empty p{font-size:16px;margin:0}@media (max-width:1200px){.gallery-preview-section{width:300px}.gallery-image-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}@media (max-width:900px){.gallery-modal-content{border-radius:0;height:100vh;max-height:none;max-width:none;width:100vw}.gallery-sidebar{width:160px}.gallery-tab{font-size:13px;padding:10px 12px}.gallery-preview-section{display:none}.gallery-image-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}@media (max-width:600px){.gallery-body{flex-direction:column}.gallery-sidebar{border-bottom:1px solid #e5e7eb;border-right:none;flex-direction:row;width:100%}.gallery-tabs{flex-direction:row;overflow-x:auto;padding:8px}.gallery-tab{flex-direction:column;gap:4px;min-width:80px;padding:8px}.tab-label{font-size:11px}.delete-zone{margin:8px;min-width:80px;padding:12px}.delete-label{font-size:10px}.gallery-image-grid{gap:12px;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));padding:12px}}.sidebar{background:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;overflow-y:auto;padding:20px;width:600px}.element-toolbar{background:#f9fafb;border:2px solid #3b82f6;border-radius:8px;flex-shrink:0;margin-bottom:16px;padding:16px}.element-toolbar .sidebar-title{border-bottom:1px solid #e5e7eb;color:#1f2937;font-size:16px;font-weight:600;margin-bottom:16px;padding-bottom:8px}.element-controls{display:flex;flex-direction:column;gap:12px}.control-group{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:100px 1fr}.control-label{color:#6b7280;font-size:12px;font-weight:500;text-align:left}.control-input{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:6px 8px}.control-input[type=color]{height:32px;padding:2px}.control-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.control-value{color:#6b7280;font-size:12px;grid-column:2;margin-top:-8px;text-align:right}.control-row{display:flex;gap:8px}.control-row .control-group{flex:1 1;grid-template-columns:auto 1fr}.control-full{grid-column:1/-1}.delete-zone{background:#fee2e2;border:2px dashed #dc2626;border-radius:8px;flex-shrink:0;margin-top:8px;opacity:.3;padding:16px;pointer-events:none;text-align:center;transition:all .3s ease}.delete-zone.active{background:#fee2e2;border-color:#dc2626;box-shadow:0 0 10px rgba(220,38,38,.3);opacity:1;pointer-events:all}.delete-icon{display:block;font-size:32px;margin-bottom:8px}.delete-text{color:#dc2626;font-size:14px;font-weight:600}.gallery-section{border-bottom:2px solid #e5e7eb;margin-bottom:16px;padding-bottom:16px}.btn-gallery{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px rgba(102,126,234,.3);color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 20px;transition:all .3s ease;width:100%}.btn-gallery:hover{background:linear-gradient(135deg,#5568d3,#653a8a);box-shadow:0 4px 12px rgba(102,126,234,.4);transform:translateY(-1px)}.btn-gallery:active{box-shadow:0 2px 6px rgba(102,126,234,.3);transform:translateY(0)}.sidebar-columns{grid-gap:8px;border-bottom:1px solid #e5e7eb;display:grid;flex:1 1;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr));overflow-y:auto;padding-bottom:16px}.sidebar-section{display:flex;flex-direction:column;margin-bottom:0;max-height:100%;min-width:0;overflow:hidden}.sidebar-info{border-top:1px solid #e5e7eb;padding-top:16px}.sidebar-info,.sidebar-title{flex-shrink:0;text-align:center}.sidebar-title{color:#1f2937;font-size:11px;font-weight:600;margin-bottom:6px}.sidebar .btn-small{flex-shrink:0;font-size:10px;margin-bottom:6px;padding:4px 8px;width:100%}.upload-btn{cursor:pointer;display:block;flex-shrink:0;text-align:center}.upload-btn:hover{opacity:.9}.character-gallery{grid-gap:4px;-ms-overflow-style:none;align-content:start;display:grid;flex:1 1;gap:4px;grid-template-columns:1fr;min-height:0;overflow-x:hidden;overflow-y:auto;padding-right:4px;scrollbar-width:none}.character-gallery::-webkit-scrollbar{display:none}.character-card{background:#fff;border:1px solid #e5e7eb;border-radius:4px;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;flex-shrink:0;height:72px;margin:0;max-width:100%;overflow:hidden;padding:3px;position:relative;transition:transform .2s}.character-card:hover{box-shadow:0 2px 4px rgba(0,0,0,.1);transform:translateY(-1px)}.character-card img{border-radius:3px;flex-shrink:0;height:50px;margin-bottom:3px;object-fit:cover;width:100%}.edit-image-btn{background:hsla(0,0%,100%,.95);border:1px solid #3b82f6;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1);cursor:pointer;font-size:12px;opacity:0;padding:4px 6px;position:absolute;right:6px;top:6px;transition:all .2s;z-index:10}.edit-image-btn:hover{background:#3b82f6;transform:scale(1.1)}.download-image-btn{background:hsla(0,0%,100%,.95);border:1px solid #10b981;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1);cursor:pointer;font-size:12px;opacity:0;padding:4px 6px;position:absolute;right:32px;top:6px;transition:all .2s;z-index:10}.download-image-btn:hover{background:#10b981;transform:scale(1.1)}.character-card:hover .download-image-btn,.character-card:hover .edit-image-btn{opacity:1}.character-name{color:#374151;font-size:9px;font-weight:500;margin:0;max-width:100%}.character-name,.scene-characters{line-height:1.2;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.scene-characters{color:#6b7280;font-size:8px;font-style:italic;margin:1px 0 0}.empty-message{font-size:9px;padding:8px}.character-placeholder{align-items:center;background:#f3f4f6;border-radius:3px;color:#9ca3af;display:flex;font-size:8px;height:50px;justify-content:center;padding:3px;text-align:center;width:100%}.info-item{border-bottom:none;color:#9ca3af;font-size:10px;padding:0}.info-item strong{color:#374151;margin-right:8px}.scene-generation{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.scene-generation .btn-small{margin-bottom:8px}.help-text{color:#6b7280;font-size:12px;margin-top:8px;text-align:center}.modal-large{max-width:800px}.character-selection-grid{grid-gap:12px;background:#f9fafb;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(5,1fr);margin-top:12px;max-height:300px;overflow-y:auto;padding:8px}.character-select-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:140px;padding:8px;position:relative;text-align:center;transition:all .2s}.character-select-card:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transform:translateY(-2px)}.character-select-card.selected{background:#eff6ff;border-color:#3b82f6}.character-select-card img{border-radius:4px;object-fit:contain}.character-select-card .character-placeholder,.character-select-card img{flex-shrink:0;height:100px;margin-bottom:4px;width:100%}.character-select-card .character-name{color:#374151;font-size:12px;font-weight:500;margin:4px 0 0}.selected-badge{align-items:center;background:#3b82f6;border-radius:50%;color:#fff;display:flex;font-size:14px;font-weight:700;height:24px;justify-content:center;position:absolute;right:4px;top:4px;width:24px}@media (max-width:1024px){.sidebar{border-left:none;border-top:1px solid #e5e7eb;width:100%}.character-gallery{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.reference-grid{grid-gap:8px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));max-height:200px;overflow-y:auto;padding:8px}.reference-item{border:2px solid transparent;border-radius:4px;cursor:pointer;overflow:hidden;position:relative;transition:all .2s}.reference-item:hover{border-color:#3b82f6;transform:scale(1.05)}.reference-item.selected{border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,.2)}.reference-item img{display:block;height:80px;object-fit:cover;width:100%}.reference-name{background:#fff;display:block;font-size:10px;overflow:hidden;padding:4px;text-align:center;text-overflow:ellipsis;white-space:nowrap}.selection-badge{align-items:center;background:#3b82f6;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);color:#fff;display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;position:absolute;right:4px;top:4px;width:20px}.modal-overlay{overflow-y:auto;padding:20px}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.3);margin:auto;max-height:calc(100vh - 40px);max-width:800px;overflow-y:auto;padding:32px;width:100%}.modal-content h2{color:#1f2937;font-size:24px;margin-bottom:24px;margin-top:0}.modal-content textarea{min-height:80px;resize:vertical}.form-group{margin-bottom:16px}.form-group label{display:block;font-weight:500}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.form-group input[type=color]{cursor:pointer;height:40px;padding:4px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.modal-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:24px}.modal-actions button{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s}.modal-actions button[type=button]{background-color:#f5f5f5;color:#333}.modal-actions button[type=button]:hover{background-color:#e0e0e0}.modal-actions button.primary,.modal-actions button[type=submit]{background-color:#4caf50;color:#fff}.modal-actions button.primary:hover,.modal-actions button[type=submit]:hover{background-color:#45a049}@media (max-width:768px){.modal-overlay{padding:10px}.modal-content{max-height:calc(100vh - 20px);padding:20px}.modal-content h2{font-size:20px;margin-bottom:16px}.modal-actions{flex-direction:column-reverse}.modal-actions .btn{width:100%}.character-selection-grid{grid-template-columns:repeat(2,1fr);max-height:250px}}@media (max-width:480px){.modal-overlay{padding:5px}.modal-content{border-radius:8px;max-height:calc(100vh - 10px);padding:16px}.modal-content h2{font-size:18px}.character-selection-grid{gap:8px;grid-template-columns:1fr}}.pages-list{background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;overflow:hidden;width:200px}.pages-list-header{align-items:flex-start;border-bottom:1px solid #e5e7eb;display:flex;gap:8px;padding:16px}.pages-list-header h3{color:#1f2937;font-size:16px;font-weight:600;margin:0;width:100%}.pages-header-buttons{display:flex;flex-shrink:0;gap:8px}.pages-list-header .btn-small{align-items:center;display:flex;flex-shrink:0;font-size:12px;height:32px;justify-content:center;line-height:1;padding:0 12px;white-space:nowrap}.pages-list-header .btn-small:last-child{font-size:20px;padding:0;width:32px}.pages-container{flex:1 1;overflow-y:auto;padding:8px}.page-item{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;display:flex;gap:12px;margin-bottom:8px;padding:12px;position:relative;transition:all .2s}.page-item:hover{background:#f9fafb;border-color:#3b82f6}.page-item.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 4px rgba(59,130,246,.2)}.page-item.dragging{opacity:.5}.page-item.drag-over{background:#ecfdf5;border-color:#10b981;border-style:dashed}.page-item.system-page{background:#fffbeb;border-color:#f59e0b;cursor:default}.page-item.system-page.active,.page-item.system-page:hover{background:#fef3c7;border-color:#f59e0b}.page-item.system-page.active{box-shadow:0 2px 4px rgba(245,158,11,.2)}.page-item.system-page .page-title{color:#92400e;font-weight:600}.page-thumbnail{flex-shrink:0}.page-preview{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:4px;display:flex;height:64px;justify-content:center;overflow:hidden;position:relative;width:48px}.page-number{color:#9ca3af;font-size:18px;font-weight:600}.page-info{flex:1 1;min-width:0}.page-title{color:#374151;font-size:14px;font-weight:500;margin-bottom:4px}.page-stats{color:#6b7280;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delete-page-btn{align-items:center;background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;line-height:1;opacity:0;position:absolute;right:4px;top:4px;transition:opacity .2s;width:20px}.page-item:hover .delete-page-btn{opacity:1}.delete-page-btn:hover{background:#dc2626}@media (max-width:1024px){.pages-list{border-bottom:1px solid #e5e7eb;border-right:none;max-height:150px;width:100%}.pages-container{display:flex;overflow-x:auto;overflow-y:visible}.page-item{flex-direction:column;margin-bottom:0;margin-right:8px;min-width:120px}}.story-info{background-color:#f8f9fa;border-bottom:1px solid #dee2e6;padding:12px 20px}.story-info-group{align-items:center;display:flex;flex-wrap:wrap;gap:24px}.story-info-group label{align-items:center;color:#495057;display:flex;font-size:14px;font-weight:500;gap:8px}.story-info-select{background-color:#fff;border:1px solid #ced4da;border-radius:4px;color:#495057;cursor:pointer;font-size:14px;min-width:150px;padding:6px 12px;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.story-info-select:hover{border-color:#80bdff}.story-info-select:focus{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25);outline:0}.style-settings-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;box-shadow:0 2px 4px rgba(0,0,0,.1);color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .2s}.style-settings-btn:hover{box-shadow:0 4px 8px rgba(0,0,0,.15);transform:translateY(-1px)}.style-settings-btn:active{transform:translateY(0)}.crop-modal-overlay{align-items:center;background-color:rgba(0,0,0,.7);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.crop-modal-content{background:#fff;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:90%;max-width:90%}.crop-modal-header{align-items:center;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;padding:16px 20px}.crop-modal-header h3{color:#333;font-size:20px;margin:0}.close-btn{color:#999;transition:color .2s}.close-btn:hover{color:#333}.crop-modal-body{align-items:center;display:flex;flex-direction:column;gap:16px;padding:20px}.crop-instructions{color:#666;font-size:14px;text-align:center}.crop-name-input{max-width:400px;width:100%}.crop-name-input label{color:#495057;display:flex;flex-direction:column;font-size:14px;font-weight:500;gap:6px}.crop-name-input input[type=text]{border:1px solid #ced4da;border-radius:4px;font-size:14px;outline:none;padding:8px 12px;transition:border-color .2s}.crop-name-input input[type=text]:focus{border-color:#007bff}.crop-shape-selector{align-items:center;background:#f8f9fa;border-radius:4px;display:flex;gap:20px;padding:8px 12px}.crop-shape-selector label{align-items:center;color:#495057;cursor:pointer;display:flex;font-size:14px;gap:6px}.crop-shape-selector input[type=radio]{cursor:pointer}.crop-feather-control{background:#f8f9fa;border-radius:4px;max-width:400px;padding:12px;width:100%}.crop-feather-control label{color:#495057;display:flex;flex-direction:column;font-size:14px;font-weight:500;gap:8px}.feather-slider{background:#dee2e6;border-radius:3px;cursor:pointer;height:6px;outline:none;width:100%}.feather-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#007bff;border-radius:50%;cursor:pointer;height:18px;-webkit-transition:background .2s;transition:background .2s;width:18px}.feather-slider::-webkit-slider-thumb:hover{background:#0056b3}.feather-slider::-moz-range-thumb{background:#007bff;border:none;border-radius:50%;cursor:pointer;height:18px;-moz-transition:background .2s;transition:background .2s;width:18px}.feather-slider::-moz-range-thumb:hover{background:#0056b3}.crop-border-controls{background:#f8f9fa;border-radius:4px;max-width:400px;padding:12px;width:100%}.crop-border-controls h4{color:#495057;font-size:14px;font-weight:500;margin:0 0 8px}.border-row{align-items:flex-end;display:flex;gap:12px}.border-row label{color:#495057;display:flex;flex-direction:column;font-size:13px;gap:4px}.border-row input[type=number],.border-row select{border:1px solid #ced4da;border-radius:4px;font-size:13px;outline:none;padding:6px 8px;width:80px}.border-row input[type=number]:focus,.border-row select:focus{border-color:#007bff}.border-row input[type=color]{border:1px solid #ced4da;border-radius:4px;cursor:pointer;height:32px;outline:none;width:60px}.border-row input[type=color]:focus{border-color:#007bff}.crop-canvas{border:1px solid #dee2e6;cursor:move;max-height:500px;max-width:100%}.crop-modal-footer{border-top:1px solid #dee2e6;display:flex;gap:12px;justify-content:flex-end;padding:16px 20px}.btn{padding:8px 20px}.btn-primary{background-color:#007bff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d}.btn-secondary:hover{background-color:#5a6268}.plot-modal{display:flex;flex-direction:column;height:85vh;max-height:85vh;max-width:900px;padding:0;width:90vw}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;justify-content:space-between;padding:24px}.modal-header h2{color:#1f2937;font-size:24px;margin:0}.close-btn{align-items:center;background:none;border:none;color:#9ca3af;cursor:pointer;display:flex;font-size:32px;height:32px;justify-content:center;line-height:1;padding:0;width:32px}.close-btn:hover{color:#374151}.plot-modal .modal-body{flex:1 1;min-height:0;overflow-y:auto;padding:24px}.plot-settings{border-bottom:2px solid #e5e7eb;flex-shrink:0;margin-bottom:24px;padding-bottom:24px}.plot-settings .form-group{margin-bottom:16px}.plot-settings .form-group label{color:#374151;display:block;font-weight:600;margin-bottom:8px}.plot-settings .form-control{border:1px solid #d1d5db;border-radius:6px;font-size:14px;padding:8px 12px;width:100%}.ai-generate-section{background:#f3f4f6;border-radius:8px;margin-top:16px;padding:16px}.ai-generate-section .form-group{margin-bottom:12px}.ai-generate-section textarea{resize:vertical}.plots-list{display:flex;flex:1 1;flex-direction:column;gap:16px;min-height:0}.plot-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex-shrink:0;padding:16px}.plot-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.plot-header h4{color:#1f2937;font-size:16px;font-weight:600;margin:0}.plot-actions{align-items:center;display:flex;flex-direction:row;gap:8px;justify-content:flex-start}.plot-actions .btn-small{flex:0 0 auto;max-width:120px}.plot-textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:14px;max-height:200px;min-height:100px;padding:10px 12px;resize:vertical;width:100%}.plot-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.btn-small{align-items:center;box-sizing:border-box;display:inline-flex;font-size:12px;height:32px;justify-content:center;line-height:1;min-height:32px;vertical-align:middle;white-space:nowrap}.modal-footer{align-items:center;border-top:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;padding:16px 24px}.footer-left,.footer-right,.modal-footer{display:flex;gap:12px}.btn-danger{background:#ef4444;font-weight:500;transition:background .2s}.btn-danger:hover{background:#dc2626}.btn-secondary{background:#6b7280;border-radius:6px;font-weight:500;transition:background .2s}.btn-secondary:hover{background:#4b5563}.btn-danger:disabled,.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.plot-modal{height:90vh;width:95vw}.modal-header,.plot-modal .modal-body{padding:16px}.plot-header{flex-wrap:wrap;gap:8px}.plot-header h4{flex:1 1 100%;margin-bottom:4px}.plot-actions{flex:1 1 100%;justify-content:flex-start}.btn-small{font-size:11px;padding:6px 10px}.modal-footer{align-items:stretch;flex-direction:column}.footer-left,.footer-right{justify-content:center;width:100%}}.style-prompts-overlay{align-items:center;background-color:rgba(0,0,0,.6);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.style-prompts-modal{background:#fff;border-radius:12px;box-shadow:0 10px 40px rgba(0,0,0,.3);display:flex;flex-direction:column;max-height:90vh;max-width:900px;width:100%}.style-prompts-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 24px}.style-prompts-header h2{color:#333;font-size:24px;margin:0}.close-button{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:32px;height:32px;justify-content:center;line-height:1;padding:0;transition:color .2s;width:32px}.close-button:hover{color:#333}.style-prompts-content{flex:1 1;overflow-y:auto;padding:24px}.style-section{margin-bottom:32px}.style-section:last-child{margin-bottom:0}.style-section h3{color:#333;font-size:18px;margin:0 0 8px}.section-description{color:#666;font-size:14px;margin:0 0 16px}.style-divider{color:#999;font-weight:600;margin:24px 0;position:relative;text-align:center}.style-divider:after,.style-divider:before{background:#e0e0e0;content:"";height:1px;position:absolute;top:50%;width:calc(50% - 30px)}.style-divider:before{left:0}.style-divider:after{right:0}.reference-book-input-group{display:flex;gap:12px;margin-bottom:12px}.book-name-input{border:2px solid #ddd;border-radius:6px;flex:1 1;font-size:14px;padding:10px 14px;transition:border-color .2s}.book-name-input:focus{border-color:#4caf50;outline:none}.book-name-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.generate-prompts-btn{padding:10px 20px;white-space:nowrap}.generate-prompts-btn:disabled{cursor:not-allowed;opacity:.6}.current-reference{align-items:center;background:#f0f7ff;border:1px solid #b3d9ff;border-radius:6px;display:flex;font-size:14px;gap:8px;padding:12px}.reference-label{color:#666}.current-reference strong{color:#333}.btn-link{background:none;border:none;color:#2196f3;cursor:pointer;font-size:14px;margin-left:auto;padding:0;text-decoration:underline}.btn-link:hover{color:#1976d2}.style-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.form-group label{color:#555;margin-bottom:6px}.form-group select{background:#fff;border:2px solid #ddd;border-radius:6px;cursor:pointer;font-size:14px;padding:10px 14px;transition:border-color .2s}.form-group select:focus{border-color:#4caf50;outline:none}.form-group select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.prompt-textarea{border:2px solid #ddd;border-radius:6px;font-family:inherit;font-size:14px;line-height:1.5;padding:12px;resize:vertical;transition:border-color .2s;width:100%}.prompt-textarea:focus{border-color:#4caf50;outline:none}.prompt-textarea::placeholder{color:#999}.style-prompts-actions{border-top:2px solid #e0e0e0;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}.btn{border-radius:6px;font-size:14px;padding:10px 24px}.btn-primary{background-color:#4caf50}.btn-primary:hover{background-color:#45a049}.btn-secondary{background-color:#f5f5f5;color:#333}.btn-secondary:hover{background-color:#e0e0e0}@media (max-width:768px){.style-prompts-modal{border-radius:0;max-height:100vh;max-width:100%}.style-grid{grid-template-columns:1fr}.reference-book-input-group{flex-direction:column}.generate-prompts-btn{width:100%}}.editor-container{background:#f5f5f5;display:flex;flex-direction:column;height:100vh}.editor-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;gap:20px;padding:16px 24px}.editor-header h1{color:#1f2937;flex:1 1;font-size:24px;margin:0}.header-actions{align-items:center;display:flex;gap:16px}.save-status{color:#6b7280;font-size:14px}.editor-main{flex:1 1;flex-direction:row}.editor-center,.editor-main{display:flex;overflow:hidden}.editor-center,.editor-content{flex:1 1;flex-direction:column}.editor-content{align-items:center;background:#f5f5f5;display:flex;justify-content:center;overflow:auto;padding:20px}.zoom-controls{border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);gap:8px;margin:0 auto 16px;padding:8px 16px;width:-webkit-fit-content;width:fit-content}.zoom-controls,.zoom-controls button{align-items:center;background:#fff;display:flex}.zoom-controls button{border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:18px;height:32px;justify-content:center;min-width:32px;transition:all .2s}.zoom-controls button:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.zoom-controls button:active:not(:disabled){background:#e5e7eb}.zoom-controls button:disabled{cursor:not-allowed;opacity:.5}.zoom-controls span{color:#374151;font-weight:500;min-width:50px;text-align:center}.zoom-controls .pan-hint{border-left:1px solid #e5e7eb;color:#6b7280;font-size:12px;font-weight:400;margin-left:8px;min-width:auto;padding-left:8px}.page-navigation{display:none}@media (max-width:1200px){.editor-main{flex-direction:column}.page-navigation{align-items:center;background:#fff;border-radius:8px;display:flex;gap:20px;justify-content:center;margin-top:20px;padding:16px}.page-navigation span{color:#374151;font-weight:500}}.subscription-manager{margin:0 auto;max-width:1200px;padding:20px}.subscription-manager h2{font-size:28px;margin-bottom:30px;text-align:center}.alert{border-radius:4px;font-size:14px;margin-bottom:20px;padding:12px 20px}.alert-error{background-color:#fee;border:1px solid #fcc;color:#c33}.alert-success{background-color:#efe;border:1px solid #cfc;color:#3c3}.current-subscription{background:#f8f9fa;border:2px solid #007bff;border-radius:8px;margin-bottom:30px;padding:20px}.current-subscription h3{color:#007bff;font-size:20px;margin-top:0}.subscription-details p{font-size:14px;margin:8px 0}.subscription-actions{display:flex;gap:10px;margin-top:20px}.tier-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:30px}.tier-card{background:#fff;border:2px solid #ddd;border-radius:8px;padding:25px;position:relative;transition:transform .2s,box-shadow .2s}.tier-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-4px)}.tier-card.current{background:#f0f8ff;border-color:#007bff}.tier-card.free{border-color:#6c757d}.tier-card.starter{border-color:#28a745}.tier-card.pro{border-color:#ffc107}.tier-card.entrepreneur{border-color:#dc3545}.current-badge{background:#007bff;border-radius:12px;color:#fff;font-size:12px;font-weight:700;padding:4px 12px;position:absolute;right:10px;top:10px}.tier-card h3{font-size:22px;margin-bottom:15px;margin-top:0}.tier-price{margin-bottom:20px}.tier-price .price{color:#333;font-size:36px;font-weight:700}.tier-price .period{color:#666;font-size:14px;margin-left:4px}.tier-features{list-style:none;margin:20px 0;min-height:150px;padding:0}.tier-features li{color:#555;font-size:14px;padding:8px 0 8px 24px;position:relative}.tier-features li:before{color:#28a745;content:"✓";font-weight:700;left:0;position:absolute}.btn{border:none;border-radius:4px;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s;width:100%}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background:#0056b3}.btn-secondary:hover:not(:disabled){background:#545b62}.btn-danger{background:#dc3545}.btn-danger:hover:not(:disabled){background:#c82333}.btn-outline{background:transparent;border:2px solid #ddd;color:#666}@media (max-width:768px){.tier-grid{grid-template-columns:1fr}.subscription-actions{flex-direction:column}}.settings-container{background-color:#f5f5f5;min-height:100vh}.settings-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 40px}.settings-header h1{color:#1f2937;font-size:28px}.settings-tabs{background:#fff;border-bottom:1px solid #e5e7eb;display:flex;padding:0 40px}.settings-tabs .tab{background:none;border:none;border-bottom:2px solid transparent;color:#6b7280;cursor:pointer;font-size:16px;padding:16px 24px;transition:all .3s ease}.settings-tabs .tab:hover{color:#1f2937}.settings-tabs .tab.active{border-bottom-color:#4f46e5;color:#4f46e5}.settings-content{margin:0 auto;max-width:1200px;padding:40px}.loading-message{color:#6b7280;font-size:18px;padding:60px 20px;text-align:center}.profile-section h2,.profile-section h3{color:#1f2937;margin-bottom:16px}.profile-section h3{font-size:18px;margin-top:32px}.form-row{grid-template-columns:1fr 1fr}.account-stats{background:#fff;border-radius:8px;margin-top:48px;padding:24px}.stats-grid{margin-top:16px}.stat-card{text-align:center}.stat-label{font-size:14px;margin-bottom:8px}.stat-value{font-size:24px}.billing-section{background:#fff;border-radius:8px;padding:32px}.token-balance{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;color:#1f2937;margin-bottom:40px;padding:32px;text-align:center}.balance-display{display:flex;flex-direction:column;gap:12px;margin:16px 0}.balance-item{align-items:center;border-bottom:1px solid hsla(0,0%,100%,.2);display:flex;justify-content:space-between;padding:12px 0}.balance-item.balance-total{border-bottom:2px solid hsla(0,0%,100%,.4);margin-top:8px;padding:16px 0}.balance-amount{font-size:24px;font-weight:700}.balance-total .balance-amount{font-size:32px}.balance-label{font-size:16px;opacity:.9}.token-balance .help-text{color:#fff;margin-left:auto;margin-right:auto;margin-top:16px;max-width:400px;opacity:.9;text-align:left}.packages-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:24px 0}.package-card{border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:24px;text-align:center;transition:all .3s ease}.package-card:hover{border-color:#4f46e5;box-shadow:0 4px 12px rgba(79,70,229,.1)}.package-card.selected{background:#eef2ff;border-color:#4f46e5}.package-card h3{color:#1f2937;margin:0 0 12px}.package-price{color:#4f46e5;font-size:32px;font-weight:700;margin:8px 0}.package-tokens{color:#6b7280;font-size:16px;margin:8px 0}.package-bonus{background:#10b981;border-radius:12px;color:#fff;display:inline-block;font-size:12px;font-weight:700;margin-top:8px;padding:4px 12px}.coupon-section{margin:32px 0}.coupon-section label{color:#1f2937;display:block;font-weight:500;margin-bottom:8px}.coupon-input-group{gap:8px}.coupon-input-group .form-input{flex:1 1}.coupon-message{font-size:14px;margin-top:8px}.coupon-message.success{color:#10b981}.coupon-message.error{color:#ef4444}.coupon-section{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin:24px 0;padding:20px}.coupon-section h3{color:#166534;font-size:16px;margin:0 0 12px}.coupon-input-group{align-items:stretch;display:flex;gap:12px}.coupon-input-group .form-input{text-transform:uppercase}.coupon-input-group .btn-secondary{min-width:40px;padding:0 12px}.coupon-info{color:#15803d}.coupon-info,.promo-note{font-size:14px;margin:12px 0 0}.promo-note{background:#fef3c7;border:1px solid #fcd34d;border-radius:4px;color:#92400e;padding:12px;text-align:center}.btn-danger{background-color:#ef4444}.btn-danger:hover{background-color:#dc2626}.purchase-summary{background:#f9fafb;border-radius:8px;margin:24px 0;padding:20px}.summary-row{color:#6b7280;display:flex;font-size:16px;justify-content:space-between;margin:12px 0}.summary-row.discount{color:#10b981}.summary-row.total{border-top:1px solid #e5e7eb;color:#1f2937;font-size:20px;font-weight:700;margin-top:12px;padding-top:12px}.btn-large{font-size:18px;padding:16px;width:100%}.usage-section{background:#fff;border-radius:8px;padding:32px}.usage-section h2{color:#1f2937;margin-bottom:24px}.billing-table,.usage-table{margin-bottom:48px}.billing-table table,.usage-table table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.billing-table th,.usage-table th{background:#f9fafb;border-bottom:1px solid #e5e7eb;color:#1f2937;font-weight:600;padding:12px 16px;text-align:left}.billing-table td,.usage-table td{border-bottom:1px solid #f3f4f6;color:#6b7280;padding:12px 16px}.billing-table tr:hover,.usage-table tr:hover{background:#f9fafb}.token-source{color:#6366f1!important;font-size:12px;font-weight:500}.positive{color:#10b981;font-weight:600}.negative{color:#ef4444;font-weight:600}.badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px;text-transform:uppercase}.badge-purchase{background:#dbeafe;color:#1e40af}.badge-usage{background:#fee2e2;color:#991b1b}.badge-completed,.badge-refund{background:#d1fae5;color:#065f46}.badge-pending{background:#fef3c7;color:#92400e}.badge-failed{background:#fee2e2;color:#991b1b}.empty-state{color:#6b7280;padding:40px 20px;text-align:center}.storage-usage{background:#f9fafb;border-radius:8px;margin-top:24px;padding:20px}.storage-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.storage-header h4{color:#1f2937;font-size:16px;font-weight:600;margin:0}.storage-stats{align-items:baseline;font-size:14px;gap:4px}.storage-used{color:#1f2937;font-weight:600}.storage-separator{color:#9ca3af}.storage-limit{color:#6b7280}.storage-progress-bar{background:#e5e7eb;border-radius:6px;height:12px;margin-bottom:8px;overflow:hidden;width:100%}.storage-progress-fill{border-radius:6px;height:100%;transition:width .3s ease,background-color .3s ease}.storage-help-text{color:#6b7280;font-size:13px;margin:0}.custom-drawing-styles-section{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);margin-top:40px;padding:24px}.custom-drawing-styles-section h3{color:#1f2937;font-size:20px;margin:0 0 8px}.add-style-form{display:flex;gap:12px;margin:20px 0}.add-style-form .form-input{flex:1 1;margin-bottom:0}.custom-styles-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin:20px 0}.custom-style-item{align-items:center;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;color:#1f2937;display:flex;font-size:14px;justify-content:space-between;padding:12px 16px}.custom-style-item .btn-icon{align-items:center;background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;padding:0;transition:all .2s ease;width:24px}.custom-style-item .btn-icon:hover{background:#fee2e2;color:#dc2626}@media (max-width:768px){.settings-tabs{padding:0 20px}.settings-content{padding:20px}.form-row,.packages-grid,.stats-grid{grid-template-columns:1fr}.coupon-input-group{flex-direction:column}.billing-table,.usage-table{overflow-x:auto}.balance-amount{font-size:36px}}.file-manager{margin:0 auto;max-width:1400px;padding:20px}.file-manager-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.file-manager-header h1{color:#333;margin:0}.storage-overview{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);display:flex;gap:30px;justify-content:space-between;margin-bottom:25px;padding:25px}.storage-info{flex:1 1}.storage-info h2{color:#333;font-size:20px;margin:0 0 15px}.storage-stats{display:flex;gap:30px;margin-bottom:15px}.stat{display:flex;flex-direction:column}.stat-label{color:#666;margin-bottom:4px}.stat-value{color:#333;font-size:18px;font-weight:600}.storage-bar{background:#e9ecef;border-radius:12px;height:24px;margin-bottom:8px;overflow:hidden;width:100%}.storage-bar-fill{border-radius:12px;height:100%;transition:width .3s ease,background-color .3s ease}.storage-percentage{color:#666;font-size:14px;margin:0;text-align:right}.storage-actions{display:flex;flex-direction:column;gap:10px}.file-controls{background:#f8f9fa;border-radius:8px;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px;padding:15px}.file-controls,.file-filters{align-items:center;display:flex}.file-filters{gap:10px}.file-filters label{color:#333;font-weight:600}.file-filters select{background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;padding:8px 12px}.file-count{color:#666;font-size:14px}.selected-count{color:#007bff;font-weight:600}.btn-danger{background-color:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:background-color .2s}.btn-danger:hover:not(:disabled){background-color:#c82333}.btn-danger:disabled{cursor:not-allowed;opacity:.6}.files-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);overflow:hidden}.files-table thead{background:#f8f9fa;border-bottom:2px solid #dee2e6}.files-table th{color:#495057;font-size:14px;padding:15px;text-align:left}.files-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.files-table th.sortable:hover{background:#e9ecef}.files-table td.checkbox-cell,.files-table th.checkbox-cell{text-align:center;width:40px}.files-table tbody tr.selected{background-color:#e7f3ff}.files-table tbody tr.selected:hover{background-color:#d0e9ff!important}.files-table tbody tr{border-bottom:1px solid #dee2e6;transition:background-color .2s}.files-table tbody tr:hover{background:#f8f9fa}.files-table td{color:#495057;padding:15px}.file-type-badge{align-items:center;background:#e9ecef;border-radius:12px;display:inline-flex;font-size:13px;gap:6px;padding:4px 10px}.file-name{color:#333;font-weight:500}.link-button{background:none;border:none;color:#007bff;cursor:pointer;font-size:14px;padding:0;text-decoration:underline}.link-button:hover{color:#0056b3}.btn-sm{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:13px;padding:6px 12px;text-decoration:none}.btn-sm:hover{background:#0056b3}.btn-secondary{background:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px}.btn-secondary:hover{background:#5a6268}.btn-secondary:disabled{background:#adb5bd;cursor:not-allowed}.empty-state,.loading-state{background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);padding:60px 20px;text-align:center}.empty-state p,.loading-state p{color:#666;font-size:16px;margin:0}.file-manager-footer{margin-top:30px;text-align:center}.help-text{background:#f8f9fa;border-radius:8px;color:#666;font-size:14px;margin:0;padding:15px}@media (max-width:768px){.storage-overview{align-items:stretch;flex-direction:column}.file-controls,.storage-stats{flex-direction:column;gap:15px}.file-controls{align-items:stretch}.files-table-container{overflow-x:auto}.files-table{min-width:800px}}.admin-page{margin:0 auto;max-width:1400px;padding:20px}.admin-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;gap:20px;margin-bottom:30px;padding-bottom:20px}.admin-header h1{color:#1f2937;font-size:32px;margin:0}.admin-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:10px;margin-bottom:30px}.tab-btn{background:none;border:none;border-bottom:3px solid transparent;color:#6b7280;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .2s}.tab-btn:hover{color:#3b82f6}.tab-btn.active{border-bottom-color:#3b82f6;color:#3b82f6}.admin-content{display:flex;flex-direction:column;gap:30px}.users-table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden}.users-table{border-collapse:collapse;width:100%}.users-table td,.users-table th{border-bottom:1px solid #e5e7eb;padding:12px 16px;text-align:left}.users-table th{color:#374151;font-size:14px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.users-table tbody tr:hover,.users-table th{background:#f9fafb}.tokens-cell{color:#3b82f6;font-weight:600}.storage-cell{font-size:13px}.storage-info{display:flex;flex-direction:column;gap:2px}.storage-value{color:#374151;font-weight:600}.storage-percent{font-size:11px;font-weight:500}.token-add-group{align-items:center;display:flex;gap:8px}.token-input{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:4px 8px;width:80px}.token-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.coupon-form{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:24px}.coupon-form h2{color:#1f2937;font-size:20px;margin:0 0 20px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{color:#374151;font-size:14px;font-weight:600;margin-bottom:8px}.form-control{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:8px 12px}.form-control:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.coupons-table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);overflow:hidden;padding:24px}.coupons-table-container h2{color:#1f2937;font-size:20px;margin:0 0 20px}.coupons-table{border-collapse:collapse;width:100%}.coupons-table td,.coupons-table th{border-bottom:1px solid #e5e7eb;padding:12px 16px;text-align:left}.coupons-table th{color:#374151;font-size:14px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.coupons-table tbody tr:hover,.coupons-table th{background:#f9fafb}.coupons-table tbody tr.inactive{opacity:.5}.code-cell{color:#3b82f6;font-family:Courier New,monospace;font-size:16px;font-weight:600}.status-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.status-badge.valid{background:#d1fae5;color:#065f46}.status-badge.invalid{background:#fee2e2;color:#991b1b}.btn-small{font-size:13px;padding:6px 12px}.btn-warning{background:#f59e0b;color:#fff}.btn-warning:hover{background:#d97706}.btn-success{background:#10b981;color:#fff}.btn-success:hover{background:#059669}.modal-overlay{align-items:center;background:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.ledger-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1);max-height:80vh;max-width:800px;overflow-y:auto;padding:32px;width:90%}.ledger-modal h2{color:#1f2937;font-size:24px;margin:0 0 20px}.ledger-modal h3{border-bottom:2px solid #e5e7eb;color:#374151;font-size:18px;margin:24px 0 16px;padding-bottom:8px}.ledger-info{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:16px}.ledger-info p{color:#374151;font-size:14px;margin:8px 0}.ledger-entries{margin-bottom:24px}.ledger-table{border-collapse:collapse;margin-bottom:16px;width:100%}.ledger-table td,.ledger-table th{border-bottom:1px solid #e5e7eb;padding:12px;text-align:left}.ledger-table th{color:#374151;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.ledger-table tbody tr:hover,.ledger-table th{background:#f9fafb}.action-badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.action-badge.created{background:#dbeafe;color:#1e40af}.action-badge.used{background:#d1fae5;color:#065f46}.creator-cell{font-size:14px}.usage-link{color:#3b82f6;cursor:pointer;text-decoration:underline}.usage-link:hover{color:#2563eb}.empty-message{color:#9ca3af;font-style:italic;padding:24px;text-align:center}.transaction-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1);max-height:90vh;max-width:900px;overflow-y:auto;padding:32px;width:90%}.transaction-modal h2{color:#1f2937;font-size:24px;margin:0 0 20px}.transaction-user-info{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:16px}.transaction-user-info p{color:#374151;font-size:14px;margin:8px 0}.transaction-stats{margin-bottom:24px}.transaction-stats h3{color:#374151;font-size:18px;margin:0 0 16px}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.stat-card{border:1px solid #e5e7eb;border-radius:8px;color:#1f2937;display:flex;flex-direction:column;gap:8px;padding:20px}.stat-card,.stat-card:nth-child(2),.stat-card:nth-child(3),.stat-card:nth-child(4){background:#f9fafb}.stat-label{color:#6b7280;font-size:12px;letter-spacing:.05em;text-transform:uppercase}.stat-value{color:#1f2937;font-size:28px;font-weight:700}.stat-tokens{font-size:14px;opacity:.9}.transaction-filter{align-items:center;display:flex;gap:12px;margin-bottom:20px}.transaction-filter label{color:#374151;font-weight:600}.transaction-filter select{border:1px solid #d1d5db;border-radius:4px;font-size:14px;padding:8px 12px}.transaction-list{margin-bottom:20px;max-height:500px;overflow-y:auto}.transaction-item{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;overflow:hidden}.transaction-header{align-items:center;background:#f9fafb;cursor:pointer;display:flex;gap:16px;padding:16px;transition:background .2s}.transaction-header:hover{background:#f3f4f6}.transaction-type-badge{border-radius:12px;font-size:13px;font-weight:600;padding:6px 12px;white-space:nowrap}.transaction-type-badge.ai_generation{background:#dbeafe;color:#1e40af}.transaction-type-badge.coupon_usage{background:#fef3c7;color:#92400e}.transaction-type-badge.token_adjustment{background:#e0e7ff;color:#3730a3}.transaction-type-badge.token_purchase{background:#d1fae5;color:#065f46}.transaction-date{color:#6b7280;flex:1 1;font-size:14px}.transaction-tokens{font-size:16px;font-weight:700;min-width:80px;text-align:right}.transaction-tokens.positive{color:#10b981}.transaction-tokens.negative{color:#ef4444}.expand-icon{color:#9ca3af;font-size:12px}.transaction-details{background:#fff;border-top:1px solid #e5e7eb;padding:20px}.detail-section{margin-bottom:16px}.detail-section p{color:#374151;font-size:14px;margin:8px 0}.detail-section strong{color:#1f2937;display:inline-block;min-width:120px}.status-success{color:#10b981;font-weight:600}.status-failed{color:#ef4444;font-weight:600}.status-pending{color:#f59e0b}.status-completed,.status-pending{font-weight:600;text-transform:capitalize}.status-completed{color:#10b981}.status-refunded{color:#6b7280;font-weight:600;text-transform:capitalize}.prompt-section{margin:12px 0}.prompt-text{background:#f9fafb;border-radius:6px;color:#374151;font-family:Courier New,monospace;font-size:13px;line-height:1.6;margin-top:8px;padding:12px;white-space:pre-wrap;word-break:break-word}.generated-image{margin:12px 0}.generated-image img{border-radius:8px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);margin-top:8px;max-height:300px;max-width:100%}.request-id{color:#6b7280;font-size:12px}.request-id code{background:#f3f4f6;border-radius:3px;font-family:Courier New,monospace;font-size:11px;padding:2px 6px}.meta-info{border-top:1px solid #e5e7eb;color:#6b7280;font-size:12px;margin-top:16px;padding-top:16px}.meta-info p{margin:4px 0}.pagination{align-items:center;display:flex;gap:16px;justify-content:center;margin-bottom:20px}.pagination button{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s}.pagination button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination span{color:#6b7280;font-size:14px}.clickable-user-name{color:#3b82f6;cursor:pointer;font-weight:600;text-decoration:underline;transition:color .2s}.clickable-user-name:hover{color:#2563eb}@media (max-width:768px){.form-row{grid-template-columns:1fr}.coupons-table,.users-table{font-size:12px}.coupons-table td,.coupons-table th,.users-table td,.users-table th{padding:8px}.ledger-modal,.transaction-modal{padding:20px;width:95%}.ledger-table{font-size:12px}.stats-grid{grid-template-columns:1fr}.transaction-header{flex-wrap:wrap;gap:8px}.transaction-date{flex:100% 1;order:3}}.large-modal{max-width:1000px;width:95%}.user-info-header{background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:16px}.user-info-header p{color:#374151;font-size:14px;margin:8px 0}.file-management-actions{display:flex;gap:10px;margin-bottom:20px}.files-table-container{margin-top:20px;overflow-x:auto}.files-table{border-collapse:collapse;margin-bottom:16px;width:100%}.files-table td,.files-table th{border-bottom:1px solid #e5e7eb;padding:12px;text-align:left}.files-table th{color:#374151;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.files-table tbody tr:hover,.files-table th{background:#f9fafb}.file-type-badge{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;padding:4px 8px;text-transform:capitalize}.file-type-badge.character{background:#dbeafe;color:#1e40af}.file-type-badge.background{background:#d1fae5;color:#065f46}.file-type-badge.scene{background:#fee2e2;color:#991b1b}.file-type-badge.asset{background:#fef3c7;color:#92400e}.file-type-badge.page-image{background:#e9d5ff;color:#6b21a8}.filename-cell code{background:#f3f4f6;border-radius:3px;font-size:12px;padding:2px 6px;word-break:break-all}.orphaned{color:#dc2626;font-style:italic;font-weight:600}.files-summary{background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;margin-top:10px;padding:12px 16px}.files-summary p{color:#374151;font-size:14px;font-weight:600;margin:0}.no-files-message{font-size:16px}.loading-container,.no-files-message{color:#6b7280;padding:40px;text-align:center}.legal-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:40px 20px}.legal-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3);margin:0 auto;max-width:900px;padding:60px;position:relative}.back-btn{align-items:center;background:#f3f4f6;border:none;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;left:20px;padding:10px 20px;position:absolute;top:20px;transition:all .2s ease}.back-btn:hover{background:#e5e7eb;transform:translateX(-4px)}.legal-container h1{color:#1f2937;font-size:42px;margin:0 0 8px;padding-top:20px}.last-updated{color:#6b7280;font-size:14px;font-style:italic;margin:0 0 40px}.legal-section{margin:40px 0;padding:0}.legal-section h2{border-bottom:2px solid #667eea;color:#1f2937;font-size:28px;margin:32px 0 16px;padding-bottom:8px}.legal-section h3{color:#374151;font-size:20px;font-weight:600;margin:24px 0 12px}.legal-section p{color:#4b5563;font-size:16px;line-height:1.8;margin:16px 0}.legal-section ul{list-style:disc;margin:16px 0;padding-left:32px}.legal-section ul li{color:#4b5563;font-size:16px;line-height:1.8;margin:8px 0}.legal-section ul li strong{color:#1f2937;font-weight:600}.legal-section a{color:#667eea;font-weight:500;text-decoration:none;transition:color .2s ease}.legal-section a:hover{color:#764ba2;text-decoration:underline}.contact-info{background:#f9fafb;border-left:4px solid #667eea;border-radius:8px;margin:20px 0;padding:20px}.contact-info strong{color:#1f2937}.legal-footer{border-top:2px solid #e5e7eb;margin-top:60px;padding-top:30px;text-align:center}.legal-footer p{color:#6b7280;font-size:15px;font-style:italic;margin:0}@media (max-width:768px){.legal-page{padding:20px 10px}.legal-container{border-radius:12px;padding:40px 20px}.back-btn{margin-bottom:20px;position:static;width:-webkit-fit-content;width:fit-content}.legal-container h1{font-size:32px;padding-top:0}.legal-section h2{font-size:24px}.legal-section h3{font-size:18px}.legal-section p,.legal-section ul li{font-size:15px}.legal-section ul{padding-left:24px}}@media (max-width:480px){.legal-container{padding:30px 16px}.legal-container h1{font-size:28px}.legal-section h2{font-size:22px}.legal-section h3{font-size:17px}}.App{text-align:center}
/*# sourceMappingURL=main.25b73a3a.css.map*/