:root{--primary:#6366f1;--primary-hover:#4f46e5;--secondary:#ec4899;--bg-gradient:linear-gradient(135deg, #0f172a 0%, #1e1b4b 100%);--glass-bg:#1e293bb3;--glass-border:#ffffff1a;--text-main:#f8fafc;--text-muted:#94a3b8;--card-shadow:0 8px 32px 0 #0000005e}*{box-sizing:border-box;margin:0;padding:0;font-family:Outfit,sans-serif}body{background:var(--bg-gradient);color:var(--text-main);background-attachment:fixed;min-height:100vh;padding:2rem}#app{max-width:1200px;margin:0 auto}header{z-index:100;justify-content:space-between;align-items:center;margin-bottom:3rem;display:flex;position:relative}.logo{align-items:center;gap:1rem;display:flex}.logo h1{background:linear-gradient(90deg,#818cf8,#f472b6);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem;font-weight:800}.icon{font-size:2.5rem}nav{z-index:50;gap:1rem;display:flex;position:relative}.primary-btn,.secondary-btn,.submit-btn{cursor:pointer;border:none;border-radius:12px;padding:.75rem 1.5rem;font-weight:600;transition:all .3s}.primary-btn{background:var(--primary);color:#fff;touch-action:manipulation}.primary-btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 4px 12px #6366f166}.secondary-btn{border:1px solid var(--glass-border);color:#fff;background:0 0}.secondary-btn:hover{background:#ffffff0d}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--card-shadow);border-radius:24px;padding:2rem}.scanner-container{max-width:600px;margin:0 auto 3rem;position:relative;overflow:hidden}#reader{border-radius:16px;width:100%;overflow:hidden}.close-btn{color:#fff;cursor:pointer;z-index:10;background:0 0;border:none;font-size:2rem;position:absolute;top:1rem;right:1rem}.tabs{border-bottom:1px solid var(--glass-border);gap:1rem;margin-bottom:2rem;padding-bottom:1rem;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:.5rem 1rem;font-size:1.1rem;font-weight:600;transition:all .3s;position:relative}.tab-btn.active{color:var(--text-main)}.tab-btn.active:after{content:"";background:var(--primary);border-radius:3px 3px 0 0;width:100%;height:3px;position:absolute;bottom:-1rem;left:0}.book-grid{grid-template-columns:repeat(4,1fr);gap:2rem;display:grid}.hidden{display:none!important}.book-card{flex-direction:column;gap:1rem;transition:transform .3s;animation:.5s ease-out fadeIn;display:flex}.book-card:hover{transform:translateY(-10px)}.book-cover{aspect-ratio:2/3;object-fit:cover;border-radius:16px;width:100%;box-shadow:0 4px 20px #00000080}.book-info h3{margin-bottom:.25rem;font-size:1.25rem}.book-info p{color:var(--text-muted);font-size:.9rem}.book-actions{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.page-count{color:var(--text-muted);font-size:.85rem;font-weight:500}.btn-group{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.action-btn{border:1px solid var(--glass-border);color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff0d;border-radius:8px;padding:.4rem .8rem;font-size:.75rem;transition:all .2s}.action-btn:hover{border-color:var(--primary);background:#ffffff1a}.delete-btn{color:#ef4444;border-color:#ef44444d}.delete-btn:hover{background:#ef44441a!important;border-color:#ef4444!important}.modal{z-index:100;background:#000c;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal-content{width:100%;max-width:500px;position:relative}.close-modal{cursor:pointer;font-size:1.5rem;position:absolute;top:1.5rem;right:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-muted);margin-bottom:.5rem;font-size:.9rem;display:block}.form-group input,.form-group select{border:1px solid var(--glass-border);color:#fff;background:#ffffff08;border-radius:12px;width:100%;padding:.85rem;font-size:1rem;transition:all .3s}.form-group input:focus,.form-group select:focus{border-color:var(--primary);background:#ffffff14;outline:none;box-shadow:0 0 0 4px #6366f11a}.submit-btn{background:var(--primary);width:100%;margin-top:1.5rem;padding:1rem;font-size:1.1rem}#reader__camera_selection,#reader__dashboard_section_csr span{display:none!important}.auth-toggle{text-align:center;color:var(--text-muted);margin-top:1rem;font-size:.9rem}.auth-toggle a{color:var(--primary);font-weight:600;text-decoration:none}#logout-btn{color:#ef4444;background:#ef44441a}#logout-btn:hover{background:#ef444433}.toast{color:#fff;z-index:1000;background:#10b981;border-radius:12px;padding:1rem 2rem;animation:.3s ease-out slideIn;position:fixed;bottom:2rem;right:2rem;box-shadow:0 4px 12px #0003}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}@media (width<=768px){body{padding:1rem}header{text-align:center;flex-direction:column;gap:1.5rem;margin-bottom:2rem}nav{justify-content:center;gap:.5rem;width:100%}.primary-btn,.secondary-btn{flex:1;padding:.75rem 1rem;font-size:.9rem}.tab-btn{padding:.5rem;font-size:.9rem}.book-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.logo h1{font-size:1.5rem}.icon{font-size:2rem}.glass-card{padding:1.5rem}.modal-content{max-width:90%}}@media (hover:none){.action-btn{min-width:60px;padding:.75rem .5rem}}
