/* =========================================================
   AERO FONTS
   ========================================================= */

@font-face {
  font-family: "pixel";
  src: url("https://dl.dropbox.com/s/rwu0nhwc3rnbaqm/mspixel.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "minecraftia";
  src: url("./fonts/Minecraftia-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}


/* =========================================================
   BODY
   ========================================================= */

html,
body {
  margin: 0;
  padding: 0;
}

body {
  font-family: "pixel", sans-serif !important;

  background-image: url("https://pbs.twimg.com/media/GlgMrnyb0AAwEL1.jpg");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  background-repeat: no-repeat;

  overflow-x: auto;
}


/* =========================================================
   AERO CUSTOM CURSORS
   ========================================================= */

html,
body {
  cursor: url("./default_arrow.png") 0 0, auto !important;
}


/* =========================================================
   FORCE PIXEL FONT
   ========================================================= */

.window,
.window * ,
.window-body,
.title-bar,
.title-bar * ,
.title-bar-text,
button,
input,
textarea,
select,
label,
legend,
p,
strong,
span,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "pixel", sans-serif !important;
}


/* =========================================================
   TESTO SELEZIONABILE NELLE FINESTRE
   ========================================================= */

.window {
  position: absolute;

  user-select: none;
  -webkit-user-select: none;
}

.window-body,
.window-body p,
.window-body span,
.window-body strong,
.window-body h1,
.window-body h2,
.window-body h3,
.window-body h4,
.window-body h5,
.window-body h6,
.window-body li,
.window-body label,
.window-body legend {
  user-select: text;
  -webkit-user-select: text;
}


/* =========================================================
   SCANLINES
   ========================================================= */

.lines {
  position: fixed;

  left: 0;
  top: 0;

  width: 100vw;
  height: 100vh;

  pointer-events: none;

  z-index: 300;

  opacity: 0.05;
}

.lines:before {
  content: '';

  position: absolute;

  left: 0;
  top: 0;
  right: 0;
  bottom: 0;

  pointer-events: none;

  background: linear-gradient(
    to bottom,
    transparent 50%,
    rgba(0, 0, 0, .5) 51%
  );

  background-size: 100% 4px;

  will-change: background, background-size;

  animation: scanlines 0.2s linear infinite;
}

@keyframes scanlines {

  from {
    background: linear-gradient(
      to bottom,
      transparent 10%,
      rgba(0, 0, 0, .5) 51%
    );

    background-size: 100% 4px;
  }

  to {
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, .5) 50%,
      transparent 51%
    );

    background-size: 100% 4px;
  }

}


/* =========================================================
   CONTENITORE
   ========================================================= */

.one {
  width: 1800px;
  height: 1400px;

  position: relative;

  left: 30px;
  top: 50px;
}


/* =========================================================
   FINESTRE
   ========================================================= */

.main-window {
  left: 0;
  top: 0;

  width: 300px;
}

.guestbook-window {
  left: 0;
  top: 365px;

  width: 300px;
}

.explorer-window {
  left: 320px;
  top: 0;

  width: 420px;
}

.aesthetics-window {
  left: 760px;
  top: 0;

  width: 400px;
}

.cat-window {
  left: 1500px;
  top: 815px;

  width: 300px;
}

.fourth-window {
  left: 1500px;
  top: 0;

  width: 300px;
}

.fifth-window {
  left: 1500px;
  top: 410px;

  width: 300px;
}


/* =========================================================
   WINDOWS XP BUILDS
   ========================================================= */

.xp-builds-window {
  left: 1180px;
  top: 0;

  width: 300px;
}

.xp-builds-body {
  font-family: "pixel", sans-serif !important;

  font-size: 12px;

  line-height: 1.35;

  padding: 8px !important;

  max-height: 600px;

  overflow-y: auto;
}

.xp-builds-body h3 {
  margin-top: 5px;

  margin-bottom: 10px;

  text-align: center;
}

