/* ───────── icons: one stroke style, brand colours ───────── */
.icn{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(145deg,rgba(3,190,99,.18),rgba(90,15,163,.28));border:1px solid rgba(3,190,99,.35);color:var(--green);flex:none;transition:.3s}
.icn svg{width:24px;height:24px}
.pcard:hover .icn,.feat:hover .icn,.flagc:hover .icn,.state:hover .icn{background:linear-gradient(145deg,var(--green),#17a85a);color:#04210f;transform:rotate(-6deg) scale(1.06)}
.feat .icn{width:54px;height:54px;margin-bottom:14px;color:var(--mint);animation:none}
.feat .icn svg{width:28px;height:28px}
.dark .icn,.dkc .icn{color:var(--mint);background:linear-gradient(145deg,rgba(143,243,191,.16),rgba(255,255,255,.06));border-color:rgba(143,243,191,.35)}
.ico{width:16px;height:16px;vertical-align:-3px;margin-right:4px}
.pcard .icn{margin-bottom:6px}
.state .icn{margin-bottom:10px;color:var(--mint);background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3)}
.hero-ic .icn{width:54px;height:54px}
.meta .icn{width:26px;height:26px;border-radius:8px;vertical-align:middle;margin-right:6px}.meta .icn svg{width:15px;height:15px}
.pc-top{display:flex;align-items:center;gap:10px}
.pgrid.dk{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.dkc{background:rgba(255,255,255,.06)!important;border:1px solid var(--line)!important;color:#fff}.dkc p{color:rgba(255,255,255,.68)!important}.dkc .more{color:var(--mint)!important}
.flags{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.flagc{display:grid;gap:3px;justify-items:start;padding:16px;border-radius:16px;background:#fff;border:1px solid #e8e1f3;transition:.3s}
.flagc:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:var(--green)}.flagc small{color:var(--muted)}

/* ───────── catalogue ───────── */
.bdgs{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.bdg{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;font-size:.72rem;font-weight:700;background:#f1ebf9;color:var(--purple);border:1px solid #e1d6f2}
.bdg .ico{width:13px;height:13px;margin:0}
.b-lvl-clinician{background:#fff4dc;color:#7a5200;border-color:#f2d9a0}.b-lvl-prescription{background:#ffe6e6;color:#8a1f1f;border-color:#f3b8b8}.b-lvl-consumer{background:#e5f7ee;color:#0c6b3a;border-color:#b6e6cd}
.ev-s{background:#dff5e8;color:#0a6b38}.ev-m{background:#e9f2ff;color:#1b4f99}.ev-l{background:#f4efe6;color:#6b5a2e}.ev-e{background:#f3e8ff;color:#6a2fa0}
.hero-b .bdg{background:rgba(255,255,255,.14);color:#fff;border-color:rgba(255,255,255,.3)}
.prodc[hidden]{display:none}
.legend3{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}.legend3>div{background:#fff;border-radius:16px;padding:16px;border:1px solid #e8e1f3}.legend3 h3{display:flex;gap:8px;align-items:center;font-size:1rem;font-family:var(--sans);margin-bottom:6px}.legend3 .icn{width:30px;height:30px;border-radius:9px}.legend3 .icn svg{width:17px;height:17px}.legend3 p{font-size:.88rem;color:var(--muted);margin:0}
.filters{display:grid;gap:10px;margin-bottom:6px}.filters .opts-row{margin:0}
.lt{background:#fff!important;border:1.5px solid #ddd5ee!important;color:var(--ink)!important}.lt2{padding:9px 12px;border-radius:10px;border:1.5px solid #ddd5ee;background:#fff;color:var(--ink)}
.warnbox{background:#fff6e5;border:1px solid #f2d9a0;border-left:5px solid #e69a00;border-radius:16px;padding:18px 22px}.warnbox h3{font-size:1.1rem;font-family:var(--sans);margin-bottom:8px;color:#6b4500}.warnbox p,.warnbox li{color:#4d3a10}.warnbox ul{margin:0 0 0 20px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:26px}.two ul{margin-left:20px}.two ul.bad li::marker{color:#c0392b}
.bandp{color:var(--purple);font-weight:800;letter-spacing:.1em}.bandp .dim{opacity:.25}
.toolcall{display:flex;gap:18px;align-items:center;padding:20px;border-radius:18px;background:linear-gradient(120deg,#f4ecff,#e8fbf1);border:1px solid #d9ccee}.toolcall h2{font-size:1.3rem;margin:0 0 4px}.toolcall p{margin:0 0 10px}
.expert .icn{margin-bottom:8px}
.roadl{margin:0 0 0 22px;display:grid;gap:5px;max-width:78ch}.roadl li.live::marker{color:var(--green);font-weight:800}.roadl em{font-size:.72rem;color:var(--muted);background:#f1ebf9;padding:2px 8px;border-radius:999px;margin-left:6px;font-style:normal}
.srcs ol{margin:0 0 10px 20px;font-size:.92rem;display:grid;gap:7px;max-width:80ch}.srcs a{margin-left:4px}

/* ───────── reviewer blocks (E-E-A-T) ───────── */
.rvw{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;border-radius:16px;background:#fff;border:1px dashed #c9bde0;margin:0 0 34px}
.rvw .icn{width:40px;height:40px;border-radius:12px}.rvw b{display:block}.rvw span{font-size:.86rem;color:var(--muted)}.rvw span a{text-decoration:underline;color:var(--purple)}
.rvw.ok{border:1px solid #9fdcbc;background:#effaf4}

/* ───────── tools ───────── */
.toolwrap{padding-block:40px 10px}
.toolshell{background:#fff;border-radius:24px;padding:clamp(18px,3vw,34px);box-shadow:var(--shadow);border:1px solid #e8e1f3}
.pbar{height:6px;border-radius:6px;background:#eee7f7;margin-bottom:22px;overflow:hidden}.pbar i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold));transition:width .4s}
.stepno{font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--green)}
.phead h2{font-size:clamp(1.5rem,3vw,2.1rem);margin:6px 0 4px;color:var(--deep)}.phead p{color:var(--muted);max-width:70ch}
.pfields{display:grid;gap:20px;margin:22px 0}.pf .pl,.pf>label.pl{display:block;font-weight:700;margin-bottom:8px;color:var(--deep)}.ph{display:block;color:var(--muted);font-size:.8rem;margin:-4px 0 8px}
.opts-row{display:flex;flex-wrap:wrap;gap:8px}
.pill{position:relative;cursor:pointer}.pill input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer}
.pill span{display:block;padding:10px 16px;border-radius:12px;border:1.5px solid #ddd5ee;background:#faf8fd;font-size:.92rem;transition:.2s;color:var(--ink)}
.pill:hover span{border-color:var(--green)}.pill input:checked+span{background:var(--green);border-color:var(--green);color:#04210f;font-weight:700}.pill input:focus-visible+span{outline:3px solid rgba(3,190,99,.4)}
.numrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.numrow input{width:110px;padding:11px 12px;border-radius:10px;border:1.5px solid #ddd5ee;background:#fff;color:var(--ink);font-weight:600}.numrow span{color:var(--muted)}
.consentbox{display:flex;gap:10px;padding:14px;border-radius:14px;background:#f4ecff;border:1px solid #d9ccee;margin-top:16px}
.pnav{display:flex;justify-content:space-between;gap:10px;margin-top:10px}
.report .rhead h2{font-size:clamp(1.6rem,3.4vw,2.4rem);color:var(--deep);margin:6px 0}.report .rhead p{color:var(--muted)}
.rev{font-size:.84rem;margin-top:6px;color:#8a6a00}.rev.ok{color:#0c6b3a}
.rsec{margin-top:26px;padding-top:18px;border-top:1px solid #eee7f7}.rsec h3{font-size:1.25rem;color:var(--deep);margin-bottom:12px}
.rgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:14px}
.big{background:#f7f2fc;border-radius:16px;padding:16px}.big span{display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.big b{display:block;font-family:var(--serif);font-size:2.3rem;color:var(--purple);line-height:1.1}.big b.sm{font-size:1.25rem}.big b small{font-size:1rem;color:var(--muted)}.big em{font-style:normal;font-size:.82rem;color:var(--muted)}
.meter{margin:10px 0}.mt{display:flex;justify-content:space-between;font-size:.92rem}.mbar2{height:8px;border-radius:8px;background:#eee7f7;margin:4px 0;overflow:hidden}.mbar2 i{display:block;height:100%;background:linear-gradient(90deg,#8ff3bf,var(--green));border-radius:8px}.meter small{color:var(--muted);font-size:.78rem}
.whylist,.plan{margin:0 0 0 20px;display:grid;gap:9px;max-width:80ch}.why{font-size:.92rem;color:#3a2d55;max-width:80ch;margin:10px 0}
.report sup a{color:var(--purple);font-weight:700;text-decoration:none;margin-left:1px}
.rcta{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}
.refs ol{margin:0 0 8px 20px;display:grid;gap:7px;font-size:.88rem}.refs li:target{background:#fff7d6}
@media print{nav.top,footer,.wa-fab,.mbar,.ctaband,.rcta,#preloader,.crumbs,.phero,.pbar,#progress{display:none!important}.toolshell{box-shadow:none;border:0}body{background:#fff}.rsec{break-inside:avoid}}

/* size planner + designer */
.sp-grid{display:grid;grid-template-columns:minmax(260px,.8fr) 1.2fr;gap:26px;align-items:start}
.sp-form{display:grid;gap:18px}.sp-form .f-in{padding:11px 12px;border-radius:10px}
.prow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;padding:10px;border-radius:12px;background:#faf8fd;border:1px solid #eee7f7}.prow label{font-size:.86rem;color:var(--muted)}.prow input{width:70px;padding:7px;border-radius:8px;border:1.5px solid #ddd5ee}.prow .x{margin-left:auto;width:30px;height:30px;border-radius:50%;background:#f1ebf9;font-size:1.1rem}
.sp-out{display:grid;gap:16px}.verdict{border-radius:16px;padding:14px 18px}.verdict.ok{background:#e6f8ee;border:1px solid #9fdcbc}.verdict.warn{background:#fff6e5;border:1px solid #f2d9a0}.verdict b{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.verdict p{margin-top:2px}
.plan-wrap{background:radial-gradient(ellipse at 50% 30%,#4a1d82,#1d0238);border-radius:18px;padding:8px;overflow:hidden}.plan-wrap svg{width:100%;height:auto;display:block;user-select:none;touch-action:none}
.dz{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;align-items:start}.dz-bar{display:flex;gap:8px;margin-bottom:10px}.dz-bar button{padding:8px 16px;border-radius:999px;border:1.5px solid #ddd5ee;background:#faf8fd;font-weight:600}.dz-bar .on{background:var(--purple);border-color:var(--purple);color:#fff}
.dz-right{display:grid;gap:12px}.dz-right details{border:1px solid #eee7f7;border-radius:14px;padding:12px 14px;background:#fcfbfe;box-shadow:none}.dz-right summary{padding:0;font-size:.95rem}.dz-right summary::after{font-size:1.2rem}
.dzf{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;font-size:.84rem;color:var(--muted)}.dzf label{display:grid;gap:4px}.dzf input[type=number],.dzf select{padding:8px;border-radius:8px;border:1.5px solid #ddd5ee;background:#fff;color:var(--ink)}.dzf input[type=range]{width:100%;accent-color:var(--green)}
.addrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.sw{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 10px}.sw button{width:32px;height:32px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1.5px #cdbfe3;transition:.2s}.sw button.on{box-shadow:0 0 0 3px var(--green);transform:scale(1.12)}
.score{background:#f7f2fc;border-radius:16px;padding:14px}.sc-total{display:flex;align-items:center;gap:12px}.sc-total b{font-family:var(--serif);font-size:2.6rem;line-height:1}.sc-total span{font-size:.86rem;color:var(--muted)}.sc-total.good b{color:#0c9a52}.sc-total.mid b{color:#c28a00}.sc-total.low b{color:#c0392b}
.sc-row{display:flex;gap:14px;font-size:.84rem;margin:8px 0;color:var(--muted)}.tips{margin:6px 0 0 18px;font-size:.84rem;display:grid;gap:5px}.score .ok{color:#0c6b3a;font-size:.88rem}
.scenes{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.scn{background:#f7f2fc;border-radius:14px;padding:12px;display:grid;gap:2px}.scn .dot{width:34px;height:34px;border-radius:50%;box-shadow:0 0 18px currentColor}.scn small{color:var(--muted)}.scn em{font-style:normal;font-size:.78rem;color:var(--muted)}
.zgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-width:300px}.zone span{display:grid;place-items:center;padding:10px 4px;border-radius:12px;border:1.5px solid #ddd5ee;background:#faf8fd;text-align:center}.zone span small{font-size:.62rem;color:var(--muted)}.zone input{position:absolute;opacity:0}.zone{position:relative;cursor:pointer}.zone input:checked+span{background:var(--green);color:#04210f;border-color:var(--green)}.zc{display:grid;place-items:center;border-radius:12px;background:#eee7f7;color:var(--muted);font-size:.8rem}
.vsvg{width:min(240px,100%);display:block;margin:10px 0}.vnotes{margin:6px 0 0 18px;display:grid;gap:7px;font-size:.9rem}.vnotes .bad::marker{color:#c0392b}.vnotes .okk::marker{color:var(--green)}
@media(max-width:960px){.sp-grid,.dz,.two{grid-template-columns:1fr}}
.fgrid{grid-template-columns:1.3fr 1fr 1fr 1fr 1fr}
@media(max-width:960px){.fgrid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.fgrid{grid-template-columns:1fr}}
.pc-top .icn{width:38px;height:38px;border-radius:11px}.pc-top .icn svg{width:20px;height:20px}
