/* Keyframes */
@keyframes FadeIn {
    0% {
        opacity: 0;
        visibility: hidden;
    }

    100% {
        opacity: 1;
        visibility: visible;
    }
}

.crt::before {
    content: " ";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
    z-index: 2;
    background-size: 100% 2px, 3px 100%;
    pointer-events: none;
}

.crt::after {
    content: " ";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(18, 16, 16, 0.1);
    opacity: 0;
    z-index: 2;
    pointer-events: none;
    animation: flicker 0.15s infinite;
}

/* Universal */
* {
    margin: 0%;
    padding: 0%;
}

a {
    color: #0066CC;
    text-decoration: none;
    vertical-align: baseline;
}

/* Body */
body {
    margin: 0%;
    padding: 0%;
    font-family: "Segoe UI", sans-serif;
    display: flex;
    background: #DAF3FD;
    justify-content: center;
    align-items: center;
    font-size: .83em;
}

.body-content,
.body-content-credits,
.body-content.projects {
    background-color: #fff;
    width: 90%;
    max-width: 945px;
    padding-top: 1vw;
    box-shadow: -10px 0 15px rgba(0, 0, 0, 0.1), 10px 0 15px rgba(0, 0, 0, 0.1);
}

/* Body Length */
.body-content {
    /* Default */
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.body-content.credits {
    height: 1157%;
}

.body-content.changelog {
    height: 1079%;
}

.body-content {
    z-index: 1;
}

/* Headers */
.top-header {
    display: flex;
    gap: 1.5%;
    padding: 0px 20px;
    font-size: 100%;
    font-weight: light;
    text-align: right;
    justify-content: right;
    padding-bottom: 0.5%;
}

.bottom-header {
    padding: 0px 2%;
}

.language-header {
    font-weight: bold;
}

.nav-banner {
    background: transparent url("Assets/header.png") no-repeat scroll 0 -520px;
    position: absolute;
    height: 130px;
    width: 50%;
    top: 0;
    margin-left: 160px;
    z-index: -1;
}

.nav-gradient {
    background: transparent url("Assets/gradient.png") repeat-x scroll 0 -16px;
    position: absolute;
    height: 130px;
    width: 945px;
    top: 0;
    z-index: -2;
}

/* Links */
.navlinks {
    display: flex;
    align-items: center;
    gap: 3.2%;
}

.navlinks a {
    font-size: 115%;
}

.link-selected {
    color: #000;
}

.reunion-logo {
    padding-bottom: 1.75%;
}

.navbar {
    padding-bottom: 2.25%;
}

/* Banners */
.banner-content,
.banner-content-download {
    color: white;
    padding: 0px 40px;
    background: url(Assets/banner-alternative.svg);
    height: 330px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.banner-content-blog {
    color: white;
    padding: 0px 40px;
    background: url(Assets/banner-blog.svg);
    height: 330px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.banner-content-download {
    background: url(Assets/banner-downloads.svg);
}

.banner-content-links {
    color: white;
    padding: 0px 40px;
    background: url(Assets/banner-links.svg);
    height: 330px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.banner-content-404 {
    color: white;
    padding: 0px 40px;
    background: url(Assets/banner-404.svg);
    height: 330px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.banner-content-things {
    color: white;
    padding: 0px 40px;
    background: url(Assets/banner-things.svg);
    height: 330px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.header-banner {
    padding-bottom: 1%;
}

/* Downloads */
:root {
    --bottom-glow: radial-gradient(farthest-corner at bottom center, rgba(255, 255, 255, 0.7), transparent);
    --stripes: repeating-linear-gradient(to bottom, #eee 0px, #eee 2px, #fff 2px, #fff 4px);
    --hue: 210;
    /* Azul predominante */
}

.download-button {
    /* Colors */
    --button-background: oklch(75% 0.1 var(--hue) / 0.8);
    --bg-dark: oklch(45% 0.1 var(--hue) / 0.75);
    --button-foreground: oklch(95% 0.01 var(--hue));
    /* Style */
    background: var(--bottom-glow), linear-gradient(to bottom, var(--bg-dark), var(--button-background));
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
    border: 1px solid var(--button-background);
    border-radius: 9999px;
    color: var(--button-foreground);
    cursor: pointer;
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Lunasima", sans-serif;
    font-weight: 700;
    margin: 1em 1ex;
    padding: 1ex 1em;
    position: relative;
    text-shadow: 0 2px .5em #0003;
    transition: all 300ms;
    width: fit-content;
}

.download-button:hover {
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.4);
    transform: translateY(-1px);
    color: white;
}

.download-button:active {
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.4);
    transform: translateY(1px);
}

.download-button::after {
    content: '';
    position: absolute;
    top: 4%;
    left: 0.5em;
    width: calc(100% - 1em);
    height: 40%;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.1));
    border-radius: 9999px;
}

.pg-banner {
    padding-bottom: 15px;
}

.download-button-line {
    border-top: 1px solid oklch(80% 0.05 var(--hue));
    margin-top: 15px;
    padding-top: 15px;
    width: 260px;
    background: var(--stripes);
}

/* Cards */
.experiment-card {
    display: block;
    padding: 1rem;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 2px solid;
    border-image: linear-gradient(to right, #0ff, #f0f, #0ff) 1;
    color: white;
    text-decoration: none;
    transition: transform 0.2s ease, background 0.3s ease;
}

.experiment-card:hover {
    transform: scale(1.02);
    background: rgba(255, 255, 255, 0.15);
}

.widgets-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: space-around;
    padding: 20px;
    width: 100%;
    /* Garantir que o grid ocupe toda a largura disponível */
    box-sizing: border-box;
    /* Para garantir que o padding não quebre o layout */
}

.widget-item {
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 10px;
    padding: 10px;
    width: 100%;
    /* Garantir que cada item ocupe a largura inteira */
    box-sizing: border-box;
    /* Para garantir que o padding não quebre o layout */
}

.widgets-card {
    margin: 2rem auto;
    max-width: 800px;
    width: 100%;
    /* Garantir que o widget card ocupe a largura disponível */
    padding: 1.5rem;
    backdrop-filter: blur(10px);
    border-radius: 16px;
    text-align: center;
    box-sizing: border-box;
    /* Para garantir que o padding não quebre o layout */
}

.widgets-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    width: 100%;
    /* Garantir que o container ocupe a largura disponível */
}

.pet-widget {
    width: 400px;
    height: 400px;
    border: none;
    border-radius: 12px;
    box-shadow: 0 0 10px #00f6ff99;
}

.guestbook-link img {
    width: 80px;
    height: auto;
    transition: transform 0.2s ease;
}

.guestbook-link img:hover {
    transform: scale(1.1);
}

.content-cards,
.content-cards-download {
    border-top: 1px solid #e4e4e4;
    margin: 0px 50px;
    margin-top: 26px;
    padding-top: 23px;
    width: 628px;
    display: flex;
    flex-direction: column;
    padding-bottom: 150px;
}

.content-cards-download {
    padding-bottom: 201px;
}

.cards {
    display: flex;
    gap: 20px;
}

.card-header,
.addons-header {
    color: #22436C;
    font-size: 146%;
    font-weight: 400;
    padding-bottom: 25px;
}

.badges-card {
    background: rgba(255, 255, 255, 0.9);
    padding: 20px;
    border-radius: 8px;
    margin-top: 30px;
}

.badges-container {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 15px;
    justify-items: center;
}

.badge {
    width: 100px;
    height: auto;
    transition: transform 0.3s;
}

.badge:hover {
    transform: scale(1.1);
}

.addons-header {
    padding-bottom: 10px;
}

.extras {
    margin-top: 24px;
    width: 198px;
}

.card,
.project-card {
    display: flex;
    flex-direction: column;
    width: 200px;
}

.card-header-link {
    color: #0099CC;
    font-size: 105%;
}

.card-header-link.mirror {
    color: #1e69f8;
}

.line-spacing {
    width: 100%;
    height: 1px;
    margin-top: 3%;
    margin-bottom: 3%;
    background-color: #a1a1a136;
}

.project-card {
    transition: 0.1s ease-in-out;
}

.showcase-img,
.project-img {
    padding-bottom: 10px;
}

/* Padding */
.line-padded.region {
    padding-bottom: 636px;
}

.line-padded.projects {
    padding-bottom: 371px;
}

.content-padded {
    padding: 0 20px 20px 20px;
}

.line-padded {
    padding: 0 20px 20px 20px;
    line-height: 25px;
}

/* Footer */
footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 20px;
    width: 925px;
    bottom: 0;
}

.footer-404 {
    padding-bottom: 712px;
}

.copyright,
.right-side {
    display: flex;
    align-items: center;
    gap: 15px;
}

.psa {
    font-weight: bold;
    font-size: 12px;
}

.team-logo {
    padding-right: 20px;
    width: 120px;
}

.real-content {
    display: flex;
}

.list {
    padding-left: 27px;
}

.list.credit {
    padding-top: 2px;
    padding-bottom: 15px;
}

.list.specs>*>* {
    padding-top: 0.5%;
    padding-bottom: 0.5%;
}

.list.specs2>*>* {
    padding-top: 1.5%;
    padding-bottom: 1.5%;
}

.header-404 {
    padding-bottom: 3px;
}

.footer-credits {
    padding-bottom: 46px;
}

.credit-pg {
    padding-bottom: 15px;
}

.list.region {
    padding-bottom: 10px;
    border-bottom: 1px solid #0000001a;
}

.content-projects {
    padding-top: 30px;
}

/* Titles */
.region-title {
    padding-bottom: 20px;
}

.project-title {
    color: #22436C;
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 240%;
    font-style: normal;
    font-weight: normal;
}

.project-subtitle {
    color: #22436C;
    padding-bottom: 10px;
}

/* Animations */
/* Landing page */
.banner-content,
.banner-content *,
/* Added * so the elements also get wrapped, along with the main element */
.banner-content-download,
.banner-content-download *,
.real-content,
.real-content *,
.line-padded,
.line-padded *,
.footer-credits,
.footer-credits * {
    opacity: 0;
    animation: FadeIn 1.5s ease-in-out 0.1s;
    animation-fill-mode: forwards;
}

/* Darkening when hovering over a link */
.navlinks a:hover,
a[href="#"]:hover,
a[href^="https"]:not([href*="reunion7.com"]):hover {
    filter: brightness(50%);
}

/* Brighten site logo when hovering */
.reunion-logo,
.reunion-logo-footer {
    transition: 0.3s ease-in-out;
}

.reunion-logo:hover,
.reunion-logo-footer:hover {
    filter: brightness(120%)
}

/* Download button hold animation */
.download-button {
    transition: 0.1s ease-in-out;
}

.download-button:hover {
    transform: scale(98%)
}

.download-button:active {
    transform: scale(95%)
}

/* Project-img box-shadow */
.project-card:hover {
    transform: scale(1.05);
}

/* Tooltips */
.tooltip {
    position: relative;
    display: inline-block;
}

.tooltip img {
    width: 12px;
    height: 12px;
    cursor: pointer;
}

.tooltip .tooltiptext {
    display: none;
    width: 120px;
    background-color: rgb(0, 0, 0);
    color: #fff;
    text-align: center;
    padding: 5px 0;
    margin-left: 110%;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
    position: absolute;
    z-index: 1;
}

.tooltip:hover .tooltiptext {
    display: block;
}

/* Blog - Estilo Windows 7 Aero + Mac OS X Aqua */
.blog-post {
    padding: 20px;
    background: rgba(255, 255, 255, 0.85);
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 6px;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(255, 255, 255, 0.3) inset;
    margin-bottom: 25px;
    position: relative;
    backdrop-filter: blur(4px);
    flex: 0 1 calc(33.33% - 20px);
    /* 20px de espaçamento interno/entre os cards */
    margin-bottom: 25px;
    /* Já existe no seu código;
     mantenha para espaçamento vertical */
}

/* Efeito de água no hover */
.blog-post:hover {
    box-shadow: 0 4px 12px rgba(0, 128, 255, 0.15), 0 0 0 1px rgba(255, 255, 255, 0.4) inset;
}

/* Data - Estilo discreto */
.post-date {
    color: #6D8EA0;
    font-size: 0.85em;
    font-weight: 500;
    letter-spacing: 0.3px;
    margin: 0 0 8px 0;
    text-transform: uppercase;
    font-family: 'Segoe UI', sans-serif;
}

/* Título - Estilo Aqua Button */
.post-title {
    font-size: 1.4em;
    font-weight: 600;
    color: #004A77;
    text-decoration: none;
    display: inline-block;
    background: linear-gradient(180deg, #7FC4FF 0%, #4D9EC6 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.4), 0 -1px 1px rgba(0, 0, 0, 0.1);
    padding: 4px 8px;
    border-radius: 4px;
    position: relative;
}

/* Efeito de brilho no hover */
.post-title:hover {
    background: linear-gradient(180deg, #8FD8FF 0%, #5DAED6 100%);
    -webkit-background-clip: text;
    background-clip: text;
}

/* Sublinhado estilo Aero */
.post-title::after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(127, 196, 255, 0.6) 50%, transparent 100%);
}

/* Texto do post - Estilo Windows 7 */
.post-excerpt {
    color: #505050;
    font-size: 0.95em;
    line-height: 1.5;
    margin: 15px 0 0 0;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
}

.post-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 2rem;
}

