*{box-sizing:border-box}:root{--paper:#f7f8f4;--surface:#fff;--surface-warm:#fbfbf6;--ink:#172033;--muted:#657083;--line:#dce3dc;--blue:#163f75;--green:#0a9f58;--green-soft:#e8f6ef;--gold:#b98b1f;--shadow:#14263c14}html{background:var(--paper)}body{color:var(--ink);background:linear-gradient(90deg, #163f7509 1px, transparent 1px), linear-gradient(#0a9f5808 1px, transparent 1px), var(--paper);background-size:42px 42px;margin:0;font-family:Georgia,Times New Roman,serif}a{color:var(--blue);text-underline-offset:.18em;text-decoration-thickness:1px}button,select{font:inherit}.siteShell{width:min(1160px,100% - 32px);margin:0 auto;padding:16px 0 56px}.siteHeader{justify-content:space-between;align-items:center;gap:24px;padding:8px 0 14px;display:flex}.brandMark{align-items:center;display:inline-flex}.brandMark img{width:188px;height:auto;display:block}.mainSiteLink{border:1px solid var(--blue);background:var(--surface);min-height:42px;color:var(--blue);border-radius:6px;align-items:center;padding:0 15px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.intro{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0 18px}.eyebrow,.metaLabel,.institution span,.sortControls>span,.summaryStats dt{color:var(--green);letter-spacing:0;text-transform:uppercase;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;font-weight:800}h1{max-width:680px;color:var(--blue);margin:7px 0 0;font-size:3.25rem;line-height:.96}.summaryStats{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:min(100%,520px);margin:0;display:grid;overflow:hidden}.summaryStats div{border-right:1px solid var(--line);padding:10px 12px}.summaryStats div:last-child{border-right:0}.summaryStats dd{color:var(--ink);margin:5px 0 0;font-size:1.3rem;font-weight:800}.reviewControls{z-index:2;border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 12px 32px var(--shadow);background:#ffffffeb;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;margin:14px 0 16px;padding:10px 12px;display:flex;position:sticky;top:0}.sortControls{align-items:center;gap:12px;margin-left:auto;display:flex}.sortGroup{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sortGroup button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--ink);cursor:pointer;border-radius:6px;padding:0 13px}.sortGroup button.active{border-color:var(--green);background:var(--green-soft);color:#0a5d39;font-weight:800}.reviewGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.reviewCard{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:0 14px 38px var(--shadow);border-radius:8px;flex-direction:column;gap:18px;padding:22px;display:flex}.reviewMeta{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;padding-bottom:16px;display:grid}.reviewMeta h2{color:var(--ink);margin:6px 0 0;font-size:1.42rem;line-height:1.12}.institution{color:var(--muted);margin:9px 0 0;line-height:1.35}.institution span{color:var(--blue);margin-bottom:3px;display:block}.ratingBlock{border:1px solid var(--line);background:var(--surface-warm);text-align:right;border-radius:8px;min-width:185px;padding:12px}.stars{color:var(--gold);letter-spacing:0;white-space:nowrap;font-size:1.05rem;display:block}.stars span{color:#d9d0bd}.ratingBlock strong,.ratingBlock time{margin-top:6px;display:block}.ratingBlock strong{font-size:.94rem}.ratingBlock time{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem}.reviewText p{color:var(--ink);margin:0 0 12px;font-size:1.06rem;line-height:1.55}.reviewText p:last-child{margin-bottom:0}.promptedAnswer{margin-top:12px}.answerPrompt{color:var(--green);letter-spacing:0;text-transform:uppercase;margin-bottom:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;font-weight:800;line-height:1.35}.productNotes{border-top:1px solid var(--line);padding-top:16px}.productNotes h3{color:var(--blue);margin:0 0 12px;font-size:1rem}.productNote{border:1px solid var(--line);background:var(--surface-warm);border-radius:8px;margin:0 0 12px;padding:12px}.productNote:last-child{margin-bottom:0}.productNote div{flex-wrap:wrap;gap:7px;margin-bottom:8px;display:flex}.productCode,.productRating{border-radius:4px;align-items:center;min-height:24px;padding:0 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem;font-weight:800;display:inline-flex}.productCode{background:var(--blue);color:#fff}.productRating{background:var(--green-soft);color:#0a5d39}.productNote p{color:var(--muted);margin:0;font-size:.98rem;line-height:1.45}.productDescription:before{content:": "}.productNote a{font-weight:800}@media (max-width:860px){.siteShell{width:min(100% - 24px,680px);padding-bottom:36px}.siteHeader,.reviewControls,.reviewMeta{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.brandMark img{width:170px}h1{font-size:2.65rem}.reviewGrid{grid-template-columns:1fr}.summaryStats{grid-template-columns:repeat(3,minmax(0,1fr))}.summaryStats div{border-right:1px solid var(--line);border-bottom:0}.summaryStats div:last-child{border-right:0}.sortGroup{justify-content:flex-start}.sortControls{flex-direction:column;align-items:stretch;margin-left:0}.ratingBlock{text-align:left;min-width:0}}.introLead{max-width:760px;margin:14px 0 0;font-size:1.12rem;line-height:1.5}.disclosure{max-width:760px;color:var(--muted);margin:10px 0 0;font-size:.92rem;line-height:1.5}.productIndex{border-top:1px solid var(--line);margin-top:28px;padding:18px 0 32px}.productIndex h2{color:var(--blue);margin:0 0 12px;font-size:1.6rem}.productIndex ul{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.productIndex li{border:1px solid var(--line);background:var(--surface);border-radius:6px;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:10px 12px;display:flex}.productIndex a{flex-basis:100%;font-weight:800}.productIndexStats{color:var(--muted);font-size:.9rem}
