:root { color-scheme: light; --ink:#17221d; --muted:#65736b; --paper:#f6f2e8; --card:#fffdf7; --green:#244f3d; --line:#d9d4c7; --red:#9a3d35; }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; font-family:Inter, ui-sans-serif, system-ui, sans-serif; color:var(--ink); background:var(--paper); transition:background-color .2s ease; } body.viewing-own-library { background:#f0eee4; }
.demo-badge { position:fixed; z-index:50; right:12px; bottom:12px; display:flex; align-items:center; gap:7px; padding:6px 7px 6px 11px; border:1px solid #b6c8bb; border-radius:999px; color:var(--green); background:#f7fff9ee; box-shadow:0 7px 24px #17221d24; backdrop-filter:blur(6px); font-size:.72rem; }.demo-badge button { min-height:28px; padding:0 9px; border:0; border-radius:999px; color:white; background:var(--green); font:inherit; font-weight:800; }
header, main { width:min(1120px, calc(100% - 32px)); margin:auto; }
header { display:flex; align-items:end; justify-content:space-between; gap:24px; padding:64px 0 40px; border-bottom:1px solid var(--line); }
.header-nav { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.header-library-menu { position:relative; }.header-library-menu summary { display:flex; align-items:center; list-style:none; cursor:pointer; }.header-library-menu summary::-webkit-details-marker { display:none; }.header-library-menu[open] summary { border-color:var(--green); box-shadow:0 0 0 3px #244f3d22; }.header-library-options { position:absolute; z-index:20; top:calc(100% + 8px); right:0; display:grid; width:min(280px,calc(100vw - 32px)); padding:7px; border:1px solid var(--line); border-radius:14px; background:var(--card); box-shadow:0 18px 48px #17221d33; }.header-library-options button { padding:11px 12px; border:0; border-radius:9px; text-align:left; color:var(--ink); background:transparent; font-weight:700; }.header-library-options button:hover { background:#ece7da; }.header-library-options strong,.header-library-options span { display:block; }.header-library-options span { margin-top:2px; color:var(--muted); font-size:.76rem; font-weight:500; }
.header-library-options button strong { display:inline; }.header-library-section { display:grid; margin-top:6px; padding-top:7px; border-top:1px solid var(--line); }.header-library-section>span { display:block; margin:3px 12px 4px; color:var(--muted); font-size:.66rem; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }.header-library-section button { width:100%; }
.view-nav { min-height:46px; padding:0 18px; border:1px solid var(--line); border-radius:999px; color:var(--ink); background:transparent; font-weight:750; }.view-nav[aria-pressed="true"] { border-color:var(--green); color:white; background:var(--green); box-shadow:0 0 0 3px #244f3d22; }
.library-row { display:flex; flex-wrap:wrap; gap:8px; }.library-row select { flex:1 1 160px; }.library-row button { flex:0 0 auto; }
h1,h2,p { margin-top:0; } h1 { margin-bottom:8px; font:700 clamp(2.7rem, 8vw, 5.6rem)/.95 Georgia,serif; letter-spacing:-.05em; } h2 { margin-bottom:0; font:700 2rem/1.1 Georgia,serif; }
.eyebrow { margin-bottom:8px; color:var(--green); font-size:.75rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.intro,.status,.count { color:var(--muted); } main { padding:32px 0 80px; }
button,input,select { font:inherit; } button { cursor:pointer; }
.primary { min-height:46px; padding:0 20px; border:0; border-radius:999px; color:white; background:var(--green); font-weight:750; }
.primary:hover { background:#173d2d; }.primary:disabled { opacity:.55; cursor:not-allowed; }
.panel { margin-bottom:48px; padding:24px; border:1px solid var(--line); border-radius:20px; background:var(--card); box-shadow:0 16px 40px #3b332214; }
.hidden { display:none; }.panel-heading,.section-heading { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:24px; }
.auth-screen { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; padding:20px; background:var(--paper); }.auth-screen.hidden { display:none; }.auth-card { width:min(480px,100%); padding:34px; border:1px solid var(--line); border-radius:22px; background:var(--card); box-shadow:0 22px 70px #26392d22; }.auth-card h1 { margin-bottom:12px; font-size:clamp(2rem,8vw,3.4rem); }.auth-card .primary { width:100%; min-height:48px; }.auth-email { margin:0 0 18px; color:var(--green); font-weight:800; }.auth-card label { margin-bottom:18px; }
.library-heading-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; max-width:100%; gap:10px; }.library-heading-actions .count { margin:0; }.library-heading-actions .view-buttons { flex:0 1 auto; }.library-heading-actions>button { flex:0 0 auto; }.notification-count { display:inline-grid; place-items:center; min-width:22px; height:22px; margin-left:5px; padding:0 6px; border-radius:999px; color:white; background:var(--red); font-size:.75rem; }.notification-count.hidden { display:none; }
.open-request-dot { display:inline-block; width:8px; height:8px; margin-left:5px; border-radius:50%; background:#b57a22; vertical-align:middle; }.open-request-dot.hidden { display:none; }
.close-button { min-height:38px; padding:0 14px; border:1px solid var(--line); border-radius:999px; color:var(--muted); background:transparent; font-weight:750; }
label { display:block; margin-bottom:8px; font-weight:700; }.search-row { display:flex; flex-wrap:wrap; gap:10px; }.search-row input { flex:0 1 460px; max-width:460px; }.search-row select { flex:0 1 230px; }.search-row button { flex:0 0 auto; }
input,select { width:100%; min-height:48px; padding:0 16px; border:1px solid #aaa497; border-radius:12px; background:white; color:var(--ink); }
input:focus { outline:3px solid #87a896; outline-offset:1px; }.status { min-height:24px; margin:16px 0; }
.book-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:20px; }
.book { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid var(--line); border-radius:16px; background:var(--card); }
.cover { position:relative; display:grid; place-items:center; height:260px; flex:none; border:0; padding:0; cursor:pointer; background:#e6dfcf; }.cover img { display:block; width:100%; height:100%; object-fit:contain; }.cover span { color:var(--muted); }
.book-info { position:relative; display:flex; flex:1; flex-direction:column; padding:16px; border-top:1px solid var(--line); background:var(--card); }.book h3 { margin:0 0 6px; font:700 1.15rem/1.25 Georgia,serif; }.byline,.details { color:var(--muted); font-size:.9rem; }.details { margin:10px 0 0; }
.book-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }.book-actions button { flex:1 1 auto; min-height:40px; border-radius:10px; font-weight:700; }.book-actions .compact { padding:0 10px; }
.add { border:0; color:white; background:var(--green); }.remove { border:1px solid #d8aaa6; color:var(--red); background:transparent; }
.empty { grid-column:1/-1; padding:48px 24px; border:1px dashed #aaa497; border-radius:16px; text-align:center; color:var(--muted); }
.empty-browse-link { padding:0; border:0; color:var(--muted); background:transparent; font:inherit; cursor:pointer; }.empty-browse-link span { display:block; margin-top:7px; color:var(--green); font-weight:800; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:3px; }.empty-browse-link:hover span,.empty-browse-link:focus-visible span { text-decoration-thickness:2px; }.empty-browse-link:focus-visible { outline:2px solid var(--green); outline-offset:6px; border-radius:3px; }
.results-heading { margin:24px 0 14px; font:700 1.25rem/1.2 Georgia,serif; }.network-owner { margin:8px 0 0; color:var(--green); font-size:.82rem; font-weight:750; }
.browse-controls { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); align-items:end; gap:12px; margin-bottom:12px; }.browse-controls label { margin:0; }.browse-controls input,.browse-controls select { margin-top:7px; }.view-buttons { display:flex; gap:8px; }.view-buttons button { flex:1; }.view-buttons button[aria-pressed="true"] { color:white; background:var(--green); }
.book-grid.compact-view { display:flex; flex-direction:column; gap:8px; }.compact-view .book { display:grid; grid-template-columns:58px minmax(0,1fr); border-radius:10px; }.compact-view .cover { width:58px; height:84px; grid-row:1; }.compact-view .cover-badges { display:none; }.compact-view .book-info { min-height:84px; padding:10px 12px; border-top:0; border-left:1px solid var(--line); }.compact-view .book h3 { font-size:1rem; }.compact-view .byline,.compact-view .details,.compact-view .network-owner { margin:3px 0 0; }.compact-view .book-actions { position:absolute; right:10px; bottom:10px; margin:0; }.compact-view .book-actions button { min-height:32px; }.compact-view .details { padding-right:90px; }
.availability { display:inline-flex; align-items:center; width:max-content; margin-top:8px; padding:4px 9px; border-radius:999px; color:#246044; background:#e1efe7; font-size:.78rem; font-weight:750; }
.cover-badges { position:absolute; right:8px; bottom:8px; display:flex; align-items:flex-end; flex-direction:column; gap:5px; max-width:calc(100% - 16px); }.read-count { padding:5px 9px; border-radius:999px; color:white; background:#17221dcc; font-size:.76rem; font-weight:750; backdrop-filter:blur(3px); }
.cover-fallback { display:grid; place-items:center; width:100%; height:100%; min-height:84px; padding:8px; color:var(--muted); background:#e6dfcf; font-size:.8rem; text-align:center; }
.availability.unavailable { color:#74572c; background:#f1e8d6; }
dialog { width:min(620px,calc(100% - 24px)); max-height:calc(100vh - 32px); padding:0; overflow:auto; border:1px solid var(--line); border-radius:20px; color:var(--ink); background:var(--card); box-shadow:0 24px 80px #15221955; }
dialog::backdrop { background:#17221d99; backdrop-filter:blur(3px); } #book-form { padding:24px; }
#library-form { padding:24px; }
#details-content { padding:24px; }.details-list { display:grid; grid-template-columns:max-content minmax(0,1fr); gap:10px 18px; margin:0 0 24px; }.details-list dt { color:var(--muted); font-weight:700; }.details-list dd { margin:0; overflow-wrap:anywhere; }
#request-form,#checkout-form,#notifications-content { padding:24px; }.copy-options { display:grid; gap:10px; }.copy-option { display:flex; align-items:flex-start; gap:10px; padding:14px; border:1px solid var(--line); border-radius:12px; }.copy-option input { width:20px; min-height:20px; }.notification { padding:16px 0; border-bottom:1px solid var(--line); }.notification:last-child { border-bottom:0; }.notification p { margin-bottom:8px; }.notification-actions { display:flex; flex-wrap:wrap; gap:8px; }.request-status-pill { display:inline-block; padding:3px 8px; border-radius:999px; background:#eee7d7; color:var(--muted); font-size:.78rem; font-weight:750; }
#admin-content { padding:24px; }.generated-invite { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:10px; margin-top:20px; padding:16px; border:1px solid var(--line); border-radius:14px; background:#f1eee6; }.generated-invite label { margin:0; }.generated-invite input { margin-top:6px; }.admin-list { display:grid; gap:8px; }.admin-row { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 0; border-bottom:1px solid var(--line); }.admin-row:last-child { border-bottom:0; }.admin-row p { margin:3px 0 0; color:var(--muted); font-size:.85rem; }.admin-row-actions { display:flex; gap:7px; flex:none; }.admin-row-actions button { min-height:36px; padding:0 12px; }
.admin-event-time { flex:none; color:var(--muted); font-size:.75rem; }
.loan-row { display:block; width:100%; padding:14px; border:1px solid var(--line); border-radius:12px; text-align:left; color:var(--ink); background:var(--card); }.loan-row:hover { border-color:var(--green); }.loan-row strong,.loan-row span { display:block; }.loan-row span { margin-top:4px; color:var(--muted); font-size:.88rem; }
.dev-tools { margin-top:64px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); }.dev-tools summary { width:max-content; cursor:pointer; font-size:.85rem; }.dev-tools-body { max-width:560px; padding-top:16px; }.dev-tools-body>label { color:var(--ink); }
#admin-content .dev-tools { margin-top:32px; }
.dev-fullscreen-row { display:flex; align-items:center; gap:12px; padding-top:16px; border-top:1px solid var(--line); }.dev-fullscreen-row .form-help { flex:1; margin:0; font-size:.85rem; }.dev-fullscreen-row button[aria-pressed="true"] { color:white; background:var(--green); }
.outside-read-section { margin-top:52px; padding-top:28px; border-top:1px solid var(--line); }.subsection-heading { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin-bottom:8px; }.subsection-heading .count { margin:0; }.browse-orphan-toggle { display:flex; align-items:center; gap:9px; min-height:48px; margin:0; padding:8px 12px; border:1px solid var(--line); border-radius:12px; background:var(--card); font-size:.85rem; }.browse-orphan-toggle input { width:20px; min-height:20px; flex:0 0 20px; margin:0; accent-color:var(--green); }
.profile-toolbar { display:flex; align-items:end; justify-content:flex-end; gap:12px; margin-bottom:18px; }.profile-toolbar label { width:min(300px,100%); margin:0; color:var(--muted); font-size:.82rem; }.profile-toolbar select { margin-top:6px; }.profile-owner-flag { margin-bottom:12px; padding:5px 10px; border-radius:999px; color:var(--green); background:#dceadf; font-size:.78rem; font-weight:800; }.profile-hero { display:grid; grid-template-columns:1fr 1fr; min-height:250px; overflow:hidden; border:1px solid var(--line); border-radius:24px; background:var(--card); box-shadow:0 18px 44px #3b332214; }.profile-name-panel { display:flex; justify-content:flex-end; flex-direction:column; min-width:0; padding:30px 34px; color:white; background:var(--green); }.profile-name-panel .eyebrow,.profile-name-panel .count { color:#dce8df; }.profile-name-panel h2 { overflow-wrap:anywhere; font-size:clamp(2.5rem,7vw,5.5rem); line-height:.92; letter-spacing:-.04em; }.currently-reading-panel { display:flex; flex-direction:column; padding:24px; }.current-reading-display { flex:1; display:flex; align-items:center; }.current-reading-book { display:grid; grid-template-columns:74px minmax(0,1fr); align-items:center; gap:14px; width:100%; }.current-reading-book.no-cover { display:block; padding:12px 0; }.current-reading-book img { width:100%; height:104px; object-fit:contain; background:#e6dfcf; }.shelf-cover img { width:100%; height:132px; object-fit:contain; background:#e6dfcf; }.current-reading-book h3 { margin:0 0 7px; font:700 1.25rem/1.15 Georgia,serif; }.profile-editor { display:flex; gap:8px; }.profile-editor select { flex:1; min-width:0; }.profile-editor button { flex:none; }.featured-shelf-section { margin:30px 0 42px; }.featured-shelf { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; padding:24px 24px 14px; border-bottom:16px solid #72523a; border-radius:6px 6px 14px 14px; background:linear-gradient(#eee5d2,#d8c6a8); box-shadow:0 9px 0 #4c3829,0 18px 26px #3b332222; }.shelf-slot { min-width:0; }.shelf-cover { display:block; min-height:150px; padding:8px; border:1px solid #c9b995; border-radius:8px 8px 2px 2px; background:var(--card); }.shelf-cover h3 { margin:7px 0 0; overflow:hidden; font:700 .88rem/1.15 Georgia,serif; text-overflow:ellipsis; white-space:nowrap; }.shelf-slot select { min-height:40px; margin-top:8px; padding:0 8px; font-size:.78rem; }.library-list-heading { display:flex; align-items:end; justify-content:space-between; gap:18px; margin-bottom:18px; }.profile-book-controls { display:grid; grid-template-columns:2fr 1fr 1fr; gap:12px; margin-bottom:10px; }.profile-book-controls label { margin:0; }.profile-book-controls input,.profile-book-controls select { margin-top:7px; }
.profile-hero.profile-only { grid-template-columns:1fr; }.currently-reading-panel.hidden { display:none; }
.profile-requests-button { position:relative; flex:0 0 auto; margin-bottom:2px; }.profile-requests-button:has(.notification-count:not(.hidden),.open-request-dot:not(.hidden)) { border-color:#b45a43; color:#7d2d24; background:#fff0e9; box-shadow:0 0 0 4px #b45a4322; }.profile-requests-button:has(.notification-count:not(.hidden),.open-request-dot:not(.hidden))::before { content:'New activity'; position:absolute; right:-5px; top:-12px; padding:2px 7px; border-radius:999px; color:white; background:var(--red); font-size:.62rem; font-weight:850; letter-spacing:.04em; text-transform:uppercase; }
.profile-reading-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin-top:20px; }.profile-stat { min-width:0; padding:10px; border:1px solid #ffffff33; border-radius:12px; color:white; background:#ffffff12; text-align:left; cursor:pointer; }.profile-stat:hover,.profile-stat:focus-visible { border-color:#ffffff77; background:#ffffff20; }.profile-stat:focus-visible { outline:2px solid white; outline-offset:2px; }.profile-stat strong,.profile-stat span { display:block; }.profile-stat strong { font:700 1.35rem/1 Georgia,serif; }.profile-stat span { margin-top:5px; color:#dce8df; font-size:.68rem; line-height:1.1; }
.profile-status-sections { display:grid; gap:12px; margin:0 0 48px; }.profile-status-section { scroll-margin-top:18px; overflow:hidden; border:1px solid var(--line); border-radius:16px; background:var(--card); }.profile-status-section>summary { display:flex; align-items:center; justify-content:space-between; min-height:64px; padding:0 20px; cursor:pointer; list-style:none; font:700 1.18rem/1.2 Georgia,serif; }.profile-status-section>summary::-webkit-details-marker { display:none; }.profile-status-section>summary::before { content:'+'; width:22px; margin-right:10px; color:var(--muted); font:700 1.2rem/1 system-ui,sans-serif; }.profile-status-section[open]>summary::before { content:'−'; }.profile-status-section>summary>span:first-child { flex:1; }.profile-status-section .section-count { display:grid; place-items:center; min-width:30px; height:30px; padding:0 8px; border-radius:999px; color:var(--green); background:#e2ece5; font:800 .8rem/1 system-ui,sans-serif; }.profile-status-section-body { padding:4px 20px 22px; border-top:1px solid var(--line); }.profile-status-section .library-list-heading { justify-content:flex-end; margin:16px 0 12px; }.profile-status-section .library-heading-actions { width:100%; }.profile-status-section .status { margin-bottom:8px; }
.profile-read-scope { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:min(430px,100%); margin:16px 0; padding:4px; border:1px solid var(--line); border-radius:12px; background:#ece8dd; }.profile-read-scope button { min-height:38px; padding:0 10px; border:0; border-radius:8px; color:var(--muted); background:transparent; font-weight:800; }.profile-read-scope button[aria-pressed="true"] { color:var(--ink); background:var(--card); box-shadow:0 2px 8px #3b33221a; }
.profile-collection-tabs { grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; max-width:none; margin:0 0 22px; }.profile-library-content.hidden { display:none; } #network-read-section,#outside-read-section { margin:0; padding:0; border:0; }
.current-reading-book { padding:0; border:0; text-align:left; color:var(--ink); background:transparent; }.shelf-cover:is(button) { width:100%; text-align:left; color:var(--ink); cursor:pointer; }.shelf-placeholder { display:grid; place-items:center; height:132px; color:var(--muted); background:#e6dfcf; font-size:.8rem; }
.find-current-book { padding:10px 0; border:0; color:var(--muted); background:transparent; font-weight:700; text-align:left; }.find-current-book:hover { color:var(--green); text-decoration:underline; text-underline-offset:3px; }
.profile-editor.hidden { display:none; }.shelf-controls { display:grid; grid-template-columns:1fr 1fr 1fr; gap:4px; margin-top:7px; }.shelf-controls button { min-height:34px; padding:0; border:1px solid #b9aa8c; border-radius:8px; color:var(--ink); background:#fffdf7cc; font-weight:800; }.shelf-controls button:disabled { opacity:.35; }.card-reading-status { flex:1 1 100%; margin:0; color:var(--muted); font-size:.72rem; }.card-reading-status select { min-height:36px; margin-top:4px; padding:0 8px; border-radius:9px; font-size:.82rem; }.details-actions .card-reading-status { flex:1 1 180px; }.reading-status-field { margin-top:22px; }.reading-status-field select { margin-top:7px; }
.global-search-filters { display:flex; align-items:end; justify-content:flex-end; flex-wrap:wrap; gap:10px; }.global-search-filters label { width:min(240px,100%); margin:0; }.global-search-filters select { margin-top:7px; }
.form-help { margin-bottom:22px; color:var(--muted); }.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.form-grid .full { grid-column:1/-1; }.form-grid label { margin:0; }.form-grid input,.form-grid select { margin-top:7px; }
.check-row { display:flex; align-items:center; gap:10px; margin-top:22px; }.check-row input { width:20px; min-height:20px; accent-color:var(--green); }.dialog-actions { display:flex; justify-content:flex-end; gap:10px; }.secondary { min-height:46px; padding:0 20px; border:1px solid var(--line); border-radius:999px; color:var(--ink); background:transparent; font-weight:750; }
#details-actions { width:100%; flex-wrap:wrap; justify-content:flex-start; }.details-actions>* ,#details-actions>* { max-width:100%; min-width:0; }.details-actions button,#details-actions button { flex:1 1 180px; white-space:normal; }.details-actions .card-reading-status,#details-actions .card-reading-status { flex:1 1 100%; } #shelf-replace-form { padding:24px; }
@media (max-width:600px) { header { align-items:start; flex-direction:column; padding-top:40px; } .header-nav { justify-content:flex-start; }.search-row { flex-direction:column; } .search-row .primary { width:100%; } .book-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; } .cover { height:190px; } .panel { padding:18px; }.compact-view .book { grid-template-columns:52px minmax(0,1fr); }.compact-view .cover { width:52px;height:76px;}.compact-view .book-info { min-height:76px;}.compact-view .book-actions { position:static; margin-top:6px; }.compact-view .details { padding-right:0; } }
@media (max-width:600px) { .header-nav { position:relative; width:100%; flex-wrap:nowrap; gap:5px; }.header-nav>* { flex:1 1 0; min-width:0; }.header-nav .view-nav { width:100%; min-height:42px; padding:0 6px; justify-content:center; font-size:clamp(.68rem,3.1vw,.82rem); line-height:1.05; text-align:center; }.header-library-menu { position:static; }.header-library-menu summary { white-space:normal; }.header-library-options { top:calc(100% + 8px); right:0; left:0; width:100%; max-height:min(60vh,420px); overflow-y:auto; } }
#browse-section { min-width:0; max-width:100%; overflow-x:hidden; } #browse-section .section-heading { flex-wrap:wrap; margin-bottom:14px; }.search-tabs { display:grid; grid-template-columns:1fr 1fr; max-width:420px; margin-bottom:18px; padding:4px; border:1px solid var(--line); border-radius:13px; background:#ece8dd; }.search-tabs button { min-height:40px; padding:0 16px; border:0; border-radius:9px; color:var(--muted); background:transparent; font-weight:800; }.search-tabs button[aria-selected="true"] { color:var(--ink); background:var(--card); box-shadow:0 2px 8px #3b33221a; }.collection-search-form { margin-bottom:20px; }.collection-search-form .search-row { flex-wrap:nowrap; }.collection-search-form .search-row input { flex:1 1 auto; width:100%; max-width:none; min-width:0; }.browse-summary { display:flex; justify-content:flex-end; }.browse-summary .count { margin:0; }
.compact-view .book { position:relative; min-height:94px; grid-template-columns:58px minmax(0,1fr); }.compact-view .cover { width:58px; height:92px; }.compact-view .book-info { min-height:92px; padding:9px 122px 9px 11px; }.compact-view .book-actions { position:absolute; top:7px; right:7px; bottom:auto; display:flex; flex-direction:column; width:108px; margin:0; gap:4px; }.compact-view .book-actions button { width:100%; min-height:24px; padding:0 7px; font-size:.74rem; white-space:nowrap; }.compact-view .details { padding-right:0; }.compact-view .availability { margin-top:5px; padding:2px 7px; }
@media (max-width:600px) { .compact-view .book { grid-template-columns:48px minmax(0,1fr); min-height:88px; }.compact-view .cover { width:48px; height:86px; }.compact-view .book-info { min-height:86px; padding-right:112px; }.compact-view .book-actions { width:100px; }.compact-view .book-actions button { font-size:.7rem; } }
.own-compact-view .book { min-height:88px; }.own-compact-view .cover { height:86px; }.own-compact-view .book-info { min-height:86px; padding-right:168px; }.own-compact-view .book-actions { display:grid; grid-template-columns:1fr 1fr; width:156px; }.own-compact-view .book-actions button { min-width:0; white-space:normal; line-height:1.05; }
@media (max-width:600px) { #browse-section .section-heading { align-items:flex-start; flex-direction:column; }.search-tabs { width:100%; max-width:none; }.search-tabs button { padding:0 8px; }.collection-search-form .search-row { flex-direction:row; }.collection-search-form .search-row .primary { width:auto; }.global-search-filters { align-items:stretch; flex-direction:column; }.global-search-filters label { width:100%; }.own-compact-view .book-info { padding-right:156px; }.own-compact-view .book-actions { width:144px; } }
@media (max-width:600px) { .profile-collection-tabs button { padding:0 4px; font-size:.7rem; line-height:1.05; } }
@media (max-width:600px) { #my-library-section .section-heading { align-items:flex-start; flex-direction:column; }.library-heading-actions { width:100%; justify-content:flex-start; }.library-heading-actions .count { flex:1 0 100%; }.library-heading-actions .view-buttons { flex:1 1 150px; }.library-heading-actions>button { flex:1 1 auto; min-width:0; padding-left:12px; padding-right:12px; } }
@media (max-width:600px) { .dev-fullscreen-row { align-items:stretch; flex-direction:column; }.dev-fullscreen-row button { width:100%; } }
@media (max-width:700px) { .profile-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; }.profile-toolbar label { width:100%; }.profile-owner-flag { align-self:center; grid-column:1; margin:0; }.profile-requests-button { grid-column:2; grid-row:1 / span 2; min-height:48px; }.profile-hero { grid-template-columns:1fr; }.profile-name-panel { min-height:210px; padding:28px; }.currently-reading-panel { min-height:0; padding:19px 22px; }.current-reading-display { min-height:92px; }.current-reading-book.no-cover { padding:5px 0; }.featured-shelf { grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; padding:12px 8px 9px; overflow:visible; border-bottom-width:11px; }.shelf-cover { min-height:106px; padding:3px; }.shelf-cover img { height:84px; }.shelf-placeholder { height:84px; font-size:.6rem; }.shelf-cover h3 { margin-top:4px; font-size:.62rem; }.shelf-controls { gap:2px; margin-top:4px; }.shelf-controls button { min-height:27px; border-radius:5px; font-size:.72rem; }.library-list-heading { align-items:flex-start; flex-direction:column; }.profile-book-controls { grid-template-columns:1fr; } }
@media (max-width:700px) { .profile-status-section>summary { min-height:58px; padding:0 15px; }.profile-status-section-body { padding:4px 12px 16px; }.profile-status-section .library-heading-actions { justify-content:flex-start; }.profile-status-section .library-heading-actions .count { flex-basis:100%; } }
@media (max-width:600px) { .auth-card { padding:26px 22px; }.generated-invite { grid-template-columns:1fr; }.generated-invite button { width:100%; }.admin-row { align-items:flex-start; flex-direction:column; }.admin-row-actions { width:100%; }.admin-row-actions button { flex:1; } }
