/* =========================================================
   PORTFOLIO — FEUILLE DE STYLE UNIQUE
   Parti pris : une fiche technique / console d'exploitation.
   Filets de 1px plutôt qu'ombres, angles presque droits,
   une seule couleur de signal (ambre) comme un voyant
   d'état, IBM Plex Sans pour le texte et Plex Mono pour
   tout ce qui est technique (codes, badges, fil d'Ariane).
   Aucune couleur par section, aucun décor animé.
========================================================= */

:root{
  /* Palette */
  --bg:#0E1116;        /* fond de page */
  --surface:#161B23;   /* cartes, menu, tableaux */
  --line:#2A3340;      /* filets, bordures */
  --text:#E4E8EE;      /* texte courant et titres */
  --muted:#98A3B3;     /* texte secondaire */
  --signal:#E3A33B;    /* couleur de signal */
  --signal-rgb:227,163,59;

  /* Alias conservés pour les styles en ligne existants */
  --accent:var(--signal);
  --accent-rgb:var(--signal-rgb);
  --card-bg:var(--surface);
  --border:var(--line);

  --sans:"IBM Plex Sans", "Segoe UI", system-ui, sans-serif;
  --mono:"IBM Plex Mono", "Consolas", ui-monospace, monospace;
  --radius:4px;
}

/* ===============================
   FOND ET TYPOGRAPHIE DE BASE
=============================== */
html, body{
  margin:0;
  padding:0;
  background:var(--bg) !important;
}

body{
  font-family:var(--sans);
  font-size:16px;
  color:var(--text);
  -webkit-font-smoothing:antialiased;
}

/* Le thème ReadTheDocs impose Lato / Roboto Slab : on unifie */
h1,h2,h3,h4,h5,h6,
.wy-menu-vertical,
.wy-side-nav-search,
legend, input, button, .btn{
  font-family:var(--sans) !important;
}

/* Fonds du thème neutralisés : tout repose sur --bg / --surface */
.wy-body-for-nav,
.wy-nav-content-wrap,
.wy-nav-content,
.wy-side-scroll,
.rst-content,
.rst-content .section,
.rst-content .document,
.wy-breadcrumbs,
.wy-breadcrumbs-aside,
.wy-grid-for-nav{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
}

.wy-nav-content{
  max-width:1100px;
  margin:0 auto;
  padding:36px 28px !important;
}

/* ===============================
   TITRES ET TEXTE
=============================== */
h1,h2,h3,h4,h5{
  color:var(--text) !important;
  font-weight:600 !important;
  letter-spacing:-.01em;
}

h1{
  font-size:2.1rem !important;
  line-height:1.2;
  margin:0 0 22px 0 !important;
}

h2{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:1.35rem !important;
  margin:36px 0 14px 0 !important;
  padding-bottom:8px;
  border-bottom:1px solid var(--line);
}
h2::before{
  content:"";
  width:8px;
  height:8px;
  flex:none;
  background:var(--signal);
  border-radius:1px;
}

h3{ font-size:1.05rem !important; margin:16px 0 6px 0 !important; }

p, li{
  color:var(--text) !important;
  line-height:1.65;
}

strong{ color:var(--text); font-weight:600; }
em{ color:var(--muted); }

.muted, p.muted, .muted li{ color:var(--muted) !important; }

a{
  color:var(--signal);
  text-decoration:underline;
  text-decoration-color:rgba(var(--signal-rgb),.4);
  text-underline-offset:3px;
}
a:hover{ color:var(--text); text-decoration-color:var(--signal); }
a:visited{ color:var(--signal); }

/* Fil d'Ariane et pied de page en police technique */
.wy-breadcrumbs,
.wy-breadcrumbs li,
.wy-breadcrumbs a{
  font-family:var(--mono) !important;
  font-size:.8rem !important;
  color:var(--muted) !important;
  text-decoration:none;
}
.wy-breadcrumbs a:hover{ color:var(--signal) !important; }
.rst-content hr, .wy-nav-content hr{ border-color:var(--line) !important; }
footer, footer p, .rst-footer-buttons + div{ color:var(--muted) !important; font-size:.85rem; }

