@import"https://fonts.googleapis.com/css2?family=Quicksand:wght@300;400;500;600;700&display=swap";:root{--primary: #ff8a80;--secondary: #ffebee;--accent: #ffab91;--text-main: #5d4037;--text-dim: #8d6e63;--bg-soft: #fff9f9;--radius: 20px;--shadow: 0 10px 30px rgba(0, 0, 0, .08);--success: #81c784;--danger: #e57373;--font-base: clamp(.9rem, .4vw + .8rem, 1.1rem);--header-height: clamp(70px, 10vh, 100px)}*{box-sizing:border-box;margin:0;padding:0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--secondary)}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:10px;border:2px solid var(--secondary)}body{font-family:Quicksand,sans-serif;color:var(--text-main);line-height:1.6;min-height:100vh;background-image:url(/bg.png);background-size:cover;background-position:center;background-attachment:fixed;background-repeat:no-repeat;margin:0;padding:0;font-size:var(--font-base)}@media (min-width: 1024px){body,button,a,input,select,.upload-preview,.floating-action button{cursor:url(/cursor_final.png) 16 16,auto!important}}#root{min-height:100vh;display:flex;flex-direction:column;background:#fdf2f266}.auth-container{flex:1;display:flex;justify-content:center;align-items:center;padding:20px}.auth-card{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:clamp(20px,5vw,40px);border-radius:30px;box-shadow:var(--shadow);width:100%;max-width:450px;text-align:center}.app-header{min-height:var(--header-height);background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:10px clamp(15px,4vw,40px);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;box-shadow:0 4px 20px #0000000d;position:sticky;top:0;z-index:100;width:100%}.logo{display:flex;align-items:center;gap:12px;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700;color:var(--primary)}.header-right{display:flex;align-items:center;gap:clamp(10px,2vw,20px);flex-wrap:wrap;justify-content:flex-end;flex:1}.header-stats{background:#fff;padding:6px 12px;border-radius:12px;display:flex;align-items:center;gap:8px;box-shadow:0 4px 10px #00000008;font-size:.9rem;font-weight:600;white-space:nowrap}.view-switcher{background:#0000000d;padding:4px;border-radius:12px;display:flex;gap:4px}.view-switcher button{background:none;border:none;padding:8px 12px;border-radius:8px;cursor:pointer;color:var(--text-dim);transition:all .2s;display:flex;align-items:center;gap:8px;font-family:inherit;font-weight:600}.view-switcher button.active{background:#fff;color:var(--primary);box-shadow:0 4px 10px #00000014}.user-info{display:flex;align-items:center;gap:12px}.user-email{font-weight:700;color:var(--text-main)}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(150px,45vw,280px),1fr));gap:clamp(15px,3vw,30px);padding:clamp(15px,3vw,40px);max-width:1400px;margin:0 auto}.book-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s;display:flex;flex-direction:column}.book-card:hover{transform:translateY(-5px)}.book-thumb-container{height:clamp(200px,40vh,380px);background:var(--bg-soft);display:flex;align-items:center;justify-content:center;padding:15px;position:relative;cursor:pointer}.book-thumb{max-width:100%;max-height:100%;object-fit:contain}.book-info{padding:15px;text-align:center;flex:1}.book-title{font-size:clamp(1rem,2.5vw,1.2rem);font-weight:700;margin-bottom:4px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.book-author{font-size:.9rem;color:var(--text-dim)}.card-actions{display:flex;justify-content:center;gap:12px;margin-top:auto;padding-top:10px}.btn-circle{width:clamp(40px,11vw,50px);height:clamp(40px,11vw,50px);border-radius:14px;border:none;background:var(--secondary);color:var(--primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;flex-shrink:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;justify-content:center;align-items:center;padding:20px}.modal-card{background:#fff;padding:30px;border-radius:30px;width:100%;max-width:950px;max-height:95vh;overflow-y:auto;box-shadow:0 40px 100px #0000004d;position:relative}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;border-bottom:2px solid var(--secondary);padding-bottom:15px}.close-btn{background:var(--secondary);color:var(--primary);border:none;width:44px;height:44px;border-radius:12px;display:flex;justify-content:center;align-items:center;cursor:pointer}.modal-grid{display:grid;grid-template-columns:280px 1fr;gap:30px}.upload-preview{width:100%;height:380px;border-radius:15px;border:4px dashed var(--secondary);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:15px;cursor:pointer;overflow:hidden;background:var(--bg-soft)}.input-group label{font-size:.85rem;font-weight:700;text-transform:uppercase;color:var(--text-dim);margin-bottom:8px;display:block}.input-group input,.input-group select{width:100%;padding:14px 18px;border-radius:12px;border:3px solid var(--secondary);font-family:inherit;font-size:1.05rem;font-weight:600}.btn{padding:15px 30px;border-radius:15px;font-weight:700;font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;border:none}.btn-secondary{background:var(--secondary);color:var(--primary)}.floating-action.centered{position:fixed;bottom:30px;left:50%;transform:translate(-50%);z-index:90}.floating-action button{height:clamp(60px,12vw,72px)!important;padding:0 40px!important;border-radius:40px!important;font-size:1.2rem!important;box-shadow:0 10px 30px #ff8a8066}.book-list-view{background:#fff;border-radius:var(--radius);margin:clamp(10px,2vw,20px);padding:15px;box-shadow:var(--shadow);color:var(--text-main);position:relative;overflow:hidden}.books-table{width:100%;border-collapse:collapse}.books-table th{background:var(--bg-soft);padding:15px;text-align:left;font-weight:700;font-size:.9rem;color:var(--text-dim);text-transform:uppercase}.books-table td{padding:15px;border-bottom:1px solid var(--secondary);vertical-align:middle}.badge{background:var(--secondary);color:var(--primary);padding:4px 10px;border-radius:8px;font-weight:700;font-size:.8rem}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:20px;padding:20px 0}.pagination-controls button{background:var(--secondary);border:none;width:40px;height:40px;border-radius:50%;color:var(--primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.pagination-controls button:disabled{opacity:.5;cursor:not-allowed}.pagination-controls span{font-weight:700;color:var(--text-dim)}.table-filter{width:100%;margin-top:5px;padding:6px 10px;border:2px solid var(--secondary);border-radius:8px;font-size:.85rem;font-family:inherit}.table-filter-select{padding:8px 12px;border:2px solid var(--secondary);border-radius:12px;font-family:inherit;font-weight:600;color:var(--text-main);background:#fff;cursor:pointer}.genre-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid var(--secondary);border-top:none;border-radius:0 0 12px 12px;max-height:200px;overflow-y:auto;z-index:50;box-shadow:0 4px 12px #0000001a}.genre-option{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:.9rem;transition:background .2s}.genre-option:hover{background:var(--secondary);color:var(--primary);font-weight:600}.zoom-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2000;display:flex;justify-content:center;align-items:center;cursor:zoom-out;padding:40px}.zoom-overlay img{max-width:90%;max-height:90%;object-fit:contain;box-shadow:0 10px 50px #00000080;border-radius:10px}@media (max-width: 600px){.logo span,.view-switcher button span{display:none}.book-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;padding:20px 30px;-webkit-overflow-scrolling:touch;height:calc(100vh - var(--header-height) - 100px);align-items:center}.book-grid::-webkit-scrollbar{display:none}.book-card{flex:0 0 calc(90vw - 40px);scroll-snap-align:center;height:auto;max-height:90%}.book-thumb-container{height:clamp(300px,50vh,500px)}.books-table,.books-table tbody,.books-table tr{display:block;width:100%}.books-table thead{display:none}.books-table tr{display:flex;align-items:center;gap:15px;background:#fff;border-radius:12px;margin-bottom:15px;padding:10px;box-shadow:0 4px 10px #0000000d;border:1px solid var(--secondary);position:relative}.books-table td{display:block;border:none;padding:0}.books-table td[data-label=Obálka]{flex:0 0 60px;height:90px;border-radius:8px;overflow:hidden}.books-table td[data-label=Obálka] img{width:100%;height:100%;object-fit:cover;border-radius:6px}.books-table td[data-label=Název]{flex:1;font-size:1rem;font-weight:700;line-height:1.2;margin-bottom:4px}.books-table tr{display:grid;grid-template-columns:60px 1fr auto;grid-template-areas:"thumb title action" "thumb author action" "thumb details action";column-gap:15px;row-gap:4px;align-items:start}.books-table td[data-label=Obálka]{grid-area:thumb;height:90px;width:60px}.books-table td[data-label=Obálka] img{width:100%;height:100%;border-radius:4px}.books-table td[data-label=Název]{grid-area:title;font-size:1rem;align-self:end;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.books-table td[data-label=Autor]{grid-area:author;font-size:.85rem;color:var(--text-dim)}.books-table td[data-label=Žánr],.books-table td[data-label=Jazyk],.books-table td[data-label=Stran],.books-table td[data-label=Cena],.books-table td[data-label=Půjčeno],.books-table td[data-label=Série]{display:none}.books-table td[data-label=Akce]{grid-area:action;align-self:center;display:flex;flex-direction:column;gap:5px}.books-table td:before{display:none}.header-stats{display:none}.user-email{font-size:.85rem;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-card{height:100%;border-radius:0;padding:20px}.modal-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}.floating-action.centered button span{display:none}.floating-action.centered button{width:64px;height:64px;padding:0!important;border-radius:50%!important}}@media (min-width: 601px) and (max-width: 900px){.books-table,.books-table thead,.books-table tbody,.books-table th,.books-table td,.books-table tr{display:block}.books-table thead tr{position:absolute;top:-9999px;left:-9999px}.books-table tr{border:2px solid var(--secondary);border-radius:15px;margin-bottom:20px;background:#fff;padding:10px}.books-table td{border:none;position:relative;padding-left:50%!important;text-align:right;min-height:40px;display:flex;align-items:center;justify-content:flex-end}.books-table td:before{content:attr(data-label);position:absolute;left:15px;width:45%;padding-right:10px;white-space:nowrap;text-align:left;font-weight:700;color:var(--text-dim);text-transform:uppercase;font-size:.8rem}}
