.hero-section{display:flex;align-items:center;justify-content:space-between;padding:30px 20px;max-width:1200px;margin:0 auto;min-height:200px}.hero-content{flex:1;padding-right:30px}.hero-title{font-size:2rem;font-weight:700;margin-bottom:8px;color:var(--text-primary);line-height:1.2}.hero-subtitle{font-size:1rem;color:var(--text-secondary);margin-bottom:16px;line-height:1.3}.hero-cta{margin-top:12px}.btn{display:inline-block;padding:10px 24px;border-radius:25px;font-weight:600;text-decoration:none;transition:all .3s ease;font-size:1rem}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-dark);transform:translateY(-2px);box-shadow:0 10px 20px #0000001a}.hero-image{flex:1;display:flex;justify-content:center;align-items:center}.hero-image img{max-width:100%;border-radius:20px;box-shadow:0 20px 40px #0003}.hero-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:12px;padding:20px;color:#fff;min-height:120px;box-shadow:0 6px 20px #0000001a}.hero-icon{font-size:3rem;margin-bottom:10px}.hero-placeholder p{font-size:1.2rem;font-weight:600;margin:0}@media (max-width: 992px){.hero-section{flex-direction:column;padding:25px 20px;text-align:center;min-height:180px}.hero-content{padding-right:0;margin-bottom:20px}.hero-title{font-size:1.8rem}.hero-subtitle{font-size:.95rem}}@media (max-width: 768px){.hero-section{padding:20px 15px;min-height:150px}.hero-title{font-size:1.5rem;margin-bottom:6px}.hero-subtitle{font-size:.9rem;margin-bottom:12px}.hero-cta{margin-top:10px}.hero-placeholder{padding:15px;min-height:80px}.hero-icon{font-size:1.8rem}.hero-placeholder p{font-size:.85rem}}.announcement-section{background:transparent;color:#495057;padding:10px 0;text-align:center;position:relative}.announcement-section:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(40,167,69,.05),transparent);animation:shimmer 4s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.announcement-content{display:flex;align-items:center;justify-content:center;gap:12px;position:relative;z-index:1}.announcement-icon{font-size:20px;color:#28a745;animation:bounce 3s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-4px)}60%{transform:translateY(-2px)}}.announcement-text{font-size:15px;font-weight:500;color:#495057}.announcement-text strong{font-weight:600;color:#28a745}.announcement-link{color:#007bff;text-decoration:none;font-weight:600;transition:color .2s ease}.announcement-link:hover{color:#0056b3;text-decoration:underline}@media (max-width: 768px){.announcement-section{padding:8px 0}.announcement-content{flex-direction:column;gap:6px}.announcement-icon{font-size:18px}.announcement-text{font-size:14px;line-height:1.4}}@media (max-width: 480px){.announcement-text{font-size:13px;padding:0 16px}}.worlds-preview{padding:50px 0;background-color:var(--bg-primary)}.worlds-preview .container{max-width:1200px;margin:0 auto;padding:0 20px}.worlds-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.worlds-preview .section-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0}.worlds-preview-grid{display:grid;gap:24px;grid-template-columns:1fr}@media (min-width: 768px){.worlds-preview-grid{grid-template-columns:repeat(2,1fr);gap:30px}}@media (min-width: 1024px){.worlds-preview-grid{grid-template-columns:repeat(3,1fr);gap:32px}}.world-preview-card{background-color:var(--bg-secondary);border-radius:12px;overflow:hidden;box-shadow:0 4px 12px #00000014;transition:all .3s ease;text-decoration:none;color:var(--text-primary);display:flex;flex-direction:column;max-width:350px;margin:0 auto;width:100%}.world-preview-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000026;text-decoration:none;color:var(--text-primary)}.world-preview-image{height:180px;overflow:hidden;position:relative}.world-preview-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.world-preview-card:hover .world-preview-image img{transform:scale(1.05)}.world-preview-content{padding:20px;flex:1;display:flex;flex-direction:column}.world-preview-title{font-size:1.25rem;font-weight:600;margin:0 0 12px;color:var(--text-primary);line-height:1.3}.world-preview-description{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0 0 16px;flex:1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.world-preview-meta{margin-top:auto;padding-top:8px}.character-count{font-size:.85rem;color:var(--text-secondary);font-weight:500}.skeleton-image{height:180px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-title{height:20px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;margin-bottom:12px;width:80%}.skeleton-description{height:14px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;margin-bottom:8px;width:100%}.skeleton-description:last-of-type{width:60%;margin-bottom:16px}.skeleton-meta{height:12px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;width:40%}[data-theme=dark] .skeleton-image,[data-theme=dark] .skeleton-title,[data-theme=dark] .skeleton-description,[data-theme=dark] .skeleton-meta{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.worlds-preview-error{text-align:center;padding:60px 20px;color:var(--text-secondary)}.worlds-preview-error p{margin-bottom:20px;font-size:1.1rem}.worlds-preview-empty{text-align:center;padding:60px 20px;color:var(--text-secondary)}.worlds-preview-empty p{font-size:1.1rem}@media (max-width: 767px){.worlds-preview{padding:60px 0}.worlds-preview .section-title{font-size:2rem}.worlds-preview-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px}.view-all-link{font-size:1rem}.world-preview-card{max-width:none}}@media (max-width: 480px){.worlds-preview .container{padding:0 16px}.worlds-preview .section-title{font-size:1.75rem}.world-preview-image{height:160px}.world-preview-content{padding:16px}}.characters-preview{padding:50px 0;background-color:var(--bg-primary)}.characters-preview .container{max-width:1200px;margin:0 auto;padding:0 20px}.characters-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px}.characters-preview .section-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0}.view-all-link{color:var(--accent-color);text-decoration:none;font-weight:600;font-size:1.1rem;transition:color .3s ease}.view-all-link:hover{color:var(--accent-color-hover, #0056b3);text-decoration:underline}.characters-preview-grid{display:grid;gap:20px;grid-template-columns:1fr}@media (min-width: 768px){.characters-preview-grid{grid-template-columns:repeat(2,1fr);gap:24px}}@media (min-width: 1024px){.characters-preview-grid{grid-template-columns:repeat(4,1fr);gap:24px}}.character-preview-card{background-color:var(--bg-secondary);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f;transition:all .3s ease;text-decoration:none;color:var(--text-primary);display:flex;flex-direction:column;max-width:280px;margin:0 auto;width:100%}.character-preview-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001f;text-decoration:none;color:var(--text-primary)}.character-preview-avatar{width:100%;height:200px;overflow:hidden;position:relative;background-color:var(--bg-tertiary, #f8f9fa)}.character-preview-avatar img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.character-preview-card:hover .character-preview-avatar img{transform:scale(1.03)}.character-preview-content{padding:16px;flex:1;display:flex;flex-direction:column;min-height:120px}.character-preview-name{font-size:1.1rem;font-weight:600;margin:0 0 8px;color:var(--text-primary);line-height:1.3;text-align:center}.character-preview-world{font-size:.8rem;color:var(--accent-color);font-weight:500;margin:0 0 8px;text-align:center;line-height:1.2}.character-preview-description{color:var(--text-secondary);font-size:.85rem;line-height:1.4;margin:0;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-align:center}.skeleton{background-color:var(--bg-secondary);border-radius:12px;overflow:hidden;animation:none}.skeleton-avatar{height:200px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-title{height:18px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;margin-bottom:8px;width:70%;margin-left:auto;margin-right:auto}.skeleton-description{height:12px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;margin-bottom:6px;width:90%;margin-left:auto;margin-right:auto}.skeleton-description:last-of-type{width:60%;margin-bottom:8px}.skeleton-meta{height:10px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;width:50%;margin-left:auto;margin-right:auto}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}[data-theme=dark] .skeleton-avatar,[data-theme=dark] .skeleton-title,[data-theme=dark] .skeleton-description,[data-theme=dark] .skeleton-meta{background:linear-gradient(90deg,#2a2a2a 25%,#3a3a3a,#2a2a2a 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.characters-preview-error{text-align:center;padding:60px 20px;color:var(--text-secondary)}.characters-preview-error p{margin-bottom:20px;font-size:1.1rem}.retry-button{background-color:var(--accent-color);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .3s ease}.retry-button:hover{background-color:var(--accent-color-hover, #0056b3)}.characters-preview-empty{text-align:center;padding:60px 20px;color:var(--text-secondary)}.characters-preview-empty p{font-size:1.1rem}@media (max-width: 767px){.characters-preview{padding:60px 0}.characters-preview .section-title{font-size:2rem}.characters-preview-header{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px}.view-all-link{font-size:1rem}.character-preview-card{max-width:none}.character-preview-avatar{height:180px}.character-preview-content{min-height:100px;padding:14px}}@media (max-width: 480px){.characters-preview .container{padding:0 16px}.characters-preview .section-title{font-size:1.75rem}.character-preview-avatar{height:160px}.character-preview-content{padding:12px;min-height:90px}.character-preview-name{font-size:1rem}.character-preview-world{font-size:.75rem}.character-preview-description{font-size:.8rem}}@media (min-width: 1400px){.characters-preview-grid{gap:28px}.character-preview-card{max-width:300px}}.cta-section{padding:100px 0;background:linear-gradient(135deg,var(--bg-gradient-start, #f8f9fa) 0%,var(--bg-gradient-end, #e9ecef) 100%);position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(108,92,231,.1) 0%,transparent 70%);pointer-events:none}.cta-content{text-align:center;max-width:800px;margin:0 auto;position:relative;z-index:1}.cta-title{font-size:3rem;font-weight:800;margin-bottom:20px;color:var(--text-primary);line-height:1.2;background:linear-gradient(135deg,var(--primary-color, #6c5ce7) 0%,var(--accent-color, #4a90e2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cta-description{font-size:1.25rem;color:var(--text-secondary);margin-bottom:40px;line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto}.cta-buttons{display:flex;gap:20px;justify-content:center;align-items:center;flex-wrap:wrap}.btn{display:inline-block;padding:12px 30px;border-radius:50px;font-weight:600;text-decoration:none;transition:all .3s ease;font-size:1rem;border:2px solid transparent;position:relative;overflow:hidden}.btn-large{padding:16px 40px;font-size:1.1rem;min-width:160px}.btn-primary{background:linear-gradient(135deg,var(--primary-color, #6c5ce7) 0%,var(--accent-color, #4a90e2) 100%);color:#fff;box-shadow:0 8px 25px #6c5ce74d}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 35px #6c5ce766}.btn-primary:active{transform:translateY(-1px);box-shadow:0 6px 20px #6c5ce74d}.btn-secondary{background-color:transparent;color:var(--primary-color, #6c5ce7);border:2px solid var(--primary-color, #6c5ce7);position:relative}.btn-secondary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(135deg,var(--primary-color, #6c5ce7) 0%,var(--accent-color, #4a90e2) 100%);transition:left .3s ease;z-index:-1}.btn-secondary:hover{color:#fff;transform:translateY(-3px);box-shadow:0 8px 25px #6c5ce733}.btn-secondary:hover:before{left:0}.btn-secondary:active{transform:translateY(-1px)}@media (max-width: 768px){.cta-section{padding:80px 0}.cta-title{font-size:2.5rem;margin-bottom:16px}.cta-description{font-size:1.1rem;margin-bottom:32px;padding:0 20px}.cta-buttons{flex-direction:column;gap:16px;padding:0 20px}.btn-large{width:100%;max-width:280px;padding:14px 32px}}@media (max-width: 480px){.cta-section{padding:60px 0}.cta-title{font-size:2rem}.cta-description{font-size:1rem}.btn-large{max-width:100%;padding:12px 24px;font-size:1rem}}[data-theme=dark] .cta-section{background:linear-gradient(135deg,var(--bg-gradient-start, #1a1a2e) 0%,var(--bg-gradient-end, #16213e) 100%)}[data-theme=dark] .cta-section:before{background:radial-gradient(circle at 50% 50%,rgba(139,127,248,.15) 0%,transparent 70%)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.cta-content{animation:fadeInUp .8s ease-out}.btn:focus{outline:3px solid var(--accent-color, #4a90e2);outline-offset:2px}.btn:focus:not(:focus-visible){outline:none}@media (prefers-contrast: high){.cta-title{-webkit-text-fill-color:var(--text-primary);background:none}.btn-primary{background:var(--primary-color, #6c5ce7);border:2px solid var(--text-primary)}.btn-secondary{background:var(--bg-primary)}}@media (prefers-reduced-motion: reduce){.btn,.cta-content{transition:none;animation:none}.btn:hover{transform:none}}.home-page{width:100%;overflow-x:hidden}.home-page>*{margin-bottom:4rem}.home-page>*:last-child{margin-bottom:0}@media (max-width: 768px){.home-page>*{margin-bottom:3rem}}@media (max-width: 480px){.home-page>*{margin-bottom:2rem}}.error-boundary{padding:2rem 0;background-color:var(--background-color, #f8f9fa)}.error-boundary .error-message{text-align:center;padding:2rem;background-color:var(--error-background, #fff5f5);border:1px solid var(--error-border, #fed7d7);border-radius:8px;color:var(--error-text, #c53030)}.error-boundary .error-message p{margin:0;font-size:1rem}.worlds-page{padding:20px 0}.worlds-page h1{margin-bottom:30px;font-size:2rem}.worlds-filters{margin-bottom:30px}.search-bar{margin-bottom:20px}.search-bar input{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;background-color:var(--bg-primary);color:var(--text-primary)}.tag-filters{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.tag-label{font-size:.9rem;color:var(--text-secondary)}.tags{display:flex;flex-wrap:wrap;gap:8px}.tag{padding:6px 12px;border-radius:20px;background-color:var(--bg-secondary);color:var(--text-secondary);font-size:.85rem;border:1px solid var(--border-color);cursor:pointer;transition:all .2s ease}.tag:hover{background-color:var(--border-color)}.tag.active{background-color:var(--accent-color);color:#fff;border-color:var(--accent-color)}.worlds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:30px}.world-card{background-color:var(--bg-secondary);border-radius:10px;overflow:hidden;box-shadow:0 4px 12px #00000014;transition:transform .3s ease,box-shadow .3s ease;text-decoration:none;color:var(--text-primary);display:flex;flex-direction:column}.world-card:hover{transform:translateY(-5px);box-shadow:0 8px 24px #0000001f;text-decoration:none}.world-image{height:180px;overflow:hidden}.world-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.world-card:hover .world-image img{transform:scale(1.05)}.world-info{padding:0 20px;flex:1;display:flex;flex-direction:column}.world-info h2{margin-bottom:10px;font-size:1.4rem}.world-info p{color:var(--text-secondary);margin-bottom:20px;font-size:.95rem;line-height:1.5;flex:1}.world-meta{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.character-count{font-size:.85rem;color:var(--text-secondary)}.world-tags{display:flex;gap:6px}.world-tags .tag{padding:4px 8px;font-size:.75rem}.tag.more{background-color:var(--bg-primary)}.worlds-page.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.loading-spinner{width:40px;height:40px;border:3px solid rgba(0,0,0,.1);border-radius:50%;border-top-color:var(--accent-color);animation:spin 1s ease-in-out infinite;margin-bottom:20px}@keyframes spin{to{transform:rotate(360deg)}}.worlds-page.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.no-worlds{text-align:center;padding:60px 0;color:var(--text-secondary)}@media (max-width: 768px){.worlds-grid{grid-template-columns:1fr}.tag-filters{flex-direction:column;align-items:flex-start}}.world-detail-page{max-width:1200px;margin:0 auto;padding:20px}.world-detail-page.loading,.world-detail-page.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;text-align:center}.loading-spinner{border:4px solid rgba(0,0,0,.1);border-radius:50%;border-top:4px solid #3498db;width:40px;height:40px;animation:spin 1s linear infinite;margin-bottom:20px}.error-message{color:#e74c3c;font-size:18px;margin-bottom:20px}.back-button{display:inline-block;margin-bottom:20px;color:#3498db;text-decoration:none;font-weight:500}.back-button:hover{text-decoration:none}.world-header{margin-bottom:30px}.world-main-content{display:flex;flex-direction:column;gap:20px}@media (min-width: 768px){.world-main-content{flex-direction:row;gap:30px}.world-cover{flex:0 0 300px;max-width:300px}.world-info{flex:1}}.world-header h1{margin:10px 0;font-size:32px}.world-description{font-size:18px;color:#555;margin-bottom:15px}.world-cover img{width:100%;border-radius:8px;box-shadow:0 4px 8px #0000001a}.world-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.tag{background-color:#f0f0f0;color:#333;padding:4px 10px;border-radius:16px;font-size:14px}.world-content{margin-top:30px}.world-info h2,.world-characters-section h2{font-size:24px;margin-bottom:20px;border-bottom:1px solid #eee;padding-bottom:10px}.world-description-section,.world-background{margin-bottom:25px}.world-description-section h3,.world-background h3{font-size:18px;margin-bottom:10px;color:#444}.world-background,.world-rules,.world-attributes{margin-bottom:25px}.world-background h3,.world-rules h3,.world-attributes h3{font-size:20px;margin-bottom:10px;color:#444}.markdown-content{line-height:1.6}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin-top:1.5em;margin-bottom:.5em}.markdown-content h1{font-size:1.8em}.markdown-content h2{font-size:1.6em}.markdown-content h3{font-size:1.4em}.markdown-content p{margin-bottom:1em}.markdown-content ul,.markdown-content ol{margin-left:2em;margin-bottom:1em}.markdown-content li{margin-bottom:.5em}.markdown-content blockquote{border-left:4px solid #ddd;padding-left:1em;margin-left:0;margin-right:0;font-style:italic}.markdown-content code{background-color:#f5f5f5;padding:.2em .4em;border-radius:3px;font-family:monospace}.markdown-content pre{background-color:#f5f5f5;padding:1em;border-radius:5px;overflow-x:auto;margin-bottom:1em}.markdown-content pre code{background-color:transparent;padding:0}.markdown-content a{color:#3498db;text-decoration:none}.markdown-content a:hover{text-decoration:none}.markdown-content img{max-width:100%;height:auto;border-radius:5px;margin:1em 0}.markdown-content hr{border:0;border-top:1px solid #eee;margin:2em 0}.markdown-content table{border-collapse:collapse;width:100%;margin-bottom:1em}.markdown-content th,.markdown-content td{border:1px solid #ddd;padding:8px 12px;text-align:left}.markdown-content th{background-color:#f5f5f5}.attributes-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.attribute-item{display:flex;flex-direction:column;background-color:#f9f9f9;padding:12px;border-radius:6px}.attribute-name{font-weight:500;color:#666;font-size:14px;margin-bottom:5px}.attribute-value{font-size:16px;color:#333}.characters-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}.character-card,.character-card:link,.character-card:visited,.character-card:hover,.character-card:active,.character-card:focus{text-decoration:none!important}.character-card *{text-decoration:none!important}.character-card{display:block;text-decoration:none!important;color:inherit;background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;border:1px solid rgba(0,0,0,.04)}.character-card:hover{text-decoration:none!important;transform:translateY(-8px) scale(1.02);box-shadow:0 12px 24px #00000026;border-color:#3498db33}.character-image{width:100%;height:0;padding-bottom:100%;position:relative;overflow:hidden}.character-image img{position:absolute;width:100%;height:100%;object-fit:cover}.character-info{padding:15px;display:flex;flex-direction:column;background-color:#fff;position:relative;z-index:2;min-height:70px}.character-info h3{margin:0 0 6px;font-size:16px;display:block;font-weight:600;text-decoration:none!important;transition:color .2s ease}.character-info .character-description{display:block;margin:0;font-size:13px;color:#666;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;transition:color .2s ease}.character-description-overlay{display:none;position:absolute;inset:0;background-color:#fffc;padding:15px;overflow:hidden;transition:all .3s ease;z-index:1}.character-card:hover .character-description-overlay{display:block;height:100%;overflow-y:auto}.character-card:hover .character-info h3{color:#3498db;text-decoration:none!important}.character-card:hover .character-info .character-description{color:#555}.no-characters{background-color:#f9f9f9;padding:30px;text-align:center;border-radius:8px;color:#666}[data-theme=dark] .world-detail-page{color:var(--text-primary)}[data-theme=dark] .back-button{color:var(--accent-color)}[data-theme=dark] .world-description{color:var(--text-secondary)}[data-theme=dark] .tag{background-color:#333;color:#ddd}[data-theme=dark] .world-info h2,[data-theme=dark] .world-characters-section h2{border-bottom-color:#333}[data-theme=dark] .world-description-section h3,[data-theme=dark] .world-background h3,[data-theme=dark] .world-rules h3,[data-theme=dark] .world-attributes h3{color:var(--text-secondary)}[data-theme=dark] .attribute-item{background-color:#2a2a2a}[data-theme=dark] .attribute-name{color:#aaa}[data-theme=dark] .attribute-value{color:#fff;font-weight:500}[data-theme=dark] .markdown-content code{background-color:#333;color:#f0f0f0}[data-theme=dark] .markdown-content pre{background-color:#333}[data-theme=dark] .markdown-content blockquote{border-left-color:#555}[data-theme=dark] .markdown-content th{background-color:#333}[data-theme=dark] .markdown-content th,[data-theme=dark] .markdown-content td{border-color:#444}[data-theme=dark] .character-card{background-color:#222;box-shadow:0 2px 8px #0000004d;border-color:#ffffff14}[data-theme=dark] .character-card:hover{box-shadow:0 12px 24px #0006;border-color:#3498db4d}[data-theme=dark] .character-info{background-color:#222}[data-theme=dark] .character-card:hover .character-info h3{color:#5dade2;text-decoration:none!important}[data-theme=dark] .character-info h3{color:#fff}[data-theme=dark] .character-description-overlay{background-color:#000c;color:#ddd}[data-theme=dark] .no-characters{background-color:#2a2a2a;color:#aaa}[data-theme=dark] .loading-spinner{border:4px solid rgba(255,255,255,.1);border-top:4px solid var(--accent-color)}[data-theme=dark] .error-message{color:var(--error-color)}.section-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:10px 0;margin-bottom:15px}.section-header h3{margin:0;font-size:20px;color:#444}.expand-icon{font-size:24px;font-weight:700;color:#666;transition:transform .3s ease}.expand-icon.expanded{transform:rotate(0)}.markdown-content.collapsed{max-height:150px;overflow:hidden;position:relative}.markdown-content.collapsed:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50px;background:linear-gradient(to bottom,#fff0,#fff);pointer-events:none}.markdown-content.expanded{max-height:none}[data-theme=dark] .section-header h3{color:var(--text-secondary)}[data-theme=dark] .expand-icon{color:#aaa}[data-theme=dark] .markdown-content.collapsed:after{background:linear-gradient(to bottom,#2220,#222)}.world-profiles{margin-bottom:20px}.world-profiles h3{font-size:18px;margin-bottom:10px;color:#444}.profiles-list{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.profile-item{background-color:#f0f0f0;border-radius:6px;padding:8px 12px;display:flex;flex-direction:column;min-width:120px}.profile-name{font-weight:500;font-size:14px}.profile-date{font-size:12px;color:#666;margin-top:4px}.add-profile-btn{padding:0!important;background:none;border:2px dashed #ccc;border-radius:6px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#666;transition:all .2s ease}.add-profile-btn:hover{border-color:#3498db;color:#3498db}[data-theme=dark] .world-profiles h3{color:var(--text-secondary)}[data-theme=dark] .profile-item{background-color:#2a2a2a}[data-theme=dark] .profile-date{color:#aaa}[data-theme=dark] .add-profile-btn{border-color:#444;color:#aaa}[data-theme=dark] .add-profile-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:500px;box-shadow:0 4px 20px #00000026;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #eee}.modal-header h3{margin:0;font-size:18px}.close-btn{background:none;border:none;cursor:pointer;color:#666;padding:5px;display:flex;align-items:center;justify-content:center}.close-btn:hover{color:#333}form{padding:20px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500;font-size:14px;color:#555}.form-group input[type=text],.form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px}.form-group textarea{resize:vertical;min-height:80px}.gender-options{display:flex;gap:15px}.gender-option{display:flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid #ddd;border-radius:4px;cursor:pointer}.gender-option.selected{background-color:#f0f7ff;border-color:#3498db;color:#3498db}.gender-option input{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:0;height:0;margin:0;padding:0;opacity:0;position:absolute;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cancel-btn{background-color:#f5f5f5;border:none;padding:10px 15px;border-radius:4px;cursor:pointer;font-size:14px;color:#555}.submit-btn{background-color:#3498db;border:none;padding:10px 15px;border-radius:4px;cursor:pointer;font-size:14px;color:#fff}.submit-btn:disabled{background-color:#a0cfee;cursor:not-allowed}[data-theme=dark] .modal-content{background-color:#222;color:#eee}[data-theme=dark] .modal-header{border-bottom-color:#333}[data-theme=dark] .close-btn{color:#aaa}[data-theme=dark] .close-btn:hover{color:#fff}[data-theme=dark] .form-group label{color:#bbb}[data-theme=dark] .form-group input[type=text],[data-theme=dark] .form-group textarea{background-color:#333;border-color:#444;color:#eee}[data-theme=dark] .gender-option{border-color:#444;color:#ddd}[data-theme=dark] .gender-option.selected{background-color:#1a3a5a;border-color:var(--accent-color);color:var(--accent-color)}[data-theme=dark] .cancel-btn{background-color:#333;color:#ddd}[data-theme=dark] .submit-btn{background-color:var(--accent-color)}[data-theme=dark] .submit-btn:disabled{background-color:#2a5980}.profile-item{cursor:pointer;padding:5px 10px;border-radius:4px;transition:all .2s;border:2px solid transparent}.profile-item:hover{background-color:#0000000d}.profile-item.selected{background-color:#0078ff1a;border-color:#0078ff;font-weight:700;box-shadow:0 0 5px #0078ff4d}@media (max-width: 768px){.world-content{grid-template-columns:1fr}.characters-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.character-info{padding:12px;min-height:60px}.character-info h3{font-size:15px}.character-info .character-description{font-size:12px}}@media (max-width: 480px){.characters-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.character-info{padding:10px;min-height:50px}.character-info h3{font-size:14px;margin-bottom:4px}.character-info .character-description{font-size:11px;-webkit-line-clamp:1}}@media (min-width: 1200px){.world-content{grid-template-columns:1fr 1fr}.characters-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px}.character-info{padding:16px;min-height:75px}.character-info h3{font-size:17px;margin-bottom:7px}.character-info .character-description{font-size:14px}}.friendly-alert-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease-out}.friendly-alert{background:var(--card-bg, white);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:400px;width:90%;animation:slideIn .3s ease-out;border:1px solid var(--border-color, #e5e7eb)}.friendly-alert-header{display:flex;align-items:center;padding:1.5rem 1.5rem .5rem;gap:.75rem}.friendly-alert-icon{font-size:1.5rem;flex-shrink:0}.friendly-alert-title{flex:1;margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.friendly-alert-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .2s ease;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.friendly-alert-close:hover{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1f2937)}.friendly-alert-content{padding:0 1.5rem 1.5rem}.friendly-alert-message{margin:0;color:var(--text-secondary, #6b7280);line-height:1.5;font-size:1rem}.friendly-alert-footer{padding:0 1.5rem 1.5rem;display:flex;justify-content:flex-end;gap:.75rem}.friendly-alert-button{background:var(--primary-color, #6c5ce7);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s ease;font-size:.9rem}.friendly-alert-button:hover{background:var(--secondary-color, #4a90e2);transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.friendly-alert-button-primary{background:var(--primary-color, #6c5ce7);color:#fff}.friendly-alert-button-primary:hover{background:var(--secondary-color, #4a90e2)}.friendly-alert-button-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1f2937);border:1px solid var(--border-color, #e5e7eb)}.friendly-alert-button-secondary:hover{background:var(--bg-tertiary, #e5e7eb);transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.friendly-alert-success{border-left:4px solid #10b981}.friendly-alert-success .friendly-alert-icon{color:#10b981}.friendly-alert-info{border-left:4px solid #3b82f6}.friendly-alert-info .friendly-alert-icon{color:#3b82f6}.friendly-alert-warning{border-left:4px solid #f59e0b}.friendly-alert-warning .friendly-alert-icon{color:#f59e0b}.friendly-alert-error{border-left:4px solid #ef4444}.friendly-alert-error .friendly-alert-icon{color:#ef4444}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}[data-theme=dark] .friendly-alert{background:var(--card-bg, #1e1e1e);border-color:var(--border-color, #333333)}[data-theme=dark] .friendly-alert-close:hover{background:var(--bg-secondary, #2a2a2a)}@media (max-width: 480px){.friendly-alert{width:95%;margin:1rem}.friendly-alert-header{padding:1rem 1rem .5rem}.friendly-alert-content,.friendly-alert-footer{padding:0 1rem 1rem}.friendly-alert-title{font-size:1.1rem}.friendly-alert-message{font-size:.9rem}}.chat-page{display:flex;flex-direction:column;height:100vh;max-width:1200px;margin:0 auto}.chat-header{padding:1rem;border-bottom:1px solid #e0e0e0;display:flex;flex-direction:column;gap:.5rem;margin-bottom:20px}.chat-header>.back-button+.chat-header-actions{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-top:0}.chat-header>.back-button{display:inline-block}.chat-header-actions{display:flex;gap:.5rem;margin-left:auto;margin-top:.5rem}.chat-header-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:100%}.action-button{background-color:#f0f0f0;border:1px solid #e0e0e0;border-radius:.5rem;padding:.5rem .75rem;font-size:.9rem;cursor:pointer;transition:all .2s ease;color:#333}.action-button:hover{background-color:#e0e0e0}[data-theme=dark] .action-button{background-color:#333;border-color:#444;color:#e0e0e0}[data-theme=dark] .action-button:hover{background-color:#444}.back-button{background:none;border:none;color:#06c;cursor:pointer;font-size:1rem;padding:.5rem 0;text-align:left}.character-info-compact{display:flex;flex-direction:column;gap:.5rem}.character-info-header{display:flex;gap:1rem;align-items:center}.character-avatar-small{width:60px;height:60px;border-radius:50%;overflow:hidden}.character-avatar-small img{width:100%;height:100%;object-fit:cover}.character-details-compact{flex:1}.character-name-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.character-details-compact h2{margin:0;font-size:1.2rem}.toggle-info-button{background:none;border:none;padding:2px 5px;font-size:1rem;cursor:pointer;transition:all .2s ease;color:#666;display:flex;align-items:center;justify-content:center}.toggle-info-button:hover{color:#333}[data-theme=dark] .toggle-info-button{background:none;border:none;color:#999}[data-theme=dark] .toggle-info-button:hover{color:#e0e0e0}.character-details-compact p{margin:.25rem 0 0;font-size:.9rem;color:#666;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:12px}.character-traits-compact{display:flex;flex-wrap:wrap;gap:.75rem}.trait-compact{flex:1;min-width:150px}.trait-header-compact{display:flex;justify-content:space-between;font-size:.8rem;margin-bottom:.25rem}.trait-value-text-compact{color:#666}.trait-bar-compact{height:6px;background-color:#e0e0e0;border-radius:3px;overflow:hidden}.trait-value-compact{height:100%;background-color:#4caf50;border-radius:3px}.chat-container{flex:1;overflow-y:auto;padding:1rem}.empty-chat{display:flex;justify-content:center;align-items:center;height:100%;color:#999;font-style:italic}.messages{display:flex;flex-direction:column;gap:1rem}.message{display:flex;gap:.75rem;max-width:80%}.user-message{align-self:flex-end;flex-direction:row-reverse}.character-message{align-self:flex-start}.message-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0}.message-avatar img{width:100%;height:100%;object-fit:cover}.message-content{padding:.75rem;border-radius:1rem;box-shadow:0 2px 6px #00000026;transition:all .2s ease;border:1px solid rgba(0,0,0,.08)}.message-content:hover{box-shadow:0 3px 8px #0003}.user-message .message-content{background-color:#dcf8c6;border-top-right-radius:0;color:#333;border-color:#b8e986}.character-message .message-content{background-color:#f5f5f5;border-top-left-radius:0;color:#333;border-color:#e0e0e0}[data-theme=dark] .message-content{box-shadow:0 2px 6px #0000004d;border:1px solid rgba(255,255,255,.1)}[data-theme=dark] .message-content:hover{box-shadow:0 3px 10px #0006}[data-theme=dark] .user-message .message-content{background-color:#2a6c3b;color:#e0e0e0;border-top-right-radius:0;border-color:#1d4b29}[data-theme=dark] .character-message .message-content{background-color:#2d2d2d;color:#e0e0e0;border-top-left-radius:0;border-color:#444}.message-header{display:flex;justify-content:space-between;margin-bottom:.25rem;font-size:.8rem}.message-sender{font-weight:700;color:#333}[data-theme=dark] .message-sender{color:#e0e0e0}.message-time{color:#999}.message-text{font-size:.95rem;line-height:1.4;white-space:pre-wrap}.message-text ol,.message-text ul{margin:.5rem 0;padding-left:1.5rem}.message-text li{margin-bottom:.25rem}.message-text em{font-size:.9rem;padding:.1rem .6rem;border-radius:.5rem;margin:.1rem 0;display:inline-block;background-color:#a760e426;color:#8a2be2;border-left:3px solid #a760e4;font-style:normal;box-shadow:0 1px 3px #0000001a;position:relative;transition:all .2s ease}.message-text em:hover{background-color:#a760e433;transform:translateY(-1px);box-shadow:0 2px 5px #00000026}[data-theme=dark] .message-text em{background-color:#8a2be240;color:#d4b6ff;border-left:3px solid #9d3bad;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .message-text em:hover{background-color:#8a2be24d;box-shadow:0 2px 5px #0006}.trait-changes{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem;font-size:.8rem}.trait-change{background-color:#f0f0f0;padding:.25rem .5rem;border-radius:1rem;display:flex;align-items:center;gap:.25rem}.trait-name{color:#666}[data-theme=dark] .trait-name{color:#bdbdbd}.trait-value{font-weight:700}.trait-value.increase{color:#1b5e20;background-color:#c8e6c9;border-radius:3px;padding:.1rem .3rem;border:1px solid #81c784}.trait-value.decrease{color:#b71c1c;background-color:#ffcdd2;border-radius:3px;padding:.1rem .3rem;border:1px solid #e57373}[data-theme=dark] .trait-value.increase{color:#a5d6a7;background-color:#1b5e20;border:1px solid #2e7d32}[data-theme=dark] .trait-value.decrease{color:#ef9a9a;background-color:#b71c1c;border:1px solid #c62828}.message-emotions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.emotion-tag{background-color:#f0f0f0;color:#666;padding:.25rem .5rem;border-radius:1rem;font-size:.8rem}.typing-indicator{display:flex;gap:.25rem;padding:.5rem 0}.typing-indicator span{width:8px;height:8px;background-color:#999;border-radius:50%;animation:typing-animation 1.5s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing-animation{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.chat-input-container{padding:1rem;border-top:1px solid #e0e0e0;display:flex;gap:.75rem}.chat-input{flex:1;padding:.75rem;border:1px solid #e0e0e0;border-radius:.5rem;resize:none;height:2.5rem;max-height:120px;font-family:inherit;font-size:.95rem;line-height:1.4;transition:height .2s ease-in-out;scrollbar-width:none;-ms-overflow-style:none}.chat-input::-webkit-scrollbar{display:none}.chat-input.expanded{height:60px}.chat-input:focus{outline:none;border-color:#06c}.send-button{background-color:#06c;color:#fff;border:none;border-radius:.5rem;padding:0 1.25rem;font-weight:700;cursor:pointer;transition:background-color .2s}.send-button:hover{background-color:#05a}.send-button:disabled{background-color:#ccc;cursor:not-allowed}.loading,.error{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #0066cc;border-radius:50%;animation:spin 1s linear infinite}.error-message{color:#f44336;margin-bottom:1rem}.user-character-form-container{max-width:800px;margin:0 auto;padding:1rem}.user-character-form-container .character-info-compact{display:flex;flex-direction:column;align-items:center;text-align:center;margin-bottom:1.5rem}.user-character-form-container .character-avatar-small{width:100px;height:100px;border-radius:50%;overflow:hidden;margin-bottom:1rem}.user-character-form-container .character-details-compact h3{margin:.5rem 0;font-size:1.5rem}.user-character-form-container .character-details-compact p{max-width:500px;margin:0 auto}.user-character-form{background-color:#fff;border-radius:8px;padding:2rem;margin-top:1.5rem;box-shadow:0 2px 10px #0000001a}[data-theme=dark] .user-character-form{background-color:#2d2d2d;box-shadow:0 2px 10px #ffffff0d}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}[data-theme=dark] .form-group label{color:#e0e0e0}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;background-color:#fff}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select{background-color:#3d3d3d;border-color:#555;color:#e0e0e0}.form-group input:focus,.form-group select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 2px #06c3}.form-actions{display:flex;justify-content:flex-end;margin-top:2rem}.submit-button{background-color:#06c;color:#fff;border:none;border-radius:4px;padding:.75rem 2rem;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.submit-button:hover{background-color:#05a}.submit-button:disabled{background-color:#ccc;cursor:not-allowed}.suggested-items-container{padding:.75rem 0;border-top:1px solid #e0e0e0}.suggested-items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.suggested-items-title{font-size:.85rem;color:#666}.toggle-suggested-items-button{background:none;border:none;padding:2px 5px;font-size:1rem;cursor:pointer;transition:all .2s ease;color:#666;display:flex;align-items:left;justify-content:center}.toggle-suggested-items-button:hover{color:#333}[data-theme=dark] .toggle-suggested-items-button{background:none;border:none;color:#999}[data-theme=dark] .toggle-suggested-items-button:hover{color:#e0e0e0}.suggested-items{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.suggested-reply-button{border:1px solid #e0e0e0;border-radius:1rem;padding:.5rem 1rem;font-size:.9rem;background-image:linear-gradient(135deg,#0080ff,#05a);color:#fff;cursor:pointer;transition:all .2s}.suggested-reply-button:hover{background-image:linear-gradient(135deg,#06c,#049);border-color:#05a}.suggested-reply-button:disabled{opacity:.6;cursor:not-allowed}.suggested-action-button{border:1px solid #e0e0e0;border-radius:1rem;padding:.5rem 1rem;font-size:.9rem;background-image:linear-gradient(135deg,#9d3bff,#6a0dad);color:#fff;cursor:pointer;transition:all .2s}.suggested-action-button:hover{background-image:linear-gradient(135deg,#8a2be2,#5a0c9d);border-color:#7a1bd2}.suggested-action-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.message{max-width:90%}.character-traits-compact{flex-direction:column}.trait-compact{min-width:100%}.chat-header{padding:.5rem;margin-bottom:10px;gap:.25rem}.chat-header-row{margin-bottom:.25rem}.back-button{padding:.25rem 0;font-size:.9rem}.action-button{padding:.375rem .5rem;font-size:.8rem}.character-info-compact{gap:.25rem}.character-info-header{gap:.75rem}.character-details-compact h2{font-size:1rem}.character-details-compact p{font-size:.85rem;margin-bottom:8px}.character-traits-compact{gap:.5rem}.trait-header-compact{font-size:.75rem;margin-bottom:.2rem}.trait-bar-compact{height:5px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes highlight{0%{background-color:#fff3}50%{background-color:#fff6}to{background-color:#fff3}}@keyframes typing-animation{0%{transform:translateY(0)}50%{transform:translateY(-5px)}to{transform:translateY(0)}}.interaction-page{min-height:100vh;width:100%;position:relative;color:#fff;background-size:cover;background-position:center;background-repeat:no-repeat}.interaction-page.loading,.interaction-page.error{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh}.interaction-header{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;height:60px;background-color:#00000080;color:#fff;z-index:100}.interaction-back-button{background:none;border:none;color:#fff;cursor:pointer;font-size:16px}.interaction-header-actions{display:flex;gap:10px}.interaction-action-button{background:#0000004d;border:1px solid rgba(255,255,255,.3);color:#fff;padding:5px 10px;border-radius:5px;cursor:pointer}.interaction-action-button.active{background:#fff3;border-color:#ffffff80}.interaction-content{display:flex;flex-direction:column;height:calc(100vh - 60px);position:relative;overflow:hidden}.character-portrait{display:flex;justify-content:center;align-items:center;position:relative;height:60vh}.character-portrait img{max-height:100%;max-width:100%;object-fit:contain;position:absolute;bottom:0}.character-name{position:absolute;top:10px;left:50%;transform:translate(-50%);z-index:10;background-color:#0009;padding:5px 15px;border-radius:5px;text-align:center}.character-name h2{margin:0;font-size:1.5rem}.interaction-chat-container{position:absolute;inset:100px 0 120px;padding:10px 20px;display:flex;flex-direction:column;justify-content:flex-end;gap:20px;overflow-y:auto}.interaction-messages{display:flex;flex-direction:column;gap:20px}.interaction-character-message,.interaction-player-message{padding:12px 20px;border-radius:10px;color:#fff;animation:fadeIn .3s ease-in-out;max-width:80%;min-width:40%;opacity:.8}.interaction-character-message-group .interaction-character-message{align-self:flex-start;margin-left:0;background-color:#0009}.interaction-messages>.interaction-player-message{align-self:flex-end;margin-right:20px;background-color:#00640099}.interaction-character-message-group{display:flex;flex-direction:row;align-items:flex-start;margin-bottom:10px}.interaction-message-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;margin-right:10px;flex-shrink:0}.interaction-message-avatar img{width:100%;height:100%;object-fit:cover}.interaction-message-content-wrapper{display:flex;flex-direction:column;max-width:calc(80% - 50px);align-self:flex-start}.interaction-message-content{font-size:16px}.interaction-message-text{font-size:15px;word-break:break-word}.interaction-message-time{font-size:12px;text-align:right;margin-top:5px;opacity:.7}.interaction-message-sender{display:block;text-align:right;margin-bottom:5px;font-weight:700;color:#fff}.interaction-player-action{align-self:flex-end;background-color:#0009;color:#fff;padding:10px 15px;border-radius:5px;margin:0 20px 10px;max-width:70%;font-size:14px;font-style:italic;text-align:right}.interaction-character-action{background-color:#0009;color:#fff;padding:8px 12px;border-radius:5px;margin-bottom:5px;font-size:14px;font-style:italic;animation:fadeIn .5s ease-in-out}.interaction-trait-changes{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.interaction-trait-value{font-size:12px;padding:2px 6px;border-radius:10px;background-color:#ffffff1a}.interaction-trait-change.increase{color:#4caf50}.interaction-trait-change.decrease{color:#f44336}.interaction-trait-name{margin-right:5px;font-weight:700}.interaction-character-typing{align-self:flex-start;background-color:#ffffffb3;border-radius:18px;padding:10px 20px;margin-left:20px;display:flex;gap:5px}.interaction-typing-dot{width:8px;height:8px;background-color:#555;border-radius:50%;animation:typing-animation 1s infinite ease-in-out}.interaction-typing-dot:nth-child(1){animation-delay:0s}.interaction-typing-dot:nth-child(2){animation-delay:.2s}.interaction-typing-dot:nth-child(3){animation-delay:.4s}.interaction-player-input-container{position:absolute;bottom:0;left:0;right:0;padding:10px 20px;background-color:#00000080}.interaction-suggested-items{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px;justify-content:center}.interaction-suggested-reply-button{border:1px solid #e0e0e0;border-radius:1rem;padding:.5rem 1rem;font-size:.9rem;background-image:linear-gradient(135deg,#0080ff,#05a);color:#fff;cursor:pointer;transition:all .2s}.interaction-suggested-reply-button:hover{background-image:linear-gradient(135deg,#06c,#049);border-color:#05a}.interaction-suggested-action-button{border:1px solid #e0e0e0;border-radius:1rem;padding:.5rem 1rem;font-size:.9rem;background-image:linear-gradient(135deg,#9d3bff,#6a0dad);color:#fff;cursor:pointer;transition:all .2s}.interaction-suggested-action-button:hover{background-image:linear-gradient(135deg,#8a2be2,#5a0c9d);border-color:#7a1bd2}.interaction-custom-input{display:flex;gap:10px}.interaction-input-textarea{flex:1;padding:10px;border-radius:5px;border:1px solid #ccc;resize:none;height:40px;background-color:#ffffffe6;color:#333}.interaction-send-button{padding:10px 20px;background-color:#4caf50;color:#fff;border:none;border-radius:5px;cursor:pointer}.interaction-send-button:disabled{background-color:#ccc;cursor:not-allowed}.side-panel{position:absolute;top:60px;right:0;width:300px;height:calc(100vh - 60px);background-color:#ffffffe6;box-shadow:-2px 0 10px #0003;z-index:10;display:flex;flex-direction:column}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:10px;border-bottom:1px solid #ddd}.panel-content{flex:1;overflow:auto;padding:10px}.close-panel{background:none;border:none;font-size:20px;cursor:pointer}.character-info{margin-bottom:20px}.character-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:10px}.character-traits{margin-top:20px}.trait-bar{display:flex;align-items:center;margin-bottom:8px}.trait-label{width:80px;font-size:14px}.trait-progress-container{flex:1;height:8px;background-color:#eee;border-radius:4px;overflow:hidden;margin:0 10px}.trait-progress{height:100%;background-color:#4caf50}@media (max-width: 768px){.interaction-header{padding:5px 10px;height:50px}.character-portrait{height:50vh}.interaction-chat-container{top:80px;bottom:100px;padding:5px 10px}.character-name h2{font-size:1.2rem}.interaction-message-content-wrapper{max-width:calc(90% - 40px)}.interaction-character-message,.interaction-player-message{max-width:90%;padding:10px 15px}.interaction-player-action{max-width:85%;margin:0 10px 5px}.interaction-message-avatar{width:30px;height:30px}.side-panel{width:250px}.interaction-custom-input{flex-direction:column}.interaction-input-textarea{height:60px}}.subscription-page{min-height:100vh;background:var(--bg-primary, #ffffff);padding:1.5rem 0}.subscription-container{max-width:1200px;margin:0 auto;padding:0 1rem}.subscription-header{text-align:center;margin-bottom:2rem}.subscription-title{font-size:2.5rem;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:.5rem;line-height:1.2}.subscription-subtitle{font-size:1.125rem;color:var(--text-secondary, #6b7280);max-width:600px;margin:0 auto;line-height:1.4}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:3rem}.pricing-card{background:var(--bg-secondary, white);border-radius:12px;padding:1.5rem;box-shadow:0 4px 12px #00000014;transition:all .3s ease;position:relative;border:2px solid transparent}.pricing-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px #00000026}.pricing-card.free-card{border-color:#10b981;background:linear-gradient(135deg,#f0fdf4,#ecfdf5)}.pricing-card.free-card .plan-name{color:#059669}.pricing-card.free-card .price{color:#10b981}.pricing-card.free-card .credits-count{color:#059669}.pricing-card.selected{border-color:#4caf50;background:linear-gradient(135deg,#f8f9ff,#e8f5e8)}.pricing-card.disabled{opacity:.6;filter:grayscale(.3);cursor:not-allowed}.pricing-card.disabled:hover{transform:none;box-shadow:0 4px 12px #00000014}.pricing-card.disabled .plan-name,.pricing-card.disabled .price,.pricing-card.disabled .credits-count,.pricing-card.disabled .feature-item,.pricing-card.disabled .feature-icon{color:var(--text-secondary, #6b7280)}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.5rem 1.5rem;border-radius:20px;font-size:.875rem;font-weight:600;box-shadow:0 4px 12px #667eea4d}.pricing-header{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.plan-name{font-size:1.375rem;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:.75rem;line-height:1.2}.price-section{display:flex;align-items:baseline;justify-content:center;margin-bottom:.375rem}.price{font-size:3rem;font-weight:800;color:#667eea}.price-period{font-size:1rem;color:#6b7280;margin-left:.25rem}.credits-info{display:flex;flex-direction:column;align-items:center;margin-bottom:.375rem}.credits-count{font-size:1.375rem;font-weight:700;color:var(--text-primary, #1f2937);line-height:1.2}.credits-label{font-size:.8125rem;color:var(--text-secondary, #6b7280);line-height:1.2}.pricing-card .credits-label{color:#6b7280!important}.pricing-card .price-per-credit{color:#9ca3af!important}.pricing-card .feature-item{color:#374151!important}[data-theme=dark] .pricing-card .credits-label{color:var(--text-secondary)!important}[data-theme=dark] .pricing-card .price-per-credit{color:#9ca3af!important}[data-theme=dark] .pricing-card .feature-item{color:var(--text-secondary)!important}.price-per-credit{font-size:.75rem;color:#9ca3af;font-style:italic}.features-section{margin-bottom:1.5rem}.features-list{list-style:none;padding:0;margin:0}.feature-item{display:flex;align-items:center;margin-bottom:.5rem;font-size:.875rem;color:var(--text-secondary, #374151);line-height:1.3}.feature-icon{width:1.125rem;height:1.125rem;color:#10b981;margin-right:.625rem;flex-shrink:0}.plan-button{width:100%;padding:1rem 2rem;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.5px}.free-button{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#374151}.free-button:hover{background:linear-gradient(135deg,#e5e7eb,#d1d5db);transform:translateY(-2px)}.paid-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 12px #667eea4d}.paid-button:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.plan-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.subscription-footer{background:var(--bg-secondary, white);border-radius:12px;padding:2rem;box-shadow:0 4px 12px #00000014}.credit-info-section{margin-bottom:2rem}.credit-info-section h3{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937);text-align:center;margin-bottom:1.5rem;line-height:1.2}.credit-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:1.5rem}@media (max-width: 768px){.credit-info-grid{grid-template-columns:1fr;gap:1rem}}.credit-info-item{text-align:center;padding:1.25rem;background:var(--bg-primary, #f8fafc);border-radius:8px;border:1px solid var(--border-color, #e2e8f0)}.credit-info-icon{font-size:1.75rem;margin-bottom:.75rem}.credit-info-item h4{font-size:1rem;font-weight:600;color:var(--text-primary, #374151);margin-bottom:.5rem;line-height:1.2}.credit-info-item p{color:var(--text-secondary, #6b7280);line-height:1.4;margin:0;font-size:.875rem}.faq-section h3{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937);text-align:center;margin-bottom:1.5rem;line-height:1.2}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.faq-item h4{font-size:1rem;font-weight:600;color:var(--text-primary, #374151);margin-bottom:.5rem;line-height:1.2}.faq-item p{color:var(--text-secondary, #6b7280);line-height:1.4;margin:0;font-size:.875rem}[data-theme=dark] .subscription-page{background:var(--bg-primary)}[data-theme=dark] .pricing-card{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .pricing-header{border-bottom-color:var(--border-color)}[data-theme=dark] .plan-name,[data-theme=dark] .credits-count{color:var(--text-primary)}[data-theme=dark] .feature-item{color:var(--text-secondary)}[data-theme=dark] .subscription-footer{background:var(--bg-secondary)}[data-theme=dark] .credit-info-section h3{color:var(--text-primary)}[data-theme=dark] .credit-info-item{background:var(--bg-primary);border-color:var(--border-color)}[data-theme=dark] .credit-info-item h4{color:var(--text-primary)}[data-theme=dark] .credit-info-item p{color:var(--text-secondary)}[data-theme=dark] .faq-section h3,[data-theme=dark] .faq-item h4{color:var(--text-primary)}[data-theme=dark] .faq-item p{color:var(--text-secondary)}@media (max-width: 768px){.subscription-title{font-size:2rem}.subscription-subtitle{font-size:1rem}.pricing-grid{grid-template-columns:1fr;gap:1.25rem}.pricing-card.popular{transform:none}.pricing-card.popular:hover{transform:translateY(-8px)}.subscription-footer{padding:1.5rem}.faq-grid{grid-template-columns:1fr;gap:1.25rem}.credit-info-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width: 480px){.subscription-container{padding:0 .5rem}.pricing-card{padding:1.25rem}.price{font-size:2.25rem}.subscription-footer{padding:1.25rem}}.loading-section{text-align:center;padding:40px 20px;color:var(--text-secondary)}.error-section{text-align:center;padding:40px 20px;background-color:var(--error-bg, #fee);border:1px solid var(--error-border, #fcc);border-radius:8px;margin:20px 0}.error-message{color:var(--error-text, #c33);margin-bottom:15px;font-weight:500}.error-section button{background-color:var(--primary-color);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;transition:background-color .2s}.error-section button:hover{background-color:var(--primary-color-dark)}.product-debug-info{font-family:monospace;font-size:12px;line-height:1.4}.product-debug-info h4{margin-top:0;color:var(--text-primary)}.product-debug-info p{margin:5px 0;color:var(--text-secondary)}.payment-modal{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.payment-content{background:#fff;border-radius:12px;padding:30px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 10px 30px #0000004d}.payment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #eee}.payment-header h2{margin:0;color:var(--text-primary);font-size:24px}.close-button{background:none;border:none;font-size:28px;cursor:pointer;color:#999;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-button:hover{background-color:#f5f5f5;color:#666}.product-details{margin-bottom:25px}.product-details h3{margin:0 0 10px;color:var(--text-primary);font-size:20px}.product-description{color:var(--text-secondary);margin-bottom:20px;line-height:1.5}.product-info{background-color:#f8f9fa;padding:20px;border-radius:8px;border:1px solid #e9ecef}.info-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.info-item .value{font-weight:600;color:var(--text-primary);font-size:16px}.paypal-section{margin-top:25px}[data-theme=dark] .payment-content{background:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .payment-header{border-bottom-color:var(--border-color)}[data-theme=dark] .product-info{background-color:var(--bg-primary);border-color:var(--border-color)}[data-theme=dark] .close-button:hover{background-color:var(--bg-primary)}.purchase-result-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1rem}.purchase-result-container{width:100%;max-width:500px}.result-card{background:#fff;border-radius:16px;padding:3rem 2rem;text-align:center;box-shadow:0 20px 40px #0000001a;animation:slideUp .6s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.result-icon{font-size:4rem;margin-bottom:1.5rem;display:block}.success-icon{color:#10b981}.error-icon{color:#ef4444}.cancel-icon{color:#f59e0b}.result-title{font-size:2rem;font-weight:700;margin-bottom:1rem;color:#1f2937}.result-message{font-size:1.1rem;color:#6b7280;margin-bottom:2rem;line-height:1.6}.order-info{background:#f9fafb;border-radius:8px;padding:1rem;margin-bottom:2rem;border-left:4px solid #3b82f6}.order-id{margin:0;font-size:.9rem;color:#374151}.result-actions{display:flex;flex-direction:column;gap:1rem}.primary-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.primary-button:hover{transform:translateY(-2px);box-shadow:0 10px 20px #667eea4d}.secondary-button{background:transparent;color:#6b7280;border:2px solid #e5e7eb;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.secondary-button:hover{border-color:#d1d5db;color:#374151}.loading-section{text-align:center;padding:3rem 2rem;background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a}.loading-spinner{width:40px;height:40px;border:4px solid #f3f4f6;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-section p{color:#6b7280;font-size:1.1rem;margin:0}[data-theme=dark] .result-card{background:#1f2937;color:#f9fafb}[data-theme=dark] .result-title{color:#f9fafb}[data-theme=dark] .result-message{color:#d1d5db}[data-theme=dark] .order-info{background:#374151;border-left-color:#60a5fa}[data-theme=dark] .order-id{color:#e5e7eb}[data-theme=dark] .secondary-button{color:#d1d5db;border-color:#4b5563}[data-theme=dark] .secondary-button:hover{border-color:#6b7280;color:#f9fafb}[data-theme=dark] .loading-section{background:#1f2937}[data-theme=dark] .loading-section p{color:#d1d5db}@media (max-width: 640px){.purchase-result-page{padding:1rem}.result-card{padding:2rem 1.5rem}.result-title{font-size:1.5rem}.result-actions{gap:.75rem}.primary-button,.secondary-button{padding:.875rem 1.5rem;font-size:.9rem}}.profile-page{min-height:100vh;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);padding:2rem 0}.profile-container{max-width:1200px;margin:0 auto;padding:0 2rem}.profile-header{text-align:center;margin-bottom:3rem}.profile-title{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.profile-subtitle{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.profile-content{display:grid;gap:2rem;grid-template-columns:1fr}.profile-card{background:var(--card-bg);border-radius:16px;padding:2rem;box-shadow:0 8px 32px #0000001a;border:1px solid var(--border-color);backdrop-filter:blur(10px)}.card-title{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.user-info-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));align-items:stretch}.info-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color);min-height:60px}.info-item .label{font-weight:500;color:var(--text-secondary)}.info-item .value{font-weight:600;color:var(--text-primary)}.credit-info-section{display:flex;flex-direction:column;gap:2rem}.credit-summary{display:grid;gap:1.5rem;grid-template-columns:1fr 2fr;align-items:center}.total-credits{text-align:center;padding:2rem;background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);border-radius:12px;color:#fff;box-shadow:0 4px 20px #00000026}.credits-number{display:block;font-size:2.5rem;font-weight:700;margin-bottom:.5rem;text-shadow:0 2px 4px rgba(0,0,0,.3)}.credits-label{font-size:1rem;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4);opacity:1}.credit-breakdown{display:flex;flex-direction:column;gap:1rem}.credit-type{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.type-label{font-weight:500;color:var(--text-secondary)}.type-value{font-weight:600;color:var(--text-primary);font-size:1.1rem}.free-credit-section{padding:1.5rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color)}.claimed-info{text-align:center}.claimed-info p{color:var(--text-secondary);margin-bottom:.5rem}.claim-section{text-align:center}.claim-section p{color:var(--text-secondary);margin-bottom:1rem}.claim-button{background:linear-gradient(135deg,var(--primary-color) 0%,var(--secondary-color) 100%);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease;font-size:1rem;text-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 2px 8px #00000026}.claim-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #0000004d;text-shadow:0 1px 3px rgba(0,0,0,.4)}.claim-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #0000001a}.usage-info{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.usage-item{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color)}.usage-icon{font-size:2rem;flex-shrink:0}.usage-content h4{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.usage-content p{color:var(--text-secondary);line-height:1.5}.loading-section,.error-section{text-align:center;padding:3rem;background:var(--card-bg);border-radius:16px;box-shadow:0 8px 32px #0000001a}.error-message{color:var(--error-color);margin-bottom:1rem}.error-section button{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;cursor:pointer;font-weight:600}.credit-details{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1.5rem;padding:1.5rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color)}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--card-bg);border-radius:8px;border:1px solid var(--border-color)}.detail-item .label{font-weight:500;color:var(--text-secondary);font-size:.9rem}.detail-item .value{font-weight:600;color:var(--text-primary);font-size:.9rem}.orders-section{margin-top:1rem}.orders-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}@media (min-width: 1024px){.orders-list{grid-template-columns:repeat(3,1fr)}}.order-item{padding:1.5rem;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.order-item:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001a}.order-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.order-product{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.order-status{padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-completed{background:#10b981;color:#fff}.status-pending{background:#f59e0b;color:#fff}.status-failed{background:#ef4444;color:#fff}.order-details{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem}.order-info{display:flex;flex-direction:column;gap:.5rem}.order-amount{font-size:1.2rem;font-weight:700;color:var(--primary-color)}.order-credits{font-size:1rem;color:var(--text-secondary)}.order-dates{display:flex;flex-direction:column;gap:.25rem;text-align:right}.order-date{font-size:.8rem;color:var(--text-secondary)}.no-orders{text-align:center;padding:3rem;color:var(--text-secondary)}.pagination-container{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding:1rem}.pagination-info{color:var(--text-secondary);font-size:.9rem}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-button{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-primary);padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;transition:all .2s ease}.pagination-button:hover:not(:disabled){background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.page-size-selector{display:flex;align-items:center;gap:.5rem;margin-left:1rem}.page-size-selector select{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-primary);padding:.25rem .5rem;border-radius:4px;font-size:.9rem}@media (max-width: 768px){.profile-container{padding:0 1rem}.profile-title{font-size:2rem}.credit-summary,.user-info-grid,.usage-info{grid-template-columns:1fr}.info-item,.credit-type{flex-direction:column;align-items:flex-start;gap:.5rem}.credit-details{grid-template-columns:1fr}.order-details{flex-direction:column;align-items:flex-start;gap:1rem}.order-dates{text-align:left}.detail-item{flex-direction:column;align-items:flex-start;gap:.5rem}.orders-list{grid-template-columns:1fr}.pagination-container{flex-direction:column;gap:1rem}.pagination-controls{flex-wrap:wrap;justify-content:center}.page-size-selector{margin-left:0;justify-content:center}}[data-theme=dark] .profile-page{background:linear-gradient(135deg,#1a1a2e,#16213e)}[data-theme=dark] .profile-card{background:#ffffff0d;border-color:#ffffff1a}[data-theme=dark] .info-item,[data-theme=dark] .credit-type,[data-theme=dark] .free-credit-section,[data-theme=dark] .usage-item,[data-theme=dark] .credit-details,[data-theme=dark] .order-item,[data-theme=dark] .detail-item{background:#ffffff08;border-color:#ffffff1a}.terms-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.terms-modal-content{background:#fff;border-radius:12px;max-width:800px;max-height:90vh;width:100%;display:flex;flex-direction:column;box-shadow:0 10px 25px #0003}.terms-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 0;border-bottom:1px solid #e5e7eb}.terms-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937}.terms-close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;padding:4px;border-radius:4px;transition:background-color .2s}.terms-close-button:hover{background-color:#f3f4f6;color:#374151}.terms-content{flex:1;overflow-y:auto;padding:24px}.terms-section{margin-bottom:24px}.terms-section:last-child{margin-bottom:0}.terms-section h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0 0 12px}.terms-section p{color:#4b5563;line-height:1.6;margin:0}.terms-footer{padding:24px;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center}.terms-effective-date{color:#6b7280;font-size:.875rem;margin:0}.terms-accept-button{background-color:#3b82f6;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:background-color .2s}.terms-accept-button:hover{background-color:#2563eb}[data-theme=dark] .terms-modal-content{background:#1f2937;color:#f9fafb}[data-theme=dark] .terms-header{border-bottom-color:#374151}[data-theme=dark] .terms-header h2{color:#f9fafb}[data-theme=dark] .terms-close-button{color:#9ca3af}[data-theme=dark] .terms-close-button:hover{background-color:#374151;color:#d1d5db}[data-theme=dark] .terms-section h3{color:#f9fafb}[data-theme=dark] .terms-section p{color:#d1d5db}[data-theme=dark] .terms-footer{border-top-color:#374151}[data-theme=dark] .terms-effective-date{color:#9ca3af}@media (max-width: 768px){.terms-modal-overlay{padding:10px}.terms-modal-content{max-height:95vh}.terms-header,.terms-content,.terms-footer{padding:16px}.terms-footer{flex-direction:column;gap:12px;align-items:stretch}.terms-accept-button{width:100%}}.login-page{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:16px}.login-container{background-color:var(--bg-secondary);border-radius:10px;padding:32px;width:100%;max-width:400px;box-shadow:0 4px 20px #00000014}.login-container h1{margin-bottom:8px;text-align:center;font-size:1.8rem;color:var(--text-primary)}.login-subtitle{margin-bottom:24px;text-align:center;font-size:.95rem;color:var(--text-secondary)}.error-message{background-color:#f443361a;color:var(--error-color);padding:12px;border-radius:4px;margin-bottom:20px;font-size:.9rem;text-align:center}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.form-group input{padding:12px;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-primary);color:var(--text-primary);font-size:1rem;transition:border-color .2s ease}.form-group input:focus{border-color:var(--accent-color);outline:none}.login-button{margin-top:10px;padding:14px;background-color:var(--accent-color);color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s ease}.login-button:hover:not(:disabled){background-color:var(--accent-color);opacity:.9}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-footer{margin-top:24px;text-align:center}.forgot-password{display:block;margin-bottom:16px;color:var(--accent-color);font-size:.9rem;text-decoration:none}.forgot-password:hover{text-decoration:underline}.register-prompt{font-size:.9rem;color:var(--text-secondary)}.register-prompt a{color:var(--accent-color);text-decoration:none;font-weight:500}.register-prompt a:hover{text-decoration:underline}.terms-group,.age-verification-group{margin:8px 0}.terms-checkbox-label,.age-checkbox-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-size:.9rem;line-height:1.4}.terms-checkbox-label input[type=checkbox],.age-checkbox-label input[type=checkbox]{margin:2px 8px 0 0;flex-shrink:0;width:16px;height:16px}.terms-text,.age-text{color:var(--text-secondary);flex:1;display:inline}.terms-link{background:none;border:none;color:var(--accent-color);text-decoration:underline;cursor:pointer;font-size:inherit;padding:0;font-family:inherit;display:inline}.terms-link:hover{color:var(--accent-color);opacity:.8}@media (max-width: 767px){.login-page{min-height:100vh;padding:0;align-items:stretch}.login-container{max-width:none;border-radius:0;box-shadow:none;padding:24px 20px;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.terms-checkbox-label,.age-checkbox-label{align-items:flex-start}.terms-checkbox-label input[type=checkbox],.age-checkbox-label input[type=checkbox]{margin-top:2px}.terms-text,.age-text{flex-direction:column;align-items:flex-start;gap:2px}}@media (min-width: 768px){.login-container{max-width:520px;padding:48px}}@media (min-width: 1200px){.login-container{max-width:580px;padding:56px}}.guestbook-entry{background:#ffffffd9;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:24px;margin-bottom:20px;transition:all .3s ease;box-sizing:border-box;box-shadow:0 4px 20px #00000014}.guestbook-entry:hover{transform:translateY(-3px);box-shadow:0 8px 32px #00000026;background:#fffffff2}.entry-content{margin-bottom:16px}.entry-text{margin:0;line-height:1.6;color:#2c3e50;word-wrap:break-word;font-size:1.05rem}.entry-footer{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.entry-meta{display:flex;align-items:center;gap:12px}.entry-date{color:#7f8c8d;font-weight:500}.entry-private-badge{background:linear-gradient(135deg,#ff9a9e,#fad0c4);color:#8b4513;padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:600;box-shadow:0 2px 6px #fcb69f4d;text-transform:uppercase;letter-spacing:.5px}.entry-actions{display:flex;align-items:center;gap:12px}.like-button{display:flex;align-items:center;gap:8px;background:#ffffffe6;border:2px solid #e8e8e8;border-radius:12px;padding:8px 16px;cursor:pointer;transition:all .3s ease;font-size:.9rem;font-weight:500;box-shadow:0 2px 6px #0000000d}.like-button:hover{background:#fff;border-color:#d0d0d0;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.like-button.liked{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;box-shadow:0 4px 12px #667eea66}.like-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.like-icon{font-size:1.2rem}.like-count{font-weight:600}.owner-actions{position:relative}.action-trigger{background:none;border:none;padding:6px 12px;cursor:pointer;border-radius:8px;color:#7f8c8d;font-size:1.3rem;font-weight:700;transition:all .3s ease}.action-trigger:hover{background:#f5f5f5;color:#2c3e50}.actions-menu{position:absolute;top:100%;right:0;background:#fffffff2;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;box-shadow:0 8px 32px #00000026;z-index:10;min-width:120px;margin-top:8px;overflow:hidden}.actions-menu button{display:block;width:100%;padding:12px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s ease}.actions-menu button:hover{background:#f8f9fa}.actions-menu button.delete-action{color:#e74c3c;font-weight:600}.actions-menu button.delete-action:hover{background:#ffebee;color:#c0392b}@media (max-width: 768px){.guestbook-entry{padding:16px}.entry-footer{flex-direction:column;align-items:flex-start;gap:12px}.entry-actions{align-self:flex-end}}html[data-theme=dark] .guestbook-entry{background:#1e1e1ed9;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 20px #0000004d}html[data-theme=dark] .guestbook-entry:hover{box-shadow:0 8px 32px #0006;background:#1e1e1ef2}html[data-theme=dark] .entry-text{color:#ecf0f1}html[data-theme=dark] .entry-date{color:#bdc3c7}html[data-theme=dark] .entry-private-badge{background:linear-gradient(135deg,#34495e,#2c3e50);color:#ecf0f1}html[data-theme=dark] .like-button{border:1px solid #555;color:#bdc3c7;background:#1e1e1ee6}html[data-theme=dark] .like-button:hover{background:#323232e6;border-color:#666;transform:translateY(-2px)}html[data-theme=dark] .like-button.liked{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;color:#fff;box-shadow:0 4px 12px #667eea66}html[data-theme=dark] .action-trigger{color:#bdc3c7}html[data-theme=dark] .action-trigger:hover{background:#333;color:#ecf0f1}html[data-theme=dark] .actions-menu{background:#282828f2;border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 20px #0006}html[data-theme=dark] .actions-menu button{color:#ecf0f1}html[data-theme=dark] .actions-menu button:hover{background:#333}html[data-theme=dark] .actions-menu button.delete-action{color:#e74c3c}html[data-theme=dark] .actions-menu button.delete-action:hover{background:#2d1b1b;color:#ff6b6b}html[data-theme=light] .like-count{color:#333}.guestbook-form{background:#ffffffe6;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:24px;margin-bottom:24px;box-sizing:border-box;box-shadow:0 8px 32px #0000001a;transition:all .3s ease}.form-header h3{margin:0 0 16px;color:#2c3e50;font-size:1.25rem;font-weight:600;transition:color .3s ease}.form-body,.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.message-textarea{width:100%;padding:16px;border:2px solid #e8e8e8;border-radius:12px;font-family:inherit;font-size:.95rem;line-height:1.6;resize:vertical;min-height:120px;transition:all .3s ease;box-sizing:border-box;background:#ffffffe6}.message-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26;background:#fff;transform:translateY(-1px)}.message-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.character-count{text-align:right;margin-top:4px;font-size:12px;color:#666}.character-count .warning{color:#d32f2f}.checkbox-label{display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:.9rem;transition:color .3s ease}.checkbox-label input[type=checkbox]{margin-top:2px;flex-shrink:0}.form-group .checkbox-label input[type=checkbox]{width:auto}.checkbox-text{color:#333;padding-left:10px}.help-text{margin:0;padding:0 0 0 20px;font-size:12px;color:#666;line-height:1.4}.form-footer{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #f0f0f0}.cancel-button{padding:12px 20px;background:#fffc;border:2px solid #e0e0e0;border-radius:10px;cursor:pointer;font-size:.95rem;color:#666;font-weight:500;transition:all .3s ease}.cancel-button:hover:not(:disabled){background:#fff;border-color:silver;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.submit-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s ease;box-shadow:0 4px 16px #667eea4d}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.submit-button:disabled{background:#e0e0e0;color:#999;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 768px){.guestbook-form{padding:20px;border-radius:12px}.form-footer{flex-direction:column-reverse;gap:8px}.cancel-button,.submit-button{width:100%;padding:12px;border-radius:8px}}html[data-theme=dark] .guestbook-form{background:#1e1e1ed9;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d}html[data-theme=dark] .guestbook-form:hover{background:#1e1e1ef2;box-shadow:0 12px 40px #0006}html[data-theme=dark] .form-header h3{color:#ecf0f1}html[data-theme=dark] .message-textarea{background:#282828e6;border:1px solid #555;color:#ecf0f1}html[data-theme=dark] .message-textarea:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea4d}html[data-theme=dark] .message-textarea:disabled{background:#333;color:#888}html[data-theme=dark] .message-textarea::placeholder{color:#888}html[data-theme=dark] .character-count{color:#bdc3c7}html[data-theme=dark] .character-count .warning{color:#e74c3c}html[data-theme=dark] .checkbox-text{color:#ecf0f1}html[data-theme=dark] .help-text{color:#bdc3c7}html[data-theme=dark] .form-footer{border-top:1px solid #444}html[data-theme=dark] .cancel-button{background:#282828e6;border:1px solid #555;color:#bdc3c7}html[data-theme=dark] .cancel-button:hover:not(:disabled){background:#323232e6;border-color:#666;transform:translateY(-1px)}html[data-theme=dark] .submit-button{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 16px #667eea66}html[data-theme=dark] .submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #667eea80}html[data-theme=dark] .submit-button:disabled{background:#444;color:#666;box-shadow:none}*{box-sizing:border-box}.feedback-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:20px 0;transition:background .3s ease}.feedback-container{max-width:800px;margin:0 auto;padding:0 20px}.feedback-header{text-align:center;margin-bottom:32px;padding:32px 20px;background:#ffffffd9;backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.feedback-header h1{margin:0 0 16px;color:#2c3e50;font-size:2.5rem;font-weight:700;transition:color .3s ease}.feedback-description{color:#34495e;font-size:1.1rem;line-height:1.6;max-width:600px;margin:0 auto;transition:color .3s ease}.error-message{background:#ffebee;border:1px solid #ffcdd2;border-radius:12px;padding:20px;margin-bottom:24px;color:#c62828;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #00000014;transition:all .3s ease}.retry-button{background:linear-gradient(135deg,#ff6b6b,#ee5a52);color:#fff;border:none;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s ease;box-shadow:0 2px 8px #ff6b6b4d}.retry-button:hover{background:linear-gradient(135deg,#ff5252,#d32f2f);transform:translateY(-2px);box-shadow:0 4px 12px #ff6b6b66}.feedback-list{margin-bottom:32px}.loading-message,.empty-message{text-align:center;padding:60px 20px;background:#ffffffd9;backdrop-filter:blur(10px);border-radius:16px;color:#34495e;font-size:1.1rem;box-shadow:0 4px 16px #00000014;transition:all .3s ease}.empty-message{border:2px dashed #e0e0e0;background:#ffffffb3}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin:40px 0;padding:24px;background:#ffffffd9;backdrop-filter:blur(10px);border-radius:16px;box-shadow:0 4px 16px #00000014;transition:all .3s ease}.pagination-button{padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:10px;cursor:pointer;font-size:1rem;font-weight:500;transition:all .3s ease;box-shadow:0 2px 8px #667eea4d}.pagination-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 4px 16px #667eea66}.pagination-button:disabled{background:#e0e0e0;color:#999;cursor:not-allowed;transform:none;box-shadow:none}.pagination-info{color:#34495e;font-size:1rem;font-weight:500}.login-prompt{text-align:center;padding:40px;background:#ffffffd9;backdrop-filter:blur(10px);border-radius:16px;border:2px dashed #e0e0e0;margin-top:40px;box-shadow:0 4px 16px #00000014;transition:all .3s ease}.login-prompt p{margin:0 0 20px;color:#34495e;font-size:1.1rem;line-height:1.6}.login-link{display:inline-block;padding:14px 28px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;text-decoration:none;border-radius:10px;font-weight:500;transition:all .3s ease;box-shadow:0 4px 16px #667eea4d}.login-link:hover{transform:translateY(-3px);box-shadow:0 6px 20px #667eea66}@media (max-width: 768px){.feedback-page{padding:15px 0}.feedback-container{padding:0 16px}.feedback-header{padding:24px 16px;margin-bottom:24px}.feedback-header h1{font-size:2rem}.feedback-description{font-size:1rem}.error-message{flex-direction:column;gap:16px;text-align:center}.pagination{flex-direction:column;gap:16px}.pagination-button{width:100%;padding:14px}}@media (max-width: 480px){.feedback-container{padding:0 12px}.feedback-header{padding:20px 12px}.feedback-header h1{font-size:1.8rem}}html[data-theme=dark] .feedback-page{background:linear-gradient(135deg,#0f0c29,#302b63)}html[data-theme=dark] .feedback-header{background:#1e1e1ed9;box-shadow:0 4px 20px #0000004d;border:1px solid rgba(255,255,255,.1)}html[data-theme=dark] .feedback-header h1{color:#fff}html[data-theme=dark] .feedback-description{color:#b3b3b3}html[data-theme=dark] .error-message{background:#2d1b1b;border:1px solid #5d2f2f;color:#ff6b6b}html[data-theme=dark] .retry-button{background:linear-gradient(135deg,#ff6b6b,#ee5a52)}html[data-theme=dark] .retry-button:hover{background:linear-gradient(135deg,#ff5252,#d32f2f);transform:translateY(-2px)}html[data-theme=dark] .loading-message,html[data-theme=dark] .empty-message{background:#1e1e1ed9;color:#b3b3b3;border:1px solid rgba(255,255,255,.1)}html[data-theme=dark] .empty-message{border:2px dashed #444}html[data-theme=dark] .pagination{background:#1e1e1ed9;border:1px solid rgba(255,255,255,.1)}html[data-theme=dark] .pagination-button{background:linear-gradient(135deg,#667eea,#764ba2)}html[data-theme=dark] .pagination-button:hover:not(:disabled){background:linear-gradient(135deg,#764ba2,#667eea);transform:translateY(-3px)}html[data-theme=dark] .pagination-button:disabled{background:#444;color:#666}html[data-theme=dark] .pagination-info{color:#b3b3b3}html[data-theme=dark] .login-prompt{background:#1e1e1ed9;border:2px dashed #444}html[data-theme=dark] .login-prompt p{color:#b3b3b3}html[data-theme=dark] .login-link{background:linear-gradient(135deg,#667eea,#764ba2)}html[data-theme=dark] .login-link:hover{background:linear-gradient(135deg,#764ba2,#667eea);transform:translateY(-3px)}.language-switcher{position:relative}.language-button{display:flex;align-items:center;gap:6px;background:none;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:6px 10px;color:#fff;font-size:14px;cursor:pointer}.language-flag{font-size:16px}.language-dropdown{position:fixed;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 2px 8px #0003;z-index:9999;min-width:120px;overflow:hidden;color:var(--text-primary)}.language-option{display:flex;align-items:center;gap:6px;width:100%;text-align:left;padding:8px 12px;background:none;border:none;border-bottom:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;transition:background-color .2s ease}.language-option:last-child{border-bottom:none}.language-option:hover{background-color:var(--bg-secondary)}.language-option.active{background-color:rgba(var(--accent-color-rgb),.1);font-weight:500}@media (max-width: 768px){.language-name{display:none}.language-button{padding:6px}}.header{background-color:#001529;border-bottom:1px solid #1a365d;padding:16px 0;position:relative;overflow:hidden}.header-container{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2}.logo-container{display:flex;flex-direction:column;align-items:flex-start;width:fit-content}.logo{font-size:1.5rem;font-weight:700;color:#fff;font-family:Courier New,Courier,monospace;text-decoration:none;display:block;width:100%;text-align:left}.slogan{color:#fffc;font-size:.9rem;font-style:normal;margin-top:2px;letter-spacing:.5px;font-family:Courier New,Courier,monospace;width:100%;text-align:left}.neon-text{color:#fff;font-weight:700;letter-spacing:1px;position:relative;z-index:2}.snowflake{position:absolute;background:#fff;border-radius:50%;pointer-events:none;z-index:1}.main-nav ul{display:flex;list-style:none;gap:24px}.main-nav a{color:#fff;text-decoration:none;font-weight:500;transition:color .2s ease}.main-nav a:hover{color:#4a90e2}.main-nav li.active a{color:#6c5ce7}.header-actions{display:flex;align-items:center;gap:16px}.user-avatar-container{position:relative}.user-avatar{width:40px;height:40px;border-radius:50%;background-color:#6c5ce7;color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;cursor:pointer;border:none;box-shadow:0 2px 10px #0003;transition:transform .2s,box-shadow .2s}.user-avatar:hover{transform:scale(1.05);box-shadow:0 4px 12px #0000004d}.user-dropdown{position:fixed;z-index:9999;min-width:200px;border-radius:4px;box-shadow:0 2px 8px #0003;overflow:hidden;background-color:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.dropdown-header{padding:12px 16px;border-bottom:1px solid var(--border-color)}.favorite-items{padding:8px 16px;border-bottom:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:8px}.dropdown-item{padding:8px 12px;display:block;color:inherit;text-decoration:none;transition:background-color .2s ease;width:100%;text-align:left;background:none;border:none;cursor:pointer;font-size:inherit;font-family:inherit;border-bottom:1px solid var(--border-color)}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:var(--bg-secondary)}.theme-toggle{background:none;border:none;font-size:1.2rem;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#fff}.auth-button{display:inline-block;padding:8px 16px;background-color:var(--accent-color);color:#fff;border-radius:4px;text-decoration:none;font-weight:500;transition:background-color .2s ease}.auth-button:hover{background-color:var(--accent-color);opacity:.9;text-decoration:none}.footer{background-color:var(--bg-secondary);border-top:1px solid var(--border-color);padding:16px 0;text-align:center;color:var(--text-secondary);font-size:.9rem;position:fixed;bottom:0;left:0;width:100%;z-index:10;padding-bottom:calc(16px + env(safe-area-inset-bottom,0px))}.footer-content{display:flex;flex-direction:column;align-items:center;gap:8px}.footer-links{display:flex;gap:16px;margin-bottom:4px}.footer-link{color:var(--text-secondary);text-decoration:none;font-size:.85rem;transition:color .2s ease}.footer-link:hover{color:var(--primary-color);text-decoration:underline}@media (max-width: 768px){.header-container{flex-direction:column;gap:16px}.logo-container{align-items:center;margin:0 auto}.logo,.slogan{text-align:center}.main-nav ul{gap:16px}.header-actions{width:100%;justify-content:space-between}}.app{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding:20px 0;padding-bottom:calc(50px + env(safe-area-inset-bottom,0px))}.page-transition-enter{opacity:0;transform:translateY(10px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.page-transition-exit{opacity:1}.page-transition-exit-active{opacity:0;transition:opacity .3s}:root{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--text-primary: #333333;--text-secondary: #666666;--accent-color: #4a90e2;--primary-color: #6c5ce7;--secondary-color: #4a90e2;--border-color: #e0e0e0;--success-color: #4caf50;--error-color: #f44336;--warning-color: #ff9800;--bg-gradient-start: #f8f9fa;--bg-gradient-end: #e9ecef}[data-theme=dark]{--bg-primary: #121212;--bg-secondary: #1e1e1e;--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--accent-color: #64b5f6;--primary-color: #8b7ff8;--secondary-color: #64b5f6;--border-color: #333333;--success-color: #81c784;--error-color: #e57373;--warning-color: #ffb74d;--bg-gradient-start: #1a1a2e;--bg-gradient-end: #16213e}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}a{color:var(--accent-color);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;border-radius:4px;padding:8px 16px;font-size:14px;font-weight:500;background-color:var(--accent-color);color:#fff;transition:background-color .2s ease}button:hover{opacity:.9}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:border-color .2s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--accent-color)}.container{max-width:1200px;margin:0 auto;padding:0 16px}@media (max-width: 768px){.container{padding:0 12px}}