/* ===============================
   CARTES
=============================== */
.page{ max-width:1100px; }

.cards{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:16px;
  margin:18px 0;
}

.card{
  position:relative;
  background:var(--surface) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius);
  padding:20px 22px;
  margin:14px 0;
}

.card-title{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:1.05rem;
  font-weight:600;
  margin-bottom:10px;
  color:var(--text) !important;
}

.card h3{ margin:0; font-size:1rem !important; }
.card p{ margin-top:8px; }
.card ul, .card ol{ margin-top:10px; padding-left:18px; }
.card li{ margin-bottom:6px; }

/* Voyant d'état : petit carré, sans halo */
.dot{
  width:7px;
  height:7px;
  flex:none;
  border-radius:1px;
  background:var(--signal);
}

/* Carte-lien : seule la bordure réagit */
a.card{
  display:block;
  color:inherit;
  text-decoration:none !important;
  transition:border-color .2s ease;
}
a.card:hover{ border-color:var(--signal) !important; }
a.card .more{
  display:inline-block;
  margin-top:10px;
  font-family:var(--mono);
  font-size:.82rem;
  font-weight:500;
  color:var(--signal) !important;
}

/* ===============================
   GRILLES
=============================== */
.grid-2{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:16px;
  margin-top:14px;
}
.grid-2 > .card{ margin:0; }
@media (max-width:900px){
  .grid-2{ grid-template-columns:1fr; }
}

/* ===============================
   BADGES / TAGS (étiquettes techniques)
=============================== */
.badges, .tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:14px;
}

.badge, .tag{
  display:inline-block;
  padding:3px 8px;
  border:1px solid var(--line);
  border-radius:3px;
  background:transparent;
  font-family:var(--mono);
  font-size:.74rem;
  font-weight:500;
  line-height:1.5;
  color:var(--muted) !important;
}

/* ===============================
   BOUTONS
   Forme, taille et comportement inchangés : seules
   les couleurs suivent la palette.
=============================== */
.btn, a.button, button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;

  background:var(--signal);
  color:var(--bg) !important;

  padding:12px 30px;
  border-radius:999px;
  text-decoration:none !important;
  font-weight:800;

  border:2px solid var(--signal);
  transition:all .25s ease;
  box-shadow:none;
}

.btn:hover, a.button:hover, button:hover{
  background:transparent;
  color:var(--signal) !important;
  transform:translateY(-2px);
}

.btn.primary{
  background:var(--signal);
}
.btn.primary:hover{
  background:#EDB65A;
  border-color:#EDB65A;
  color:var(--bg) !important;
  transform:translateY(-2px);
}

.btn.ghost{
  background:transparent;
  color:var(--text) !important;
  border-color:var(--line);
}
.btn.ghost:hover{
  border-color:var(--signal);
  color:var(--signal) !important;
}

.buttons{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:12px;
}

/* ===============================
   MENU LATÉRAL
=============================== */
.wy-nav-side{
  background:var(--surface) !important;
  border-right:1px solid var(--line) !important;
}

.wy-nav-top{
  background:var(--surface) !important;
  border-bottom:1px solid var(--line);
}
.wy-nav-top a, .wy-nav-top i{ color:var(--text) !important; text-decoration:none !important; }

.wy-side-nav-search{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  height:auto !important;
  min-height:0 !important;
  padding:22px 18px 20px 18px !important;
  text-align:left !important;
  background:var(--surface) !important;
  border-bottom:1px solid var(--line) !important;
}

.wy-side-nav-search,
.wy-side-nav-search *{
  writing-mode:horizontal-tb !important;
  transform:none !important;
}

.wy-side-nav-search > a,
.wy-side-nav-search a.icon-home{
  display:block !important;
  float:none !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:none !important;
  color:var(--text) !important;
  text-decoration:none !important;
  font-size:1rem !important;
  font-weight:600 !important;
  line-height:1.3 !important;
  white-space:normal !important;
}
.wy-side-nav-search > a:hover{ color:var(--signal) !important; }

