:root{--bg:#f7f8fa;--surface:#fff;--text:#17181c;--text-muted:#5d6470;--border:#e4e7ec;--accent:#2456e6;--accent-dark:#1b41b8;--accent-soft:#eef2ff;--score:#b7791f;--danger:#b42318;--success:#067647;--radius:12px;--radius-sm:8px;--container:1100px;--shadow:0 1px 2px #1018280f, 0 1px 3px #1018281a}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);flex-direction:column;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.55;display:flex}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0 0 .5em;line-height:1.2}p{margin:0 0 1em}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 1.25rem}.site-main{flex:1}.section{padding:2.5rem 0}.section>.container{padding:0}.lead{color:var(--text-muted);font-size:1.1rem}.muted{color:var(--text-muted)}.site-header{background:var(--surface);border-bottom:1px solid var(--border);z-index:20;position:sticky;top:0}.site-header-inner{flex-wrap:wrap;align-items:center;gap:1.5rem;min-height:60px;padding-top:.5rem;padding-bottom:.5rem;display:flex}.brand{color:var(--text);align-items:center;gap:.55rem;font-size:1.15rem;font-weight:700;display:inline-flex}.brand:hover{text-decoration:none}.brand-mark{background:var(--accent);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:.85rem;font-weight:700;display:inline-flex}.site-nav{scrollbar-width:none;flex-wrap:wrap;gap:.25rem;display:flex;overflow-x:auto}.site-nav::-webkit-scrollbar{display:none}.site-nav-link{color:var(--text-muted);border-radius:var(--radius-sm);white-space:nowrap;padding:.4rem .7rem;font-size:.95rem}.site-nav-link:hover{color:var(--text);background:var(--accent-soft);text-decoration:none}.hero{background:linear-gradient(180deg, var(--accent-soft), var(--bg));text-align:center;padding:4rem 0 3rem}.hero h1{max-width:640px;margin:0 auto .75rem;font-size:clamp(1.8rem,4vw,2.6rem)}.hero p{color:var(--text-muted);max-width:560px;margin:0 auto;font-size:1.1rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem}.product-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem;display:grid}.category-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem;display:grid}.category-card{color:var(--text);transition:transform .1s,box-shadow .1s;display:block}.category-card:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 4px 12px #1018281f}.category-card strong{margin-bottom:.35rem;display:block}.category-card span{color:var(--text-muted);font-size:.9rem}.product-card-head{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.product-card-brand{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:.8rem}.product-card-name{margin:.15rem 0 0;font-size:1.05rem}.product-card-desc{color:var(--text-muted);margin:.6rem 0 1rem;font-size:.92rem}.score-badge{background:var(--score);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;min-width:42px;height:42px;padding:0 .5rem;font-size:1.05rem;font-weight:700;display:inline-flex}.score-badge--lg{min-width:64px;height:64px;font-size:1.5rem}.score-breakdown{gap:.5rem;margin-top:1rem;display:grid}.score-row{grid-template-columns:110px 1fr 60px;align-items:center;gap:.75rem;font-size:.9rem;display:grid}.score-row-label{color:var(--text-muted)}.score-bar-track{background:var(--border);border-radius:999px;height:8px;overflow:hidden}.score-bar-fill{background:var(--score);border-radius:999px;height:100%}.score-row-value{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1.1rem;font-size:.95rem;font-weight:600;transition:background .1s,border-color .1s;display:inline-flex}.btn:hover{text-decoration:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-dark)}.btn-outline{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-sm{padding:.35rem .8rem;font-size:.85rem}.breadcrumbs{color:var(--text-muted);margin-bottom:1rem;font-size:.9rem}.product-layout{grid-template-columns:1.1fr .9fr;gap:2rem;display:grid}@media (max-width:860px){.product-layout{grid-template-columns:1fr}}.pros-cons{grid-template-columns:1fr 1fr;gap:1.25rem;margin-top:2rem;display:grid}@media (max-width:640px){.pros-cons{grid-template-columns:1fr}}.pros-cons ul{margin:0;padding-left:1.2rem}.pros-cons li+li{margin-top:.4rem}.offer-row{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0;display:flex}.offer-row:last-child{border-bottom:none}.offer-merchant{font-weight:600}.offer-price{font-size:1.1rem;font-weight:700}.offer-price .was{color:var(--text-muted);margin-left:.4rem;font-size:.9rem;font-weight:400;text-decoration:line-through}.offer-meta{color:var(--text-muted);font-size:.85rem}.tag{background:var(--accent-soft);color:var(--accent-dark);border-radius:999px;padding:.15rem .55rem;font-size:.8rem;font-weight:600;display:inline-block}.guide-list{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.guide-list li{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.25rem}.guide-list a{font-weight:600}.guide-list p{color:var(--text-muted);margin:.3rem 0 0;font-size:.92rem}.article-body{max-width:720px}.table-scroll{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}table.table{border-collapse:collapse;width:100%;min-width:560px;font-size:.92rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.7rem 1rem}.table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;background:#fbfbfc;font-size:.8rem}.table tr:last-child td{border-bottom:none}.status-pill{border-radius:999px;padding:.1rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.status-pill--active,.status-pill--published{color:var(--success);background:#e7f6ec}.status-pill--draft{color:var(--text-muted);background:#eef0f3}.status-pill--archived,.status-pill--inactive{color:var(--danger);background:#fdeceb}.status-pill--review{color:#9a6700;background:#fef6e7}.status-pill--insufficient_data,.status-pill--unproven,.status-pill--weak,.status-pill--very_low,.status-pill--low,.status-pill--new,.status-pill--early,.status-pill--unknown{color:var(--text-muted);background:#eef0f3}.status-pill--watch,.status-pill--emerging,.status-pill--developing,.status-pill--medium,.status-pill--stable{color:#9a6700;background:#fef6e7}.status-pill--promising,.status-pill--growing,.status-pill--high{background:var(--accent-soft);color:var(--accent-dark)}.status-pill--strong,.status-pill--winner_candidate,.status-pill--validated,.status-pill--surging,.status-pill--very_high{color:var(--success);background:#e7f6ec}.status-pill--winner,.status-pill--proven{background:var(--accent);color:#fff}.status-pill--declining{color:var(--danger);background:#fdeceb}.status-pill--critical{color:var(--danger);background:#fdeceb;font-weight:700}.status-pill--triage-new{background:var(--accent-soft);color:var(--accent-dark)}.status-pill--triage-reviewing{color:#9a6700;background:#fef6e7}.status-pill--triage-actioned,.status-pill--triage-dismissed,.status-pill--editorial-draft{color:var(--text-muted);background:#eef0f3}.status-pill--editorial-reviewing{color:#9a6700;background:#fef6e7}.status-pill--editorial-approved{background:var(--accent-soft);color:var(--accent-dark)}.status-pill--editorial-published{color:var(--success);background:#e7f6ec}.status-pill--editorial-dismissed,.status-pill--version-draft{color:var(--text-muted);background:#eef0f3}.status-pill--version-approved{background:var(--accent-soft);color:var(--accent-dark)}.status-pill--version-published{color:var(--success);background:#e7f6ec}.status-pill--version-superseded{color:var(--text-muted);background:#eef0f3}.status-pill--impact-pending,.status-pill--impact-collecting,.status-pill--impact-ready,.status-pill--impact-unknown{color:#9a6700;background:#fef6e7}.status-pill--impact-evaluated{background:var(--accent-soft);color:var(--accent-dark)}.status-pill--impact-insufficient_data{color:var(--text-muted);background:#eef0f3}.status-pill--ai-generated{background:var(--accent-soft);color:var(--accent-dark)}.status-pill--ai-accepted{color:var(--success);background:#e7f6ec}.status-pill--ai-rejected,.status-pill--ai-superseded{color:var(--text-muted);background:#eef0f3}.status-pill--ai-failed,.status-pill--impact-worse{color:var(--danger);background:#fdeceb}.status-pill--impact-neutral{color:var(--text-muted);background:#eef0f3}.status-pill--impact-improved{color:var(--success);background:#e7f6ec}.status-pill--impact-strongly_improved{background:var(--accent);color:#fff}.grid-2{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}@media (max-width:860px){.grid-2{grid-template-columns:1fr}}.evidence-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding:.35rem 0;font-size:.92rem;display:flex}.evidence-row:last-child{border-bottom:none}.detail-list{gap:.5rem;margin:0;display:grid}.detail-list dt{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.detail-list dd{margin:0}.admin-nav{flex-wrap:wrap;gap:.35rem;margin-bottom:1.75rem;display:flex}.admin-nav a{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text);padding:.45rem .9rem;font-size:.92rem}.admin-nav a:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.25rem;margin-bottom:2rem;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.25rem}.stat-card .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.stat-card .stat-value{margin-top:.25rem;font-size:1.6rem;font-weight:700}.admin-heading{margin-bottom:1.25rem}.admin-heading-row{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-heading-row .admin-heading{margin-bottom:0}.notice{color:#6b5300;border-radius:var(--radius);background:#fff8e6;border:1px solid #f2e0a9;padding:.9rem 1.1rem;font-size:.92rem}.notice--error{color:var(--danger);background:#fdeceb;border-color:#f3c1bd}.site-footer{background:var(--surface);border-top:1px solid var(--border);margin-top:3rem;padding:2.5rem 0 2rem;font-size:.92rem}.footer-grid{grid-template-columns:1.4fr 1fr 1fr;gap:2rem;display:grid}@media (max-width:720px){.footer-grid{grid-template-columns:1fr;gap:1.5rem}}.footer-grid h3{margin-bottom:.6rem;font-size:.95rem}.footer-links{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.footer-note{color:var(--text-muted);border-top:1px solid var(--border);margin-top:2rem;padding-top:1rem;font-size:.85rem}.status-pill--locale-fr{color:var(--success);background:#e7f6ec}.status-pill--locale-en{color:#1a56db;background:#e8f0fe}.status-pill--localization-published{color:var(--success);background:#e7f6ec}.status-pill--localization-draft,.status-pill--localization-missing{color:var(--text-muted);background:#eef0f3}.status-pill--localization-reviewing,.status-pill--localization-approved{color:#9a6700;background:#fef6e7}.locale-switch{white-space:nowrap;align-items:center;gap:.25rem;margin-left:1rem;display:inline-flex}.locale-switch-link{color:var(--text-muted);border:1px solid #0000;border-radius:999px;padding:.2rem .55rem;font-size:.78rem;font-weight:700;text-decoration:none}.locale-switch-link:hover{color:var(--text);border-color:var(--border,#d8dbe0)}.locale-switch-link-active{background:var(--text);color:#fff}.locale-switch-hint{margin-left:.15rem;font-size:.75rem}@media (max-width:720px){.locale-switch{margin-left:0}.locale-switch-hint{display:none}}
