/* Technicade Ready shared secondary-page theme.
   Keep the source page's print styling, form logic and accessibility attributes. */
:root{
  color-scheme:light;
  --bg:#f8f9f4;
  --panel:#fff;
  --line:#dce6e3;
  --border:#dce6e3;
  --ink:#183344;
  --text:#183344;
  --muted:#506877;
  --mint:#087b69;
  --accent:#087b69;
  --green:#087b69;
  --warn:#74501b;
  --amber:#74501b;
}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{background:linear-gradient(180deg,#eef6f0 0,#f8f9f4 390px);color:#183344;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:#087b69;text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
.wrap{max-width:1130px}
main{padding-bottom:12px}
main>section{scroll-margin-top:89px}
h1,h2,h3{color:#173342;letter-spacing:-.025em}
h1{font-size:clamp(2.3rem,6.5vw,3.9rem);line-height:1.09}
h2{font-size:clamp(1.48rem,3.5vw,2.1rem);line-height:1.25}
h3{font-size:1.13rem}
.muted,.small,.lead,.card p{color:#506877}
.eyebrow{color:#087b69;font-weight:850;letter-spacing:.115em}
/* The brand/header matches the redesigned main Ready landing page. */
.ready-header{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:nowrap;gap:15px;
  position:sticky;top:0;z-index:110;
  min-height:70px;padding:12px 18px;
  margin:0 -20px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
  border:1px solid #e2ece7;border-top:0;
  box-shadow:0 4px 21px rgba(18,45,60,.04);
  border-radius:0 0 15px 15px
}
.ready-brand{
  display:inline-flex;align-items:center;gap:10px;
  flex:0 0 auto;text-decoration:none;
  color:#143443!important;letter-spacing:.01em;
  font-weight:900;line-height:1.04;white-space:nowrap
}
.ready-header .ready-brand-mark{
  width:39px;height:39px;flex:0 0 auto;display:grid;place-items:center;
  border-radius:11px;background:#102d3c;color:#bdebd0;
  font-size:1.2rem;letter-spacing:normal
}
.ready-header .ready-brand-words{display:block;color:#143443!important}
.ready-header .ready-brand-words strong{display:block;font-size:1.01rem;color:#143443!important}
.ready-header .ready-brand-words small{display:block;font-size:.65rem;letter-spacing:.18em;color:#087b69!important;font-weight:900;margin-top:3px}
.ready-header .ready-links{display:flex;align-items:center;flex-wrap:nowrap;gap:4px;font-size:.9rem}
.ready-header .ready-links a{
  color:#24495a;text-decoration:none;font-weight:760;
  padding:9px 10px;border-radius:9px;white-space:nowrap
}
.ready-header .ready-links a:hover,.ready-header .ready-menu a:hover{background:#e9f7ef}
.ready-header a[aria-current="page"]{color:#067361;background:#e1f5eb}
.ready-menu{display:none;position:relative;margin-left:auto}
.ready-menu summary{
  cursor:pointer;list-style:none;
  border:1px solid #c4d8d3;border-radius:10px;
  color:#173442;background:white;font-size:.94rem;
  line-height:1.2;font-weight:850;
  text-align:center;padding:11px 13px;min-width:77px;
  min-height:44px
}
.ready-menu summary::-webkit-details-marker{display:none}
.ready-menu nav{
  display:grid!important;grid-template-columns:1fr;
  position:absolute;top:48px;right:0;width:min(285px,calc(100vw - 35px));
  background:white;border:1px solid #d5e6df;
  box-shadow:0 18px 45px rgba(18,49,60,.17);
  border-radius:15px;padding:9px;z-index:111;
  gap:3px;white-space:normal;max-height:calc(100vh - 100px);overflow:auto
}
.ready-menu nav a{
  display:block;padding:11px 12px;text-decoration:none;
  font-weight:780;color:#23495a;
  border-radius:8px;font-size:.97rem
}
.ready-header a:focus-visible,.ready-menu summary:focus-visible,
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid #0b806e;outline-offset:3px
}
/* Dark brand introduction; the content beneath becomes light and readable. */
.hero{
  max-width:none;
  background:radial-gradient(circle at 93% 16%,#2a625d,transparent 48%),linear-gradient(135deg,#102d3c,#1b4a4d);
  border-radius:22px;
  padding:42px 38px;
  margin:20px 0 28px;
  color:#fff;box-shadow:0 16px 34px rgba(17,54,56,.12)
}
.hero h1,.hero h2{color:white}
.hero .eyebrow{color:#ade9cb}
.hero .lead,.hero .muted{color:#d8e8e8}
.hero .small{color:#d5e6e7}
.hero a:not(.btn){color:#d2ffe3}
.hero .flag{color:#fff;border-color:#8aabaa}
/* Content cards, forms and reference blocks. */
.card,.panel,.stage,.triples>div,.step,details{
  background:#fff;color:#183344;
  border:1px solid #d9e6e1;border-radius:16px;
  box-shadow:0 5px 20px rgba(18,50,56,.035)
}
.card,.panel{padding:24px}
.card p,.panel p,.stage p,.step p,details p,details li{color:#536c7a}
.card h3,.panel h3,.stage h3,.step h3,details h3{color:#193747}
.result{
  background:#ebf8f1;color:#173442;
  border:1px solid #c4e7d9;border-radius:16px;
  padding:24px
}
.result h3,.result h2{color:#173442}
.result a{color:#087b69}
.checkcards label{
  background:#fff;color:#1d4453;
  border:1px solid #cddfd9;border-radius:12px;
  padding:14px;min-height:52px
}
.checkcards label:has(input:checked){border-color:#59ab8f;background:#e8f8ee}
.notice,.warning,.warn{
  background:#fff7e9;color:#5a461f;
  border:1px solid #ead2a7;border-radius:13px
}
.notice strong,.warning strong,.warn strong{color:#624716}
.bar,.safe{background:#edf9f3;border-color:#087b69;color:#254d41}
.pillnav a,.pillrow a,.navlinks a,.pill{
  color:#285665!important;background:#eef6f1;
  border-color:#d1e3db;text-decoration:none
}
.pillnav a:hover,.pillrow a:hover,.navlinks a:hover{background:#dff3e7}
.flag{color:#345362;border-color:#c5d9d2;background:#eef7f1}
.tag,.producttype,.number{color:#087b69}
.stamp{color:#597382}
.tablewrap{border:1px solid #e0eae5;border-radius:12px}
th,td{border-color:#dce7e4}
th{color:#086e60}
td{color:#294858}
input:not([type="checkbox"]):not([type="radio"]),textarea,select{
  background:#fff;color:#193a49;
  border:1.5px solid #a8bfb8;
  min-height:44px;border-radius:9px;font-size:1rem;
  max-width:100%
}
input::placeholder,textarea::placeholder{color:#69838e;opacity:1}
input[type="checkbox"]{accent-color:#087b69;min-height:18px;min-width:18px}
label{color:#244452}
.btn{
  min-height:45px;display:inline-flex;align-items:center;justify-content:center;
  padding:11px 16px;background:#087b69;color:#fff;border-radius:10px;
  border:1px solid #087b69;font-weight:850;text-decoration:none
}
.btn:hover{background:#066553;text-decoration:none;color:#fff}
.btn.secondary{background:#fff;color:#175548;border:1px solid #a7beb4}
.btn.secondary:hover{background:#e8f7ec;color:#0c5346}
.cta{background:#eff9f3;color:#087b69!important;border-color:#a9d8c5!important}
.cta:hover{background:#dff4e7}
.metric{background:#eff9f3;border-color:#cfe8dc}
.metric strong,.count{color:#087b69}
footer{background:#eaf2ed;color:#526d78;border:1px solid #e0eae4;border-radius:15px;padding:23px;margin:30px 0 20px}
footer a{color:#087b69}
.hero a:visited:not(.btn){color:#dcfff0}
.filters button[aria-pressed="true"]{color:#fff;background:#087b69;border-color:#087b69}
.step .number{background:#087b69;color:#fff}

a:visited:not(.btn){color:#175f67}
main a:hover{opacity:.96}
@media(max-width:850px){
  .ready-header .ready-links{display:none}
  .ready-menu{display:block}
}
@media(max-width:720px){
  body{font-size:16.5px;line-height:1.6}
  .wrap{padding:0 17px}
  .ready-header{margin:0 -17px;min-height:65px;padding:10px 17px;border-radius:0 0 13px 13px}
  .ready-brand .ready-brand-mark{width:36px;height:36px}
  .ready-header .ready-brand-words strong{font-size:.94rem}
  .hero{padding:31px 20px 32px;margin:18px 0 26px;border-radius:17px}
  .hero h1{font-size:clamp(2.2rem,8.8vw,3rem);line-height:1.08}
  .hero .lead{font-size:1.04rem}
  main>section{margin:28px 0 36px}
  .grid,.triples,.timeline{grid-template-columns:1fr;gap:13px}
  .card,.panel,.result{padding:20px}
  .actions{gap:10px}
  .actions .btn,.actions button.btn{flex:1 1 230px}
  h2{font-size:clamp(1.5rem,6vw,1.85rem)}
  .tablewrap{overflow:auto}
  table{min-width:565px}
}
@media print{
  :root{color-scheme:light}
  body,.card,.panel,.result,.step,.stage,.triples>div,.notice,.warning,.warn{background:#fff!important;color:#111!important;box-shadow:none!important}
  .ready-header{display:none!important}
  input:not([type="checkbox"]),textarea,select{color:#111!important;background:#fff!important;border-color:#aaa}
  p,.muted,.small,.card p,.panel p{color:#222!important}
  .hero{box-shadow:none!important}
  a{color:#111!important}
}
/* Compact, two-column mobile directory. It replaces the 10-row overlay shown in mobile QA. */
@media(max-width:850px){
  .ready-menu[open] summary{background:#e8f6ed;border-color:#8bb9a8}
  .ready-menu nav{
    width:min(365px,calc(100vw - 24px));
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:stretch;
    gap:6px;
    padding:10px;
    max-height:min(67vh,500px);
    overscroll-behavior:contain;
  }
  .ready-menu nav a{
    min-height:50px;
    display:flex;
    align-items:center;
    justify-content:start;
    white-space:normal;
    line-height:1.24;
    overflow-wrap:break-word;
    font-size:.88rem;
    padding:9px 10px;
    background:#f6faf7;
    border:1px solid #e5eee7;
  }
  .ready-menu nav a[aria-current="page"]{background:#d9f3e6;border-color:#b3dccc}
  .ready-menu nav a[href="/ready/"],.ready-menu nav a[href="/ready/#shop"]{font-weight:900}
}
@media(max-width:360px){
  .ready-menu nav a{font-size:.82rem;padding:8px 7px}
}

@media(max-width:850px){
  body:has(.ready-menu[open])::before{
    content:"";position:fixed;inset:0;z-index:100;
    background:rgba(8,37,42,.17);pointer-events:auto;
  }
}


/* Long-form guides: scan-first layout, readable detail controls, intact source material. */
.guide-hint{
  margin:14px 0 7px;color:#446575;font-size:.94rem;
}
.guide-topic{
  border:1px solid #d7e6df;border-radius:18px;
  padding:22px 24px;margin:18px 0 23px;
  background:#fff;box-shadow:0 7px 26px rgba(17,56,55,.035);
}
.guide-topic h2{margin:7px 0 12px}
.guide-topic>.notice{margin:13px 0 15px}
.guide-quick{
  padding:14px 16px;margin:14px 0 13px;
  background:#e9f7ef;color:#245649;
  border:1px solid #c9e7d7;border-left:4px solid #087b69;
  border-radius:10px;line-height:1.55;font-size:.96rem
}
.guide-quick strong{color:#0c5747}
details.guide-details{
  overflow:hidden;
  background:#f8fcf9;border:1px solid #cddfd6;
  box-shadow:none;border-radius:12px;
  margin:14px 0 0;padding:0
}
details.guide-details>summary.guide-summary{
  cursor:pointer;
  display:flex;align-items:center;justify-content:space-between;
  gap:15px;min-height:54px;padding:14px 16px;
  color:#0e574a;background:#f3faf5;font-size:.99rem;
  font-weight:850;line-height:1.35;
  list-style:none;user-select:none
}
details.guide-details>summary.guide-summary::-webkit-details-marker{display:none}
details.guide-details>summary.guide-summary::marker{content:""}
details.guide-details>summary.guide-summary:focus-visible{
  outline:3px solid #087b69;outline-offset:-3px
}
details.guide-details>summary.guide-summary:hover{background:#e9f6ef}
details.guide-details[open]>summary.guide-summary{border-bottom:1px solid #d5e6df;background:#e9f6ef}
.guide-chevron{flex:0 0 auto;color:#087b69;font-size:1.55rem;line-height:1;transition:transform .18s ease}
details.guide-details[open] .guide-chevron{transform:rotate(180deg)}
.guide-detail-body{padding:20px 17px 22px;background:#fff}
.guide-detail-body>.grid{margin:0}
.guide-detail-body .resources{margin-top:16px}
.guide-detail-body .tablewrap{margin-top:15px}
.panel[data-checklist]{margin:22px 0 26px}
.panel[data-checklist]>.actions{margin-top:14px}
.panel[data-checklist]>.actions .btn{min-height:45px}
@media(max-width:720px){
  .guide-topic{padding:19px 16px;margin:14px 0 19px}
  .guide-quick{padding:12px 13px;font-size:.94rem}
  .guide-detail-body{padding:16px 12px 19px}
  details.guide-details>summary.guide-summary{min-height:58px;padding:14px}
  .panel[data-checklist]{margin:17px 0}
  .panel[data-checklist]>.actions{display:grid;grid-template-columns:1fr;gap:9px}
  .panel[data-checklist]>.actions .btn{width:100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.guide-chevron{transition:none}}
@media print{
  .guide-topic{margin:8px 0;padding:10px;box-shadow:none!important;border-color:#aaa}
  .guide-quick{background:#fff!important;color:#111!important;border-color:#aaa}
  details.guide-details{border:0!important;background:#fff!important;margin:6px 0;padding:0!important;overflow:visible!important}
  details.guide-details>summary.guide-summary{display:none!important}
  .guide-detail-body{display:block!important;background:#fff!important;padding:0!important}
  .guide-hint{display:none!important}
}
