/* RandomWordGeneratorTool -- generated theme (v1.5.2 letter-tile system) */
:root{
  --t-ink:#1d262a;--t-ink2:#38474d;--t-muted:#606f76;--t-line:rgba(29,38,42,.13);
  --t-line2:rgba(29,38,42,.24);--t-bg:#f6f9f8;--t-card:#ffffff;--t-accent:#3eac91;
  --t-accent2:#5cd6b8;--t-accent-dk:#2e7f6b;--t-good:#2e7f6b;
  --t-shadow:0 1px 0 rgba(29,38,42,.03),0 8px 22px rgba(29,38,42,.07);
  --t-shadow-lg:0 16px 46px rgba(29,38,42,.14);--t-radius:12px;--t-maxw:1120px;
  --t-head:'Manrope',system-ui,sans-serif;--t-body:'Inter',system-ui,sans-serif;
  --t-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:var(--t-body);color:var(--t-ink);background:var(--t-bg);
  line-height:1.65;-webkit-font-smoothing:antialiased;min-height:100dvh}
img{max-width:100%;display:block}a{color:var(--t-accent-dk);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--t-accent);outline-offset:2px}
.wrap{max-width:var(--t-maxw);margin:0 auto;padding:0 22px}
h1,h2,h3,h4{font-family:var(--t-head);line-height:1.15;margin:0 0 .5em;color:var(--t-ink)}
h1{font-size:clamp(2rem,4.2vw,2.9rem);font-weight:800;letter-spacing:-.4px}
h2{font-size:clamp(1.35rem,2.6vw,1.7rem);font-weight:800;letter-spacing:-.2px}
h3{font-size:1.08rem;font-weight:700}p{margin:0 0 1rem}
.mono{font-family:var(--t-mono);font-variant-numeric:tabular-nums}

/* header -- light, per config */
.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--t-line)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:10px}.brand:hover{text-decoration:none}
.brand .name{font-family:var(--t-head);font-weight:800;font-size:1.12rem;color:var(--t-ink);line-height:1}
.brand .name .accent{color:var(--t-accent-dk)}
.nav{display:flex;align-items:center;gap:2px}
.nav a{color:var(--t-ink2);font-weight:600;font-size:.87rem;padding:9px 12px;border-radius:8px}
.nav a:hover{color:var(--t-accent-dk);background:rgba(62,172,145,.09);text-decoration:none}
.nav a.cta{background:var(--t-accent);color:#fff}.nav a.cta:hover{background:var(--t-accent-dk);color:#fff}
.menu-btn{display:none;background:none;border:1px solid var(--t-line2);border-radius:8px;
  width:42px;height:38px;color:var(--t-ink);font-size:1.2rem;cursor:pointer}
@media(max-width:760px){.menu-btn{display:block}
  .nav{position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;
    align-items:stretch;gap:0;padding:8px 14px 16px;display:none;border-bottom:1px solid var(--t-line)}
  .nav.open{display:flex}.nav a{padding:13px 12px;border-bottom:1px solid var(--t-line)}
  .nav a.cta{margin-top:8px;text-align:center}}

/* letter-tile mark */
.tile{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;
  border-radius:8px;background:var(--t-accent);color:#fff;font-family:var(--t-head);
  font-weight:800;font-size:1.05rem;position:relative;box-shadow:inset 0 -3px 0 rgba(0,0,0,.14)}
.tile::after{content:"";position:absolute;bottom:3px;right:4px;width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.75)}

/* hero -- two column, tool right, mascot left (single-tool page keeps tool as hero) */
.hero{background:linear-gradient(180deg,#fff 0%,var(--t-bg) 100%);border-bottom:1px solid var(--t-line)}
.hero .wrap{padding:44px 22px 40px}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:start}
@media(max-width:820px){.hero-grid{grid-template-columns:1fr}}
.hero-left{display:flex;flex-direction:column}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--t-head);font-weight:800;text-transform:uppercase;
  letter-spacing:1.6px;font-size:.72rem;color:var(--t-accent-dk);margin-bottom:14px}