.xp-builds-body h4 {
  margin-top: 18px;

  margin-bottom: 5px;
}

.xp-builds-body p {
  margin-top: 6px;

  margin-bottom: 8px;
}

.xp-build-button,
.xp-archive-button {
  display: block;

  box-sizing: border-box;

  width: 100%;

  padding: 4px 6px;

  margin-top: 6px;

  margin-bottom: 10px;

  font-family: "pixel", sans-serif !important;

  font-size: 11px;

  text-decoration: none;

  text-align: center;

  cursor: url("./default_link.png") 0 0, pointer !important;
}

.xp-archive-button {
  font-weight: bold;
}


/* =========================================================
   AERO CLOCK
   ========================================================= */

.clock-window {
  left: 1180px;

  top: 1193px;

  height: 128px;

  width: 300px;
}

.clock-body {
  font-family: "pixel", sans-serif !important;

  text-align: center;

  padding: 12px 8px !important;

  box-sizing: border-box;
}

.clock-date {
  font-family: "pixel", sans-serif !important;

  font-weight: bold;

  font-size: 12px;

  line-height: 1.2;

  margin-bottom: 10px;

  white-space: nowrap;
}

.clock-time {
  font-family: "pixel", sans-serif !important;

  font-weight: bold;

  font-size: 32px;

  line-height: 1;

  white-space: nowrap;

  letter-spacing: 1px;
}


/* =========================================================
   MOON OPERATING SYSTEM
   ========================================================= */

.moon-window {
  left: 1180px;

  top: 672px;

  width: 300px !important;

  height: 513px !important;

  box-sizing: border-box;

  overflow: hidden;
}

.moon-body {
  font-family: "pixel", sans-serif !important;

  font-size: 12px;

  line-height: 1.35;

  padding: 8px !important;

  height: calc(100% - 44px);

  box-sizing: border-box;

  overflow-y: auto;
}

.moon-body h3 {
  margin-top: 5px;

  margin-bottom: 10px;

  text-align: center;
}

.moon-body h4 {
  margin-top: 14px;

  margin-bottom: 4px;
}

.moon-body p {
  margin-top: 7px;

  margin-bottom: 9px;
}


/* =========================================================
   AERO PROFILE / PERSONAL INFORMATION
   ========================================================= */

.profile-window {
  left: 0;
  top: 810px;

  width: 300px;

  height: 510px;
}

.profile-body {
  font-family: "pixel", sans-serif !important;

  font-size: 12px;

  line-height: 1.15;

  padding: 6px !important;
}

.profile-top {
  display: block;

  width: 100%;

  margin-bottom: 5px;
}

.profile-pfp-area {
  width: 100%;

  flex-shrink: 0;

  text-align: left;

  display: block;
}

.profile-pfp-preview {
  width: 72px;
  height: 72px;

  box-sizing: border-box;

  border: 2px inset #808080;

  background: #ffffff;

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  margin-bottom: 4px;
}

.profile-change-pfp {
  width: 90px;
}

#profile-change-pfp {
  width: 90px;

  box-sizing: border-box;

  white-space: nowrap;

  font-size: 10px;
}

.profile-basic {
  width: 100%;

  min-width: 0;

  display: block;
}

.profile-body label {
  display: block;

  margin-top: 3px;

  margin-bottom: 2px;
}

.profile-basic label:first-child {
  margin-top: 3px;
}

.profile-body input,
.profile-body textarea,
.profile-body select {
  width: 100%;

  box-sizing: border-box;

  font-family: "pixel", sans-serif !important;

  font-size: 11px;
}

.profile-body input {
  height: 20px;

  margin-bottom: 2px;
}

.profile-body textarea {
  resize: vertical;

  min-height: 50px;

  margin-bottom: 3px;
}

.profile-body select {
  margin-bottom: 2px;
}

.profile-buttons {
  display: flex;

  justify-content: flex-start;

  gap: 5px;

  margin-top: 5px;
}

.profile-buttons button {
  min-width: 55px;
}


