type: custom:stack-in-card cards: - type: custom:layout-card layout_type: grid layout: width: 100% grid-template-columns: 100% grid-template-rows: auto cards: - type: custom:mushroom-template-card primary: SYSTEM - {{(states('sensor.rpi_uptime'))}} secondary: Home Assistant - {{(states('sensor.ha_uptime'))}} icon: mdi:home-assistant icon_color: blue layout: horizontal tap_action: action: navigate navigation_path: /lovelace-mushroom/paths badge_color: blue badge_icon: | {% if is_state('sensor.updates_available', '1') %} mdi:numeric-1-circle {% elif is_state('sensor.updates_available', '2') %} mdi:numeric-2-circle {% elif is_state('sensor.updates_available', '3') %} mdi:numeric-3-circle {% elif is_state('sensor.updates_available', '4') %} mdi:numeric-4-circle {% elif is_state('sensor.updates_available', '5') %} mdi:numeric-5-circle {% elif is_state('sensor.updates_available', '6') %} mdi:numeric-6-circle {% elif is_state('sensor.updates_available', '7') %} mdi:numeric-7-circle {% elif is_state('sensor.updates_available', '8') %} mdi:numeric-8-circle {% elif is_state('sensor.updates_available', '9') %} mdi:numeric-9-circle {% endif %} hold_action: action: fire-dom-event browser_mod: service: browser_mod.popup data: title: Dostępne aktualizacje content: type: custom:auto-entities filter: include: - domain: update state: 'on' card: type: entities show_header_toggle: false card_mod: style: mushroom-shape-icon$: '' .: | ha-state-icon { {% if not is_state('sensor.updates_available', '0') %} animation: surprise 3s ease infinite; {% endif %} } @keyframes surprise { 0%, 20%, 100% { transform: translateY(0); } 2.5% { transform: translateY(-6px) rotate(-14deg); } 5% { transform: translateY(-6px) rotate(11deg); } 7.5% { transform: translateY(-6px) rotate(-8deg); } 10% { transform: translateY(-6px) rotate(5deg); } 12.5% { transform: translateY(0); } 15% { transform: translateY(-3px) } } .shape { {% if not is_state('sensor.updates_available', '0') %} --shape-animation: ping 2s infinite; {% endif %} } @keyframes ping { 0% { box-shadow: 0 0 5px 1px rgba(var(--rgb-blue), 0.7); } 100% { box-shadow: 0 0 5px 15px transparent; } } ha-card { {% if not is_state('sensor.updates_available', '0') %} box-shadow: 0px 0px 8px 4px rgba(var(--rgb-blue), 0.8) !important; {% else %} box-shadow: var(--ha-card-box-shadow) !important; {% endif %} --badge-size: 22px; background: var(--card-background-color) !important; margin-left: 5px; margin-right: 5px; border-radius: calc(var(--ha-card-border-radius, 12px) * 2) !important; } /* Add subtle color on hover */ :host { --mush-icon-size: 60px; --mush-card-primary-font-size: 13px; --mush-card-secondary-font-size: 11px; } ha-card:hover { background: color-mix(in srgb, var(--{{ config.icon_color }}-color) 5%, var(--card-background-color)) !important; } card_mod: style: | ha-card { border: none; box-shadow: none; }