:root{--bg:#f4efe6;--ink:#1f2a26;--muted:#5d6b65;--card:#fffdf8;--line:#d9d1c2;--green:#2f6b5a;--green-d:#24544a;--accent:#c8793a;--radius:14px;--shadow:0 10px 30px rgba(31,42,38,.08)}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;background:var(--bg);color:var(--ink);line-height:1.6;font-size:16px}
a{color:var(--green-d)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.wrap{max-width:1000px;margin:0 auto;padding:0 20px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.site-header{background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-weight:700}
.brand-mark{display:inline-flex}
.site-nav{display:flex;gap:16px;flex-wrap:wrap}
.site-nav a{text-decoration:none;color:var(--muted);font-size:.95rem}
.site-nav a:hover{color:var(--green-d)}
.intro{padding:40px 0 20px}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--accent);margin:0 0 8px;font-weight:700}
h1{font-family:Georgia,"Iowan Old Style",serif;font-size:clamp(1.9rem,4vw,2.6rem);margin:0 0 12px;line-height:1.15}
.lead{font-size:1.1rem;color:var(--muted);max-width:640px;margin:0}
.workspace{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}
.inputs{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:end}
.field label{display:block;font-weight:600;margin-bottom:6px;font-size:.92rem}
.field input{width:100%;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font-size:1.05rem;background:#fff;color:var(--ink)}
.pair-swap button{height:46px}
button{font:inherit;cursor:pointer;border:1px solid var(--line);background:#fff;color:var(--ink);padding:10px 16px;border-radius:10px;min-height:44px}
button:hover{border-color:var(--green)}
button.primary{background:var(--green);color:#fff;border-color:var(--green)}
button.primary:hover{background:var(--green-d)}
button.ghost{background:transparent;color:var(--muted)}
.presets{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:18px 0 6px}
.presets-label{font-size:.9rem;color:var(--muted);margin-right:4px}
.chip{border-radius:999px;font-size:.88rem;padding:6px 14px;min-height:36px}
.message{min-height:1.4em;font-size:.92rem;color:var(--green-d);margin:8px 0}
.card{margin-top:8px;border:1px dashed var(--line);border-radius:var(--radius);padding:22px;background:linear-gradient(160deg,#fff,#f8f3e9)}
.card-empty{color:var(--muted);text-align:center;padding:30px 10px;font-style:italic}
.card-names{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.name-col h3{font-family:Georgia,serif;font-size:1.6rem;margin:0 0 6px;color:var(--green-d)}
.origin{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 8px;font-weight:700}
.meaning{margin:0 0 8px}
.travel{font-size:.94rem;color:var(--muted);margin:0}
.shared{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.shared h3{margin:0 0 6px;font-size:1.1rem}
.pronounce{font-size:.92rem;color:var(--muted);margin:8px 0 0}
.actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 28px}
.favorites{margin-top:28px;border-top:1px solid var(--line);padding-top:20px}
.fav-head{display:flex;justify-content:space-between;align-items:center;gap:10px}
.fav-head h2{margin:0;font-size:1.3rem}
.fav-list{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:8px}
.fav-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px}
.fav-list button.load{border:none;background:none;padding:0;color:var(--green-d);font-weight:600;min-height:auto;text-align:left}
.muted{color:var(--muted);font-size:.92rem}
.support{padding:40px 0 10px}
.support h2{font-size:1.45rem;margin:28px 0 10px}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
table{width:100%;border-collapse:collapse;font-size:.95rem}
th,td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:#f1ebdd}
.notes li{margin-bottom:8px}
.site-footer{margin-top:40px;background:var(--card);border-top:1px solid var(--line);padding:24px 0}
.footer-inner p{margin:4px 0}
.site-footer nav{margin-top:8px;font-size:.92rem}
@media (max-width:720px){
.inputs{grid-template-columns:1fr}
.pair-swap button{width:100%}
.card-names{grid-template-columns:1fr}
.workspace{padding:16px}
.intro{padding-top:24px}
}



/* Factory-injected deployment helpers. The AI owns the site design above this block. */
.ad-unit {
  width: min(100%, 720px);
  min-height: 120px;
  margin: 24px auto;
  display: block;
}

.legal-page {
  width: min(900px, calc(100% - 32px));
  margin: 40px auto;
}

.factory-fallback-nav {
  width: min(900px, calc(100% - 32px));
  margin: 24px auto 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  align-items: center;
  font-size: 0.95rem;
}

.factory-fallback-nav a {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
}
