:root{--ink: #1c1c1c;--muted: #5a5a5a;--line: #d8d8d8;--bg: #fafaf8;--card: #ffffff;--accent: #2f5d3a;--warn-bg: #fff7e6;--err: #8c2f2f}*{box-sizing:border-box}body{font-family:Iowan Old Style,Palatino,Georgia,serif;color:var(--ink);background:var(--bg);margin:0;padding:1.25rem;line-height:1.45}header h1{font-size:1.6rem;margin:0 0 .2rem}.sub{color:var(--muted);margin:0 0 1rem}.muted{color:var(--muted)}h2{font-size:1.05rem;border-bottom:1px solid var(--line);padding-bottom:.3rem}h3{font-size:.95rem;margin:1.2rem 0 .4rem}.cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1400px}.cols.designer{grid-template-columns:1fr 2.1fr}.wide{margin-top:1.5rem}.stack{display:flex;flex-direction:column;gap:1.5rem;min-width:0}.highlight{background:#eef6f0;border:2px solid var(--accent);border-radius:8px;padding:.9rem 1rem 1rem;margin-bottom:1.5rem}.stack>.highlight{margin-bottom:0}.highlight>h2{margin-top:0;color:var(--accent);border-bottom-color:var(--accent)}.highlight .lede{font-size:.9rem;margin:0 0 .9rem}.highlight input{background:var(--card)}.field{margin-bottom:.8rem}.field label{display:block;font-size:.9rem;margin-bottom:.2rem}.field input[type=text],.field input[type=number],.field select{width:100%;padding:.4rem;font:inherit;border:1px solid var(--line);border-radius:4px;background:var(--card)}.field output{font-weight:600;margin-left:.4rem}.check{font-size:.9rem}fieldset.field{border:1px solid var(--line);border-radius:4px}fieldset legend{font-size:.85rem;color:var(--muted)}.warn{background:var(--warn-bg);border:1px solid #eedcb0;padding:.5rem;font-size:.85rem;border-radius:4px}.card{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:.9rem;font-variant-numeric:tabular-nums}.card .big{font-size:1.5rem;font-weight:700}.card .big .unit{font-size:1rem;font-weight:400}.badge{display:inline-block;font-size:.75rem;border-radius:999px;padding:.1rem .6rem;margin-left:.4rem;vertical-align:middle}.badge.green{background:#e2f2e5;color:var(--accent)}.badge.amber{background:#fdf0d3;color:#8a6512}.badge.red,.badge.invalid{background:#f7dede;color:var(--err)}code.block{display:block;background:var(--card);border:1px solid var(--line);border-radius:4px;padding:.6rem;word-break:break-all;font-size:.85rem;letter-spacing:.08em}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:.35rem .4rem;font-variant-numeric:tabular-nums}th{color:var(--muted);font-weight:600}td code,.card code{letter-spacing:.06em}#problems p,#repair p{color:var(--err);font-size:.9rem;background:#fdeeee;padding:.5rem;border-radius:4px}.row{display:flex;gap:.5rem;flex-wrap:wrap}.tip{position:relative;display:inline-block;margin-left:.35rem;vertical-align:middle}.tip .i{display:inline-flex;align-items:center;justify-content:center;width:.95rem;height:.95rem;border:1px solid var(--muted);border-radius:50%;font-size:.65rem;font-style:italic;color:var(--muted);cursor:help}.tip-body{display:none;position:absolute;left:0;top:1.35rem;z-index:10;width:22rem;max-width:80vw;background:var(--card);border:1px solid var(--line);border-radius:4px;padding:.6rem;font-size:.82rem;font-weight:400;line-height:1.4;box-shadow:0 4px 14px #0000001f}.tip:hover .tip-body,.tip:focus-within .tip-body{display:block}#candidates{table-layout:auto}#candidates th,#candidates td{border-bottom:none}#candidates th{text-align:center}#candidates th{border-bottom:1px dotted var(--muted);cursor:help}#candidates th:nth-child(-n+7),#candidates td:nth-child(-n+7){white-space:nowrap;width:1%}#candidates td{text-align:center}#candidates th:nth-child(8),#candidates td:nth-child(8){min-width:60ch;text-align:start}button{font:inherit;padding:.45rem .9rem;border:1px solid var(--line);background:var(--card);border-radius:4px;cursor:pointer}button:hover{border-color:var(--accent)}.alt-card{margin-bottom:.6rem}.alt-card .label{font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.samples{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.85rem;color:var(--muted);margin-top:.5rem}.field-note{font-size:.8rem;color:var(--muted);margin-top:.25rem}.field-note:empty{display:none}.try-list{margin-top:.5rem}button.try{background:none;border:none;border-radius:0;padding:0;margin:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:2px}button.try:hover{color:var(--accent);border-color:inherit}.sample{white-space:nowrap;font-family:monospace;border:1px solid var(--line);border-radius:4px;background:var(--bg);padding:.3rem .4rem;text-align:center}#candidates td code{white-space:nowrap}.samples code{color:var(--ink)}#alternatives,#convert{display:grid;grid-template-columns:1fr 1fr;column-gap:.6rem}#convert>.try-list{grid-column:1 / -1}.conv-out{margin-top:.35rem;font-size:.9rem;line-height:1.4}.conv-out:empty{display:none}#convert input{font-family:monospace}@media(max-width:900px){.cols,#alternatives,#convert{grid-template-columns:1fr}}
