.applet-container {
 margin-top: 3em;
 border:4px double #666;
 background:#fff;
 font-family:Arial,Helvetica,sans-serif;
 font-size:12px;
 box-shadow:2px 2px 4px #aaa;
 display:flex;
 flex-direction:column;
}

.applet-chrome {
flex-shrink:0;
padding:6px 8px;
background:#f0f0f0;
border-bottom:1px solid #666;
display:flex;
align-items:center;
justify-content:center;
gap:16px;
flex-wrap:wrap;
}

/*  ----- Background Image ----- */

.bg-common {
  background-blend-mode: lighten;
  background-color: rgba(255, 255, 255, 0.5);
  background-position: center;
}

.brand-common {
  position: absolute;
  height: auto;
  pointer-events: none;
  z-index: 10;
}

.bg-default {
  background-image:url(../img/default.gif);
  background-size: tile;
}

.brand-default {
  bottom: 50px;
  right: 32px;
  width: 252px;
}

.bg-onetree {
  background-image:url(../img/one_tree.jpg);
  background-size: cover;
}

.brand-onetree {
  bottom: 45px;
  right: 30px;
  width: 250px;
  height: auto;
}

.bg-risingsun {
  background-image:url(../img/rising_sun3.jpg);
  background-size: cover;
}

.brand-risingsun {
  bottom: 65px;
  right: 30px;
  width: 250px;
}

.bg-greenkikuti {
  background-image:url(../img/green_kikuti.jpg);
  background-size: cover;
}

.brand-greenkikuti {
  bottom: 65px;
  right: 30px;
  width: 250px;
}

.bg-annapluna {
  background-image:url(../img/annapluna2.jpg);
  background-size: cover;
}

.brand-annapluna {
  top: 30px;
  left: 50px;
  width: 260px;
}

.bg-cloud {
background-image:url(../img/cloud.jpg);
background-size: cover;
}

.brand-cloud {
  bottom: 65px;
  right: 30px;
  width: 250px;
}

/* ----- Tab Design ----- */

/* 1. Standardized Tab Strip Container */
.applet-tabstrip {
  flex-shrink: 0;
  display: flex;
  background: #ccc;
  font-size: 12px;
  border-bottom: 1px solid #666;
  box-sizing: border-box;
}

/* 2. Standardized Tab Item */
.applet-tab {
  flex: 1;
  padding: 5px 0;
  text-align: center;
  cursor: pointer;
  font-weight: normal;
  color: #666;
  background: #ddd;
  border-right: 1px solid #666;
  border-top: 1px solid transparent;
  border-left: 1px solid transparent;
  border-bottom: 1px solid #666;
  margin-top: 2px;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  user-select: none;
}

/* 3. Active Tab Modifier State */
.applet-tab.active {
  background: #fff;
  font-weight: bold;
  color: #000;
  border-bottom: 1px solid #fff;
  border-top: 1px solid #666;
  border-left: 1px solid #666;
  border-right: 1px solid #666;
  margin-top: 0px;
  padding-top: 6px;
  z-index: 2;
  margin-bottom: -1px;
}

/* Clean up right border on the final tab if it's inactive */
.applet-tabstrip .applet-tab:last-child:not(.active) {
  border-right: none;
}

/* 4. Tactile Push-Down Click Feedback */
.applet-tab:active {
  padding-top: 7px;
  padding-bottom: 4px;
}

/* 5. Standardized Button Strip */
.applet-button-strip {
  flex-shrink: 0;
  padding: 6px;
  text-align: center;
  background: #ffffff;
  border-bottom: 0px solid #ccc;
  display: flex;
  justify-content: center;
  gap: 8px;
  box-sizing: border-box;
}

/* ----- Buttons ----- */

.button-update {
  padding:3px 8px;
  font-size:11px;
  cursor:pointer;
}

.button-trio {
  padding:3px 12px;
  font-size:11px;
  cursor:pointer;
  background: #eaeaea;
  color: #727272;
  border: 1px solid #555555;
}

/* Active State */
.btnstate-active {
  background: #ffffff;
  color: #222222;
  border: 1px solid #555555;
  box-shadow: 1px 1px 0px #999999;
}

/* Active State Hover Effect */
.btnstate-active:hover {
  background: #fafafa;
}

/* Active State Pressed (Tactile Displacement) */
.btnstate-active:active {
  box-shadow: 0px 0px 0px transparent;
  transform: translate(1px, 1px);
}

/* Inactive (Disabled) State */
.btnstate-disabled {
  background: #eaeaea;
  color: #727272;
  border: 1px solid #555555;
  box-shadow: 1px 1px 0px #cccccc;
}

/* ----- Attribution Text ----- */

.text-attribution {
  text-align: center;
  font-size: 0.7em;
  color: #999;
  margin: 1em 0 5px;
}

.text-attribution a:link,
.text-attribution a:visited {
  color: #999;
}

.text-attribution a:hover,
.text-attribution a:focus {
  color: #666;
}