/* Icône maison dans un cadre carré discret */
.wy-side-nav-search a.icon-home::before{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  float:none !important;
  position:static !important;
  width:30px !important;
  height:30px !important;
  margin:0 0 10px 0 !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius) !important;
  background:var(--bg) !important;
  color:var(--signal) !important;
  font-size:14px;
}

.wy-side-nav-search form,
.wy-side-nav-search div[role="search"]{
  position:relative !important;
  float:none !important;
  width:100% !important;
  margin:18px 0 0 0 !important;
  padding:0 !important;
}

.wy-side-nav-search input[type="text"],
.wy-side-nav-search input{
  width:100% !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:9px 12px !important;
  background:var(--bg) !important;
  border:1px solid var(--line) !important;
  border-radius:var(--radius) !important;
  box-shadow:none !important;
  color:var(--text) !important;
  font-family:var(--mono) !important;
  font-size:.82rem !important;
}
.wy-side-nav-search input:focus{
  border-color:var(--signal) !important;
  outline:none;
}

.wy-menu-vertical,
.wy-menu-vertical ul,
.wy-menu-vertical li,
.wy-menu-vertical li.current,
.wy-menu-vertical li.current ul{
  background:transparent !important;
  box-shadow:none !important;
  border:none !important;
}

.wy-menu-vertical a,
.wy-side-nav-search a,
.rst-versions a,
.rst-footer-buttons a{ text-decoration:none !important; }

.wy-menu-vertical a{
  background:transparent !important;
  color:var(--muted) !important;
  font-size:.92rem;
  border-left:2px solid transparent !important;
  transition:color .15s ease, background .15s ease;
}
.wy-menu-vertical a:hover{
  background:rgba(255,255,255,.03) !important;
  color:var(--text) !important;
}

.wy-menu-vertical li.current > a,
.wy-menu-vertical li.on > a{
  background:rgba(var(--signal-rgb),.08) !important;
  border-left:2px solid var(--signal) !important;
  color:var(--text) !important;
  font-weight:500;
}

/* Titres de section du menu : pas de majuscules forcées */
.wy-menu-vertical p.caption,
.wy-menu-vertical .caption,
.wy-menu-vertical .caption-text{
  background:transparent !important;
  color:var(--text) !important;
  text-transform:none !important;
  font-family:var(--mono) !important;
  font-size:.78rem !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  margin-top:18px !important;
}

.wy-menu-vertical li ul li a{ padding-left:34px !important; }

/* Sections du menu en menus déroulants (voir overrides/main.html) */
.wy-menu-vertical p.caption.nav-toggle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:4px 0 0 0 !important;
  padding:10px 18px 10px 20px !important;
  cursor:pointer;
  user-select:none;
  border-top:1px solid var(--line);
  transition:background .15s ease;
}
.wy-menu-vertical p.caption.nav-toggle:hover{ background:rgba(255,255,255,.03); }
.wy-menu-vertical p.caption.nav-toggle:focus-visible{ outline:1px solid var(--signal); outline-offset:-1px; }
.wy-menu-vertical p.caption.nav-toggle .caption-text{ margin:0 !important; }

/* Chevron dessiné en CSS : pointe vers la droite fermé, vers le bas ouvert */
.wy-menu-vertical p.caption.nav-toggle::after{
  content:"";
  width:6px;
  height:6px;
  flex:none;
  border-right:1.5px solid var(--muted);
  border-bottom:1.5px solid var(--muted);
  transform:rotate(-45deg);
  transition:transform .2s ease;
}
.wy-menu-vertical p.caption.nav-toggle[aria-expanded="true"]::after{
  transform:rotate(45deg);
  border-color:var(--signal);
}

/* Sous-menu des titres d'une page (voir hooks/page_toc.py) */
.wy-menu-vertical li.has-page-toc{ position:relative; }
.wy-menu-vertical li.has-page-toc > a{ padding-right:40px !important; }

