/* /roman-numeral-converter/ page styles. Built from /assets/polyatic.css tokens only; the five stencil
   typefaces are vendored OFL fonts (vendor/fonts/<family>/OFL.txt) used only inside the preview. */
@font-face{font-family:"RN Cinzel";font-style:normal;font-weight:400;font-display:swap;src:url(vendor/fonts/cinzel/cinzel-latin-400-normal.woff2) format("woff2"),url(vendor/fonts/cinzel/cinzel-latin-400-normal.woff) format("woff")}
@font-face{font-family:"RN Cormorant";font-style:normal;font-weight:600;font-display:swap;src:url(vendor/fonts/cormorant-garamond/cormorant-garamond-latin-600-normal.woff2) format("woff2"),url(vendor/fonts/cormorant-garamond/cormorant-garamond-latin-600-normal.woff) format("woff")}
@font-face{font-family:"RN Josefin";font-style:normal;font-weight:400;font-display:swap;src:url(vendor/fonts/josefin-sans/josefin-sans-latin-400-normal.woff2) format("woff2"),url(vendor/fonts/josefin-sans/josefin-sans-latin-400-normal.woff) format("woff")}
@font-face{font-family:"RN Great Vibes";font-style:normal;font-weight:400;font-display:swap;src:url(vendor/fonts/great-vibes/great-vibes-latin-400-normal.woff2) format("woff2"),url(vendor/fonts/great-vibes/great-vibes-latin-400-normal.woff) format("woff")}
@font-face{font-family:"RN Fraktur";font-style:normal;font-weight:400;font-display:swap;src:url(vendor/fonts/unifrakturmaguntia/unifrakturmaguntia-latin-400-normal.woff2) format("woff2"),url(vendor/fonts/unifrakturmaguntia/unifrakturmaguntia-latin-400-normal.woff) format("woff")}
.f-cinzel{font-family:"RN Cinzel",serif;font-weight:400}
.f-cormorant-garamond{font-family:"RN Cormorant",serif;font-weight:600}
.f-josefin-sans{font-family:"RN Josefin",sans-serif;font-weight:400}
.f-great-vibes{font-family:"RN Great Vibes",cursive;font-weight:400}
.f-unifrakturmaguntia{font-family:"RN Fraktur",serif;font-weight:400}

.nojs{margin:1.25rem 0 0;padding:0.875rem 1rem;border:1px solid var(--line);border-left:0.25rem solid var(--accent);border-radius:0.625rem;background:var(--surface);color:var(--ink);font-size:0.9375rem;line-height:1.6}
.rn-head .sub{margin-bottom:0.875rem}
@media(max-width:520px){.rn-head h1{margin-bottom:0.25rem}.rn-head .sub{font-size:0.9375rem;margin-bottom:0.625rem}}
.rn-modes{max-width:26rem;margin-bottom:0.875rem}
.rn-modes button:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
@media(min-width:920px){.rn-duo{grid-template-columns:minmax(0,1.1fr) minmax(22rem,.9fr)}}

