@import"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600&family=Geist+Mono:wght@400;500&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,600;1,6..72,400&display=swap";:root,[data-theme=light]{--bg: #ffffff;--surface: #f7f7f5;--text: #191919;--text-muted: #6b6b6b;--divider: #e6e6e6;--accent: #0f766e;--on-accent: #ffffff;--key-bg: #fef3c7;--key-text: #92400e;--metal-bronze: #b0743c;--metal-silver: #9ea7b0;--metal-gold: #d4a017;--metal-platinum: #6fb7c9;--metal-diamond: #8e7cf0;--metal-glyph: #ffffff;--danger: #b42318;--bg-elevated: var(--bg);--bg-soft: var(--surface);--ink: var(--text);--muted: var(--text-muted);--line: var(--divider);--line-strong: var(--divider);--accent-hover: color-mix(in srgb, var(--accent) 85%, var(--text));--accent-soft: color-mix(in srgb, var(--accent) 9%, transparent);--danger-soft: color-mix(in srgb, var(--danger) 10%, transparent);--ok: var(--accent);--shadow: none;--cover-shadow: 0 1px 2px rgba(0, 0, 0, .06), 0 4px 12px rgba(0, 0, 0, .08);--font-serif: "Newsreader", Georgia, "Times New Roman", serif;--font-sans: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-5: 20px;--space-8: 32px;--space-12: 48px;--radius: 4px;--radius-cover: 4px;--radius-field: 10px;--radius-pill: 999px;--tap: 44px;--nav-h: 57px;--content: 1192px;--reading: 680px;color-scheme:light}[data-theme=dark]{--bg: #121212;--surface: #1c1c1c;--text: #ededed;--text-muted: #a3a3a3;--divider: #2a2a2a;--accent: #2dd4bf;--on-accent: #121212;--key-bg: #3a2a0a;--key-text: #fcd34d;--danger: #f97066;--cover-shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 4px 12px rgba(0, 0, 0, .35);color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:var(--font-sans);font-size:15px;line-height:22px;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,.brand,.review-body,.comic-meta h3,.auth-card h1,.page-head h1{font-family:var(--font-serif);font-weight:600;letter-spacing:-.015em;line-height:1.2}.num,.tabs .count,.notif-badge{font-family:var(--font-mono);font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:color-mix(in srgb,var(--accent) 25%,transparent)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}.app-shell{min-height:100vh;background:var(--bg)}.topbar{position:sticky;top:0;z-index:20;height:var(--nav-h);display:flex;align-items:center;gap:1.5rem;padding:0 1.5rem;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px)}.brand{font-size:1.7rem;font-weight:600;letter-spacing:-.03em;white-space:nowrap}.brand-dot{color:var(--accent)}.nav{display:flex;flex-wrap:wrap;gap:1.1rem;flex:1;align-items:center}.nav a{color:var(--muted);font-size:.95rem;font-weight:500}.nav a:hover,.nav a.active{color:var(--ink)}.topbar-user{display:flex;align-items:center;gap:.65rem}.notif-bell{position:relative}.notif-trigger{position:relative;width:36px;height:36px;border:1px solid var(--line-strong);border-radius:50%;background:var(--bg-elevated);color:var(--ink);cursor:pointer;display:grid;place-items:center;font-size:.95rem;padding:0}.notif-badge{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.7rem;font-weight:600;display:grid;place-items:center;line-height:1}.notif-panel{position:absolute;right:0;top:calc(100% + .5rem);width:min(360px,calc(100vw - 1.5rem));background:var(--bg-elevated);border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 12px 40px #0000001f;z-index:40;overflow:hidden}.notif-panel-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem .9rem;border-bottom:1px solid var(--line)}.notif-list{max-height:min(360px,50vh);overflow:auto}.notif-item,.notif-row{display:flex;gap:.75rem;align-items:flex-start;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);padding:.85rem .9rem;cursor:pointer;color:inherit;font:inherit}.notif-row{padding:1.1rem 0}.notif-item:hover,.notif-row:hover{background:var(--bg-soft)}.notif-item.unread,.notif-row.unread{background:var(--accent-soft)}.notif-copy{display:flex;flex-direction:column;gap:.2rem;min-width:0;flex:1}.notif-copy p{margin:0}.notif-empty{padding:1.25rem .9rem;margin:0}.notif-footer{display:block;text-align:center;padding:.75rem;border-top:1px solid var(--line);color:var(--muted);font-weight:600;font-size:.9rem}.notif-footer:hover{color:var(--ink)}.user-chip{font-size:.92rem;font-weight:600;color:var(--muted)}.user-chip:hover{color:var(--ink)}.theme-toggle{width:36px;height:36px;border:1px solid var(--line-strong);border-radius:50%;background:var(--bg);color:var(--ink);display:inline-grid;place-items:center;cursor:pointer;padding:0}.locale-toggle{width:auto;min-width:36px;padding:0 .45rem;border-radius:999px;font-size:.68rem;font-weight:600;letter-spacing:.02em}.theme-toggle:hover{border-color:var(--muted)}.theme-menu{position:relative}.theme-menu-panel{position:absolute;right:0;top:calc(100% + 8px);min-width:160px;background:var(--bg-elevated);border:1px solid var(--line-strong);border-radius:8px;padding:.35rem;box-shadow:0 8px 30px #00000014;z-index:30}.theme-menu-panel button{width:100%;text-align:left;border:0;background:transparent;padding:.55rem .7rem;border-radius:6px;cursor:pointer;color:var(--ink);font-size:.92rem}.theme-menu-panel button:hover,.theme-menu-panel button.active{background:var(--bg-soft)}.theme-menu-panel button.active{font-weight:600}.main{width:100%}.page{width:min(var(--content),calc(100% - 2rem));margin:0 auto;padding:2.5rem 0 4rem}.mobile-only,.nav-mobile-only,.menu-backdrop{display:none}.menu-toggle{width:40px;height:40px;border:0;background:transparent;color:var(--ink);font-size:1.35rem;line-height:1;cursor:pointer;padding:0;border-radius:50%}.nav-logout{border:0;background:none;padding:0;font:inherit;text-align:left;cursor:pointer}h1,h2,h3,p,dd{overflow-wrap:anywhere}.page.detail,.page.narrow{width:min(var(--reading),calc(100% - 2rem))}.page-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}.shelf-summary{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1.25rem 1.75rem;margin:0 0 1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--line)}.shelf-stat{display:flex;flex-direction:column;gap:.2rem;min-width:4.5rem;border:0;background:none;padding:0;color:inherit;text-align:left}button.shelf-stat{cursor:pointer}button.shelf-stat:hover span{color:var(--ink)}.shelf-stat strong{font-family:var(--font-serif);font-size:1.7rem;line-height:1}.shelf-stat span{color:var(--muted);font-size:.82rem}.shelf-stat.private{min-width:7rem}.shelf-stat.private strong{font-size:1.35rem;letter-spacing:-.02em}.shelf-stat.private span{font-size:.78rem}.shelf-stat-hint{color:var(--accent)!important;font-size:.72rem!important;font-weight:500}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr));gap:1.25rem}.stats-card{margin:0;padding:1rem 1.1rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0}.stats-card h2{margin:0 0 .85rem;font-size:1rem}.stats-bars{display:flex;flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none}.stats-bars li{display:grid;grid-template-columns:minmax(0,9rem) minmax(0,1fr) 2.5rem;align-items:center;gap:.6rem;font-size:.88rem}.stats-bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stats-bar-track{height:.6rem;border-radius:999px;background:var(--line);overflow:hidden}.stats-bar-fill{display:block;height:100%;min-width:2px;border-radius:inherit;background:var(--accent)}.stats-bar-count{font-variant-numeric:tabular-nums;text-align:right}.stats-scale{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));align-items:end;gap:.3rem;height:9rem}.stats-scale-col{display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;height:100%;text-align:center;font-size:.75rem}.stats-scale-bar{display:block;border-radius:3px 3px 0 0;background:var(--accent)}.stats-scale-count{color:var(--muted);font-variant-numeric:tabular-nums;min-height:1.1em}.stats-scale-value{padding-top:.25rem;border-top:1px solid var(--line-strong);color:var(--muted)}.stats-footnote{margin:.75rem 0 0;font-size:.82rem}.private-block{display:flex;flex-direction:column;gap:.75rem;padding:.85rem .9rem;border:1px dashed var(--line-strong);border-radius:10px;background:var(--bg-soft)}.private-block-label{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.collection-edit-modal{max-height:min(90vh,720px);overflow-y:auto}.series-chips{display:flex;flex-wrap:wrap;gap:.4rem;flex:1;min-width:12rem}.series-chips .filter-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-elevated);color:var(--ink);border:1px solid color-mix(in srgb,var(--ink) 45%,transparent);padding:.32rem .85rem;font-weight:600;cursor:pointer}.series-chips .filter-chip span{color:var(--ink);font-weight:500}.series-chips .filter-chip:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.series-chips .filter-chip:hover span{color:var(--bg)}.sort-controls{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.sort-select{width:auto;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--bg);color:var(--ink);padding:.4rem .8rem;font-size:.88rem}.copy-line{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:.82rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.page-heading{margin-bottom:1rem}.page-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.view-toggle{display:inline-flex;border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:2px}.view-toggle button{border:0;background:transparent;color:var(--muted);border-radius:var(--radius-pill);padding:.35rem .8rem;font-size:.88rem;font-weight:600;cursor:pointer}.view-toggle button.active{background:var(--ink);color:var(--bg)}.collection-medium{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.collection-medium button{border:1px solid var(--line-strong);background:transparent;color:var(--muted);border-radius:var(--radius-pill);padding:.4rem .85rem;font-size:.88rem;font-weight:600;cursor:pointer}.collection-medium button.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.comic-rows{display:flex;flex-direction:column}.comic-row{display:flex;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--line)}.comic-row-main{display:flex;gap:1rem;align-items:flex-start;flex:1;min-width:0;color:inherit;text-decoration:none}.comic-row-main:hover{opacity:.88}.comic-row .comic-cover{width:64px;height:86px;flex-shrink:0;aspect-ratio:auto}.comic-row .comic-meta{padding:0;min-width:0;flex:1}.comic-row-actions{display:flex;flex-direction:column;gap:.4rem;flex-shrink:0;align-items:stretch;min-width:9.5rem}.comic-row-actions .btn{white-space:nowrap;font-size:.85rem;padding:.4rem .75rem;min-height:0}.comic-row-btn-icon{display:none}.comic-row-actions .comic-row-btn.read.done{background:var(--ok);border-color:var(--ok);color:#fff}.comic-row-error{font-size:.78rem;max-width:10rem}.batch-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1rem;padding:.85rem 0;border-bottom:1px solid var(--line);position:sticky;top:var(--nav-h);z-index:10;background:color-mix(in srgb,var(--bg) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.batch-all{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;cursor:pointer}.filter-check{display:inline-flex;align-items:center;gap:.5rem;margin:-.5rem 0 1rem;font-size:.95rem;cursor:pointer;-webkit-user-select:none;user-select:none}.filter-check input{width:1.05rem;height:1.05rem;accent-color:var(--accent);cursor:pointer}.comic-row-select{cursor:pointer;align-items:center}.comic-row-select>input[type=checkbox]{width:1.15rem;height:1.15rem;flex-shrink:0;accent-color:var(--accent);cursor:pointer}.comic-row-select .comic-row-main{pointer-events:none}.comic-row-select.selected{background:var(--accent-soft);margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem;border-radius:6px}.collection-tile .comic-meta{flex:1;display:flex;flex-direction:column}.collection-tile .comic-meta .badge{align-self:flex-start}.collection-tile .actions{margin-top:auto;padding-top:.55rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.collection-tile .actions .btn{padding:.3rem .65rem;font-size:.8rem}.collection-tile .actions .btn:last-child:nth-child(odd){grid-column:1 / -1}.page-head h1{font-size:clamp(2rem,4vw,2.5rem);line-height:1.1;margin:0 0 .35rem}.site-footer{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;justify-content:center;padding:1.5rem 1rem 2.5rem;color:var(--muted);font-size:.9rem}.site-footer a{color:inherit}.site-footer a:hover{color:var(--ink)}.feedback-message{margin:.35rem 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.play-badge{display:inline-flex;line-height:0}.muted{color:var(--muted);margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:40px;border:1px solid var(--ink);background:transparent;color:var(--ink);padding:.5rem 1.1rem;border-radius:var(--radius-pill);cursor:pointer;font-size:.92rem;font-weight:500;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:hover{background:var(--surface)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.dark{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn.small{min-height:32px;padding:.25rem .75rem;font-size:.85rem}@media (pointer: coarse){.btn{min-height:var(--tap)}}.btn.danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,var(--line-strong))}.btn.ghost{background:transparent;border-color:transparent;color:var(--ink)}.btn.ghost:hover{color:var(--ink)}.btn:disabled{background:var(--surface);border-color:var(--surface);color:var(--muted);cursor:not-allowed}.filters,.form-grid,.auth-card,.modal,.review-card,.stack-item,.comment{background:transparent;border:0;border-radius:0;box-shadow:none}.filter-selects{display:none}.filters-toggle{display:inline-flex;align-items:center;white-space:nowrap}.filters-toggle:after{content:"";width:.4rem;height:.4rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.1rem) rotate(45deg);transition:transform .15s ease}.filters-toggle[aria-expanded=true]:after{transform:translateY(.12rem) rotate(225deg)}.filters{display:grid;grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr)) auto;gap:.75rem;padding:0 0 1.5rem;margin-bottom:.5rem;border-bottom:1px solid var(--line)}.search-count{margin:0 0 .75rem;font-size:.9rem}.filters input[type=search]{-webkit-appearance:none;-moz-appearance:none;appearance:none}.filters input,.filters select,label input,label textarea,label select,.comment-form textarea{width:100%;border:1px solid transparent;border-radius:var(--radius-field);padding:.7rem .85rem;background:var(--surface);color:var(--ink);outline:none}.filters input:focus,.filters select:focus,label input:focus,label textarea:focus,label select:focus,.comment-form textarea:focus{border-color:var(--accent)}.filters input[aria-invalid=true],label input[aria-invalid=true],label textarea[aria-invalid=true]{border-color:var(--danger)}input::placeholder,textarea::placeholder{color:var(--muted)}.comic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.5rem 1rem;padding-top:1.5rem}.comic-card{display:flex;flex-direction:column;min-width:0;background:transparent;border:0;border-radius:0;overflow:visible;box-shadow:none;transition:opacity .15s ease}.comic-card:hover{opacity:.88}.comic-cover{position:relative;aspect-ratio:2 / 3;background:var(--bg-soft);overflow:hidden;border-radius:var(--radius-cover);box-shadow:var(--cover-shadow)}.comic-cover img,.detail-cover img,.review-comic img,.stack-comic img{width:100%;height:100%;object-fit:cover;display:block}.cover-fallback{width:100%;height:100%;display:grid;place-items:center;font-family:var(--font-serif);font-weight:600;font-size:2rem;background:var(--surface);color:var(--muted)}.comic-meta{padding:.75rem 0 0;min-width:0}.comic-meta h3{font-size:1rem;font-weight:600;margin:0}.comic-card .comic-meta h3,.comic-card .comic-meta h3 a{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal}.comic-meta p{margin:.25rem 0 0;color:var(--muted);font-size:.88rem}.comic-meta p.comic-stats,.comic-stats{display:flex;flex-wrap:wrap;gap:.15rem .75rem;font-size:.8rem;color:var(--muted)}.detail-stats{font-size:.95rem;margin:.6rem 0 0}.detail-stats strong{color:var(--ink)}.comic-taxonomy>*+*:before{content:"·";margin:0 .4em;color:var(--muted);text-decoration:none;display:inline-block}.avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;object-fit:cover;vertical-align:middle}.avatar-fallback{color:#fff;font-family:var(--font-sans);font-weight:600;letter-spacing:.02em;-webkit-user-select:none;user-select:none}.user-link{display:inline-flex;align-items:center;gap:.5rem}.btn.ghost.likers-button{color:var(--muted);padding-inline:.4rem}.btn.ghost.likers-button:hover{color:var(--ink);text-decoration:underline}.likers-modal{gap:.75rem}.likers-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.likers-head h2{margin:0;font-size:1.25rem}.likers-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.profile-head{display:flex;align-items:center;gap:1.25rem}.publisher-head{display:flex;align-items:flex-start;gap:1rem}.publisher-logo{width:72px;height:72px;object-fit:contain;flex-shrink:0;border-radius:8px;background:var(--bg-soft);border:1px solid var(--line)}.publisher-head-text{min-width:0;flex:1}.publisher-description{margin:.5rem 0 0;max-width:42rem;line-height:1.45;color:var(--ink)}.read-progress{display:flex;align-items:center;gap:.65rem;margin-top:.45rem;max-width:18rem}.read-progress-track{flex:1;height:6px;border-radius:var(--radius-pill);background:var(--line-strong);overflow:hidden}.read-progress-fill{height:100%;border-radius:inherit;background:var(--accent)}.read-progress-label{color:var(--muted);font-size:.82rem;white-space:nowrap}.series-completion{margin-top:1.25rem;padding:1rem 1.1rem;border:1px solid var(--line-strong);border-radius:var(--radius-field);background:var(--bg-soft)}.series-completion-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.series-completion-head h2{margin:0;font-size:1rem}.series-completion-count{font-family:var(--font-mono);font-size:.95rem;font-variant-numeric:tabular-nums}.series-completion-track{height:8px;margin-top:.6rem;border-radius:var(--radius-pill);background:var(--line-strong);overflow:hidden}.series-completion-fill{height:100%;border-radius:inherit;background:var(--accent)}.series-completion-done,.series-completion-notice{margin:.75rem 0 0}.series-completion-notice{color:var(--accent);font-size:.9rem}.series-completion-bar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:.85rem}.series-missing{display:flex;flex-wrap:wrap;gap:.35rem;margin:.75rem 0 0;padding:0;list-style:none}.series-missing-issue{display:inline-block;min-width:2.6rem;padding:.2rem .5rem;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--bg);color:var(--ink);font-family:var(--font-mono);font-size:.82rem;font-variant-numeric:tabular-nums;text-align:center;text-decoration:none}.series-missing-issue:hover{border-color:var(--accent);color:var(--accent)}.series-missing-issue.wished{border-style:dashed;border-color:var(--accent);background:var(--accent-soft)}.series-missing-issue.unnumbered{max-width:14rem;overflow:hidden;font-family:var(--font-sans);text-overflow:ellipsis;white-space:nowrap}.series-missing-toggle{margin-top:.6rem}.currently-reading{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;padding:.85rem 1rem;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-soft)}.currently-reading-cover{width:52px;flex-shrink:0;aspect-ratio:2 / 3;overflow:hidden;border:1px solid var(--line);background:var(--bg)}.currently-reading-cover img,.currently-reading-cover .cover-fallback{width:100%;height:100%;object-fit:cover;display:block}.currently-reading-body{flex:1;min-width:0}.currently-reading-label{margin:0 0 .15rem;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent)}.currently-reading-title{font-family:var(--font-serif);font-weight:600;font-size:1.05rem}.currently-reading-series,.currently-reading-error,.currently-reading-empty{margin:.15rem 0 0}.currently-reading-error{color:var(--danger);font-size:.85rem}.currently-reading-empty{margin-top:1.25rem}.favorite-comics{margin-top:2rem}.favorite-comics-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;max-width:560px}.favorite-comic{display:flex;flex-direction:column;gap:.4rem;color:inherit;text-decoration:none}.favorite-comic-cover,.favorite-comic-empty{display:block;width:100%;aspect-ratio:2 / 3;overflow:hidden;border-radius:var(--radius-cover);background:var(--bg-soft)}.favorite-comic-cover{border:1px solid var(--line)}.favorite-comic-cover img,.favorite-comic-cover .cover-fallback{width:100%;height:100%;object-fit:cover;display:grid;place-items:center}.favorite-comic:hover .favorite-comic-cover{border-color:var(--accent)}.favorite-comic-title{font-size:.82rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.favorite-comic-empty{border:1px dashed var(--line-strong);color:var(--muted);font-size:1.6rem;cursor:pointer}.favorite-comic-empty:hover{border-color:var(--accent);color:var(--accent)}.favorites-modal{width:min(560px,100%);max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);overflow-y:auto;overscroll-behavior:contain}.favorites-modal>*{flex-shrink:0}.favorites-modal>p{margin:0}.favorites-picked{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.favorites-picked li:not(.muted){display:grid;grid-template-columns:1.25rem 36px 1fr auto;gap:.6rem;align-items:center}.favorites-picked-pos{color:var(--muted);font-variant-numeric:tabular-nums}.favorites-picked img,.favorites-picked .cover-fallback{width:36px;height:52px;object-fit:cover;border-radius:var(--radius-cover);display:grid;place-items:center;background:var(--bg-soft)}.favorites-picked strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorites-picked-actions{display:flex;gap:.15rem}.favorites-search-results{margin-top:0;max-height:320px;overflow-y:auto}@media (max-width: 520px){.favorites-picked li:not(.muted){grid-template-columns:1.25rem 36px 1fr}.favorites-picked-actions{grid-column:2 / -1}.modal-backdrop:has(.favorites-modal){align-items:start}.favorites-search-results{max-height:none}}.avatar-editor{display:flex;align-items:center;gap:1rem}.avatar-editor .actions{margin:0}.shelf-photos{margin-top:2rem}.shelf-photos .section-head{margin-bottom:.5rem}.shelf-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.65rem;margin-top:1rem}.shelf-photo-card{display:flex;flex-direction:column;gap:.4rem}.shelf-photo-thumb{display:block;width:100%;padding:0;border:1px solid var(--line-strong);border-radius:6px;overflow:hidden;background:var(--bg-soft);cursor:pointer;aspect-ratio:4 / 3}.shelf-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.shelf-photo-thumb:hover{opacity:.92}.shelf-photo-title{font-weight:600;font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shelf-photo-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.shelf-photo-lightbox-head h3{margin:0;font-size:1.15rem;overflow-wrap:anywhere}.shelf-photo-title-form{display:flex;gap:.5rem;flex-wrap:wrap}.shelf-photo-title-form input{flex:1 1 14rem;min-width:0}.shelf-photo-meta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.82rem}.shelf-photo-meta .btn{min-height:0;padding:.2rem .55rem;font-size:.8rem}.shelf-photo-lightbox{background:var(--bg-elevated);border:1px solid var(--line-strong);border-radius:12px;padding:1rem;width:min(920px,100%);max-height:min(92vh,960px);overflow:auto;display:grid;gap:.85rem}.shelf-photo-lightbox img{width:100%;max-height:min(50vh,520px);object-fit:contain;background:var(--bg-soft);border-radius:6px}.shelf-photo-comments h3{margin:0 0 .75rem;font-size:1.1rem}.people-links a+a:before{content:", ";color:var(--ink);display:inline-block;white-space:pre}.filter-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem}.filter-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .4rem .25rem .75rem;border:1px solid var(--line-strong);border-radius:999px;font-size:.85rem}.filter-chip button{border:0;background:none;color:var(--muted);font-size:1rem;line-height:1;cursor:pointer;padding:0 .25rem}.filter-chip button:hover{color:var(--ink)}button.stat-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;margin:0;font:inherit}.stat-link,.people-links a,.comic-taxonomy a,.detail-stats a{color:inherit;text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px;cursor:pointer}.stat-link:hover,.people-links a:hover,.comic-taxonomy a:hover,.detail-stats a:hover{color:var(--ink);text-decoration-color:currentColor}.holder-list{list-style:none;margin:1.5rem 0 0;padding:0;border-top:1px solid var(--line)}.holder-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.holder-row p{margin:.2rem 0 0;font-size:.85rem}.holder-user{display:flex;align-items:center;gap:.75rem}.holder-name{font-weight:600;color:var(--ink)}.holder-side{display:flex;gap:1rem;align-items:center;font-size:.9rem;text-align:right}.badges{display:flex;gap:.35rem;margin-top:.45rem}.badge{font-size:.75rem;font-weight:500;line-height:1.4;padding:.15rem .55rem;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);border:0}.badge.key{background:var(--key-bg);color:var(--key-text)}.badge.ok{background:var(--accent-soft);color:var(--accent)}.badge.wish{background:var(--bg-soft);color:var(--ink)}.badge.reading{background:var(--accent-soft);color:var(--accent);border-color:transparent}.pager{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2.5rem;color:var(--muted)}.infinite-sentinel{min-height:1px;padding:1.25rem 0 2rem;display:grid;place-items:center}.back-to-top{position:fixed;right:max(1.25rem,env(safe-area-inset-right));bottom:max(1.25rem,env(safe-area-inset-bottom));z-index:35;width:2.75rem;height:2.75rem;border-radius:999px;border:1px solid var(--line);background:var(--bg);color:var(--ink);box-shadow:0 8px 24px #0000001f;font-size:1.15rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .15s ease,color .15s ease,transform .15s ease}.back-to-top:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-2px)}.detail-hero{display:grid;grid-template-columns:200px 1fr;gap:2rem;margin-bottom:2.5rem}.moderator-fix{margin:.35rem 0 1rem}.detail-cover{border-radius:var(--radius-cover);overflow:hidden;box-shadow:var(--cover-shadow);background:var(--bg-soft);aspect-ratio:2 / 3}.facts{display:grid;grid-template-columns:110px 1fr;gap:.4rem .75rem;margin:1.25rem 0;font-size:.95rem}.facts dt{color:var(--muted)}.facts dd{margin:0}.actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.more-menu{position:relative}.more-menu-toggle{min-width:40px;padding-inline:.5rem;font-size:1.2rem;line-height:1;color:var(--muted)}.more-menu-list{position:absolute;top:calc(100% + 4px);right:0;z-index:20;display:flex;flex-direction:column;min-width:160px;padding:.25rem;background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-field);box-shadow:0 6px 20px #0000001f}.more-menu-list button{text-align:left;background:transparent;border:0;border-radius:var(--radius);padding:.6rem .75rem;font:inherit;font-size:.92rem;color:var(--ink);cursor:pointer}.more-menu-list button:hover{background:var(--surface)}.more-menu-list button.danger{color:var(--danger)}.my-reads{margin-top:.85rem}.my-reads-list{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-direction:column;gap:.25rem}.my-reads-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.92rem}.my-read-meta,.read-meta{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}.reread-mark{display:inline-flex;align-items:center;gap:.25rem;color:var(--accent);font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.reread-mark svg{width:.95rem;height:.95rem;flex:none}.modal label.check-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:.5rem}.modal label.check-row input{width:auto;flex:none}.report-reasons{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.announcement-message{margin:0 0 4px;white-space:pre-wrap;overflow-wrap:anywhere}.report-excerpt{margin:.4rem 0 0;padding:.5rem .75rem;border-left:3px solid var(--line-strong);white-space:pre-line;overflow-wrap:anywhere}.admin-search{display:flex;gap:.5rem;margin-bottom:1rem}.admin-search input{flex:1}.admin-merge-banner{position:sticky;top:.5rem;z-index:2;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem}.admin-row>div:first-child{flex:1;min-width:0}.admin-row-main{display:flex;gap:.85rem;align-items:flex-start}.admin-row-copy{flex:1;min-width:0}.admin-row-cover{flex-shrink:0}.role-select{min-width:8.5rem;padding:.4rem .55rem;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--bg);color:var(--ink);font-size:.88rem}.admin-edit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:1rem}.admin-edit .full{grid-column:1 / -1}.admin-reject{display:flex;flex-direction:column;gap:.6rem;width:min(22rem,100%)}.admin-row:has(.admin-duplicate){flex-wrap:wrap}.admin-duplicate{order:1;flex-basis:100%;display:flex;flex-direction:column;gap:.6rem;padding:.75rem 1rem;border-left:3px solid var(--danger);border-radius:6px;background:var(--danger-soft)}.admin-duplicate p{margin:0;overflow-wrap:anywhere}.admin-cover-field{display:flex;flex-wrap:wrap;align-items:flex-end;gap:1rem}.admin-cover-preview{width:96px;aspect-ratio:2 / 3;border-radius:4px;overflow:hidden;border:1px solid var(--line);background:var(--bg-soft);flex-shrink:0}.admin-cover-preview img{width:100%;height:100%;object-fit:cover;display:block}.admin-cover-field label{flex:1;min-width:12rem}.proposal-detail{display:flex;gap:1rem;align-items:flex-start;flex:1;min-width:0}.proposal-cover{width:72px}.proposal-detail-body{flex:1;min-width:0}.proposal-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.55rem 1rem;margin:.75rem 0 0}.proposal-field{margin:0}.proposal-field dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:0 0 .15rem}.proposal-field dd{margin:0;font-size:.95rem;word-break:break-word}.proposal-image-url{margin:.65rem 0 0;font-size:.85rem;overflow-wrap:anywhere}.proposal-image-url a{color:var(--accent)}.proposal-note{margin:.65rem 0 0}.pager{display:flex;align-items:center;gap:.75rem;margin-top:1rem}.review-list,.stack-list,.comment-list{display:flex;flex-direction:column}.comment-reply{margin-left:1.25rem;padding-top:1rem;border-bottom:0}.comment-replies{margin-top:.5rem;border-left:2px solid var(--line);padding-left:.75rem}.comment-reply-banner{display:flex;align-items:center;justify-content:space-between;gap:.75rem;font-size:.9rem;color:var(--muted)}.comment-composer{position:relative}.mention-suggestions{position:absolute;left:0;right:0;top:calc(100% - .25rem);z-index:5;margin:0;padding:.35rem 0;list-style:none;background:var(--bg);border:1px solid var(--line-strong);border-radius:8px;box-shadow:0 8px 24px #00000014;max-height:220px;overflow:auto}.mention-suggestions button{display:block;width:100%;text-align:left;border:0;background:transparent;color:var(--ink);padding:.45rem .85rem;cursor:pointer}.mention-suggestions button:hover{background:var(--line)}.comment-mention{font-weight:600;color:var(--ink);text-decoration:none}.comment-mention:hover{text-decoration:underline}.review-card,.stack-item,.comment{padding:1.5rem 0;border-bottom:1px solid var(--line)}.review-card.large{padding-top:0}.review-card-head,.stack-item{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.review-card-head a,.review-card-head strong{font-weight:600}.feed-activity{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0}.review-comic,.stack-comic{display:flex;gap:1rem;margin:.9rem 0}.review-comic img,.stack-comic img{width:56px;height:78px;border-radius:var(--radius-cover);object-fit:cover;border:1px solid var(--line)}.feed-list{display:flex;flex-direction:column}.feed-card{display:flex;flex-direction:column;gap:.75rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}.feed-card:first-child{padding-top:0}.feed-card-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.35rem 1rem}.feed-card-head .feed-activity{flex:1 1 18rem}.feed-card-head .user-link{font-weight:600}.feed-card-aside{flex:0 0 auto;font-size:.9rem;font-weight:600;color:var(--accent)}.feed-card .review-actions{margin-top:0}.feed-comic{display:flex;gap:1rem;align-items:flex-start}.feed-comic .cover-thumb{flex:0 0 auto}.feed-comic-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:.2rem}.feed-comic-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;line-height:1.25;color:inherit}.feed-comic-title:hover{color:var(--accent)}.feed-comic-series,.feed-comic-note{margin:0;font-size:.9rem}.feed-rating{margin:.15rem 0 0;font-weight:600;color:var(--accent)}.feed-comic-text .review-body{font-size:16px;line-height:26px;margin-top:.35rem}.feed-comic-text .review-body.prose>:first-child{margin-top:0}.feed-comic-text .review-body.prose>:last-child{margin-bottom:0}.feed-empty{padding:1.5rem 0}.feed-skeleton-line,.feed-skeleton-cover{border-radius:var(--radius);background:var(--bg-soft);animation:feed-skeleton-pulse 1.4s ease-in-out infinite}.feed-skeleton-line{height:.9rem;width:70%}.feed-skeleton-head{width:45%}.feed-skeleton-short{width:40%;margin-top:.5rem}.feed-skeleton-cover{width:56px;height:84px;flex:0 0 auto}@keyframes feed-skeleton-pulse{50%{opacity:.5}}@media (prefers-reduced-motion: reduce){.feed-skeleton-line,.feed-skeleton-cover{animation:none}}.feed-shelf-link{display:block;margin:.9rem 0;max-width:280px}.feed-shelf-photo{display:block;width:100%;max-height:220px;object-fit:cover;border-radius:4px;border:1px solid var(--line);background:var(--bg-soft)}.list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;margin:1rem 0 1.5rem}.list-card{display:flex;flex-direction:column;gap:.75rem;color:inherit}.list-card-covers{--slant-angle: -16deg;display:flex;aspect-ratio:16 / 10;overflow:hidden;border-radius:14px;background:var(--bg);border:1px solid var(--line)}.list-card-cover-slice{position:relative;flex:1 1 0;min-width:0;height:100%;overflow:hidden;transform:skew(var(--slant-angle));margin:0 1.5px;background:var(--bg-soft)}.list-card-covers[data-count="1"] .list-card-cover-slice{transform:none;margin:0}.list-card-covers[data-count="1"] .list-card-cover-slice img,.list-card-covers[data-count="1"] .list-card-cover-slice .cover-fallback{transform:none;left:0;width:100%}.list-card-cover-slice:first-child{margin-left:-18px}.list-card-cover-slice:last-child{margin-right:-18px}.list-card-covers img,.list-card-covers .cover-fallback{position:absolute;top:0;right:0;bottom:0;left:-22%;width:144%;height:100%;object-fit:cover;transform:skew(16deg);min-height:0;display:block}.list-card-body h3{margin:0;font-size:1.05rem;font-family:var(--font-serif)}.list-card-body p{margin:.2rem 0 0;font-size:.92rem}.list-description{margin:.75rem 0 0;max-width:42rem;line-height:1.55;white-space:pre-wrap}.ranked-list{list-style:none;margin:1.5rem 0 0;padding:0;display:flex;flex-direction:column;gap:1rem}.ranked-list-item{display:grid;grid-template-columns:2.5rem 1fr auto;gap:.85rem;align-items:start;padding-bottom:1rem;border-bottom:1px solid var(--line)}.ranked-list-pos{font-family:var(--font-serif);font-size:1.5rem;font-weight:600;line-height:1.1;color:var(--accent)}.ranked-list-comic{display:flex;gap:.9rem;min-width:0;color:inherit}.ranked-list-comic .comic-cover{width:64px;flex:0 0 64px;aspect-ratio:2 / 3}.ranked-list-note{margin:.35rem 0 0;color:var(--muted);font-size:.95rem}.list-editor{display:flex;flex-direction:column;gap:1.25rem;max-width:720px}.list-editor label{display:flex;flex-direction:column;gap:.4rem}.list-editor-search h2,.list-editor section h2{margin:0 0 .65rem;font-size:1.2rem}.list-search-results{list-style:none;margin:.65rem 0 0;padding:0;border:1px solid var(--line);border-radius:4px;overflow:hidden}.list-search-results li{border-bottom:1px solid var(--line)}.list-search-results li:last-child{border-bottom:0}.list-search-results li.muted{padding:.75rem 1rem}.list-search-row{width:100%;display:grid;grid-template-columns:40px 1fr auto;gap:.75rem;align-items:center;padding:.55rem .75rem;border:0;background:transparent;text-align:left;cursor:pointer}.list-search-row:disabled{opacity:.55;cursor:default}.list-search-row img,.list-search-row .cover-fallback{width:40px;height:56px;object-fit:cover;border-radius:var(--radius-cover);display:grid;place-items:center;background:var(--bg-soft)}.list-search-row span{display:flex;flex-direction:column;gap:.1rem;min-width:0}.list-editor-item-meta{display:flex;flex-direction:column;gap:.4rem;flex:1;min-width:0}.list-editor-item-actions{display:flex;flex-direction:column;gap:.35rem}.ranked-list.editor .ranked-list-item{align-items:center}.profile-lists{margin-top:2rem}.feed-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:2.5rem;align-items:start}.feed-main{min-width:0;display:flex;flex-direction:column;gap:1.75rem}.poster-rail{min-width:0}.poster-rail .section-head{margin-bottom:.75rem}.poster-rail-track{display:flex;gap:.65rem;overflow-x:auto;overflow-y:hidden;padding:.15rem 0 .5rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.poster-rail-track>*{scroll-snap-align:start;flex:0 0 auto}.cover-thumb{display:block;overflow:hidden;border-radius:var(--radius-cover);box-shadow:var(--cover-shadow);background:var(--bg-soft);transition:opacity .15s ease}.cover-thumb:hover{opacity:.88}.cover-thumb img,.cover-thumb .cover-fallback{display:block;width:100%;height:100%;object-fit:cover}.cover-thumb .cover-fallback{font-size:1.25rem}.cover-thumb-sm{width:56px;height:84px}.cover-thumb-md{width:72px;height:108px}.cover-thumb-lg{width:96px;height:144px}.list-rail-chip{display:flex;flex-direction:column;gap:.4rem;width:168px;color:inherit;text-decoration:none}.list-rail-chip:hover .list-rail-chip-title{color:var(--accent)}.list-rail-chip-covers{--slant-angle: -16deg;display:flex;height:88px;overflow:hidden;border-radius:12px;background:var(--bg);border:1px solid var(--line)}.list-rail-chip-covers .list-card-cover-slice{margin:0 1px}.list-rail-chip-covers .list-card-cover-slice:first-child{margin-left:-14px}.list-rail-chip-covers .list-card-cover-slice:last-child{margin-right:-14px}.list-rail-chip-covers[data-count="1"] .list-card-cover-slice{transform:none;margin:0}.list-rail-chip-covers[data-count="1"] .list-card-cover-slice img,.list-rail-chip-covers[data-count="1"] .list-card-cover-slice .cover-fallback{transform:none;left:0;width:100%}.list-rail-chip-covers img,.list-rail-chip-covers .cover-fallback{position:absolute;top:0;right:0;bottom:0;left:-22%;width:144%;height:100%;object-fit:cover;transform:skew(16deg);min-height:0;display:block}.list-rail-chip-title{font-family:var(--font-serif);font-size:.95rem;font-weight:600;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.list-rail-chip-user{font-size:.82rem;margin:0}.feed-cover-strip{display:flex;gap:.45rem;overflow-x:auto;padding-bottom:.15rem;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.feed-cover-strip .cover-thumb{flex:0 0 auto}.feed-cover-more{display:grid;place-items:center;flex:0 0 auto;width:56px;height:78px;border-radius:var(--radius-cover);border:1px dashed var(--line-strong);background:var(--bg-soft);color:var(--muted);font-size:.85rem;font-weight:600;text-decoration:none}.feed-cover-more:hover{color:var(--accent);border-color:var(--accent)}.feed-list-compact{display:flex;gap:.85rem;align-items:center;margin:.75rem 0;color:inherit;text-decoration:none}.feed-list-compact:hover .feed-list-compact-title{color:var(--accent)}.feed-list-compact-covers{display:flex;flex:0 0 auto}.feed-list-compact-covers img,.feed-list-compact-covers .cover-fallback{width:44px;height:62px;object-fit:cover;border-radius:var(--radius-cover);border:1px solid var(--line);background:var(--bg-soft);margin-left:-12px}.feed-list-compact-covers img:first-child,.feed-list-compact-covers .cover-fallback:first-child{margin-left:0}.feed-list-compact-title{margin:0;font-family:var(--font-serif);font-size:1.05rem;font-weight:600}.feed-list-compact-meta{margin:.2rem 0 0;font-size:.9rem}.feed-sidebar{position:sticky;top:calc(var(--nav-h) + 1rem);display:flex;flex-direction:column;gap:1.75rem}.feed-sidebar-block{display:flex;flex-direction:column;gap:.75rem}.feed-sidebar-block .section-head{margin:0}.feed-sidebar-block h2{margin:0;font-size:1.1rem;font-family:var(--font-serif)}.feed-sidebar-cta{text-align:center;align-self:stretch}.feed-sidebar-lists{display:flex;flex-direction:column;gap:1.1rem}.feed-sidebar-lists .list-card-covers{aspect-ratio:16 / 9}.feed-sidebar-mine{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.45rem}.feed-sidebar-mine li{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline;padding:.35rem 0;border-bottom:1px solid var(--line)}.feed-sidebar-mine a{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-leaderboard-period{margin:-.35rem 0 0;font-size:.82rem}.feed-leaderboard{display:flex;flex-direction:column;gap:.45rem}.feed-leaderboard h3{margin:0;font-size:.78rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.feed-leaderboard-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.feed-leaderboard-list li{display:grid;grid-template-columns:1.25rem minmax(0,1fr) auto;gap:.55rem;align-items:center;padding:.35rem 0;border-bottom:1px solid var(--line)}.feed-leaderboard-rank{font-family:var(--font-serif);font-weight:600;font-size:1rem;color:var(--muted);text-align:center}.feed-leaderboard-list .user-link{min-width:0}.feed-leaderboard-list .user-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-leaderboard-score{font-size:.78rem;white-space:nowrap}.feed-leaderboard-comic{display:flex;align-items:center;gap:.55rem;min-width:0;color:inherit;text-decoration:none}.feed-leaderboard-comic img,.feed-leaderboard-comic-fallback{width:28px;height:38px;object-fit:cover;border-radius:var(--radius-cover);border:1px solid var(--line);flex-shrink:0;background:var(--bg-soft)}.feed-leaderboard-comic-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:500}.feed-leaderboard-comic:hover .feed-leaderboard-comic-name{text-decoration:underline;text-underline-offset:2px}.feed-leaderboard-grid{display:flex;flex-direction:column;gap:1rem}.feed-leaderboard-comics{padding-top:.25rem;border-top:1px solid var(--line)}.feed-leaderboard-mobile{display:none}.feed-leaderboard-summary{display:flex;align-items:center;gap:.75rem;cursor:pointer;list-style:none}.feed-leaderboard-summary::-webkit-details-marker{display:none}.feed-leaderboard-summary-text{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.6rem;min-width:0}.feed-leaderboard-icon{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--metal-gold) 18%,transparent);color:var(--metal-gold)}.feed-leaderboard-chevron{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;margin-left:auto;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);transition:transform .15s ease}.feed-leaderboard-chevron:before{content:"";width:8px;height:8px;margin-top:-4px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}details[open]>.feed-leaderboard-summary .feed-leaderboard-chevron{transform:rotate(180deg)}.feed-leaderboard-summary:hover .feed-leaderboard-chevron{background:var(--accent-hover)}.feed-leaderboard-summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:8px}.feed-leaderboard-summary .feed-leaderboard-period{margin:0}@media (max-width: 960px){.feed-layout{grid-template-columns:1fr}.feed-sidebar{display:none}.feed-leaderboard-mobile{display:flex;flex-direction:column;gap:.75rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:12px;background:var(--accent-soft)}.feed-leaderboard-mobile .section-head{margin:0}.feed-leaderboard-mobile:not([open]){gap:0}.feed-leaderboard-mobile h2{margin:0;font-size:1.05rem;font-family:var(--font-serif)}.feed-leaderboard-mobile .feed-leaderboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem}.feed-leaderboard-mobile .feed-leaderboard-comics{grid-column:1 / -1}}@media (max-width: 420px){.feed-leaderboard-mobile .feed-leaderboard-grid{grid-template-columns:1fr}}.list-comments{margin-top:2.5rem;max-width:720px}.list-comments h2{margin:0 0 1rem;font-size:1.35rem}.review-body{font-size:18px;line-height:29px;font-weight:400;white-space:pre-wrap;margin:.5rem 0 0}.review-body.prose,.stack-review.prose{white-space:normal}.prose p{margin:0 0 .65em}.prose p:last-child{margin-bottom:0}.prose ul,.prose ol{margin:.4em 0 .65em;padding-left:1.35em}.prose a{color:var(--accent);text-decoration:underline}.prose .support-legal{margin-top:2em}.rte{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--bg-elevated);overflow:hidden}.rte-toolbar{display:flex;flex-wrap:wrap;gap:.25rem;padding:.4rem;border-bottom:1px solid var(--line);background:var(--bg-soft)}.rte-toolbar button{min-width:32px;height:32px;padding:0 .45rem;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink);font:inherit;font-weight:600;cursor:pointer}.rte-toolbar button.active,.rte-toolbar button:hover{background:var(--bg-elevated);border-color:var(--line-strong)}.rte .ProseMirror{padding:.75rem .85rem;outline:none;min-height:140px;font:inherit;line-height:1.55;color:var(--ink)}.rte .ProseMirror p{margin:0 0 .55em}.rte .ProseMirror p:last-child{margin-bottom:0}.rte .ProseMirror ul,.rte .ProseMirror ol{margin:.35em 0;padding-left:1.35em}.rte .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--muted);pointer-events:none;height:0}.modal:has(.rte){width:min(560px,100%)}.review-actions{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;color:var(--muted);font-size:.9rem;margin-top:.85rem}.review-actions a{color:var(--accent);font-weight:600}.feed-like-btn{padding:.2rem .55rem;font-size:.9rem;min-height:auto;color:var(--muted)}.feed-like-btn.liked{color:var(--accent)}.auth-page{min-height:100vh;display:grid;place-items:center;padding:2rem 1rem;background:var(--bg)}.landing{position:relative;min-height:100vh;min-height:100dvh;overflow-x:hidden;color:var(--ink);background:var(--bg)}.landing-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:var(--bg)}.landing-top{position:relative;z-index:2;display:flex;justify-content:flex-end;align-items:center;gap:1rem;padding:1.25rem clamp(1.25rem,4vw,2.5rem)}.landing-top-brand{margin-right:auto;font-family:var(--font-serif);font-weight:600;font-size:1.15rem;letter-spacing:-.02em}.landing-stage{position:relative;z-index:1;width:min(1080px,calc(100% - 2.5rem));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,340px);gap:clamp(2.5rem,6vw,5rem);align-items:start;padding:2.5rem 0 1.25rem}.landing-stage-register{min-height:calc(100dvh - 6rem);align-items:center;grid-template-columns:minmax(0,1fr) minmax(280px,360px)}.landing-register .landing-stage{padding-bottom:3rem}.landing-hero{max-width:32rem;padding-bottom:.25rem;animation:landing-rise .7s ease both}.landing-brand{margin:0 0 1.1rem;font-family:var(--font-serif);font-size:clamp(3.2rem,7vw,5rem);font-weight:600;line-height:.95;letter-spacing:-.045em}.landing-tag{margin:0 0 .75rem;font-family:var(--font-serif);font-size:clamp(1.35rem,2.4vw,1.75rem);font-weight:600;line-height:1.3;letter-spacing:-.02em;max-width:22ch;color:var(--ink);animation:landing-rise .7s ease .08s both}.landing-lead{margin:0 0 1.5rem;font-size:1.05rem;line-height:1.55;color:var(--muted);max-width:32ch;animation:landing-rise .7s ease .16s both}.landing-cta{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.25rem;animation:landing-rise .7s ease .24s both}.landing-text-link{color:var(--muted);font-size:.98rem;border-bottom:1px solid color-mix(in srgb,var(--muted) 45%,transparent);padding-bottom:.1rem;transition:color .15s ease,border-color .15s ease}.landing-text-link:hover{color:var(--ink);border-color:var(--ink)}.landing-form{display:flex;flex-direction:column;gap:.9rem;padding:0;animation:landing-rise .7s ease .18s both}.landing-form h2{margin:0 0 .15rem;font-family:var(--font-serif);font-size:1.35rem;font-weight:600}.landing-form label{display:flex;flex-direction:column;gap:.4rem;font-size:.875rem;font-weight:500;color:var(--ink)}.landing-form .btn{margin-top:.35rem;align-self:flex-start;min-width:9rem}.landing-shelf{position:relative;z-index:1;width:100%;margin-top:.5rem;padding:0 0 .25rem;animation:landing-rise .85s ease .3s both}.landing-shelf-track{display:flex;gap:.65rem;width:min(1080px,calc(100% - 2.5rem));margin:0 auto;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}.landing-shelf-track img{flex:1 1 0;width:0;min-width:0;aspect-ratio:2 / 3;object-fit:cover;border-radius:3px;background:var(--line)}.landing-guide{position:relative;z-index:1;width:min(1080px,calc(100% - 2.5rem));margin:0 auto;padding:3.5rem 0 4.5rem;scroll-margin-top:1.25rem;border-top:1px solid var(--line)}.landing-guide h2{margin:0 0 .4rem;font-family:var(--font-serif);font-size:clamp(1.4rem,2.5vw,1.7rem);font-weight:600}.landing-guide-lead{margin:0 0 2rem;max-width:36ch;color:var(--muted);line-height:1.5}.landing-basics{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.75rem 1.5rem}.landing-basics li{display:flex;flex-direction:column;gap:.55rem;padding-top:1rem;border-top:1px solid var(--line-strong)}.landing-basics-n{font-size:.8rem;font-weight:600;letter-spacing:.06em;color:var(--accent)}.landing-basics strong{display:block;font-size:1.02rem;font-weight:600}.landing-basics p{margin:0;color:var(--muted);line-height:1.45;font-size:.94rem}@keyframes landing-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.landing-hero,.landing-tag,.landing-lead,.landing-cta,.landing-form,.landing-shelf{animation:none}}@media (max-width: 860px){.landing-stage,.landing-stage-register{grid-template-columns:1fr;width:min(100%,calc(100% - 2rem));min-height:auto;gap:2.5rem;padding:.75rem 0 1.5rem;align-items:start}.landing-brand{font-size:clamp(2.6rem,13vw,3.6rem)}.landing-tag{max-width:none}.landing-form{scroll-margin-top:1.25rem;max-width:360px}.landing-stage-register .landing-hero .landing-brand,.landing-shelf{display:none}.landing-guide{width:min(100%,calc(100% - 2rem));padding:2.5rem 0 3.5rem}.landing-basics{grid-template-columns:1fr 1fr;gap:1.25rem}}@media (max-width: 520px){.landing-basics{grid-template-columns:1fr}}.auth-card,.modal{width:min(420px,100%);padding:0;display:flex;flex-direction:column;gap:.9rem}.auth-card h1{font-size:2.2rem;margin:0}.auth-top{width:min(420px,100%);display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.auth-card label,.form-grid label,.modal label{display:flex;flex-direction:column;gap:.35rem;font-size:.92rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:0 0 2rem;margin-bottom:1rem;border-bottom:1px solid var(--line)}.form-grid .full,.form-grid .btn{grid-column:1 / -1}.publisher-picker{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.publisher-picker label{align-self:stretch}.publisher-picker-hint{margin:0;font-size:.85rem}.alert{background:var(--danger-soft);color:var(--danger);padding:.75rem .9rem;border-radius:8px;font-size:.92rem}.alert.ok{background:var(--accent-soft);color:var(--ok)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:grid;place-items:center;padding:1rem;z-index:40}.modal{background:var(--bg-elevated);border:1px solid var(--line-strong);border-radius:12px;padding:1.5rem;width:min(480px,100%);max-height:calc(100dvh - 2rem);overflow-y:auto}.modal>*{flex-shrink:0}.auth-gate-modal{width:min(420px,100%);gap:.85rem}.auth-gate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.auth-gate-head h2{margin:0;font-size:1.35rem}.auth-gate-lead{margin:0}.auth-gate-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;padding:.25rem;border:1px solid var(--line);border-radius:10px;background:var(--bg)}.auth-gate-tab{border:0;background:transparent;color:var(--muted);padding:.55rem .75rem;border-radius:8px;font:inherit;cursor:pointer}.auth-gate-tab.active{background:var(--bg-elevated);color:var(--text);box-shadow:0 0 0 1px var(--line)}.auth-gate-form{display:flex;flex-direction:column;gap:.85rem}.auth-gate-form .btn.primary{width:100%}.auth-or{display:flex;align-items:center;gap:.75rem;font-size:.8125rem;color:var(--muted)}.auth-or:before,.auth-or:after{content:"";flex:1;border-top:1px solid var(--line)}.google-signin{min-height:44px;color-scheme:normal}button.linkish{border:0;background:none;padding:0;color:var(--accent);font:inherit;cursor:pointer;text-decoration:underline}.follow-list-modal{width:min(520px,100%);max-height:min(80vh,640px);overflow:auto}.follow-list-modal .holder-list{margin-top:.5rem}.follow-list-modal .section-head h2 .muted{font-weight:400;font-size:.95rem}.review-edit{display:grid;gap:1rem;margin-top:1.25rem}.review-card-head .actions{margin:0;gap:.25rem}.comment-form{display:flex;flex-direction:column;gap:.75rem;margin:1rem 0 .5rem}.center{min-height:50vh;display:grid;place-items:center;color:var(--muted)}section{margin-top:2.75rem}section h2{font-size:1.4rem;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--line)}.also-owned{margin-top:2.5rem}.also-owned .comic-grid{padding-top:0}.also-owned-item{display:flex;flex-direction:column;min-width:0}.also-owned-count{margin-top:.35rem;font-size:.8rem}.section-head h2{margin:0;padding:0;border:0}.empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:.85rem;padding:1.5rem 0}.stack-review{margin:.4rem 0 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.stack-review.prose{white-space:normal}.stack-review.prose p{margin:0;display:inline}.stack-review.prose p:after{content:" "}.stack-review.prose ul,.stack-review.prose ol{display:inline;padding:0;margin:0}.stack-review.prose li{display:inline}@media (min-width: 861px){.filters.filters-wide{grid-template-columns:minmax(0,1fr) auto}.filters-wide .filter-selects.open{display:grid;grid-column:1 / -1;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));gap:.75rem}}.tabs{display:flex;gap:1.5rem;margin:2rem 0 1.5rem;box-shadow:inset 0 -1px 0 var(--line);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs button{flex-shrink:0;white-space:nowrap;border:0;background:none;padding:0 0 .75rem;font-size:1.05rem;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent}.tabs button.active{color:var(--ink);border-bottom-color:var(--ink)}.tabs .count{font-weight:400;margin-left:.35rem}.admin-tabs{flex-wrap:wrap;gap:.75rem 1.25rem;margin-top:.5rem}.admin-panel>h2:first-child{margin-top:0}.admin-manual{margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.admin-manual h3{margin:0 0 .85rem;font-size:1.15rem}.catalog-import{margin-bottom:1.75rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.catalog-import h3{margin:0 0 .4rem;font-size:1.15rem}.catalog-import-steps{margin:.75rem 0 .35rem;padding-left:1.35rem}.catalog-import-steps li+li{margin-top:.4rem}.catalog-import .form-grid{margin-top:1rem;margin-bottom:0;padding-bottom:0;border-bottom:0}.catalog-import .filter-check{flex-direction:row;margin:0}.catalog-import-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.import-preview-wrap{max-height:22rem;overflow:auto;border:1px solid var(--line);border-radius:8px;margin:.85rem 0}.import-preview{width:100%;border-collapse:collapse;font-size:.92rem}.import-preview th,.import-preview td{text-align:left;padding:.45rem .6rem;border-bottom:1px solid var(--line);vertical-align:top}.import-preview th{position:sticky;top:0;background:var(--bg-elevated)}@media (max-width: 1024px) and (min-width: 861px){.filters.filters-wide input{grid-column:auto}}@media (max-width: 1024px) and (min-width: 861px){.filters{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.filters input{grid-column:1 / -1}}@media (max-width: 640px){.form-row{grid-template-columns:1fr}.collection-tile .actions{grid-template-columns:minmax(0,1fr)}}@media (max-width: 860px){.desktop-only{display:none!important}.mobile-only{display:inline-flex;align-items:center}.topbar{gap:.5rem;padding:0 .75rem 0 1rem;padding-top:env(safe-area-inset-top);height:calc(var(--nav-h) + env(safe-area-inset-top))}.brand{font-size:1.4rem;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-user{gap:.35rem}.nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:.5rem 0 .75rem;background:var(--bg);border-bottom:1px solid var(--line-strong);box-shadow:0 12px 30px #0000001f;max-height:calc(100vh - var(--nav-h));overflow-y:auto}.topbar.menu-open .nav{display:flex}.nav a,.nav-logout{display:block;padding:.8rem 1.25rem;font-size:1.05rem;color:var(--ink)}.nav a.active{font-weight:600;background:var(--bg-soft)}.nav-mobile-only{display:block}.nav-logout{color:var(--danger);border-top:1px solid var(--line);margin-top:.35rem}.menu-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:15;background:#00000040}.page{width:calc(100% - 2rem);padding:1.5rem 0 3rem}.page.detail,.page.narrow{width:calc(100% - 2rem)}.page-head{flex-direction:column;align-items:stretch;margin-bottom:1.25rem;padding-bottom:1rem}.page-head h1{font-size:1.85rem}.profile-head{gap:1rem;align-items:flex-start}.profile-head .avatar{width:64px!important;height:64px!important;font-size:1.5rem!important}.form-grid{grid-template-columns:1fr}.filters{grid-template-columns:minmax(0,1fr) auto auto;gap:.5rem;padding-bottom:1rem}.filters-toggle{display:inline-flex;align-items:center}.filter-selects{display:none;grid-column:1 / -1;order:5;flex-direction:column;gap:.5rem}.filter-selects.open{display:flex}.filters input,.filters select,label input,label textarea,label select,.comment-form textarea{font-size:16px}.btn{min-height:40px}.comic-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem .75rem;padding-top:1rem}.batch-bar{flex-direction:column;align-items:stretch}.batch-bar .actions{width:100%}.batch-bar .actions .btn{flex:1}.comic-row{flex-wrap:nowrap;align-items:center;gap:.65rem}.comic-row-main{flex:1;min-width:0}.comic-row-actions{flex-direction:row;align-items:center;width:auto;min-width:0;margin-left:0;gap:.35rem}.comic-row-actions .btn,.comic-row-actions .comic-row-btn{width:36px;height:36px;min-height:36px;padding:0;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.comic-row-btn-label{display:none}.comic-row-btn-icon{display:grid;place-items:center}.comic-row-error{display:none}.comic-meta h3{font-size:.95rem}.detail-hero{grid-template-columns:1fr;gap:1.25rem;margin-bottom:1.5rem}.detail-cover{width:min(220px,60%);margin:0 auto}.detail-hero h1{font-size:1.75rem;margin:0 0 .5rem}.facts{grid-template-columns:90px minmax(0,1fr)}.actions .btn{flex:1 1 auto}.admin-edit{grid-template-columns:1fr}.review-card-head{flex-wrap:wrap;align-items:center}.review-card-head .actions .btn{flex:0 0 auto}.review-body{font-size:1.05rem}.stack-item{flex-direction:column}.stack-item .actions{width:100%}.holder-row{flex-wrap:wrap}.holder-side{width:100%;justify-content:space-between;padding-left:calc(40px + .75rem);text-align:left}section{margin-top:2rem}.section-head{flex-wrap:wrap}.modal-backdrop{align-items:end;padding:0}.modal{width:100%;max-height:92vh;overflow-y:auto;border-radius:16px 16px 0 0;border-bottom:0;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom))}.pager{gap:.5rem}.pager .btn{flex:1}}@media (hover: none){.comic-card:hover,.comic-row-main:hover{opacity:1}}.shelf-comic-card{position:relative}.shelf-comic-link{display:block;min-width:0;color:inherit;text-decoration:none}.shelf-comic-cover-link{display:block;width:100%;height:100%;color:inherit}.shelf-comic-cover-link img,.shelf-comic-cover-link .cover-fallback{width:100%;height:100%}.shelf-mine-status{margin-top:.2rem;font-size:.78rem;min-height:1.1em}.quick-shelf-actions{position:absolute;top:.4rem;right:.4rem;display:flex;flex-direction:column;gap:.35rem;z-index:2}.quick-shelf-btn{width:2rem;height:2rem;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);color:var(--ink);display:grid;place-items:center;cursor:pointer;box-shadow:0 1px 4px color-mix(in srgb,var(--ink) 12%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:0}.quick-shelf-btn:hover:not(:disabled){background:var(--bg);border-color:var(--ink)}.quick-shelf-btn:disabled{opacity:.7;cursor:default}.quick-shelf-btn.done{background:var(--ink);color:var(--bg);border-color:var(--ink)}.quick-shelf-btn.done:hover:not(:disabled){opacity:.88}.quick-shelf-btn.wish.done{background:var(--danger);border-color:var(--danger);color:#fff}.quick-shelf-btn.read.done{background:var(--ok);border-color:var(--ok);color:#fff}.quick-shelf-error{position:absolute;top:calc(100% + .35rem);right:0;max-width:9rem;font-size:.7rem;color:var(--danger);background:var(--bg);padding:.2rem .35rem;border-radius:4px;border:1px solid var(--line)}@media (hover: none){.quick-shelf-btn{width:2.25rem;height:2.25rem}}.avatar-wrap{position:relative;display:inline-flex;flex-shrink:0;vertical-align:middle}.avatar-wrap>.achievement-medallion,.avatar-badge-trigger{position:absolute;right:-2px;bottom:-2px}.avatar-wrap .achievement-medallion{box-shadow:0 0 0 2px var(--bg)}.avatar-badge-trigger{display:inline-flex;cursor:pointer;border-radius:50%}.avatar-badge-trigger:focus-visible .achievement-medallion{outline:2px solid var(--accent);outline-offset:2px}.avatar-badge-card{position:fixed;z-index:60;display:flex;flex-direction:column;gap:.15rem;width:max-content;max-width:min(260px,calc(100vw - 1rem));padding:.6rem .8rem;background:var(--bg-elevated);border:1px solid var(--line-strong);border-radius:10px;box-shadow:0 12px 40px #0000001f;color:var(--text);font-size:.875rem;font-weight:400;line-height:1.35;text-align:left;white-space:normal;cursor:default}.avatar-badge-card-title{font-weight:600}.avatar-badge-card-metal{color:var(--muted);font-size:.8rem;text-transform:capitalize}.achievement-medallion{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:50%;color:var(--metal-glyph);background:var(--line-strong)}.achievement-medallion svg{width:60%;height:60%}.achievement-medallion.metal-bronze{background:var(--metal-bronze)}.achievement-medallion.metal-silver{background:var(--metal-silver)}.achievement-medallion.metal-gold{background:var(--metal-gold)}.achievement-medallion.metal-platinum{background:var(--metal-platinum)}.achievement-medallion.metal-diamond{background:var(--metal-diamond)}.achievement-medallion.metal-locked{background:transparent;box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--muted) 55%,transparent);color:var(--muted)}.achievements-summary{margin:.5rem 0 1rem}.achievement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:.75rem}.achievement-card{display:flex;gap:.75rem;align-items:flex-start;padding:.85rem;border:1px solid var(--line);border-radius:var(--radius-field);background:var(--bg-elevated)}.achievement-card.featured{border-color:var(--accent)}.achievement-copy{display:flex;flex-direction:column;gap:.25rem;min-width:0}.achievement-copy h3{margin:0;font-size:1rem}.achievement-copy p{margin:0;font-size:.88rem}.achievement-copy .read-progress{margin-top:.2rem}.achievement-copy .btn{align-self:flex-start;margin-top:.35rem}.achievement-rarity{font-size:.8rem!important}.achievement-earned{color:var(--ink);font-weight:500}.achievement-series summary{cursor:pointer;font-size:.9rem;color:var(--accent)}.achievement-series ul{margin:.35rem 0 0;padding-left:1.1rem;font-size:.9rem}.achievement-earned:first-letter{text-transform:uppercase}.settings-link{text-decoration:none}.settings-link.active{border-color:var(--ink)}.settings-section{margin-bottom:2.5rem;scroll-margin-top:5rem}.settings-section-lead{margin:-.5rem 0 1rem}.settings-rows{display:flex;flex-direction:column}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:1rem 1.5rem;padding:.9rem 0;border-bottom:1px solid var(--line)}.setting-row:last-child{border-bottom:0}.setting-row-text{min-width:0}.setting-row-label{font-weight:600;cursor:inherit}label.setting-row-label{cursor:pointer}.setting-row-hint{margin:.25rem 0 0;font-size:.88rem}.setting-row-control{flex:none}.settings-select{border:1px solid var(--line-strong);border-radius:var(--radius-field);padding:.5rem .75rem;background:var(--surface);color:var(--ink);font:inherit}.settings-switch{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:2.75rem;height:1.6rem;border-radius:var(--radius-pill);background:var(--line-strong);position:relative;cursor:pointer;transition:background .15s;margin:0}.settings-switch:after{content:"";position:absolute;top:.2rem;left:.2rem;width:1.2rem;height:1.2rem;border-radius:50%;background:var(--bg);transition:transform .15s}.settings-switch:checked{background:var(--accent)}.settings-switch:checked:after{transform:translate(1.15rem)}.settings-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.settings-switch:disabled{opacity:.6;cursor:wait}.settings-switch.locked:disabled{cursor:not-allowed}.settings-form{display:flex;flex-direction:column;gap:.9rem}.settings-form label{display:flex;flex-direction:column;gap:.35rem;font-size:.92rem;color:var(--muted)}.settings-form .actions{align-items:center}.settings-badge{display:inline-block;margin-left:.5rem;padding:.1rem .55rem;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);font-size:.8rem;font-weight:600}@media (max-width: 640px){.setting-row{flex-direction:column;align-items:stretch}.setting-row:has(.settings-switch){flex-direction:row;align-items:center}}.trade-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1.25rem;margin-top:1rem;padding:.75rem .9rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.trade-toggle{display:inline-flex;align-items:center;gap:.5rem;min-height:var(--tap);cursor:pointer}.trade-toggle input{width:1.1rem;height:1.1rem;margin:0;accent-color:var(--accent)}.trade-copies{display:inline-flex;align-items:center;gap:.5rem}.trade-copies input{width:5rem;background:var(--bg);border-color:var(--line-strong)}.trade-controls .trade-hint,.trade-controls .error{flex-basis:100%;margin:0;font-size:.85rem}.trade-edit{align-items:end}.badge.trade{background:var(--key-bg);color:var(--key-text)}.trade-offer-hint{margin:0 0 1.5rem;font-size:.9rem}.trade-section{margin-bottom:2.5rem}.trade-section h2{display:flex;align-items:center;gap:.5rem}.trade-count{font-family:var(--font-sans);font-size:.8rem;font-weight:500;padding:.1rem .55rem;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent)}.trade-list{display:grid;gap:1rem;margin:1rem 0}.trade-card{padding:1rem 1.1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-elevated);min-width:0}.trade-card-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.trade-sides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.5rem}.trade-side{min-width:0}.trade-side-title{margin:0 0 .5rem;font-size:.9rem;font-weight:500}.trade-covers{display:flex;flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none}.trade-covers a{display:block;width:3.5rem;aspect-ratio:2 / 3;overflow:hidden;border-radius:var(--radius-cover);box-shadow:var(--cover-shadow);background:var(--surface)}.trade-covers img,.trade-covers .cover-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;object-fit:cover}.trade-more{display:flex;align-items:center;font-size:.85rem;color:var(--muted)}@media (max-width: 640px){.trade-sides{grid-template-columns:minmax(0,1fr)}}.stack-main{flex:1;min-width:0}.stack-main .digital-copy-btn{margin-left:calc(56px + 1rem)}.collection-tile .digital-copy-btn{margin-top:auto;padding:.3rem .65rem;font-size:.8rem;min-height:34px}.collection-tile .digital-copy-btn+.actions{margin-top:0}.copy-form{display:flex;flex-direction:column;gap:.85rem;max-width:720px}.copy-form .actions{align-items:center}.copy-form .digital-copy-btn{align-self:flex-start}.my-copy-comments{margin-top:1.5rem;max-width:720px}.my-copy-comments h3{margin:0 0 .5rem}.review-tags{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:.6rem 0 0;padding:0}.review-tag{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .6rem;border:1px solid var(--line-strong);border-radius:999px;background:var(--bg-soft);color:var(--ink);font:inherit;font-size:.82rem;line-height:1.5;text-decoration:none;cursor:pointer}a.review-tag:hover,button.review-tag:hover{border-color:var(--accent);color:var(--accent)}.review-tag.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.review-tag.active .muted{color:inherit}.review-tag.editable{padding-right:.3rem;cursor:default}.review-tag.editable button{border:0;background:none;color:var(--muted);font-size:1rem;line-height:1;cursor:pointer;padding:0 .2rem}.review-tag.editable button:hover{color:var(--ink)}.review-tag-input{display:grid;gap:.35rem}.review-tag-input .review-tags{margin:0}.review-tag-hint{margin:0;font-size:.8rem}.review-tag-suggestions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem}.review-tag-filter{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 1rem}.tag-page-head{margin-bottom:1.25rem}.tag-page-head h1{margin-bottom:.25rem}.avatar-crop-modal{width:min(420px,100%)}.avatar-crop-stage{position:relative;width:100%;aspect-ratio:1;overflow:hidden;background:#000;border-radius:8px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.avatar-crop-stage:active{cursor:grabbing}.avatar-crop-stage img{position:absolute;max-width:none;pointer-events:none}.avatar-crop-ring{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.8);box-shadow:0 0 0 9999px #0000008c;pointer-events:none}.avatar-crop-zoom{display:flex;align-items:center;gap:.6rem;color:var(--muted)}.avatar-crop-zoom input{flex:1}