.wy-menu-vertical button.page-toc-toggle{
  position:absolute !important;
  top:4px;
  right:10px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  width:26px !important;
  height:26px !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:1px solid transparent !important;
  border-radius:var(--radius) !important;
  box-shadow:none !important;
  transform:none !important;
  cursor:pointer;
}
.wy-menu-vertical button.page-toc-toggle:hover{
  border-color:var(--line) !important;
  background:rgba(255,255,255,.03) !important;
}
.wy-menu-vertical button.page-toc-toggle:focus-visible{ outline:1px solid var(--signal); }
.wy-menu-vertical button.page-toc-toggle::after{
  content:"";
  width:5px;
  height:5px;
  border-right:1.5px solid var(--muted);
  border-bottom:1.5px solid var(--muted);
  transform:rotate(-45deg);
  transition:transform .2s ease;
}
.wy-menu-vertical button.page-toc-toggle[aria-expanded="true"]::after{
  transform:rotate(45deg);
  border-color:var(--signal);
}

.wy-menu-vertical .page-toc{
  margin:2px 0 8px 0;
  border-left:1px solid var(--line);
  margin-left:30px;
}
.wy-menu-vertical .page-toc[hidden]{ display:none !important; }
.wy-menu-vertical .page-toc a{
  display:block;
  padding:5px 12px 5px 12px !important;
  font-size:.82rem;
  line-height:1.35;
  color:var(--muted) !important;
  border-left:none !important;
}
.wy-menu-vertical .page-toc a.toc-sub{
  padding-left:24px !important;
  font-size:.78rem;
}
.wy-menu-vertical .page-toc a:hover{ color:var(--text) !important; }

/* Section qui contient la page affichée */
.wy-menu-vertical p.caption.nav-here .caption-text{ color:var(--signal) !important; }

.wy-menu-vertical ul.nav-collapsed{ display:none !important; }

.rst-versions{
  background:var(--surface) !important;
  border-top:1px solid var(--line) !important;
  font-family:var(--mono) !important;
}
.rst-versions a, .rst-versions span{ color:var(--muted) !important; }

/* ===============================
   TABLES (contenu des pages)
=============================== */
.rst-content table,
.wy-nav-content table{
  display:table !important;   /* le thème force display:block */
  width:100%;
  border-collapse:collapse !important;
  border-spacing:0 !important;
  margin:14px 0 20px 0;
  background:var(--surface) !important;
  border:1px solid var(--line) !important;
  font-size:.92rem;
}

.rst-content table th,
.rst-content table td,
.wy-nav-content table th,
.wy-nav-content table td{
  background:transparent !important;
  color:var(--text) !important;
  border:1px solid var(--line) !important;
  padding:9px 12px !important;
  vertical-align:middle !important;
  white-space:normal !important;
}

.rst-content table thead th,
.wy-nav-content table thead th{
  background:var(--bg) !important;
  color:var(--muted) !important;
  font-family:var(--mono);
  font-size:.78rem;
  font-weight:600 !important;
  text-align:left;
}

.rst-content table tbody tr:hover td,
.wy-nav-content table tbody tr:hover td{
  background:rgba(255,255,255,.025) !important;
}

.rst-content table td *,
.wy-nav-content table td *{ color:inherit !important; }

.card .wy-table-responsive{ margin-bottom:0; }

/* ===============================
   TABLEAU DE SYNTHÈSE
   Première colonne figée, en-tête sur deux niveaux
   (compétence / sous-compétence), intitulés verticaux.
=============================== */
.synthese{ max-width:none; }

.table-container,
.table-container .wy-table-responsive{
  overflow-x:auto;
  margin-bottom:0 !important;
}
.table-container{
  margin:22px 0 10px 0;
  border:1px solid var(--line);
  border-radius:var(--radius);
}

.rst-content .table-container table{
  margin:0;
  width:100% !important;
  min-width:1040px;
  table-layout:fixed;
  border:none !important;
  background:var(--surface) !important;
}

