:root{--bg:#fbfbf9;--panel:#fff;--ink:#1a1a18;--muted:#6b6b63;--line:#e2e2dc;--accent:#1f4d3d;--ok:#1f6f4a;--warn:#8a6100;--bad:#9b2226;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace}@media (prefers-color-scheme:dark){:root{--bg:#14140f;--panel:#1c1c19;--ink:#ececdf;--muted:#9a9a8c;--line:#33332c;--accent:#7fc8a9;--ok:#6bbf8f;--warn:#d7a13b;--bad:#e2777a}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:16px/1.6 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}main{max-width:46rem;margin:0 auto;padding:2.5rem 1.25rem 6rem}h1{letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.6rem}h2{margin:2rem 0 .5rem;font-size:1.1rem}h3{margin:1.25rem 0 .4rem;font-size:.95rem}p{margin:.6rem 0}a{color:var(--accent)}.muted{color:var(--muted)}.small{font-size:.85rem}.mono{font-family:var(--mono);word-break:break-all;font-size:.82rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:10px;margin:1rem 0;padding:1.1rem 1.2rem}.steps{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;font-size:.8rem;display:flex}.steps span{color:var(--muted)}.steps .on{color:var(--ink);font-weight:600}button{font:inherit;cursor:pointer;border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:7px;padding:.55rem 1.1rem}button.secondary{color:var(--ink);border-color:var(--line);background:0 0}button:disabled{opacity:.5;cursor:not-allowed}.row{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem;display:flex}input[type=text],input[type=password],textarea,select{font:inherit;border:1px solid var(--line);background:var(--bg);width:100%;color:var(--ink);border-radius:6px;padding:.5rem .6rem}textarea{font-family:var(--mono);resize:vertical;min-height:18rem;font-size:.82rem;line-height:1.55}label{margin:.8rem 0 .25rem;font-size:.85rem;font-weight:600;display:block}.words{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:.4rem;margin:1rem 0;display:grid}.word{font-family:var(--mono);background:var(--bg);border:1px solid var(--line);border-radius:5px;padding:.35rem .5rem;font-size:.82rem}.word b{color:var(--muted);margin-right:.4rem;font-weight:400}table{border-collapse:collapse;width:100%;font-size:.87rem}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.4rem .5rem}th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.tag{white-space:nowrap;border:1px solid;border-radius:4px;padding:.1rem .45rem;font-size:.72rem}.allow{color:var(--ok)}.deny{color:var(--bad)}.conditional{color:var(--warn)}.note{border-left:3px solid var(--line);margin:.8rem 0;padding:.4rem 0 .4rem .8rem}.note.ok{border-color:var(--ok)}.note.warn{border-color:var(--warn)}.note.bad{border-color:var(--bad)}.tabs{border-bottom:1px solid var(--line);gap:.3rem;margin:1rem 0 0;display:flex}.tabs button{color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:.5rem .8rem}.tabs button.on{color:var(--ink);border-bottom-color:var(--accent);font-weight:600}pre{background:var(--bg);border:1px solid var(--line);font-family:var(--mono);border-radius:7px;padding:.8rem;font-size:.78rem;line-height:1.5;overflow-x:auto}.prose h1{font-size:1.25rem}.prose h2{font-size:1rem}.prose ul{padding-left:1.2rem}
