:root{--rcb-primary: #7c3aed;--rcb-primary-dark: #5b21b6;--rcb-accent: #f59e0b;--rcb-surface: #ffffff;--rcb-surface-muted: #f8f7fd;--rcb-border: #e6e3f0;--rcb-border-strong: #cec8e4;--rcb-text-main: #1c1930;--rcb-text-muted: #6b7280;--rcb-success: #10b981;--rcb-shadow: 0 18px 40px rgba(28, 25, 48, 0.09);--primary: var(--rcb-primary);--primary-dark: var(--rcb-primary-dark);--border: var(--rcb-border);--surface: var(--rcb-surface);--surface-muted: var(--rcb-surface-muted);--shadow-soft: var(--rcb-shadow);--text-main: var(--rcb-text-main);--text-muted: var(--rcb-text-muted);}
.rcb-stage{background: var(--rcb-surface);border: 1px solid var(--rcb-border);border-radius: 1rem;box-shadow: var(--rcb-shadow);overflow: hidden;margin-bottom: 2.5rem;}
.rcb-byline{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 0.5rem 1rem;padding: 0.75rem 1.25rem;font-size: 0.85rem;color: var(--rcb-text-muted);background: var(--rcb-surface-muted);border-bottom: 1px solid var(--rcb-border);}
.rcb-byline-author{font-weight: 600;color: var(--rcb-text-main);}
.rcb-byline .author-link{color: var(--rcb-primary);text-decoration: none;font-weight: 600;}
.rcb-byline .author-link:hover{text-decoration: underline;}
.rcb-filters{padding: 1.25rem 1.25rem 0;}
.rcb-filters-label{display: block;font-size: 0.75rem;font-weight: 700;letter-spacing: 0.07em;text-transform: uppercase;color: var(--rcb-text-muted);margin: 0 0 0.6rem;}
.rcb-chip-rail{display: flex;flex-wrap: wrap;gap: 0.5rem;padding: 0;margin: 0;list-style: none;}
.rcb-chip{display: inline-flex;align-items: center;gap: 0.4rem;padding: 0.5rem 0.95rem;font-size: 0.9rem;font-weight: 600;color: var(--rcb-text-main);background: var(--rcb-surface);border: 1px solid var(--rcb-border-strong);border-radius: 9999px;cursor: pointer;transition: color 0.18s, border-color 0.18s, background 0.18s;}
.rcb-chip:hover{border-color: var(--rcb-primary);color: var(--rcb-primary);}
.rcb-chip:focus-visible{outline: 2px solid var(--rcb-primary);outline-offset: 2px;}
.rcb-chip[aria-pressed="true"]{background: linear-gradient(135deg, var(--rcb-primary) 0%, var(--rcb-primary-dark) 100%);border-color: transparent;color: #ffffff;}
.rcb-chip-count{font-size: 0.75rem;opacity: 0.75;font-weight: 600;}
.rcb-spotlight{padding: 1.25rem;min-height: 240px;display: flex;flex-direction: column;}
.rcb-empty[hidden],.rcb-cards[hidden]{display: none;}
.rcb-empty{display: flex;flex: 1;align-items: center;justify-content: center;text-align: center;padding: 2.5rem 1.5rem;background: var(--rcb-surface-muted);border: 1px dashed var(--rcb-border-strong);border-radius: 0.9rem;}
.rcb-empty-icon{display: block;margin: 0 auto 0.9rem;color: var(--rcb-primary);opacity: 0.55;}
.rcb-empty-title{font-size: 1.1rem;font-weight: 700;color: var(--rcb-text-main);margin: 0 0 0.3rem;}
.rcb-empty-desc{font-size: 0.92rem;color: var(--rcb-text-muted);margin: 0;max-width: 34ch;}
.rcb-cards{display: grid;gap: 1rem;}
.rcb-cards.is-multi{grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));}
.rcb-card{position: relative;padding: 1.4rem 1.25rem 1.25rem;background: linear-gradient(180deg, #ffffff 0%, var(--rcb-surface-muted) 100%);border: 1px solid var(--rcb-border);border-radius: 0.9rem;overflow: hidden;}
.rcb-card::before{content: '';position: absolute;top: 0;left: 0;right: 0;height: 4px;background: linear-gradient(90deg, var(--rcb-primary) 0%, var(--rcb-accent) 100%);}
.rcb-card-field{font-size: 0.72rem;font-weight: 700;letter-spacing: 0.08em;text-transform: uppercase;color: var(--rcb-primary);}
.rcb-card-name{font-size: clamp(1.35rem, 3vw, 1.85rem);font-weight: 800;line-height: 1.15;color: var(--rcb-text-main);margin: 0.3rem 0 0.75rem;}
.rcb-badges{display: flex;flex-wrap: wrap;gap: 0.4rem;margin-bottom: 1rem;}
.rcb-badge{padding: 0.3rem 0.7rem;font-size: 0.75rem;font-weight: 600;border-radius: 9999px;}
.rcb-badge-role{background: var(--rcb-primary);color: #ffffff;}
.rcb-badge-origin{background: rgba(124, 58, 237, 0.1);color: var(--rcb-primary-dark);}
.rcb-facts{display: grid;gap: 0.7rem;margin: 0;}
.rcb-fact{display: flex;flex-direction: column;gap: 0.1rem;}
.rcb-fact-label{font-size: 0.72rem;font-weight: 700;letter-spacing: 0.05em;text-transform: uppercase;color: var(--rcb-text-muted);}
.rcb-fact-value{font-size: 0.98rem;font-weight: 600;color: var(--rcb-text-main);line-height: 1.4;}
.rcb-console{display: flex;flex-wrap: wrap;align-items: flex-end;gap: 1.25rem;padding: 1.25rem;border-top: 1px solid var(--rcb-border);background: var(--rcb-surface-muted);}
.rcb-console-group{display: flex;flex-direction: column;gap: 0.45rem;}
.rcb-console-label{font-size: 0.75rem;font-weight: 700;letter-spacing: 0.07em;text-transform: uppercase;color: var(--rcb-text-muted);}
.rcb-seg{display: inline-flex;padding: 0.25rem;background: var(--rcb-surface);border: 1px solid var(--rcb-border-strong);border-radius: 0.6rem;gap: 0.25rem;}
.rcb-seg-btn{min-width: 3rem;padding: 0.45rem 0.75rem;font-size: 0.9rem;font-weight: 700;color: var(--rcb-text-muted);background: transparent;border: none;border-radius: 0.4rem;cursor: pointer;transition: color 0.18s, background 0.18s;}
.rcb-seg-btn:hover{color: var(--rcb-primary);}
.rcb-seg-btn:focus-visible{outline: 2px solid var(--rcb-primary);outline-offset: 2px;}
.rcb-seg-btn[aria-pressed="true"]{background: var(--rcb-primary);color: #ffffff;}
.rcb-switch{display: inline-flex;align-items: center;gap: 0.6rem;font-size: 0.92rem;font-weight: 600;color: var(--rcb-text-main);cursor: pointer;padding-bottom: 0.55rem;}
.rcb-switch input{width: 1.1rem;height: 1.1rem;accent-color: var(--rcb-primary);cursor: pointer;}
.rcb-switch-hint{display: block;font-size: 0.8rem;font-weight: 500;color: var(--rcb-text-muted);}
.rcb-actions{display: flex;flex-wrap: wrap;gap: 0.6rem;padding: 1.25rem;border-top: 1px solid var(--rcb-border);}
.rcb-btn{display: inline-flex;align-items: center;justify-content: center;gap: 0.5rem;padding: 0.75rem 1.4rem;font-size: 1rem;font-weight: 700;border: none;border-radius: 0.55rem;cursor: pointer;transition: transform 0.15s, box-shadow 0.15s, color 0.18s, border-color 0.18s;}
.rcb-btn:focus-visible{outline: 2px solid var(--rcb-primary);outline-offset: 2px;}
.rcb-btn-primary{min-width: 9.5rem;background: linear-gradient(135deg, var(--rcb-primary) 0%, var(--rcb-primary-dark) 100%);color: #ffffff;}
.rcb-btn-primary:hover{transform: translateY(-1px);box-shadow: 0 10px 22px rgba(124, 58, 237, 0.32);}
.rcb-btn-primary:active{transform: translateY(0);}
.rcb-btn-primary[disabled]{cursor: wait;opacity: 0.85;}
.rcb-btn-primary.is-drawing .rcb-btn-icon{animation: rcb-spin 0.7s linear infinite;}
@keyframes rcb-spin{to{transform: rotate(360deg);}}
.rcb-btn-icon{display: inline-flex;}
.rcb-btn-ghost{background: transparent;color: var(--rcb-text-muted);border: 1px solid var(--rcb-border-strong);font-weight: 600;}
.rcb-btn-ghost:hover{color: var(--rcb-primary);border-color: var(--rcb-primary);}
.rcb-btn-mini{display: inline-flex;align-items: center;gap: 0.45rem;padding: 0.55rem 0.9rem;font-size: 0.85rem;font-weight: 600;color: var(--rcb-text-muted);background: var(--rcb-surface);border: 1px solid var(--rcb-border-strong);border-radius: 0.5rem;cursor: pointer;transition: color 0.18s, border-color 0.18s, background 0.18s;}
.rcb-btn-mini:hover{color: var(--rcb-primary);border-color: var(--rcb-primary);}
.rcb-btn-mini:focus-visible{outline: 2px solid var(--rcb-primary);outline-offset: 2px;}
.rcb-btn-mini.is-done{background: var(--rcb-success);border-color: var(--rcb-success);color: #ffffff;}
.rcb-actions-spacer{flex: 1 1 auto;}
.rcb-status{display: flex;flex-wrap: wrap;align-items: center;justify-content: space-between;gap: 0.5rem 1rem;padding: 0.7rem 1.25rem;font-size: 0.85rem;color: var(--rcb-text-muted);border-top: 1px solid var(--rcb-border);background: var(--rcb-surface-muted);}
.rcb-status-pool strong{color: var(--rcb-text-main);font-weight: 700;}
.rcb-status-key{display: none;}
@media (min-width: 768px){.rcb-status-key{display: inline;}}
.rcb-kbd{display: inline-block;padding: 0.1rem 0.4rem;font-family: inherit;font-size: 0.78rem;font-weight: 700;color: var(--rcb-text-main);background: var(--rcb-surface);border: 1px solid var(--rcb-border-strong);border-bottom-width: 2px;border-radius: 0.3rem;}
.rcb-recent{padding: 1rem 1.25rem;border-top: 1px solid var(--rcb-border);}
.rcb-recent[hidden]{display: none;}
.rcb-recent-label{font-size: 0.75rem;font-weight: 700;letter-spacing: 0.07em;text-transform: uppercase;color: var(--rcb-text-muted);margin: 0 0 0.6rem;}
.rcb-recent-list{display: flex;flex-wrap: wrap;gap: 0.4rem;padding: 0;margin: 0;list-style: none;}
.rcb-recent-item{padding: 0.35rem 0.75rem;font-size: 0.84rem;font-weight: 600;color: var(--rcb-text-muted);background: var(--rcb-surface-muted);border: 1px solid var(--rcb-border);border-radius: 9999px;}
.rcb-share{padding: 1rem 1.25rem;border-top: 1px solid var(--rcb-border);background: var(--rcb-surface-muted);}
.rcb-share[hidden]{display: none;}
.rcb-share-title{font-size: 0.85rem;font-weight: 700;color: var(--rcb-text-main);margin: 0 0 0.7rem;}
.rcb-share-grid{display: grid;grid-template-columns: repeat(auto-fill, minmax(104px, 1fr));gap: 0.5rem;}
.rcb-share-btn{display: inline-flex;align-items: center;justify-content: center;padding: 0.55rem 0.75rem;font-size: 0.82rem;font-weight: 700;color: #ffffff;text-decoration: none;border-radius: 0.4rem;transition: transform 0.15s, opacity 0.15s;}
.rcb-share-btn:hover{transform: translateY(-1px);opacity: 0.94;color: #ffffff;}
.rcb-share-x{background: #0f172a;}
.rcb-share-fb{background: #1877f2;}
.rcb-share-in{background: #0a66c2;}
.rcb-share-rd{background: #ff4500;}
.rcb-share-tg{background: #229ed9;}
.rcb-share-wa{background: #25d366;color: #0b3d1f;}
.rcb-share-wa:hover{color: #0b3d1f;}
.rcb-content{margin: 0 0 2.5rem;}
.rcb-content h2{font-size: clamp(1.3rem, 2.6vw, 1.6rem);font-weight: 800;color: var(--rcb-text-main);line-height: 1.25;margin: 2.25rem 0 0.85rem;}
.rcb-content h2:first-child{margin-top: 0;}
.rcb-content p{font-size: 1.02rem;line-height: 1.7;color: var(--rcb-text-main);margin: 0 0 1.05rem;}
.rcb-content a{color: var(--rcb-primary);font-weight: 600;text-decoration: none;}
.rcb-content a:hover{text-decoration: underline;}
.rcb-lede{font-size: 1.12rem;line-height: 1.65;color: var(--rcb-text-muted);}
.rcb-beat{font-size: 1.05rem;font-weight: 600;color: var(--rcb-text-main);border-left: 3px solid var(--rcb-accent);padding-left: 0.9rem;margin: 0 0 1.05rem;}
.rcb-aside{display: flex;gap: 0.9rem;padding: 1.1rem 1.25rem;margin: 1.5rem 0;background: rgba(245, 158, 11, 0.08);border: 1px solid rgba(245, 158, 11, 0.35);border-radius: 0.75rem;}
.rcb-aside-icon{flex-shrink: 0;color: #b45309;}
.rcb-aside-body h3{font-size: 1rem;font-weight: 700;color: #78350f;margin: 0 0 0.35rem;}
.rcb-aside-body p{font-size: 0.96rem;line-height: 1.6;color: #7c4a13;margin: 0;}
.rcb-fig{margin: 1.75rem 0;padding: 1.35rem;background: var(--rcb-surface);border: 1px solid var(--rcb-border);border-radius: 0.9rem;}
.rcb-fig-cap{font-size: 0.98rem;font-weight: 700;color: var(--rcb-text-main);margin-bottom: 1rem;}
.rcb-fig-bars{display: grid;gap: 0.55rem;padding: 0;margin: 0 0 1.1rem;list-style: none;}
.rcb-fig-row{display: grid;grid-template-columns: 6.5rem 1fr 2.5rem;align-items: center;gap: 0.6rem;font-size: 0.88rem;}
.rcb-fig-name{font-weight: 600;color: var(--rcb-text-main);}
.rcb-fig-track{height: 0.7rem;background: var(--rcb-surface-muted);border: 1px solid var(--rcb-border);border-radius: 9999px;overflow: hidden;}
.rcb-fig-bar{display: block;height: 100%;background: linear-gradient(90deg, var(--rcb-primary) 0%, var(--rcb-accent) 100%);border-radius: 9999px;}
.rcb-fig-num{font-variant-numeric: tabular-nums;font-weight: 700;color: var(--rcb-text-muted);text-align: right;}
.rcb-fig-flow{display: flex;flex-wrap: wrap;align-items: center;gap: 0.5rem;padding-top: 1rem;border-top: 1px dashed var(--rcb-border-strong);}
.rcb-fig-step{padding: 0.4rem 0.75rem;font-size: 0.84rem;font-weight: 600;color: var(--rcb-text-main);background: var(--rcb-surface-muted);border: 1px solid var(--rcb-border);border-radius: 0.45rem;}
.rcb-fig-arrow{color: var(--rcb-text-muted);font-size: 1.05rem;}
.rcb-fig-note{font-size: 0.85rem;line-height: 1.55;color: var(--rcb-text-muted);margin: 0.9rem 0 0;}
.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0, 0, 0, 0);white-space: nowrap;border: 0;}
.rcb-fade{animation: rcb-fade 0.35s ease-out;}
@keyframes rcb-fade{from{opacity: 0;transform: translateY(6px);}to{opacity: 1;transform: none;}}
@media (max-width: 575px){.rcb-actions{flex-direction: column;align-items: stretch;}.rcb-actions-spacer{display: none;}.rcb-btn,.rcb-btn-mini{width: 100%;}.rcb-console{flex-direction: column;align-items: stretch;gap: 1rem;}.rcb-fig-row{grid-template-columns: 5.5rem 1fr 2rem;font-size: 0.82rem;}}
@media (prefers-reduced-motion: reduce){.rcb-btn,.rcb-btn-mini,.rcb-chip,.rcb-share-btn,.rcb-seg-btn{transition: none;}.rcb-btn-primary.is-drawing .rcb-btn-icon{animation: none;}.rcb-fade{animation: none;}}