.rst-content .table-container col{ width:auto !important; }
.rst-content .table-container col.col-real{ width:250px !important; }

.table-container th,
.table-container td{
  background:var(--surface) !important;
  border:1px solid var(--line) !important;
  text-align:center;
  padding:8px 4px !important;
}

.table-container th.col-real,
.table-container td.col-real{
  text-align:left;
  padding-left:16px !important;
  position:sticky;
  left:0;
  z-index:2;
}

.rst-content .table-container thead th{
  background:var(--bg) !important;
  color:var(--text) !important;
  font-family:var(--mono);
  font-size:.8rem;
  font-weight:600 !important;
  vertical-align:bottom !important;
}

.table-container .bloc-row th:not(.col-real){
  color:var(--signal) !important;
  font-size:.7rem !important;
  font-weight:500 !important;
  line-height:1.3;
  vertical-align:middle !important;
}
.table-container .bloc-row th.col-real{
  font-family:var(--sans);
  font-size:1rem;
  vertical-align:middle !important;
}

/* Intitulés courts des sous-compétences écrits à la verticale */
.table-container thead tr:not(.bloc-row) th span{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  display:inline-block !important;
  height:200px;
  margin:6px auto 0 auto !important;
  text-align:left;
  white-space:nowrap;
  font-family:var(--sans);
  font-size:.72rem !important;
}

.table-container thead th span,
.table-container td.col-real span{
  display:block;
  margin-top:3px;
  font-size:.7rem;
  font-weight:400;
  line-height:1.3;
  color:var(--muted) !important;
}

.table-container td.col-real a{
  color:var(--text) !important;
  font-weight:600;
  text-decoration:none;
}
.table-container td.col-real a:hover{ color:var(--signal) !important; }

.rst-content .table-container tbody tr:hover td{ background:#1B212B !important; }

.rst-content .table-container .section-header td{
  background:var(--bg) !important;
  color:var(--text) !important;
  font-family:var(--mono);
  font-size:.82rem;
  font-weight:600;
  text-align:left;
  padding:9px 16px !important;
  border-left:2px solid var(--signal) !important;
  position:sticky;
  left:0;
}

.table-container td.check{
  color:var(--signal) !important;
  font-size:1rem;
  font-weight:700;
  background:rgba(var(--signal-rgb),.12) !important;
}

.table-container tr.empty td.col-real{
  font-style:italic;
  color:var(--muted) !important;
}

/* ===============================
   CODE
=============================== */
code{
  font-family:var(--mono) !important;
  font-size:.85em !important;
  padding:1px 5px !important;
  background:rgba(255,255,255,.05) !important;
  border:1px solid var(--line) !important;
  border-radius:3px;
  color:var(--text) !important;
}

.rst-content pre,
.rst-content pre code,
.rst-content pre code.hljs{
  background:var(--bg) !important;
  color:var(--text) !important;
  border:none !important;
  padding:0 !important;
  font-size:.84rem !important;
}
.rst-content pre{
  border:1px solid var(--line) !important;
  border-left:2px solid var(--signal) !important;
  border-radius:var(--radius);
  padding:14px 16px !important;
  overflow-x:auto;
}
.hljs-comment, .hljs-quote, .hljs-meta{ color:var(--muted) !important; font-style:italic; }
.hljs-keyword, .hljs-selector-tag, .hljs-built_in, .hljs-literal,
.hljs-number, .hljs-symbol{ color:var(--signal) !important; }
.hljs-string, .hljs-regexp, .hljs-title, .hljs-section, .hljs-name,
.hljs-function, .hljs-variable, .hljs-attr, .hljs-attribute, .hljs-subst{ color:var(--text) !important; }

/* ===============================
   IMAGES, SÉPARATEURS, ENCADRÉS
=============================== */
img{
  max-width:100%;
  border-radius:var(--radius);
}
.card img{ border:1px solid var(--line); }

hr{
  border:none;
  height:1px;
  background:var(--line);
  margin:32px 0;
}

.rst-content .admonition,
.rst-content .note,
.rst-content .warning,
.rst-content .tip{
  background:var(--surface) !important;
  border:1px solid var(--line) !important;
  border-left:2px solid var(--signal) !important;
  border-radius:var(--radius);
  padding:16px 18px;
}

/* Emplacement d'une capture pas encore fournie */
.img-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:170px;
  margin-top:10px;
  padding:18px;
  text-align:center;
  border:1px dashed var(--line);
  border-radius:var(--radius);
  background:var(--bg);
  color:var(--muted);
}
.img-placeholder strong{ color:var(--text); font-weight:500; }
.img-placeholder span{ font-size:.84rem; color:var(--muted); }

