From ae56850e5c4c1dc8522695df016607f43e859ab4 Mon Sep 17 00:00:00 2001 From: Christophe Date: Sun, 12 Apr 2026 12:42:35 +0200 Subject: [PATCH] =?UTF-8?q?Ajoute=20une=20page=20de=20r=C3=A8glement=20pou?= =?UTF-8?q?r=20le=20site?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.html | 3 + reglement.html | 352 +++++++++++++++++++++++++++++++++++++++++++++++++ styles.css | 262 +++++++++++++++++++++++++++++++++++- 3 files changed, 615 insertions(+), 2 deletions(-) create mode 100644 reglement.html diff --git a/index.html b/index.html index 107fbfb..c55087a 100644 --- a/index.html +++ b/index.html @@ -195,6 +195,7 @@ + Consulter le règlement @@ -233,6 +234,8 @@ Sources Règlements intégrés

+ Page règlement du site +
Règlement ChessCubing Twice diff --git a/reglement.html b/reglement.html new file mode 100644 index 0000000..6ad67b0 --- /dev/null +++ b/reglement.html @@ -0,0 +1,352 @@ + + + + + + + ChessCubing Arena | Règlement officiel + + + +

+
+ +
+
+
+

Référentiel officiel

+

Règlement ChessCubing

+

+ Cette page reprend les règles officielles en vigueur du + ChessCubing Twice et du ChessCubing Time pour offrir une lecture + rapide, claire et directement exploitable en club, en démonstration + ou en arbitrage. +

+
+ Twice V2 + Time V1 + Entrée en vigueur le 4 février 2026 + Fin uniquement par mat ou abandon +
+ +
+ + +
+ +
+
+
+
+

Vue d'ensemble

+

Le match en 4 temps

+
+

+ Les deux règlements partagent la même colonne vertébrale : un + match en blocks successifs, interrompus par une phase cube + obligatoire. +

+
+ +
+
+ 1. Avant le match + Installation et tirage +

+ L'arbitre contrôle le matériel, les cubes, les caches, les + mélanges, puis le tirage au sort qui attribue Blancs ou Noirs. +

+
+
+ 2. Block chess + 180 secondes de jeu +

+ Chaque block comporte une phase d'échecs limitée par une durée + fixe et par un quota de coups selon le format FAST, FREEZE ou + MASTERS. +

+
+
+ 3. Phase cube + Un cube identique par joueur +

+ L'application désigne le numéro du cube, les deux joueurs + résolvent le même mélange, et le résultat influe ensuite selon + le mode choisi. +

+
+
+ 4. Fin de partie + Jamais au temps +

+ La partie se termine uniquement par échec et mat ou abandon, + jamais par simple chute au temps ou dépassement d'un block. +

+
+
+
+ +
+
+
+

Matériel commun

+

Base officielle

+
+
+ +
    +
  • Un échiquier et un jeu de pièces réglementaires.
  • +
  • Huit Rubik's Cubes 3x3, soit quatre par joueur.
  • +
  • Des caches opaques numérotés de 1 à 4.
  • +
  • Des mélanges strictement identiques pour chaque numéro.
  • +
  • L'application officielle ChessCubing.
  • +
  • Un arbitre pour piloter le match et les transitions.
  • +
+
+ +
+
+
+

Arbitrage

+

Check-list terrain

+
+
+ +
    +
  • Vérifier la présence des huit cubes et des caches numérotés.
  • +
  • Confirmer des mélanges identiques sous chaque numéro.
  • +
  • Préparer l'échiquier et la variante dans l'application.
  • +
  • Contrôler le tirage au sort avant le premier block.
  • +
  • Déclencher chaque phase cube au bon moment.
  • +
  • Surveiller le respect du plafond de 120 s en mode Time.
  • +
+
+ +
+
+
+

Formats officiels

+

Twice et Time, côte à côte

+
+

+ Les deux formats partagent les blocks et la phase cube, mais leur + logique d'avantage diffère complètement. +

+
+ +
+
+
+ Version V2 +

ChessCubing Twice

+

+ Le gagnant du cube obtient l'initiative sur le block suivant, + avec une règle de double coup encadrée. +

+
+ +
+ Block : 180 s + Temps par coup : 20 s max + FAST / FREEZE / MASTERS : 6 / 8 / 10 +
+ +
+

Début et fin des blocks

+
    +
  • Les Blancs commencent le block 1.
  • +
  • Aucun double coup n'est possible au block 1.
  • +
  • Un block s'arrête à 180 s ou quand les deux quotas sont atteints.
  • +
  • Il est interdit de finir un block avec un roi en échec.
  • +
  • + Si le dernier coup donne échec, les coups nécessaires pour + parer sont joués hors quota. +
  • +
+
+ +
+

Phase cube