.post-image {
    width: 80%;
    border: 0px solid #60f;
    margin: 1rem 0;
}

.callout {
    background: rgba(102, 153, 255, 0.1);
    padding: 2rem;
    border-left: 1px solid #a6f;
    margin: 1.5rem 0;
}

.signature {
    width: 200px;
    filter: drop-shadow(0 0 5px #a6f);
}

.fieldset {
    border: 1px gray solid;
    box-shadow: white 1px 1px 0px inset, white 1px 1px 0px, white 0px 1px 0px, white 1px 0px 0px;
    margin: 0;
    padding: 10px;
    overflow-y: auto;
    height: 190px;
}

.badges-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
    gap: 6px;
    justify-items: center;
    align-items: center;
    max-width: 600px;
    /* ou o tamanho que combinar com teu layout */
    margin: 0 auto;
    padding: 10px;
}

.badge {
    width: auto;
    max-width: 88px;
    height: auto;
    image-rendering: pixelated;
    /* opcional, pra manter o visual retrô */
}

.widget-zone {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
    padding: 20px;
}

.widget-frame {
    width: 250px;
    height: 250px;
    border: none;
    background-color: #00000020;
    backdrop-filter: blur(3px);
    border-radius: 8px;
}

.moon-widget img {
    width: 212px;
    height: 136px;
    border: 2px solid #fff;
    border-radius: 4px;
}

