/* BizLetter — terminal layout, business navy (#1E3A5F) + gold (#B8862F) */
:root{
  --bg:#f8fafc;
  --panel:#1E3A5F;
  --ink:#0f172a;
  --muted:#64748b;
  --border:#e2e8f0;
  --card:#ffffff;
  --accent:#1E3A5F;
  --accent2:#B8862F;
  --panel-ink:#ffffff;
  --header-ink:#ffffff;
  --nav-ink:#cbd5e1;
  --nav-ink-hover:#B8862F;
  --btn-ink:#ffffff;
  --result-bg:#1E3A5F;
  --result-v:#e7c98a;
  --badge-bg:#eef2f7;
  --badge-ink:#5b4a1f;
  --radius:12px;
  --shadow:0 1px 2px rgba(15,23,42,.06),0 8px 24px rgba(15,23,42,.06);
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --ui:var(--sans);
}
*{box-sizing:border-box}html,body{margin:0;padding:0}html{height:100%}
body{font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.65;font-size:17px;min-height:100%;display:flex;flex-direction:column}
main{flex:1 0 auto;width:100%}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
header.site{background:var(--panel);border-bottom:3px solid var(--accent2);position:sticky;top:0;z-index:10}
header.site .wrap{max-width:980px;margin:0 auto;padding:11px 16px;display:flex;align-items:center;justify-content:space-between}
.brand{display:flex;align-items:center;gap:9px;font-weight:700;color:var(--header-ink)}
.brand-name{font-size:1.05rem;letter-spacing:.3px;font-family:var(--ui)}
.logo{border-radius:6px;flex:0 0 auto}
nav.site a{margin-left:14px;color:var(--nav-ink);font-size:.92rem;font-family:var(--ui);font-weight:600}
nav.site a:hover{color:var(--nav-ink-hover);text-decoration:none}

body.layout-terminal main{max-width:980px;margin:0 auto;padding:30px 16px 8px}
h1{font-size:1.85rem;margin:.1em 0 .15em;line-height:1.25;font-family:var(--ui);letter-spacing:-.01em}
.sub{color:var(--muted);margin:.2em 0 1em;font-size:1.05rem}
.local-badge{display:inline-block;background:var(--badge-bg);color:var(--badge-ink);font-size:.82rem;padding:5px 12px;border-radius:999px;margin-bottom:14px;font-family:var(--ui);font-weight:600}
section{margin:26px 0}h2{font-size:1.4rem;margin:.2em 0 .5em;font-family:var(--ui)}
h3{font-size:1.05rem;margin:1em 0 .2em}
.prose p{margin:.6em 0}
.author{margin-top:22px;padding-top:14px;border-top:1px dashed var(--border);font-size:.9rem;color:var(--muted);font-style:italic}

/* template block */
body.layout-terminal .tpl-block{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
body.layout-terminal .tpl-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
body.layout-terminal .tpl-head h2{margin:0;font-size:1.1rem}
body.layout-terminal textarea{width:100%;border:1px solid var(--border);border-radius:10px;padding:14px;font-family:var(--mono);font-size:.9rem;line-height:1.55;color:#1e293b;background:#fcfcfd;resize:vertical}
body.layout-terminal .copybtn{background:var(--accent);color:var(--btn-ink);border:none;border-radius:10px;padding:9px 16px;font-weight:700;font-size:.9rem;cursor:pointer;font-family:var(--ui);transition:background .18s,transform .18s}
body.layout-terminal .copybtn:hover{background:#16304f;transform:translateY(-1px)}
body.layout-terminal .fill-list{margin:6px 0 4px;padding-left:20px;color:#334155}
body.layout-terminal .fill-list li{margin:4px 0}
body.layout-terminal .tips{background:#fdfaf2;border:1px solid #f1e4b8;border-radius:12px;padding:14px 16px}
body.layout-terminal .tips h2{color:var(--accent2);margin-top:0}
body.layout-terminal .tips p{margin:.3em 0;color:#5b4a1f}
body.layout-terminal .faq h3{margin-top:1.1em;color:var(--accent)}
body.layout-terminal .faq p{margin:.3em 0;color:#334155}

/* related */
body.layout-terminal .grid-links{display:flex;flex-wrap:wrap;gap:9px;margin-top:8px}
body.layout-terminal .grid-links a{background:var(--badge-bg);border:1px solid var(--border);color:var(--accent);padding:7px 13px;border-radius:999px;font-size:.9rem;font-family:var(--ui);font-weight:600;transition:background .18s}
body.layout-terminal .grid-links a:hover{background:var(--accent);color:#fff;text-decoration:none}

/* home cards */
body.layout-terminal main>section{margin:34px 0}
body.layout-terminal main>section>h2{font-size:1.5rem;margin:0 0 14px}
body.layout-terminal .cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}
body.layout-terminal .card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:18px;transition:transform .18s,box-shadow .18s}
body.layout-terminal .card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
body.layout-terminal .card h3{margin:0 0 6px;font-size:1.05rem}
body.layout-terminal .card h3 a{color:var(--ink)}
body.layout-terminal .card p{margin:0;color:var(--muted);font-size:.9rem}

/* trust */
body.layout-terminal .tool-panel.prose{max-width:760px;margin:0 auto}
body.layout-terminal .tool-panel.prose h2{font-size:1.3rem;margin:22px 0 8px}
body.layout-terminal .tool-panel.prose p{color:#334155}

/* ad slots */
body.layout-terminal .ad-slot{margin:26px 0;min-height:8px}
.ad-slot:empty{display:none}

/* footer */
body.layout-terminal footer.site{background:var(--panel);border-top:1px solid rgba(255,255,255,.08);margin-top:40px;color:var(--nav-ink);font-size:.9rem}
body.layout-terminal footer.site .wrap{max-width:980px;margin:0 auto;padding:20px;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}
body.layout-terminal footer.site a{color:var(--nav-ink);font-family:var(--ui);font-weight:600}
body.layout-terminal footer.site .wrap span a{margin-left:14px}
body.layout-terminal footer.site .wrap span a:first-child{margin-left:0}
body.layout-terminal footer.site a:hover{color:var(--nav-ink-hover)}

@media (max-width:760px){
  body.layout-terminal main{padding:24px 16px 8px}
  header.site .wrap{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:10px;gap:8px}
  nav.site{margin-left:0;flex-wrap:wrap;gap:4px 12px}
  nav.site a{margin-left:0;font-size:.85rem}
  body.layout-terminal .cards{grid-template-columns:1fr}
  body.layout-terminal footer.site .wrap{flex-direction:column}
}
