.rt-page { max-width: 860px; margin: 0 auto; padding: 1rem 1.5rem 3rem; } .rt-toolbar { display: flex; align-items: center; gap: 0.5rem; margin-bottom: 1rem; .spacer { flex: 1; } button { display: inline-flex; align-items: center; gap: 0.35rem; padding: 0.4rem 0.7rem; border-radius: 6px; border: 1px solid rgba(255, 255, 255, 0.12); background: rgba(255, 255, 255, 0.04); color: inherit; cursor: pointer; font-size: 0.85rem; &:hover { background: rgba(255, 255, 255, 0.09); } } } .rt-header { margin-bottom: 1.25rem; h1 { display: flex; align-items: center; gap: 0.5rem; margin: 0 0 0.35rem; font-size: 1.5rem; } .rt-desc { margin: 0 0 0.4rem; color: var(--color-text-muted, #9aa0aa); } .rt-formula code { background: rgba(255, 255, 255, 0.08); padding: 0.1rem 0.4rem; border-radius: 4px; } } .rt-roll { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; padding: 1rem; border-radius: 10px; background: rgba(102, 126, 234, 0.08); border: 1px solid rgba(102, 126, 234, 0.25); margin-bottom: 1rem; .btn-roll { display: inline-flex; align-items: center; gap: 0.5rem; padding: 0.6rem 1.1rem; border: none; border-radius: 8px; background: #667eea; color: #fff; font-weight: 600; cursor: pointer; &:hover { background: #5568d3; } } .rt-result { display: flex; align-items: center; gap: 0.5rem; flex-wrap: wrap; font-size: 1.05rem; } .rt-total { font-weight: 700; font-size: 1.3rem; color: #8ea2ff; } .rt-rolls { color: var(--color-text-muted, #9aa0aa); font-size: 0.85rem; } .rt-matched { font-weight: 600; } .rt-nomatch { color: #e0a458; font-style: italic; } } .rt-detail { white-space: pre-wrap; padding: 0.85rem 1rem; margin-bottom: 1.5rem; border-radius: 8px; background: rgba(255, 255, 255, 0.04); border-left: 3px solid #667eea; } .rt-entries { .rt-empty { color: var(--color-text-muted, #9aa0aa); font-style: italic; padding: 1rem 0; } table { width: 100%; border-collapse: collapse; } th, td { text-align: left; padding: 0.5rem 0.6rem; border-bottom: 1px solid rgba(255, 255, 255, 0.07); vertical-align: top; } th { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-text-muted, #9aa0aa); } .col-range { width: 84px; font-variant-numeric: tabular-nums; white-space: nowrap; } .entry-label { font-weight: 500; } .entry-detail { margin-top: 0.2rem; font-size: 0.85rem; color: var(--color-text-muted, #9aa0aa); white-space: pre-wrap; } tr.matched { background: rgba(102, 126, 234, 0.16); td { border-bottom-color: rgba(102, 126, 234, 0.3); } } }