.homepage{min-height:100vh;background:linear-gradient(135deg,#1e3c72,#2a5298)}.hero{padding:120px 20px 80px;text-align:center;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 30% 40%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.05) 0%,transparent 50%);pointer-events:none}.hero-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.hero-title{font-size:3.5rem;font-weight:700;color:#fff;margin-bottom:24px;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,.3)}.hero-subtitle{font-size:1.25rem;color:#ffffffd9;margin-bottom:40px;line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto}.hero-actions{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.btn-hero{padding:16px 32px;border-radius:12px;text-decoration:none;font-weight:600;font-size:16px;transition:all .3s ease;display:inline-block;text-transform:uppercase;letter-spacing:.5px}.btn-hero.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-hero.primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea99}.btn-hero.secondary{background:#ffffff1a;color:#fff;border:2px solid rgba(255,255,255,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-hero.secondary:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px)}.features{padding:80px 20px 120px;background:#0000001a;position:relative}.features-content{max-width:1200px;margin:0 auto;text-align:center}.features-title{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:16px}.features-subtitle{font-size:1.1rem;color:#ffffffb3;margin-bottom:60px;max-width:600px;margin-left:auto;margin-right:auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;margin-top:60px}.feature-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:40px 30px;text-align:center;transition:all .3s ease}.feature-card:hover{transform:translateY(-5px);background:#ffffff14;border-color:#fff3;box-shadow:0 10px 30px #0003}.feature-icon{font-size:3rem;margin-bottom:24px;display:block}.feature-title{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:16px}.feature-description{color:#ffffffb3;line-height:1.6;font-size:1rem}.search-container{max-width:500px;margin:40px auto 0;position:relative}.search-input{width:100%;padding:16px 24px;border-radius:50px;border:2px solid rgba(255,255,255,.2);background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:16px;text-align:center;transition:all .3s ease}.search-input::placeholder{color:#fff9}.search-input:focus{outline:none;border-color:#fff6;background:#ffffff26;box-shadow:0 0 0 3px #ffffff1a}@media (max-width: 768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.1rem}.hero-actions{flex-direction:column;align-items:center}.btn-hero{width:100%;max-width:280px}.features-grid{grid-template-columns:1fr;gap:30px}.feature-card{padding:30px 20px}.features-title{font-size:2rem}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-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:linear-gradient(135deg,#1e3c72,#2a5298);color:#fff;min-height:100vh}.App{min-height:100vh;background:linear-gradient(135deg,#1e3c72,#2a5298)}.main-content{margin:0;padding:0}.main-content.with-padding{max-width:1200px;margin:0 auto;padding:20px}.loading{display:flex;justify-content:center;align-items:center;height:100vh;font-size:18px}.header{background:#0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1);padding:1rem 0;position:sticky;top:0;z-index:100}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;padding:0 20px}.logo{font-size:24px;font-weight:700;color:#fff;text-decoration:none;display:flex;align-items:center;gap:8px}.nav{display:flex;gap:30px;align-items:center}.nav a{text-decoration:none;color:#fffc;font-weight:500;transition:color .2s;padding:8px 16px;border-radius:6px;transition:all .2s}.nav a:hover{color:#fff;background:#ffffff1a}.user-info{display:flex;align-items:center;gap:15px;color:#ffffffe6}.logout-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.logout-btn:hover{background:#fff3;border-color:#ffffff4d}.form-container{max-width:450px;margin:50px auto;background:#0003;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:40px;border-radius:16px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d}.form-title{text-align:center;margin-bottom:30px;color:#fff;font-size:28px;font-weight:600}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#ffffffe6;font-size:14px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:14px 16px;border:1px solid rgba(255,255,255,.2);border-radius:8px;font-size:16px;background:#ffffff1a;color:#fff;transition:all .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:#ffffff80}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#fff6;background:#ffffff26;box-shadow:0 0 0 3px #ffffff1a}.form-group textarea{resize:vertical;min-height:100px}.btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:14px 24px;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;transition:all .2s;width:100%;text-transform:uppercase;letter-spacing:.5px}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.btn:disabled{background:#fff3;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:#ffffff1a;border:1px solid rgba(255,255,255,.2)}.btn-secondary:hover{background:#fff3;border-color:#ffffff4d}.btn-danger{background:linear-gradient(135deg,#ff6b6b,#ee5a52)}.btn-danger:hover{background:linear-gradient(135deg,#ee5a52,#ff6b6b)}.error{color:#ff6b6b;text-align:center;margin-bottom:20px;padding:12px 16px;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.success{color:#51cf66;text-align:center;margin-bottom:20px;padding:12px 16px;background:#51cf661a;border:1px solid rgba(81,207,102,.3);border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.form-link{text-align:center;margin-top:30px;color:#ffffffb3}.form-link a{color:#667eea;text-decoration:none;font-weight:500;transition:color .2s}.form-link a:hover{color:#764ba2;text-decoration:underline}.books-page-header{text-align:center;margin-bottom:40px;padding:40px 0}.books-page-title{font-size:2.5rem;font-weight:700;color:#fff;margin-bottom:12px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.books-page-subtitle{font-size:1.1rem;color:#ffffffb3;max-width:600px;margin:0 auto}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:30px}.book-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.book-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease}.book-card:hover{transform:translateY(-5px);background:#ffffff14;border-color:#fff3;box-shadow:0 10px 30px #0003}.book-card:hover:before{opacity:1}.book-title{font-size:1.25rem;font-weight:600;margin-bottom:8px;color:#fff;line-height:1.3}.book-author{color:#ffffffb3;margin-bottom:8px;font-size:.95rem;font-style:italic}.book-genre{color:#667eea;font-size:.85rem;margin-bottom:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.book-description{color:#fffc;line-height:1.6;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.9rem}.book-meta{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#fff9;margin-top:auto}.rating{display:flex;align-items:center;gap:6px}.stars{color:gold;font-size:.9rem}.rating span{font-size:.8rem;color:#ffffffb3}.book-detail{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 10px #0000001a;margin-bottom:30px}.book-detail-header{margin-bottom:30px}.book-detail-title{font-size:32px;font-weight:700;margin-bottom:10px;color:#2c3e50}.book-detail-meta{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;color:#7f8c8d}.book-detail-description{line-height:1.6;color:#555;margin-bottom:20px}.reviews-section{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 10px #0000001a}.reviews-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.review-card{border:1px solid #eee;border-radius:8px;padding:20px;margin-bottom:20px}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.review-author{font-weight:700;color:#2c3e50}.review-actions{display:flex;gap:10px}.review-actions button{padding:6px 12px;font-size:12px}.review-comment{line-height:1.5;color:#555}.search-filters{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:24px;border-radius:16px;margin-bottom:30px;box-shadow:0 8px 32px #0000001a}.search-row{display:flex;gap:20px;align-items:end;flex-wrap:wrap}.search-group{flex:1;min-width:200px}.search-group label{display:block;margin-bottom:8px;font-weight:500;color:#ffffffe6;font-size:14px}.search-group input{width:100%;padding:12px 16px;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:#ffffff1a;color:#fff;font-size:14px;transition:all .2s}.search-group input::placeholder{color:#ffffff80}.search-group input:focus{outline:none;border-color:#fff6;background:#ffffff26;box-shadow:0 0 0 3px #ffffff1a}.search-btn{white-space:nowrap;width:auto;min-width:120px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.search-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000004d}.pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:40px;padding:20px 0}.pagination button{padding:10px 16px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:8px;cursor:pointer;transition:all .2s;color:#fffc;font-weight:500;min-width:44px}.pagination button:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff4d;color:#fff;transform:translateY(-1px)}.pagination button:disabled{cursor:not-allowed;opacity:.4;background:#ffffff05}.pagination .active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:transparent;color:#fff;box-shadow:0 2px 8px #667eea4d}.empty-state{text-align:center;padding:60px 20px;background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;margin:40px 0}.empty-icon{font-size:4rem;margin-bottom:20px;opacity:.6}.empty-title{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:12px}.empty-description{color:#ffffffb3;font-size:1rem;line-height:1.5;max-width:400px;margin:0 auto}.loading{display:flex;justify-content:center;align-items:center;height:200px;font-size:18px;color:#fffc;background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;margin:40px 0}@media (max-width: 768px){.header-content{flex-direction:column;gap:15px}.nav{order:-1}.main-content.with-padding{padding:15px}.books-page-header{padding:20px 0}.books-page-title{font-size:2rem}.books-page-subtitle{font-size:1rem}.book-grid{grid-template-columns:1fr;gap:16px}.book-card,.search-filters{padding:20px}.search-row{flex-direction:column;gap:16px}.search-group{min-width:unset}.search-btn{width:100%;min-width:unset}.pagination{gap:8px;flex-wrap:wrap}.pagination button{padding:8px 12px;min-width:40px}.empty-state{padding:40px 20px}.empty-icon{font-size:3rem}.book-detail-meta{flex-direction:column;gap:10px}.reviews-header{flex-direction:column;gap:15px;align-items:stretch}.review-header{flex-direction:column;align-items:flex-start;gap:10px}}
