:root{--bg:#f4efe6;--fg:#1b2a33;--muted:#53636d;--card:#fffdf8;--line:#d9cfbf;--accent:#b4462b;--accent-fg:#fff;--deep:#1f3b4d;--link:#9a3a22}.dark{--bg:#10191f;--fg:#e8e2d6;--muted:#a3b0b8;--card:#17232b;--line:#2b3b46;--accent:#e07a55;--accent-fg:#10191f;--deep:#0b1418;--link:#f0a07f}html{background:var(--bg);color:var(--fg)}body{font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,sans-serif;font-size:1.0625rem;line-height:1.7}@media (min-width:900px){body{font-size:1.125rem}}h1,h2,h3,.brand{letter-spacing:-.01em;font-family:Georgia,Iowan Old Style,Palatino Linotype,serif}h1{margin:.5rem 0 1rem;font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}h2{margin:2.2rem 0 .8rem;font-size:1.6rem;font-weight:600;line-height:1.25}h3{margin:1.6rem 0 .5rem;font-size:1.25rem;font-weight:600}a{color:var(--link);text-underline-offset:3px}.wrap{max-width:72rem;margin:0 auto;padding:0 1.25rem}.prose-wrap{max-width:48rem;padding-top:1.5rem;padding-bottom:3rem}.skip{position:absolute;left:-999px}.skip:focus{background:var(--card);z-index:10;padding:.5rem;top:1rem;left:1rem}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.site-header{background:var(--deep);color:#f4efe6;border-bottom:4px solid var(--accent)}.header-row{flex-wrap:wrap;align-items:center;gap:1.5rem;min-height:4rem;display:flex}.brand{color:#f4efe6;align-items:center;gap:.5rem;font-size:1.4rem;font-weight:700;text-decoration:none;display:flex}.brand-mark{color:var(--accent)}.main-nav{gap:1.25rem;margin-left:auto;display:flex}.main-nav a{color:#f4efe6;font-weight:600;text-decoration:none}.main-nav a:hover{text-decoration:underline}.theme-toggle{color:#f4efe6;cursor:pointer;background:0 0;border:1px solid #fff5;border-radius:50%;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex}.theme-toggle:hover{background:#ffffff1a}.theme-toggle:focus-visible{outline-offset:2px;outline:2px solid #fff}.hero{background:var(--deep);color:#f4efe6;clip-path:polygon(0 0,100% 0,100% calc(100% - 2.5rem),0 100%);margin-bottom:1rem;padding:3rem 0 4.5rem}.hero .btn.ghost{color:#f4efe6}.hero .lede{color:#d8d2c6;max-width:40rem}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--accent);font-size:.8rem;font-weight:700}.hero-cta{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.btn{background:var(--accent);color:var(--accent-fg);border:2px solid var(--accent);cursor:pointer;border-radius:3px;padding:.7rem 1.2rem;font-weight:700;text-decoration:none;display:inline-block}.btn.ghost{color:inherit;background:0 0;border-color:currentColor}.lede{color:var(--muted);font-size:1.15rem}.grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));grid-auto-rows:1fr;align-items:stretch;gap:1.25rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.grid>li{min-width:0;display:flex}.card a{box-sizing:border-box;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--accent);height:100%;color:var(--fg);border-radius:6px;flex-direction:column;flex:1;gap:.4rem;padding:1.1rem;text-decoration:none;display:flex}.card a:hover{border-color:var(--accent);box-shadow:0 4px 14px #0002}.card strong,.card h3{font-weight:600}.card span{color:var(--muted);font-size:.95rem}.crumbs{color:var(--muted);font-size:.9rem}.byline{color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:1rem 0 1.5rem;padding:.5rem 0;font-size:.9rem}.prose p,.prose ul,.prose ol,.prose table{margin:1rem 0}.prose ul{padding-left:1.4rem;list-style:outside}.prose ol{padding-left:1.4rem;list-style:decimal}.prose table,.tbl{border-collapse:collapse;width:100%;font-size:.95rem}.tbl-wrap{margin:1rem 0;overflow-x:auto}.tbl-wrap:focus-visible{outline:2px solid var(--accent)}.prose th,.prose td,.tbl th,.tbl td{border:1px solid var(--line);text-align:left;padding:.45rem .6rem}.prose th,.tbl th{background:var(--card)}.tbl caption{text-align:left;padding:.4rem 0;font-weight:700}.prose blockquote{border-left:4px solid var(--accent);color:var(--muted);padding-left:1rem}.tool-panel{background:var(--card);border:1px solid var(--line);border-top:6px solid var(--deep);margin:1.5rem 0;padding:1.25rem}.fields{grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.9rem;display:grid}.field{flex-direction:column;gap:.3rem;font-size:.95rem;font-weight:600;display:flex}.field em{color:var(--muted);font-style:normal;font-weight:400}input,select,textarea{background:var(--bg);color:var(--fg);border:1px solid var(--line);font:inherit;border-radius:3px;width:100%;padding:.55rem .6rem}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.out{grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:.75rem;margin-top:1.2rem;display:grid}.out div{background:var(--bg);border:1px dashed var(--line);padding:.8rem}.out dt{color:var(--muted);font-size:.85rem}.out dd{margin:0;font-size:1.3rem;font-weight:700}.form{flex-direction:column;gap:.8rem;display:flex}.form label{flex-direction:column;gap:.3rem;font-weight:600;display:flex}.faq details{border-bottom:1px solid var(--line);padding:.7rem 0}.faq summary{cursor:pointer;font-weight:700}.author-box{background:var(--card);border:1px solid var(--line);margin-top:2rem;padding:1rem}.site-footer{background:var(--deep);color:#d8d2c6;margin-top:4rem;padding:2.5rem 0 1.5rem}.site-footer a{color:#f0c3ad}.footer-grid{grid-template-columns:2fr 1fr;gap:2rem;display:grid}.footer-grid nav{gap:2rem;display:flex}.footer-grid ul{padding:0;list-style:none}.footer-brand{color:#fff;font-family:Georgia,serif;font-size:1.3rem}.site-footer .muted{color:#b9c2c7}.muted{color:var(--muted)}.small{font-size:.85rem}.badges{opacity:.85;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 1rem;display:flex}@media (max-width:640px){.footer-grid{grid-template-columns:1fr}.main-nav{order:3;width:100%;margin-left:0}.header-row{padding-top:.5rem;padding-bottom:.5rem}}.tool{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0001}input,select,textarea{border-radius:6px;min-height:2.75rem;font-size:1rem}input:focus-visible,select:focus-visible,textarea:focus-visible,.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.out div{background:var(--bg);border-style:solid;border-radius:6px}.out dd{color:var(--deep)}.btn{border-radius:6px;font-weight:600}.btn.ghost{color:var(--link);border-color:var(--line);background:0 0}.hero .eyebrow{color:#f6c3ad}.tool-panel .tool{box-shadow:none;background:0 0;border:0;padding:0}*,:before,:after{box-sizing:border-box}.dark .tool-panel{border:1px solid #3c5161;border-top:6px solid var(--accent);background:#1a2731;border-radius:10px;box-shadow:0 8px 24px #00000073}.dark .tool-panel .field,.dark .tool-panel .field span,.dark .tool-panel label,.dark .tool-panel h2{color:#f5f7f8}.dark .tool-panel .field em{color:#c9d4db}.dark .tool-panel input,.dark .tool-panel select,.dark .tool-panel textarea{color:#fff;background:#22323d;border:1px solid #5d7383}.dark .tool-panel input:hover,.dark .tool-panel select:hover{border-color:#8ea3b1}.dark .tool-panel input:focus,.dark .tool-panel select:focus,.dark .tool-panel textarea:focus{border-color:var(--accent);outline-offset:1px;outline:3px solid #e07a558c}.dark .tool-panel select option{color:#fff;background:#22323d}.out{border:1px solid var(--line);background:color-mix(in srgb, var(--accent) 9%, var(--card));border-radius:10px;padding:1rem}.dark .out{background:#2c2420;border-color:#a5583b}.dark .out div{background:#1f2b34;border:1px solid #3c5161}.dark .out dt{color:#d5dee4}.dark .out dd{color:#fff}.out dd{font-size:1.5rem}.dark .tool-panel .tbl th{color:#fff;background:#22323d}.dark .tool-panel .tbl td{color:#f5f7f8;border-color:#3c5161}.empty-state{border:1px dashed var(--line);background:var(--card);border-radius:10px;margin-top:1rem;padding:1rem 1.15rem;display:block}.dark .empty-state{color:#f5f7f8;background:#22323d;border-color:#5d7383}.empty-state p{margin:0 0 .6rem}.fields{align-items:stretch}.field{justify-content:flex-end}.field>span{line-height:1.3}.field em{white-space:nowrap;font-size:.85em}.fields input,.fields select{height:2.9rem;min-height:2.9rem}.out{align-items:stretch}.out div{flex-direction:column;justify-content:space-between;gap:.3rem;height:100%;display:flex}.out dd{overflow-wrap:anywhere;line-height:1.15}.out dd .sub{color:var(--muted);margin-top:.25rem;font-size:.9rem;font-weight:500;display:block}.dark .out dd .sub{color:#d5dee4}