/* =========================================================
   AERO SOCIAL NETWORKS
   ========================================================= */

.social-window {
  left: 760px;

  top: 655px;

  width: 400px;

  height: 145px;
}

.social-body {
  font-family: "pixel", sans-serif !important;

  text-align: center;

  line-height: 1.1;

  padding: 6px !important;
}

.social-body p {
  margin-top: 3px;
  margin-bottom: 5px;
}

.social-buttons {
  display: flex;

  flex-direction: row;

  gap: 6px;

  margin-top: 7px;
}

.social-button {
  width: 100%;

  min-height: 28px;

  height: 28px;

  box-sizing: border-box;

  display: flex;

  align-items: center;

  justify-content: center;

  gap: 5px;

  font-family: "pixel", sans-serif !important;

  font-size: 12px;

  font-weight: bold;

  cursor: url("./default_link.png") 0 0, pointer !important;

  transition:
    filter 0.08s,
    transform 0.08s;
}

.social-button:hover {
  filter: brightness(1.12);
}

.social-button:active {
  transform: translateY(1px);
}


/* =========================================================
   YOUTUBE
   ========================================================= */

.youtube-button {
  background: #ff0000 !important;

  color: white !important;

  border: 2px outset #ff5555 !important;

  text-shadow: 1px 1px #800000;
}

.youtube-button:active {
  border-style: inset !important;
}


/* =========================================================
   TIKTOK
   ========================================================= */

.tiktok-button {
  background: #050505 !important;

  color: white !important;

  border: 2px outset #666 !important;

  text-shadow: 1px 1px #000;
}

.tiktok-button:active {
  border-style: inset !important;
}


/* =========================================================
   DISCORD
   ========================================================= */

.discord-button {
  background: #5865f2 !important;

  color: white !important;

  border: 2px outset #858cff !important;

  text-shadow: 1px 1px #303878;
}

.discord-button:active {
  border-style: inset !important;
}


/* =========================================================
   SOCIAL ICONS
   ========================================================= */

.social-icon {
  width: 19px;

  height: 19px;

  display: inline-flex;

  align-items: center;

  justify-content: center;

  flex-shrink: 0;
}

.social-icon svg {
  width: 19px;

  height: 19px;

  display: block;

  fill: currentColor;
}

.youtube-icon {
  color: white;
}

.youtube-icon .social-play {
  fill: #ff0000;
}

.tiktok-icon {
  color: white;
}

.discord-icon {
  color: white;
}


/* =========================================================
   INTRO
   ========================================================= */

.intro {
  width: 100%;

  padding: 10px;

  display: flex;

  border-right: 1px solid black;
  border-left: 1px solid black;

  box-sizing: border-box;

  background-color: white;
}

.right-intro {
  margin-top: 10px;
}

.welcome {
  font-family: "pixel", sans-serif !important;

  font-size: 1.5em;

  line-height: 1.5em;
}


/* =========================================================
   INFORMATION WINDOWS
   ========================================================= */

.information-body {
  max-height: 600px;

  overflow-y: auto;

  line-height: 1.35;
}

.information-body h3 {
  margin-top: 5px;
}

.information-body h4 {
  margin-bottom: 4px;

  margin-top: 18px;
}

.information-body p {
  margin-top: 7px;

  margin-bottom: 9px;
}


/* =========================================================
   CATS
   ========================================================= */

.cat-body {
  text-align: center;
}

#random-cat {
  display: block;

  width: 250px;

  max-width: 100%;

  height: auto;

  margin: 10px auto;
}


/* =========================================================
   AERO STATUS
   ========================================================= */

.aero-status {
  font-family: "pixel", sans-serif !important;

  font-size: 14px;

  line-height: 1.35;
}

.status-header {
  font-family: "pixel", sans-serif !important;

  font-size: 16px;

  margin-bottom: 5px;
}

.aero-status p {
  margin: 7px 0;
}

