:root{--npc-gradient-purple:#7b1a9b;--npc-gradient-pink:#ff6b9d;--npc-gradient-cyan:#00d4ff;--npc-gradient-green:#00ff87;--npc-card-bg:rgba(255, 255, 255, 0.98);--npc-card-shadow:0 8px 32px rgba(0, 0, 0, 0.12);--npc-card-shadow-hover:0 16px 48px rgba(123, 26, 155, 0.2);--npc-card-border-radius:1rem;--npc-transition-fast:0.2s;--npc-transition-medium:0.3s;--npc-space-sm:1rem;--npc-space-md:1.5rem;--npc-space-lg:2rem;--npc-space-xl:3rem}.npc-hero{position:relative;padding:var(--npc-space-xl) 0;margin:0 calc(50% - 50vw) var(--npc-space-lg);background:linear-gradient(135deg,var(--npc-gradient-purple),#a340c4,var(--npc-gradient-pink));overflow:hidden;text-align:center}.npc-hero::before{content:'';position:absolute;inset:0;background:url('../images/Website_background.webp') center/cover;opacity:.08;pointer-events:none}.npc-hero::after{content:'';position:absolute;bottom:-50px;left:50%;transform:translateX(-50%);width:120%;height:100px;background:#f5f5f5;border-radius:50% 50% 0 0}.npc-hero-content{position:relative;z-index:1;text-align:center;max-width:95rem;margin:0 auto;padding:0 2rem}.npc-hero-title{color:#fff;text-shadow:2px 2px 8px rgba(0,0,0,.3),0 0 40px rgba(123,26,155,.5);margin-bottom:var(--npc-space-md);font-size:2.5rem}.npc-hero-title .outdated-tag{font-size:1rem;background:rgba(255,255,255,.2);padding:.25rem .75rem;border-radius:.5rem;margin-left:.5rem;vertical-align:middle}.npc-avatar{width:180px;height:180px;border-radius:.75rem;border:4px solid rgba(255,255,255,.9);box-shadow:0 8px 32px rgba(0,0,0,.3);margin:var(--npc-space-md) auto;display:block;object-fit:cover;transition:transform var(--npc-transition-medium) ease,box-shadow var(--npc-transition-medium) ease}.npc-avatar:hover{transform:scale(1.05);box-shadow:0 12px 40px rgba(0,0,0,.4)}.npc-animate-fade-in{animation:npcFadeIn .8s ease forwards}@keyframes npcFadeIn{from{opacity:0}to{opacity:1}}.voice-actor-card{background:var(--npc-card-bg);border-radius:var(--npc-card-border-radius);padding:var(--npc-space-lg);box-shadow:var(--npc-card-shadow);margin-bottom:var(--npc-space-lg);text-align:center;position:relative;overflow:hidden;transition:transform var(--npc-transition-medium) ease,box-shadow var(--npc-transition-medium) ease}.voice-actor-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--npc-gradient-purple),var(--npc-gradient-cyan));transform:scaleX(0);transform-origin:left;transition:transform var(--npc-transition-medium) ease}.voice-actor-card:hover{transform:translateY(-4px);box-shadow:var(--npc-card-shadow-hover)}.voice-actor-card:hover::before{transform:scaleX(1)}.voice-actor-card h3{margin:0 0 var(--npc-space-md);color:#555;font-weight:400;font-size:1.1rem}.voice-actor-link{display:inline-flex;flex-direction:column;align-items:center;text-decoration:none;color:inherit;transition:transform var(--npc-transition-fast) ease}.voice-actor-link:hover{transform:scale(1.02)}.voice-actor-info{display:inline-flex;flex-direction:column;align-items:center}.voice-actor-avatar{width:120px;height:120px;border-radius:50%;border:3px solid var(--npc-gradient-purple);box-shadow:0 4px 20px rgba(123,26,155,.2);margin-bottom:var(--npc-space-sm);transition:border-color var(--npc-transition-fast) ease,box-shadow var(--npc-transition-fast) ease}.voice-actor-link:hover .voice-actor-avatar{border-color:var(--npc-gradient-pink);box-shadow:0 6px 25px rgba(123,26,155,.3)}.voice-actor-name{font-size:1.25rem;font-weight:700;color:var(--npc-gradient-purple);transition:color var(--npc-transition-fast) ease}.voice-actor-link:hover .voice-actor-name{color:var(--npc-gradient-pink)}.voice-actor-name.unassigned{color:#999;font-style:italic}.admin-controls{margin-top:var(--npc-space-md);padding-top:var(--npc-space-md);border-top:1px solid #eee;display:flex;flex-wrap:wrap;gap:var(--npc-space-sm);justify-content:center}#change-actor-btn{background:linear-gradient(135deg,#ffd751,#ff9500);color:#333;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:700;cursor:pointer;transition:transform var(--npc-transition-fast) ease,box-shadow var(--npc-transition-fast) ease}#change-actor-btn:focus-visible,#change-actor-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(255,149,0,.4)}#change-actor-btn:focus-visible{outline:2px solid var(--npc-gradient-purple);outline-offset:2px}#archive-btn{background:linear-gradient(135deg,#888,#666);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-weight:700;cursor:pointer;transition:transform var(--npc-transition-fast) ease,box-shadow var(--npc-transition-fast) ease,background var(--npc-transition-fast) ease}#archive-btn:focus-visible,#archive-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(197,16,16,.4);background:linear-gradient(135deg,#c53030,#9b2c2c)}#archive-btn:focus-visible{outline:2px solid var(--npc-gradient-purple);outline-offset:2px}#voice-actor-form{display:none;margin-top:var(--npc-space-md);padding:var(--npc-space-md);background:#f9f9f9;border-radius:.5rem;width:100%}#voice-actor-form select{padding:.5rem 1rem;border-radius:.5rem;border:2px solid #ddd;font-size:1rem;margin-right:var(--npc-space-sm);transition:border-color var(--npc-transition-fast) ease}#voice-actor-form select:focus-visible{border-color:var(--npc-gradient-purple);outline:2px solid var(--npc-gradient-purple);outline-offset:2px}#va-confirm-change{background:linear-gradient(135deg,var(--npc-gradient-green),#00cc6a);color:#333;border:none;padding:.5rem 1rem;border-radius:.5rem;font-weight:700;cursor:pointer;transition:transform var(--npc-transition-fast) ease,box-shadow var(--npc-transition-fast) ease}#va-confirm-change:focus-visible,#va-confirm-change:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,255,135,.4)}#va-confirm-change:focus-visible{outline:2px solid var(--npc-gradient-purple);outline-offset:2px}.upload-drop-zone-card{background:var(--npc-card-bg);border-radius:var(--npc-card-border-radius);padding:var(--npc-space-lg);box-shadow:var(--npc-card-shadow);margin-bottom:var(--npc-space-lg);text-align:center}.upload-drop-zone{border:2px dashed #ccc;border-radius:.75rem;padding:var(--npc-space-xl) var(--npc-space-lg);cursor:pointer;transition:border-color var(--npc-transition-fast) ease,background var(--npc-transition-fast) ease}.upload-drop-zone.drag-over,.upload-drop-zone:hover{border-color:var(--npc-gradient-purple);background:rgba(123,26,155,.05)}.upload-drop-zone:focus-visible{outline:2px solid var(--npc-gradient-purple);outline-offset:2px}.upload-drop-zone.uploading{opacity:.6;pointer-events:none}.upload-drop-text{font-size:1.2rem;font-weight:700;color:#666;margin:0 0 .25rem}.upload-drop-subtext{font-size:.9rem;color:#999;margin:0}.upload-info{margin-top:var(--npc-space-sm);text-align:left;font-size:.9rem;color:#555}.upload-info summary{cursor:pointer;color:var(--npc-gradient-purple);font-weight:700}.upload-info ul{margin:.5rem 0 0;padding-left:1.25rem}.upload-info li{margin-bottom:.35rem}.upload-info code{background:#f0f0f0;padding:.1rem .4rem;border-radius:.25rem;font-size:.85em}.upload-status{margin-top:var(--npc-space-sm);text-align:left}.upload-progress{color:var(--npc-gradient-purple);font-weight:700}.upload-result-success p{color:#2e7d32;margin:.25rem 0}.upload-result-error p{color:#c62828;margin:.25rem 0}.back-btn-container{text-align:center;margin-top:var(--npc-space-lg)}.back-btn-container .backbtn{background:linear-gradient(135deg,#f5f5f5,#e0e0e0);color:#333;border:2px solid #ccc;padding:.75rem 2rem;border-radius:.5rem;font-weight:700;cursor:pointer;transition:background var(--npc-transition-fast) ease,transform var(--npc-transition-fast) ease,box-shadow var(--npc-transition-fast) ease}.back-btn-container .backbtn:focus-visible,.back-btn-container .backbtn:hover{background:linear-gradient(135deg,#e0e0e0,#bdbdbd);transform:translateY(-2px);box-shadow:0 4px 15px rgba(0,0,0,.15)}.back-btn-container .backbtn:focus-visible{outline:2px solid var(--npc-gradient-purple);outline-offset:2px}@keyframes npcFadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.npc-animate-on-scroll{opacity:1}.npc-animate-on-scroll.animate-ready{opacity:0;transform:translateY(30px)}.npc-animate-on-scroll.is-visible{animation:npcFadeInUp .6s ease forwards}@media (max-width:62.5rem){.npc-hero{padding:var(--npc-space-lg) var(--npc-space-sm)}.npc-hero-title{font-size:2rem}.npc-avatar{width:150px;height:150px}}@media (max-width:40rem){.npc-hero{margin:0 calc(-1 * var(--container-padding)) var(--npc-space-md);padding:var(--npc-space-md) var(--npc-space-sm)}.npc-hero-title{font-size:1.5rem}.npc-hero-title .outdated-tag{display:block;margin:.5rem auto 0}.npc-avatar{width:120px;height:120px}.voice-actor-card{padding:var(--npc-space-md)}.voice-actor-avatar{width:100px;height:100px}.admin-controls{flex-direction:column}#archive-btn,#change-actor-btn{width:100%}}@media (prefers-reduced-motion:reduce){.npc-animate-on-scroll,.npc-animate-on-scroll.animate-ready{opacity:1;transform:none}.npc-animate-on-scroll.is-visible{animation:none;opacity:1}.npc-animate-fade-in{animation:none;opacity:1}#archive-btn,#change-actor-btn,#va-confirm-change,.back-btn-container .backbtn,.npc-avatar,.upload-drop-zone,.voice-actor-avatar,.voice-actor-card,.voice-actor-link{transition:none}}#overwrite-checkbox{height:1.25rem;width:1.25rem}.add-more-recordings-button{display:none}.upload-form-overwrite{display:flex;flex-direction:column;width:100%;justify-content:flex-start;align-items:flex-start;gap:.2rem;margin:2rem 0}.upload-form-overwrite>span{color:red}