    /* CSS domain: shared control tiles */
    .controls-section {
      justify-content: flex-start;
      gap: var(--dashboard-control-section-gap);
    }

    .controls-section-title {
      font-size: var(--dashboard-control-label-size);
      font-weight: var(--dashboard-controls-section-title-weight);
      color: var(--muted);
    }

    .controls-grid {
      display: grid;
      gap: var(--dashboard-control-grid-gap);
    }

    .controls-grid-4 {
      grid-template-columns: repeat(4, 1fr);
    }

    .controls-charger-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .controls-charger-grid .control-label {
      font-size: var(--dashboard-control-title-size);
      font-weight: var(--dashboard-controls-title-weight);
      line-height: 1.08;
      letter-spacing: -0.03em;
    }

    .climate-controls-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: var(--dashboard-control-grid-gap);
      align-items: stretch;
    }

    .control-tile {
      min-height: var(--dashboard-control-tile-min-height);
      border: 0;
      border-radius: var(--dashboard-control-tile-radius);
      background: #2a2a2d;
      color: var(--text);
      padding: var(--dashboard-control-tile-padding);
      cursor: pointer;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      gap: var(--dashboard-control-tile-gap);
      text-align: center;
      transition: transform 0.08s ease, background 0.15s ease, opacity 0.15s ease;
      box-shadow: var(--dashboard-card-inset);
      -webkit-tap-highlight-color: transparent;
    }

    .control-tile:active {
      transform: scale(0.98);
    }

    .control-tile.is-active {
      background: var(--blue);
      transform: scale(var(--dashboard-action-active-scale));
    }

    .control-tile.is-error {
      background: var(--red);
      transform: scale(var(--dashboard-action-active-scale));
    }

    .control-icon {
      font-size: var(--dashboard-control-icon-size);
      line-height: 1;
    }

    .control-label {
      font-size: var(--dashboard-controls-tile-label-size);
      font-weight: var(--dashboard-controls-tile-label-weight);
      line-height: 1.2;
    }

    .control-state {
      font-size: var(--dashboard-meta-size);
      color: var(--muted);
    }

    .status-tile.is-on {
      background: var(--blue);
    }

    .status-tile.is-on .control-state {
      color: rgba(255,255,255,0.92);
    }

    .status-tile.is-disabled {
      opacity: 0.38;
      cursor: not-allowed;
    }
