.navbar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.5rem;background:#1a1a2e;color:#fff}.navbar-brand{color:#fff;text-decoration:none;font-size:1.25rem;font-weight:700}.navbar-right{display:flex;align-items:center;gap:1rem}.navbar-user{font-size:.875rem;color:#aaa}.btn-logout{background:transparent;border:1px solid #e94560;color:#e94560;padding:.35rem .75rem;border-radius:4px;cursor:pointer;font-size:.875rem}.btn-logout:hover{background:#e94560;color:#fff}.auth-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 56px);padding:2rem}.auth-form{width:100%;max-width:380px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:2rem}.auth-form h1{margin:0 0 1.5rem;font-size:1.5rem}.auth-form label{display:block;margin-bottom:1rem;font-size:.9rem;font-weight:600}.auth-form input{display:block;width:100%;margin-top:.3rem;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;box-sizing:border-box}.auth-link{margin-top:1rem;text-align:center;font-size:.875rem}.book-card{display:block;text-decoration:none;color:inherit;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;transition:box-shadow .15s}.book-card:hover{box-shadow:0 2px 8px #0000001a}.book-card-title{margin:0 0 .25rem;font-size:1.1rem}.book-card-author{margin:0 0 .5rem;color:#666;font-size:.9rem}.book-card-status{display:inline-block;font-size:.8rem;padding:.15rem .5rem;border-radius:4px;margin-right:.5rem}.status-want_to_read{background:#e3f2fd;color:#1565c0}.status-reading{background:#fff3e0;color:#e65100}.status-finished{background:#e8f5e9;color:#2e7d32}.book-card-rating{color:#f59e0b;font-size:.95rem}.book-list-page{max-width:800px;margin:0 auto;padding:1.5rem}.book-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.book-list-header h1{margin:0;font-size:1.5rem}.book-filters{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.book-filters input,.book-filters select{padding:.45rem .6rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem}.book-filters input{flex:1;min-width:150px}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.status-msg{text-align:center;color:#666;margin-top:2rem}.status-msg.error{color:#d32f2f}.form-page{max-width:500px;margin:0 auto;padding:1.5rem}.form-page h1{margin:0 0 1.5rem;font-size:1.5rem}.book-form label{display:block;margin-bottom:1rem;font-size:.9rem;font-weight:600}.book-form input,.book-form select{display:block;width:100%;margin-top:.3rem;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:1rem;box-sizing:border-box}.form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.5rem}.book-detail{max-width:700px;margin:0 auto;padding:1.5rem}.back-link{display:inline-block;margin-bottom:1rem;color:#555;text-decoration:none;font-size:.9rem}.back-link:hover{text-decoration:underline}.book-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.25rem}.book-detail-header h1{margin:0;font-size:1.75rem}.book-detail-actions{display:flex;gap:.5rem}.book-detail-author{color:#666;font-size:1.1rem;margin:0 0 1rem}.book-detail-meta{display:flex;gap:.75rem;align-items:center;margin-bottom:2rem}.book-detail-rating{color:#f59e0b;font-size:1.1rem}.book-detail-date{color:#999;font-size:.85rem}.notes-section{border-top:1px solid #e0e0e0;padding-top:1.5rem}.notes-section h2{margin:0 0 1rem;font-size:1.25rem}.edit-note-form{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;margin-bottom:1rem}.edit-note-form h3{margin:0 0 .75rem;font-size:1rem}.note-form{margin-bottom:1.5rem}.note-form textarea{width:100%;padding:.5rem;border:1px solid #ccc;border-radius:4px;font-size:.95rem;resize:vertical;box-sizing:border-box}.note-form-footer{display:flex;gap:.5rem;align-items:center;margin-top:.5rem;flex-wrap:wrap}.input-page{width:120px;padding:.4rem;border:1px solid #ccc;border-radius:4px;font-size:.9rem;box-sizing:border-box}.note-form-actions{margin-left:auto;display:flex;gap:.5rem}.notes-list{display:flex;flex-direction:column;gap:.75rem}.note-item{display:flex;justify-content:space-between;align-items:flex-start;background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:.75rem 1rem}.note-item-body{flex:1}.note-item-content{margin:0 0 .35rem;white-space:pre-wrap}.note-item-page,.note-item-date{font-size:.8rem;color:#999;margin-right:.75rem}.note-item-actions{display:flex;gap:.35rem;flex-shrink:0}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f5f5f5;color:#333;line-height:1.5}.btn{display:inline-block;padding:.45rem 1rem;border:1px solid #ccc;border-radius:4px;background:#fff;color:#333;font-size:.9rem;cursor:pointer;text-decoration:none;line-height:1.4}.btn:hover{background:#f0f0f0}.btn-primary{background:#1a1a2e;border-color:#1a1a2e;color:#fff}.btn-primary:hover{background:#16213e}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{color:#d32f2f;border-color:#d32f2f}.btn-danger:hover{background:#d32f2f;color:#fff}.btn-sm{padding:.25rem .5rem;font-size:.8rem;border:1px solid #ccc;border-radius:4px;background:#fff;cursor:pointer}.form-error{color:#d32f2f;font-size:.875rem;margin:0 0 .75rem}