.badge-bar {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 10px;
}

.badge {
    height: auto;
    max-height: 80px;
    width: auto;
}

.badge.small {
    max-height: 60px;
}

.album-cover {
    position: relative;
    width: 100px;
    height: 100px;
    border-radius: 6px;
    /* menos arredondado */
    overflow: hidden;
    background: oklch(60% 0.1 var(--hue) / 0.15);
    backdrop-filter: blur(8px) saturate(1.2);
    -webkit-backdrop-filter: blur(8px) saturate(1.2);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
    /* mais suave */
    margin: 6px;
    /* menor espaço entre álbuns */
}

.album-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* reflexo estilo aero */
.album-cover::after {
    content: '';
    position: absolute;
    top: 6%;
    left: 8%;
    width: 84%;
    height: 30%;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 0.05));
    border-radius: 20% / 40%;
    /* formato mais suave, menos ovalzão */
    filter: blur(2px);
    pointer-events: none;
}

/* grid compacto */
.badges-container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-start;
}

.real-content {
    display: flex;
    /* Se quiser, adicione um gap para dar espaçamento entre main e sidebar */
    /* gap: 20px;
     */
}

/* A área principal, onde ficam os posts */
.main-content {
    flex: 1;
    /* ou um valor fixo, ex: width: 70%;
     ou max-width: 800px;
     */
    box-sizing: border-box;
    padding-right: 20px;
    /* se quiser um espaço do lado do sidebar */
}

