:root{--color-primary: #646cff;--color-primary-hover: #535bf2;--color-text: #213547;--color-text-light: #646464;--color-background: #ffffff;--color-border: #e0e0e0;--color-card-bg: #f9f9f9;--color-active: #646cff;--color-active-bg: #f0f0ff;--color-error: #dc2626;--color-success: #16a34a;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--border-radius: 8px;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem}*{box-sizing:border-box}body{color:var(--color-text);background-color:var(--color-background)}.App{max-width:1200px;margin:0 auto;padding:var(--spacing-md)}.App-header{text-align:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg) 0;border-bottom:2px solid var(--color-border)}.App-header h1{margin:0;font-size:2rem;color:var(--color-text)}main{padding:var(--spacing-md) 0}.category-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:2px solid var(--color-border);flex-wrap:wrap}.category-tabs button{background:none;border:none;padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;font-weight:500;color:var(--color-text-light);cursor:pointer;border-bottom:3px solid transparent;transition:all .2s ease;margin-bottom:-2px;font-family:inherit}.category-tabs button:hover{color:var(--color-text);background-color:var(--color-card-bg)}.category-tabs button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.category-tabs button.active{color:var(--color-active);border-bottom-color:var(--color-active)}.book-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-lg)}.book-card{background:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all .2s ease}.book-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.book-card h3{margin:0 0 var(--spacing-sm) 0;font-size:1.25rem;color:var(--color-text);line-height:1.4}.book-card .author{margin:0 0 var(--spacing-sm) 0;color:var(--color-text-light);font-size:.95rem}.book-card .status{margin:var(--spacing-sm) 0;font-size:.85rem;color:var(--color-primary);text-transform:capitalize;font-weight:500}.book-card .isbn{margin:var(--spacing-sm) 0 0 0;font-size:.85rem;color:var(--color-text-light);font-family:monospace}.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--color-text-light);font-size:1.1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.search-bar{position:relative;margin-bottom:var(--spacing-lg)}.search-bar input{width:100%;padding:var(--spacing-md);padding-right:2.5rem;font-size:1rem;border:2px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;transition:border-color .2s ease}.search-bar input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff1a}.search-bar-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.5rem;color:var(--color-text-light);cursor:pointer;padding:.25rem .5rem;line-height:1;border-radius:var(--border-radius);transition:all .2s ease}.search-bar-clear:hover{color:var(--color-text);background-color:var(--color-card-bg)}.search-bar-clear:focus{outline:2px solid var(--color-primary);outline-offset:2px}.book-search{background:var(--color-card-bg);border:2px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-sm)}.book-search-input-wrapper label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--color-text)}.book-search-input-wrapper input{width:100%;padding:var(--spacing-md);font-size:1rem;border:2px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;transition:border-color .2s ease}.book-search-input-wrapper input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff1a}.book-search-loading,.book-search-error,.book-search-empty{margin-top:var(--spacing-md);font-size:.95rem;color:var(--color-text-light)}.book-search-error{color:var(--color-error, #dc2626)}.book-search-results{list-style:none;margin:var(--spacing-md) 0 0 0;padding:0;border:1px solid var(--color-border);border-radius:var(--border-radius);overflow:hidden}.book-search-result{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-bottom:1px solid var(--color-border);background:var(--color-background)}.book-search-result:last-child{border-bottom:none}.book-search-result-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.book-search-result-title{font-weight:600;color:var(--color-text)}.book-search-result-author{font-size:.9rem;color:var(--color-text-light)}.book-search-result-isbn{font-size:.8rem;color:var(--color-text-light);font-family:monospace}.book-search-add-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem;font-weight:500;color:#fff;background-color:var(--color-primary);border:none;border-radius:var(--border-radius);cursor:pointer;white-space:nowrap;transition:background-color .2s ease;font-family:inherit}.book-search-add-btn:hover{background-color:var(--color-primary-hover)}.status-picker{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.status-picker select{padding:var(--spacing-sm);font-size:.9rem;border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit}.status-picker-confirm{padding:var(--spacing-sm) var(--spacing-md);font-size:.85rem;font-weight:500;color:#fff;background-color:var(--color-primary);border:none;border-radius:var(--border-radius);cursor:pointer;font-family:inherit}.status-picker-cancel{padding:var(--spacing-sm) var(--spacing-md);font-size:.85rem;color:var(--color-text-light);background:none;border:1px solid var(--color-border);border-radius:var(--border-radius);cursor:pointer;font-family:inherit}.your-books{margin-top:var(--spacing-xl)}.add-book-form{background:var(--color-card-bg);border:2px solid var(--color-border);border-radius:var(--border-radius);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-sm)}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:500;color:var(--color-text)}.form-group input,.form-group select{width:100%;padding:var(--spacing-md);font-size:1rem;border:1px solid var(--color-border);border-radius:var(--border-radius);font-family:inherit;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #646cff1a}.form-error{display:block;color:var(--color-error);font-size:.875rem;margin-top:var(--spacing-sm)}.form-success{color:var(--color-success);font-weight:500;margin-top:var(--spacing-md);padding:var(--spacing-md);background-color:#16a34a1a;border-radius:var(--border-radius);text-align:center}.submit-button{width:100%;padding:var(--spacing-md);font-size:1rem;font-weight:500;color:#fff;background-color:var(--color-primary);border:none;border-radius:var(--border-radius);cursor:pointer;transition:background-color .2s ease;font-family:inherit}.submit-button:hover{background-color:var(--color-primary-hover)}.submit-button:focus{outline:2px solid var(--color-primary);outline-offset:2px}.title-input-wrapper{position:relative}.suggestions-list{position:absolute;top:100%;left:0;right:0;margin:0;padding:0;list-style:none;background:var(--color-background);border:1px solid var(--color-border);border-top:none;border-radius:0 0 var(--border-radius) var(--border-radius);box-shadow:var(--shadow-md);max-height:300px;overflow-y:auto;z-index:10}.suggestion-item{padding:var(--spacing-md);cursor:pointer;transition:background-color .2s ease;border-bottom:1px solid var(--color-border)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover{background-color:var(--color-active-bg);color:var(--color-active)}.suggestion-item:focus{outline:2px solid var(--color-primary);outline-offset:-2px}@media (max-width: 480px){.App{padding:var(--spacing-sm)}.App-header h1{font-size:1.5rem}.category-tabs{justify-content:center}.category-tabs button{padding:var(--spacing-sm) var(--spacing-md);font-size:.9rem}.book-list{grid-template-columns:1fr;gap:var(--spacing-md)}.book-card,.add-book-form{padding:var(--spacing-md)}.form-group input,.form-group select{font-size:16px}}@media (min-width: 481px) and (max-width: 768px){.book-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (min-width: 769px){.App{padding:var(--spacing-xl)}.add-book-form{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.form-group:nth-child(1){grid-column:1 / -1}.submit-button,.form-success{grid-column:1 / -1}}:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}h1{line-height:1.1}