+
    +
  • Le numéro du cube est désigné par l'application.
  • +
  • Les deux joueurs reçoivent un mélange identique.
  • +
  • Le joueur le plus rapide gagne la phase cube.
  • +
  • En cas d'égalité parfaite, la phase cube est rejouée.
  • +
  • Le gagnant du cube commence le block suivant.
  • +
+
+ +
+ Double coup V2 + Condition stricte +

+ Le gagnant du cube ne doit pas avoir joué le dernier coup du + block précédent. Le premier coup est gratuit, non compté, + peut capturer mais ne peut pas donner échec. Le second compte + comme premier coup du block, peut donner échec, mais ne peut + capturer qu'un pion ou une pièce mineure. +

+
+ +
+

Temps par coup et fin de partie

+
    +
  • Chaque coup doit être joué en 20 secondes maximum.
  • +
  • En dépassement, le coup est perdu et compté dans le quota.
  • +
  • Sur le premier coup d'un double coup, le dépassement annule l'avantage.
  • +
  • Sur le second coup d'un double coup, le coup est perdu et comptabilisé.
  • +
  • La partie se termine uniquement par mat ou abandon.
  • +
+
+
+ +
+
+ Version V1 +

ChessCubing Time

+

+ Ici, la phase cube n'offre pas l'initiative mais modifie les + chronos selon une alternance bloc - puis bloc +. +

+
+ +
+ Temps initial : 10 min / joueur + Block : 180 s + Cap cube pris en compte : 120 s +
+ +
+

Structure temporelle

+
    +
  • La structure des blocks est identique à celle du Twice.
  • +
  • Les quotas de coups restent les mêmes : 6, 8 ou 10.
  • +
  • Chaque block est suivi d'une phase cube obligatoire.
  • +
  • Le trait est conservé après la phase cube.
  • +
  • Aucun système de priorité ou de double coup n'existe.
  • +
+
+ +
+
+ Block impair + Bloc - +

+ Le temps de résolution du cube est retiré du chrono du + joueur concerné, avec un plafond de 120 secondes. +

+
+
+ Block pair + Bloc + +

+ Le temps de résolution du cube est ajouté au chrono adverse, + lui aussi plafonné à 120 secondes. +

+
+
+ +
+

Exemples officiels

+
    +
  • Bloc - : 35 s retire 35 s à son propre chrono.
  • +
  • Bloc - : 110 s retire 110 s à son propre chrono.
  • +
  • Bloc + : 25 s ajoute 25 s au chrono adverse.
  • +
  • Bloc + : 150 s ajoute 120 s au chrono adverse.
  • +
+
+ +
+ Reprise du jeu + Pas de coup pendant le cube +

+ Aucun coup ne peut être joué pendant la phase cube. Dès que + les deux résolutions sont terminées, les chronos sont ajustés + et la partie reprend immédiatement. +

+
+ +
+

Fin de partie et vigilance

+
    +
  • La partie s'arrête uniquement par mat ou abandon volontaire.
  • +
  • L'arbitre surveille le chronométrage exact et le plafond de 120 s.
  • +
  • L'absence de priorité et de double coup fait partie des points clés du mode.
  • +
+
+
+
+
+ +
+
+
+

Sources

+

Documents officiels

+
+

+ Cette synthèse reprend les versions officielles actuellement + embarquées dans l'application. +

