:root{--fg:#111;--muted:#555;--bg:#fff;--line:#e3e3e3;--accent:#0b5cad;--warn:#8a4b00}*{box-sizing:border-box}body{margin:0;font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--fg);background:var(--bg)}a{color:var(--accent)}main{max-width:960px;margin:0 auto;padding:24px 16px 64px}footer.site,header.site{border-bottom:1px solid var(--line);padding:12px 16px}footer.site{border-top:1px solid var(--line);border-bottom:0;color:var(--muted);font-size:14px}header.site nav{max-width:960px;margin:0 auto;display:flex;gap:16px;flex-wrap:wrap;align-items:center}header.site .brand{font-weight:700;text-decoration:none;color:var(--fg);margin-right:auto}table{border-collapse:collapse;width:100%;font-size:14px}td,th{border-bottom:1px solid var(--line);padding:6px 8px;text-align:left}th{background:#fafafa}td.num,th.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:12px;gap:12px}label{display:flex;flex-direction:column;font-size:14px;gap:4px}input,select{font:inherit;padding:6px 8px;border:1px solid #bbb;border-radius:6px}.card{border:1px solid var(--line);border-radius:10px;padding:16px;margin:16px 0}.result{font-size:20px;font-weight:600}.note{color:var(--muted);font-size:14px}.warn{color:var(--warn)}button{font:inherit;padding:6px 12px;border-radius:6px;border:1px solid #bbb;background:#f6f6f6;cursor:pointer}.skip{position:absolute;left:-9999px;top:0;background:#fff;padding:8px 12px;z-index:10}.skip:focus{left:8px;top:8px}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}body:has(.widget-root)>a.skip,body:has(.widget-root)>footer.site,body:has(.widget-root)>header.site{display:none}.widget-root{padding:8px 12px}.widget-root .card{margin:8px 0}.widget-title{font-size:18px;margin:4px 0}textarea.code{width:100%;font:13px/1.4 ui-monospace,Menlo,Consolas,monospace;padding:8px;border:1px solid #bbb;border-radius:6px;margin-top:12px}.signup fieldset{border:0;padding:0;margin:8px 0}label.inline{flex-direction:row;align-items:center;gap:8px}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}pre{background:#f6f6f6;border:1px solid var(--line);padding:10px 12px;overflow-x:auto;font-size:13px}a.button,pre{border-radius:6px}a.button{display:inline-block;margin:4px 8px 4px 0;padding:10px 16px;background:#1e3a8a;color:#fff;text-decoration:none;font-weight:600}a.button:hover{background:#1e40af}