@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";:root{--bg-color: #050505;--card-bg: rgba(20, 20, 20, .7);--accent: #5d5dff;--accent-glow: rgba(93, 93, 255, .3);--text-primary: #ffffff;--text-secondary: #a0a0a0;--border-color: rgba(255, 255, 255, .1);--success: #10b981;--error: #ef4444;--glass: rgba(255, 255, 255, .03)}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,sans-serif}body{background-color:var(--bg-color);color:var(--text-primary);min-height:100vh;display:flex;flex-direction:column;align-items:center;overflow-x:hidden;background-image:radial-gradient(circle at 20% 20%,rgba(93,93,255,.05) 0%,transparent 40%),radial-gradient(circle at 80% 80%,rgba(168,85,247,.05) 0%,transparent 40%)}#app{width:100%;max-width:900px;padding:2rem;display:flex;flex-direction:column;gap:2rem}header{text-align:center;margin-bottom:2rem;animation:fadeInDown .8s ease-out}h1{font-size:2.5rem;font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,#fff,#a0a0a0);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.5rem}.subtitle{color:var(--text-secondary);font-size:1.1rem}.glass-panel{background:var(--card-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:24px;padding:2.5rem;box-shadow:0 20px 40px #0006;transition:transform .3s ease,box-shadow .3s ease;width:100%;box-sizing:border-box}.upload-section{width:100%}.upload-container{display:block;width:100%;border:2px dashed var(--border-color);border-radius:20px;padding:4rem 2rem;text-align:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-sizing:border-box}.upload-container:hover{border-color:var(--accent);background:var(--glass);box-shadow:0 0 30px var(--accent-glow)}.upload-icon{font-size:3rem;color:var(--accent);margin-bottom:1.5rem}.upload-hint{color:var(--text-secondary);font-size:.9rem;margin-top:1rem}#file-input{display:none}.status-section{display:none;flex-direction:column;gap:1.5rem}.progress-bar-container{width:100%;height:6px;background:var(--border-color);border-radius:3px;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),#a855f7);width:0%;transition:width .4s ease}.status-text{font-size:.95rem;color:var(--text-secondary);display:flex;justify-content:space-between}.result-section{display:none;flex-direction:column;gap:1.5rem;animation:fadeInUp .5s ease-out}.result-header{display:flex;justify-content:space-between;align-items:center}.badge{background:var(--glass);color:var(--accent);padding:4px 12px;border-radius:100px;font-size:.75rem;font-weight:600;border:1px solid var(--accent)}.summary-content{line-height:1.7;color:var(--text-primary);font-size:1.05rem;white-space:normal}.summary-content strong{color:var(--accent);font-weight:600}.summary-content p{margin-bottom:1rem}.summary-content ul,.summary-content ol{margin-left:1.5rem;margin-bottom:1rem}.summary-content li{margin-bottom:.5rem}.titles-list{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1rem}.title-item{background:var(--glass);padding:1rem;border-radius:12px;border:1px solid var(--border-color);font-weight:500;transition:all .2s ease}.title-item:hover{background:#ffffff14;border-color:var(--accent)}.btn{background:var(--accent);color:#fff;border:none;padding:.8rem 1.5rem;border-radius:12px;font-weight:600;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem;justify-content:center}.btn:hover{filter:brightness(1.1);transform:translateY(-2px);box-shadow:0 8px 15px #5d5dff4d}.btn-secondary{background:var(--glass);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background:#ffffff1a}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.stats-footer{margin-top:auto;padding:2rem;color:var(--text-secondary);font-size:.85rem;text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.loader{width:24px;height:24px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:640px){#app{padding:1rem}.glass-panel{padding:1.5rem}h1{font-size:1.8rem}}