+
+ + +
+
+
+ + diff --git a/styles.css b/styles.css index fcdb765..6acb785 100644 --- a/styles.css +++ b/styles.css @@ -142,6 +142,9 @@ p { .button { appearance: none; + display: inline-flex; + align-items: center; + justify-content: center; border: 1px solid transparent; border-radius: 18px; padding: 0.95rem 1.15rem; @@ -156,6 +159,7 @@ p { box-shadow 160ms ease, border-color 160ms ease; color: var(--text); + text-decoration: none; } .button:hover { @@ -772,6 +776,241 @@ textarea:focus { margin-top: 1rem; } +.rules-shell { + position: relative; + width: min(1220px, calc(100% - 2rem)); + margin: 0 auto; + padding: 1.2rem 0 2rem; +} + +.hero-rules h1 { + margin: 0; + font-size: clamp(2.8rem, 6vw, 4.7rem); + line-height: 0.94; + text-shadow: + 0 0 12px rgba(30, 214, 255, 0.18), + 0 0 30px rgba(30, 214, 255, 0.08); +} + +.hero-actions { + display: flex; + flex-wrap: wrap; + gap: 0.75rem; + margin-top: 1.2rem; +} + +.rule-metrics { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.75rem; +} + +.metric-chip, +.stage-card, +.format-card, +.split-card, +.source-card { + position: relative; + border-radius: 24px; + border: 1px solid var(--panel-border-soft); + background: + linear-gradient(160deg, rgba(10, 31, 47, 0.96), rgba(3, 13, 21, 0.96)); + box-shadow: + inset 0 0 0 1px rgba(30, 214, 255, 0.03), + 0 0 22px rgba(30, 214, 255, 0.04); +} + +.metric-chip, +.stage-card, +.format-card, +.split-card, +.source-card { + padding: 1rem; +} + +.metric-chip { + display: grid; + gap: 0.3rem; +} + +.metric-chip span, +.stage-card p, +.format-head p, +.source-card p, +.split-card p { + color: var(--muted); +} + +.metric-chip strong { + font-size: 1.2rem; +} + +.rules-grid { + display: grid; + grid-template-columns: repeat(12, minmax(0, 1fr)); + gap: 1.2rem; + margin-top: 1.2rem; +} + +.panel-wide { + grid-column: span 12; +} + +.panel-half { + grid-column: span 6; +} + +.panel-third { + grid-column: span 4; +} + +.rules-stage-grid { + display: grid; + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 0.9rem; +} + +.stage-card { + display: grid; + gap: 0.45rem; +} + +.rules-compare { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 1rem; +} + +.format-card { + display: grid; + gap: 1rem; + padding-top: 1.15rem; +} + +.format-card::before { + content: ""; + position: absolute; + top: 0; + left: 1rem; + right: 1rem; + height: 1px; + background: linear-gradient(90deg, transparent, var(--cool), transparent); + opacity: 0.7; +} + +.twice-card { + border-color: rgba(117, 242, 255, 0.24); +} + +.time-card { + border-color: rgba(125, 247, 189, 0.24); +} + +.format-head h3, +.format-section h4, +.source-card strong { + margin: 0; +} + +.format-head { + display: grid; + gap: 0.45rem; +} + +.format-badges { + display: flex; + flex-wrap: wrap; + gap: 0.6rem; +} + +.format-badges span { + display: inline-flex; + align-items: center; + padding: 0.48rem 0.78rem; + border-radius: 999px; + border: 1px solid var(--panel-border-soft); + background: linear-gradient(180deg, rgba(7, 26, 40, 0.88), rgba(2, 13, 22, 0.92)); + color: var(--text); +} + +.format-section { + display: grid; + gap: 0.6rem; +} + +.rule-list { + margin: 0; + padding-left: 1.2rem; + color: var(--text); +} + +.rule-list li + li { + margin-top: 0.55rem; +} + +.rule-list.compact li + li { + margin-top: 0.42rem; +} + +.callout { + display: grid; + gap: 0.45rem; + padding: 1rem; + border-radius: 22px; + border: 1px solid rgba(30, 214, 255, 0.18); + background: + linear-gradient(145deg, rgba(30, 214, 255, 0.11), rgba(24, 217, 127, 0.08)), + linear-gradient(180deg, rgba(3, 14, 23, 0.96), rgba(2, 10, 16, 0.96)); +} + +.callout p { + margin-bottom: 0; + color: var(--muted); +} + +.split-callouts { + display: grid; + grid-template-columns: repeat(2, minmax(0, 1fr)); + gap: 0.8rem; +} + +.split-card { + display: grid; + gap: 0.4rem; +} + +.minus-card { + border-color: rgba(117, 242, 255, 0.22); +} + +.plus-card { + border-color: rgba(125, 247, 189, 0.22); +} + +.source-grid { + display: grid; + grid-template-columns: repeat(3, minmax(0, 1fr)); + gap: 0.9rem; +} + +.source-card { + display: grid; + gap: 0.4rem; + color: var(--text); + text-decoration: none; + transition: + transform 160ms ease, + border-color 160ms ease, + box-shadow 160ms ease; +} + +.source-card:hover { + transform: translateY(-3px); + text-decoration: none; + border-color: rgba(30, 214, 255, 0.34); + box-shadow: 0 0 22px rgba(30, 214, 255, 0.08); +} + @keyframes pulse { 0%, 100% { @@ -793,10 +1032,19 @@ textarea:focus { .mode-grid, .preset-grid, .timing-grid, - .faceoff-board { + .faceoff-board, + .rules-compare, + .rules-stage-grid, + .split-callouts, + .source-grid { grid-template-columns: 1fr; } + .panel-half, + .panel-third { + grid-column: span 12; + } + .phase-header { grid-template-columns: 1fr; text-align: center; @@ -814,7 +1062,8 @@ textarea:focus { } .setup-shell, - .phase-shell { + .phase-shell, + .rules-shell { width: min(100% - 1rem, 100%); } @@ -871,6 +1120,11 @@ textarea:focus { gap: 0.45rem; } + .rules-grid { + grid-template-columns: 1fr; + gap: 0.9rem; + } + .opponent-zone .mirrored-mobile { transform: rotate(180deg); } @@ -930,6 +1184,10 @@ textarea:focus { justify-self: end; width: auto; } + + .hero-actions { + display: grid; + } } @media (max-width: 640px) {