.w4-book{display:flex;flex-direction:column}.w4-book__lang{display:flex;flex-direction:column;gap:var(--space-3)}.w4-book__cover{position:relative;display:block;aspect-ratio:2 / 3;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface);text-decoration:none}.w4-book__cover img{width:100%;height:100%;object-fit:cover;display:block}.w4-book__badge{position:absolute;bottom:var(--space-3);left:var(--space-3);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;padding:.25rem .6rem;border-radius:999px;background:var(--color-accent-fill);color:var(--color-on-accent);border:1px solid var(--color-accent-fill);box-shadow:0 1px 4px #00000040}.w4-book__badge[hidden]{display:none}.w4-book__title{font-family:var(--font-title);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.01em;font-size:1rem;line-height:1.25;margin:0}.w4-book__title a{color:var(--color-ink);text-decoration:none}.w4-book__title a:hover{text-decoration:underline}.w4-book__subtitle{font-size:.85rem;color:var(--argent);margin:0}.w4-book__subtitle[hidden]{display:none}.w4-book__meta{display:flex;flex-wrap:wrap;gap:.2rem .7rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.03em;color:var(--color-accent-ink);text-transform:uppercase}.w4-book__cover{transition:transform .18s ease,box-shadow .18s ease}.w4-book:hover .w4-book__cover{transform:translateY(-4px)}.w4-bookgrid{display:grid;gap:var(--space-9) var(--space-6);grid-template-columns:1fr;max-width:320px;margin-inline:auto}.w4-bookgrid--c2{grid-template-columns:repeat(2,1fr);max-width:none;margin-inline:0}.w4-bookgrid--c3{grid-template-columns:repeat(3,1fr);max-width:none;margin-inline:0}.w4-book--solo{grid-column:1 / -1;max-width:320px;margin-inline:auto;width:100%}.w4-bookgrid--catalog.w4-bookgrid--c3{grid-template-columns:repeat(3,minmax(0,320px));justify-content:space-between}.w4-bookgrid--catalog.w4-bookgrid--c3>.w4-book--solo{grid-column:2 / 3;max-width:none;margin-inline:0}@media (max-width: 900px){.w4-bookgrid--c3{grid-template-columns:repeat(2,1fr);max-width:none}.w4-bookgrid--catalog.w4-bookgrid--c3{grid-template-columns:repeat(2,minmax(0,320px));justify-content:space-around}.w4-bookgrid--catalog.w4-bookgrid--c3>.w4-book--solo{grid-column:1 / -1;width:320px;justify-self:center}}@media (max-width: 560px){.w4-bookgrid--c2,.w4-bookgrid--c3{grid-template-columns:1fr;max-width:320px;margin-inline:auto}.w4-bookgrid--catalog.w4-bookgrid--c3{grid-template-columns:1fr}.w4-bookgrid--catalog.w4-bookgrid--c3>.w4-book--solo{grid-column:auto;width:100%}}.w4-about{border-top:1px dashed var(--color-border)}.w4-about__layout{display:flex;gap:var(--space-8);align-items:center;flex-wrap:wrap}.w4-about__avatar{width:160px;height:160px;flex:0 0 auto;order:2}.w4-about__body{flex:1 1 320px;min-width:0;order:1}.w4-bookrail__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.w4-bookrail__nav{display:flex;gap:var(--space-2)}.w4-bookrail__navbtn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);cursor:pointer;transition:background-color .15s ease,border-color .15s ease}.w4-bookrail__navbtn:hover{background:var(--color-btn-hover-bg)}.w4-bookrail__navbtn:disabled{opacity:.35;cursor:default}.w4-bookrail__navbtn svg{width:16px;height:16px;display:block}.w4-bookrail{display:flex;gap:var(--space-6);overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:var(--space-3);scrollbar-width:thin}.w4-bookrail>.w4-book{scroll-snap-align:start;flex:0 0 132px}.w4-bookrail>.w4-book .w4-book__title{font-size:.85rem}.w4-bookrail>.w4-book .w4-book__subtitle{display:none}.w4-bookcollection__head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);border-bottom:1px solid var(--color-border);padding-bottom:var(--space-3);margin-bottom:var(--space-6)}.w4-bookcollection__kicker{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:0;font-size:.78rem;font-weight:var(--weight-regular);color:var(--color-accent-ink);margin:0 0 var(--space-1)}.w4-bookcollection__title{margin:0}.w4-bookcollection__sub{font-size:.85rem;color:var(--argent);margin:var(--space-1) 0 0}.w4-bookcollection__seeall{flex:0 0 auto}
