.discovery-page.review-detail-page{width:100%;max-width:none;margin-inline:0;padding-inline:clamp(12px,1.5vw,32px);text-align:left}.discovery-page.reviews-page{width:min(1440px,calc(100% - clamp(28px, 6vw, 100px)));margin-inline:auto}@media (min-width:901px){.discovery-page.reviews-page{width:100%;max-width:none;padding-inline:clamp(16px,1.25vw,28px)}}.reviews-page>.review-hero{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,4vw,60px);padding:clamp(18px,3.2vw,46px);background:radial-gradient(ellipse at 85% 15%,#284f86,transparent 70%),#14263e}.reviews-page>.review-hero:before{display:none}.reviews-page .review-hero h1{margin-top:0}.review-hero{position:relative;isolation:isolate;overflow:hidden;display:grid;align-items:center;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:clamp(18px,4vw,68px);padding:clamp(22px,3.6vw,54px);border:1px solid #416acb6b;border-radius:22px;color:#f4f8ff;background:radial-gradient(ellipse at 97% 12%,#2265df80,transparent 58%),radial-gradient(ellipse at 10% 100%,#236e9066,transparent 55%),linear-gradient(115deg,#0e182f,#172d59 74%,#223a70)}.review-hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#89b2f818 1px,transparent 0),linear-gradient(90deg,#89b2f818 1px,transparent 0);background-size:29px 29px;-webkit-mask-image:linear-gradient(120deg,transparent,#000 85%);mask-image:linear-gradient(120deg,transparent,#000 85%)}.review-hero-copy{min-width:0}.review-hero .discovery-kicker{color:#b3d6ff}.review-hero h1{margin:9px 0 12px;font-size:clamp(32px,4.6vw,66px);line-height:1.08;letter-spacing:-.045em;overflow-wrap:anywhere}.review-hero h1 span{color:#99d9ff}.review-hero-copy>p{max-width:46ch;margin:0;color:#cfddf3;font-size:clamp(13px,1.1vw,16px);line-height:1.7}.review-hero-stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.review-hero-stats>span{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid #b6d6ff45;border-radius:8px;background:#e5f0ff10;color:#e6efff;font-size:12px}.review-hero-stats svg{width:15px;height:15px;color:#9edaff}.review-feature{display:block;overflow:hidden;border:1px solid #9fbffa60;border-radius:16px;background:#101c36;box-shadow:0 14px 40px #07132d60}.review-feature:hover{border-color:#a1ceff}.review-feature-content{display:grid;grid-template-columns:minmax(96px,36%) minmax(0,1fr);grid-template-rows:1fr;height:222px}.review-feature .review-visual{aspect-ratio:auto;min-height:0;border-right:1px solid #9fbffa26}.review-feature-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;padding:clamp(12px,1.8vw,24px);background:linear-gradient(140deg,#a7d8ff0d,transparent)}.review-feature-label{display:inline-flex;align-items:center;gap:5px;color:#9edaff;font-size:11px;font-weight:700}.review-feature-label svg,.review-feature-link svg{width:14px;height:14px}.review-feature h2{overflow:hidden;margin:8px 0;font-size:clamp(16px,1.75vw,24px);line-height:1.25;overflow-wrap:anywhere}.review-feature h2,.review-feature p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.review-feature p{overflow:hidden;margin:0 0 11px;color:#bbceec;font-size:12px;line-height:1.55}.review-feature-link{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:7px;background:#a7d8ff18;color:#c7e8ff;font-size:12px;font-weight:700}@media (min-width:901px){.reviews-page>.review-hero{grid-template-columns:minmax(0,1fr) minmax(0,clamp(460px,46%,760px))}.reviews-page .review-feature-content{grid-template-columns:clamp(158px,29%,218px) minmax(0,1fr);height:252px}.reviews-page .review-feature-copy{padding:18px clamp(20px,2vw,34px);background:linear-gradient(120deg,#1c304c,#111d32)}.reviews-page .review-feature-label{font-size:13px}.reviews-page .review-feature h2{margin:8px 0 6px;font-size:clamp(21px,1.5vw,29px)}.reviews-page .review-feature p{margin-bottom:12px;font-size:14px}.reviews-page .review-feature-link{min-height:38px;padding-inline:12px;font-size:13px}}@media (prefers-reduced-motion:no-preference){.review-feature .review-cover-backdrop{animation:review-feature-background .6s ease-out both}.review-feature .review-cover-book{animation:review-feature-book .58s cubic-bezier(.2,.75,.25,1) backwards}.review-feature-copy>*{animation:review-feature-copy-in .42s ease-out .12s both}}@keyframes review-feature-background{0%{opacity:.3}to{opacity:1}}@keyframes review-feature-book{0%{opacity:.25;transform:translateX(-12px) rotateY(-38deg) scale(.94)}to{opacity:1;transform:rotateY(-16deg)}}@keyframes review-feature-copy-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.review-library{margin-top:clamp(17px,2.2vw,29px)}.review-controls{margin-bottom:17px;padding:clamp(12px,1.55vw,19px);border:1px solid var(--hub-line);border-radius:15px;background:var(--hub-surface);box-shadow:var(--hub-shadow)}.review-controls-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.review-controls-heading h2{display:flex;align-items:center;gap:7px;margin:0;font-size:clamp(17px,1.7vw,23px)}.review-controls-heading h2 svg{color:var(--hub-blue)}.review-controls-heading p{margin:4px 0 0;color:var(--hub-muted);font-size:12px}.review-filter-tools{display:flex;flex:0 1 570px;align-items:center;gap:8px;min-width:0}.review-filter-tools .discovery-search{flex:1 1 0;min-width:0}.review-filter-reset,.review-genre-trigger{display:inline-flex;align-items:center;gap:8px;min-height:43px;padding:6px 12px;flex-shrink:0;border:1px solid var(--hub-line);border-radius:9px;background:var(--hub-muted-surface);color:inherit;font-size:13px;cursor:pointer}.review-genre-trigger svg{width:16px;color:var(--hub-blue)}.review-genre-trigger svg:last-child{margin-left:auto}.review-genre-dialog{position:fixed;inset:0;margin:auto;width:min(650px,calc(100% - 24px));max-height:calc(100dvh - 32px);padding:0;overflow:hidden;border:1px solid var(--hub-line);border-radius:15px;background:var(--hub-surface);color:inherit;box-shadow:0 20px 70px #07122165}.review-genre-dialog::backdrop{background:#07122199}.review-genre-picker{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px;padding:clamp(12px,3vw,24px);height:min(540px,calc(100dvh - 36px))}.review-genre-picker header{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-genre-picker h3{display:flex;align-items:center;gap:9px;margin:0;font-size:21px}.review-genre-picker h3 svg{color:var(--hub-blue)}.review-genre-picker header button{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:var(--hub-muted-surface);color:inherit;cursor:pointer}.review-genre-picker .discovery-search{width:100%;max-width:none}.review-genre-options{display:grid;align-content:start;gap:15px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--hub-muted) transparent;padding-right:5px}.review-genre-options h4{margin:0 0 7px;color:var(--hub-muted);font-size:13px}.review-genre-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:6px}.review-genre-options button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;padding:6px 10px;border:1px solid var(--hub-line);border-radius:8px;background:var(--hub-muted-surface);color:inherit;text-align:left;font-size:13px;cursor:pointer}.review-genre-options button:hover,.review-genre-options button[aria-pressed=true]{border-color:var(--hub-line);background:var(--hub-soft-blue);color:var(--hub-blue)}.review-genre-options p,.review-genre-options small{color:var(--hub-muted);font-size:12px}.review-genre-options small{flex:none}.review-genre-options .review-genre-all{font-weight:700}.review-genre-picker .discovery-search:focus-within{border-color:var(--hub-blue)}.review-genre-picker .discovery-search input:focus{outline:none}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.3vw,22px);margin:0;padding:0;list-style:none}.reviews-grid>li{min-width:0}.review-card{display:flex;flex-direction:column;min-width:0;height:100%;border:1px solid var(--hub-line);border-radius:15px;background:var(--hub-surface);box-shadow:var(--hub-shadow);transition:border-color .18s ease,transform .18s ease}.review-card:hover{transform:translateY(-2px);border-color:var(--hub-blue)}.review-card>.review-visual{border-radius:14px 14px 0 0}.review-visual{position:relative;isolation:isolate;overflow:hidden;display:grid;place-items:center;aspect-ratio:16/9;background-color:#284067;color:#edf5ff;perspective:650px}.review-visual>.review-cover-backdrop{position:absolute;inset:0;z-index:-1;background-position:50%;background-size:cover;background-repeat:no-repeat;filter:blur(16px) brightness(.68);transform:scale(1.16)}.review-cover-book{position:relative;height:84%;aspect-ratio:2/3;transform:rotateY(-16deg);border-radius:3px 1px 1px 3px;box-shadow:9px 12px 18px #0209169c,-2px 3px 5px #02091655}.review-cover-book:before{content:"";position:absolute;inset:2px -8px 2px auto;width:9px;transform:skewY(18deg);border-radius:0 2px 2px 0;background:repeating-linear-gradient(90deg,#b1a99d 0 1px,#ece6db 1px 2px);box-shadow:2px 0 0 #263245}.review-cover-book>.story-uploaded-cover{-o-object-fit:cover;object-fit:cover;border-radius:inherit}.review-cover-fallback{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6%;overflow:hidden;padding:10%;border:1px solid #ffffff35;border-radius:inherit;color:#fff4df;text-align:center;text-shadow:0 1px 5px #0008}.review-cover-fallback svg{flex:none;width:18%;height:auto}.review-cover-fallback strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden;overflow-wrap:anywhere;font:650 clamp(9px,1.3vw,18px)/1.18 Georgia,serif}.review-cover-fallback small{font-size:clamp(7px,.75vw,11px)}.review-cover-book:after{content:"";position:absolute;inset:0 auto 0 0;z-index:3;width:9px;border-radius:3px 0 0 3px;background:linear-gradient(90deg,#0006,#fff3 32%,#0004 58%,transparent);pointer-events:none}@media (prefers-reduced-motion:no-preference){.review-cover-book{transition:transform .38s cubic-bezier(.2,.75,.25,1),box-shadow .38s ease}:is(.review-card,.review-feature):focus-visible .review-cover-book{transform:translateY(-5px) rotateY(-30deg) rotate(-2deg) scale(1.04);box-shadow:15px 16px 24px #020916a6}@media (hover:hover){:is(.review-card,.review-feature):hover .review-cover-book{transform:translateY(-5px) rotateY(-30deg) rotate(-2deg) scale(1.04);box-shadow:15px 16px 24px #020916a6}}:is(.review-card,.review-feature):active .review-cover-book{transform:translateY(-3px) rotateY(-27deg) scale(.98);box-shadow:7px 9px 15px #0209169c;transition-duration:.12s}}.review-card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;gap:7px;padding:clamp(12px,1.15vw,18px)}.review-genre{display:inline-flex;align-items:center;padding:4px 7px;border-radius:6px;background:var(--hub-soft-blue);color:var(--hub-blue);font-size:10px;font-weight:700}.review-card h3{margin:0;font-size:clamp(15px,1.35vw,20px);line-height:1.34}.review-card h3,.review-card-body>p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere}.review-card-body>p{margin:0 0 3px;color:var(--hub-muted);font-size:12px;line-height:1.55}.review-card-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 8px;width:100%;margin-top:auto;padding-top:9px;border-top:1px solid var(--hub-line);font-size:11px}.review-card-footer>:is(time,span){display:inline-flex;align-items:center;gap:4px;color:var(--hub-muted)}.review-card-footer>span{color:var(--hub-blue);font-weight:700}.review-card-footer svg{width:13px;height:13px}.review-detail-nav{margin-bottom:14px}.review-back{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:6px 13px;border:1px solid var(--hub-line);border-radius:10px;background:var(--hub-surface);color:var(--hub-blue);font-size:13px;font-weight:700}.review-back span{display:grid;place-items:center;width:22px;height:22px;border-radius:6px;background:var(--hub-soft-blue)}.review-back:hover{border-color:var(--hub-blue);background:var(--hub-muted-surface)}.review-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) clamp(240px,22vw,390px);align-items:start;gap:clamp(14px,1.5vw,26px)}.review-article{min-width:0;border:1px solid var(--hub-line);border-radius:18px;background:var(--hub-surface);box-shadow:var(--hub-shadow)}.review-article-hero{display:block;padding:clamp(20px,3.5vw,45px);border:0;border-radius:17px 17px 0 0}.review-article-hero h1{font-size:clamp(28px,4vw,51px)}.review-article-hero .review-hero-copy{max-width:1080px;margin-inline:0}.review-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:7px 12px;color:#c2d5f2;font-size:13px}.review-article-meta .review-genre{background:#cae4ff28;color:#d5eaff}.review-article-body{margin-inline:0;padding:clamp(20px,3.5vw,45px);text-align:left}.review-article-body p{max-width:88ch;margin:0 0 16px;color:var(--hub-muted);font-size:15px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere}.review-article-body .review-lead{padding:12px 15px;border-left:3px solid var(--hub-blue);border-radius:0 8px 8px 0;background:var(--hub-muted-surface);color:var(--hub-ink);font-weight:650}.review-article-body h2{margin:22px 0 7px;font-size:clamp(18px,2vw,24px)}.review-story-panel{position:sticky;top:16px;padding:clamp(14px,1.5vw,22px);border:1px solid var(--hub-line);border-radius:16px;background:var(--hub-surface);box-shadow:var(--hub-shadow)}.review-story-panel h2{display:flex;align-items:center;gap:7px;margin:0 0 13px;font-size:16px}.review-story-panel h2 svg{width:17px;height:17px;color:var(--hub-blue)}.review-story-info{display:flex;align-items:center;gap:12px;margin-bottom:13px}.review-story-info>.cover{flex:0 0 75px;width:75px;height:108px;padding:7px;border-radius:6px}.review-story-info .cover-title{font-size:10px}.review-story-info .cover-top{font-size:4px}.review-story-info .cover-author{font-size:6px}.review-story-info .cover-ornament{font-size:17px}.review-story-info .cover-rule{display:none}.review-story-info h3{margin:0;font-size:14px;line-height:1.4;overflow-wrap:anywhere}.review-article-body .formatted-body :is(ul,ol){margin-block:0 1em;padding-inline-start:1.5em}.review-article-body .formatted-body blockquote{margin-inline:0;padding-inline-start:1em;border-inline-start:3px solid var(--hub-line)}.review-article-body .formatted-body a{color:var(--hub-blue);text-decoration:underline}.review-story-info p{margin:4px 0 0;color:var(--hub-muted);font-size:12px}.review-story-panel>a{width:100%}@media (min-width:1200px){.reviews-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (min-width:1000px) and (max-width:1199px){.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.review-hero:not(.review-article-hero){grid-template-columns:minmax(0,1fr) minmax(0,44%);gap:15px}.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.review-hero:not(.review-article-hero),.reviews-grid{grid-template-columns:minmax(0,1fr)}.review-filter-tools{flex-basis:100%;flex-wrap:wrap}.review-filter-tools .discovery-search{flex:1 0 100%}.review-genre-trigger{flex:1 1 auto}.review-feature-content{height:196px}.review-feature .review-visual{container-type:inline-size}.review-feature .review-cover-book{width:min(106px,calc(100cqw - 28px));height:auto;margin-right:6px}.review-detail-grid{grid-template-columns:minmax(0,1fr)}.review-story-panel{position:static}}@media (prefers-reduced-motion:reduce){.review-card{transition:none}.review-card:hover{transform:none}}