/* ===============================
   ACCUEIL — EN-TÊTE
=============================== */
.hero{
  padding:44px 30px !important;
  text-align:center;
}

.hero-photo{
  width:160px;
  height:160px;
  object-fit:cover;
  border-radius:50%;
  border:2px solid var(--line) !important;
}

.hero h1{
  margin:22px 0 6px 0 !important;
  font-size:2.6rem !important;
}

.hero-role{
  margin:0;
  font-size:1.15rem;
  font-weight:500;
}

.hero-sub{
  margin:8px 0 0 0;
  font-family:var(--mono);
  font-size:.85rem;
  color:var(--muted) !important;
}

.hero .badges,
.hero .buttons{ justify-content:center; }
.hero .buttons{ margin-top:26px; }

.stats{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(150px, 1fr));
  gap:14px;
  margin:18px 0;
}
.stat{
  padding:16px 10px;
  text-align:center;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--surface);
}
.stat strong{
  display:block;
  font-family:var(--mono);
  font-size:1.8rem;
  color:var(--signal);
}
.stat span{ font-size:.85rem; color:var(--muted); }

/* ===============================
   IMPRESSION (dossier papier pour le jury)
=============================== */
@media print{
  @page{ size:A4 landscape; margin:10mm; }
  html, body{ background:#fff !important; }
  .wy-nav-side, .wy-nav-top, .rst-footer-buttons, .wy-breadcrumbs, .rst-versions, footer{ display:none !important; }
  .wy-nav-content-wrap{ margin-left:0 !important; }
  .wy-nav-content{ max-width:none !important; padding:0 !important; }
  .card{ background:#fff !important; border:1px solid #bbb !important; break-inside:avoid; }
  h1,h2,h3,h4,p,li,strong,.card-title{ color:#000 !important; }
  .table-container{ overflow:visible; border:none; }
  .rst-content .table-container table{ width:100% !important; min-width:0; font-size:9pt; }
  .rst-content .table-container col{ width:auto !important; }
  .rst-content .table-container col.col-real{ width:20% !important; }
  .table-container th, .table-container td,
  .rst-content .table-container thead th,
  .table-container .bloc-row th,
  .rst-content .table-container tbody tr:hover td,
  .rst-content .table-container .section-header td{
    background:#fff !important; color:#000 !important; border:1px solid #444 !important;
  }
  .rst-content .table-container .section-header td{ background:#e8e8e8 !important; }
  .table-container td.check{ background:#dcdcdc !important; color:#000 !important; }
  .table-container thead th span, .table-container td.col-real span{ color:#333 !important; }
  .table-container td.col-real a{ color:#000 !important; }
  .table-container .col-real{ position:static; }
}

/* ===============================
   RESPONSIVE
=============================== */
@media (max-width:900px){
  .cards{ grid-template-columns:1fr !important; }
  .wy-nav-content{ padding:18px 16px !important; }
  .card{ padding:16px !important; }
  .buttons{ flex-direction:column !important; }

  .btn, a.button, button{
    width:100% !important;
    justify-content:center !important;
  }

  img{ height:auto !important; }

  h1{ font-size:1.7rem !important; }
  .hero h1{ font-size:2rem !important; }
  h2{ font-size:1.2rem !important; }

  .rst-content .table-container col.col-real{ width:190px !important; }
}
