:root {
    --color-buchi-main-actiongreen: #64B445;
    --color-buchi-main-forestgreen: #093A34;
    --color-buchi-main-lcdblue: #1C1847;
    --color-buchi-main-black: #000000;
    --color-buchi-main-darkgrey: #1D1D1D;
    --color-buchi-main-lightgrey: #F8F8F8;
    --color-buchi-main-white: #FFFFFF;

    --color-accent-primary: var(--color-buchi-main-actiongreen);
    --color-accent-secondary: var(--color-buchi-main-lcdblue);

}

body {
    font-family: Helvetica Neue LT, Helvetica Neue, Helvetica, Noto Sans Kr, Hiragino Sans, メイリオ, Meiryo, Arial, sans-serif, PingFang SC, PingFang TC, Microsoft JhengHei, 微軟正黑體, Yu Gothic, 游ゴシック体;
}


h1 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: .75rem;
}

h2 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: .75rem;
}

table * {
    text-align: left;
}

footer, footer * {
    background-color: var(--color-labfreed-main-forestgreen)  !important;
    color: var(--color-buchi-main-white) !important;
}



.notification {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    padding: 0.4rem 0;
  }
  
  .notification-icon {
    flex-shrink: 0;
    width: 1.2rem;
    height: 1.2rem;
    margin-top: 0.2rem; /* slight vertical alignment */
  }
  
  .notification-body {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-top: 0.2rem; /* slight vertical alignment */
  }
  
  .notification-title {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
  }
  
  
/* ========================================================
   Info Block
   ========================================================*/

   .lf-info-block {
    background-color: var(--color-buchi-main-white);
   }



/* ========================================================
   Buttons
   ========================================================*/


.inline-action {
    min-width: 0;
    border: none;
    padding: 0;
    background: none;

    display: inline-flex;
    align-items: center;
    gap: 0.1em;
    font: inherit;
    cursor: pointer;
    text-decoration: underline;
}
.inline-action-primary {
    background: none;
    color: var(--color-accent-primary)
}

/* ========================================================
   Custom collapsible, based on <details>
   ========================================================*/

/* remove default marker */
.lf-collapsible summary {
    list-style: none;
    cursor: pointer;
    padding: 0.6em 0.9em;
    font-weight: 600;
    position: relative;
    user-select: none;
  }
  .lf-collapsible summary::-webkit-details-marker {
    display: none;
  }
  
  /* custom arrow icon */
  .lf-collapsible summary::after {
    content: "▸";
    position: absolute;
    right: 0.8em;
    transition: transform 0.2s ease;
    font-size: 0.9em;
    opacity: 0.6;
  }
  
  /* rotate arrow when open */
  .lf-collapsible[open] summary::after {
    transform: rotate(90deg);
    opacity: 1;
  }
  
  /* content area */
  .lf-collapsible > *:not(summary) {
    padding: 0.7em 1em;
    border-top: 1px solid #eee;
    background: #fff;
  }




/* ========================================================
   Card
   ========================================================*/

.lf-ref-card.lf-card-embedded {
    all: unset;
    display: block; /* restore basic element behavior */

  }

.lf-info-title {
    color: black;
}