:root{--rcg-paper: #fcf7f0;--rcg-panel: #ffffff;--rcg-line: #eadfce;--rcg-ink: #2b2118;--rcg-muted: #6f6253;--rcg-ginger: #c2541b;--rcg-ginger-dark: #9a3f12;--rcg-cream: #f6ecdd;--rcg-radius: 18px;--primary: #c2541b;--primary-dark: #9a3f12;--border: #eadfce;--surface: #ffffff;--shadow-soft: 0 10px 26px rgba(43, 33, 24, 0.07);--surface-muted: #f8f1e7;--text-main: #2b2118;--text-muted: #6f6253;}
.rcg-sprite{position: absolute;width: 0;height: 0;overflow: hidden;}
[data-coat]{--tone: #c2541b;--tone-soft: #fbe6d8;--tone-ink: #9a3f12;}
[data-coat="long"]{--tone: #7b5ea7;--tone-soft: #efe8f8;--tone-ink: #57407a;}
[data-coat="rex"]{--tone: #0f7a76;--tone-soft: #dcf2ef;--tone-ink: #0b5754;}
.rcg-desk{display: grid;grid-template-columns: minmax(0, 340px) minmax(0, 1fr);gap: 22px;background: var(--rcg-paper);border: 1px solid var(--rcg-line);border-radius: 26px;padding: 22px;margin: 8px 0 56px;color: var(--rcg-ink);box-shadow: 0 20px 44px rgba(43, 33, 24, 0.06);}
.rcg-panel{background: var(--rcg-panel);border: 1px solid var(--rcg-line);border-radius: var(--rcg-radius);padding: 18px;align-self: start;position: sticky;top: 16px;}
.rcg-byline{display: flex;flex-direction: column;gap: 2px;font-size: 12px;color: var(--rcg-muted);padding-bottom: 12px;margin-bottom: 14px;border-bottom: 1px dashed var(--rcg-line);}
.rcg-byline .author-link{color: var(--rcg-ginger-dark);font-weight: 600;text-decoration: none;}
.rcg-byline .author-link:hover{text-decoration: underline;}
.rcg-field{border: 0;margin: 0 0 16px;padding: 0;min-width: 0;}
.rcg-field legend{font-size: 12px;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase;color: var(--rcg-muted);margin-bottom: 8px;float: none;width: auto;padding: 0;}
.rcg-chips{display: flex;flex-wrap: wrap;gap: 8px;}
.rcg-chip input,.rcg-count input{position: absolute;opacity: 0;pointer-events: none;}
.rcg-chip span{display: inline-flex;align-items: center;gap: 6px;padding: 8px 12px;border: 1px solid var(--rcg-line);border-radius: 999px;background: var(--rcg-paper);font-size: 14px;font-weight: 600;cursor: pointer;transition: background 0.15s, border-color 0.15s, color 0.15s;}
.rcg-chip span small{font-weight: 500;color: var(--rcg-muted);font-size: 11px;}
.rcg-chip svg{width: 16px;height: 16px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linecap: round;}
.rcg-chip:hover span{border-color: var(--rcg-ginger);}
.rcg-chip input:checked + span{background: var(--rcg-ink);border-color: var(--rcg-ink);color: #fff;}
.rcg-chip input:checked + span small{color: #e9dccb;}
.rcg-chip input:focus-visible + span,.rcg-count input:focus-visible + span{outline: 3px solid var(--rcg-ginger);outline-offset: 2px;}
.rcg-go{display: flex;flex-direction: column;gap: 10px;margin-top: 4px;}
.rcg-count{display: grid;grid-template-columns: 1fr 1fr;background: var(--rcg-cream);border-radius: 12px;padding: 4px;}
.rcg-count label{margin: 0;}
.rcg-count span{display: block;text-align: center;padding: 8px 6px;border-radius: 9px;font-size: 13px;font-weight: 600;color: var(--rcg-muted);cursor: pointer;}
.rcg-count input:checked + span{background: #fff;color: var(--rcg-ink);box-shadow: 0 2px 6px rgba(43, 33, 24, 0.12);}
.rcg-draw{display: inline-flex;align-items: center;justify-content: center;gap: 10px;width: 100%;padding: 13px 18px;border: 0;border-radius: 14px;background: var(--rcg-ginger);color: #fff;font-size: 16px;font-weight: 700;cursor: pointer;transition: background 0.15s, transform 0.1s;}
.rcg-draw svg{width: 22px;height: 22px;fill: currentColor;}
.rcg-draw:hover{background: var(--rcg-ginger-dark);}
.rcg-draw:active{transform: translateY(1px);}
.rcg-draw:focus-visible{outline: 3px solid var(--rcg-ink);outline-offset: 2px;}
.rcg-draw:disabled{opacity: 0.7;cursor: wait;}
.rcg-draw.is-busy svg{animation: rcg-hop 0.5s ease-in-out infinite alternate;}
.rcg-status{font-size: 13px;color: var(--rcg-muted);margin: 12px 0 0;min-height: 20px;}
.rcg-status.is-error{color: #b42318;font-weight: 600;}
.rcg-stage{min-width: 0;display: flex;flex-direction: column;gap: 14px;}
.rcg-cards{display: grid;grid-template-columns: minmax(0, 1fr);gap: 16px;}
.rcg-cards[data-count="three"]{grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));}
.rcg-card{background: var(--rcg-panel);border: 1px solid var(--rcg-line);border-top: 6px solid var(--tone);border-radius: var(--rcg-radius);padding: 20px 22px;display: flex;flex-direction: column;gap: 14px;}
.rcg-card.is-new{animation: rcg-in 0.35s ease-out;}
.rcg-card-head{display: flex;flex-direction: column;gap: 4px;}
.rcg-tag{display: inline-flex;align-items: center;gap: 6px;align-self: flex-start;padding: 4px 10px;border-radius: 999px;background: var(--tone-soft);color: var(--tone-ink);font-size: 12px;font-weight: 700;}
.rcg-tag svg{width: 14px;height: 14px;fill: none;stroke: currentColor;stroke-width: 2.2;stroke-linecap: round;}
.rcg-name{font-size: 30px;font-weight: 800;line-height: 1.1;margin: 6px 0 0;color: var(--rcg-ink);letter-spacing: -0.01em;}
.rcg-cards[data-count="three"] .rcg-name{font-size: 22px;}
.rcg-origin{margin: 0;color: var(--rcg-muted);font-size: 14px;}
.rcg-hallmark{margin: 0;font-size: 16px;line-height: 1.55;color: var(--rcg-ink);}
.rcg-facts{display: grid;grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));gap: 10px;margin: 0;}
.rcg-facts div{background: var(--rcg-paper);border-radius: 12px;padding: 10px 12px;}
.rcg-facts dt{font-size: 11px;font-weight: 700;letter-spacing: 0.06em;text-transform: uppercase;color: var(--rcg-muted);}
.rcg-facts dd{margin: 2px 0 0;font-size: 15px;font-weight: 700;color: var(--rcg-ink);}
.rcg-meters{list-style: none;margin: 0;padding: 0;display: flex;flex-direction: column;gap: 8px;}
.rcg-meters li{display: grid;grid-template-columns: 76px auto 1fr;align-items: center;gap: 10px;font-size: 14px;}
.rcg-m-label{font-weight: 700;}
.rcg-m-read{color: var(--rcg-muted);font-size: 13px;}
.rcg-dots{display: inline-flex;gap: 4px;}
.rcg-dots i{width: 12px;height: 12px;border-radius: 50%;background: var(--rcg-cream);border: 1px solid var(--rcg-line);}
.rcg-dots i.on{background: var(--tone);border-color: var(--tone);}
.rcg-note{border-radius: 12px;padding: 12px 14px;}
.rcg-note h3{font-size: 12px;font-weight: 800;letter-spacing: 0.08em;text-transform: uppercase;margin: 0 0 4px;display: flex;align-items: center;gap: 6px;}
.rcg-note p{margin: 0;font-size: 14px;line-height: 1.55;}
.rcg-fit{background: var(--tone-soft);color: var(--tone-ink);}
.rcg-fit p{color: var(--rcg-ink);}
.rcg-warn{background: #fff6e5;border: 1px solid #f3d9a4;}
.rcg-warn h3{color: #8a5a00;}
.rcg-warn svg{width: 15px;height: 15px;fill: none;stroke: currentColor;stroke-width: 2;stroke-linejoin: round;stroke-linecap: round;}
.rcg-tools{display: flex;flex-wrap: wrap;align-items: center;gap: 12px 18px;}
.rcg-ghost{display: inline-flex;align-items: center;gap: 8px;padding: 9px 14px;border: 1px solid var(--rcg-line);border-radius: 12px;background: var(--rcg-panel);color: var(--rcg-ink);font-weight: 600;font-size: 14px;cursor: pointer;}
.rcg-ghost svg{width: 16px;height: 16px;fill: none;stroke: currentColor;stroke-width: 2;}
.rcg-ghost:hover{border-color: var(--rcg-ginger);}
.rcg-ghost.is-done{background: var(--rcg-ink);color: #fff;border-color: var(--rcg-ink);}
.rcg-trail{display: flex;flex-wrap: wrap;align-items: center;gap: 8px;min-width: 0;flex: 1;}
.rcg-trail-label{font-size: 12px;font-weight: 700;letter-spacing: 0.06em;text-transform: uppercase;color: var(--rcg-muted);}
.rcg-trail-empty{font-size: 13px;color: var(--rcg-muted);}
.rcg-trail-list{display: flex;flex-wrap: wrap;gap: 6px;list-style: none;margin: 0;padding: 0;}
.rcg-past{display: inline-flex;align-items: center;gap: 6px;padding: 5px 10px;border: 1px solid var(--rcg-line);border-radius: 999px;background: var(--rcg-panel);font-size: 13px;color: var(--rcg-ink);cursor: pointer;}
.rcg-past.is-current{border-color: var(--rcg-ink);font-weight: 700;}
.rcg-past-dot{width: 8px;height: 8px;border-radius: 50%;background: var(--tone);}
.rcg-read,.rcg-limits{margin: 0 auto 48px;color: var(--rcg-ink);}
.rcg-read h2,.rcg-limits h2{font-size: 26px;font-weight: 800;margin-bottom: 12px;letter-spacing: -0.01em;}
.rcg-read p{font-size: 16px;line-height: 1.7;color: var(--rcg-ink);}
.rcg-anatomy{display: grid;grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 12px;margin: 18px 0 0;}
.rcg-anatomy div{border-left: 4px solid var(--rcg-ginger);background: var(--rcg-paper);border-radius: 0 12px 12px 0;padding: 12px 16px;}
.rcg-anatomy dt{font-weight: 800;font-size: 15px;margin-bottom: 4px;}
.rcg-anatomy dd{margin: 0;font-size: 15px;line-height: 1.6;color: var(--rcg-muted);}
.rcg-table-wrap{overflow-x: auto;border: 1px solid var(--rcg-line);border-radius: 14px;margin-top: 14px;}
.rcg-table{width: 100%;border-collapse: collapse;font-size: 14px;min-width: 560px;}
.rcg-table th,.rcg-table td{padding: 10px 14px;text-align: left;vertical-align: top;border-bottom: 1px solid var(--rcg-line);}
.rcg-table thead th{background: var(--rcg-cream);font-size: 12px;font-weight: 800;letter-spacing: 0.05em;text-transform: uppercase;color: var(--rcg-muted);}
.rcg-table tbody tr:last-child th,.rcg-table tbody tr:last-child td{border-bottom: 0;}
.rcg-table tbody th{font-weight: 700;}
.rcg-table-all tbody tr:nth-child(even){background: #fffcf8;}
.rcg-flags{display: grid;grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));gap: 12px;margin-top: 16px;}
.rcg-flag{background: #fff6e5;border: 1px solid #f3d9a4;border-radius: 14px;padding: 14px 16px;}
.rcg-flag h3{font-size: 17px;font-weight: 800;margin: 0 0 6px;color: #6b4500;}
.rcg-flag p{font-size: 15px;line-height: 1.6;margin: 0;}
.rcg-limits{background: var(--rcg-paper);border: 1px solid var(--rcg-line);border-radius: 18px;padding: 22px 26px;}
.rcg-limits ul{margin: 0;padding-left: 20px;}
.rcg-limits li{font-size: 15px;line-height: 1.65;margin-bottom: 8px;}
@keyframes rcg-in{from{opacity: 0;transform: translateY(8px);}to{opacity: 1;transform: none;}}
@keyframes rcg-hop{from{transform: translateY(0);}to{transform: translateY(-3px);}}
@media (max-width: 991px){.rcg-desk{grid-template-columns: minmax(0, 1fr);padding: 16px;}.rcg-panel{position: static;}}
@media (max-width: 575px){.rcg-desk{padding: 12px;border-radius: 20px;}.rcg-card{padding: 16px;}.rcg-name{font-size: 25px;}.rcg-meters li{grid-template-columns: 70px auto;}.rcg-m-read{grid-column: 1 / -1;margin-top: -4px;}.rcg-read h2,.rcg-limits h2{font-size: 22px;}.rcg-limits{padding: 18px;}}
@media (prefers-reduced-motion: reduce){.rcg-card.is-new,.rcg-draw.is-busy svg{animation: none;}}