:root{--bg:#f7f6f1;--surface:#fff;--text:#17201c;--muted:#59625d;--border:#d8d6cc;--accent:#123b2f;--accent-text:#fff;--mark:#f2c14e;--mark-soft:#fbf0d2;--ok:#1d7347;--err:#a8322d;--radius:10px}@media (prefers-color-scheme:dark){:root{--bg:#121614;--surface:#1b201d;--text:#e7ebe8;--muted:#a3aca6;--border:#333a36;--accent:#8fd1b4;--accent-text:#0e1512;--mark:#f2c14e;--mark-soft:#3a3120;--ok:#7fd3a4;--err:#f09a94}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:17px/1.6 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.wrap{max-width:860px;margin:0 auto;padding:0 16px}a{color:var(--accent)}h1{text-wrap:balance;margin:1.75rem 0 .5rem;font-size:2.1rem;line-height:1.15}h2{text-wrap:balance;margin-top:2.25rem;font-size:1.35rem}h3{margin-bottom:.25rem;font-size:1.1rem}.lead{color:var(--muted);max-width:62ch;font-size:1.12rem}mark{background:var(--mark-soft);color:inherit;border-radius:3px;padding:0 .15em}.site-header{border-bottom:1px solid var(--border);background:var(--surface)}.site-header .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;min-height:56px;display:flex}.site-header nav{flex-wrap:wrap;gap:1rem;display:flex}.site-header nav a{color:var(--text);text-decoration:none}.logo{color:var(--text);align-items:center;gap:.45rem;font-size:1.15rem;font-weight:750;text-decoration:none;display:flex}.site-footer{border-top:1px solid var(--border);color:var(--muted);margin-top:4rem;padding:1rem 0 2rem;font-size:.9rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:1.5rem 0;padding:1.25rem}.gen{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:1.5rem;display:grid}@media (width<=720px){.gen{grid-template-columns:1fr}}.fields{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.9rem;display:grid}.field-full{grid-column:1/-1}label{margin-bottom:.25rem;font-size:.9rem;font-weight:600;display:block}input,select,textarea{width:100%;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:.55rem .6rem}input[type=color]{height:2.4rem;padding:.15rem}textarea{resize:vertical;min-height:5rem}.hint{color:var(--muted);margin-top:.2rem;font-size:.82rem}.tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;display:flex}.tabs button{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;border-radius:999px;padding:.35rem .8rem;font-size:.9rem}.tabs button[aria-pressed=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.preview{text-align:center;justify-items:center;gap:.75rem;display:grid}.qr-box{aspect-ratio:1;border:1px solid var(--border);background:#fff;border-radius:8px;width:100%;max-width:280px;padding:10px}.qr-box svg{width:100%;height:100%;display:block}.btn-row{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.btn{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-text);cursor:pointer;border-radius:8px;padding:.6rem 1.1rem;font-weight:600;text-decoration:none;display:inline-block}.btn.secondary{color:var(--accent);background:0 0}.btn:disabled{opacity:.55;cursor:progress}.btn:focus-visible,.tabs button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--mark);outline-offset:2px}.compare{border-collapse:collapse;width:100%;font-size:.95rem}.compare th,.compare td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:.6rem .7rem}.compare th{color:var(--muted);font-size:.85rem}.table-scroll{overflow-x:auto}.notice{background:var(--mark-soft);border-radius:8px;margin:1rem 0;padding:.9rem 1rem}.error{color:var(--err);font-weight:600}.ok{color:var(--ok);font-weight:600}.stat{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:750}.bars{align-items:flex-end;gap:2px;height:70px;margin-top:.5rem;display:flex}.bars span{background:var(--accent);opacity:.85;border-radius:2px 2px 0 0;flex:1;min-height:2px}.mono{word-break:break-all;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:.92rem}.card-list{gap:.75rem;padding:0;list-style:none;display:grid}.card-list a{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:1rem;text-decoration:none;display:block}.card-list a strong{color:var(--accent);display:block}.card-list a span{color:var(--muted);font-size:.95rem}.faq dt{margin-top:1rem;font-weight:700}.faq dd{color:var(--text);margin:.25rem 0 0}.prose p,.prose li{max-width:68ch}
