.hero{background:linear-gradient(160deg, var(--color-cyan-raw) 0%, var(--color-paper-3) 50%, #6fffe826 100%);animation:heroIn var(--dur-slow) var(--ease-out) both, heroGradient 12s ease infinite;border-radius:var(--radius-xl);padding:var(--space-4xl) var(--space-4xl) var(--space-3xl);z-index:50;margin-top:var(--space-xl);margin-bottom:var(--space-5xl);box-shadow:var(--shadow-lg);background-size:200% 200%;position:relative;overflow:visible}@keyframes heroIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes heroGradient{0%,to{background-position:0%}50%{background-position:100%}}.hero:before{content:"";pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%230c142a' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");position:absolute;inset:0}.hero__content{z-index:50;position:relative}.hero h1{font-size:var(--text-display);color:var(--color-navy-raw);max-width:18ch;margin-bottom:var(--space-md);line-height:1}.hero__accent{color:var(--color-ink-on-cyan);text-decoration:underline;-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);text-underline-offset:6px;text-decoration-thickness:3px}.hero p{color:var(--color-ink-a70);font-size:var(--text-lg);max-width:52ch;margin-bottom:var(--space-2xl);font-weight:400}.hero__stats{width:100%;max-width:440px;margin-top:var(--space-2xl);animation:fadeUp .6s var(--ease-out) .3s both;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;display:grid}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero__stat{text-align:center;min-width:0}.hero__stat-num{color:var(--color-navy-raw);font-variant-numeric:tabular-nums;font-size:clamp(1.6rem,5vw,2rem);font-weight:800;line-height:1.1;display:block}.hero__stat-label{color:var(--color-ink-a70);white-space:nowrap;letter-spacing:.01em;margin-top:.35rem;font-size:clamp(.76rem,2.4vw,.85rem);display:block}.hero__stat-divider{background:var(--color-ink-a70);opacity:.25;width:1px;height:28px;margin:0 var(--space-xs);flex-shrink:0;align-self:center}.search-wrapper{z-index:100;max-width:600px;position:relative}.search-wrapper:focus-within,.search-wrapper.is-open{z-index:1000}.search-input-container{background:var(--color-paper-2);border:2px solid var(--color-navy-raw);border-radius:var(--radius-lg);padding:var(--space-sm) var(--space-lg);box-shadow:var(--shadow-search);transition:box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);align-items:center;gap:var(--space-sm);display:flex;position:relative}.search-input-container:focus-within{box-shadow:var(--shadow-search-focus)}.search-input-container svg{color:var(--color-navy-raw);flex-shrink:0;width:20px;height:20px}.search-input{color:var(--color-navy-raw);font-size:var(--text-base);padding:var(--space-xs) 0;font-weight:500;font-family:var(--font-body);background:0 0;border:none;flex:1;line-height:1}.search-input:focus{outline:none}.search-input::placeholder{color:var(--color-placeholder);font-weight:400}.search-results{top:calc(100% + var(--space-xs));background:var(--color-paper-2);border:1.5px solid var(--color-navy-raw);border-radius:var(--radius-md);z-index:9999;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;opacity:0;visibility:hidden;max-height:420px;transition:opacity var(--dur-normal) var(--ease-out), visibility var(--dur-normal), transform var(--dur-normal) var(--ease-out);position:absolute;left:0;right:0;overflow:hidden auto;transform:translateY(8px);box-shadow:0 16px 40px #0c142a38,0 6px 12px #0c142a1f}.search-results.active{opacity:1;visibility:visible;transform:translateY(0)}.search-results::-webkit-scrollbar{width:4px}.search-results::-webkit-scrollbar-thumb{background:var(--color-rule);border-radius:var(--radius-pill)}.result-item{padding:var(--space-md) var(--space-xl);border-bottom:1px solid var(--color-rule-2);cursor:pointer;color:var(--color-ink);transition:background var(--dur-fast) var(--ease-out);justify-content:space-between;align-items:center;gap:var(--space-md);text-decoration:none;display:flex}.result-item:last-child{border-bottom:none}.result-item:hover{background:var(--color-paper)}.result-item .ri-name{color:var(--color-navy-raw);margin-bottom:var(--space-3xs);font-size:.88rem;font-weight:600}.result-item .ri-sci{color:var(--color-ink-3);font-size:.8rem;font-style:italic;font-weight:500}.vol-badge{padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-sm);font-family:var(--font-outlier);font-size:var(--text-xs);letter-spacing:.06em;background:var(--color-navy-raw);color:var(--color-cyan-raw);white-space:nowrap;flex-shrink:0;font-weight:700}
.vol-grid{gap:var(--space-md);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.vol-card{background:var(--color-paper-2);border:1.5px solid var(--color-rule);border-radius:var(--radius-lg);padding:var(--space-xl) var(--space-lg);box-shadow:var(--shadow-xs);transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), outline-color var(--dur-fast) var(--ease-out);outline-offset:2px;outline:2px solid #0000;flex-direction:column;text-decoration:none;display:flex;position:relative;overflow:hidden}.vol-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-navy-raw);outline-color:var(--color-cyan-raw);transform:translateY(-4px)}.vol-card:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.vol-card-num{font-size:var(--text-4xl);font-weight:900;font-family:var(--font-body);opacity:.85;letter-spacing:-.04em;line-height:1}.vol-card-title{font-size:var(--text-sm);color:var(--color-navy-raw);margin-top:var(--space-sm);text-transform:uppercase;letter-spacing:.06em;font-weight:700}.vol-card-count{font-family:var(--font-outlier);font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-2xs)}.vol-card-status{font-family:var(--font-outlier);font-size:var(--text-xs);margin-top:var(--space-xs);color:var(--color-warning);font-weight:600}.page-header{margin-bottom:var(--space-3xl)}.page-header h1{margin-bottom:var(--space-sm)}.page-header p{color:var(--color-ink-3);font-size:var(--text-lg)}.vol-tabs{gap:var(--space-xs);margin-bottom:var(--space-2xl);flex-wrap:wrap;display:flex}.vol-tab{padding:var(--space-xs) var(--space-lg);background:var(--color-paper-2);border:1.5px solid var(--color-rule);border-radius:var(--radius-pill);color:var(--color-ink-3);font-weight:700;font-size:var(--text-sm);font-family:var(--font-outlier);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);cursor:pointer;letter-spacing:.04em}.vol-tab:hover{border-color:var(--color-navy-raw);color:var(--color-navy-raw);transform:translateY(-1px)}.vol-tab.active{background:var(--color-navy-raw);border-color:var(--color-navy-raw);color:var(--color-cyan-raw);box-shadow:var(--shadow-md)}.vol-tab:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.vol-tab:active{transition-duration:var(--dur-instant);transform:translateY(0)}@keyframes cardReveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes rowReveal{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.book-card{animation:cardReveal var(--dur-slow) var(--ease-out) backwards}.book-card:first-child{animation-delay:0s}.book-card:nth-child(2){animation-delay:60ms}.book-card:nth-child(3){animation-delay:.12s}.book-card:nth-child(4){animation-delay:.18s}.book-card:nth-child(5){animation-delay:.24s}.book-card:nth-child(6){animation-delay:.3s}.book-card:nth-child(7){animation-delay:.36s}.book-card:nth-child(8){animation-delay:.42s}@media (prefers-reduced-motion:reduce){.book-card{opacity:1!important;transition:none!important;animation:none!important;transform:none!important}}