.online {
  color: #168b16;

  font-weight: bold;
}

.status-message {
  font-weight: bold;

  text-align: center;

  margin-top: 12px !important;
}


/* =========================================================
   PERSONALIZATION
   ========================================================= */

.personalization-body {
  font-family: "pixel", sans-serif !important;
}

.personalization-body select {
  width: 100%;

  box-sizing: border-box;

  margin-bottom: 10px;

  font-family: "pixel", sans-serif !important;
}

.wallpaper-info {
  margin-top: 10px;

  margin-bottom: 10px;
}

.wallpaper-info p {
  margin: 5px 0;

  line-height: 1.35;
}


/* =========================================================
   AERO GUESTBOOK
   ========================================================= */

.guestbook-body {
  font-family: "pixel", sans-serif !important;

  font-size: 14px;

  line-height: 1.35;

  max-height: 500px;

  overflow-y: auto;
}

.guestbook-body h3 {
  margin-top: 5px;

  margin-bottom: 10px;

  text-align: center;
}

.guestbook-body label {
  display: block;

  margin-top: 8px;

  margin-bottom: 3px;
}

.guestbook-body input,
.guestbook-body textarea {
  width: 100%;

  box-sizing: border-box;

  font-family: "pixel", sans-serif !important;

  font-size: 13px;

  margin-bottom: 7px;
}

.guestbook-body textarea {
  resize: vertical;
}

#guestbook-submit {
  margin-top: 3px;

  margin-bottom: 5px;

  font-family: "pixel", sans-serif !important;
}

#guestbook-status {
  min-height: 18px;

  margin: 5px 0;

  font-size: 12px;
}

#guestbook-entries {
  max-height: 300px;

  overflow-y: auto;
}

.guestbook-entry {
  border: 1px solid #808080;

  background: #f5f5f5;

  padding: 7px;

  margin-bottom: 8px;

  word-wrap: break-word;
}

.guestbook-entry-name {
  font-weight: bold;

  margin-bottom: 4px;
}

.guestbook-entry-message {
  white-space: pre-wrap;
}

.guestbook-entry-date {
  color: #666;

  font-size: 10px;

  margin-top: 5px;
}


/* =========================================================
   AERO FLASH GAMES
   ========================================================= */

.flash-games-window {
  left: 760px;
  top: 810px;

  width: 400px;
  height: 513px;

  box-sizing: border-box;
}

.flash-games-body {
  width: calc(100% - 6px) !important;
  height: calc(100% - 3px);

  box-sizing: border-box;

  margin: 0 3px 3px !important;

  padding: 6px !important;

  display: flex;
  flex-direction: column;

  align-items: center;

  overflow: hidden;
}

.ruffle-player-frame {
  display: block;

  width: 90% !important;
  
  height: 400px !important;

  flex: none

  min-width: 0;
  min-height: 0;

  border: none;

  margin-left: auto !important;
  margin-right: auto !important;

  margin-top: 0;
  margin-bottom: 0;

  padding: 0;

  box-sizing: border-box;

  align-self: center;

  background: #000000;
}

.flash-games-controls {
  width: 100%;

  box-sizing: border-box;

  padding-top: 6px;

  flex-shrink: 0;

  display: flex;

  flex-direction: column;

  align-items: center;
}

.flash-games-main-buttons,
.flash-games-secondary-buttons {
  display: flex;

  flex-direction: row;

  justify-content: center;

  align-items: center;

  gap: 6px;

  width: 100%;
}

.flash-games-secondary-buttons {
  margin-top: 6px;
}

.flash-game-button {
  flex: 0 0 160px;

  width: 160px;

  min-height: 28px;

  box-sizing: border-box;

  padding: 4px 6px;

  font-family: "pixel", sans-serif !important;

  font-size: 11px;

  font-weight: bold;

  text-align: center;

  cursor: url("./default_link.png") 0 0, pointer !important;
}

.flash-game-button:active {
  border-style: inset !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 800px) {

  .one {
    left: 10px;
  }

}