.eyebrow::before{content:"";width:22px;height:3px;background:var(--t-accent);display:inline-block;border-radius:2px}
.hero-grid h1{max-width:16ch}
.hero .quotable{font-size:1.08rem;color:var(--t-ink2);max-width:48ch;margin:6px 0 20px;font-weight:500}
.hero .lead,.lead{font-size:1.08rem;color:var(--t-ink2);background:#eef8f5;border-left:4px solid var(--t-accent);padding:14px 18px;border-radius:0 10px 10px 0;margin:0 0 22px;max-width:760px}
.hero-mascot{margin:8px 0 0;max-width:300px}
@media(max-width:820px){.hero-mascot{margin:20px auto 0}}

/* tool panel */
.tool-panel{background:var(--t-card);border:1px solid var(--t-line);border-radius:var(--t-radius);
  box-shadow:var(--t-shadow-lg);padding:26px}
.tool-panel .authority{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.78rem;color:var(--t-muted);
  margin:0 0 18px;padding-bottom:14px;border-bottom:1px solid var(--t-line);font-weight:600}
.tool-panel .authority span{display:inline-flex;align-items:center;gap:6px}
.tool-panel .authority .dot{width:5px;height:5px;border-radius:50%;background:var(--t-accent)}
.field{margin-bottom:14px}.field label{display:block;font-weight:700;font-size:.82rem;
  color:var(--t-ink2);margin-bottom:6px}
.field input[type=number]{width:120px;padding:11px 12px;border:1.5px solid var(--t-line2);border-radius:9px;
  font-size:1rem;font-family:var(--t-mono);background:#fff;color:var(--t-ink)}
.field input:focus{outline:none;border-color:var(--t-accent);box-shadow:0 0 0 3px rgba(62,172,145,.18)}
.check{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:.9rem}
.check input{width:auto}
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--t-head);font-weight:700;
  font-size:.95rem;padding:12px 22px;border-radius:9px;border:0;cursor:pointer;transition:.15s;text-decoration:none}
.btn-primary{background:var(--t-accent);color:#fff;box-shadow:0 4px 0 var(--t-accent-dk)}
.btn-primary:hover{background:var(--t-accent-dk);text-decoration:none}
.btn-primary:active{transform:scale(.98);box-shadow:0 2px 0 var(--t-accent-dk)}
.btn-ghost{background:#fff;color:var(--t-accent-dk);border:1.5px solid var(--t-line2)}
.btn-ghost:hover{border-color:var(--t-accent);text-decoration:none}
.btn-ghost:active{transform:scale(.98)}

/* result: answer-first, then tile row */
.result-wrap{margin-top:18px}
.result-answer{font-size:.98rem;color:var(--t-ink2);margin:0 0 10px;min-height:1.4em}
.tile-row{display:flex;flex-wrap:wrap;gap:8px;padding:16px;background:var(--t-bg);border:1px solid var(--t-line);
  border-radius:10px;min-height:56px;align-items:center}
.tile-row.empty{color:var(--t-muted);font-size:.92rem}
.word-tile{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;
  background:#fff;border:1.5px solid var(--t-line2);border-radius:8px;font-family:var(--t-mono);
  font-weight:700;font-size:1.02rem;color:var(--t-ink);box-shadow:0 2px 0 var(--t-line2)}

main{padding:8px 0 10px}
section.content{padding:44px 0;max-width:760px;margin:0 auto}
body:not(:has(.calc-layout)) .tool-hero .wrap{max-width:760px}
section.content h2{font-size:1.5rem;margin:0 0 14px;letter-spacing:-.3px}
.section-num{display:inline-flex;align-items:center;gap:9px;font-family:var(--t-mono);font-size:.78rem;
  color:var(--t-accent-dk);font-weight:700;letter-spacing:.04em;margin-bottom:8px;text-transform:uppercase}
.section-num .tile{width:24px;height:24px;font-size:.72rem;border-radius:6px}

.answer-block{background:#eef8f5;border-left:4px solid var(--t-accent);border-radius:0 10px 10px 0;
  padding:16px 20px;margin:0 0 22px}
.answer-block p{margin:0;color:var(--t-ink2)}

table{width:100%;border-collapse:collapse;margin:16px 0;font-size:.93rem}
th,td{border-bottom:1px solid var(--t-line);padding:10px 12px;text-align:left;vertical-align:top}
th{background:transparent;font-family:var(--t-head);font-size:.72rem;text-transform:uppercase;
  letter-spacing:.06em;color:var(--t-muted);border-bottom:2px solid var(--t-ink)}
td.num,th.num{font-family:var(--t-mono);font-variant-numeric:tabular-nums;white-space:nowrap}

.faq{max-width:760px}
.faq details{border-top:1px solid var(--t-line);padding:15px 0}
.faq summary{cursor:pointer;font-weight:700;font-family:var(--t-head);list-style:none;display:flex;
  justify-content:space-between;align-items:center;gap:14px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--t-accent);font-weight:800;font-size:1.2rem}
.faq details[open] summary::after{content:"\2212"}
.faq details p{color:var(--t-ink2);margin:10px 0 0}

.crumbs{font-size:.83rem;color:var(--t-muted);padding:16px 0 0;max-width:760px;margin:0 auto}
.crumbs a{color:var(--t-muted)}

/* guides -- varied-size cards, not identical triplets */
.guides-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}
@media(max-width:760px){.guides-grid{grid-template-columns:1fr}}
.guide-card{background:var(--t-card);border:1px solid var(--t-line);border-radius:var(--t-radius);
  padding:20px;transition:.16s}
