html,
body {
  background: #000;
  margin: 0;
  padding: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "HelveticaNeue-Light", sans-serif;
  letter-spacing: -2px;
  color: #fff;
  font-size: 65px;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricprecision;
}

/* root 作为烟花背景容器 */
#root {
  position: relative;
  width: 100%;
  height: 100%;
}

/* 外层 wrapper 用于旋转，不影响内部布局 */
#wrapper {
  width: 100%;
  height: 100%;
  transform-origin: top left;
  transition: transform 0.3s ease;
  display: flex;
  flex-direction: column; /* 默认竖屏 */
  justify-content: center;
  align-items: center;
}

a {
  display: inline-block;
}

.wi {
  line-height: 75px;
}

.top {
  position: absolute;
  top: 50px;
}
.dialog {
  top: 300px;
}

.left {
  position: absolute;
  left: 50px;
}

.right {
  position: absolute;
  right: 50px;
  text-align: right;
}

.center-ver {
  position: absolute;
  top: 50%;
  height: 200px;
  margin-top: -100px;
  line-height: 100px;
}

.lower-third {
  position: absolute;
  top: 40%;
  height: 200px;
  margin-top: -100px;
  line-height: 100px;
}

.lower-todo {
  position: absolute;
  top: 55%;
  margin-top: -100px;
  margin-left: 32px;
  margin-right: 32px;
  height: 30%;
  border: 1px solid #666; /* 灰色边框 */
  border-radius: 8px; /* 可选：让边框更圆润一些 */
  padding: 32px; /* 可选：让内容不要贴边 */
  overflow: hidden; /* ← 超出部分不显示 */
}

.todo-description {
  color: #888;
}

.center-hor {
  position: absolute;
  right: 50px;
  left: 50px;
  text-align: center;
}

.bottom {
  position: absolute;
  bottom: 50px;
}

.xxsmall,
.xsmall,
.small {
  font-family: "HelveticaNeue-Medium", sans-serif;
  letter-spacing: 0;
}

.xxsmall {
  font-size: 15px;
}

.xxsmall .wi {
  line-height: 15px;
}

.xsmall {
  font-size: 20px;
}

.xsmall .wi {
  line-height: 20px;
}

.small {
  font-size: 25px;
}

.small .wi {
  line-height: 25px;
}

.medium {
  font-size: 35px;
  letter-spacing: -1px;
  font-family: "HelveticaNeue-Light", sans-serif;
}

.medium .wi {
  line-height: 35px;
}

.xdimmed {
  color: #666;
}

.dimmed {
  color: #aaa;
}

.light {
  font-family: "HelveticaNeue-UltraLight", sans-serif;
}

.icon {
  position: relative;
  top: -10px;
  display: inline-block;
  font-size: 45px;
  padding-right: 5px;
  font-weight: 100;
  margin-right: 10px;
}

.icon-small {
  position: relative;
  display: inline-block;
  font-size: 20px;
  padding-left: 10px;
  padding-right: -10px;
  font-weight: 100;
}

.time .sec {
  font-size: 25px;
  color: #666;
  padding-left: 5px;
  position: relative;
  top: -35px;
}

.forecast-table {
  float: right;
  text-align: right;
  font-size: 20px;
  line-height: 20px;
}

.forecast-table .day,
.forecast-table .temp-min,
.forecast-table .temp-max {
  width: 50px;
  text-align: right;
}

.forecast-table .temp-max {
  width: 60px;
}

.forecast-table .day {
  color: #999;
}

.calendar-table {
  font-size: 14px;
  line-height: 20px;
  margin-top: 10px;
}

.calendar-table .calendar-icon {
  width: 1em;
  min-width: 1em;
  margin-right: 5px;
  text-align: center;
}

.calendar-table .days {
  padding-left: 20px;
  text-align: right;
}

.dishwasher {
  background-color: white;
  color: black;
  margin: 0 200px;
  font-size: 60px;
  border-radius: 1000px;
  border-radius: 1200px;
  display: none;
}

@font-face {
  font-family: "HelveticaNeue-UltraLight";
  src: url("../font/HelveticaNeue-UltraLight.eot");
  /* IE9 Compat Modes */
  src: url("../font/HelveticaNeue-UltraLight.eot?#iefix") format("embedded-opentype"),
    /* IE6-IE8 */ url("../font/HelveticaNeue-UltraLight.woff") format("woff"),
    /* Modern Browsers */ url("../font/HelveticaNeue-UltraLight.ttf") format("truetype"), Safari, Android,
    iOS url("../font/HelveticaNeue-UltraLight.svg#9453ea8da727d260bcdbfa605bdbb5d2") format("svg");
  /* Legacy iOS */
  font-style: normal;
  font-weight: 100;
}

@font-face {
  font-family: "HelveticaNeue-Medium";
  src: url("../font/HelveticaNeue-Medium.eot");
  /* IE9 Compat Modes */
  src: url("../font/HelveticaNeue-Medium.eot?#iefix") format("embedded-opentype"),
    /* IE6-IE8 */ url("../font/HelveticaNeue-Medium.woff") format("woff"),
    url("../font/HelveticaNeue-Medium.ttf") format("truetype"),
    /* Safari, Android, iOS */ url("../font/HelveticaNeue-Medium.svg#d7af0fd9278f330eed98b60dddea7bd6") format("svg");
  /* Legacy iOS */
  font-style: normal;
  font-weight: 400;
}

@font-face {
  font-family: "HelveticaNeue-Light";
  src: url("../font/HelveticaNeue-Light.eot");
  /* IE9 Compat Modes */
  src: url("../font/HelveticaNeue-Light.eot?#iefix") format("embedded-opentype"),
    /* IE6-IE8 */ url("../font/HelveticaNeue-Light.woff") format("woff"),
    url("../font/HelveticaNeue-Light.ttf") format("truetype"),
    /* Safari, Android, iOS */ url("../font/HelveticaNeue-Light.svg#7384ecabcada72f0e077cd45d8e1c705") format("svg");
  /* Legacy iOS */
  font-style: normal;
  font-weight: 200;
}
