/* Skin Windows 95 des pages de regles.
   Valeurs reprises telles quelles du skin du jeu (client/src/styles.css) : memes
   couleurs, memes reliefs biseautes, meme police, memes curseurs pixel.
   Feuille SEPAREE et partagee par regles.html et rules.html : une seule source
   pour les deux langues. Statique, donc toujours sans JS.
   Si le skin du jeu change, ce fichier doit suivre. */

@font-face {
  font-family: "W95FA";
  src: url("/fonts/w95fa.woff2") format("woff2");
  font-display: swap;
}

:root {
  --w95-face: #c0c0c0;
  --w95-light: #dfdfdf;
  --w95-hi: #ffffff;
  --w95-shadow: #808080;
  --w95-dark: #000000;
  --w95-navy: #000080;
  --w95-navy-2: #1084d0;
  --w95-muted: #404040;

  --raise:
    inset -1px -1px var(--w95-dark), inset 1px 1px var(--w95-hi),
    inset -2px -2px var(--w95-shadow), inset 2px 2px var(--w95-light);
  --sink:
    inset 1px 1px var(--w95-shadow), inset -1px -1px var(--w95-hi),
    inset 2px 2px var(--w95-dark), inset -2px -2px var(--w95-light);
  --drop: 3px 3px 0 rgba(0, 0, 0, 0.25);
  --titlebar: linear-gradient(90deg, var(--w95-navy), var(--w95-navy-2));
  --radius-md: 4px;
  --depth: linear-gradient(180deg, rgba(20, 120, 150, 0.651) 0%, rgba(2, 30, 70, 0.884) 100%);

--cur-arrow: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAgCAYAAAAIXrg4AAAAXklEQVR42tXWMQ4AIAgDQP7/aV10Q6NCSyXpCLcBZmZtBFY0AAZxgFkIiAsgoBogE6oFMiANIAJpAS+QJnADaQMnkBbgHKhVioHMNc4FnAFhiANsGv4BYM8BHPj7f+pclQA54G6TsgAAAABJRU5ErkJggg==");
--cur-hand: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAgCAYAAAAIXrg4AAAAVklEQVR42u3TQQoAIAhE0e5/6VoFYSgS04QxH9wFDyFb8+tm4HGA2Q1IgIDCAOwAuYANAcEA72EIBOAjwFv9ANggLoBqhQSkfxUUqgukD07AxwBwOMAA/rQ7DO4ffV0AAAAASUVORK5CYII=");
--cur-wait: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAgCAYAAAAIXrg4AAAAV0lEQVR42mNgQID/VMYYgD4WUApGLaDcAnItIjkV0cICioKKGIPpZgFJFpFjMN0swGsRNQymmwW4CkOqg1ELhmEqGro5eeiWpkO/RhtttgyydtGQaV0DAO7mCzx708zjAAAAAElFTkSuQmCC");
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Curseurs pixel : fleche partout, main sur le cliquable, I-beam nulle part ici. */
* {
  cursor: var(--cur-arrow) 1 1, auto;
}
a,
[role="button"] {
  cursor: var(--cur-hand) 7 1, auto;
}

body {
  margin: 0;
  padding: 28px 16px 72px;
  font-family: "W95FA", "PxMSSansSerif", "Microsoft Sans Serif", Tahoma, Geneva, sans-serif;
  font-size: 16px;
  line-height: 1.55;
  color: var(--w95-dark);
  /* Meme bureau que le jeu : l'image de fond, teintee par le degrade. */
  background-image: url("/images/background.png"), var(--depth);
  background-size: cover, cover;
  background-repeat: no-repeat, no-repeat;
  background-position: left top, left top;
  background-attachment: fixed, fixed;
  -webkit-font-smoothing: none;
  font-smooth: never;
}

/* Vagues animees, comme sur le jeu (le SVG porte son animation). */
.waves-bg {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  z-index: -1;
  pointer-events: none;
  user-select: none;
}

/* La feuille de regles EST une fenetre Win95, comme les ecrans de jeu (.app). */
.sheet {
  position: relative;
  max-width: 640px;
  margin: 24px auto;
  padding: 34px 16px 24px;
  background: var(--w95-face);
  color: var(--w95-dark);
  box-shadow: var(--raise), var(--drop);
  border-radius: var(--radius-md);
}

/* Barre de titre navy + boutons de fenetre, identiques au jeu. */
.sheet::before {
  content: attr(data-title);
  position: absolute;
  top: 3px;
  left: 3px;
  right: 3px;
  height: 22px;
  display: flex;
  align-items: center;
  padding: 0 8px;
  background: var(--titlebar);
  color: var(--w95-hi);
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.2px;
  overflow: hidden;
  white-space: nowrap;
}

.sheet::after {
  content: "";
  position: absolute;
  top: 7px;
  right: 7px;
  width: 52px;
  height: 14px;
  background: url("/images/win-buttons.png") no-repeat;
}

h1 {
  font-size: 36px;
  line-height: 1.2;
  margin: 0 0 12px;
}
h2 {
  font-size: 28px;
  margin: 32px 0 10px;
}
h3 {
  font-size: 20px;
  margin: 20px 0 6px;
}
p,
li {
  margin: 0 0 12px;
}
ul,
ol {
  padding-left: 22px;
}
.lede {
  font-size: 20px;
}
/* Retour au jeu aussi en haut : la page est longue, on ne doit pas avoir a la
   derouler entierement pour revenir jouer. Le meme lien existe en pied de page. */
.back-top {
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 700;
}
.meta {
  color: var(--w95-muted);
  font-size: 14px;
}
section {
  scroll-margin-top: 16px;
}

/* Encadres : relief rentrant, comme les tuiles de contenu du jeu. */
.card {
  background: var(--w95-light);
  box-shadow: var(--sink);
  padding: 14px 18px;
  border-radius: var(--radius-md);
  margin: 18px 0;
}
.card p:last-child,
.card ul:last-child,
.card li:last-child {
  margin-bottom: 0;
}
.toc ol {
  margin: 0;
}

a {
  color: var(--w95-navy);
}

/* Boutons gris en relief sortant, presses = relief rentrant (comme le jeu). */
.actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 28px 0 0;
}
.btn {
  display: inline-block;
  background: var(--w95-face);
  color: var(--w95-dark);
  box-shadow: var(--raise);
  border-radius: var(--radius-md);
  border: none;
  padding: 5px 14px;
  min-height: 25px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
}
.btn:active {
  box-shadow: var(--sink);
  padding-top: 6px;
  padding-bottom: 4px;
  padding-left: 15px;
}
.btn.primary {
  background: var(--w95-navy);
  color: var(--w95-hi);
}

footer {
  max-width: 640px;
  margin: 16px auto 0;
  text-align: center;
  font-size: 14px;
}
footer a {
  color: var(--w95-hi);
}

@media (max-width: 560px) {
  body {
    padding: 10px 6px 48px;
  }
  .sheet {
    margin: 8px auto;
    padding: 32px 12px 20px;
  }
  h1 {
    font-size: 28px;
  }
  h2 {
    font-size: 22px;
  }
  .lede {
    font-size: 18px;
  }
}
