.external-link[data-astro-cid-qroucnc4]{margin-top:var(--space-lg);font-family:var(--font-ui);letter-spacing:.03em;color:var(--color-muted);border-bottom:1px solid var(--color-rule);transition:color var(--transition-fast), border-color var(--transition-fast);padding-bottom:2px;font-size:.88rem;text-decoration:none;display:inline-block}.external-link[data-astro-cid-qroucnc4]:hover{color:var(--color-link-hover);border-color:var(--color-link-hover)}.footer-info[data-astro-cid-loyxr7ru]{margin-top:var(--space-2xl);margin-bottom:var(--space-2xl);border-top:1px solid var(--color-rule);padding-top:var(--space-md)}.footer-info-title[data-astro-cid-loyxr7ru]{font-family:var(--font-ui);letter-spacing:.06em;color:var(--color-faint);cursor:pointer;transition:color var(--transition-fast);justify-content:space-between;align-items:center;font-size:.78rem;list-style:none;display:flex}.footer-info-title[data-astro-cid-loyxr7ru]::-webkit-details-marker{display:none}.footer-info-title[data-astro-cid-loyxr7ru]::marker{content:""}.footer-info-title[data-astro-cid-loyxr7ru]:hover{color:var(--color-muted)}.footer-info-date[data-astro-cid-loyxr7ru]{color:var(--color-faint);font-size:.72rem}.footer-info-body[data-astro-cid-loyxr7ru]{margin-top:var(--space-sm);color:var(--color-muted);font-size:.88rem;line-height:1.5}.footer-info-body[data-astro-cid-loyxr7ru] ul,.footer-info-body[data-astro-cid-loyxr7ru] ol{margin-bottom:var(--space-md);padding-left:0;list-style-position:inside}.footer-info-body[data-astro-cid-loyxr7ru] li{margin-bottom:var(--space-xs)}.puz-page{max-width:60em;padding:var(--space-lg,1.5rem) var(--space-md,1rem);margin:0 auto}.drop-zone{border:2px dashed var(--color-text-muted,#888);padding:var(--space-xl,2rem);text-align:center;cursor:pointer;transition:border-color var(--transition-fast,.15s);border-radius:8px}.drop-zone.dragover{border-color:var(--color-text,#333)}.result{margin-top:var(--space-lg,1.5rem);gap:var(--space-lg,1.5rem);flex-direction:column;display:flex}.result[hidden]{display:none}.result-grid-col{justify-content:center;display:flex}.result-info-col h2{margin-bottom:var(--space-sm,.5rem)}@media (width>=700px){.result{flex-direction:row;align-items:start}.result-grid-col{flex-shrink:0}.result-info-col{flex:1}}.meta{gap:var(--space-xs,.25rem);flex-direction:column;display:flex}.meta-label{color:var(--color-text-muted,#888);margin-right:.4em}.grid-container{background:var(--color-text,#333);border:2px solid var(--color-text,#333);gap:1px;line-height:0;display:inline-grid}.grid-container .cell{aspect-ratio:1;width:clamp(16px,3vw,28px)}.grid-container .cell.white{background:#fff}.grid-container .cell.black{background:var(--color-text,#333)}.split-viz{gap:var(--space-sm,.5rem);margin-bottom:var(--space-lg,1.5rem);display:flex}.split-square{aspect-ratio:1;border:2px solid var(--color-text,#333);font-family:var(--font-ui,Inter, sans-serif);justify-content:center;align-items:center;font-weight:600;display:flex}.split-square.white-sq{color:var(--color-text,#333);background:#fff}.split-square.black-sq{background:var(--color-text,#333);color:#fff}.close-btn{margin-top:var(--space-lg,1.5rem);border:1px solid var(--color-text-muted,#888);color:var(--color-text-muted,#888);cursor:pointer;font-family:var(--font-ui,Inter, sans-serif);transition:color var(--transition-fast,.15s), border-color var(--transition-fast,.15s);background:0 0;border-radius:4px;padding:.4em 1em;font-size:.85rem}.close-btn:hover{color:var(--color-text,#333);border-color:var(--color-text,#333)}.listing-header{padding-top:var(--space-sm);margin-bottom:var(--space-lg);justify-content:space-between;align-items:baseline;display:flex}.listing-header h1{margin-bottom:0}.titles-toggle{font-family:var(--font-ui);font-variant:small-caps;letter-spacing:.06em;text-transform:lowercase;color:var(--color-faint);cursor:pointer;transition:color var(--transition-fast);user-select:none;background:0 0;border:none;padding:.2em .4em;font-size:.72rem}.titles-toggle:hover{color:var(--color-muted)}.titles-toggle.active{color:var(--color-text)}.reading-listing{flex-direction:column;display:flex}.bar-row{cursor:pointer;margin-bottom:6px;position:relative}.bar-row svg{transition:opacity var(--transition-fast);display:block;overflow:visible}@media (hover:hover){.bar-row:hover svg{opacity:.5}}.bar-row.active svg{opacity:1}.bar-title{z-index:1;font-family:var(--font-ui);font-variant:small-caps;text-transform:lowercase;letter-spacing:.06em;color:var(--color-text);opacity:0;transition:opacity var(--transition-fast);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;text-shadow:none;padding-left:6px;font-size:.68rem;line-height:24px;position:absolute;top:0;left:0;overflow:hidden}@media (hover:hover){.bar-row:hover .bar-title{opacity:.9}}.reading-listing.has-expanded .bar-row:not(.active) svg,.titles-visible .bar-row svg{opacity:.5}.titles-visible .bar-row.active svg{opacity:1}.titles-visible .bar-title{opacity:.9}.titles-visible .bar-row.active .bar-title{opacity:0}.chunk-rect{transition:filter var(--transition-fast);cursor:pointer}.bar-detail{max-height:0;margin-bottom:0;transition:max-height .4s cubic-bezier(.4,0,.2,1);overflow:hidden}.bar-detail.expanded{margin-bottom:var(--space-md)}.bar-detail-inner{padding:var(--space-md) 0;border-bottom:1px solid var(--color-rule);opacity:0;color:var(--book-color,var(--color-text));transition:opacity .2s .1s}.bar-detail.expanded .bar-detail-inner{opacity:1}.detail-title{margin-bottom:2px;font-size:1.1rem;font-weight:400}.detail-author{margin-bottom:var(--space-md);font-size:.85rem;font-style:italic}.detail-stats{gap:var(--space-sm) var(--space-md);font-family:var(--font-ui);letter-spacing:.04em;margin-bottom:var(--space-md);flex-wrap:wrap;font-size:.72rem;display:flex}.detail-stat{align-items:center;gap:.3em;display:flex}.detail-stat-label{font-variant:small-caps;text-transform:lowercase}.detail-bar{margin:var(--space-md) 0 0}.detail-bar svg{display:block;overflow:visible}@media (hover:hover){.detail-bar:hover .chunk-rect{filter:saturate(.3)brightness(1.1)}.detail-bar:hover .chunk-rect:hover{filter:saturate(1.2)brightness()}}.detail-chunk-label{font-family:var(--font-ui);font-variant:small-caps;text-transform:lowercase;letter-spacing:.04em;fill:var(--color-faint);pointer-events:none;opacity:0;transition:opacity var(--transition-fast);text-anchor:start;font-size:11px}.detail-chunk-label.visible{opacity:1}.detail-header{gap:var(--space-md);align-items:flex-start;display:flex}.detail-header-text{flex:1;min-width:0}.detail-cover-wrap{cursor:pointer;flex-shrink:0;max-width:200px;line-height:0}.detail-cover{mix-blend-mode:luminosity;width:100%;height:auto}.detail-cover-wrap.revealed{background-color:#0000!important}.detail-cover-wrap.revealed .detail-cover{mix-blend-mode:normal}.detail-notes{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--color-rule);font-size:.9rem;line-height:1.6}.detail-notes p{margin-bottom:var(--space-sm)}.detail-notes .detail-img-wrap{background-color:var(--book-color,transparent);margin:var(--space-sm) 0;cursor:pointer;line-height:0;display:inline-block}.detail-notes .detail-img-wrap img{mix-blend-mode:luminosity;max-width:100%;height:auto}.detail-notes .detail-img-wrap.revealed{background-color:#0000}.detail-notes .detail-img-wrap.revealed img{mix-blend-mode:normal}.detail-notes blockquote{border-left:3px solid var(--book-color,var(--color-rule));padding-left:var(--space-md);margin:var(--space-sm) 0;color:var(--book-color,var(--color-text));font-style:italic}.detail-notes a,.detail-notes a:visited,.detail-notes a:hover,.detail-notes a:active{color:inherit;text-decoration:underline;text-decoration-color:var(--book-color,var(--color-faint));text-underline-offset:.15em}.detail-notes ul,.detail-notes ol{margin-bottom:var(--space-sm);padding-left:1.5em}.detail-notes code{background:var(--color-rule);border-radius:3px;padding:.1em .3em;font-size:.85em}.detail-notes .footnotes{margin-top:var(--space-md);padding-top:var(--space-sm);border-top:1px solid var(--color-rule);font-size:.8rem}.detail-notes sup a{font-size:.75em;text-decoration:none}@media (width<=600px){.listing-header{gap:var(--space-sm);flex-direction:column}.bar-title{font-size:.62rem}.detail-chunk-label{font-size:9px}.detail-stats{gap:var(--space-xs);flex-direction:column}.detail-cover-wrap{max-width:120px}}