/* =========================================================
   AERO VERBOSE BOOT
   ========================================================= */

#aero-boot {
  position: fixed;

  inset: 0;

  width: 100vw;
  height: 100vh;

  background: #000;

  color: #c0c0c0;

  font-family: "Courier New", monospace !important;

  font-size: 15px;

  line-height: 1.35;

  padding: 22px;

  box-sizing: border-box;

  overflow: hidden;

  z-index: 999999999;

  cursor: none !important;
}

#aero-boot * {
  cursor: none !important;
}

#aero-boot-text {
  white-space: pre-wrap;

  font-family: "Courier New", monospace !important;
}

#aero-boot-cursor {
  display: inline-block;

  margin-top: 2px;

  color: #c0c0c0;

  font-family: "Courier New", monospace !important;

  animation: aeroBootCursor 0.8s steps(1) infinite;
}

@keyframes aeroBootCursor {

  0%,
  49% {
    opacity: 1;
  }

  50%,
  100% {
    opacity: 0;
  }

}

#aero-boot.aero-boot-fade {
  animation: aeroBootFade 0.8s ease forwards;
}

@keyframes aeroBootFade {

  from {
    opacity: 1;
  }

  to {
    opacity: 0;

    visibility: hidden;
  }

}


/* =========================================================
   GUESTBOOK FRAME
   ========================================================= */

.guestbook-body {
  padding: 0 !important;

  overflow: hidden;

  height: 390px;
}

.guestbook-frame {
  display: block;

  width: 100%;

  height: 390px;

  border: none;
}


/* =========================================================
   AERO CHAT
   ========================================================= */

.chat-window {
  position: absolute;

  width: 420px;

  box-sizing: border-box;

  margin: 0;
}

.chat-body {
  box-sizing: border-box;

  overflow: hidden;
}

.chat-frame {
  display: block;

  width: 100%;

  height: 207px;

  border: none;

  margin: 0;

  padding: 0;

  box-sizing: border-box;
}


/* =========================================================
   WINDOWS 98 COMPATIBILITY
   ========================================================= */

body.windows-98-theme .window,
body.windows-98-theme .window * ,
body.windows-98-theme button,
body.windows-98-theme input,
body.windows-98-theme textarea,
body.windows-98-theme select,
body.windows-98-theme label,
body.windows-98-theme legend {
  font-family:
    "Pixelated MS Sans Serif",
    "MS Sans Serif",
    Arial,
    sans-serif !important;
}

body.windows-98-theme .window {
  position: absolute !important;
}

#windows-style-select {
  width: 100%;

  box-sizing: border-box;
}


/* =========================================================
   AERO CLIPPY - AGENTE
   ========================================================= */

.aero-clippy-agent {
  z-index: 1000001 !important;

  pointer-events: auto !important;

  user-select: none !important;

  -webkit-user-select: none !important;

  -webkit-touch-callout: none !important;

  cursor:
    url("./default_link.png") 0 0,
    pointer !important;
}


/* =========================================================
   MY AGENTS - FINESTRA NORMALE
   ========================================================= */

.aero-clippy-manager {
  position: absolute !important;

  left: 320px;

  top: 810px;

  width: 420px;

  height: 513px;

  box-sizing: border-box;

  z-index: 1000000 !important;

  margin: 0;
}


/* =========================================================
   CORPO FINESTRA AGENTE
   ========================================================= */

.aero-clippy-manager-body {
  position: relative;

  box-sizing: border-box;

  padding: 8px !important;

  overflow-y: auto;

  font-family:
    "pixel",
    sans-serif !important;

  font-size: 12px;

  line-height: 1.25;
}


/* =========================================================
   NOME AGENTE
   ========================================================= */

.aero-clippy-agent-name {
  width: 100%;

  height: 18px;

  box-sizing: border-box;

  text-align: center;

  font-family:
    "pixel",
    sans-serif !important;

  font-size: 11px;

  font-weight: bold;

  line-height: 18px;

  margin: 0;
}


