/* Preserve the existing Manrope/lime identity. Variance 5, motion 2, density 4.
   Product meters are explicitly requested; native elements keep numeric semantics. */
.fine,.field-hint,.badge,.muted,.step-count,.eyebrow,.footer>.fine,.footer p,.footer-links{font-size:14px}
.tool-card>p,.section-heading p,.process-list p,.rank-explanation,.rank-row p,.rank-budget-note,.sources-section p,.sources-section li,.recommendation-body li{font-size:16px;line-height:1.7}
.button,.button.small,.text-button,.tabs a,.interview-main label,.form-grid label,.step-description{font-size:16px}
.button,.entry-tabs button{min-height:46px}
.interview-main input,.interview-main select,.interview-main textarea{font-size:17px}
.card-bottom .fine,.rank-value small,.results-meta,.search-band span,.brand-by{font-size:14px}
.tool-card{padding:25px}.card-top h3{font-size:22px}.tool-card>p{margin-bottom:22px}
.footer-links{gap:20px;flex-wrap:wrap}.footer>.fine{line-height:1.7}
.optional-fields{border:1px solid var(--line);border-radius:14px;margin:22px 0;padding:17px 20px}
.optional-fields summary,.score-details summary{cursor:pointer;font-size:16px;font-weight:700;line-height:1.5}
.optional-fields[open] summary{margin-bottom:22px}.optional-fields label{margin-top:18px}
.review-profile{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:var(--soft);padding:24px;border-radius:18px;margin:25px 0}
.review-profile span{display:block;font-size:14px;margin-bottom:8px}.review-profile strong{display:block;font-size:23px;line-height:1.25;letter-spacing:-.035em}
.review-profile p{font-size:14px;margin:10px 0}.review-existing{grid-column:1/-1;border-top:1px solid #cbd4b8;padding-top:18px}
.review-existing strong{font-size:18px}.quick-path [data-step-label="1"],.quick-path [data-step-label="2"]{display:none}
.quick-path [data-step-label="3"] span{font-size:0}.quick-path [data-step-label="3"] span::after{content:'2';font-size:14px}
.fit-panel{border:1px solid #cbd4b8;border-radius:18px;background:var(--soft);padding:24px;margin-top:25px}
.score-meter{min-width:0}.meter-heading{display:flex;align-items:baseline;justify-content:space-between;gap:18px;font-size:16px;line-height:1.4}
.meter-heading strong{font-size:22px;white-space:nowrap;letter-spacing:-.035em}.score-meter-large .meter-heading{font-size:20px;font-weight:700}.score-meter-large .meter-heading strong{font-size:40px}
.score-meter meter{display:block;width:100%;height:14px;margin-top:14px;appearance:none;border:0;border-radius:7px;background:#d7dfc7;overflow:hidden}
.score-meter meter::-webkit-meter-bar{background:#d7dfc7;border:0;border-radius:7px;height:14px}
.score-meter meter::-webkit-meter-optimum-value{background:#5b741e;border-radius:7px}
.score-meter meter::-moz-meter-bar{background:#5b741e;border-radius:7px}
.meter-scale{display:flex;justify-content:space-between;font-size:14px;margin-top:5px;color:#4b5544}
.meter-note{font-size:14px;line-height:1.65;margin:12px 0 0;color:#4b5544}
.score-details{margin-top:18px;padding-top:18px;border-top:1px solid #cbd4b8}.score-details>p{font-size:15px;margin-top:15px}
.score-components{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:20px}
.signal-panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;padding:28px;border:1px solid var(--line);border-radius:20px;background:var(--paper);margin:0 0 45px}
.score-unmeasured .meter-heading{display:block}.score-unmeasured .meter-heading strong{display:block;font-size:19px;margin-top:8px;color:#59614f}
.unmeasured-track{border-bottom:2px dashed #b8c2aa;margin:18px 0 28px}
.compare-signals{display:grid;gap:26px}.compare-signals .meter-heading{display:block}.compare-signals .meter-heading strong{display:block;margin-top:8px}
.ranked-tool{display:grid;grid-template-columns:40px 52px minmax(0,1fr) 100px 24px;gap:18px;padding:25px 20px;align-items:center}
.ranked-tool .rank-number{width:auto}.ranked-tool .rank-value{min-width:0}.ranked-tool .rank-name{min-width:0}
.rank-characteristics{grid-column:3/-1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;padding-top:18px;border-top:1px solid #d5dccb;align-items:start}
.rank-characteristics span,.rank-characteristics a{font-size:14px;line-height:1.55}.rank-characteristics a{text-decoration:underline;display:block;margin-top:8px}
.rank-characteristics strong{font-size:18px;line-height:1.4;display:block;margin-top:8px}.rank-characteristics .meter-heading{display:block}
.rank-characteristics .meter-heading strong{font-size:22px}.rank-price,.rank-language{min-width:0}
.rank-budget-note{padding:18px 22px;border-radius:14px;background:var(--soft)}.rank-filter input{max-width:220px}
@media(max-width:900px){.signal-panel{grid-template-columns:1fr;gap:24px}.signal-panel .score-meter+.score-meter{border-top:1px solid var(--line);padding-top:24px}.rank-characteristics{grid-template-columns:1fr 1fr}.rank-language{grid-column:1/-1}}
@media(max-width:600px){
 .header{display:grid;grid-template-columns:1fr auto;gap:12px;padding-block:16px;height:auto}.header nav{grid-row:2;grid-column:1/-1;justify-content:center;gap:28px;font-size:16px}.header>.button{font-size:14px;min-height:44px;padding:11px 14px}.header .brand{font-size:25px}.header .brand-by{display:none}
 .search-band span,.search-band input,.category-link,.filters>.checkbox,.footer-links,.tabs a,.rank-explanation,.rank-row p,.rank-row .fine,.recommendation-footer .fine{font-size:14px}
 .search-band input{font-size:16px}.search-band button{min-width:44px;min-height:44px}.category-link{min-height:135px;line-height:1.5}
 .tool-grid,.tool-grid.four{grid-template-columns:1fr}.tool-card>p{font-size:16px}.card-top{flex-wrap:nowrap}.card-top h3{font-size:23px}.tool-logo{width:48px;height:48px;min-width:48px}
 .page-intro>p:last-child,.section-heading p,.prose p,.prose dd,.interview-main label,.form-grid label,.field-hint,.recommendation-title p,.result-heading>p:not(.eyebrow),.need-quote,.prompt-panel p{font-size:16px}
 .entry-tabs button,.entry-tabs button[data-mode],.wizard-actions .button,.wizard-actions .text-button{font-size:15px;min-height:46px}.wizard-actions{flex-wrap:wrap}.wizard-actions .button{margin-left:auto;white-space:normal;text-align:center}
 .stepper li.active{font-size:14px}.stepper span{font-size:12px;width:28px;height:28px}.stepper{gap:8px}
 .interview-main{padding:26px 20px}.review-profile{grid-template-columns:1fr;padding:20px;gap:18px}.review-profile strong{font-size:23px}.review-existing{grid-column:auto}
 .optional-fields{padding:16px}.form-grid{grid-template-columns:1fr}.score-meter-large .meter-heading{display:block}.score-meter-large .meter-heading strong{display:block;font-size:38px;margin-top:5px}
 .score-components{grid-template-columns:1fr}.fit-panel{padding:20px}.signal-panel{padding:22px}.score-meter .meter-heading{gap:10px}
 .ranked-tool{grid-template-columns:25px 42px minmax(0,1fr) 52px;padding:22px 12px;gap:12px}.ranked-tool h2{font-size:22px}.ranked-tool .tool-logo{width:42px;min-width:42px;height:42px}.ranked-tool .rank-open{display:none}.ranked-tool .rank-value{font-size:26px}
 .ranked-tool .rank-characteristics{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:22px}.rank-characteristics .rank-language{grid-column:1/-1}.rank-characteristics strong{font-size:17px}
 .rank-filter input{max-width:100%}.rank-value small{font-size:12px}.rank-row p{line-height:1.6}.tabs{flex-wrap:wrap;gap:16px 22px}
 .prose .button,.recommendation-footer .button,.tool-detail .button,.compare-tray .button{font-size:15px}.footer>.fine{font-size:14px}
 .compare-tray{position:sticky;bottom:8px;left:auto;transform:none;margin:10px auto;flex-wrap:wrap;width:calc(100% - 24px);justify-content:center}.compare-tray span{font-size:14px;max-width:none}
}
@media print{.score-meter meter{print-color-adjust:exact}.fit-panel{break-inside:avoid}.score-details{display:none}.rank-characteristics{grid-template-columns:1fr 1fr 1fr}}
/* Dated external opinions: source and scope stay beside the rating. */
.rank-opinions{grid-column:3/-1;min-width:0}
.opinion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.opinion-card{padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--paper);min-width:0}
.opinion-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.opinion-heading>a{font-size:17px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.opinion-card .opinion-vote{font-size:16px;margin:14px 0}.opinion-vote strong{font-size:28px;letter-spacing:-.04em}
.opinion-card p,.opinion-disagreement,.service-status p,.opinion-excluded p{font-size:15px;line-height:1.65}
.opinion-card details p{font-size:14px}.opinion-card summary,.opinion-excluded summary,.recommendation-opinions>summary{font-size:15px;line-height:1.6;cursor:pointer;font-weight:700}
.opinion-card details{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}
.opinion-disagreement{border-left:3px solid #806b26;padding:12px 18px;background:#f6f1df;border-radius:0 10px 10px 0;margin:0 0 18px;color:#51431c}
.opinion-missing{font-size:16px;grid-column:1/-1}.opinion-excluded{margin:18px 0}
.service-status{border:1px solid #cbd4b8;border-radius:16px;background:var(--soft);padding:20px;margin:24px 0}
.service-status>strong{font-size:18px}.service-status>a{font-size:15px;text-decoration:underline}.service-unknown{background:var(--paper);border-color:var(--line)}
.recommendation-opinions{margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}.recommendation-opinions[open]>summary{margin-bottom:22px}
.compare-card .opinion-grid{grid-template-columns:1fr}.ranked-tool .rank-value small{font-size:12px;line-height:1.5}
@media(max-width:750px){.opinion-grid{grid-template-columns:1fr}.rank-opinions{grid-column:1/-1}.rank-filter{flex-wrap:wrap}.opinion-card p,.opinion-disagreement,.service-status p{font-size:15px}}
.rank-filter{flex-wrap:wrap}.rank-filter label{font-size:14px;min-width:0}.rank-filter select,.rank-filter input{font-size:16px}.rank-filter .share{min-height:44px}.rank-explanation>.inline-link{font-size:14px;margin:0 0 0 10px}
@media(max-width:1000px){.rank-filter label{flex:1 1 200px}.rank-filter label input{max-width:none}.rank-filter .share{margin-left:0}}
@media(max-width:600px){.rank-filter label{flex:1 1 100%;width:100%}.rank-explanation>.inline-link{margin:10px 0 0}}

/* Comparable, scoped proofreading evidence. */
.lab-results { margin-block: 2.5rem; }
.lab-results > p { max-width: 78ch; }
.lab-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; margin-block: 1.5rem; }
.lab-card { padding: clamp(1.2rem, 3vw, 2rem); border: 1px solid var(--line, #d6dbd4); border-radius: 1.25rem; background: var(--paper, #fff); min-width: 0; }
.lab-card h3 { margin-top: .5rem; font-size: 1.65rem; }
.lab-card dt { margin-top: 1rem; font-size: .95rem; }
.lab-card dd { margin: .3rem 0; font-size: 1.1rem; }
.lab-card .button-row { gap: .6rem; flex-wrap: wrap; }
.trial-sample { border-top: 1px solid var(--line, #d6dbd4); padding-top: 1rem; margin-top: 2rem; }
.trial-text { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; line-height: 1.75; padding: 1.2rem; background: #f0f3ed; border-radius: .8rem; }
.trial-hash { overflow-wrap: anywhere; }
@media (max-width: 760px) { .lab-grid { grid-template-columns: 1fr; } }

.audit-table{overflow-x:auto}.audit-table table{width:100%;border-collapse:collapse}.audit-table th,.audit-table td{text-align:left;padding:12px;border-bottom:1px solid #ccd4ca}

.unlock-form .fine,.unlock-form .consent{font-size:14px;line-height:1.6}.unlock-form .button+.button{margin-top:12px}
@media(max-width:650px){.unlock-layout{padding-top:24px}.unlock-form{grid-row:1;padding:24px 20px}.unlock-intro{padding-top:8px}.unlock-intro h1{font-size:30px}.unlock-form h2{font-size:28px}.unlock-form>p{font-size:16px}.unlock-form>p.fine{font-size:14px}}
