import { css, html, LitElement, nothing } from "lit"; import { customElement, property } from "lit/decorators"; @customElement("ha-card") export class HaCard extends LitElement { @property() public header?: string; @property({ type: Boolean, reflect: true }) public raised = false; static styles = css` :host { background: var( --ha-card-background, var(--card-background-color, white) ); -webkit-backdrop-filter: var(--ha-card-backdrop-filter, none); backdrop-filter: var(--ha-card-backdrop-filter, none); box-shadow: var(--ha-card-box-shadow, none); box-sizing: border-box; border-radius: var(--ha-card-border-radius, 12px); border-width: var(--ha-card-border-width, 1px); border-style: solid; border-color: var(--ha-card-border-color, var(--divider-color, #e0e0e0)); color: var(--primary-text-color); display: block; transition: all 0.3s ease-out; position: relative; } :host([raised]) { border: none; box-shadow: var( --ha-card-box-shadow, 0px 2px 1px -1px rgba(0, 0, 0, 0.2), 0px 1px 1px 0px rgba(0, 0, 0, 0.14), 0px 1px 3px 0px rgba(0, 0, 0, 0.12) ); } .card-header, :host ::slotted(.card-header) { color: var(--ha-card-header-color, var(--primary-text-color)); font-family: var(--ha-card-header-font-family, inherit); font-size: var(--ha-card-header-font-size, var(--ha-font-size-2xl)); letter-spacing: -0.012em; line-height: 48px; padding: 12px 16px 16px; display: block; margin-block-start: 0px; margin-block-end: 0px; font-weight: var(--ha-font-weight-normal); } :host ::slotted(.card-content:not(:first-child)), slot:not(:first-child)::slotted(.card-content) { padding-top: 0px; margin-top: -8px; } :host ::slotted(.card-content) { padding: 16px; } :host ::slotted(.card-actions) { border-top: 1px solid var(--divider-color, #e8e8e8); padding: 5px 16px; } `; protected render() { return html` ${this.header ? html`