:root{--ink:#16353d;--muted:#65777c;--green:#166956;--mint:#aff0d4;--line:#dce5e6;--bg:#f4f7f8;--growth:#218268;--size:#4596c2;--purchasing:#8875be;--digital:#d39640;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:16px;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select{font:inherit}button,a,select,input{ -webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #36a58c;outline-offset:4px}h1,h2,h3,p{margin:0}h2{font-size:1.15rem;letter-spacing:-.025em}h3{font-size:.9rem}.header{height:100px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 max(4%,calc((100vw - 1392px)/2))}.brand{display:flex;gap:13px;align-items:center}.logo{height:42px;width:42px;background:var(--ink);border-radius:11px;display:grid;place-items:center}.logo svg{width:29px;fill:none;stroke:var(--mint);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.wordmark{font-size:1.65rem;font-weight:750;text-decoration:none;letter-spacing:-1px}.brand-dot{color:#258d70}.brand p{font-size:.75rem;color:var(--muted);margin-top:3px}.source-badge{font-size:.8rem;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:20px;padding:8px 12px}.source-badge i{width:7px;height:7px;border-radius:50%;background:#288e69}main{max-width:1392px;margin:auto;padding:40px 0 20px;width:92%}.intro{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:32px}.eyebrow{font-size:.69rem;font-weight:750;letter-spacing:1.8px;color:var(--green);margin-bottom:12px}h1{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:650;letter-spacing:-1.4px;line-height:1.2}.intro p:last-child{margin-top:12px;color:var(--muted);font-size:.96rem}.method-link{font-size:.86rem;text-decoration:none;padding-bottom:4px}.method-link span{margin-left:10px}.workspace{display:grid;grid-template-columns:310px minmax(0,1fr);align-items:start;gap:26px}.panel{background:white;border:1px solid var(--line);border-radius:13px;box-shadow:0 3px 7px #15343d03}.priorities{padding:24px}.panel-heading{display:flex;align-items:center;gap:10px}.section-icon{transform:rotate(90deg);font-size:24px;color:var(--green)}.muted{font-size:.8rem;color:var(--muted);margin-top:7px;line-height:1.6}fieldset{border:0;padding:0;margin:0;min-width:0}.field{margin-top:23px}label{display:block;font-size:.87rem;font-weight:600;margin-bottom:9px}select{width:100%;border:1px solid #d7e1e3;border-radius:7px;padding:11px 28px 11px 12px;color:var(--ink);font-size:.88rem;background:#fff}select:hover{border-color:#7caaa0}.weights-title{display:flex;align-items:center;justify-content:space-between;margin-top:29px;padding-top:25px;border-top:1px solid var(--line);gap:8px}.text-button{border:0;background:none;padding:0;color:var(--green);font-size:.8rem}.text-button:hover{text-decoration:underline}.weight-help{font-size:.75rem;color:var(--muted);margin-top:8px}.weight{margin-top:23px}.weight-head{display:flex;align-items:center;justify-content:space-between;gap:5px}.weight-head label{font-size:.82rem;margin:0;font-weight:500;max-width:165px}.number-wrap{display:flex;align-items:center;border:1px solid var(--line);padding:5px 6px;border-radius:6px;font-size:.8rem}.number-wrap input{appearance:textfield;-moz-appearance:textfield;width:30px;border:0;padding:0;text-align:right;color:var(--ink);background:transparent}.number-wrap input::-webkit-inner-spin-button{appearance:none}.number-wrap span{color:var(--muted);margin-left:2px}input[type=range]{width:100%;height:5px;margin:15px 0 0;accent-color:var(--tone);cursor:pointer}.total{display:flex;justify-content:space-between;background:#edf7f2;border:1px solid #d6ebdf;border-radius:7px;padding:11px 12px;margin-top:25px;font-size:.82rem;color:#28654f}.total.invalid{background:#fff0ef;border-color:#f3ccca;color:#a23131}.validation{color:#a23131;font-size:.82rem;line-height:1.5;margin-top:8px}.primary{display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:white;border:0;border-radius:7px;font-size:.88rem;font-weight:600;width:100%;padding:15px;margin-top:23px;transition:background .2s,transform .2s}.primary:hover:enabled{background:#236052;transform:translateY(-1px)}.panel-foot{text-align:center;color:#839095;font-size:.73rem;line-height:1.8;margin-top:17px}.results{min-width:0}.result-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:3px 0 19px}.result-heading h2{font-size:1.35rem}.result-heading p{font-size:.8rem;color:var(--muted);margin-top:7px}.count-pill{font-size:.72rem;border:1px solid var(--line);border-radius:20px;background:white;padding:7px 11px;white-space:nowrap}.winner{background:var(--ink);color:white;border-radius:13px;overflow:hidden;position:relative;box-shadow:0 5px 20px #143b3510}.winner-top{padding:26px 28px;display:flex;justify-content:space-between;gap:15px;align-items:center}.winner-label{font-size:.65rem;letter-spacing:1.6px;color:var(--mint);font-weight:700;margin-bottom:15px}.winner-country{display:flex;align-items:center;gap:12px}.flag{font-size:1.8rem}.winner h3{font-size:2rem;letter-spacing:-.7px;font-weight:600}.winner-region{color:#b6cacf;font-size:.83rem;margin:9px 0 0}.overall{text-align:right;flex-shrink:0}.overall strong{font-size:3.4rem;letter-spacing:-2px;font-weight:550;color:var(--mint)}.overall span{font-size:.8rem;color:#b6cacf}.overall p{font-size:.72rem;color:#c2d6d7;margin-top:4px}.raw-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #ffffff1a;background:#ffffff04;padding:19px 28px;gap:10px}.raw-label{font-size:.7rem;color:#b6cacf;display:block;margin-bottom:7px}.raw-value{display:block;font-size:1.08rem;font-weight:600}.raw-year{font-size:.67rem;color:#a6bec2;margin-top:6px;display:block}.analysis-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:18px;margin-top:19px}.chart-card,.why{padding:23px}.card-kicker{font-size:.69rem;color:var(--muted);margin-top:7px}.chart{margin-top:24px}.bar-row{margin-bottom:17px}.bar-title{display:flex;justify-content:space-between;font-size:.77rem;margin-bottom:7px;gap:8px}.bar-title strong{font-variant-numeric:tabular-nums;font-weight:600}.bar-track{height:8px;background:#edf1f3;border-radius:4px;overflow:hidden}.bar-fill{height:100%;width:var(--score);background:var(--tone);border-radius:4px;transition:width .4s}.chart-axis{display:flex;justify-content:space-between;color:#77878c;font-size:.68rem;margin-top:-2px}.why{background:#edf5f2;border-color:#d8e7e0}.why-icon{width:31px;height:31px;display:grid;place-items:center;background:#dbede4;color:var(--green);border-radius:8px;margin-bottom:16px;font-size:18px}.why p{font-size:.88rem;line-height:1.85;color:#405e57;margin-top:12px}.ranking{margin-top:23px;overflow:hidden}.ranking-heading{padding:22px 23px 17px;display:flex;justify-content:space-between;align-items:center}.ranking-heading span{font-size:.7rem;color:var(--muted)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.81rem;text-align:left;white-space:nowrap}th{font-size:.64rem;letter-spacing:.55px;text-transform:uppercase;color:#6d8086;background:#f8fafb;font-weight:600;padding:12px 14px}td{padding:17px 14px;border-top:1px solid #eaf0f1}th:first-child,td:first-child{padding-left:23px}tbody tr:hover{background:#f4f9f7}.rank{color:#7a9094;display:inline-block;width:20px;font-size:.74rem}.market-cell{display:flex;align-items:center;gap:9px}.market-cell .flag{font-size:1.2rem}.market-name{font-weight:600}.market-region{display:block;font-size:.67rem;color:var(--muted);margin-top:4px}.score-chip{font-weight:750;color:#22664f;background:#ecf6f0;border-radius:5px;padding:5px 7px}.table-note{padding:14px 23px;color:var(--muted);font-size:.72rem;border-top:1px solid var(--line);line-height:1.6}.data-note{font-size:.73rem;color:var(--muted);line-height:1.7;margin:15px 0}.status{padding:14px 16px;border:1px solid #d8e7e0;background:#edf6f2;border-radius:8px;font-size:.88rem;margin-bottom:16px;line-height:1.6}.status.error{background:#fff0ed;border-color:#f1d1c8;color:#933d2e}.status button{border:0;background:none;color:inherit;text-decoration:underline;margin-left:8px}.spinner{display:inline-block;width:13px;height:13px;border:2px solid #9abeb3;border-top-color:var(--green);border-radius:50%;animation:spin 1s linear infinite;margin-right:9px}.initial{min-height:630px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(ellipse at 50% 45%,#eaf5f0,white 64%);padding:28px}.initial-mark{background:var(--ink);color:var(--mint);border-radius:18px;padding:15px 23px;font-size:3rem;margin-bottom:28px}.initial h2{font-size:1.7rem}.initial p{color:var(--muted);line-height:1.8;margin-top:15px}.initial-pill{font-size:.65rem;letter-spacing:1.1px;color:#6d8980;margin-top:34px}.transparency{display:grid;grid-template-columns:250px 1fr;gap:30px;padding:28px 30px;background:#eaf0f4;border:1px solid #d9e2e9;border-radius:12px;margin-top:32px}.transparency h2{font-size:1rem;display:inline}.info-icon{border:1px solid #7895a3;border-radius:50%;display:inline-grid;place-items:center;font-family:serif;width:18px;height:18px;margin-right:7px;font-size:.8rem}.transparency p{font-size:.78rem;color:var(--muted);margin-top:12px}.transparency ul{padding-left:15px;margin:0;display:grid;gap:10px;font-size:.8rem;color:#526b77;line-height:1.6}.methodology{margin:18px 0 10px;color:var(--muted);font-size:.8rem;line-height:1.8}.methodology summary{cursor:pointer;max-width:fit-content}.methodology p{margin-top:12px;max-width:1000px}footer{max-width:1392px;width:92%;margin:0 auto;padding:25px 0 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;font-size:.72rem;color:var(--muted)}footer a{text-decoration:none}footer a:hover{text-decoration:underline}.footer-divider{margin:0 8px;color:#bcc8cc}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}@keyframes spin{to{transform:rotate(360deg)}}@media(min-width:1500px){.workspace{grid-template-columns:330px minmax(0,1fr)}}@media(max-width:1100px){.workspace{grid-template-columns:285px minmax(0,1fr);gap:20px}.priorities{padding:20px}.analysis-grid{grid-template-columns:1fr}.why p{line-height:1.7}.why-icon{float:left;margin:0 12px 0 0}.winner h3{font-size:1.6rem}.overall strong{font-size:2.6rem}.raw-grid{grid-template-columns:repeat(3,1fr);row-gap:18px}.count-pill{display:none}}@media(max-width:760px){.header{height:85px;padding:0 5%}.source-badge{font-size:0;padding:8px;border:0}.source-badge i{width:8px;height:8px}.brand p{font-size:.65rem}.wordmark{font-size:1.5rem}main{padding-top:27px;width:90%}.intro{display:block;margin-bottom:26px}.intro h1{letter-spacing:-.8px}.intro p:last-child{font-size:.88rem;line-height:1.6}.method-link{display:inline-block;margin-top:15px}.workspace{grid-template-columns:1fr;gap:26px}.priorities{padding:23px}.field{margin-top:18px}.weights-title{margin-top:24px;padding-top:20px}.weight-head label{max-width:none}.weight{margin-top:20px}.panel-foot{display:none}.result-heading h2{font-size:1.18rem}.winner-top{padding:23px 20px}.winner h3{font-size:1.45rem}.overall strong{font-size:2.5rem}.winner-country{gap:8px}.winner .flag{font-size:1.5rem}.raw-grid{padding:20px;grid-template-columns:repeat(2,1fr)}.raw-label{font-size:.75rem}.raw-year{font-size:.7rem}.winner-region{font-size:.75rem}.analysis-grid{grid-template-columns:1fr}.transparency{grid-template-columns:1fr;padding:24px;gap:20px}.transparency ul{font-size:.85rem}.transparency p{font-size:.8rem}.initial{min-height:350px}.ranking-heading{align-items:start;gap:8px}.ranking-heading span{max-width:95px;text-align:right;line-height:1.5}footer{width:90%;flex-direction:column;font-size:.75rem}.why p{font-size:.9rem}.bar-title{font-size:.85rem}.weight-head label,label,select,.weight-help,.panel-foot{font-size:.875rem}.market-region{font-size:.75rem}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
/* Long country names must wrap beside the overall score on narrow screens. */
.winner-top>div:first-child{min-width:0}.winner-country h3{overflow-wrap:anywhere}.winner-country .flag{flex-shrink:0}.market-region{white-space:normal;max-width:240px;line-height:1.5}