/* =========================================================
   AREA AGENTE
   ========================================================= */

.aero-clippy-agent-stage {
  position: relative;

  width: 100%;

  height: 107px;

  box-sizing: border-box;

  overflow: visible;

  pointer-events: none;
}


/* =========================================================
   AGENT BUTTONS
   ========================================================= */

.aero-clippy-agent-buttons {
  display: flex;

  flex-wrap: wrap;

  gap: 4px;

  margin-bottom: 9px;
}


.aero-clippy-agent-button {
  min-height: 26px;

  padding: 3px 7px;

  font-family:
    "pixel",
    sans-serif !important;

  font-size: 10px;

  cursor:
    url("./default_link.png") 0 0,
    pointer !important;
}


.aero-clippy-agent-button.active {
  font-weight: bold;

  border-style: inset !important;
}


/* =========================================================
   ANIMATION
   ========================================================= */

.aero-clippy-animation-row {
  display: flex;

  align-items: center;

  gap: 5px;

  margin-bottom: 8px;
}


.aero-clippy-animation-row label {
  white-space: nowrap;

  font-size: 10px;
}


#aero-clippy-animation {
  width: 100%;

  box-sizing: border-box;

  font-family:
    "pixel",
    sans-serif !important;

  font-size: 10px;
}


/* =========================================================
   TTS
   ========================================================= */

.aero-clippy-tts-row {
  display: flex;

  align-items: center;

  gap: 5px;

  margin-bottom: 8px;

  font-size: 10px;
}


/* =========================================================
   STATUS
   ========================================================= */

.aero-clippy-status {
  display: flex;

  justify-content: space-between;

  border-top:
    1px solid #808080;

  border-bottom:
    1px solid #808080;

  padding: 3px 2px;

  margin-bottom: 8px;

  font-size: 10px;
}


/* =========================================================
   CHAT STATUS
   ========================================================= */

.aero-clippy-chat-status {
  font-size: 9px;

  color: #808080;

  margin-top: 5px;

  margin-bottom: 5px;
}


/* =========================================================
   CHAT
   ========================================================= */

.aero-clippy-chat {
  margin-top: 8px;
}


.aero-clippy-messages {
  width: 100%;

  height: 120px;

  box-sizing: border-box;

  overflow-y: auto;

  background:
    #ffffff;

  border-top:
    1px solid #808080;

  border-left:
    1px solid #808080;

  border-right:
    1px solid #ffffff;

  border-bottom:
    1px solid #ffffff;

  box-shadow:
    inset 1px 1px 0 #404040;

  padding: 4px;

  font-size: 10px;

  line-height: 1.5;
}


.aero-clippy-message {
  margin-bottom: 3px;

  word-wrap: break-word;
}


.aero-clippy-message-user {
  color: #000080;
}


.aero-clippy-message-assistant {
  color: #000000;
}


.aero-clippy-message-error {
  color: #800000;
}


/* =========================================================
   CHAT INPUT
   ========================================================= */

.aero-clippy-input-row {
  display: flex;

  gap: 4px;

  margin-top: 4px;
}


#aero-clippy-input {
  flex: 1;

  min-width: 0;

  height: 21px;

  box-sizing: border-box;

  background:
    #ffffff;

  border-top:
    1px solid #808080;

  border-left:
    1px solid #808080;

  border-right:
    1px solid #ffffff;

  border-bottom:
    1px solid #ffffff;

  box-shadow:
    inset 1px 1px 0 #404040;

  font-family:
    "pixel",
    sans-serif !important;

  font-size: 10px;

  color:
    #000000;

  padding:
    0 4px;

  outline:
    none;
}


#aero-clippy-send,
#aero-clippy-mic {
  font-family:
    "pixel",
    sans-serif !important;

  font-size: 10px;
}


#aero-clippy-mic.active {
  border-style:
    inset !important;
}