:root{color-scheme:light;font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#000;background:#fff}
body{margin:0;background:#fff}
.research-page{max-width:1120px;margin:0 auto;padding:32px 16px 48px}
.vx-head h1{font-size:clamp(30px,5vw,46px);line-height:1.1;margin:6px 0 12px;letter-spacing:-.02em}
.vx-eyebrow{color:#bf3513;font-weight:700;font-size:13px;letter-spacing:.06em;text-transform:uppercase;margin:0}
.vx-deck{font-size:18px;line-height:1.55;max-width:760px;margin:0 0 10px}
.vx-sources a,.vx-foot a{color:#bf3513}
.vx-sources{font-size:15px;margin:0}
.vx-foot{margin-top:28px;font-size:13px;line-height:1.55;color:#5c5b55}
.vx-details code,.vx-score output{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.vx-play:focus-visible,.vx-toggle:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid #ff4b1f;outline-offset:2px}
.voice-explorer{margin:28px 0 12px}
.vx-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 16px;background:#f5f4ef;border-radius:22px;padding:22px}
.vx-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#000;min-width:0}
.vx-field>span{font-weight:600}
.vx-field select,.vx-field input[type=search]{width:100%;min-height:44px;box-sizing:border-box;border:1px solid #e5e3d8;border-radius:12px;background-color:#fff;color:#000;font-size:15px;padding:0 14px}
.vx-field select{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;text-overflow:ellipsis}
.vx-range,.vx-search{grid-column:span 2}
.vx-range input{width:100%;min-height:44px;accent-color:#ff4b1f}
.vx-summary{font-size:15px;margin:20px 0 4px!important;font-weight:600}
.vx-note{font-size:14px;color:#5c5b55;margin:0 0 10px!important}
.vx-note:empty{display:none}
.vx-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.vx-row{display:grid;grid-template-columns:48px minmax(0,1.2fr) minmax(0,1fr) 220px;gap:18px;align-items:center;background:#fff;border:1px solid #e5e3d8;border-radius:18px;padding:16px 18px}
.vx-row.vx-playing{border-color:#ff4b1f}
.vx-play{width:48px;height:48px;border-radius:50%;border:0;background:#ff4b1f;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.vx-main{min-width:0}
.research-page .vx-main h3{font-size:18px;line-height:1.3;margin:0 0 4px;overflow-wrap:anywhere}
.research-page .vx-meta,.research-page .vx-rank{font-size:13px;line-height:1.45;margin:0;color:#5c5b55}
.research-page .vx-rank{color:#000}
.vx-scores{display:flex;flex-direction:column;gap:6px;min-width:0}
.vx-score{display:grid;grid-template-columns:86px 1fr 42px;align-items:center;gap:8px;font-size:12px}
.vx-track{height:8px;border-radius:99px;background:#efede6;overflow:hidden}
.vx-track>span{display:block;height:100%;border-radius:99px;background:#000}
.vx-overall .vx-track>span{background:#ff4b1f}
.vx-score output{text-align:right;font-size:13px}
.vx-side{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
.vx-badge{font-size:12px;font-weight:600;border-radius:999px;padding:4px 10px;background:#f5f4ef;color:#000}
.vx-use-none{background:#d9f4d2}.vx-use-credit{background:#d2edff}.vx-use-copyleft{background:#fbeabd}.vx-use-unclear{background:#ffe0ef}
.research-page a.vx-download{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:999px;background:#000;color:#fff;text-decoration:none;font-size:13px;font-weight:600}
.research-page a.vx-download svg{color:#ff4b1f}
.vx-links{display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;font-size:13px}
.vx-links a,.vx-toggle{display:inline-flex;align-items:center;min-height:32px}
.vx-toggle{border:0;background:none;padding:0;color:#bf3513;font-size:13px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.vx-details{grid-column:1/-1;border-radius:12px;background:#f5f4ef;padding:14px 16px}
.vx-details dl{margin:0;display:grid;gap:8px}
.vx-details dl>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;font-size:13px}
.vx-details dt{font-weight:600}
.vx-details dd{margin:0;overflow-wrap:anywhere}
.vx-details code{font-size:12px}
.vx-footer{display:flex;justify-content:center;margin:18px 0 6px}
.vx-more-btn,.vx-reset{min-height:44px;border-radius:999px;border:1px solid #000;background:#fff;color:#000;font-size:14px;font-weight:600;padding:0 20px;cursor:pointer}
.vx-empty{font-size:15px}
@media(max-width:1100px){.vx-row{grid-template-columns:48px minmax(0,1fr) 220px}.vx-scores{grid-column:2/4;grid-row:2}}
@media(max-width:760px){.vx-controls{grid-template-columns:1fr 1fr;padding:16px}.vx-range,.vx-search{grid-column:1/-1}
 .vx-row{grid-template-columns:48px minmax(0,1fr);gap:12px 14px}.vx-scores,.vx-side{grid-column:1/-1;grid-row:auto}
 .vx-details dl>div{grid-template-columns:1fr;gap:2px}}
.research-page details.research-more{margin:18px 0 0}
.research-page details.research-more>summary{list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;font-weight:600;font-size:15px;color:#000}
.research-page details.research-more>summary::-webkit-details-marker{display:none}
.research-page details.research-more>summary::after{content:"";width:14px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat center/contain;transition:transform .2s}
.research-page details.research-more[open]>summary::after{transform:rotate(180deg)}
.research-page details.research-more code{font-size:13px}
@media(prefers-reduced-motion:reduce){.research-page details.research-more>summary::after{transition:none}}
@media(max-width:480px){.vx-controls{grid-template-columns:1fr}.vx-range,.vx-search{grid-column:auto}}
