:root { --green:#16853f; --green-dark:#116b33; --text:#202124; --muted:#6b7280; --line:#e5e7eb; }
html,body { min-height:100%; }
body { color:var(--text); background:#fff; font-family:Arial,Helvetica,sans-serif; }
a { color:#1769aa; }
.home-body { display:flex; flex-direction:column; }
.site-header { height:68px; border-bottom:1px solid var(--line); display:flex; align-items:center; }
.site-header .container { display:flex; align-items:center; height:100%; }
.site-wordmark,.home-wordmark { color:#30343b; font-weight:600; letter-spacing:-2px; text-decoration:none!important; }
.site-wordmark { font-size:26px; }
.home-wordmark { display:inline-block; font-size:64px; line-height:1; margin-bottom:26px; }
.site-wordmark span,.home-wordmark span { color:var(--green); }
.search-home { flex:1; min-height:580px; display:flex; justify-content:center; align-items:flex-start; padding:140px 20px 80px; text-align:center; }
.search-home-inner { width:100%; max-width:650px; }
.search-home-inner>p { color:var(--muted); font-size:16px; margin:0 0 24px; }
.search-form { width:100%; }
.search-input-wrap { height:48px; display:flex; align-items:center; border:1px solid #dfe1e5; border-radius:24px; padding:0 17px; background:#fff; transition:.15s ease; }
.search-input-wrap:hover,.search-input-wrap:focus-within { border-color:transparent; box-shadow:0 1px 6px rgba(32,33,36,.25); }
.search-input-wrap .glyphicon { color:#9aa0a6; margin-right:12px; }
.search-input-wrap input { flex:1; border:0; outline:0; height:42px; font-size:16px; background:transparent; min-width:0; }
.search-button { margin-top:28px; background:#f8f9fa; border:1px solid #f8f9fa; color:#3c4043; padding:9px 18px; }
.search-button:hover,.search-button:focus { background:#f8f9fa; border-color:#dadce0; box-shadow:0 1px 1px rgba(0,0,0,.1); }
.home-explainer { color:var(--muted); font-size:13px; line-height:1.6; margin:42px auto 0; max-width:560px; }
.home-explainer strong { color:var(--text); }
.public-page { max-width:1050px; padding-top:40px; min-height:560px; }
.search-form-compact { display:flex; gap:12px; max-width:720px; margin-bottom:18px; }
.search-form-compact .search-input-wrap { flex:1; }
.search-form-compact .search-button { margin:0; min-width:90px; background:var(--green); border-color:var(--green); color:#fff; }
.search-form-compact .search-button:hover { background:var(--green-dark); border-color:var(--green-dark); }
.result-count { color:var(--muted); font-size:13px; margin:12px 4px 24px; }
.result-table { border:0; border-top:1px solid var(--line); background:#fff; }
.result-table>thead>tr>th { color:var(--muted); background:#fff; border-bottom:1px solid var(--line); font-size:12px; font-weight:500; padding:12px 10px; }
.result-table>tbody>tr>td { border-top:1px solid #f0f1f2; padding:15px 10px; vertical-align:middle; }
.result-table.table-striped>tbody>tr:nth-of-type(odd) { background:#fff; }
.result-table.table-hover>tbody>tr:hover { background:#fafafa; }
.cpu-link { color:var(--text); font-weight:600; }
.detail-link { color:var(--green); font-weight:600; }
.score { color:var(--green-dark); font-size:16px; font-weight:bold; }
.back-link { display:inline-block; color:var(--muted); margin-bottom:34px; }
.eyebrow { color:var(--green); font-size:12px; font-weight:bold; letter-spacing:.8px; text-transform:uppercase; }
.summary-heading h1,.detail-heading h1 { font-size:34px; font-weight:400; margin:8px 0; }
.summary-heading p { color:var(--muted); }
.summary-stats { display:grid; grid-template-columns:2fr 1fr 1fr; border:1px solid var(--line); border-radius:12px; margin:32px 0 42px; overflow:hidden; }
.summary-stats>div { padding:25px 28px; border-left:1px solid var(--line); }
.summary-stats>div:first-child { border-left:0; }
.summary-stats span,.detail-score-block span { display:block; color:var(--muted); font-size:13px; margin-bottom:8px; }
.summary-stats strong { display:block; font-size:25px; font-weight:500; }
.summary-stats .summary-primary strong { color:var(--green); font-size:36px; }
.section-title { font-size:20px; font-weight:500; margin-bottom:18px; }
.detail-page { max-width:900px; }
.detail-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:40px; padding-bottom:34px; border-bottom:1px solid var(--line); }
.detail-score-block { min-width:230px; text-align:right; }
.detail-score-block strong { display:block; color:var(--green); font-size:44px; font-weight:400; line-height:1; }
.detail-score-block small { display:block; color:var(--muted); margin-top:8px; }
.detail-list { margin:12px 0 0; }
.detail-list>div { display:grid; grid-template-columns:220px 1fr; padding:17px 0; border-bottom:1px solid #f0f1f2; }
.detail-list dt { color:var(--muted); font-weight:400; }
.detail-list dd { margin:0; }
.notes { margin-top:35px; }
.notes h2 { font-size:20px; }
.well { background:#fafafa; border-color:var(--line); box-shadow:none; }
.panel { border-radius:6px; box-shadow:0 1px 2px rgba(0,0,0,.07); }
.panel-heading { font-weight:600; }
.page-header { border-color:var(--line); }
.status-pending { color:#8a6d3b; }.status-approved { color:#3c763d; }.status-rejected { color:#a94442; }
footer { color:#70757a; background:#f2f2f2; border-top:1px solid #dadce0; margin-top:70px; padding:18px 0; font-size:12px; }
.home-body footer { margin-top:auto; }
@media(max-width:767px){
  .search-home { padding-top:100px; min-height:500px; }
  .home-wordmark { font-size:50px; }
  .public-page { padding-top:25px; }
  .search-form-compact { display:block; }
  .search-form-compact .search-button { margin-top:12px; width:100%; }
  .summary-stats { grid-template-columns:1fr; }
  .summary-stats>div { border-left:0; border-top:1px solid var(--line); }
  .summary-stats>div:first-child { border-top:0; }
  .detail-heading { display:block; }
  .detail-score-block { text-align:left; margin-top:28px; }
  .detail-list>div { grid-template-columns:1fr; gap:6px; }
  footer .text-right { text-align:left; margin-top:8px; }
}
