.character-detail-page{--hf-lime: #d1fe17;--hf-lime-hover: #b8e515;--hf-lime-15: rgba(209, 254, 23, .15);--hf-lime-30: rgba(209, 254, 23, .3);--accent-color: var(--hf-lime);--accent-color-rgb: 209, 254, 23;--bg-primary: var(--hf-page-primary);--bg-secondary: var(--hf-surface-primary);--bg-card: var(--hf-surface-primary);--text-primary: var(--hf-text-primary)fff;--text-secondary: var(--hf-text-secondary);--border-color: var(--hf-surface-primary);min-height:100vh;background:var(--bg-primary);color:var(--text-primary);padding:20px 0 60px}.character-detail-page .container{max-width:1200px;margin:0 auto;padding:0 20px}.character-detail-page .breadcrumbs{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-secondary);margin-bottom:30px;flex-wrap:wrap}.character-detail-page .breadcrumbs a{color:var(--text-secondary);text-decoration:none;transition:color var(--hf-transition)}.character-detail-page .breadcrumbs a:hover{color:var(--accent-color)}.character-detail-page .breadcrumbs .separator{color:var(--hf-text-disabled)}.character-detail-page .breadcrumbs .current{color:var(--accent-color);font-weight:500}.character-detail-page .character-header{display:grid;grid-template-columns:280px 1fr;gap:40px;margin-bottom:40px;background:var(--bg-secondary);border-radius:20px;padding:30px;border:1px solid var(--border-color)}.character-detail-page .character-image-wrapper{position:relative}.character-detail-page .character-image{width:100%;aspect-ratio:3/4;-o-object-fit:cover;object-fit:cover;border-radius:16px;border:2px solid var(--border-color)}.character-detail-page .character-info h1{font-size:38px;font-weight:700;margin-bottom:8px;background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-color) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.character-detail-page .japanese-name{font-size:18px;color:var(--text-secondary);margin-bottom:16px}.character-detail-page .character-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px}.character-detail-page .meta-item{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--bg-card);border-radius:10px;font-size:14px;color:var(--text-secondary);border:1px solid var(--border-color)}.character-detail-page .meta-icon{font-size:16px}.character-detail-page .character-description{font-size:16px;line-height:1.7;color:var(--text-secondary);margin-bottom:24px}.character-detail-page .header-cta{display:flex;gap:12px;flex-wrap:wrap}.character-detail-page .btn{display:inline-flex;align-items:center;gap:8px;padding:14px 24px;font-size:16px;font-weight:600;border-radius:12px;text-decoration:none;transition:all .3s ease;cursor:pointer;border:none}.character-detail-page .btn-primary{background:var(--accent-color);color:var(--hf-black);font-weight:600;box-shadow:0 4px 20px rgba(var(--accent-color-rgb),.3)}.character-detail-page .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 25px rgba(var(--accent-color-rgb),.4)}.character-detail-page .btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.character-detail-page .btn-secondary:hover{background:var(--hf-surface-secondary);border-color:var(--accent-color)}.character-detail-page .btn-outline{background:transparent;color:var(--accent-color);border:2px solid var(--accent-color);padding:14px 28px}.character-detail-page .btn-outline:hover{background:rgba(var(--accent-color-rgb),.1)}.character-detail-page .tabs-nav{display:flex;gap:8px;margin-bottom:30px;border-bottom:1px solid var(--border-color);padding-bottom:0;overflow-x:auto}.character-detail-page .tab{padding:14px 24px;background:transparent;border:none;color:var(--text-secondary);font-size:16px;font-weight:500;cursor:pointer;position:relative;transition:all var(--hf-transition);white-space:nowrap}.character-detail-page .tab:hover{color:var(--text-primary)}.character-detail-page .tab.active{color:var(--accent-color)}.character-detail-page .tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--accent-color);border-radius:3px 3px 0 0}.character-detail-page .tab-content{margin-bottom:50px}.character-detail-page .tab-description{font-size:16px;color:var(--text-secondary);margin-bottom:24px}.character-detail-page .info-section{margin-bottom:40px}.character-detail-page .info-section h2{font-size:24px;color:var(--text-primary);margin-bottom:16px;display:flex;align-items:center;gap:10px}.character-detail-page .info-section p{font-size:16px;line-height:1.7;color:var(--text-secondary)}.character-detail-page .abilities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.character-detail-page .ability-card{display:flex;align-items:center;gap:10px;padding:14px 18px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;transition:all var(--hf-transition)}.character-detail-page .ability-card:hover{border-color:var(--accent-color);background:rgba(var(--accent-color-rgb),.1)}.character-detail-page .ability-icon{font-size:20px}.character-detail-page .ability-name{font-size:14px;font-weight:500;color:var(--text-primary)}.character-detail-page .affiliations-list{display:flex;flex-wrap:wrap;gap:10px}.character-detail-page .affiliation-tag{padding:8px 16px;background:rgba(var(--accent-color-rgb),.15);color:var(--accent-color);border-radius:20px;font-size:14px;font-weight:500;border:1px solid rgba(var(--accent-color-rgb),.3)}.character-detail-page .va-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}.character-detail-page .va-card{display:flex;align-items:center;gap:16px;padding:16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px}.character-detail-page .va-image{width:60px;height:60px;border-radius:50%;overflow:hidden;flex-shrink:0}.character-detail-page .va-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.character-detail-page .va-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);font-size:24px}.character-detail-page .va-info{display:flex;flex-direction:column;gap:4px}.character-detail-page .va-name{font-size:16px;font-weight:600;color:var(--text-primary)}.character-detail-page .va-language{font-size:14px;color:var(--text-secondary)}.character-detail-page .related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.character-detail-page .related-card{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;text-decoration:none;transition:all var(--hf-transition-slow)}.character-detail-page .related-card:hover{transform:translateY(-4px);border-color:var(--accent-color);box-shadow:0 10px 25px #0000004d}.character-detail-page .related-card img{width:100%;aspect-ratio:3/4;-o-object-fit:cover;object-fit:cover}.character-detail-page .related-info{padding:14px;display:flex;flex-direction:column;gap:4px}.character-detail-page .related-name{font-size:14px;font-weight:600;color:var(--text-primary)}.character-detail-page .related-relationship{font-size:13px;color:var(--accent-color)}.character-detail-page .anime-tab h2{font-size:24px;margin-bottom:12px}.character-detail-page .anime-appearances-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:20px}.character-detail-page .anime-appearance-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;transition:all var(--hf-transition-slow)}.character-detail-page .anime-appearance-card:hover{transform:translateY(-4px);border-color:var(--accent-color)}.character-detail-page .anime-link{text-decoration:none;color:inherit}.character-detail-page .anime-cover{position:relative;aspect-ratio:16/10;overflow:hidden}.character-detail-page .anime-cover img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s}.character-detail-page .anime-appearance-card:hover .anime-cover img{transform:scale(1.05)}.character-detail-page .anime-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s}.character-detail-page .anime-appearance-card:hover .anime-overlay{opacity:1}.character-detail-page .watch-btn{background:var(--accent-color);color:var(--hf-text-primary);padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px}.character-detail-page .role-badge{position:absolute;top:10px;right:10px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-transform:capitalize}.character-detail-page .role-badge.main{background:rgba(var(--accent-color-rgb),.9);color:var(--hf-text-primary)}.character-detail-page .role-badge.supporting{background:#3b82f6e6;color:var(--hf-text-primary)}.character-detail-page .role-badge.antagonist{background:#ef4444e6;color:var(--hf-text-primary)}.character-detail-page .anime-info{padding:14px}.character-detail-page .anime-info h3{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.character-detail-page .anime-info p{font-size:13px;color:var(--text-secondary)}.character-detail-page .quotes-tab h2{font-size:24px;margin-bottom:12px}.character-detail-page .quotes-list{display:flex;flex-direction:column;gap:16px}.character-detail-page .quote-card{background:var(--bg-card);border:1px solid var(--border-color);border-left:4px solid var(--accent-color);border-radius:0 12px 12px 0;padding:24px;margin:0}.character-detail-page .quote-card p{font-size:18px;font-style:italic;color:var(--text-primary);line-height:1.6;margin-bottom:12px}.character-detail-page .quote-card cite{font-size:14px;color:var(--accent-color);font-style:normal;font-weight:500}.character-detail-page .watch-cta-section{background:linear-gradient(135deg,rgba(var(--accent-color-rgb),.2),rgba(var(--accent-color-rgb),.05));border:1px solid rgba(var(--accent-color-rgb),.3);border-radius:20px;padding:50px 40px;margin-bottom:40px;text-align:center}.character-detail-page .watch-cta-section .cta-content h2{font-size:28px;margin-bottom:12px}.character-detail-page .watch-cta-section .cta-content p{font-size:16px;color:var(--text-secondary);max-width:600px;margin:0 auto 24px;line-height:1.6}.character-detail-page .cta-buttons{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.character-detail-page .faq-section{margin-bottom:40px}.character-detail-page .faq-section h2{font-size:24px;margin-bottom:20px}.character-detail-page .faq-list{display:flex;flex-direction:column;gap:12px}.character-detail-page .faq-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.character-detail-page .faq-item summary{padding:18px 24px;font-size:16px;font-weight:600;color:var(--text-primary);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;transition:all var(--hf-transition)}.character-detail-page .faq-item summary::-webkit-details-marker{display:none}.character-detail-page .faq-item summary:after{content:"+";font-size:20px;color:var(--accent-color);transition:transform .3s}.character-detail-page .faq-item[open] summary:after{transform:rotate(45deg)}.character-detail-page .faq-item summary:hover{background:rgba(var(--accent-color-rgb),.05)}.character-detail-page .faq-item p{padding:0 24px 18px;font-size:15px;color:var(--text-secondary);line-height:1.7;margin:0}.character-detail-page .browse-more{text-align:center}.character-detail-page .browse-more h2{font-size:24px;margin-bottom:20px}.character-detail-page .loading-skeleton{padding:40px 0}.character-detail-page .skeleton-header{display:grid;grid-template-columns:280px 1fr;gap:40px;background:var(--bg-secondary);border-radius:20px;padding:30px}.character-detail-page .skeleton-image{aspect-ratio:3/4;border-radius:16px;background:var(--bg-card)}.character-detail-page .skeleton-info{display:flex;flex-direction:column;gap:16px}.character-detail-page .skeleton-title{height:40px;width:60%;border-radius:8px;background:var(--bg-card)}.character-detail-page .skeleton-subtitle{height:24px;width:40%;border-radius:6px;background:var(--bg-card)}.character-detail-page .skeleton-text{height:16px;width:100%;border-radius:4px;background:var(--bg-card)}.character-detail-page .shimmer{background:linear-gradient(90deg,var(--bg-card) 0%,var(--hf-surface-secondary) 50%,var(--bg-card) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.character-detail-page .error-state{text-align:center;padding:100px 20px}.character-detail-page .error-state h1{font-size:36px;color:var(--text-primary);margin-bottom:16px}.character-detail-page .error-state p{color:var(--text-secondary);font-size:18px;margin-bottom:30px}.character-detail-page .back-link{display:inline-block;padding:14px 28px;background:var(--accent-color);color:var(--hf-text-primary);text-decoration:none;border-radius:12px;font-weight:600;transition:all var(--hf-transition-slow)}.character-detail-page .back-link:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(var(--accent-color-rgb),.3)}@media (max-width: 900px){.character-detail-page .character-header{grid-template-columns:200px 1fr;gap:30px;padding:24px}.character-detail-page .character-info h1{font-size:30px}.character-detail-page .skeleton-header{grid-template-columns:200px 1fr;gap:30px}}@media (max-width: 768px){.character-detail-page{padding:16px 0 40px}.character-detail-page .character-header{grid-template-columns:1fr;text-align:center}.character-detail-page .character-image-wrapper{max-width:200px;margin:0 auto}.character-detail-page .character-info h1{font-size:28px}.character-detail-page .character-meta,.character-detail-page .header-cta{justify-content:center}.character-detail-page .skeleton-header{grid-template-columns:1fr}.character-detail-page .skeleton-image{max-width:200px;margin:0 auto}.character-detail-page .abilities-grid,.character-detail-page .va-grid,.character-detail-page .related-grid,.character-detail-page .anime-appearances-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.character-detail-page .watch-cta-section{padding:30px 20px}.character-detail-page .watch-cta-section .cta-content h2{font-size:22px}.character-detail-page .quote-card p{font-size:16px}}@media (max-width: 480px){.character-detail-page .character-info h1{font-size:24px}.character-detail-page .tabs-nav{gap:0}.character-detail-page .tab{padding:12px 16px;font-size:14px}.character-detail-page .header-cta{flex-direction:column}.character-detail-page .btn{width:100%;justify-content:center}.character-detail-page .cta-buttons{flex-direction:column}.character-detail-page .abilities-grid,.character-detail-page .va-grid{grid-template-columns:1fr}.character-detail-page .related-grid,.character-detail-page .anime-appearances-grid{grid-template-columns:repeat(2,1fr);gap:10px}.character-detail-page .info-section h2{font-size:20px}.character-detail-page .faq-item summary{padding:14px 16px;font-size:14px}.character-detail-page .faq-item p{padding:0 16px 14px;font-size:14px}}.section-header-lime,h2.section-title{display:flex;align-items:center;gap:12px;font-size:22px;margin:0 0 20px}.section-header-lime:before,h2.section-title:before{content:"";width:4px;height:26px;background:var(--hf-lime);border-radius:2px;flex-shrink:0}.character-detail-page .biography-section p+p{margin-top:.75rem}.character-detail-page .table-scroll{overflow-x:auto}.character-detail-page .va-table{width:100%;border-collapse:collapse;font-size:.95rem}.character-detail-page .va-table th,.character-detail-page .va-table td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid rgba(255,255,255,.1)}.character-detail-page .va-table th{font-weight:600;color:#ffffffb3}.character-detail-page .va-cell{display:inline-flex;align-items:center;gap:.6rem}.character-detail-page .va-thumb{width:40px;height:40px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.character-detail-page .appearances-list,.character-detail-page .related-characters{list-style:none;padding:0;margin:0;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.character-detail-page .appearances-list li,.character-detail-page .related-characters li{padding:.5rem .75rem;border-radius:8px;background:#ffffff0d}.character-detail-page .info-section a{color:var(--hf-lime, #c8f542);text-decoration:none}.character-detail-page .info-section a:hover{text-decoration:underline}.character-detail-page .related-role{color:#ffffff8c;font-size:.85rem;text-transform:capitalize}