.rn-card,.rn-stencil{padding:1rem;display:grid;gap:0.625rem;align-content:start}
.rn-card[hidden]{display:none}
@media(max-width:520px){.rn-card,.rn-stencil{padding:0.75rem}}
.rn-card .k,.rn-stencil .k{font-family:var(--mono);font-size:0.6875rem;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.rn-h{margin:0;font-size:1.0625rem;font-weight:650;letter-spacing:-.01em}
.rn-input{width:100%;font-family:var(--mono);font-size:1.25rem;letter-spacing:.04em;padding:0.625rem 0.75rem}
.rn-readout{min-height:3.5rem}
.rn-readout .val{font-size:1.75rem;letter-spacing:.04em}
@media(max-width:520px){.rn-readout .val{font-size:1.5rem}}
.rn-readout .chip,.rn-lrow .chip{padding:0.5rem 0.75rem}
.rn-break{margin:0;font-family:var(--mono);font-size:0.875rem;line-height:1.5;color:var(--ink-2);overflow-wrap:anywhere}
.rn-break:empty,.rn-note:empty{display:none}
.rn-note{margin:0;font-size:0.875rem;line-height:1.5;color:var(--ink-2)}
.rn-note.bad{color:var(--bad);font-weight:600}
.rn-note.info{border-left:0.1875rem solid var(--signal);padding-left:0.625rem}
.rn-vinc{font-size:0.8125rem;line-height:1.45;color:var(--muted);align-items:flex-start}
.rn-vinc b{color:var(--ink-2)}
.rn-help{margin:0;font-size:0.8125rem;line-height:1.5;color:var(--muted)}
.rn-help:empty{display:none}
.rn-help b{color:var(--ink-2)}
.rn-bar{display:inline-block;border-top:0.07em solid currentColor;padding-top:0.06em;line-height:1}

.rn-drow{display:flex;flex-wrap:wrap;gap:0.625rem;align-items:flex-end}
.rn-dfield{display:grid;gap:0.3125rem;min-width:0;flex:1 1 9rem}
.rn-dfield input{width:100%;font-size:1rem}
.rn-seprow{display:flex;flex-wrap:wrap;align-items:center;gap:0.375rem 0.75rem}
.rn-seps .chip{min-width:2.5rem;padding:0.375rem 0.625rem;font-family:var(--mono);font-weight:600}
.rn-warn{margin:0;padding:0.625rem 0.75rem;border:1px solid var(--warn);border-left-width:0.25rem;border-radius:0.5rem;font-size:0.875rem;line-height:1.5;color:var(--ink)}
.rn-warn[hidden]{display:none}
.rn-layouts{display:grid;gap:0.5rem}
.rn-lay-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0.125rem 0.625rem;align-items:center;padding:0.5rem 0.625rem;border:1px solid var(--line);border-radius:0.5rem;background:var(--surface-2)}
.rn-lay-row.sel{border-color:var(--accent);box-shadow:inset 0.1875rem 0 0 var(--signal)}
.rn-lay-k{font-family:var(--mono);font-size:0.6875rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.rn-lay-val{font-family:var(--mono);font-size:1.25rem;font-weight:600;letter-spacing:.03em;overflow-wrap:anywhere}
.rn-lay-words{font-size:0.875rem;color:var(--ink-2)}
.rn-lay-used{font-size:0.75rem;color:var(--muted)}
.rn-lay-acts{grid-column:2;grid-row:1/span 4;display:flex;flex-direction:column;gap:0.375rem}
.rn-lay-acts .chip{padding:0.375rem 0.625rem;font-size:0.8125rem}
.rn-lay-row > :not(.rn-lay-acts){grid-column:1}

.rn-lrow{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center}
#list{width:100%;min-height:6rem;resize:vertical;font-family:var(--mono);font-size:0.9375rem;line-height:1.5}
.rn-tablewrap{overflow-x:auto;max-width:100%}
.rn-table{border-collapse:collapse;width:100%;font-size:0.875rem}
.rn-table th,.rn-table td{text-align:left;padding:0.375rem 0.5rem;border-bottom:1px solid var(--line);vertical-align:top}
.rn-table td:nth-child(-n+2){font-family:var(--mono);white-space:nowrap}
.rn-table td.bad{color:var(--bad)}
.rn-table thead th{font-family:var(--mono);font-size:0.6875rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:500}

.rn-stage{min-height:9rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:1rem 0.5rem;border:1px dashed var(--line-2);border-radius:0.625rem;background:var(--surface);color:var(--ink);overflow:hidden;text-align:center;font-feature-settings:"liga" 0,"calt" 0,"kern" 1}
.rn-stage .ln{white-space:pre;line-height:1.25}
.rn-stage .rn-empty{font-family:var(--sans);font-size:0.875rem;color:var(--muted)}
.rn-fonts .chip{padding:0.375rem 0.75rem;font-size:1.0625rem}
.rn-fonts .chip span{font-feature-settings:normal}
.rn-sliders{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem 1rem}
@media(max-width:380px){.rn-sliders{grid-template-columns:1fr}}
.rn-sliders .field .head{margin-bottom:0.25rem}
.rn-lay .chip{padding:0.375rem 0.75rem}
.rn-dl{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:flex-end}
.rn-scale{display:grid;gap:0.25rem}
.rn-stencil .chip:focus-visible,.rn-card .chip:focus-visible{outline:3px solid var(--accent);outline-offset:2px}

.rn-cannot li{margin-bottom:0.375rem}
.rn-ref td,.rn-ref th[scope=row]{font-family:var(--mono)}
.rn-quote{margin:0.75rem 0;padding:0.25rem 0 0.25rem 1rem;border-left:0.1875rem solid var(--signal);color:var(--ink-2)}
.rn-quote p{margin:0.375rem 0}
.rn-src{font-size:0.8125rem;color:var(--muted)}
.rn-vinc input{flex:none;margin-top:0.1875rem}
