.home-tool-site { --tool-accent: #287d9a; --tool-tint: #edf6fa; }
.home-tool-site[data-tool="living"] { --tool-accent: #ae526c; --tool-tint: #fcf0f3; }
.home-tool-site[data-tool="entry"] { --tool-accent: #28796b; --tool-tint: #edf7f2; }
.home-tool-site[data-tool="mirror"] { --tool-accent: #8f651c; --tool-tint: #faf6e7; }
.home-tool-site .room-intro, .home-tool-site .room-notes { background: var(--tool-tint); }
.home-tool-site .room-intro .crumbs { margin-bottom: 10px; }
.home-tool-site .room-tool { grid-template-columns: 245px minmax(0, 1fr) 275px; gap: 28px; }
.home-tool-site .room-canvas { aspect-ratio: 440 / 520; background: var(--tool-tint); max-height: 540px; }
.home-tool-site .room-result-panel { min-width: 0; }
.home-tool-site .room-controls .room-field { margin-bottom: 16px; }
.home-number { display: flex; align-items: center; gap: 8px; }
.home-number input { width: 100%; min-width: 0; min-height: 44px; padding: 9px 10px; border: 1px solid #b9cdc1; border-radius: 5px; color: #183c33; background: #fff; }
.home-number span { flex: 0 0 20px; font-size: 13px; }
.home-number input:invalid { border-color: #b44a53; }
.home-tool-site .room-checks { padding: 0; }
.home-tool-site .room-status { color: #92502a; margin-block: 12px; }
.home-tool-site .room-compass { min-height: 86px; }
.home-reasons { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.home-reason { border-top: 2px solid var(--tool-accent, #176c57); padding-top: 20px; }
.home-reason-number { color: var(--tool-accent); font-weight: 800; display: block; margin-bottom: 12px; }
.home-reason p { font-size: 14px; color: #53655f; line-height: 1.7; }
.home-reason p strong { color: #263e36; }
.home-tool-site .room-note-grid h2 { font-size: 22px; }
.home-directory { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 28px; }
.home-directory a { display: block; text-decoration: none; border-bottom: 2px solid #dce5df; padding-bottom: 20px; }
.home-directory img { width: 100%; aspect-ratio: 1200 / 760; height: auto; display: block; object-fit: contain; margin-bottom: 18px; }
.home-directory h2 { font-size: 23px; }
.home-directory a:hover h2 { text-decoration: underline; text-underline-offset: 5px; }
.home-directory p { font-size: 15px; color: #53655f; }
.home-directory .home-tool-number { font-size: 12px; font-weight: 800; color: #176c57; }
.home-tool-related { display: flex; flex-wrap: wrap; gap: 14px 28px; margin-top: 24px; }
.home-tool-related a { font-size: 15px; text-underline-offset: 4px; }
@media (max-width: 1100px) {
  .home-tool-site .room-tool { grid-template-columns: 240px minmax(0, 1fr); }
  .home-directory { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
  .home-reasons { grid-template-columns: 1fr; gap: 20px; }
  .home-reason { display: block; }
}
@media (max-width: 560px) {
  .home-tool-site .room-tool { grid-template-columns: minmax(0, 1fr); }
  .home-tool-site .room-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-tool-site .room-controls .room-field { grid-column: auto; }
  .home-tool-site .room-controls .home-field-wide { grid-column: 1 / -1; }
  .home-tool-site .room-controls .room-field label { min-height: 36px; display: flex; align-items: end; }
  .home-tool-site .room-field input { font-size: 16px; }
  .home-directory { grid-template-columns: 1fr; gap: 28px; }
  .home-tool-site .room-result-panel .button { width: 100%; }
}
