
.homeRollerCardHead { display: flex; align-items: baseline; gap: 8px; font-size: 13px; }

.homeRollerCardHead strong { font-weight: 600; letter-spacing: -0.01em; }

.homeRollerCardMeta { margin-left: auto; font-family: 'JetBrains Mono', monospace; font-size: 10px; letter-spacing: 0.02em; color: #787e9d; white-space: nowrap; }

.homeRollerAvatar { flex: none; align-self: center; display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; border-radius: 999px; background: #444ac2; color: #ffffff; font-size: 11px; font-weight: 600; }

.homeRollerCard p { margin: 0; font-size: 12.5px; line-height: 1.55; color: #2f3449; }

.homeRollerChipRow { display: flex; flex-wrap: wrap; gap: 6px; }

.homeRollerChip { display: inline-flex; align-items: center; gap: 4px; padding: 4px 9px; border-radius: 999px; border: 1px solid rgba(29, 32, 44, 0.14); font-size: 11px; line-height: 1.2; color: #2f3449; }

.homeRollerChip.ok { color: #0e8a63; border-color: rgba(21, 170, 122, 0.4); }

.homeRollerChip.warn { color: #b23b1f; border-color: rgba(217, 84, 45, 0.4); }

.homeRollerSteps, .homeRollerRules { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }

.homeRollerSteps li, .homeRollerRules li { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: #1d202c; }

.homeRollerSteps li svg { flex: none; color: #15aa7a; }

.homeRollerSteps li span { margin-left: auto; font-family: 'JetBrains Mono', monospace; font-size: 10px; color: #787e9d; white-space: nowrap; }

.homeRollerStats { margin: 0; display: grid; gap: 9px; }

.homeRollerStats div { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; font-size: 12.5px; }

.homeRollerStats dt { color: #2f3449; }

.homeRollerStats dd { margin: 0; font-family: 'JetBrains Mono', monospace; font-weight: 600; }

.homeRollerSwitch { flex: none; position: relative; width: 26px; height: 15px; border-radius: 999px; background: #d5d9ea; transition: background-color 160ms ease; }

.homeRollerSwitch::after { content: ""; position: absolute; top: 2px; left: 2px; width: 11px; height: 11px; border-radius: 999px; background: #ffffff; transition: transform 160ms ease; }

.homeRollerSwitch.on { background: #15aa7a; }

.homeRollerSwitch.on::after { transform: translateX(11px); }

.homeRollerSlackHead { display: flex; align-items: baseline; gap: 8px; font-size: 13px; padding-bottom: 8px; border-bottom: 1px solid rgba(29, 32, 44, 0.1); }

.homeRollerSlackHead strong { font-weight: 600; letter-spacing: -0.01em; }

.homeRollerSlackMark { flex: none; align-self: center; }

.homeRollerSlackMsg { display: flex; gap: 8px; align-items: flex-start; }

.homeRollerSlackMsg p { margin: 0; font-size: 12.5px; line-height: 1.55; color: #2f3449; }

.homeRollerSevWord { color: #b23b1f; font-weight: 600; }

.homeRollerTermBar { display: flex; align-items: center; gap: 10px; padding: 9px 14px; background: #1b1c26; border-bottom: 1px solid rgba(248, 249, 251, 0.08); }

.homeRollerTermDots { display: inline-flex; gap: 6px; }

.homeRollerTermDots i { width: 9px; height: 9px; border-radius: 999px; background: rgba(248, 249, 251, 0.22); display: block; }

.homeRollerTermTitle { font-family: 'JetBrains Mono', monospace; font-size: 11px; color: #9aa0c2; letter-spacing: 0.02em; }

.homeRollerTermBody { padding: 14px 16px; font-family: 'JetBrains Mono', monospace; font-size: 11.5px; line-height: 1.75; color: #c7cadd; display: grid; gap: 2px; }

.homeRollerTermPrompt { color: #4fd1a5; margin-right: 8px; }

.homeRollerTermTicket { margin-left: 6px; padding: 1px 6px; border-radius: 5px; background: rgba(120, 130, 220, 0.22); color: #b7bdf0; font-size: 10.5px; }

.homeRollerTermDim { color: #6b708c; }

.homeRollerTermMark { color: #4fd1a5; margin-right: 8px; }

.homeRollerTermDetail { color: #8c91ac; padding-left: 6px; }

.homeRollerTermNote { color: #6b708c; font-style: italic; margin-left: 6px; }

.homeRollerTermResult { margin-top: 6px; padding-top: 8px; border-top: 1px solid rgba(248, 249, 251, 0.08); color: #f2f3f8; }

  .homeRoller { grid-template-columns: 1fr; gap: 26px; }