.guide-card:hover{transform:translateY(-3px);box-shadow:var(--t-shadow);text-decoration:none}
.guide-card.feature{grid-row:span 2;padding:24px;display:flex;flex-direction:column;justify-content:center}
.guide-card h3{margin-bottom:6px;color:var(--t-ink)}
.guide-card p{color:var(--t-muted);font-size:.88rem;margin:0}

/* byline */
.byline{display:flex;align-items:center;gap:12px;padding:18px 0;border-top:1px solid var(--t-line);
  margin-top:8px;max-width:760px}
.byline img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.byline .who{font-size:.86rem;color:var(--t-muted);line-height:1.5}
.byline .who b{color:var(--t-ink);font-weight:700}

/* voice band */
.voice-band{background:var(--t-ink);color:#fff;padding:38px 0;margin:10px 0 0}
.voice-band .wrap{max-width:760px}
.voice-band p{font-family:var(--t-head);font-weight:700;font-size:1.3rem;letter-spacing:-.2px;margin:0;color:#fff}

/* dataset page */
.dataset-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.82rem;color:var(--t-muted);margin:0 0 18px}
.dataset-meta b{color:var(--t-ink)}
.cite-box{background:var(--t-bg);border:1px solid var(--t-line);border-radius:10px;padding:14px 16px;
  font-family:var(--t-mono);font-size:.82rem;color:var(--t-ink2);margin:20px 0}

/* footer -- HARD RULE: grid, never flex */
.site-footer{background:var(--t-ink);color:rgba(255,255,255,.66);margin-top:20px}
.site-footer .wrap{padding:44px 22px 26px}
.site-footer .brand svg rect{fill:#fff}
.site-footer .brand .name{color:#fff}
.site-footer .blurb{max-width:36ch;font-size:.88rem;margin-top:12px;color:rgba(255,255,255,.6)}
footer .cols{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:32px;align-items:start;margin-bottom:26px}
footer .cols a{display:block;margin:0 0 9px;color:rgba(255,255,255,.66);font-size:.9rem}
footer .cols a:hover{color:var(--t-accent2);text-decoration:none}
footer .cols h4{font-family:var(--t-head);font-size:.8rem;color:#fff;margin-bottom:13px;
  text-transform:uppercase;letter-spacing:.06em}
@media (max-width:760px){footer .cols{grid-template-columns:1fr 1fr}}
.foot-bottom{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;display:flex;flex-wrap:wrap;
  justify-content:space-between;gap:10px;font-size:.79rem;color:rgba(255,255,255,.45)}
.related-mesh{font-size:.82rem;line-height:1.8;color:rgba(255,255,255,.5)}
.related-mesh a{color:rgba(255,255,255,.62);text-decoration:underline;text-underline-offset:2px}

/* cookie consent */
#cc-banner{position:fixed;bottom:0;left:0;right:0;background:var(--t-ink);color:#fff;padding:12px 16px;
  font:14px/1.45 var(--t-body);display:flex;gap:12px;align-items:center;justify-content:center;
  flex-wrap:wrap;z-index:99999}
#cc-banner a{color:var(--t-accent2)}
#cc-banner button{border:0;border-radius:7px;padding:8px 16px;font-weight:700;cursor:pointer;font-family:var(--t-head)}
.cc-ok{background:var(--t-accent);color:#fff}.cc-ok:active{transform:scale(.98)}
.cc-no{background:rgba(255,255,255,.14);color:#fff}

@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
