:root{--rs-ink: #20232b;--rs-muted: #5b6170;--rs-faint: #8a8f9c;--rs-surface: #ffffff;--rs-paper: #f6f5f1;--rs-line: #e2dfd6;--rs-accent: #2546b8;--rs-accent-dark: #1a3388;--rs-accent-soft: #e8edfb;--rs-amber: #a8650a;--rs-amber-soft: #fdf0d4;--rs-red: #b3362a;--rs-red-soft: #fbe2de;--rs-green: #2c7448;--rs-green-soft: #e1f2e6;--rs-radius: 14px;--rs-radius-sm: 8px;--rs-shadow: 0 12px 30px rgba(32,35,43,0.08);--rs-focus: 0 0 0 3px rgba(37,70,184,0.3);--rs-mono: ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--primary: var(--rs-accent);--primary-dark: var(--rs-accent-dark);--border: var(--rs-line);--surface: var(--rs-surface);--shadow-soft: var(--rs-shadow);--surface-muted: var(--rs-paper);--text-main: var(--rs-ink);--text-muted: var(--rs-muted);}
.rs-tool{background: var(--rs-surface);border: 1px solid var(--rs-line);border-radius: var(--rs-radius);box-shadow: var(--rs-shadow);color: var(--rs-ink);overflow: hidden;}
.rs-tool [hidden]{display: none !important;}
.rs-byline{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 0.3rem 1rem;padding: 0.7rem 1.3rem;border-bottom: 1px solid var(--rs-line);background: var(--rs-paper);font-size: 0.86rem;color: var(--rs-muted);}
.rs-byline-author{font-weight: 600;color: var(--rs-ink);}
.rs-byline .author-link{color: var(--rs-accent);text-decoration: none;}
.rs-byline .author-link:hover{text-decoration: underline;}
.rs-grid{display: grid;grid-template-columns: minmax(0,7fr) minmax(0,5fr);}
.rs-in{padding: 1.3rem;border-right: 1px solid var(--rs-line);display: flex;flex-direction: column;gap: 0.75rem;}
.rs-labelrow{display: flex;justify-content: space-between;align-items: baseline;gap: 1rem;}
.rs-label{font-weight: 700;font-size: 0.95rem;margin: 0;}
.rs-count{font-size: 0.84rem;color: var(--rs-muted);}
.rs-text{width: 100%;min-height: 320px;flex: 1;resize: vertical;border: 1px solid var(--rs-line);border-radius: var(--rs-radius-sm);padding: 0.9rem 1rem;font-size: 1rem;line-height: 1.6;color: var(--rs-ink);background: var(--rs-surface);}
.rs-text:focus{outline: none;border-color: var(--rs-accent);box-shadow: var(--rs-focus);}
.rs-actions{display: flex;flex-wrap: wrap;gap: 0.5rem;}
.rs-btn{border: 1px solid var(--rs-accent);background: var(--rs-accent);color: #fff;border-radius: 999px;padding: 0.45rem 1.05rem;font-size: 0.9rem;font-weight: 600;cursor: pointer;transition: background 0.15s ease;}
.rs-btn:hover{background: var(--rs-accent-dark);border-color: var(--rs-accent-dark);}
.rs-btn:focus-visible{outline: none;box-shadow: var(--rs-focus);}
.rs-btn-ghost{background: var(--rs-surface);color: var(--rs-accent);}
.rs-btn-ghost:hover{background: var(--rs-accent-soft);color: var(--rs-accent-dark);}
.rs-btn:disabled{opacity: 0.45;cursor: not-allowed;}
.rs-note{font-size: 0.86rem;color: var(--rs-red);margin: 0;min-height: 1.2em;}
.rs-out{padding: 1.3rem;display: flex;flex-direction: column;gap: 1rem;}
.rs-empty{flex: 1;display: flex;align-items: center;justify-content: center;text-align: center;border: 1px dashed var(--rs-line);border-radius: var(--rs-radius-sm);padding: 2rem 1.2rem;color: var(--rs-muted);background: var(--rs-paper);}
.rs-empty p{margin: 0;}
.rs-result{display: flex;flex-direction: column;gap: 1rem;}
.rs-head{display: grid;grid-template-columns: auto minmax(0,1fr);gap: 0.2rem 1rem;align-items: center;}
.rs-kicker{grid-column: 1 / -1;margin: 0;font-size: 0.78rem;font-weight: 700;letter-spacing: 0.06em;text-transform: uppercase;color: var(--rs-muted);}
.rs-grade{margin: 0;font-size: 3.2rem;font-weight: 800;line-height: 1;color: var(--rs-accent-dark);font-variant-numeric: tabular-nums;}
.rs-grade-label{margin: 0;font-weight: 600;line-height: 1.35;}
.rs-spread{grid-column: 1 / -1;margin: 0.3rem 0 0;font-size: 0.86rem;color: var(--rs-muted);}
.rs-target{display: flex;align-items: center;gap: 0.6rem;flex-wrap: wrap;font-size: 0.9rem;font-weight: 600;}
.rs-target select{flex: 1;min-width: 0;border: 1px solid var(--rs-line);border-radius: var(--rs-radius-sm);padding: 0.4rem 0.6rem;font-size: 0.9rem;background: var(--rs-surface);color: var(--rs-ink);}
.rs-target select:focus{outline: none;border-color: var(--rs-accent);box-shadow: var(--rs-focus);}
.rs-verdict{margin: 0;font-size: 0.9rem;border-radius: var(--rs-radius-sm);padding: 0;}
.rs-verdict.is-over{background: var(--rs-red-soft);color: var(--rs-red);padding: 0.55rem 0.75rem;}
.rs-verdict.is-ok{background: var(--rs-green-soft);color: var(--rs-green);padding: 0.55rem 0.75rem;}
.rs-verdict.is-under{background: var(--rs-amber-soft);color: var(--rs-amber);padding: 0.55rem 0.75rem;}
.rs-ease{border: 1px solid var(--rs-line);border-radius: var(--rs-radius-sm);padding: 0.75rem 0.9rem;}
.rs-ease-top{display: flex;justify-content: space-between;align-items: baseline;gap: 0.6rem;margin-bottom: 0.55rem;}
.rs-ease-name{font-weight: 700;font-size: 0.92rem;}
.rs-ease-val{font-weight: 800;font-size: 1.25rem;font-variant-numeric: tabular-nums;}
.rs-ease-val small{font-weight: 600;font-size: 0.8rem;color: var(--rs-muted);margin-left: 0.35rem;}
.rs-ease-track{position: relative;height: 10px;border-radius: 999px;background: linear-gradient(90deg,#d9604f 0%,#e2a33a 45%,#9cc56a 65%,#3e9a62 100%);}
.rs-ease-mark{position: absolute;top: -4px;width: 4px;height: 18px;margin-left: -2px;border-radius: 2px;background: var(--rs-ink);box-shadow: 0 0 0 2px #fff;transition: left 0.25s ease;}
.rs-ease-scale{display: flex;justify-content: space-between;font-size: 0.72rem;color: var(--rs-faint);margin-top: 0.3rem;}
.rs-formulas{width: 100%;border-collapse: collapse;font-size: 0.9rem;}
.rs-formulas th,.rs-formulas td{padding: 0.5rem 0.3rem;border-bottom: 1px solid var(--rs-line);vertical-align: middle;}
.rs-formulas tr:last-child th,.rs-formulas tr:last-child td{border-bottom: 0;}
.rs-formulas th{font-weight: 600;text-align: left;}
.rs-formulas th small{display: block;font-weight: 400;font-size: 0.76rem;color: var(--rs-muted);}
.rs-num{text-align: right;font-weight: 700;font-variant-numeric: tabular-nums;width: 3.2rem;}
.rs-barcell{width: 38%;padding-left: 0.7rem !important;}
.rs-bar{position: relative;display: block;height: 8px;border-radius: 999px;background: var(--rs-paper);}
.rs-fill{position: absolute;left: 0;top: 0;bottom: 0;border-radius: 999px;background: var(--rs-accent);transition: width 0.25s ease;}
.rs-tline{position: absolute;top: -4px;bottom: -4px;width: 2px;margin-left: -1px;background: var(--rs-red);}
.rs-tag{display: inline-block;font-size: 0.68rem;font-weight: 700;text-transform: uppercase;letter-spacing: 0.04em;background: var(--rs-amber-soft);color: var(--rs-amber);border-radius: 4px;padding: 0.05rem 0.3rem;vertical-align: 1px;}
.rs-smog{margin: 0;font-size: 0.8rem;color: var(--rs-muted);}
.rs-lower{border-top: 1px solid var(--rs-line);padding: 1.3rem;display: grid;grid-template-columns: minmax(0,2fr) minmax(0,1fr);gap: 1.3rem;}
.rs-stats{grid-column: 1 / -1;display: grid;grid-template-columns: repeat(6,minmax(0,1fr));gap: 0.6rem;margin: 0;}
.rs-stats div{background: var(--rs-paper);border-radius: var(--rs-radius-sm);padding: 0.6rem 0.75rem;}
.rs-stats dt{font-size: 0.74rem;font-weight: 600;color: var(--rs-muted);}
.rs-stats dd{margin: 0.15rem 0 0;font-size: 1.1rem;font-weight: 700;font-variant-numeric: tabular-nums;}
.rs-sub{font-size: 1.05rem;font-weight: 700;margin: 0 0 0.5rem;}
.rs-legend{display: flex;flex-wrap: wrap;gap: 0.4rem 1rem;list-style: none;padding: 0;margin: 0 0 0.6rem;font-size: 0.8rem;color: var(--rs-muted);}
.rs-legend span{display: inline-block;padding: 0 0.35rem;border-radius: 3px;margin-right: 0.3rem;}
.rs-key-2{background: var(--rs-amber-soft);}
.rs-key-3{background: var(--rs-red-soft);}
.rs-key-w{text-decoration: underline wavy var(--rs-accent);text-underline-offset: 3px;}
.rs-marked{max-height: 420px;overflow-y: auto;border: 1px solid var(--rs-line);border-radius: var(--rs-radius-sm);padding: 0.9rem 1rem;line-height: 1.75;font-size: 0.96rem;}
.rs-marked p{margin: 0 0 0.8rem;}
.rs-marked p:last-child{margin-bottom: 0;}
.rs-s{border-radius: 3px;}
.rs-s2{background: var(--rs-amber-soft);}
.rs-s3{background: var(--rs-red-soft);}
.rs-w{text-decoration: underline wavy var(--rs-accent);text-decoration-thickness: 1px;text-underline-offset: 3px;}
.rs-cut{font-size: 0.82rem;color: var(--rs-muted);font-style: italic;}
.rs-side{display: flex;flex-direction: column;gap: 0.9rem;}
.rs-side p{font-size: 0.84rem;color: var(--rs-muted);margin: -0.3rem 0 0;}
.rs-words{list-style: none;padding: 0;margin: 0;display: flex;flex-direction: column;gap: 0.3rem;}
.rs-words li{display: flex;justify-content: space-between;gap: 0.6rem;padding: 0.35rem 0.6rem;border-radius: var(--rs-radius-sm);background: var(--rs-paper);font-size: 0.9rem;}
.rs-words li span{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.rs-words li b{font-variant-numeric: tabular-nums;color: var(--rs-accent-dark);}
.rs-words .rs-none{background: none;padding: 0;color: var(--rs-muted);}
.rs-article{margin: 2.5rem auto 0;color: var(--rs-ink);line-height: 1.7;}
.rs-article h2{font-size: 1.45rem;font-weight: 700;margin: 2.4rem 0 0.7rem;}
.rs-article h2:first-child{margin-top: 0;}
.rs-article h3{font-size: 1.05rem;font-weight: 700;margin: 0 0 0.5rem;}
.rs-article p{margin: 0 0 0.9rem;}
.rs-article code{font-family: var(--rs-mono);font-size: 0.88em;background: var(--rs-paper);border-radius: 4px;padding: 0.05rem 0.3rem;color: var(--rs-accent-dark);}
.rs-article pre{background: #1d2130;color: #e7eaf4;border-radius: var(--rs-radius-sm);padding: 0.85rem 1rem;overflow-x: auto;font-size: 0.88rem;line-height: 1.55;margin: 0 0 1rem;}
.rs-article pre code{background: none;color: inherit;padding: 0;font-size: inherit;}
.rs-pair{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 1rem;margin: 1.2rem 0;}
.rs-card{border: 1px solid var(--rs-line);border-radius: var(--rs-radius);padding: 1rem 1.1rem;background: var(--rs-surface);display: flex;flex-direction: column;gap: 0.7rem;}
.rs-card-before{border-top: 4px solid var(--rs-red);}
.rs-card-after{border-top: 4px solid var(--rs-green);}
.rs-card blockquote{margin: 0;font-size: 0.9rem;line-height: 1.6;color: var(--rs-muted);border-left: 3px solid var(--rs-line);padding-left: 0.8rem;}
.rs-card dl{display: grid;grid-template-columns: minmax(0,1fr) auto;gap: 0.25rem 0.8rem;margin: 0;font-size: 0.9rem;}
.rs-card dt{font-weight: 400;color: var(--rs-muted);}
.rs-card dd{margin: 0;font-weight: 700;text-align: right;font-variant-numeric: tabular-nums;}
.rs-math{list-style: none;padding: 0;margin: 0 0 1rem;display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0.7rem;}
.rs-math li{background: var(--rs-accent-soft);border-radius: var(--rs-radius-sm);padding: 0.75rem 0.9rem;font-size: 0.93rem;}
.rs-math b{display: block;font-size: 1.3rem;color: var(--rs-accent-dark);}
.rs-scroll{overflow-x: auto;margin: 0 0 1rem;}
.rs-table{width: 100%;border-collapse: collapse;font-size: 0.92rem;min-width: 520px;}
.rs-table th,.rs-table td{text-align: left;padding: 0.55rem 0.7rem;border-bottom: 1px solid var(--rs-line);vertical-align: top;}
.rs-table thead th{background: var(--rs-paper);font-size: 0.82rem;text-transform: uppercase;letter-spacing: 0.04em;color: var(--rs-muted);}
.rs-table td.rs-n{text-align: right;white-space: nowrap;font-variant-numeric: tabular-nums;}
.rs-limits{list-style: none;padding: 0;margin: 0;display: flex;flex-direction: column;gap: 0.6rem;}
.rs-limits li{padding: 0.7rem 0.9rem;border-left: 3px solid var(--rs-amber);background: var(--rs-paper);border-radius: 0 var(--rs-radius-sm) var(--rs-radius-sm) 0;}
.rs-closing{display: grid;grid-template-columns: minmax(0,1fr);gap: 1.25rem;align-items: start;margin-top: 2.5rem;}
.rs-closing > section{margin: 0;min-width: 0;}
@media (min-width: 992px){.rs-closing{grid-template-columns: minmax(0,2fr) minmax(0,1fr);}}
@media (max-width: 991.98px){.rs-grid{grid-template-columns: minmax(0,1fr);}.rs-in{border-right: 0;border-bottom: 1px solid var(--rs-line);}.rs-lower{grid-template-columns: minmax(0,1fr);}.rs-stats{grid-template-columns: repeat(3,minmax(0,1fr));}}
@media (max-width: 575.98px){.rs-in,.rs-out,.rs-lower{padding: 1rem;}.rs-byline{padding: 0.6rem 1rem;}.rs-text{min-height: 220px;}.rs-grade{font-size: 2.6rem;}.rs-stats{grid-template-columns: repeat(2,minmax(0,1fr));}.rs-pair,.rs-math{grid-template-columns: minmax(0,1fr);}.rs-article h2{font-size: 1.28rem;}}