/* A área de extras (sidebar) */
.extras {
    width: 250px;
    /* Tamanho fixo do sidebar */
    box-sizing: border-box;
}

.cards.blog-posts {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
    /* se quiser usar gap, funciona em navegadores modernos */
}

.blog-post {
    flex: 0 1 calc(33.333% - 20px);
    /* Se usar gap, não precisa fazer calc - 20px, pode ser só 33.333%. */
    box-sizing: border-box;
}

/* Start https://www.cursors-4u.com */
* {
    cursor: url(https://cur.cursors-4u.net/nature/nat-2/nat120.cur), auto !important;
}

/* End https://www.cursors-4u.com */
/* stuff you can probably edit easily */
.title-bar {
    background: linear-gradient(90deg, purple, orchid, pink);
}

.player {
    width: fit-content;
    border: black solid 1px;
    border-width: 1px 0px 0px 1px;
    margin-left: auto;
    margin-right: auto;
}

.controlimg:hover {
    cursor: help;
}

.songtitlewindow {
    background-color: #fff;
    box-shadow: inset -1px -1px #fff, inset 1px 1px grey, inset -2px -2px #dfdfdf, inset 2px 2px #0a0a0a;
}

#musicplayer {
    border: 2px solid silver;
    /* border around player */
    border-width: 2px 0px 0px 0px;
    width: 460px;
    /* width of the player */
}

#imagestyle {
    background: silver;
    /* background color of player */
    border: 2px solid silver;
    /* border around player */
    width: 100px;
    /* width of the player */
    height: 100px;
    box-shadow: inset -1px -1px #fff, inset 1px 1px grey, inset -2px -2px #dfdfdf, inset 2px 2px #0a0a0a;
}

.ic {
    width: 95px;
    position: relative;
    bottom: 1px;
    right: 1px;
    overflow: hidden;
    padding: 2px;
    border: 2px solid transparent;
}

.songtitlearrow {
    background-size: 100%;
    background-repeat: no-repeat;
    background-image: url(https://i.imgur.com/Gt4fzFB.png);
    height: 21px;
    width: 21px;
    position: relative;
    top: 2px;
    left: -2px;
    border: 0px solid transparent;
    border-width: 0px 0px 0px 0px;
}

.songtitle {
    padding: 5px;
    /* padding around song title */
    border-bottom: 0px;
    /* border under song title */
    display: block;
    font-family: Pixelated MS Sans Serif;
}

.controls {
    font-size: 18px !important;
    /* size of controls */
    text-align: center;
    width: 100%;
    position: relative;
    bottom: 10px;
}

.controls td {
    padding: 8px 5px 0px 5px;
    /* padding around controls */
}

button {
    min-width: 40px;
}

.seeking {
    background-color: #c0c0c0;
    /* background color of seeking bar */
    display: flex;
    justify-content: space-evenly;
    padding: 14px;
    /* padding around seeking bar */
}

.current-time {
    padding-right: 5px;
}

.total-duration {
    padding-left: 5px;
}

.controlimg {
    height: 15px;
    width: 15px;
}

/* below is styling to get windows 98 effect. from 98.css [https://jdan.github.io/98.css/] */
input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    background: transparent;
}

input[type="range"]:focus {
    outline: none;
}

input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 21px;
    width: 11px;
    background: svg-load("https://raw.githubusercontent.com/jdan/98.css/main/icon/indicator-horizontal.svg");
    transform: translateY(-8px);
    box-shadow: none;
    border: none;
}

input[type="range"].has-box-indicator::-webkit-slider-thumb {
    background: svg-load("https://raw.githubusercontent.com/jdan/98.css/main/icon/indicator-rectangle-horizontal.svg");
    transform: translateY(-10px);
}

input[type="range"]::-moz-range-thumb {
    height: 21px;
    width: 11px;
    border: 0;
    border-radius: 0;
    background: svg-load("https://raw.githubusercontent.com/jdan/98.css/main/icon/indicator-horizontal.svg");
    transform: translateY(2px);
}

input[type="range"]::-moz-range-thumb {
    background: url("https://raw.githubusercontent.com/jdan/98.css/main/icon/indicator-horizontal.svg");
    border: 0;
    border-radius: 0;
    height: 21px;
    transform: translateY(2px);
    width: 11px;
}

input[type="range"].has-box-indicator::-moz-range-thumb {
    background: svg-load("https://raw.githubusercontent.com/jdan/98.css/main/icon/indicator-rectangle-horizontal.svg");
    transform: translateY(0px);
}

