Albometer

New Dashboard UI - 10" V2

Jan 23rd, 2022
198
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 114.48 KB | None | 0 0
  1. kiosk_mode: null
  2. styles:
  3.   grid:
  4.     - grid-template-areas: |
  5.        "icon  circle"
  6.         "n     n"
  7.         "s     s"
  8.     - grid-template-columns: repeat(2, 1fr)
  9.     - grid-template-rows: auto repeat(2, min-content)
  10.     - gap: 2%
  11.     - align-items: start
  12.   name:
  13.     - justify-self: start
  14.     - line-height: 115%
  15.   state:
  16.     - justify-self: start
  17.     - line-height: 115%
  18.   card:
  19.     - font-family: Sf Display
  20.     - border-radius: var(--custom-button-card-border-radius)
  21.     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  22.     - transition: none
  23.     - padding: 10%
  24.     - '--mdc-ripple-color': |
  25.        [[[
  26.           return variables.consider_on ?
  27.             'rgb(0, 0, 0)' :
  28.             'rgba(255, 255, 255, 0.3)';
  29.         ]]]
  30.     - color: |
  31.        [[[
  32.           return variables.consider_on ?
  33.             'rgba(0, 0, 0, 0.6)' :
  34.             'rgba(255, 255, 255, 0.3)';
  35.         ]]]
  36.     - background-color: |
  37.        [[[
  38.           return variables.consider_on ?
  39.             'rgba(255, 255, 255, 0.8)' :
  40.             'rgba(115, 115, 115, 0.2)';
  41.         ]]]
  42. extra_styles: |
  43.  [[[
  44.     if (entity) {
  45.       let hs = entity.attributes.hs_color == undefined,
  46.         h = hs || entity.attributes.hs_color[0],
  47.         s = hs || entity.attributes.hs_color[1],
  48.         l_min = 28,
  49.         l_max = 48,
  50.         l_calc =
  51.          entity.attributes.brightness / 2.54 * (l_max - l_min) / 100 + l_min;
  52.      var light_color =
  53.        entity.attributes.color_mode === 'color_temp'
  54.          ? `hsl(204, 58%, ${l_calc}%);`
  55.          : `hsl(${h}, ${s}%, ${l_calc}%);`;
  56.     }
  57.    return `
  58.       svg {
  59.        --light-color:
  60.         ${ variables.state === 'on' && entity.attributes.brightness != undefined
  61.            ? light_color
  62.            : variables.state === 'on' && entity.attributes.brightness == undefined
  63.            ? 'var(--state-icon-active-color);'
  64.            : 'var(--state-icon-color);'
  65.        }
  66.      }
  67.      #container {
  68.       text-align: left !important;
  69.      }
  70.       #name, #state {
  71.         font-size: 1.34vw;
  72.         letter-spacing: 0.05vw;
  73.      }
  74.      /* portrait */
  75.       @media screen and (max-width: 1200px) {
  76.        #name, #state {
  77.          font-size: 2vw;
  78.          letter-spacing: 0.05vw;
  79.       }
  80.      }
  81.      /* phone */
  82.       @media screen and (max-width: 800px) {
  83.        #name, #state {
  84.          font-size: 3.1vw;
  85.          letter-spacing: 0.12vw;
  86.        }
  87.           }
  88.       @keyframes card_bounce {
  89.         0% {
  90.           transform: scale(1);
  91.         }
  92.         15% {
  93.           transform: scale(0.9);
  94.         }
  95.         25% {
  96.           transform: scale(1);
  97.         }
  98.         30% {
  99.           transform: scale(0.98);
  100.         }
  101.         100% {
  102.           transform: scale(1);
  103.         }
  104.       }
  105.     `
  106.   ]]]
  107. views:
  108.   - type: custom:grid-layout
  109.     path: 0
  110.     layout:
  111.       grid-gap: var(--custom-layout-card-padding)
  112.       grid-template-columns: repeat(4, 1fr) 0
  113.       grid-template-rows: 0 repeat(2, fit-content(100%)) 0fr
  114.       grid-template-areas: |
  115.        "sidebar  .           .           .       ."
  116.         "sidebar  esszimmer   wohnzimmer  aussen  ."
  117.         "sidebar  media       heizung     familie ."
  118.         "sidebar  footer      footer      footer  ."
  119.       mediaquery:
  120.         '(max-width: 800px)':
  121.           grid-gap: calc(var(--custom-layout-card-padding) * 1.7)
  122.           grid-template-columns: 0 repeat(2, 1fr) 0
  123.           grid-template-rows: 0 repeat(5, fit-content(100%)) 0fr
  124.           grid-template-areas: |
  125.            ".  .           .            ."
  126.             ".  sidebar     sidebar      ."
  127.             ".  esszimmer   wohnzimmer   ."
  128.             ".  aussen      heizung      ."
  129.             ".  media       familie      ."
  130.             ".  footer      footer       ."
  131.             ".  .           .            ."
  132.         '(max-width: 1200px)':
  133.           grid-gap: var(--custom-layout-card-padding)
  134.           grid-template-columns: repeat(3, 1fr) 0
  135.           grid-template-rows: 0 repeat(3, fit-content(100%)) 0fr
  136.           grid-template-areas: |
  137.            "sidebar  .           .           ."
  138.             "sidebar  esszimmer   wohnzimmer  ."
  139.             "sidebar  aussen      heizung     ."
  140.             "sidebar  media       familie     ."
  141.             "sidebar  footer      footer      ."
  142.             "sidebar  .           .           ."
  143.     badges: []
  144.     cards:
  145.       - type: grid
  146.         title: ⠀
  147.         cards:
  148.           - type: custom:simple-clock-card
  149.             use_military: true
  150.             hide_seconds: true
  151.             font_size: 6rem
  152.             padding_size: 1px
  153.             style: |
  154.              ha-card {
  155.                 height: 18px;
  156.                 box-shadow: none;
  157.                 background: transparent;
  158.                 font-family: SF Display;
  159.                 font-size: 25px;
  160.                 line-height: 15px;
  161.                 font-weight: 300;
  162.                 letter-spacing: 0.06vw;
  163.                 color: #6a7377;
  164.               }
  165.               :host {
  166.                 --mini-media-player-accent-color: white;
  167.               }
  168.             square: false
  169.             columns: 1
  170.           - type: markdown
  171.             style: |
  172.              ha-card {
  173.                  background-color: rgba(0,0,0,0) !important;
  174.                  box-shadow: none;
  175.                  padding-right: 10px;
  176.                  font-family: SF Display;
  177.                  font-size: 15px;
  178.                  line-height: var(--sidebar-line-height);
  179.                  font-weight: 10;
  180.                  letter-spacing: 0.06vw;
  181.                  color: #6a7377;
  182.             content: |-
  183.               <center>
  184.              <h3>
  185.              {{ now().strftime('%d.%m.%Y') }}
  186.               </h3>
  187.              </center>
  188.           - type: custom:weather-card
  189.             entity: weather.dark_sky
  190.             current: true
  191.             details: false
  192.             forecast: false
  193.             tap_action:
  194.               action: none
  195.             style: |
  196.              ha-card {
  197.               background-color:transparent;
  198.               box-shadow: none;
  199.               font-size: 0.65vw!important;
  200.               font-family: SF Display;
  201.               line-height: var(--sidebar-line-height);
  202.               font-weight: 10;
  203.               letter-spacing: 0.06vw;
  204.               color: #6a7377!important;
  205.               }
  206.             number_of_forecasts: '5'
  207.             icon: ''
  208.             name: ''
  209.           - type: markdown
  210.             style: |
  211.              ha-card {
  212.                  background-color: rgba(0,0,0,0) !important;
  213.                  box-shadow: none;
  214.                  padding-right: 10px;
  215.                  font-family: SF Display;
  216.                  font-size: 15px;
  217.                  line-height: 13px;
  218.                  font-weight: 20;
  219.                  letter-spacing: 0.05vw!important;
  220.                  color: #6a7377;
  221.             content: >-
  222.               <h4>
  223.               {{states.sensor.open_windows.state}}
  224.  
  225.  
  226.               {{states.sensor.open_doors.state}}
  227.  
  228.  
  229.               Zur Zeit sind {{ states.light
  230.  
  231.               | rejectattr('attributes.entity_id', 'defined')
  232.  
  233.               | selectattr('state','eq','on')
  234.  
  235.               | list | count }} Lampen an.
  236.  
  237.               </h4>
  238.               <h4><br>
  239.               {{ states.sensor.abfallnaechster.attributes.values() | first |
  240.               replace("papier","Papiermüll") | replace("bio","Biomüll") |
  241.  
  242.               replace("gelbersack", "Gelber Sack") | replace("rest", "Restmüll")
  243.               |
  244.               replace("papier","Papiermüll") }}
  245.               </h4>
  246.               <h4>
  247.               {{ states.sensor.abfallnaechster.attributes | first |
  248.                 as_timestamp | timestamp_custom("%d.%m.%Y") }}
  249.               <h4><br>
  250.               Spritpreis
  251.               </h4>
  252.               <h4>
  253.               {{states.sensor.tankerkoenig_star_tankstelle_e5.state}}
  254.           - type: custom:mini-media-player
  255.             padding-size: 80px
  256.             entity: media_player.wohnzimmer_2_2
  257.             style: |
  258.              ha-card {
  259.                 background-color:transparent;
  260.                 box-shadow: none;
  261.                 font-size: 0.85vw!important;
  262.               }
  263.             toggle_power: false
  264.             volume_stateless: false
  265.             group: true
  266.             source: icon
  267.             sound_mode: icon
  268.             replace_mute: stop
  269.             name: Sonos
  270.             icon: mdi:music-circle-outline
  271.             hide:
  272.               volume: true
  273.               source: true
  274.               controls: true
  275.               power: true
  276.             info: scroll
  277.             artwork: none
  278.         square: false
  279.         columns: 1
  280.         view_layout:
  281.           grid-area: sidebar
  282.       - type: grid
  283.         cards:
  284.           - type: custom:button-card
  285.             entity: light.cabinettw_z3_01
  286.             aspect_ratio: 1
  287.             name: Küche
  288.             color_type: card
  289.             show_state: true
  290.             hold_action:
  291.               action: fire-dom-event
  292.               browser_mod:
  293.                 command: popup
  294.                 title: Küche
  295.                 hide_header: false
  296.                 style:
  297.                   hui-light-popup-card:
  298.                     $hui-light-entity-card$: |
  299.                      #states {
  300.                         padding-top: 0.5em;
  301.                         padding-bottom: 1.2em;
  302.                         borderRadius: 1.7em;
  303.                       }
  304.                 card:
  305.                   type: custom:light-popup-card
  306.                   fullscreen: false
  307.                   entity: light.cabinettw_z3_01
  308.                   icon: none
  309.                   displayType: slider
  310.                   sliderColoredByLight: true
  311.                   actionsInARow: 2
  312.                   offStates: null
  313.                   brightnessWidth: 130px
  314.                   brightnessHeight: 320px
  315.                   borderRadius: 1.7em
  316.                   sliderColor: '#c7c7c7'
  317.                   sliderTrackColor: rgba(25, 25, 25, 0.9)
  318.                   actions:
  319.                     - action: fire-dom-event
  320.                       color: '#FDCA64'
  321.                       name: Farbe
  322.                       browser_mod:
  323.                         command: popup
  324.                         title: Farbe
  325.                         card:
  326.                           type: custom:light-entity-card
  327.                           entity: light.cabinettw_z3_01
  328.                           hide_header: true
  329.                           brightness: true
  330.                           color_temp: true
  331.                           white_value: true
  332.             custom_fields:
  333.               Circle: >
  334.                [[[ {
  335.  
  336.                 const temp = Math.round(entity.attributes.brightness / 2.64);
  337.  
  338.                 const radius = 20.5;
  339.  
  340.                 const circumference = radius * 2 * Math.PI;
  341.  
  342.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  343.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  344.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  345.                 * circumference};}
  346.  
  347.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  348.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  349.                 style="
  350.  
  351.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  352.  
  353.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  354.                 text-anchor="middle" alignment-baseline="middle"
  355.                 dominant-baseline="middle">${temp}%</text></svg>`; } ]]]
  356.             show_entity_picture: true
  357.             styles:
  358.               card:
  359.                 - font-family: Sf Display
  360.                 - border-radius: var(--custom-button-card-border-radius)
  361.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  362.                 - transition: none
  363.                 - padding: 10%
  364.               grid:
  365.                 - grid-template-areas: '"i" "n" "s"'
  366.                 - grid-template-columns: 1fr
  367.                 - grid-template-rows: 1fr min-content min-content
  368.               name:
  369.                 - justify-self: start
  370.                 - padding-left: 7px
  371.                 - font-weight: bold
  372.                 - font-family: SF Display
  373.                 - font-size: 14px
  374.               img_cell:
  375.                 - justify-content: start
  376.                 - padding-left: 5px
  377.                 - padding-top: 10px
  378.                 - align-items: start
  379.                 - margin: none
  380.               state:
  381.                 - justify-self: start
  382.                 - font-color: red
  383.                 - padding-left: 7px
  384.                 - padding-bottom: 10px
  385.                 - text-transform: capitalize
  386.                 - font-family: SF Display
  387.                 - font-size: 10px
  388.               icon:
  389.                 - width: 40%
  390.               custom_fields:
  391.                 Circle:
  392.                   - align-self: start
  393.                   - position: absolute
  394.                   - left: 55%
  395.                   - top: 10%
  396.                   - width: 40%
  397.                   - font-size: 18px
  398.                   - font-weight: 900
  399.                   - font-family: SF Display
  400.                   - text-transform: capitalize
  401.             state:
  402.               - value: 'on'
  403.                 entity_picture: \local\img\icons8-kitchen-room-48.png
  404.                 color: rgba(255,255,255,0.9)
  405.               - value: 'off'
  406.                 entity_picture: \local\img\icons8-kitchen-room-48.png
  407.                 color: rgba(65,65,63,0.8)
  408.                 styles:
  409.                   card:
  410.                     - filter: opacity(50%)
  411.                   icon:
  412.                     - filter: grayscale(100%)
  413.           - type: custom:button-card
  414.             entity: light.wohnzimmer_2
  415.             aspect_ratio: 1
  416.             name: Tresen
  417.             color_type: card
  418.             show_state: true
  419.             show_entity_picture: true
  420.             styles:
  421.               card:
  422.                 - font-family: Sf Display
  423.                 - border-radius: var(--custom-button-card-border-radius)
  424.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  425.                 - transition: none
  426.                 - padding: 10%
  427.               grid:
  428.                 - grid-template-areas: '"i" "n" "s"'
  429.                 - grid-template-columns: 1fr
  430.                 - grid-template-rows: 1fr min-content min-content
  431.               name:
  432.                 - justify-self: start
  433.                 - padding-left: 7px
  434.                 - font-weight: bold
  435.                 - font-family: SF Display
  436.                 - font-size: 14px
  437.               img_cell:
  438.                 - justify-content: start
  439.                 - padding-left: 5px
  440.                 - padding-top: 10px
  441.                 - align-items: start
  442.                 - margin: none
  443.               state:
  444.                 - justify-self: start
  445.                 - font-color: red
  446.                 - padding-left: 7px
  447.                 - padding-bottom: 10px
  448.                 - text-transform: capitalize
  449.                 - font-family: SF Display
  450.                 - font-size: 10px
  451.               icon:
  452.                 - width: 40%
  453.               custom_fields:
  454.                 Circle:
  455.                   - align-self: start
  456.                   - position: absolute
  457.                   - left: 55%
  458.                   - top: 10%
  459.                   - width: 40%
  460.                   - font-size: 18px
  461.                   - font-weight: 900
  462.                   - font-family: SF Display
  463.                   - text-transform: capitalize
  464.             state:
  465.               - value: 'on'
  466.                 entity_picture: \local\img\icons8-cupboard-48.png
  467.                 color: rgba(255,255,255,0.9)
  468.               - value: 'off'
  469.                 entity_picture: \local\img\icons8-cupboard-48.png
  470.                 color: rgba(65,65,63,0.8)
  471.                 styles:
  472.                   card:
  473.                     - filter: opacity(50%)
  474.                   icon:
  475.                     - filter: grayscale(100%)
  476.           - type: custom:button-card
  477.             entity: light.lampen_esstisch
  478.             aspect_ratio: 1
  479.             name: Esstisch
  480.             color_type: card
  481.             show_state: true
  482.             hold_action:
  483.               action: fire-dom-event
  484.               browser_mod:
  485.                 command: popup
  486.                 title: Esstisch
  487.                 card:
  488.                   type: custom:light-popup-card
  489.                   fullscreen: false
  490.                   entity: light.lampen_esstisch
  491.                   icon: none
  492.                   displayType: slider
  493.                   sliderColoredByLight: true
  494.                   actionsInARow: 1
  495.                   brightnessWidth: 130px
  496.                   brightnessHeight: 360px
  497.                   borderRadius: 1.7em
  498.                   sliderColor: '#c7c7c7'
  499.                   sliderTrackColor: rgba(25, 25, 25, 0.9)
  500.                   actions:
  501.                     - action: fire-dom-event
  502.                       color: '#FDCA64'
  503.                       name: Farbe
  504.                       browser_mod:
  505.                         command: popup
  506.                         title: []
  507.                         card:
  508.                           type: custom:light-entity-card
  509.                           entity: light.lampen_esstisch
  510.                           hide_header: true
  511.                           brightness: true
  512.                           color_temp: true
  513.             custom_fields:
  514.               Circle: >
  515.                [[[ {
  516.  
  517.                 const temp = Math.round(entity.attributes.brightness / 2.64);
  518.  
  519.                 const radius = 20.5;
  520.  
  521.                 const circumference = radius * 2 * Math.PI;
  522.  
  523.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  524.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  525.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  526.                 * circumference};}
  527.  
  528.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  529.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  530.                 style="
  531.  
  532.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  533.  
  534.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  535.                 text-anchor="middle" alignment-baseline="middle"
  536.                 dominant-baseline="middle">${temp}%</text></svg>`; } ]]]
  537.             show_entity_picture: true
  538.             styles:
  539.               card:
  540.                 - font-family: Sf Display
  541.                 - border-radius: var(--custom-button-card-border-radius)
  542.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  543.                 - transition: none
  544.                 - padding: 10%
  545.               grid:
  546.                 - grid-template-areas: '"i" "n" "s"'
  547.                 - grid-template-columns: 1fr
  548.                 - grid-template-rows: 1fr min-content min-content
  549.               name:
  550.                 - justify-self: start
  551.                 - padding-left: 7px
  552.                 - font-weight: bold
  553.                 - font-family: SF Display
  554.                 - font-size: 14px
  555.               img_cell:
  556.                 - justify-content: start
  557.                 - padding-left: 5px
  558.                 - padding-top: 10px
  559.                 - align-items: start
  560.                 - margin: none
  561.               state:
  562.                 - justify-self: start
  563.                 - font-color: red
  564.                 - padding-left: 7px
  565.                 - padding-bottom: 10px
  566.                 - text-transform: capitalize
  567.                 - font-family: SF Display
  568.                 - font-size: 10px
  569.               icon:
  570.                 - width: 40%
  571.               custom_fields:
  572.                 Circle:
  573.                   - align-self: start
  574.                   - position: absolute
  575.                   - left: 55%
  576.                   - top: 10%
  577.                   - width: 40%
  578.                   - font-size: 18px
  579.                   - font-weight: 900
  580.                   - font-family: SF Display
  581.                   - text-transform: capitalize
  582.             state:
  583.               - value: 'on'
  584.                 entity_picture: \local\img\icons8-beleuchtung-50.png
  585.                 color: rgba(255,255,255,0.9)
  586.               - value: 'off'
  587.                 entity_picture: \local\img\icons8-beleuchtung-50.png
  588.                 color: rgba(65,65,63,0.8)
  589.                 styles:
  590.                   card:
  591.                     - filter: opacity(50%)
  592.                   icon:
  593.                     - filter: grayscale(100%)
  594.           - type: custom:button-card
  595.             entity: light.esszimmer_1
  596.             aspect_ratio: 1
  597.             name: Esszimmer
  598.             color_type: card
  599.             show_state: true
  600.             hold_action:
  601.               action: fire-dom-event
  602.               browser_mod:
  603.                 command: popup
  604.                 title: Esszimmer
  605.                 card:
  606.                   type: custom:light-popup-card
  607.                   fullscreen: false
  608.                   entity: light.esszimmer_1
  609.                   icon: none
  610.                   displayType: slider
  611.                   sliderColoredByLight: true
  612.                   actionsInARow: 1
  613.                   brightnessWidth: 100px
  614.                   brightnessHeight: 300px
  615.                   borderRadius: 1.7em
  616.                   sliderColor: '#c7c7c7'
  617.                   sliderTrackColor: rgba(25, 25, 25, 0.9)
  618.                   actions:
  619.                     - action: fire-dom-event
  620.                       color: '#FDCA64'
  621.                       name: Farbe
  622.                       browser_mod:
  623.                         command: popup
  624.                         title: []
  625.                         card:
  626.                           type: custom:light-entity-card
  627.                           entity:
  628.                            - light.esszimmer
  629.                           hide_header: true
  630.                           brightness: true
  631.                           color_temp: true
  632.                           style: |
  633.                            ha-card {
  634.                               box-shadow: none;
  635.                               background: transparent!important;
  636.                             }
  637.             custom_fields:
  638.               Circle: >
  639.                [[[ {
  640.  
  641.                 const temp = Math.round(entity.attributes.brightness / 2.64);
  642.  
  643.                 const radius = 20.5;
  644.  
  645.                 const circumference = radius * 2 * Math.PI;
  646.  
  647.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  648.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  649.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  650.                 * circumference};}
  651.  
  652.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  653.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  654.                 style="
  655.  
  656.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  657.  
  658.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  659.                 text-anchor="middle" alignment-baseline="middle"
  660.                 dominant-baseline="middle">${temp}%</text></svg>`; } ]]]
  661.             show_entity_picture: true
  662.             styles:
  663.               card:
  664.                 - font-family: Sf Display
  665.                 - border-radius: var(--custom-button-card-border-radius)
  666.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  667.                 - transition: none
  668.                 - padding: 10%
  669.               grid:
  670.                 - grid-template-areas: '"i" "n" "s"'
  671.                 - grid-template-columns: 1fr
  672.                 - grid-template-rows: 1fr min-content min-content
  673.               name:
  674.                 - justify-self: start
  675.                 - padding-left: 7px
  676.                 - font-weight: bold
  677.                 - font-family: SF Display
  678.                 - font-size: 14px
  679.               img_cell:
  680.                 - justify-content: start
  681.                 - padding-left: 5px
  682.                 - padding-top: 10px
  683.                 - align-items: start
  684.                 - margin: none
  685.               state:
  686.                 - justify-self: start
  687.                 - font-color: red
  688.                 - padding-left: 7px
  689.                 - padding-bottom: 10px
  690.                 - text-transform: capitalize
  691.                 - font-family: SF Display
  692.                 - font-size: 10px
  693.               icon:
  694.                 - width: 40%
  695.               custom_fields:
  696.                 Circle:
  697.                   - align-self: start
  698.                   - position: absolute
  699.                   - left: 55%
  700.                   - top: 10%
  701.                   - width: 40%
  702.                   - font-size: 18px
  703.                   - font-weight: 900
  704.                   - font-family: SF Display
  705.                   - text-transform: capitalize
  706.             state:
  707.               - value: 'on'
  708.                 entity_picture: \local\img\icons8-dining-room-48.png
  709.                 color: rgba(255,255,255,0.9)
  710.               - value: 'off'
  711.                 entity_picture: \local\img\icons8-dining-room-48.png
  712.                 color: rgba(65,65,63,0.8)
  713.                 styles:
  714.                   card:
  715.                     - filter: opacity(50%)
  716.                   icon:
  717.                     - filter: grayscale(100%)
  718.         title: Esszimmer
  719.         columns: 2
  720.         view_layout:
  721.           grid-area: esszimmer
  722.       - type: grid
  723.         cards:
  724.           - type: custom:button-card
  725.             entity: light.fernseher
  726.             aspect_ratio: 1
  727.             name: Fernseher
  728.             color_type: card
  729.             show_state: true
  730.             hold_action:
  731.               action: fire-dom-event
  732.               browser_mod:
  733.                 command: popup
  734.                 title: Esszimmer
  735.                 card:
  736.                   type: custom:light-popup-card
  737.                   fullscreen: false
  738.                   entity: light.fernseher
  739.                   icon: none
  740.                   displayType: slider
  741.                   sliderColoredByLight: true
  742.                   actionsInARow: 1
  743.                   offStates: null
  744.                   brightnessWidth: 130px
  745.                   brightnessHeight: 320px
  746.                   borderRadius: 1.7em
  747.                   sliderColor: '#c7c7c7'
  748.                   sliderTrackColor: rgba(25, 25, 25, 0.9)
  749.                   actions:
  750.                     - action: fire-dom-event
  751.                       color: '#FDCA64'
  752.                       name: Farbe
  753.                       browser_mod:
  754.                         command: popup
  755.                         title: []
  756.                         card:
  757.                           type: custom:light-entity-card
  758.                           entity:
  759.                            - light.fernseher
  760.                           hide_header: true
  761.                           brightness: true
  762.                           color_temp: true
  763.             custom_fields:
  764.               Circle: >
  765.                [[[ {
  766.  
  767.                 const temp = Math.round(entity.attributes.brightness / 2.64);
  768.  
  769.                 const radius = 20.5;
  770.  
  771.                 const circumference = radius * 2 * Math.PI;
  772.  
  773.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  774.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  775.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  776.                 * circumference};}
  777.  
  778.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  779.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  780.                 style="
  781.  
  782.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  783.  
  784.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  785.                 text-anchor="middle" alignment-baseline="middle"
  786.                 dominant-baseline="middle">${temp}%</text></svg>`; } ]]]
  787.             show_entity_picture: true
  788.             styles:
  789.               card:
  790.                 - font-family: Sf Display
  791.                 - border-radius: var(--custom-button-card-border-radius)
  792.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  793.                 - transition: none
  794.                 - padding: 10%
  795.               grid:
  796.                 - grid-template-areas: '"i" "n" "s"'
  797.                 - grid-template-columns: 1fr
  798.                 - grid-template-rows: 1fr min-content min-content
  799.               name:
  800.                 - justify-self: start
  801.                 - padding-left: 7px
  802.                 - font-weight: bold
  803.                 - font-family: SF Display
  804.                 - font-size: 14px
  805.               img_cell:
  806.                 - justify-content: start
  807.                 - padding-left: 5px
  808.                 - padding-top: 10px
  809.                 - align-items: start
  810.                 - margin: none
  811.               state:
  812.                 - justify-self: start
  813.                 - font-color: red
  814.                 - padding-left: 7px
  815.                 - padding-bottom: 10px
  816.                 - text-transform: capitalize
  817.                 - font-family: SF Display
  818.                 - font-size: 10px
  819.               icon:
  820.                 - width: 40%
  821.               custom_fields:
  822.                 Circle:
  823.                   - align-self: start
  824.                   - position: absolute
  825.                   - left: 55%
  826.                   - top: 10%
  827.                   - width: 40%
  828.                   - font-size: 18px
  829.                   - font-weight: 900
  830.                   - font-family: SF Display
  831.                   - text-transform: capitalize
  832.             state:
  833.               - value: 'on'
  834.                 entity_picture: \local\img\icons8-scoop-beleuchtung-48.png
  835.                 color: rgba(255,255,255,0.9)
  836.               - value: 'off'
  837.                 entity_picture: \local\img\icons8-scoop-beleuchtung-48.png
  838.                 color: rgba(65,65,63,0.8)
  839.                 styles:
  840.                   card:
  841.                     - filter: opacity(50%)
  842.                   icon:
  843.                     - filter: grayscale(100%)
  844.               - value: unavailable
  845.                 entity_picture: \local\img\icons8-achtung-48.png
  846.                 color: rgba(255,0,0,0.8)
  847.           - type: custom:button-card
  848.             entity: light.licht_vitrine
  849.             aspect_ratio: 1
  850.             name: Vitrine
  851.             color_type: card
  852.             show_state: true
  853.             hold_action:
  854.               action: fire-dom-event
  855.               browser_mod:
  856.                 command: popup
  857.                 title: Vitrine
  858.                 card:
  859.                   type: custom:light-popup-card
  860.                   fullscreen: false
  861.                   entity: light.licht_vitrine
  862.                   icon: none
  863.                   displayType: slider
  864.                   sliderColoredByLight: true
  865.                   actionsInARow: 1
  866.                   offStates: null
  867.                   brightnessWidth: 130px
  868.                   brightnessHeight: 320px
  869.                   borderRadius: 1.7em
  870.                   sliderColor: '#c7c7c7'
  871.                   sliderTrackColor: rgba(25, 25, 25, 0.9)
  872.                   actions:
  873.                     - action: fire-dom-event
  874.                       color: '#FDCA64'
  875.                       name: Farbe
  876.                       browser_mod:
  877.                         command: popup
  878.                         title: []
  879.                         card:
  880.                           type: custom:light-entity-card
  881.                           entity:
  882.                            - light.licht_vitrine
  883.                           hide_header: true
  884.                           brightness: true
  885.                           color_temp: true
  886.             custom_fields:
  887.               Circle: >
  888.                [[[ {
  889.  
  890.                 const temp = Math.round(entity.attributes.brightness / 2.64);
  891.  
  892.                 const radius = 20.5;
  893.  
  894.                 const circumference = radius * 2 * Math.PI;
  895.  
  896.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  897.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  898.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  899.                 * circumference};}
  900.  
  901.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  902.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  903.                 style="
  904.  
  905.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  906.  
  907.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  908.                 text-anchor="middle" alignment-baseline="middle"
  909.                 dominant-baseline="middle">${temp}%</text></svg>`; } ]]]
  910.             show_entity_picture: true
  911.             styles:
  912.               card:
  913.                 - font-family: Sf Display
  914.                 - border-radius: var(--custom-button-card-border-radius)
  915.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  916.                 - transition: none
  917.                 - padding: 10%
  918.               grid:
  919.                 - grid-template-areas: '"i" "n" "s"'
  920.                 - grid-template-columns: 1fr
  921.                 - grid-template-rows: 1fr min-content min-content
  922.               name:
  923.                 - justify-self: start
  924.                 - padding-left: 7px
  925.                 - font-weight: bold
  926.                 - font-family: SF Display
  927.                 - font-size: 14px
  928.               img_cell:
  929.                 - justify-content: start
  930.                 - padding-left: 5px
  931.                 - padding-top: 10px
  932.                 - align-items: start
  933.                 - margin: none
  934.               state:
  935.                 - justify-self: start
  936.                 - font-color: red
  937.                 - padding-left: 7px
  938.                 - padding-bottom: 10px
  939.                 - text-transform: capitalize
  940.                 - font-family: SF Display
  941.                 - font-size: 10px
  942.               icon:
  943.                 - width: 40%
  944.               custom_fields:
  945.                 Circle:
  946.                   - align-self: start
  947.                   - position: absolute
  948.                   - left: 55%
  949.                   - top: 10%
  950.                   - width: 40%
  951.                   - font-size: 18px
  952.                   - font-weight: 900
  953.                   - font-family: SF Display
  954.                   - text-transform: capitalize
  955.             state:
  956.               - value: 'on'
  957.                 entity_picture: \local\img\icons8-schrank-mit-schiebetür-48.png
  958.                 color: rgba(255,255,255,0.9)
  959.               - value: 'off'
  960.                 entity_picture: \local\img\icons8-schrank-mit-schiebetür-48.png
  961.                 color: rgba(65,65,63,0.8)
  962.                 styles:
  963.                   card:
  964.                     - filter: opacity(50%)
  965.                   icon:
  966.                     - filter: grayscale(100%)
  967.           - type: custom:button-card
  968.             entity: light.color_temperature_light_5
  969.             aspect_ratio: 1
  970.             name: Schrank
  971.             color_type: card
  972.             show_state: true
  973.             hold_action:
  974.               action: fire-dom-event
  975.               browser_mod:
  976.                 command: popup
  977.                 title: Esszimmer
  978.                 card:
  979.                   type: custom:light-popup-card
  980.                   fullscreen: false
  981.                   entity: light.color_temperature_light_5
  982.                   icon: none
  983.                   displayType: slider
  984.                   sliderColoredByLight: true
  985.                   actionsInARow: 1
  986.                   offStates: null
  987.                   brightnessWidth: 130px
  988.                   brightnessHeight: 320px
  989.                   borderRadius: 1.7em
  990.                   sliderColor: '#c7c7c7'
  991.                   sliderTrackColor: rgba(25, 25, 25, 0.9)
  992.                   actions:
  993.                     - action: fire-dom-event
  994.                       color: '#FDCA64'
  995.                       name: Farbe
  996.                       browser_mod:
  997.                         command: popup
  998.                         title: []
  999.                         card:
  1000.                           type: custom:light-entity-card
  1001.                           entity:
  1002.                            - light.color_temperature_light_5
  1003.                           hide_header: true
  1004.                           brightness: true
  1005.                           color_temp: true
  1006.             custom_fields:
  1007.               Circle: >
  1008.                [[[ {
  1009.  
  1010.                 const temp = Math.round(entity.attributes.brightness / 2.64);
  1011.  
  1012.                 const radius = 20.5;
  1013.  
  1014.                 const circumference = radius * 2 * Math.PI;
  1015.  
  1016.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  1017.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  1018.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  1019.                 * circumference};}
  1020.  
  1021.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  1022.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  1023.                 style="
  1024.  
  1025.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  1026.  
  1027.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  1028.                 text-anchor="middle" alignment-baseline="middle"
  1029.                 dominant-baseline="middle">${temp}%</text></svg>`; } ]]]
  1030.             show_entity_picture: true
  1031.             styles:
  1032.               card:
  1033.                 - font-family: Sf Display
  1034.                 - border-radius: var(--custom-button-card-border-radius)
  1035.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1036.                 - transition: none
  1037.                 - padding: 10%
  1038.               grid:
  1039.                 - grid-template-areas: '"i" "n" "s"'
  1040.                 - grid-template-columns: 1fr
  1041.                 - grid-template-rows: 1fr min-content min-content
  1042.               name:
  1043.                 - justify-self: start
  1044.                 - padding-left: 7px
  1045.                 - font-weight: bold
  1046.                 - font-family: SF Display
  1047.                 - font-size: 14px
  1048.               img_cell:
  1049.                 - justify-content: start
  1050.                 - padding-left: 5px
  1051.                 - padding-top: 10px
  1052.                 - align-items: start
  1053.                 - margin: none
  1054.               state:
  1055.                 - justify-self: start
  1056.                 - font-color: red
  1057.                 - padding-left: 7px
  1058.                 - padding-bottom: 10px
  1059.                 - text-transform: capitalize
  1060.                 - font-family: SF Display
  1061.                 - font-size: 10px
  1062.               icon:
  1063.                 - width: 40%
  1064.               custom_fields:
  1065.                 Circle:
  1066.                   - align-self: start
  1067.                   - position: absolute
  1068.                   - left: 55%
  1069.                   - top: 10%
  1070.                   - width: 40%
  1071.                   - font-size: 18px
  1072.                   - font-weight: 900
  1073.                   - font-family: SF Display
  1074.                   - text-transform: capitalize
  1075.             state:
  1076.               - value: 'on'
  1077.                 entity_picture: \local\img\icons8-lampe-48.png
  1078.                 color: rgba(255,255,255,0.9)
  1079.               - value: 'off'
  1080.                 entity_picture: \local\img\icons8-lampe-48.png
  1081.                 color: rgba(65,65,63,0.8)
  1082.                 styles:
  1083.                   card:
  1084.                     - filter: opacity(50%)
  1085.                   icon:
  1086.                     - filter: grayscale(100%)
  1087.         title: Wohnzimmer
  1088.         columns: 2
  1089.         view_layout:
  1090.           grid-area: wohnzimmer
  1091.       - type: grid
  1092.         cards:
  1093.           - type: custom:button-card
  1094.             entity: script.1634564870887
  1095.             aspect_ratio: 1
  1096.             name: Haustür öffnen
  1097.             color_type: card
  1098.             show_state: true
  1099.             show_entity_picture: true
  1100.             tap_action:
  1101.               action: call-service
  1102.               service: script.1634564870887
  1103.               confirmation:
  1104.                 text: Haustür öffnen ?
  1105.             styles:
  1106.               card:
  1107.                 - font-family: Sf Display
  1108.                 - border-radius: var(--custom-button-card-border-radius)
  1109.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1110.                 - transition: none
  1111.                 - padding: 10%
  1112.               grid:
  1113.                 - grid-template-areas: '"i" "n" "s"'
  1114.                 - grid-template-columns: 1fr
  1115.                 - grid-template-rows: 1fr min-content min-content
  1116.               name:
  1117.                 - justify-self: start
  1118.                 - padding-left: 7px
  1119.                 - font-weight: bold
  1120.                 - font-family: SF Display
  1121.                 - font-size: 14px
  1122.               img_cell:
  1123.                 - justify-content: start
  1124.                 - padding-left: 5px
  1125.                 - padding-top: 10px
  1126.                 - align-items: start
  1127.                 - margin: none
  1128.               state:
  1129.                 - justify-self: start
  1130.                 - font-color: red
  1131.                 - padding-left: 7px
  1132.                 - padding-bottom: 10px
  1133.                 - text-transform: capitalize
  1134.                 - font-family: SF Display
  1135.                 - font-size: 10px
  1136.               icon:
  1137.                 - width: 40%
  1138.             state:
  1139.               - value: 'on'
  1140.                 entity_picture: \local\img\icons8-schloss-orientierung-48.png
  1141.                 color: rgba(255,255,255,0.9)
  1142.               - value: 'off'
  1143.                 entity_picture: \local\img\icons8-schloss-orientierung-48.png
  1144.                 color: rgba(65,65,63,0.8)
  1145.                 styles:
  1146.                   card:
  1147.                     - filter: opacity(50%)
  1148.                   icon:
  1149.                     - filter: grayscale(100%)
  1150.           - type: custom:button-card
  1151.             entity: lock.haustur
  1152.             aspect_ratio: 1
  1153.             name: Haustür
  1154.             tap_action:
  1155.               action: toggle
  1156.             color_type: card
  1157.             show_state: true
  1158.             show_entity_picture: true
  1159.             styles:
  1160.               card:
  1161.                 - font-family: Sf Display
  1162.                 - border-radius: var(--custom-button-card-border-radius)
  1163.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1164.                 - transition: none
  1165.                 - padding: 10%
  1166.               grid:
  1167.                 - grid-template-areas: '"i" "n" "s"'
  1168.                 - grid-template-columns: 1fr
  1169.                 - grid-template-rows: 1fr min-content min-content
  1170.               name:
  1171.                 - justify-self: start
  1172.                 - padding-left: 7px
  1173.                 - font-weight: bold
  1174.                 - font-family: SF Display
  1175.                 - font-size: 14px
  1176.               img_cell:
  1177.                 - justify-content: start
  1178.                 - padding-left: 5px
  1179.                 - padding-top: 10px
  1180.                 - align-items: start
  1181.                 - margin: none
  1182.               state:
  1183.                 - justify-self: start
  1184.                 - font-color: red
  1185.                 - padding-left: 7px
  1186.                 - padding-bottom: 10px
  1187.                 - text-transform: capitalize
  1188.                 - font-family: SF Display
  1189.                 - font-size: 10px
  1190.               icon:
  1191.                 - width: 40%
  1192.             state:
  1193.               - value: locked
  1194.                 entity_picture: \local\img\icons8-sperren-48.png
  1195.                 color: rgba(255,255,255,0.9)
  1196.               - value: unlocked
  1197.                 entity_picture: \local\img\icons8-entsperren-48.png
  1198.                 color: rgba(65,65,63,0.8)
  1199.                 styles:
  1200.                   card:
  1201.                     - filter: opacity(50%)
  1202.                   icon:
  1203.                     - filter: grayscale(100%)
  1204.           - type: custom:button-card
  1205.             entity: camera.vorderseite
  1206.             camera_view: live
  1207.             aspect_ratio: 1
  1208.             name: Kamera
  1209.             color_type: card
  1210.             show_state: true
  1211.             tap_action:
  1212.               action: fire-dom-event
  1213.               browser_mod:
  1214.                 command: popup
  1215.                 title: Eingang
  1216.                 style:
  1217.                   hui-vertical-stack-card:
  1218.                     $hui-entities-card$: |
  1219.                      #states {
  1220.                         padding-top: 0.5em;
  1221.                         padding-bottom: 1.2em;
  1222.                       }
  1223.                 card:
  1224.                   type: vertical-stack
  1225.                   cards:
  1226.                     - type: picture-entity
  1227.                       entity: camera.vorderseite
  1228.                       camera_view: live
  1229.                     - type: entities
  1230.                       card_mod:
  1231.                         class: content
  1232.                       entities:
  1233.                         - entity: binary_sensor.presence_47
  1234.                           secondary_info: last-changed
  1235.                           name: Bewegung Eingang
  1236.                         - entity: sensor.carport_temperature_2
  1237.                           name: Temperatur
  1238.                     - type: custom:mini-graph-card
  1239.                       entities:
  1240.                         - entity: sensor.carport_temperature_2
  1241.                       line_width: 6
  1242.                       hour24: true
  1243.                       group: true
  1244.                       lign_icon: left
  1245.                       align_state: right
  1246.                       align_header: left
  1247.                       hours_to_show: 24
  1248.                       show:
  1249.                         fill: fade
  1250.                         icon: false
  1251.                         name: false
  1252.                         state: false
  1253.                         name_adaptive_color: false
  1254.                         labels: hover
  1255.                         legend: false
  1256.                       tap_action:
  1257.                         action: none
  1258.             show_entity_picture: true
  1259.             styles:
  1260.               card:
  1261.                 - font-family: Sf Display
  1262.                 - border-radius: var(--custom-button-card-border-radius)
  1263.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1264.                 - transition: none
  1265.                 - padding: 10%
  1266.               grid:
  1267.                 - grid-template-areas: '"i" "n" "s"'
  1268.                 - grid-template-columns: 1fr
  1269.                 - grid-template-rows: 1fr min-content min-content
  1270.               name:
  1271.                 - justify-self: start
  1272.                 - padding-left: 7px
  1273.                 - font-weight: bold
  1274.                 - font-family: SF Display
  1275.                 - font-size: 14px
  1276.               img_cell:
  1277.                 - justify-content: start
  1278.                 - padding-left: 5px
  1279.                 - padding-top: 10px
  1280.                 - align-items: start
  1281.                 - margin: none
  1282.               state:
  1283.                 - justify-self: start
  1284.                 - font-color: red
  1285.                 - padding-left: 7px
  1286.                 - padding-bottom: 10px
  1287.                 - text-transform: capitalize
  1288.                 - font-family: SF Display
  1289.                 - font-size: 10px
  1290.               icon:
  1291.                 - width: 40%
  1292.             state:
  1293.               - value: 'on'
  1294.                 entity_picture: \local\img\icons8-außenkamera-48.png
  1295.                 color: rgba(255,255,255,0.9)
  1296.               - value: idle
  1297.                 entity_picture: \local\img\icons8-außenkamera-48.png
  1298.                 color: rgba(65,65,63,0.8)
  1299.                 styles:
  1300.                   card:
  1301.                     - filter: opacity(50%)
  1302.                   icon:
  1303.                     - filter: grayscale(100%)
  1304.           - type: custom:button-card
  1305.             entity: alarm_control_panel.home
  1306.             aspect_ratio: 1
  1307.             show_title: false
  1308.             tap_action:
  1309.               action: fire-dom-event
  1310.               browser_mod:
  1311.                 command: popup
  1312.                 title: Alarm
  1313.                 style:
  1314.                   hui-vertical-stack-card: null
  1315.                   $hui-entities-card$: |
  1316.                    #states {
  1317.                       padding-top: 0.5em;
  1318.                       padding-bottom: 1.2em;
  1319.                     }
  1320.                 card:
  1321.                   type: vertical-stack
  1322.                   cards:
  1323.                     - type: custom:alarmo-card
  1324.                       entity: alarm_control_panel.home
  1325.                       keep_keypad_visible: true
  1326.             show_entity_picture: true
  1327.             color_type: card
  1328.             show_state: true
  1329.             styles:
  1330.               card:
  1331.                 - font-family: Sf Display
  1332.                 - border-radius: var(--custom-button-card-border-radius)
  1333.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1334.                 - transition: none
  1335.                 - padding: 10%
  1336.               grid:
  1337.                 - grid-template-areas: '"i" "n" "s"'
  1338.                 - grid-template-columns: 1fr
  1339.                 - grid-template-rows: 1fr min-content min-content
  1340.               name:
  1341.                 - justify-self: start
  1342.                 - padding-left: 7px
  1343.                 - font-weight: bold
  1344.                 - font-family: SF Display
  1345.                 - font-size: 14px
  1346.               img_cell:
  1347.                 - justify-content: start
  1348.                 - padding-left: 5px
  1349.                 - padding-top: 10px
  1350.                 - align-items: start
  1351.                 - margin: none
  1352.               state:
  1353.                 - justify-self: start
  1354.                 - font-color: red
  1355.                 - padding-left: 7px
  1356.                 - padding-bottom: 10px
  1357.                 - text-transform: capitalize
  1358.                 - font-family: SF Display
  1359.                 - font-size: 10px
  1360.               icon:
  1361.                 - width: 40%
  1362.             state:
  1363.               - value: armed_away
  1364.                 entity_picture: \local\img\icons8-gesichert-durch-alarmanlage-48.png
  1365.                 color: rgba(255,255,255,0.9)
  1366.               - value: armed_home
  1367.                 entity_picture: \local\img\icons8-gesichert-durch-alarmanlage-48.png
  1368.                 color: rgba(255,255,255,0.9)
  1369.               - value: pending
  1370.                 entity_picture: \local\img\icons8-gesichert-durch-alarmanlage-48.png
  1371.                 color: rgba(255,255,255,0.9)
  1372.               - value: triggered
  1373.                 entity_picture: \local\img\icons8-gesichert-durch-alarmanlage-48.png
  1374.                 color: rgba(255,255,255,0.9)
  1375.               - value: arming
  1376.                 entity_picture: \local\img\icons8-gesichert-durch-alarmanlage-48.png
  1377.               - value: disarmed
  1378.                 entity_picture: \local\img\icons8-gesichert-durch-alarmanlage-48.png
  1379.                 color: rgba(65,65,63,0.8)
  1380.                 styles:
  1381.                   card:
  1382.                     - filter: opacity(50%)
  1383.                   icon:
  1384.                     - filter: grayscale(100%)
  1385.         title: Aussenbereich
  1386.         columns: 2
  1387.         view_layout:
  1388.           grid-area: aussen
  1389.       - type: grid
  1390.         cards:
  1391.           - type: custom:button-card
  1392.             entity: media_player.wohnzimmer_2_2
  1393.             aspect_ratio: 1
  1394.             tap_action:
  1395.               action: fire-dom-event
  1396.               browser_mod:
  1397.                 command: popup
  1398.                 title: Sonos
  1399.                 card:
  1400.                   type: custom:media_player-popup-card
  1401.                   fullscreen: false
  1402.                   sliderWidth: 130px
  1403.                   sliderHeight: 320px
  1404.                   borderRadius: 1.7em
  1405.                   sliderColor: '#c7c7c7'
  1406.                   sliderTrackColor: rgba(25, 25, 25, 0.9)
  1407.                   entity: media_player.wohnzimmer_2_2
  1408.                   actions:
  1409.                     - service: media_player.media_previous_track
  1410.                       service_data:
  1411.                         entity_id: this
  1412.                       name: previous
  1413.                       icon: mdi:skip-previous
  1414.                     - service: media_player.media_play_pause
  1415.                       service_data:
  1416.                         entity_id: this
  1417.                       name: play/pause
  1418.                       icon: mdi:play-pause
  1419.                     - service: media_player.media_next_track
  1420.                       service_data:
  1421.                         entity_id: this
  1422.                       name: next
  1423.                       icon: mdi:skip-next
  1424.             name: Sonos
  1425.             color_type: card
  1426.             show_state: false
  1427.             show_entity_picture: true
  1428.             styles:
  1429.               card:
  1430.                 - font-family: Sf Display
  1431.                 - border-radius: var(--custom-button-card-border-radius)
  1432.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1433.                 - transition: none
  1434.                 - padding: 10%
  1435.               grid:
  1436.                 - grid-template-areas: '"i" "n" "s"'
  1437.                 - grid-template-columns: 1fr
  1438.                 - grid-template-rows: 1fr min-content min-content
  1439.               name:
  1440.                 - justify-self: start
  1441.                 - padding-left: 7px
  1442.                 - font-weight: bold
  1443.                 - padding-bottom: 25px
  1444.                 - font-family: SF Display
  1445.                 - font-size: 14px
  1446.               img_cell:
  1447.                 - justify-content: start
  1448.                 - padding-left: 5px
  1449.                 - padding-top: 10px
  1450.                 - align-items: start
  1451.                 - margin: none
  1452.               state:
  1453.                 - justify-self: start
  1454.                 - font-color: red
  1455.                 - padding-left: 7px
  1456.                 - padding-bottom: 10px
  1457.                 - text-transform: capitalize
  1458.                 - font-family: SF Display
  1459.                 - font-size: 10px
  1460.               icon:
  1461.                 - width: 40%
  1462.               custom_fields:
  1463.                 Playing:
  1464.                   - align-self: start
  1465.                   - position: absolute
  1466.                   - left: 55%
  1467.                   - top: 10%
  1468.                   - width: 40%
  1469.                   - font-size: 18px
  1470.                   - font-weight: 900
  1471.                   - font-family: SF Display
  1472.                   - text-transform: capitalize
  1473.             state:
  1474.               - value: playing
  1475.                 entity_picture: \local\img\icons8-sonos-speaker-50.png
  1476.                 color: rgba(255,255,255,0.9)
  1477.               - value: paused
  1478.                 entity_picture: \local\img\icons8-sonos-speaker-50.png
  1479.                 color: rgba(65,65,63,0.8)
  1480.                 styles:
  1481.                   card:
  1482.                     - filter: opacity(50%)
  1483.                   icon:
  1484.                     - filter: grayscale(100%)
  1485.           - type: custom:button-card
  1486.             entity: switch.xbox_one
  1487.             aspect_ratio: 1
  1488.             color_type: card
  1489.             show_state: true
  1490.             name: XBox
  1491.             show_title: false
  1492.             tap_action:
  1493.               action: toggle
  1494.             hold_action:
  1495.               action: fire-dom-event
  1496.               browser_mod:
  1497.                 command: popup
  1498.                 title: Xbox One
  1499.                 card:
  1500.                   type: custom:stack-in-card
  1501.                   cards:
  1502.                     - entity: media_player.xboxone
  1503.                       type: custom:mini-media-player
  1504.                       artwork: material
  1505.                       icon: mdi:microsoft-xbox-controller
  1506.                       name: Spiel
  1507.                       group: true
  1508.                       scale: 0.8
  1509.                       hide:
  1510.                         volume: true
  1511.                         controls: true
  1512.                         power: true
  1513.                         info: false
  1514.             show_entity_picture: true
  1515.             styles:
  1516.               card:
  1517.                 - font-family: Sf Display
  1518.                 - border-radius: var(--custom-button-card-border-radius)
  1519.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1520.                 - transition: none
  1521.                 - padding: 10%
  1522.               grid:
  1523.                 - grid-template-areas: '"i" "n" "s"'
  1524.                 - grid-template-columns: 1fr
  1525.                 - grid-template-rows: 1fr min-content min-content
  1526.               name:
  1527.                 - justify-self: start
  1528.                 - padding-left: 7px
  1529.                 - font-weight: bold
  1530.                 - font-family: SF Display
  1531.                 - font-size: 14px
  1532.               img_cell:
  1533.                 - justify-content: start
  1534.                 - padding-left: 5px
  1535.                 - padding-top: 10px
  1536.                 - align-items: start
  1537.                 - margin: none
  1538.               state:
  1539.                 - justify-self: start
  1540.                 - font-color: red
  1541.                 - padding-left: 7px
  1542.                 - padding-bottom: 10px
  1543.                 - text-transform: capitalize
  1544.                 - font-family: SF Display
  1545.                 - font-size: 10px
  1546.               icon:
  1547.                 - width: 40%
  1548.             state:
  1549.               - value: 'on'
  1550.                 color: rgba(255,255,255,0.9)
  1551.                 entity_picture: \local\img\icons8-xbox-48.png
  1552.               - value: 'off'
  1553.                 color: rgba(65,65,63,0.8)
  1554.                 entity_picture: \local\img\icons8-xbox-48.png
  1555.                 styles:
  1556.                   card:
  1557.                     - filter: opacity(50%)
  1558.                   icon:
  1559.                     - filter: grayscale(100%)
  1560.           - type: custom:button-card
  1561.             entity: switch.sky_q
  1562.             show_title: false
  1563.             aspect_ratio: 1
  1564.             tap_action:
  1565.               action: toggle
  1566.             hold_action:
  1567.               action: fire-dom-event
  1568.               browser_mod:
  1569.                 command: popup
  1570.                 title: Sky Q
  1571.                 card:
  1572.                   type: custom:stack-in-card
  1573.                   cards:
  1574.                     - entity: media_player.sky_q
  1575.                       type: custom:mini-media-player
  1576.                       artwork: artwork
  1577.                       icon: mdi:television-classic
  1578.                       name: SKY Q
  1579.                       group: true
  1580.                       scale: 1
  1581.                       hide:
  1582.                         volume: true
  1583.                         controls: true
  1584.                         power: true
  1585.                         info: false
  1586.             show_entity_picture: true
  1587.             color_type: card
  1588.             show_state: true
  1589.             styles:
  1590.               card:
  1591.                 - font-family: Sf Display
  1592.                 - border-radius: var(--custom-button-card-border-radius)
  1593.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1594.                 - transition: none
  1595.                 - padding: 10%
  1596.               grid:
  1597.                 - grid-template-areas: '"i" "n" "s"'
  1598.                 - grid-template-columns: 1fr
  1599.                 - grid-template-rows: 1fr min-content min-content
  1600.               name:
  1601.                 - justify-self: start
  1602.                 - padding-left: 7px
  1603.                 - font-weight: bold
  1604.                 - font-family: SF Display
  1605.                 - font-size: 14px
  1606.               img_cell:
  1607.                 - justify-content: start
  1608.                 - padding-left: 5px
  1609.                 - padding-top: 10px
  1610.                 - align-items: start
  1611.                 - margin: none
  1612.               state:
  1613.                 - justify-self: start
  1614.                 - font-color: red
  1615.                 - padding-left: 7px
  1616.                 - padding-bottom: 10px
  1617.                 - text-transform: capitalize
  1618.                 - font-family: SF Display
  1619.                 - font-size: 10px
  1620.               icon:
  1621.                 - width: 40%
  1622.             state:
  1623.               - value: 'on'
  1624.                 color: rgba(255,255,255,0.9)
  1625.                 entity_picture: \local\img\icons8-sky-48.png
  1626.               - value: 'off'
  1627.                 color: rgba(65,65,63,0.8)
  1628.                 entity_picture: \local\img\icons8-sky-48.png
  1629.                 styles:
  1630.                   card:
  1631.                     - filter: opacity(50%)
  1632.                   icon:
  1633.                     - filter: grayscale(100%)
  1634.           - type: custom:swipe-card
  1635.             title: Lieblingssender
  1636.             aspect_ratio: 1
  1637.             show_title: false
  1638.             parameters:
  1639.               effect: coverflow
  1640.               grabCursor: true
  1641.               centeredSlides: true
  1642.               slidesPerView: auto
  1643.               coverflowEffect:
  1644.                 rotate: 50
  1645.                 stretch: 0
  1646.                 depth: 100
  1647.                 modifier: 1
  1648.                 slideShadows: true
  1649.               pagination:
  1650.                 type: none
  1651.             cards:
  1652.               - type: custom:button-card
  1653.                 entity: script.1633693084602
  1654.                 entity_picture: \local\img\icon_512-80s.png
  1655.                 aspect_ratio: 1/1
  1656.                 tap_action:
  1657.                   action: call-service
  1658.                   service: script.1633693084602
  1659.                 name: 80s80s
  1660.                 color_type: card
  1661.                 show_state: false
  1662.                 show_name: false
  1663.                 show_entity_picture: true
  1664.                 styles:
  1665.                   card:
  1666.                     - font-family: Sf Display
  1667.                     - border-radius: var(--custom-button-card-border-radius)
  1668.                     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1669.                     - transition: none
  1670.                     - padding: 10%
  1671.                   grid:
  1672.                     - grid-template-areas: '"i" "n" "s"'
  1673.                     - grid-template-columns: 1fr
  1674.                     - grid-template-rows: 1fr min-content min-content
  1675.                   name:
  1676.                     - justify-self: start
  1677.                     - padding-left: 7px
  1678.                     - font-weight: bold
  1679.                     - padding-bottom: 25px
  1680.                     - font-family: SF Display
  1681.                     - font-size: 14px
  1682.                   img_cell:
  1683.                     - justify-content: start
  1684.                     - padding-left: 0px
  1685.                     - padding-top: 0px
  1686.                     - align-items: start
  1687.                     - margin: none
  1688.                   state:
  1689.                     - justify-self: start
  1690.                     - font-color: red
  1691.                     - padding-left: 0px
  1692.                     - padding-bottom: 0px
  1693.                     - text-transform: capitalize
  1694.                     - font-family: SF Display
  1695.                     - font-size: 10px
  1696.                   icon:
  1697.                     - width: 100%
  1698.                     - border-radius: var(--custom-button-card-border-radius)
  1699.               - type: custom:button-card
  1700.                 entity: script.ndr2
  1701.                 entity_picture: \local\img\icon_512-ndr2.png
  1702.                 aspect_ratio: 1/1
  1703.                 tap_action:
  1704.                   action: call-service
  1705.                   service: script.ndr2
  1706.                 name: NDR 2
  1707.                 color_type: card
  1708.                 show_state: false
  1709.                 show_name: false
  1710.                 show_entity_picture: true
  1711.                 styles:
  1712.                   card:
  1713.                     - font-family: Sf Display
  1714.                     - border-radius: var(--custom-button-card-border-radius)
  1715.                     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1716.                     - transition: none
  1717.                     - padding: 10%
  1718.                   grid:
  1719.                     - grid-template-areas: '"i" "n" "s"'
  1720.                     - grid-template-columns: 1fr
  1721.                     - grid-template-rows: 1fr min-content min-content
  1722.                   name:
  1723.                     - justify-self: start
  1724.                     - padding-left: 7px
  1725.                     - font-weight: bold
  1726.                     - padding-bottom: 25px
  1727.                     - font-family: SF Display
  1728.                     - font-size: 14px
  1729.                   img_cell:
  1730.                     - justify-content: start
  1731.                     - padding-left: 0px
  1732.                     - padding-top: 0px
  1733.                     - align-items: start
  1734.                     - margin: none
  1735.                   state:
  1736.                     - justify-self: start
  1737.                     - font-color: red
  1738.                     - padding-left: 0px
  1739.                     - padding-bottom: 0px
  1740.                     - text-transform: capitalize
  1741.                     - font-family: SF Display
  1742.                     - font-size: 10px
  1743.                   icon:
  1744.                     - width: 100%
  1745.                     - border-radius: var(--custom-button-card-border-radius)
  1746.               - type: custom:button-card
  1747.                 entity: script.radio_hamburg
  1748.                 entity_picture: \local\img\icon_512-RHH.png
  1749.                 aspect_ratio: 1/1
  1750.                 tap_action:
  1751.                   action: call-service
  1752.                   service: script.radio_hamburg
  1753.                 name: Radio Hamburg
  1754.                 color_type: card
  1755.                 show_state: false
  1756.                 show_name: false
  1757.                 show_entity_picture: true
  1758.                 styles:
  1759.                   card:
  1760.                     - font-family: Sf Display
  1761.                     - border-radius: var(--custom-button-card-border-radius)
  1762.                     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1763.                     - transition: none
  1764.                     - padding: 10%
  1765.                   grid:
  1766.                     - grid-template-areas: '"i" "n" "s"'
  1767.                     - grid-template-columns: 1fr
  1768.                     - grid-template-rows: 1fr min-content min-content
  1769.                   name:
  1770.                     - justify-self: start
  1771.                     - padding-left: 7px
  1772.                     - font-weight: bold
  1773.                     - padding-bottom: 25px
  1774.                     - font-family: SF Display
  1775.                     - font-size: 14px
  1776.                   img_cell:
  1777.                     - justify-content: start
  1778.                     - padding-left: 0px
  1779.                     - padding-top: 0px
  1780.                     - align-items: start
  1781.                     - margin: none
  1782.                   state:
  1783.                     - justify-self: start
  1784.                     - font-color: red
  1785.                     - padding-left: 0px
  1786.                     - padding-bottom: 0px
  1787.                     - text-transform: capitalize
  1788.                     - font-family: SF Display
  1789.                     - font-size: 10px
  1790.                   icon:
  1791.                     - width: 100%
  1792.                     - border-radius: var(--custom-button-card-border-radius)
  1793.               - type: custom:button-card
  1794.                 entity: script.n_joy
  1795.                 entity_picture: \local\img\icon_512-Njoy.png
  1796.                 aspect_ratio: 1/1
  1797.                 tap_action:
  1798.                   action: call-service
  1799.                   service: script.n_joy
  1800.                 name: Radio Hamburg
  1801.                 color_type: card
  1802.                 show_state: false
  1803.                 show_name: false
  1804.                 show_entity_picture: true
  1805.                 styles:
  1806.                   card:
  1807.                     - font-family: Sf Display
  1808.                     - border-radius: var(--custom-button-card-border-radius)
  1809.                     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1810.                     - transition: none
  1811.                     - padding: 10%
  1812.                   grid:
  1813.                     - grid-template-areas: '"i" "n" "s"'
  1814.                     - grid-template-columns: 1fr
  1815.                     - grid-template-rows: 1fr min-content min-content
  1816.                   name:
  1817.                     - justify-self: start
  1818.                     - padding-left: 7px
  1819.                     - font-weight: bold
  1820.                     - padding-bottom: 25px
  1821.                     - font-family: SF Display
  1822.                     - font-size: 14px
  1823.                   img_cell:
  1824.                     - justify-content: start
  1825.                     - padding-left: 0px
  1826.                     - padding-top: 0px
  1827.                     - align-items: start
  1828.                     - margin: none
  1829.                   state:
  1830.                     - justify-self: start
  1831.                     - font-color: red
  1832.                     - padding-left: 0px
  1833.                     - padding-bottom: 0px
  1834.                     - text-transform: capitalize
  1835.                     - font-family: SF Display
  1836.                     - font-size: 10px
  1837.                   icon:
  1838.                     - width: 100%
  1839.                     - border-radius: var(--custom-button-card-border-radius)
  1840.               - type: custom:button-card
  1841.                 entity: script.spotify_mixtape
  1842.                 entity_picture: \local\img\icons8-spotify.PNG
  1843.                 aspect_ratio: 1/1
  1844.                 tap_action:
  1845.                   action: call-service
  1846.                   service: script.spotify_mixtape
  1847.                 name: Spotify Mixtape
  1848.                 color_type: card
  1849.                 show_state: false
  1850.                 show_name: false
  1851.                 show_entity_picture: true
  1852.                 styles:
  1853.                   card:
  1854.                     - font-family: Sf Display
  1855.                     - border-radius: var(--custom-button-card-border-radius)
  1856.                     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1857.                     - transition: none
  1858.                     - padding: 10%
  1859.                   grid:
  1860.                     - grid-template-areas: '"i" "n" "s"'
  1861.                     - grid-template-columns: 1fr
  1862.                     - grid-template-rows: 1fr min-content min-content
  1863.                   name:
  1864.                     - justify-self: start
  1865.                     - padding-left: 7px
  1866.                     - font-weight: bold
  1867.                     - padding-bottom: 25px
  1868.                     - font-family: SF Display
  1869.                     - font-size: 14px
  1870.                   img_cell:
  1871.                     - justify-content: start
  1872.                     - padding-left: 0px
  1873.                     - padding-top: 0px
  1874.                     - align-items: start
  1875.                     - margin: none
  1876.                   state:
  1877.                     - justify-self: start
  1878.                     - font-color: red
  1879.                     - padding-left: 0px
  1880.                     - padding-bottom: 0px
  1881.                     - text-transform: capitalize
  1882.                     - font-family: SF Display
  1883.                     - font-size: 10px
  1884.                   icon:
  1885.                     - width: 100%
  1886.                     - border-radius: var(--custom-button-card-border-radius)
  1887.               - type: custom:button-card
  1888.                 entity: script.fcsp_playlist
  1889.                 entity_picture: \local\img\icons8-fcsp.PNG
  1890.                 aspect_ratio: 1/1
  1891.                 tap_action:
  1892.                   action: call-service
  1893.                   service: script.fcsp_playlist
  1894.                 name: FCSP Playlist
  1895.                 color_type: card
  1896.                 show_state: false
  1897.                 show_name: false
  1898.                 show_entity_picture: true
  1899.                 styles:
  1900.                   card:
  1901.                     - font-family: Sf Display
  1902.                     - border-radius: var(--custom-button-card-border-radius)
  1903.                     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1904.                     - transition: none
  1905.                     - padding: 10%
  1906.                   grid:
  1907.                     - grid-template-areas: '"i" "n" "s"'
  1908.                     - grid-template-columns: 1fr
  1909.                     - grid-template-rows: 1fr min-content min-content
  1910.                   name:
  1911.                     - justify-self: start
  1912.                     - padding-left: 7px
  1913.                     - font-weight: bold
  1914.                     - padding-bottom: 25px
  1915.                     - font-family: SF Display
  1916.                     - font-size: 14px
  1917.                   img_cell:
  1918.                     - justify-content: start
  1919.                     - padding-left: 0px
  1920.                     - padding-top: 0px
  1921.                     - align-items: start
  1922.                     - margin: none
  1923.                   state:
  1924.                     - justify-self: start
  1925.                     - font-color: red
  1926.                     - padding-left: 0px
  1927.                     - padding-bottom: 0px
  1928.                     - text-transform: capitalize
  1929.                     - font-family: SF Display
  1930.                     - font-size: 10px
  1931.                   icon:
  1932.                     - width: 100%
  1933.                     - border-radius: var(--custom-button-card-border-radius)
  1934.               - type: custom:button-card
  1935.                 entity: script.mukke
  1936.                 entity_picture: \local\img\icons8-mukke.PNG
  1937.                 aspect_ratio: 1/1
  1938.                 tap_action:
  1939.                   action: call-service
  1940.                   service: script.mukke
  1941.                 name: Mukke
  1942.                 color_type: card
  1943.                 show_state: false
  1944.                 show_name: false
  1945.                 show_entity_picture: true
  1946.                 styles:
  1947.                   card:
  1948.                     - font-family: Sf Display
  1949.                     - border-radius: var(--custom-button-card-border-radius)
  1950.                     - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1951.                     - transition: none
  1952.                     - padding: 10%
  1953.                   grid:
  1954.                     - grid-template-areas: '"i" "n" "s"'
  1955.                     - grid-template-columns: 1fr
  1956.                     - grid-template-rows: 1fr min-content min-content
  1957.                   name:
  1958.                     - justify-self: start
  1959.                     - padding-left: 7px
  1960.                     - font-weight: bold
  1961.                     - padding-bottom: 25px
  1962.                     - font-family: SF Display
  1963.                     - font-size: 14px
  1964.                   img_cell:
  1965.                     - justify-content: start
  1966.                     - padding-left: 0px
  1967.                     - padding-top: 0px
  1968.                     - align-items: start
  1969.                     - margin: none
  1970.                   state:
  1971.                     - justify-self: start
  1972.                     - font-color: red
  1973.                     - padding-left: 0px
  1974.                     - padding-bottom: 0px
  1975.                     - text-transform: capitalize
  1976.                     - font-family: SF Display
  1977.                     - font-size: 10px
  1978.                   icon:
  1979.                     - width: 100%
  1980.                     - border-radius: var(--custom-button-card-border-radius)
  1981.             styles:
  1982.               card:
  1983.                 - font-family: Sf Display
  1984.                 - border-radius: var(--custom-button-card-border-radius)
  1985.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  1986.                 - transition: none
  1987.                 - padding: 10%
  1988.               grid:
  1989.                 - grid-template-areas: '"i" "n" "s"'
  1990.                 - grid-template-columns: 1fr
  1991.                 - grid-template-rows: 1fr min-content min-content
  1992.               name:
  1993.                 - justify-self: start
  1994.                 - padding-left: 7px
  1995.                 - font-weight: bold
  1996.                 - font-family: SF Display
  1997.                 - font-size: 14px
  1998.               img_cell:
  1999.                 - justify-content: start
  2000.                 - padding-left: 5px
  2001.                 - padding-top: 10px
  2002.                 - align-items: start
  2003.                 - margin: none
  2004.               state:
  2005.                 - justify-self: start
  2006.                 - font-color: red
  2007.                 - padding-left: 7px
  2008.                 - padding-bottom: 10px
  2009.                 - text-transform: capitalize
  2010.                 - font-family: SF Display
  2011.                 - font-size: 10px
  2012.         title: Media
  2013.         columns: 2
  2014.         view_layout:
  2015.           grid-area: media
  2016.       - type: grid
  2017.         cards:
  2018.           - type: custom:button-card
  2019.             entity: person.dirk_albrecht
  2020.             aspect_ratio: 1
  2021.             color_type: card
  2022.             name: Dirk
  2023.             triggers_update:
  2024.              - sensor.dirk_last_changed
  2025.               - sensor.time
  2026.             variables:
  2027.               retain: sensor.dirk_last_changed
  2028.             show_state: true
  2029.             tap_action:
  2030.               action: fire-dom-event
  2031.               browser_mod:
  2032.                 command: popup
  2033.                 title: Dirk
  2034.                 style:
  2035.                   hui-vertical-stack-card:
  2036.                     $hui-history-graph-card$: |
  2037.                      .content {
  2038.                         padding: 0.2em 1.7em 1.2em 1.7em !important;
  2039.                       }
  2040.                     $: |
  2041.                      button-card {
  2042.                         align-self: center;
  2043.                         padding: 0.2em 0 2.3em 0;
  2044.                       }
  2045.                     $hui-map-card:
  2046.                       $: |
  2047.                        mwc-icon-button {
  2048.                           color: var(--primary-color);
  2049.                         }
  2050.                         ha-card {
  2051.                           border-radius: 0;
  2052.                           animation: border 1s forwards;
  2053.                         }
  2054.                         @keyframes border {
  2055.                           0%, 100% {
  2056.                             border-top: 2px solid #1a1a1a;
  2057.                           }
  2058.                         }
  2059.                       $ha-map$: |
  2060.                        #map {
  2061.                           background-color: #191919 !important;
  2062.                         }
  2063.                         .leaflet-control-attribution {
  2064.                           display: none;
  2065.                         }
  2066.                         .leaflet-bar a {
  2067.                           background-color: rgba(47, 51, 51, 0.9) !important;
  2068.                           color: #9da0a2 !important;
  2069.                         }
  2070.                         a.leaflet-control-zoom-in {
  2071.                           border-bottom: 1px solid #181818 !important;
  2072.                         }
  2073.                         .leaflet-pane.leaflet-tile-pane {
  2074.                           filter: contrast(85%);
  2075.                         }
  2076.                 card:
  2077.                   type: vertical-stack
  2078.                   cards:
  2079.                     - type: entities
  2080.                       card_mod:
  2081.                         class: content
  2082.                       entities:
  2083.                         - entity: person.dirk_albrecht
  2084.                           secondary_info: last-changed
  2085.                     - type: history-graph
  2086.                       entities:
  2087.                         - entity: person.dirk_albrecht
  2088.                     - type: glance
  2089.                       show_state: false
  2090.                       entities:
  2091.                         - entity: device_tracker.iphone_von_dirk
  2092.                           name: Router
  2093.                           icon: mdi:wifi
  2094.                           style: |
  2095.                            state-badge {
  2096.                               color: {{ '#3182b7' if is_state(config.entity, 'home') else '#3c3f3f' }};
  2097.                             }
  2098.                         - entity: sensor.iphone_von_dirk_connection_type
  2099.                           name: Bluetooth
  2100.                           icon: mdi:bluetooth
  2101.                           style: |
  2102.                            state-badge {
  2103.                               color: {{ '#3182b7' if is_state(config.entity, 'home') else '#3c3f3f' }};
  2104.                             }
  2105.                     - type: custom:button-card
  2106.                       name: Ton abspielen
  2107.                       icon: mdi:volume-high
  2108.                       tap_action:
  2109.                         action: call-service
  2110.                         service: notify.mobile_app_iphone_von_dirk
  2111.                         service_data:
  2112.                           title: Wo ist mein Iphone
  2113.                           message: Hier ist mein Iphone
  2114.                           data:
  2115.                             push:
  2116.                               sound:
  2117.                                 name: findmy.wav
  2118.                                 critical: 1
  2119.                                 volume: 1
  2120.                     - type: map
  2121.                       default_zoom: 16
  2122.                       dark_mode: true
  2123.                       entities:
  2124.                        - device_tracker.iphone_von_dirk
  2125.             custom_fields:
  2126.               circle: |
  2127.                [[[
  2128.                  if (entity) {
  2129.                     let time = c => {
  2130.                       let s = (c/1e3), m = (c/6e4), h = (c/36e5), d = (c/864e5);
  2131.                       return s < 60 ? parseInt(s) + 's' : m < 60 ? parseInt(m) + 'm' : h < 24 ? parseInt(h) + 'h' : parseInt(d) + 'd';
  2132.                     };
  2133.                     let last_changed = states[variables.retain] == null || states[variables.retain].state == 'unavailable'
  2134.                         ? time(Date.now() - Date.parse(states[entity.entity_id].last_changed))
  2135.                         : time(Date.now() - Date.parse(states[variables.retain].state)),
  2136.                       stroke = variables.state === 'home' ? 'rgba(255,0,0,1.0)' : 'none',
  2137.                       fill = variables.state === 'not_home' ? 'rgba(255,0,0,1.0)' : 'none';
  2138.                  const radius = 100;
  2139.                  const circumference = radius * 2 * Math.PI;
  2140.                  return `<svg viewBox="0 0 50 50"><style>circle { transform: rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray: ${circumference};stroke-dashoffset: ${circumference - last_changed / 100 * circumference};}
  2141.                  tspan {font-size: 10px;}</style> <circle cx="25" cy="25" r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08" style="
  2142.                  transform: rotate(-90deg); transform-origin: 50% 50%;" />
  2143.                  <text x="50%" y="54%" fill="#8d8e90" font-size="11" text-anchor="middle" alignment-baseline="middle" dominant-baseline="middle">${last_changed}</text></svg>`; }
  2144.                 ]]]
  2145.             show_entity_picture: true
  2146.             styles:
  2147.               card:
  2148.                 - font-family: Sf Display
  2149.                 - border-radius: var(--custom-button-card-border-radius)
  2150.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  2151.                 - transition: none
  2152.                 - padding: 10%
  2153.               grid:
  2154.                 - grid-template-areas: '"i" "n" "s"'
  2155.                 - grid-template-columns: 1fr
  2156.                 - grid-template-rows: 1fr min-content min-content
  2157.               name:
  2158.                 - justify-self: start
  2159.                 - padding-left: 7px
  2160.                 - font-weight: bold
  2161.                 - font-family: SF Display
  2162.                 - font-size: 14px
  2163.               img_cell:
  2164.                 - justify-content: start
  2165.                 - padding-left: 5px
  2166.                 - padding-top: 10px
  2167.                 - align-items: start
  2168.                 - margin: none
  2169.               state:
  2170.                 - justify-self: start
  2171.                 - font-color: red
  2172.                 - padding-left: 7px
  2173.                 - padding-bottom: 10px
  2174.                 - text-transform: capitalize
  2175.                 - font-family: SF Display
  2176.                 - font-size: 11px
  2177.               icon:
  2178.                 - width: 40%
  2179.                 - clip-path: circle()
  2180.               custom_fields:
  2181.                 circle:
  2182.                   - align-self: start
  2183.                   - position: absolute
  2184.                   - left: 55%
  2185.                   - top: 10%
  2186.                   - width: 40%
  2187.                   - font-size: 18px
  2188.                   - font-weight: 900
  2189.                   - font-family: SF Display
  2190.                   - text-transform: capitalize
  2191.             state:
  2192.               - value: home
  2193.                 color: rgba(255,255,255,0.9)
  2194.                 entity_picture: /api/image/serve/b7f3b1e168629ad56234f2b585f907c7/512x512
  2195.               - value: not_home
  2196.                 color: rgba(65,65,63,0.8)
  2197.                 entity_picture: /api/image/serve/b7f3b1e168629ad56234f2b585f907c7/512x512
  2198.                 styles:
  2199.                   card:
  2200.                     - filter: opacity(50%)
  2201.                   icon:
  2202.                     - filter: grayscale(100%)
  2203.           - type: custom:button-card
  2204.             entity: person.christina_wolk
  2205.             aspect_ratio: 1
  2206.             color_type: card
  2207.             name: Christina
  2208.             triggers_update:
  2209.              - sensor.christina_last_changed
  2210.               - sensor.time
  2211.             variables:
  2212.               retain: sensor.christina_last_changed
  2213.             show_state: true
  2214.             tap_action:
  2215.               action: fire-dom-event
  2216.               browser_mod:
  2217.                 command: popup
  2218.                 title: Dirk
  2219.                 style:
  2220.                   hui-vertical-stack-card:
  2221.                     $hui-history-graph-card$: |
  2222.                      .content {
  2223.                         padding: 0.2em 1.7em 1.2em 1.7em !important;
  2224.                       }
  2225.                     $: |
  2226.                      button-card {
  2227.                         align-self: center;
  2228.                         padding: 0.2em 0 2.3em 0;
  2229.                       }
  2230.                     $hui-map-card:
  2231.                       $: |
  2232.                        mwc-icon-button {
  2233.                           color: var(--primary-color);
  2234.                         }
  2235.                         ha-card {
  2236.                           border-radius: 0;
  2237.                           animation: border 1s forwards;
  2238.                         }
  2239.                         @keyframes border {
  2240.                           0%, 100% {
  2241.                             border-top: 2px solid #1a1a1a;
  2242.                           }
  2243.                         }
  2244.                       $ha-map$: |
  2245.                        #map {
  2246.                           background-color: #191919 !important;
  2247.                         }
  2248.                         .leaflet-control-attribution {
  2249.                           display: none;
  2250.                         }
  2251.                         .leaflet-bar a {
  2252.                           background-color: rgba(47, 51, 51, 0.9) !important;
  2253.                           color: #9da0a2 !important;
  2254.                         }
  2255.                         a.leaflet-control-zoom-in {
  2256.                           border-bottom: 1px solid #181818 !important;
  2257.                         }
  2258.                         .leaflet-pane.leaflet-tile-pane {
  2259.                           filter: contrast(85%);
  2260.                         }
  2261.                 card:
  2262.                   type: vertical-stack
  2263.                   cards:
  2264.                     - type: entities
  2265.                       card_mod:
  2266.                         class: content
  2267.                       entities:
  2268.                         - entity: person.christina_wolk
  2269.                           secondary_info: last-changed
  2270.                     - type: history-graph
  2271.                       entities:
  2272.                         - entity: person.christina_wolk
  2273.                     - type: glance
  2274.                       show_state: false
  2275.                       entities:
  2276.                         - entity: device_tracker.iphonevhristina_6
  2277.                           name: Router
  2278.                           icon: mdi:wifi
  2279.                           style: |
  2280.                            state-badge {
  2281.                               color: {{ '#3182b7' if is_state(config.entity, 'home') else '#3c3f3f' }};
  2282.                             }
  2283.                         - entity: device_tracker.iphonevhristina_6
  2284.                           name: Bluetooth
  2285.                           icon: mdi:bluetooth
  2286.                           style: |
  2287.                            state-badge {
  2288.                               color: {{ '#3182b7' if is_state(config.entity, 'home') else '#3c3f3f' }};
  2289.                             }
  2290.                     - type: custom:button-card
  2291.                       name: Ton abspielen
  2292.                       icon: mdi:volume-high
  2293.                       tap_action:
  2294.                         action: call-service
  2295.                         service: notify.mobile_app_iphone_von_dirk
  2296.                         service_data:
  2297.                           title: Wo ist mein Iphone
  2298.                           message: Hier ist mein Iphone
  2299.                           data:
  2300.                             push:
  2301.                               sound:
  2302.                                 name: findmy.wav
  2303.                                 critical: 1
  2304.                                 volume: 1
  2305.                     - type: map
  2306.                       default_zoom: 16
  2307.                       dark_mode: true
  2308.                       entities:
  2309.                        - device_tracker.iphonevhristina_5
  2310.             custom_fields:
  2311.               circle: |
  2312.                [[[
  2313.                  if (entity) {
  2314.                     let time = c => {
  2315.                       let s = (c/1e3), m = (c/6e4), h = (c/36e5), d = (c/864e5);
  2316.                       return s < 60 ? parseInt(s) + 's' : m < 60 ? parseInt(m) + 'm' : h < 24 ? parseInt(h) + 'h' : parseInt(d) + 'd';
  2317.                     };
  2318.                     let last_changed = states[variables.retain] == null || states[variables.retain].state == 'unavailable'
  2319.                         ? time(Date.now() - Date.parse(states[entity.entity_id].last_changed))
  2320.                         : time(Date.now() - Date.parse(states[variables.retain].state)),
  2321.                       stroke = variables.state === 'home' ? 'rgba(255,0,0,1.0)' : 'none',
  2322.                       fill = variables.state === 'not_home' ? 'rgba(255,0,0,1.0)' : 'none';
  2323.                  const radius = 100;
  2324.                  const circumference = radius * 2 * Math.PI;
  2325.                  return `<svg viewBox="0 0 50 50"><style>circle { transform: rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray: ${circumference};stroke-dashoffset: ${circumference - last_changed / 100 * circumference};}
  2326.                  tspan {font-size: 10px;}</style> <circle cx="25" cy="25" r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08" style="
  2327.                  transform: rotate(-90deg); transform-origin: 50% 50%;" />
  2328.                  <text x="50%" y="54%" fill="#8d8e90" font-size="11" text-anchor="middle" alignment-baseline="middle" dominant-baseline="middle">${last_changed}</text></svg>`; }
  2329.                 ]]]
  2330.             show_entity_picture: true
  2331.             styles:
  2332.               card:
  2333.                 - font-family: Sf Display
  2334.                 - border-radius: var(--custom-button-card-border-radius)
  2335.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  2336.                 - transition: none
  2337.                 - padding: 10%
  2338.               grid:
  2339.                 - grid-template-areas: '"i" "n" "s"'
  2340.                 - grid-template-columns: 1fr
  2341.                 - grid-template-rows: 1fr min-content min-content
  2342.               name:
  2343.                 - justify-self: start
  2344.                 - padding-left: 7px
  2345.                 - font-weight: bold
  2346.                 - font-family: SF Display
  2347.                 - font-size: 14px
  2348.               img_cell:
  2349.                 - justify-content: start
  2350.                 - padding-left: 5px
  2351.                 - padding-top: 10px
  2352.                 - align-items: start
  2353.                 - margin: none
  2354.               state:
  2355.                 - justify-self: start
  2356.                 - font-color: red
  2357.                 - padding-left: 7px
  2358.                 - padding-bottom: 10px
  2359.                 - text-transform: capitalize
  2360.                 - font-family: SF Display
  2361.                 - font-size: 11px
  2362.               icon:
  2363.                 - width: 40%
  2364.                 - clip-path: circle()
  2365.               custom_fields:
  2366.                 circle:
  2367.                   - align-self: start
  2368.                   - position: absolute
  2369.                   - left: 55%
  2370.                   - top: 10%
  2371.                   - width: 40%
  2372.                   - font-size: 18px
  2373.                   - font-weight: 900
  2374.                   - font-family: SF Display
  2375.                   - text-transform: capitalize
  2376.             state:
  2377.               - value: home
  2378.                 color: rgba(255,255,255,0.9)
  2379.                 entity_picture: /api/image/serve/36316d04d8443179c55b829589922249/512x512
  2380.               - value: not_home
  2381.                 color: rgba(65,65,63,0.8)
  2382.                 entity_picture: /api/image/serve/36316d04d8443179c55b829589922249/512x512
  2383.                 styles:
  2384.                   card:
  2385.                     - filter: opacity(50%)
  2386.                   icon:
  2387.                     - filter: grayscale(100%)
  2388.           - type: custom:button-card
  2389.             entity: person.mia_wolk
  2390.             aspect_ratio: 1
  2391.             color_type: card
  2392.             name: Mia
  2393.             triggers_update:
  2394.              - sensor.mia_last_changed
  2395.               - sensor.time
  2396.             variables:
  2397.               retain: sensor.mia_last_changed
  2398.             show_state: true
  2399.             custom_fields:
  2400.               circle: |
  2401.                [[[
  2402.                  if (entity) {
  2403.                     let time = c => {
  2404.                       let s = (c/1e3), m = (c/6e4), h = (c/36e5), d = (c/864e5);
  2405.                       return s < 60 ? parseInt(s) + 's' : m < 60 ? parseInt(m) + 'm' : h < 24 ? parseInt(h) + 'h' : parseInt(d) + 'd';
  2406.                     };
  2407.                     let last_changed = states[variables.retain] == null || states[variables.retain].state == 'unavailable'
  2408.                         ? time(Date.now() - Date.parse(states[entity.entity_id].last_changed))
  2409.                         : time(Date.now() - Date.parse(states[variables.retain].state)),
  2410.                       stroke = variables.state === 'home' ? 'rgba(255,0,0,1.0)' : 'none',
  2411.                       fill = variables.state === 'not_home' ? 'rgba(255,0,0,1.0)' : 'none';
  2412.                  const radius = 100;
  2413.                  const circumference = radius * 2 * Math.PI;
  2414.                  return `<svg viewBox="0 0 50 50"><style>circle { transform: rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray: ${circumference};stroke-dashoffset: ${circumference - last_changed / 100 * circumference};}
  2415.                  tspan {font-size: 10px;}</style> <circle cx="25" cy="25" r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08" style="
  2416.                  transform: rotate(-90deg); transform-origin: 50% 50%;" />
  2417.                  <text x="50%" y="54%" fill="#8d8e90" font-size="11" text-anchor="middle" alignment-baseline="middle" dominant-baseline="middle">${last_changed}</text></svg>`; }
  2418.                 ]]]
  2419.             show_entity_picture: true
  2420.             styles:
  2421.               card:
  2422.                 - font-family: Sf Display
  2423.                 - border-radius: var(--custom-button-card-border-radius)
  2424.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  2425.                 - transition: none
  2426.                 - padding: 10%
  2427.               grid:
  2428.                 - grid-template-areas: '"i" "n" "s"'
  2429.                 - grid-template-columns: 1fr
  2430.                 - grid-template-rows: 1fr min-content min-content
  2431.               name:
  2432.                 - justify-self: start
  2433.                 - padding-left: 7px
  2434.                 - font-weight: bold
  2435.                 - font-family: SF Display
  2436.                 - font-size: 14px
  2437.               img_cell:
  2438.                 - justify-content: start
  2439.                 - padding-left: 5px
  2440.                 - padding-top: 10px
  2441.                 - align-items: start
  2442.                 - margin: none
  2443.               state:
  2444.                 - justify-self: start
  2445.                 - font-color: red
  2446.                 - padding-left: 7px
  2447.                 - padding-bottom: 10px
  2448.                 - text-transform: capitalize
  2449.                 - font-family: SF Display
  2450.                 - font-size: 11px
  2451.               icon:
  2452.                 - width: 40%
  2453.                 - clip-path: circle()
  2454.               custom_fields:
  2455.                 circle:
  2456.                   - align-self: start
  2457.                   - position: absolute
  2458.                   - left: 55%
  2459.                   - top: 10%
  2460.                   - width: 40%
  2461.                   - font-size: 18px
  2462.                   - font-weight: 900
  2463.                   - font-family: SF Display
  2464.                   - text-transform: capitalize
  2465.             state:
  2466.               - value: home
  2467.                 color: rgba(255,255,255,0.9)
  2468.                 entity_picture: /api/image/serve/8d30202bc3a6b04136ebb6702394f6c4/512x512
  2469.               - value: not_home
  2470.                 color: rgba(65,65,63,0.8)
  2471.                 entity_picture: /api/image/serve/8d30202bc3a6b04136ebb6702394f6c4/512x512
  2472.                 styles:
  2473.                   card:
  2474.                     - filter: opacity(50%)
  2475.                   icon:
  2476.                     - filter: grayscale(100%)
  2477.           - type: custom:button-card
  2478.             entity: person.tjark_wolk
  2479.             aspect_ratio: 1
  2480.             color_type: card
  2481.             name: Tjark
  2482.             triggers_update:
  2483.              - sensor.tjark_last_changed
  2484.               - sensor.time
  2485.             variables:
  2486.               retain: sensor.tjark_last_changed
  2487.             show_state: true
  2488.             custom_fields:
  2489.               circle: |
  2490.                [[[
  2491.                  if (entity) {
  2492.                     let time = c => {
  2493.                       let s = (c/1e3), m = (c/6e4), h = (c/36e5), d = (c/864e5);
  2494.                       return s < 60 ? parseInt(s) + 's' : m < 60 ? parseInt(m) + 'm' : h < 24 ? parseInt(h) + 'h' : parseInt(d) + 'd';
  2495.                     };
  2496.                     let last_changed = states[variables.retain] == null || states[variables.retain].state == 'unavailable'
  2497.                         ? time(Date.now() - Date.parse(states[entity.entity_id].last_changed))
  2498.                         : time(Date.now() - Date.parse(states[variables.retain].state)),
  2499.                       stroke = variables.state === 'home' ? 'rgba(255,0,0,1.0)' : 'none',
  2500.                       fill = variables.state === 'not_home' ? 'rgba(255,0,0,1.0)' : 'none';
  2501.                  const radius = 100;
  2502.                  const circumference = radius * 2 * Math.PI;
  2503.                  return `<svg viewBox="0 0 50 50"><style>circle { transform: rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray: ${circumference};stroke-dashoffset: ${circumference - last_changed / 100 * circumference};}
  2504.                  tspan {font-size: 10px;}</style> <circle cx="25" cy="25" r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08" style="
  2505.                  transform: rotate(-90deg); transform-origin: 50% 50%;" />
  2506.                  <text x="50%" y="54%" fill="#8d8e90" font-size="11" text-anchor="middle" alignment-baseline="middle" dominant-baseline="middle">${last_changed}</text></svg>`; }
  2507.                 ]]]
  2508.             show_entity_picture: true
  2509.             styles:
  2510.               card:
  2511.                 - font-family: Sf Display
  2512.                 - border-radius: var(--custom-button-card-border-radius)
  2513.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  2514.                 - transition: none
  2515.                 - padding: 10%
  2516.               grid:
  2517.                 - grid-template-areas: '"i" "n" "s"'
  2518.                 - grid-template-columns: 1fr
  2519.                 - grid-template-rows: 1fr min-content min-content
  2520.               name:
  2521.                 - justify-self: start
  2522.                 - padding-left: 7px
  2523.                 - font-weight: bold
  2524.                 - font-family: SF Display
  2525.                 - font-size: 14px
  2526.               img_cell:
  2527.                 - justify-content: start
  2528.                 - padding-left: 5px
  2529.                 - padding-top: 10px
  2530.                 - align-items: start
  2531.                 - margin: none
  2532.               state:
  2533.                 - justify-self: start
  2534.                 - font-color: red
  2535.                 - padding-left: 7px
  2536.                 - padding-bottom: 10px
  2537.                 - text-transform: capitalize
  2538.                 - font-family: SF Display
  2539.                 - font-size: 11px
  2540.               icon:
  2541.                 - width: 40%
  2542.                 - clip-path: circle()
  2543.               custom_fields:
  2544.                 circle:
  2545.                   - align-self: start
  2546.                   - position: absolute
  2547.                   - left: 55%
  2548.                   - top: 10%
  2549.                   - width: 40%
  2550.                   - font-size: 18px
  2551.                   - font-weight: 900
  2552.                   - font-family: SF Display
  2553.                   - text-transform: capitalize
  2554.             state:
  2555.               - value: home
  2556.                 color: rgba(255,255,255,0.9)
  2557.                 entity_picture: /api/image/serve/a80d7fb8ba5a8dec229bdb3aae94f5fc/512x512
  2558.               - value: not_home
  2559.                 color: rgba(65,65,63,0.8)
  2560.                 entity_picture: /api/image/serve/a80d7fb8ba5a8dec229bdb3aae94f5fc/512x512
  2561.                 styles:
  2562.                   card:
  2563.                     - filter: opacity(50%)
  2564.                   icon:
  2565.                     - filter: grayscale(100%)
  2566.         title: Familie
  2567.         columns: 2
  2568.         view_layout:
  2569.           grid-area: familie
  2570.       - type: grid
  2571.         cards:
  2572.           - type: custom:button-card
  2573.             entity: climate.heizung_wohnzimmer
  2574.             aspect_ratio: 1
  2575.             tap_action:
  2576.               action: fire-dom-event
  2577.               browser_mod:
  2578.                 command: popup
  2579.                 title: Wohnzimmer
  2580.                 card:
  2581.                   type: vertical-stack
  2582.                   cards:
  2583.                     - type: thermostat
  2584.                       entity: climate.heizung_wohnzimmer
  2585.                     - type: entities
  2586.                       card_mod:
  2587.                         class: content
  2588.                       entities:
  2589.                         - entity: sensor.temperatur_wohnraum_2
  2590.                           name: Raumtemperatur
  2591.                         - entity: sensor.temperatur_wohnraum_3
  2592.                           name: Luftfeuchtigkeit
  2593.                     - type: custom:mini-graph-card
  2594.                       entities:
  2595.                         - entity: sensor.temperatur_wohnraum_2
  2596.                       line_width: 6
  2597.                       hour24: true
  2598.                       group: true
  2599.                       lign_icon: left
  2600.                       align_state: right
  2601.                       align_header: left
  2602.                       hours_to_show: 24
  2603.                       show:
  2604.                         fill: fade
  2605.                         icon: false
  2606.                         name: false
  2607.                         state: false
  2608.                         name_adaptive_color: false
  2609.                         labels: hover
  2610.                         legend: false
  2611.                   style: |
  2612.                    ha-card {
  2613.                       box-shadow: none;
  2614.                       background: transparent!important;
  2615.                      }
  2616.             name: Wohnzimmer
  2617.             color_type: card
  2618.             show_state: true
  2619.             custom_fields:
  2620.               Temperature: >
  2621.                [[[ {
  2622.  
  2623.                 const temp = Math.round(entity.attributes.temperature);
  2624.  
  2625.                 const radius = 20.5;
  2626.  
  2627.                 const circumference = radius * 2 * Math.PI;
  2628.  
  2629.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  2630.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  2631.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  2632.                 * circumference};}
  2633.  
  2634.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  2635.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  2636.                 style="
  2637.  
  2638.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  2639.  
  2640.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  2641.                 text-anchor="middle" alignment-baseline="middle"
  2642.                 dominant-baseline="middle">${temp}°</text></svg>`; } ]]]
  2643.             show_entity_picture: true
  2644.             styles:
  2645.               card:
  2646.                 - font-family: Sf Display
  2647.                 - border-radius: var(--custom-button-card-border-radius)
  2648.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  2649.                 - transition: none
  2650.                 - padding: 10%
  2651.               grid:
  2652.                 - grid-template-areas: '"i" "n" "s"'
  2653.                 - grid-template-columns: 1fr
  2654.                 - grid-template-rows: 1fr min-content min-content
  2655.               name:
  2656.                 - justify-self: start
  2657.                 - padding-left: 7px
  2658.                 - font-weight: bold
  2659.                 - font-family: SF Display
  2660.                 - font-size: 14px
  2661.               img_cell:
  2662.                 - justify-content: start
  2663.                 - padding-left: 5px
  2664.                 - padding-top: 10px
  2665.                 - align-items: start
  2666.                 - margin: none
  2667.               state:
  2668.                 - justify-self: start
  2669.                 - font-color: red
  2670.                 - padding-left: 7px
  2671.                 - padding-bottom: 10px
  2672.                 - text-transform: capitalize
  2673.                 - font-family: SF Display
  2674.                 - font-size: 10px
  2675.               icon:
  2676.                 - width: 40%
  2677.               custom_fields:
  2678.                 Temperature:
  2679.                   - align-self: start
  2680.                   - position: absolute
  2681.                   - left: 55%
  2682.                   - top: 10%
  2683.                   - width: 40%
  2684.                   - font-size: 18px
  2685.                   - font-weight: 900
  2686.                   - font-family: SF Display
  2687.                   - text-transform: capitalize
  2688.             state:
  2689.               - value: heat
  2690.                 entity_picture: \local\img\icons8-heizkörper-48.png
  2691.                 color: rgba(255,255,255,0.9)
  2692.               - value: 'off'
  2693.                 entity_picture: \local\img\icons8-heizkörper-48.png
  2694.                 color: rgba(65,65,63,0.8)
  2695.                 styles:
  2696.                   card:
  2697.                     - filter: opacity(50%)
  2698.                   icon:
  2699.                     - filter: grayscale(100%)
  2700.           - type: custom:button-card
  2701.             entity: climate.heizung_esszimmer
  2702.             aspect_ratio: 1
  2703.             tap_action:
  2704.               action: fire-dom-event
  2705.               browser_mod:
  2706.                 command: popup
  2707.                 title: Esszimmer
  2708.                 style:
  2709.                   hui-vertical-stack-card:
  2710.                     $hui-entities-card$: |
  2711.                      #states {
  2712.                         padding-top: 0.5em;
  2713.                         padding-bottom: 1.2em;
  2714.                       }
  2715.                 card:
  2716.                   type: vertical-stack
  2717.                   cards:
  2718.                     - type: thermostat
  2719.                       entity: climate.heizung_esszimmer
  2720.                     - type: entities
  2721.                       card_mod:
  2722.                         class: content
  2723.                       entities:
  2724.                         - entity: sensor.temperatur_wohnraum_2
  2725.                           name: Raumtemperatur
  2726.                         - entity: sensor.temperatur_wohnraum_3
  2727.                           name: Luftfeuchtigkeit
  2728.                     - type: custom:mini-graph-card
  2729.                       entities:
  2730.                         - entity: sensor.temperatur_wohnraum_2
  2731.                       line_width: 6
  2732.                       hour24: true
  2733.                       group: true
  2734.                       lign_icon: left
  2735.                       align_state: right
  2736.                       align_header: left
  2737.                       hours_to_show: 24
  2738.                       show:
  2739.                         fill: fade
  2740.                         icon: false
  2741.                         name: false
  2742.                         state: false
  2743.                         name_adaptive_color: false
  2744.                         labels: hover
  2745.                         legend: false
  2746.                       tap_action:
  2747.                         action: none
  2748.                   style: |
  2749.                    ha-card {
  2750.                       box-shadow: none;
  2751.                       background: transparent!important;
  2752.                      }
  2753.             name: Esszimmer
  2754.             color_type: card
  2755.             show_state: true
  2756.             custom_fields:
  2757.               Temperature: >
  2758.                [[[ {
  2759.  
  2760.                 const temp = Math.round(entity.attributes.temperature);
  2761.  
  2762.                 const radius = 20.5;
  2763.  
  2764.                 const circumference = radius * 2 * Math.PI;
  2765.  
  2766.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  2767.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  2768.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  2769.                 * circumference};}
  2770.  
  2771.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  2772.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  2773.                 style="
  2774.  
  2775.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  2776.  
  2777.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  2778.                 text-anchor="middle" alignment-baseline="middle"
  2779.                 dominant-baseline="middle">${temp}°</text></svg>`; } ]]]
  2780.             show_entity_picture: true
  2781.             styles:
  2782.               card:
  2783.                 - font-family: Sf Display
  2784.                 - border-radius: var(--custom-button-card-border-radius)
  2785.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  2786.                 - transition: none
  2787.                 - padding: 10%
  2788.               grid:
  2789.                 - grid-template-areas: '"i" "n" "s"'
  2790.                 - grid-template-columns: 1fr
  2791.                 - grid-template-rows: 1fr min-content min-content
  2792.               name:
  2793.                 - justify-self: start
  2794.                 - padding-left: 7px
  2795.                 - font-weight: bold
  2796.                 - font-family: SF Display
  2797.                 - font-size: 14px
  2798.               img_cell:
  2799.                 - justify-content: start
  2800.                 - padding-left: 5px
  2801.                 - padding-top: 10px
  2802.                 - align-items: start
  2803.                 - margin: none
  2804.               state:
  2805.                 - justify-self: start
  2806.                 - font-color: red
  2807.                 - padding-left: 7px
  2808.                 - padding-bottom: 10px
  2809.                 - text-transform: capitalize
  2810.                 - font-family: SF Display
  2811.                 - font-size: 10px
  2812.               icon:
  2813.                 - width: 40%
  2814.               custom_fields:
  2815.                 Temperature:
  2816.                   - align-self: start
  2817.                   - position: absolute
  2818.                   - left: 55%
  2819.                   - top: 10%
  2820.                   - width: 40%
  2821.                   - font-size: 18px
  2822.                   - font-weight: 900
  2823.                   - font-family: SF Display
  2824.                   - text-transform: capitalize
  2825.             state:
  2826.               - value: heat
  2827.                 entity_picture: \local\img\icons8-heizkörper-48.png
  2828.                 color: rgba(255,255,255,0.9)
  2829.               - value: 'off'
  2830.                 entity_picture: \local\img\icons8-heizkörper-48.png
  2831.                 color: rgba(65,65,63,0.8)
  2832.                 styles:
  2833.                   card:
  2834.                     - filter: opacity(50%)
  2835.                   icon:
  2836.                     - filter: grayscale(100%)
  2837.           - type: custom:button-card
  2838.             entity: climate.heizung_gastebad
  2839.             aspect_ratio: 1
  2840.             tap_action:
  2841.               action: fire-dom-event
  2842.               browser_mod:
  2843.                 command: popup
  2844.                 title: Esszimmer
  2845.                 card:
  2846.                   type: vertical-stack
  2847.                   cards:
  2848.                     - type: thermostat
  2849.                       entity: climate.heizung_gastebad
  2850.                     - type: entities
  2851.                       card_mod:
  2852.                         class: content
  2853.                       entities:
  2854.                         - entity: sensor.temperature_7
  2855.                           name: Raumtemperatur
  2856.                         - entity: sensor.humidity_8
  2857.                           name: Luftfeuchtigkeit
  2858.                     - type: custom:mini-graph-card
  2859.                       entities:
  2860.                         - entity: sensor.temperatur_wohnraum_2
  2861.                       line_width: 6
  2862.                       hour24: true
  2863.                       group: true
  2864.                       lign_icon: left
  2865.                       align_state: right
  2866.                       align_header: left
  2867.                       hours_to_show: 24
  2868.                       show:
  2869.                         fill: fade
  2870.                         icon: false
  2871.                         name: false
  2872.                         state: false
  2873.                         name_adaptive_color: false
  2874.                         labels: hover
  2875.                         legend: false
  2876.                   style: |
  2877.                    ha-card {
  2878.                       box-shadow: none;
  2879.                       background: transparent;
  2880.                       font-size: 10px!important;
  2881.                       font-color: rgba(255,0,0,0.8)!important;
  2882.                     }
  2883.             name: Gästebad
  2884.             color_type: card
  2885.             show_state: true
  2886.             custom_fields:
  2887.               Temperature: >
  2888.                [[[ {
  2889.  
  2890.                 const temp = Math.round(entity.attributes.temperature);
  2891.  
  2892.                 const radius = 20.5;
  2893.  
  2894.                 const circumference = radius * 2 * Math.PI;
  2895.  
  2896.                 return `<svg viewBox="0 0 50 50"><style>circle { transform:
  2897.                 rotate(-90deg); transform-origin: 50% 50%;stroke-dasharray:
  2898.                 ${circumference};stroke-dashoffset: ${circumference - temp / 100
  2899.                 * circumference};}
  2900.  
  2901.                 tspan {font-size: 10px;}</style> <circle cx="25" cy="25"
  2902.                 r="24.5" stroke="#b2b2b2" stroke-width="1.5" fill="#FFFFFF08"
  2903.                 style="
  2904.  
  2905.                 transform: rotate(-90deg); transform-origin: 50% 50%;" />
  2906.  
  2907.                 <text x="50%" y="54%" fill="#8d8e90" font-size="11"
  2908.                 text-anchor="middle" alignment-baseline="middle"
  2909.                 dominant-baseline="middle">${temp}°</text></svg>`; } ]]]
  2910.             show_entity_picture: true
  2911.             styles:
  2912.               card:
  2913.                 - font-family: Sf Display
  2914.                 - border-radius: var(--custom-button-card-border-radius)
  2915.                 - '-webkit-tap-highlight-color': rgba(0,0,0,0)
  2916.                 - transition: none
  2917.                 - padding: 10%
  2918.               grid:
  2919.                 - grid-template-areas: '"i" "n" "s"'
  2920.                 - grid-template-columns: 1fr
  2921.                 - grid-template-rows: 1fr min-content min-content
  2922.               name:
  2923.                 - justify-self: start
  2924.                 - padding-left: 7px
  2925.                 - font-weight: bold
  2926.                 - font-family: SF Display
  2927.                 - font-size: 14px
  2928.               img_cell:
  2929.                 - justify-content: start
  2930.                 - padding-left: 5px
  2931.                 - padding-top: 10px
  2932.                 - align-items: start
  2933.                 - margin: none
  2934.               state:
  2935.                 - justify-self: start
  2936.                 - font-color: red
  2937.                 - padding-left: 7px
  2938.                 - padding-bottom: 10px
  2939.                 - text-transform: capitalize
  2940.                 - font-family: SF Display
  2941.                 - font-size: 10px
  2942.               icon:
  2943.                 - width: 40%
  2944.               custom_fields:
  2945.                 Temperature:
  2946.                   - align-self: start
  2947.                   - position: absolute
  2948.                   - left: 55%
  2949.                   - top: 10%
  2950.                   - width: 40%
  2951.                   - font-size: 18px
  2952.                   - font-weight: 900
  2953.                   - font-family: SF Display
  2954.                   - text-transform: capitalize
  2955.             state:
  2956.               - value: heat
  2957.                 entity_picture: \local\img\icons8-heizkörper-48.png
  2958.                 color: rgba(255,255,255,0.9)
  2959.               - value: 'off'
  2960.                 entity_picture: \local\img\icons8-heizkörper-48.png
  2961.                 color: rgba(65,65,63,0.8)
  2962.                 styles:
  2963.                   card:
  2964.                     - filter: opacity(50%)
  2965.                   icon:
  2966.                     - filter: grayscale(100%)
  2967.         title: Heizung
  2968.         columns: 2
  2969.         view_layout:
  2970.           grid-area: heizung
  2971.  
Advertisement
Add Comment
Please, Sign In to add comment