body {
  background-image: url(../image/wee-spin.gif);
  background-size: auto;
  background-repeat: repeat;
  cursor: url("../image/cursor/callmezippy_squirrelNormalSelect.png"), auto;
}

html {
  cursor: url("../image/cursor/callmezippy_squirrelNormalSelect.png"), auto;
}

body::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: -1;
}

.window {
  font-size: small;
  max-width: 85vw;
  max-height: 85vh;
  overflow: hidden; /* hide overflow here */
  display: flex;
  flex-direction: column;
}

.window-body {
  overflow: auto; /* this is where the scroll happens */
  max-height: 100%; /* ensure it doesn’t overflow the parent */
  flex: 1; /* fill vertical space if needed */
}

.mid-window {
  width: auto;
  height: auto;
  min-width: 600px;
  margin: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

@font-face {
  font-family: "ComicSansCustom";
  src: url("ComicSansMS.ttf") format("truetype");
}

@keyframes blinkCursor {
  0%,
  49% {
    opacity: 1;
  }
  50%,
  100% {
    opacity: 0;
  }
}

@keyframes glow {
  0% {
    text-shadow: 0 0 5px #fff;
  }
  50% {
    text-shadow: 0 0 10px #fff, 0 0 20px #ffcc00;
  }
  100% {
    text-shadow: 0 0 5px #fff;
  }
}

.header {
  width: 25vw;
  font-family: "ComicSansCustom", sans-serif;
  font-size: 4rem;
  color: silver;
  animation: glow 1.5s infinite alternate;
  background: black url("../image/squirrel-biting-cable.gif") repeat;
  padding: 40px;
  display: inline-block;
  position: relative;
}

.header::after {
  content: "▋";
  animation: blinkCursor 1s step-start infinite;
  position: absolute;
  margin-left: 10px;
  color: #fff;
}

.nutnet-form {
  max-width: 320px;
  margin: 10px auto;
  padding: 5px;
  font-family: sans-serif;
  background: #f9f3e9;
  border: 1px solid #aaa;
  border-radius: 8px;
}

.form-group {
  margin-bottom: 6px; /* Even tighter spacing */
}

.form-group input[type="text"],
.form-group input[type="password"] {
  width: 100%;
  padding: 4px;
  font-size: 14px;
  margin-top: 2px; /* No space between label and input */
  box-sizing: border-box;
}

.acorn-password {
  -webkit-text-security: "🍂";
}

.form-group label {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 2px; /* Tight label spacing */
}

button {
  width: 100%;
  padding: 6px;
  margin-top: 6px; /* Tight spacing for buttons */
  font-size: 14px;
  cursor: pointer;
  background-color: #d1a36a;
  border: 1px solid #aaa;
  border-radius: 5px;
}

button:active {
  transform: scale(0.98);
}

/* Links / Hand */
a,
button,
label,
select,
summary,
[type="submit"],
[type="button"],
[type="image"] {
  cursor: url("../image/cursor/callmezippy_squrrielLinkSelect.png"), pointer;
}

/* Text / I-Beam */
input[type="text"],
input[type="search"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="password"],
textarea,
[contenteditable="true"] {
  cursor: url("../image/cursor/callmezippy_squrrieltext.png"), text;
}

/* Help Cursor */
.help,
.help-me,
[aria-label*="help"],
[title*="help"],
[role="tooltip"] {
  cursor: url("../image/cursor/callmezippy_squirrelHelpSelect.png"), help;
}

/* Working in Background / AppStarting */
.loading,
[aria-busy="true"] {
  cursor: url("../image/cursor/callmezippy_squrrielWorkingInBackground.png"),
    progress;
}

/* Wait Cursor */
.waiting,
.wait,
[aria-waiting="true"] {
  cursor: url("../image/cursor/callmezippy_squirrelBusy.png"), wait;
}

/* Not Allowed */
.disabled,
.no-go,
[disabled],
[aria-disabled="true"],
input:disabled,
button:disabled {
  cursor: url("../image/cursor/callmezippy_squirrelUnavailble.png"), not-allowed;
}

/* Resize Horizontal (WE) */
.resize-horizontal,
.resize-ew {
  cursor: url("../image/cursor/callmezippy_squirrelHorizontalResize.png"),
    ew-resize;
}

/* Resize Vertical (NS) */
.resize-vertical,
.resize-ns {
  cursor: url("../image/cursor/callmezippy_squirrelVerticalResize.png"),
    ns-resize;
}

/* Resize Diagonal (NWSE) */
.resize-diagonal1 {
  cursor: url("../image/cursor/callmezippy_squrrielDiagonalResize1.png"),
    nwse-resize;
}

/* Resize Diagonal (NESW) */
.resize-diagonal2 {
  cursor: url("../image/cursor/callmezippy_squrrielDiagonalResize2.png"),
    nesw-resize;
}

/* Move Cursor */
.move,
.draggable,
[draggable="true"] {
  cursor: url("../image/cursor/callmezippy_squrrielMove.png"), move;
}

/* Precision / Crosshair */
.crosshair-zone,
.aim,
.precision,
canvas,
.map-area {
  cursor: url("../image/cursor/callmezippy_squrrielPercisionSelect.png"),
    crosshair;
}

/* Handwriting / NWPen */
.handwriting,
.draw {
  cursor: url("../image/cursor/callmezippy_squrrielHandwriting.png"),
    url("../image/cursor/callmezippy_squrrieltext.png"), default;
}

/* Alternate Select (UpArrow) */
.alt-select,
.alt-cursor {
  cursor: url("../image/cursor/callmezippy_squrrielAlternateSelect.png"),
    default;
}