input[type="range"]::-webkit-slider-runnable-track {
    width: 100%;
    height: 2px;
    box-sizing: border-box;
    background: black;
    border-right: 1px solid grey;
    border-bottom: 1px solid grey;
    box-shadow: 1px 0 0 white, 1px 1px 0 white, 0 1px 0 white, -1px 0 0 darkgrey, -1px -1px 0 darkgrey, 0 -1px 0 darkgrey, -1px 1px 0 white, 1px -1px darkgrey;
}

input[type="range"]::-moz-range-track {
    width: 100%;
    height: 2px;
    box-sizing: border-box;
    background: black;
    border-right: 1px solid grey;
    border-bottom: 1px solid grey;
    box-shadow: 1px 0 0 white, 1px 1px 0 white, 0 1px 0 white, -1px 0 0 darkgrey, -1px -1px 0 darkgrey, 0 -1px 0 darkgrey, -1px 1px 0 white, 1px -1px darkgrey;
}

button {
    -webkit-font-smoothing: none;
    font-family: "Pixelated MS Sans Serif", Arial;
    font-size: 11px;
}

button {
    border: none;
    border-radius: 0;
    box-sizing: border-box;
    color: transparent;
    min-height: 23px;
    min-width: 75px;
    padding: 0 12px;
    text-shadow: 0 0 #222;
    background: silver;
    box-shadow: inset -1px -1px #0a0a0a, inset 1px 1px #fff, inset -2px -2px grey, inset 2px 2px #dfdfdf
}

button:not(:disabled):active {
    box-shadow: inset -1px -1px #fff, inset 1px 1px #0a0a0a, inset -2px -2px #dfdfdf, inset 2px 2px grey;
    text-shadow: 1px 1px #222;
}

@media (not(hover)) {
    button:not(:disabled):hover {
        box-shadow: inset -1px -1px #fff, inset 1px 1px #0a0a0a, inset -2px -2px #dfdfdf, inset 2px 2px grey;
    }
}

button:focus {
    outline: 1px dotted #000;
    outline-offset: -4px
}

button::-moz-focus-inner {
    border: 0
}

.title-bar-controls button {
    border: none;
    border-radius: 0;
    box-sizing: border-box;
    color: transparent;
    min-height: 23px;
    min-width: 75px;
    padding: 0 12px;
    text-shadow: 0 0 #222;
}

.title-bar-controls button {
    background: silver;
    box-shadow: inset -1px -1px #0a0a0a, inset 1px 1px #fff, inset -2px -2px grey, inset 2px 2px #dfdfdf;
}

.title-bar-controls button:not(:disabled):active {
    box-shadow: inset -1px -1px #fff, inset 1px 1px #0a0a0a, inset -2px -2px #dfdfdf, inset 2px 2px grey;
    text-shadow: 1px 1px #222;
}

@media (not(hover)) {
    button:not(:disabled):hover {
        box-shadow: inset -1px -1px #fff, inset 1px 1px #0a0a0a, inset -2px -2px #dfdfdf, inset 2px 2px grey
    }
}

.title-bar-controls button:focus {
    outline: 1px dotted #000;
    outline-offset: -4px
}

.title-bar-controls button::-moz-focus-inner {
    border: 0
}

@font-face {
    font-family: "Pixelated MS Sans Serif";
    src: url("https://files.catbox.moe/1za99g.woff") format("woff");
    src: url("https://files.catbox.moe/8fwbkl.woff2") format("woff2");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "Pixelated MS Sans Serif";
    src: url("https://files.catbox.moe/z7csle.woff") format("woff");
    src: url("https://files.catbox.moe/moqhx6.woff2") format("woff2");
    font-weight: bold;
    font-style: normal;
}

.window,
.title-bar {
    font-family: "Pixelated MS Sans Serif", Arial;
    -webkit-font-smoothing: none;
    font-size: 11px;
}

.window {
    box-shadow: inset -1px -1px #0a0a0a, inset 1px 1px #dfdfdf, inset -2px -2px #808080, inset 2px 2px #ffffff;
    background: #c0c0c0;
    padding: 3px;
    width: 460px;
    height: 125px;
}

