:root{--bg:#faf9f6;--bg-2:#ffffff;--bg-3:#f1efe9;--fg:#0a0a0a;--fg-dim:rgba(10,10,10,0.88);--muted:rgba(10,10,10,0.52);--muted-2:rgba(10,10,10,0.36);--line:rgba(10,10,10,0.14);--line-2:rgba(10,10,10,0.26);--ink:#faf9f6;--pink:#ff93bd;--pink-ink:#0a0a0a;--pink-soft:rgba(255,147,189,0.14);--pink-line:rgba(255,147,189,0.55);--gold:var(--pink);--font:var(--font-montserrat),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--radius:2px;--radius-pill:999px;--radius-control:10px;--maxw:1280px;--pad-edge:48px;--nav-h:84px;--nav-pad-top:20px;--nav-bottom:calc(var(--nav-h) + var(--nav-pad-top));--ease:cubic-bezier(.4,0,.2,1)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{overflow-x:hidden}::selection{background:var(--pink);color:var(--pink-ink)}button{font-family:inherit;cursor:pointer}a{color:inherit;text-decoration:none}.label{font-size:12px;letter-spacing:.16em}.label,.label-sm{font-weight:600;text-transform:uppercase}.label-sm{font-size:10.5px;letter-spacing:.18em;color:var(--muted)}.display{font-weight:800;line-height:.98;text-transform:uppercase;margin:0}.accent,.display{letter-spacing:-.01em}.accent{font-style:italic;font-weight:500;text-transform:none;color:var(--pink)}.body{font-size:15px;line-height:1.65;color:var(--fg-dim)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad-edge)}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;padding-top:var(--nav-pad-top);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.nav-inner{justify-content:space-between;height:var(--nav-h)}.logo,.nav-inner{display:flex;align-items:center}.logo{font-weight:800;font-size:19px;letter-spacing:-.02em;text-transform:lowercase;gap:2px}.logo-mark{height:60px;width:auto;display:block}.nav-right{gap:14px}.nav-links,.nav-right{display:flex;align-items:center}.nav-links{gap:10px}.nav-link{font-weight:400;font-size:17px;letter-spacing:normal;text-transform:none;color:var(--fg);padding:6px 8px;transition:color .18s var(--ease);background:none;border:0}.nav-link:after{content:"";display:block;height:2px;margin-top:3px;border-radius:2px;background:transparent;transition:background-color .18s var(--ease)}.nav-link.active:after{background:var(--pink)}.nav-links:hover .nav-link.active:after{background:transparent}.nav-links:hover .nav-link:hover:after{background:var(--pink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:14px 22px;border-radius:var(--radius-control);border:1px solid var(--line-2);background:transparent;color:var(--fg);transition:all .18s var(--ease)}.btn:hover{border-color:var(--fg)}.btn:active{opacity:.72}.btn.primary{background:var(--pink);color:var(--pink-ink);border-color:var(--pink)}.btn.primary:hover{opacity:.88}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:disabled:hover{border-color:var(--line-2)}.star-pop{position:absolute;top:-16px;right:-12px;z-index:4;width:48px;height:48px;display:grid;place-items:center;background:#ffffff;border-radius:999px;color:var(--gold);box-shadow:0 0 0 3px var(--gold),0 6px 16px rgba(0,0,0,.4);pointer-events:none}.star-pop svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.12))}.star-pop-sm{top:-8px;right:-8px;width:26px;height:26px;box-shadow:0 0 0 2px var(--gold),0 3px 8px rgba(0,0,0,.3)}.tag{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:6px 12px;border-radius:var(--radius-pill);border:1px solid var(--line-2);color:var(--fg-dim);background:transparent;transition:all .15s var(--ease);white-space:nowrap}.tag-link:hover,button.tag:hover{border-color:var(--fg);color:var(--fg)}.tag-link{cursor:pointer}.tag.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}.chip{gap:8px;font-weight:600;letter-spacing:.04em;padding:7px 8px 7px 13px;border-radius:var(--radius-pill);border:1px solid var(--line-2);color:var(--fg);background:var(--bg-2)}.chip,.chip .x{display:inline-flex;align-items:center;font-size:11px}.chip .x{justify-content:center;width:17px;height:17px;border-radius:999px;border:1px solid var(--line-2);color:var(--muted);background:transparent;transition:all .15s var(--ease);line-height:1}.chip .x:hover{background:var(--pink);color:var(--pink-ink);border-color:var(--pink)}.field{display:flex;align-items:center;gap:12px;border:1px solid var(--line-2);border-radius:var(--radius-control);background:var(--bg-2);padding:0 18px;height:58px;transition:border-color .18s var(--ease)}.field:focus-within{border-color:var(--pink)}.field input{flex:1 1;background:transparent;border:0;outline:0;color:var(--fg);font-family:inherit;font-size:15px;letter-spacing:.01em}.field input::placeholder{color:var(--muted)}.select-trigger{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line-2);border-radius:var(--radius-control);background:var(--bg-2);color:var(--fg);padding:0 14px;height:38px;min-width:170px;font-weight:600;font-size:12px;letter-spacing:.06em;transition:border-color .18s var(--ease)}.fb-boxes .select-trigger{min-width:0;gap:10px}.select-trigger:hover{border-color:var(--fg)}.select-trigger .caret{color:var(--muted);font-size:10px}.select-trigger .count{color:var(--pink)}.select-trigger .count.off{color:var(--muted)}.popover{position:absolute;z-index:60;margin-top:8px;width:320px;background:var(--bg-2);border:1px solid var(--line-2);border-radius:var(--radius-control);box-shadow:0 24px 60px rgba(0,0,0,.5);animation:pop .16s var(--ease);display:flex;flex-direction:column;min-height:0}.popover-body{overflow-y:auto;overscroll-behavior:contain;min-height:0;flex:1 1 auto}@keyframes pop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.popover-group{padding:16px 18px;border-bottom:1px solid var(--line)}.popover-group:last-of-type{border-bottom:0}.checkrow{display:flex;align-items:center;gap:11px;padding:7px 0;font-size:13px;color:var(--fg-dim);cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:none;border:0;width:100%;text-align:left;font-family:inherit}.checkrow:hover{color:var(--fg)}.checkbox{width:18px;height:18px;border:1px solid var(--line-2);border-radius:2px;display:inline-flex;align-items:center;justify-content:center;flex:none;transition:all .15s var(--ease)}.checkrow:hover .checkbox{border-color:var(--fg)}.checkbox.on{background:var(--pink);border-color:var(--pink);color:var(--pink-ink)}.option-starred{display:inline-flex;align-items:center;gap:7px}.option-star{display:inline-flex;color:var(--gold)}.linkbtn{background:none;border:0;color:var(--muted);padding:0;font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.linkbtn:hover{color:var(--fg);text-decoration:underline}.card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-2);overflow:visible;transition:border-color .2s var(--ease),transform .2s var(--ease);cursor:pointer;text-align:left;padding:0;color:inherit;width:100%}.card:hover{border-color:var(--line-2);transform:translateY(-3px)}.card-cover{position:relative;aspect-ratio:2/3;overflow:hidden;border-radius:var(--radius)}.card-meta{padding:16px 16px 18px;display:flex;flex-direction:column;gap:4px}.card-title{font-weight:700;font-size:15px;line-height:1.2;letter-spacing:-.01em}.card-author{font-size:12px;color:var(--muted);letter-spacing:.02em}.cover-art{width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding:18px 16px;position:relative}.cover-art.cover-img{padding:0}.cover-art.cover-img img{width:100%;height:100%;object-fit:cover;display:block}.cover-art.cover-landscape{background:#ffffff;display:block}.cover-art.cover-landscape img{width:100%;height:auto;object-fit:contain;display:block}.cover-art .ca-title{font-weight:800;line-height:1.04;letter-spacing:-.01em;text-transform:uppercase;overflow-wrap:anywhere}.cover-art .ca-author{font-weight:600;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;opacity:.8}.cover-art .ca-rule{width:26px;height:2px;margin:8px 0;opacity:.8}.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:22px;gap:22px}.list{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}.list-row{display:grid;grid-template-columns:64px 1fr;align-items:center;grid-gap:22px;gap:22px;padding:18px 8px;cursor:pointer;transition:background .15s var(--ease);text-align:left;background:none;border:0;border-bottom:1px solid var(--line);color:inherit;width:100%}.list-row:hover{background:var(--bg-2)}.list-cover-wrap{position:relative;width:64px;overflow:visible}.list-cover{width:64px;aspect-ratio:2/3;border-radius:1px;overflow:hidden}.list-main{display:flex;flex-direction:column;gap:3px}.sticky-controls{position:-webkit-sticky;position:sticky;top:var(--nav-bottom);z-index:40;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.filterbar-inner{gap:18px;flex-wrap:wrap;padding-block:16px}.fb-group,.filterbar-inner{display:flex;align-items:center}.fb-group{gap:12px}.fb-controls{gap:18px}.fb-boxes,.fb-controls{display:flex;align-items:center;flex-wrap:wrap}.fb-boxes{gap:12px}.fb-sort{margin-left:auto}.stack-row{margin-top:-6px;padding-bottom:14px}.stack-toggle{position:relative;display:inline-flex}.stack-switch{display:inline-flex;align-items:center;gap:10px;background:none;border:0;padding:4px 0;cursor:pointer;color:var(--fg)}.stack-switch:focus-visible{outline:2px solid var(--pink);outline-offset:4px}.switch-track{position:relative;width:34px;height:18px;flex:none;border:1px solid var(--line-2);border-radius:var(--radius-pill);background:transparent;transition:all .15s var(--ease)}.switch-thumb{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:999px;background:var(--muted);transition:transform .15s var(--ease),background .15s var(--ease)}.stack-switch:hover .switch-track{border-color:var(--fg)}.stack-switch.on .switch-track{background:var(--pink);border-color:var(--pink)}.stack-switch.on .switch-thumb{transform:translateX(16px);background:var(--pink-ink)}.stack-state{font-weight:600;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);min-width:2.4em;text-align:left}.stack-switch.on .stack-state{color:var(--pink-ink)}.stack-help{position:absolute;top:calc(100% + 8px);left:0;z-index:60;width:max-content;max-width:320px;padding:10px 12px;border-radius:var(--radius);background:var(--fg);color:var(--bg);font-size:12px;line-height:1.45;letter-spacing:.01em;opacity:0;visibility:hidden;transform:translateY(-2px);transition:opacity .15s var(--ease),transform .15s var(--ease),visibility .15s;pointer-events:none}.stack-toggle:focus-within .stack-help,.stack-toggle:hover .stack-help{opacity:1;visibility:visible;transform:none}.stack-toggle.inline{flex-direction:column;align-items:flex-start;gap:6px}.stack-toggle.inline .stack-switch{min-height:44px}.stack-toggle.inline .stack-help{position:static;opacity:1;visibility:visible;transform:none;width:auto;max-width:none;padding:0;background:none;color:var(--muted)}.viewtoggle{display:inline-flex;gap:2px}.viewtoggle button{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--muted);font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:6px 8px;transition:color .15s var(--ease)}.viewtoggle button.on,.viewtoggle button:hover{color:var(--fg)}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.06em}.breadcrumb .crumb-link{color:var(--muted);text-transform:uppercase;font-weight:600}.breadcrumb .crumb-link:hover{color:var(--fg)}.breadcrumb .crumb-cur{color:var(--fg);font-weight:700}.detail-grid{display:grid;grid-template-columns:380px 1fr;grid-gap:64px;gap:64px;align-items:start}.detail-cover{aspect-ratio:2/3;border:1px solid var(--line);border-radius:var(--radius);position:relative;overflow:visible}.detail-cover-landscape{aspect-ratio:auto}.detail-cover-landscape .cover-art.cover-landscape{background:transparent}.detail-cover-landscape .cover-art.cover-landscape img{height:auto}.detail-cover-link{display:block;width:100%;height:100%;border-radius:inherit}.detail-cover-link:focus-visible{outline:2px solid var(--pink);outline-offset:3px}.detail-subtitle{margin:12px 0 0;font-size:clamp(17px,1.8vw,22px);font-weight:400;line-height:1.28;color:var(--muted);max-width:42ch}.byline-link{color:inherit;text-decoration:none}.byline-link:hover{color:var(--fg);text-decoration:underline;text-underline-offset:3px}.review-text{font-size:17px;line-height:1.7;color:var(--fg-dim);max-width:60ch}.review-text p{margin:0 0 18px}.review-text .dropcap:first-letter{font-weight:800;font-size:3.1em;line-height:.8;float:left;padding:4px 10px 0 0;color:var(--pink)}.detail-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px;max-width:636px}.detail-actions>.btn{flex:0 1 204px;max-width:100%}.detail-actions>.row-break{flex:0 0 100%;height:0}.detail-actions .btn.primary:hover,.detail-actions .btn:hover,.detail-back .btn:hover{background:var(--pink);border-color:var(--pink);color:var(--pink-ink)}.detail-actions .btn.primary:hover{opacity:.88}.affiliate-note{margin:0 0 0 auto;max-width:600px;text-align:right;font-size:12px;line-height:1.5;color:var(--muted)}.affiliate-note span{display:block}.detail-back{display:flex;justify-content:flex-start;align-items:center;gap:24px;margin-top:80px;padding-top:40px;border-top:1px solid var(--line)}.sheet-backdrop{position:fixed;inset:0;z-index:80;background:rgba(0,0,0,.6);display:flex;align-items:flex-end;animation:fade .2s var(--ease)}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{width:100%;background:var(--bg-2);border-top-left-radius:14px;border-top-right-radius:14px;border-top:1px solid var(--line-2);padding:8px 24px 32px;max-height:86vh;overflow-y:auto;animation:slideup .26s var(--ease)}@keyframes slideup{0%{transform:translateY(100%)}to{transform:none}}.sheet-grab{width:40px;height:4px;border-radius:999px;background:var(--line-2);margin:10px auto 18px}.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sheet-title{font-weight:800;font-size:19px}.sheet-sorts{display:flex;flex-wrap:wrap;gap:8px}.sheet-sorts .tag{min-height:44px;padding:0 16px}.mobile-menu{position:relative}.mobile-menu-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:60;min-width:220px;padding:8px 0;background:var(--bg-2);border:1px solid var(--line-2);border-radius:var(--radius-control);box-shadow:0 12px 32px rgba(0,0,0,.12);display:flex;flex-direction:column}.mobile-menu-link{font-size:17px;color:var(--fg);padding:12px 20px;min-height:44px;display:flex;align-items:center}.mobile-menu-link:active{background:var(--bg)}.mobile-menu-link.active{font-weight:600;box-shadow:inset 3px 0 0 var(--pink)}.sheet-foot{display:flex;gap:12px;padding-top:18px;border-top:1px solid var(--line)}.mobile-controls{display:none}.azbar{display:flex;flex-wrap:wrap;gap:2px;padding-bottom:20px;margin-bottom:18px;border-bottom:1px solid var(--line)}.az,.azbar{align-items:center}.az{width:30px;height:30px;flex:none;display:inline-flex;justify-content:center;background:none;border:1px solid transparent;border-radius:var(--radius-pill);font-weight:700;font-size:12px;letter-spacing:.04em;color:var(--fg-dim);cursor:pointer;transition:all .15s var(--ease)}.az:hover:not(:disabled){background:var(--pink-soft);border-color:var(--pink-line);color:var(--fg)}.az.on{background:var(--pink);border-color:var(--pink);color:var(--pink-ink)}.az:disabled{color:var(--muted-2);cursor:default}.az-clear{margin-left:12px}.count-line{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.result-total{margin:0;color:var(--muted);font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.result-total .n{color:var(--pink)}.load-more{display:flex;justify-content:center;margin-top:48px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.spinner{width:22px;height:22px;border-radius:999px;border:2px solid var(--line-2);border-top-color:var(--pink);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.empty{text-align:center;padding:80px 20px;color:var(--muted)}.empty .display{font-size:40px;margin-bottom:14px;color:var(--fg)}.results-section{padding-top:26px;padding-bottom:80px}.results-body{margin-top:28px}.active-chips{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px}.result-count{color:var(--pink);font-weight:600;font-size:11px;letter-spacing:.04em}.hero{padding-top:64px;padding-bottom:34px;text-align:center}.hero .label{color:var(--fg);font-size:clamp(17px,1.9vw,22px);margin-bottom:18px}.hero .display{font-size:clamp(44px,7vw,96px)}.hero-title{color:var(--fg);font-style:normal}.search-section{padding-top:14px;padding-bottom:22px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.card:hover{transform:none}}@media (max-width:1240px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1100px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:860px){:root{--pad-edge:24px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.nav-links{display:none}.field input{font-size:16px}.detail-grid{grid-template-columns:1fr;gap:32px}.detail-cover{max-width:280px}.detail-back{flex-direction:column;align-items:flex-start;gap:20px}.affiliate-note{margin-left:0;text-align:left;max-width:none}.filterbar{display:none}.mobile-controls{display:flex;gap:12px;padding:0 var(--pad-edge) 14px}.search-section{padding-bottom:10px}.field{height:48px}.desktop-only{display:none!important}}@media (min-width:861px){.mobile-only{display:none!important}}@media (max-width:480px){.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.az{width:27px;height:27px}}