.title-bar {
    padding: 3px 2px 3px 3px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.title-bar-text {
    font-weight: bold;
    color: white;
    letter-spacing: 0;
    margin-right: 24px;
}

.title-bar-controls {
    display: flex;
}

.title-bar-controls button {
    padding: 0;
    display: block;
    min-width: 16px;
    min-height: 14px;
}

.title-bar-controls button:active {
    padding: 0;
}

.title-bar-controls button:focus {
    outline: none;
}

.title-bar-controls button[aria-label=Minimize] {
    background-image: url("https://raw.githubusercontent.com/jdan/98.css/main/icon/minimize.svg");
    background-position: bottom 3px left 4px;
    background-repeat: no-repeat;
}

.title-bar-controls button[aria-label=Maximize] {
    background-image: url("https://raw.githubusercontent.com/jdan/98.css/4a2282dd9170cabf730fb5803d1153d86b2e94e3/icon/maximize.svg");
    background-position: top 2px left 3px;
    background-repeat: no-repeat;
}

.title-bar-controls button[aria-label=Close] {
    background-image: url("https://raw.githubusercontent.com/jdan/98.css/main/icon/close.svg");
    background-position: top 3px left 4px;
    background-repeat: no-repeat;
    margin-left: 2px;
}

.window-body {
    margin: 0px;
    height: 98px;
}

input[type=range] {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
}

input[type=range]:focus {
    outline: none;
}

/* settings for chrome browsers */
input[type=range]::-webkit-slider-runnable-track {
    width: 100%;
    height: 2px;
    /* thickness of seeking track */
    cursor: help;
}

/* settings for firefox browsers */
input[type=range]::-moz-range-track {
    width: 100%;
    height: 2px;
    /* thickness of seeking track */
    cursor: help;
}

.flex {
    display: flex;
}

.titlebaricon {
    height: 14px;
    width: 14px;
}

/* Seção MySpace Nostalgia - Estilo Tabela Anos 2000 */
.myspace-nostalgia-section,
.myspace-widget table {
    width: 100%;
    max-width: 300px;
    border-collapse: collapse;
    background-color: #cce0ff;
    border: 1px solid #3366cc;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
    font-family: "Segoe UI", sans-serif;
    font-size: 13px;
    margin: 20px 0;
}

.myspace-widget th {
    background-color: #6699cc;
    color: white;
    text-align: left;
    padding: 5px 10px;
    font-weight: bold;
    font-size: 14px;
}

.myspace-widget td {
    padding: 6px 10px;
    border-top: 1px solid #aaccff;
}

.myspace-widget td:first-child {
    font-weight: bold;
    width: 35%;
}

.myspace-container {
    display: flex;
    flex-wrap: wrap;
    width: 800px;
    margin: 0 auto;
    background-color: #dae3f0;
}

.myspace-profile-sidebar {
    width: 300px;
    min-width: 250px;
    padding: 10px;
    background-color: #dae3f0;
}

.myspace-main-content {
    flex: 1;
    min-width: 300px;
    padding: 10px;
    background-color: #dae3f0;
}

.myspace-profile-details {
    width: 100%;
    border-collapse: collapse;
    background-color: #cce0ff;
    border: 1px solid #3366cc;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}

.myspace-profile-details th {
    background-color: #6699cc;
    color: white;
    text-align: left;
    padding: 5px 10px;
    font-weight: bold;
    font-size: 14px;
}

.myspace-profile-details td {
    padding: 6px 10px;
    border-top: 1px solid #aaccff;
}

.myspace-profile-details td.label {
    width: 35%;
    font-weight: bold;
}

.myspace-profile-picture-container {
    text-align: center;
    margin-bottom: 15px;
    padding: 8px;
}

/* Moldura Windows 98 para foto de perfil */
.myspace-profile-pic {
    width: 160px;
    border-style: solid;
    border-width: 2px;
    border-color: #ffffff #808080 #808080 #ffffff;
    box-shadow: 2px 2px 0 #000, -2px -2px 0 #dfdfdf;
    background-color: #c0c0c0;
    padding: 3px;
}

.myspace-personal-msg {
    font-size: 12px;
    margin: 6px 0;
    font-weight: normal;
}

.myspace-gender-age,
.myspace-last-login {
    list-style-type: none;
    padding: 0;
    margin: 10px 0;
    line-height: 1.5em;
}

.myspace-contact-box {
    margin: 15px 0;
    border: 1px solid #3366cc;
    background-color: #cce0ff;
    padding: 5px;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}

.myspace-contact-box h3 {
    background-color: #6699cc;
    color: white;
    padding: 3px 5px;
    margin: -5px -5px 5px -5px;
    font-size: 14px;
    font-weight: bold;
    border-bottom: 1px solid #3366cc;
}

.myspace-contact-images img {
    margin: 2px;
    vertical-align: middle;
}

.myspace-interests {
    margin-top: 15px;
}

.myspace-interest-category {
    margin-bottom: 10px;
}

.myspace-interest-category h4 {
    margin-bottom: 3px;
    color: #000;
    font-size: 13px;
    font-weight: bold;
}

.myspace-interest-category p {
    margin: 0;
}

.myspace-blog,
.myspace-blurbs,
.myspace-friends {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #aaccff;
}

.myspace-blog h3,
.myspace-blurbs h3,
.myspace-friends h3 {
    font-size: 14px;
    margin-bottom: 5px;
    color: #000;
    font-weight: bold;
}

.myspace-blog p,
.myspace-blurbs p {
    margin: 4px 0;
}

.myspace-info {
    font-size: 11px;
    color: #333;
}

.myspace-friend-grid {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.myspace-friend {
    width: 100px;
    text-align: center;
    font-size: 11px;
}

.myspace-friend img {
    width: 100%;
    border: 1px solid #3366cc;
}

.myspace-footer {
    text-align: center;
    padding: 10px;
    font-size: 11px;
    color: #333;
    border-top: 1px solid #aaccff;
    background-color: #dae3f0;
}

/* Responsividade retrô */
@media (max-width: 768px) {
    .myspace-container {
        flex-direction: column;
        width: 100%;
    }
    .myspace-profile-sidebar,
    .myspace-main-content {
        width: 100%;
        border-right: none;
    }
}

/* gradients and win 7 colors */
:root {
    /* elements background */
    --w7-el-bg: #f0f0f0;
    --w7-el-bg-s-1: #e8e8e8;
    --w7-el-bg-s-2: #d0d0d0;
    
    /* border color */
    --w7-el-bd: #adadad;
    --w7-el-bd-h: #0078d7;
    --w7-el-bd-a: #005499;
    
    /* radius */
    --w7-el-bdr: 2px;
    
    /* shadows */
    --w7-el-sd: inset 0 1px 0 rgba(255,255,255,0.5), 0 1px 2px rgba(0,0,0,0.1);
    
    /* background track */
    --w7-sb-y: linear-gradient(to right, #e8e8e8, #f5f5f5);
    --w7-sb-x: linear-gradient(to bottom, #e8e8e8, #f5f5f5);
    
    /* hover */
    --w7-sb-grad-h-1: #bee6fd;
    --w7-sb-grad-h-2: #a7d9f5;
    
    /* active */
    --w7-sb-grad-a-1: #7fb8e5;
    --w7-sb-grad-a-2: #5a9fd4;
}

::-webkit-scrollbar {
    width: 16px;
    height: 16px;
}

::-webkit-scrollbar-corner {
    background: var(--w7-el-bg);
}

::-webkit-scrollbar-track {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAAFElEQVQIW2M4fPz0////GYAYyAIASnoKpV3w4kgAAAAASUVORK5CYII=");
    image-rendering: pixelated;
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
}

::-webkit-scrollbar-track:active {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAIAAAD91JpzAAAAEElEQVQIW2No6+pjgAAgCwAWogM9VKrgGQAAAABJRU5ErkJggg==");
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
}

::-webkit-scrollbar-thumb {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAKCAIAAADpZ+PpAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADrSURBVChTTc5LboJQGAXguyoCu4ERCzAGlRk7UOwGWIDh0s4M4kxb06RSq/jAB6AxJkJ4lTDrue3AnvyzP+fLId+/yfM8juP7PQmCCOf7B3e+ZD+O40RRVFW12VQUpd3r9U3T2m4OpKoqWZYNwzBZLEqfh0N7NnvfrPcEWlEUWZb9mWF4Ph6D0ylcLbfM5HkeJrhGA2hb15/QXnv+w7RYXsDatjOdvnmrHSnLEizMNE2v11sUXQBCnn98kbquBUGQJAlmq9WB2e3qg4HJdqKkaRql1HGc0WgMcDJ5dd0F24kediZJ8t/ELT69H+8py0CYSIO5AAAAAElFTkSuQmCC") no-repeat 50%, linear-gradient(to right, var(--w7-el-bg) 45%, var(--w7-el-bg-s-1) 45%, var(--w7-el-bg-s-2));
    background-color: var(--w7-el-bg);
    border: 1px solid var(--w7-el-bd);
    border-radius: var(--w7-el-bdr);
    box-shadow: var(--w7-el-sd);
    width: 16px;
    height: 16px;
    z-index: 1;
}

::-webkit-scrollbar-thumb:hover {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAKCAIAAADpZ+PpAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADrSURBVChTTc5LboJQGAXguyoCu4ERCzAGlRk7UOwGWIDh0s4M4kxb06RSq/jAB6AxJkJ4lTDrue3AnvyzP+fLId+/yfM8juP7PQmCCOf7B3e+ZD+O40RRVFW12VQUpd3r9U3T2m4OpKoqWZYNwzBZLEqfh0N7NnvfrPcEWlEUWZb9mWF4Ph6D0ylcLbfM5HkeJrhGA2hb15/QXnv+w7RYXsDatjOdvnmrHSnLEizMNE2v11sUXQBCnn98kbquBUGQJAlmq9WB2e3qg4HJdqKkaRql1HGc0WgMcDJ5dd0F24kediZJ8t/ELT69H+8py0CYSIO5AAAAAElFTkSuQmCC") no-repeat 50%, linear-gradient(to right, var(--w7-sb-grad-h-1) 45%, var(--w7-sb-grad-h-2) 45%);
    border-color: var(--w7-el-bd-h);
}

::-webkit-scrollbar-thumb:active {
    background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAKCAIAAADpZ+PpAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAADrSURBVChTTc5LboJQGAXguyoCu4ERCzAGlRk7UOwGWIDh0s4M4kxb06RSq/jAB6AxJkJ4lTDrue3AnvyzP+fLId+/yfM8juP7PQmCCOf7B3e+ZD+O40RRVFW12VQUpd3r9U3T2m4OpKoqWZYNwzBZLEqfh0N7NnvfrPcEWlEUWZb9mWF4Ph6D0ylcLbfM5HkeJrhGA2hb15/QXnv+w7RYXsDatjOdvnmrHSnLEizMNE2v11sUXQBCnn98kbquBUGQJAlmq9WB2e3qg4HJdqKkaRql1HGc0WgMcDJ5dd0F24kediZJ8t/ELT69H+8py0CYSIO5AAAAAElFTkSuQmCC") no-repeat 50%, linear-gradient(to right, var(--w7-sb-grad-a-1) 45%, var(--w7-sb-grad-a-2) 45%);
    border-color: var(--w7-el-bd-a);
}

::-webkit-resizer {
    width: 16px;
    height: 16px;
    background-color: var(--w7-el-bg);
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAN0lEQVR4Ae3MgQUAMBRDwU5fFF05lb/CARTBw2Ulof0DxPtcwp3hNuEYnjbcEW4TjuFpwx3h9gMWGgZ2Y/PT2gAAAABJRU5ErkJggg==");
    background-position: bottom right;
    background-repeat: no-repeat;
    image-rendering: pixelated;
}

::-webkit-scrollbar-button {
    background-color: var(--w7-el-bg);
    border: 1px solid var(--w7-el-bd);
    border-radius: var(--w7-el-bdr);
    box-shadow: var(--w7-el-sd);
    display: block;
    width: 16px;
    height: 16px;
    image-rendering: pixelated;
    background-repeat: no-repeat;
    background-position: center center;
}

::-webkit-scrollbar-button:hover {
    background-color: var(--w7-el-bg);
    border-color: var(--w7-el-bd-h);
    border-radius: var(--w7-el-bdr);
    box-shadow: var(--w7-el-sd);
}

::-webkit-scrollbar-button:active {
    background-color: var(--w7-el-bg);
    border-color: var(--w7-el-bd-a);
    border-radius: var(--w7-el-bdr);
    box-shadow: var(--w7-el-sd);
    background-position: 2px 2px;
}

::-webkit-scrollbar-button:horizontal:decrement {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMCUiIHkxPSIxMDAlIiB4Mj0iMCUiIHkyPSIwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3R5bGU9InN0b3AtY29sb3I6IzMzMztzdG9wLW9wYWNpdHk6MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3R5bGU9InN0b3AtY29sb3I6I2FhYTtzdG9wLW9wYWNpdHk6MSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxwYXRoIGQ9Ik05IDRIOHYxSDd2MUg2djFINXYxaDF2MWgxdjFoMXYxaDFWNFoiIGZpbGw9InVybCgjYSkiLz48L3N2Zz4=");
}

::-webkit-scrollbar-button:horizontal:increment {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMCUiIHkxPSIxMDAlIiB4Mj0iMCUiIHkyPSIwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3R5bGU9InN0b3AtY29sb3I6IzMzMztzdG9wLW9wYWNpdHk6MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3R5bGU9InN0b3AtY29sb3I6I2FhYTtzdG9wLW9wYWNpdHk6MSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxwYXRoIGQ9Ik03IDRINnY3aDF2LTFoMVY5aDFWOGgxVjdIOVY2SDhWNUg3VjRaIiBmaWxsPSJ1cmwoI2EpIi8+PC9zdmc+");
}

::-webkit-scrollbar-button:vertical:decrement {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMCUiIHkxPSIwJSIgeDI9IjEwMCUiIHkyPSIwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3R5bGU9InN0b3AtY29sb3I6IzMzMztzdG9wLW9wYWNpdHk6MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3R5bGU9InN0b3AtY29sb3I6I2FhYTtzdG9wLW9wYWNpdHk6MSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxwYXRoIGQ9Ik04IDZIN3YxSDZ2MUg1djFINHYxaDdWOWgtMVY4SDlWN0g4VjZaIiBmaWxsPSJ1cmwoI2EpIi8+PC9zdmc+");
}

::-webkit-scrollbar-button:vertical:increment {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iMCUiIHkxPSIwJSIgeDI9IjEwMCUiIHkyPSIwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3R5bGU9InN0b3AtY29sb3I6IzMzMztzdG9wLW9wYWNpdHk6MSIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3R5bGU9InN0b3AtY29sb3I6I2FhYTtzdG9wLW9wYWNpdHk6MSIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxwYXRoIGQ9Ik0xMSA2SDR2MWgxdjFoMXYxaDF2MWgxVjloMVY4aDFWN2gxVjZaIiBmaWxsPSJ1cmwoI2EpIi8+PC9zdmc+");
}

::-webkit-scrollbar-button:horizontal:increment:start,
::-webkit-scrollbar-button:horizontal:decrement:end,
::-webkit-scrollbar-button:vertical:increment:start,
::-webkit-scrollbar-button:vertical:decrement:end {
    display: none;
}

:root {
    --w7-s-icon: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PHBhdGggc3Ryb2tlPSIjMjA3MGI5IiBkPSJNMTAuNSAxQzguMDIgMSA2IDMuMDIgNiA1LjVhNC40NSA0LjQ1IDAgMCAwIDEgMi43OTNMMi4wMjMgMTMuMjdsLjcwNC43MUw3LjcwNyA5Yy43Ny42MTcgMS43MzQgMSAyLjc5MyAxIDIuNDggMCA0LjUtMi4wMiA0LjUtNC41UzEyLjk4IDEgMTAuNSAxWm0wIDFDMTIuNDM4IDIgMTQgMy41NjMgMTQgNS41IDE0IDcuNDM4IDEyLjQzNyA5IDEwLjUgOUEzLjQ5NCAzLjQ5NCAwIDAgMSA3IDUuNUM3IDMuNTYyIDguNTYzIDIgMTAuNSAyWiIvPjwvc3ZnPg==");
    --w7-s-bg: var(--w7-s-icon) no-repeat center;
}


