body.sog-app-mobile .snav { display: none; }
body.sog-app-mobile #sog-subnav { display: none; }

body.sog-app-mobile.sog-am-app .site-header {
  background: var(--cream);
  height: auto;

  padding: calc(10px + env(safe-area-inset-top, 0px)) 16px 12px;
  align-items: center;

  position: sticky;
  top: 0;
  z-index: 60;  
}
body.sog-app-mobile.sog-am-app .sh-brand { font-size: 17px; color: var(--marine); }

body.sog-app-mobile.sog-am-app #sog-status { display: none; }

body.sog-app-mobile .sog-am-cloche { display: none; }
body.sog-app-mobile.sog-am-app .sog-am-cloche { display: inline-flex; align-items: center; margin-left: auto; }
body.sog-app-mobile.sog-am-app .sog-am-cloche .sog-bell { align-self: center; }

body.sog-app-mobile.sog-am-app .sog-am-cloche .sog-bell-trigger {
  width: 44px; height: 44px; color: var(--marine); background: transparent;
}
body.sog-app-mobile.sog-am-app .sog-am-cloche .sog-bell-trigger:hover,
body.sog-app-mobile.sog-am-app .sog-am-cloche .sog-bell-trigger[aria-expanded="true"] { background: var(--cream-2); }
body.sog-app-mobile.sog-am-app .sog-am-cloche .sog-bell-badge { top: 3px; right: 1px; border-color: var(--cream); }

body.sog-app-mobile.sog-am-app .sog-am-cloche .sogn-pan {
  position: fixed; top: calc(56px + env(safe-area-inset-top, 0px));
  left: 12px; right: 12px; width: auto; max-width: none; max-height: 660px; z-index: 75;
}

body.sog-app-mobile .sog-am-pill { display: none; }
body.sog-app-mobile.sog-am-app .sog-am-pill {
  display: inline-flex;
  flex-direction: column;
  gap: 4px;
  align-items: stretch;
  background: var(--marine);
  padding: 6px 12px 7px;
  border-radius: 999px;
  font-family: var(--mono);
  font-size: 11px;
  min-width: 74px;

  border: 0;
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  text-align: left;

  max-width: 52vw;
}
body.sog-app-mobile.sog-am-app .sog-am-pill .row { display: inline-flex; align-items: center; gap: 6px; min-width: 0; }

body.sog-app-mobile.sog-am-app .sog-am-pill .who {
  color: var(--cream);
  flex: 0 1 auto; min-width: 0;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

body.sog-app-mobile.sog-am-app .sog-am-pill .car {
  flex: none; font-style: normal; font-size: 8px; color: var(--brique);
}
body.sog-app-mobile.sog-am-app .sog-am-pill .trk {
  display: block; height: 3px; border-radius: 2px; overflow: hidden;
  background: rgba(244, 237, 224, .18);
}
body.sog-app-mobile.sog-am-app .sog-am-pill .fill { display: block; height: 100%; background: var(--brique); }

body.sog-app-mobile .sog-am-pill-menu { display: none; }
body.sog-app-mobile.sog-am-app .sog-am-pill-menu {
  display: block;
  position: absolute;
  top: calc(100% - 4px);
  right: 16px;  
  z-index: 65;  
  min-width: 200px;
  background: #fffdf7;
  border: 1px solid #ddd1b2;
  border-radius: 16px;
  box-shadow: 0 18px 44px rgba(15, 27, 46, .18);
  padding: 6px;
}
body.sog-app-mobile.sog-am-app .sog-am-pill-menu[hidden] { display: none; }
body.sog-app-mobile .sog-am-pmi {
  display: block; width: 100%;
  background: none; border: 0; cursor: pointer;
  text-align: left;
  font-family: var(--mono); font-size: 13px; color: var(--marine);
  padding: 12px 14px; min-height: 44px;
  border-radius: 12px;
}
body.sog-app-mobile .sog-am-pmi.out { color: var(--carmin); border-top: 1px solid #ece3c9; border-radius: 0 0 12px 12px; }

body.sog-app-mobile.sog-am-app .site-main {
  padding-bottom: calc(140px + env(safe-area-inset-bottom, 0px));
}

body.sog-app-mobile .sog-am-tb { display: none; }
body.sog-app-mobile.sog-am-app .sog-am-tb {
  display: flex;
  align-items: center;
  position: fixed;
  left: 12px; right: 12px;
  bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  background: var(--marine);
  border-radius: 32px;
  padding: 6px 10px 8px;
  z-index: 80;  
}
body.sog-app-mobile .sog-am-tbi {
  flex: 1;
  display: flex; flex-direction: column; align-items: center; gap: 3px;
  padding: 7px 0 8px;
  color: #93a3bd;  
  font-family: var(--mono); font-size: 10px;
  background: none; border: 0; cursor: pointer;
}
body.sog-app-mobile .sog-am-tbi.on {
  color: var(--cream);
  background: rgba(244, 237, 224, .1);
  border-radius: 20px;
}
body.sog-app-mobile .sog-am-tbi.on svg { stroke: var(--brique); }
body.sog-app-mobile .sog-am-tbc {
  flex: 1.15;
  display: flex; flex-direction: column; align-items: center; gap: 3px;
  margin-top: -26px;
  color: #93a3bd;
  font-family: var(--mono); font-size: 10px;
  background: none; border: 0; cursor: pointer;
  padding: 0;
}
body.sog-app-mobile .sog-am-tbc.on { color: var(--cream); }
body.sog-app-mobile .sog-am-knob {
  width: 54px; height: 54px; border-radius: 50%;
  background: var(--brique);
  border: 3px solid var(--cream);
  display: inline-flex; align-items: center; justify-content: center;
}

body.sog-app-mobile .sog-am-hub {
  position: fixed;
  inset: 0;  
  background: var(--cream);
  z-index: 70;  
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;

  padding: 2px 14px calc(140px + env(safe-area-inset-bottom, 0px));
  display: flex; flex-direction: column; gap: 12px;
}
body.sog-app-mobile .sog-am-hub[hidden] { display: none; }
body.sog-app-mobile .sog-am-sur {
  font-family: var(--mono); font-size: 9.5px; letter-spacing: .16em;
  text-transform: uppercase; color: #8a8175;
}
body.sog-app-mobile .sog-am-hub-head { margin-top: 48px; }
body.sog-app-mobile .sog-am-hub-t {
  font-family: var(--display); font-size: 24px; color: var(--marine); margin-top: 4px;
}
body.sog-app-mobile .sog-am-hub-t .dot { color: var(--brique); }

body.sog-app-mobile .sog-am-tile {
  display: flex; align-items: center; gap: 14px;
  background: #fffdf7;
  border: 1px solid #ddd1b2;
  border-radius: 16px;
  padding: 16px 15px;
  cursor: pointer;
  text-align: left;
  font-family: var(--mono);
  width: 100%;
}
body.sog-app-mobile .sog-am-tile.obj { border: 2px solid var(--brique); }
body.sog-app-mobile .sog-am-tile .vis {
  width: 48px; height: 48px; border-radius: 14px; flex: 0 0 auto;
  background: var(--marine);
  display: inline-flex; align-items: center; justify-content: center; gap: 2px;
}
body.sog-app-mobile .sog-am-tile .vis.gold { background: var(--brique); }

body.sog-app-mobile .sog-am-tile .vis i { width: 3px; height: 9px; background: var(--marine); border-radius: 2px; }
body.sog-app-mobile .sog-am-tile .vis i.h { height: 16px; }
body.sog-app-mobile .sog-am-tile .tx { flex: 1; min-width: 0; display: block; }
body.sog-app-mobile .sog-am-tile .t {
  display: block; font-family: var(--display); font-size: 16px; color: var(--marine);
}
body.sog-app-mobile .sog-am-tile .s {
  display: block; font-size: 11px; color: #4a4436; margin-top: 3px; line-height: 1.5;
}
body.sog-app-mobile .sog-am-tile .bd {
  display: inline-block; background: #ece3c9; color: var(--marine);
  font-size: 9px; font-weight: 700; padding: 2px 8px; border-radius: 999px; margin-top: 6px;
}
body.sog-app-mobile .sog-am-tile .ar { color: var(--note-mid); font-size: 19px; flex: 0 0 auto; }
body.sog-app-mobile .sog-am-hub-foot {
  margin-top: auto;
  font-family: var(--mono); font-size: 10.5px; color: #8a8175;
  text-align: center; padding: 0 20px;
}

body.sog-app-mobile [data-module="accueil"] { display: flex; flex-direction: column; }

body.sog-app-mobile [data-module="accueil"] .cq-hero {
  border-radius: 20px;
  overflow: hidden;
}
body.sog-app-mobile [data-module="accueil"] .cq-hero-in { padding: 18px 18px 8px; }
body.sog-app-mobile [data-module="accueil"] .cq-hero-t { font-size: 26px; }
body.sog-app-mobile [data-module="accueil"] .cq-hero-lead { font-size: 11.5px; line-height: 1.6; }
body.sog-app-mobile [data-module="accueil"] .cq-figs {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
body.sog-app-mobile [data-module="accueil"] .cq-fig { padding: 12px 10px; }
body.sog-app-mobile [data-module="accueil"] .cq-fig .v { font-size: 24px; }
body.sog-app-mobile [data-module="accueil"] .cq-fig .k { font-size: 9.5px; margin-top: 3px; }

body.sog-app-mobile [data-module="accueil"] .tr-conseil {
  margin-top: 12px !important;  
  border-radius: 12px;
  font-size: 11px;
}

body.sog-app-mobile [data-module="accueil"] .sog-eye { margin: 26px 0 12px; }

body.sog-app-mobile [data-module="accueil"] .mp-start {
  grid-template-columns: 1fr;
  gap: 0;
  margin-top: 12px;
  background: #fffdf7;
  border: 1px solid #ddd1b2;
  border-radius: 16px;
  padding: 4px 15px;
}
body.sog-app-mobile [data-module="accueil"] .mp-start-card {
  display: flex; flex-direction: row; align-items: center; gap: 12px;
  background: none; border: 0; border-bottom: 1px solid #ece3c9;
  border-radius: 0;
  padding: 12px 0;
  min-height: 48px;
  transform: none;
}
body.sog-app-mobile [data-module="accueil"] .mp-start-card:last-child { border-bottom: 0; }
body.sog-app-mobile [data-module="accueil"] .mp-start-card:hover { transform: none; border-color: #ece3c9; }
body.sog-app-mobile [data-module="accueil"] .mp-start-vis {
  flex: 0 0 auto; width: 52px; margin: 0; padding: 0; background: none; border: 0;
}
body.sog-app-mobile [data-module="accueil"] .mp-start-vis svg { width: 52px; height: auto; display: block; }
body.sog-app-mobile [data-module="accueil"] .mp-start-t {
  font-family: var(--display); font-size: 13px; color: var(--marine); margin: 0;
}
body.sog-app-mobile [data-module="accueil"] .mp-start-p {
  display: none;  
}

body.sog-app-mobile [data-module="accueil"] .mp-start-go {
  margin-left: auto; font-size: 0; color: var(--note-mid);
}
body.sog-app-mobile [data-module="accueil"] .mp-start-go .ar { font-size: 17px; }
body.sog-app-mobile [data-module="accueil"] .mp-start-card { position: relative; }
body.sog-app-mobile [data-module="accueil"] .mp-start-card > * { min-width: 0; }

body.sog-app-mobile [data-module="accueil"] .mp-start.is-pulse {
  animation: mp-start-halo 2.6s ease-in-out infinite;
}
body.sog-app-mobile [data-module="accueil"] .mp-start.is-pulse .mp-start-card {
  animation: none;
  box-shadow: none;
}
body.sog-app-mobile [data-module="accueil"] .mp-start-tag { top: 6px; right: 0; }
@media (prefers-reduced-motion: reduce) {

  body.sog-app-mobile [data-module="accueil"] .mp-start.is-pulse {
    animation: none;
    border-color: #e8b327;
    box-shadow: 0 0 0 2px rgba(232, 179, 39, .16);
  }
}

body.sog-app-mobile [data-module="accueil"] .sog-grade {
  background: var(--marine);
  border-radius: 20px 20px 0 0;
  padding: 18px 18px 4px;
  margin: 0;
}
body.sog-app-mobile [data-module="accueil"] .sog-grade .gi { width: 60px; }
body.sog-app-mobile [data-module="accueil"] .sog-grade .gi svg { width: 60px; }
body.sog-app-mobile [data-module="accueil"] .sog-grade .gt .lab { color: var(--cream-mute); font-size: 10px; }
body.sog-app-mobile [data-module="accueil"] .sog-grade .gt .nm {
  color: var(--cream); font-family: var(--display); font-size: 22px;
}
body.sog-app-mobile [data-module="accueil"] .sog-grade .gt .nx { color: var(--cream-mute); font-size: 10px; }
body.sog-app-mobile [data-module="accueil"] .sog-xp {
  background: var(--marine);
  border-radius: 0 0 20px 20px;
  padding: 12px 18px 18px;
}
body.sog-app-mobile [data-module="accueil"] .sog-xp .xpl {
  color: var(--cream-mute); font-size: 10px; font-variant-numeric: tabular-nums;
}
body.sog-app-mobile [data-module="accueil"] .sog-xp .xpl b { color: var(--brique); }
body.sog-app-mobile [data-module="accueil"] .sog-xp .xpb i {
  height: 6px; border-radius: 3px; border: 0; background: var(--cream-faint);
}
body.sog-app-mobile [data-module="accueil"] .sog-xp .xpb i.f { background: var(--brique); }

body.sog-app-mobile [data-module="accueil"] .sog-assid {
  background: #fffdf7;
  border: 1px solid #ddd1b2;
  border-radius: 16px;
  padding: 16px;
  display: flex; flex-direction: column; gap: 12px;
}
body.sog-app-mobile [data-module="accueil"] .sog-assid .grp { min-width: 0; }
body.sog-app-mobile [data-module="accueil"] .sog-hm { overflow-x: auto; -webkit-overflow-scrolling: touch; }

body.sog-app-mobile [data-module="accueil"] .sog-niv {
  display: flex;
  grid-template-columns: none;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scroll-snap-type: x mandatory;
  gap: 10px;
  margin: 4px -14px 0;
  padding: 0 14px 6px;
}
body.sog-app-mobile [data-module="accueil"] .sog-niv > * {
  flex: 0 0 292px;
  scroll-snap-align: start;
}

body.sog-app-mobile [data-module="accueil"] .sog-lvl-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 6px;
}
body.sog-app-mobile [data-module="accueil"] .sog-lvl-grid .sog-lvl { padding: 10px 8px; }
body.sog-app-mobile [data-module="accueil"] .sog-lvl-grid .sog-lvl-n { font-size: 13px; }
body.sog-app-mobile [data-module="accueil"] .sog-lvl-grid .sog-lvl-d { font-size: 9px; }
body.sog-app-mobile [data-module="accueil"] .mp-row { border-radius: 12px; }
body.sog-app-mobile [data-module="accueil"] .mp-row summary { gap: 10px; }

body.sog-app-mobile [data-module="accueil"] .mp-vitrine { gap: 18px 14px; }
body.sog-app-mobile [data-module="accueil"] .mp-vitrine .sog-trophy {
  flex: 0 0 calc(50% - 7px); max-width: calc(50% - 7px);
}
body.sog-app-mobile [data-module="accueil"] .mp-vitrine .sog-trophy svg-badge svg { width: 100%; height: auto; }

body.sog-app-mobile [data-module="general"] .cq-hero { border-radius: 20px; overflow: hidden; }
body.sog-app-mobile [data-module="general"] .cq-hero-in { padding: 18px 18px 8px; }
body.sog-app-mobile [data-module="general"] .cq-hero-t { font-size: 24px; }
body.sog-app-mobile [data-module="general"] .cq-hero-lead { font-size: 11.5px; line-height: 1.6; }
body.sog-app-mobile [data-module="general"] .cq-figs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.sog-app-mobile [data-module="general"] .cq-fig { padding: 12px 10px; }
body.sog-app-mobile [data-module="general"] .cq-fig .v { font-size: 24px; }
body.sog-app-mobile [data-module="general"] .cq-fig .k { font-size: 9.5px; margin-top: 3px; }

body.sog-app-mobile [data-module="general"] .cq-band,
body.sog-app-mobile [data-module="general"] .cq-band.alt {
  background: #fffdf7;
  border: 1px solid #ddd1b2;
  border-radius: 16px;
  padding: 16px;
  margin-top: 12px;
}
body.sog-app-mobile [data-module="general"] .cq-band .sog-eye { margin: 0 0 14px; }

body.sog-app-mobile [data-module="general"] .cq-path {
  display: flex; flex-direction: column; gap: 14px;
}
body.sog-app-mobile [data-module="general"] .cq-pstep {
  display: flex; flex-direction: row; align-items: flex-start; gap: 12px;
}

body.sog-app-mobile [data-module="profil"] .sog-acc-id {
  border-radius: 20px;
  padding: 18px;
  gap: 14px;
}
body.sog-app-mobile [data-module="profil"] .sog-acc-id-medal {
  width: 54px; height: 54px;
  font-size: 20px;
}
body.sog-app-mobile [data-module="profil"] .sog-acc-id-pseudo {
  font-family: var(--display); font-size: 20px;
}
body.sog-app-mobile [data-module="profil"] .sog-acc-id-mail,
body.sog-app-mobile [data-module="profil"] .sog-acc-id-meta { font-size: 10px; }

body.sog-app-mobile [data-module="profil"] .sog-acc-bloc {
  background: #fffdf7;
  border: 1px solid #ddd1b2;
  border-radius: 16px;
  padding: 16px;
  margin-bottom: 12px;
}

body.sog-app-mobile [data-module="profil"] .sog-acc-body > .sog-acc-bloc:first-child {
  background: none; border: 0; padding: 0;
}
body.sog-app-mobile [data-module="profil"] .sog-acc-bloc .sog-eye { margin: 0 0 12px; }
body.sog-app-mobile [data-module="profil"] .sog-acc-rail { margin-bottom: 12px; }
body.sog-app-mobile [data-module="profil"] .sog-acc-title { font-size: 20px; margin: 0 0 10px; }

body.sog-app-mobile [data-module="profil"] .sog-acc-body > .sog-acc-bloc:last-child {
  border-color: var(--carmin);
}

body.sog-app-mobile [data-module="profil"] .sog-acc {
  display: flex; flex-direction: column;
}

body.sog-app-mobile [data-module="profil"] .sog-acc-rail {
  order: 2; position: static; margin: 4px 0 0; min-width: 0;
}
body.sog-app-mobile [data-module="profil"] .sog-acc-body { order: 1; }
body.sog-app-mobile [data-module="profil"] .sog-acc-title { display: none; }
body.sog-app-mobile [data-module="profil"] .sog-acc-anchors { display: none; }
body.sog-app-mobile [data-module="profil"] .sog-acc-rail .sog-acc-logout {
  display: block; width: 100%; margin: 0;
  background: none;
  border: 1px solid var(--marine); border-radius: 999px;
  padding: 14px; min-height: 48px;
  font-family: var(--display); font-size: 13px; color: var(--marine);
  text-align: center;
}

body.sog-app-mobile [data-module="profil"] .sog-acc-bloc .sog-eye {
  font-size: 9.5px; letter-spacing: .16em; color: #8a8175; gap: 0;
}
body.sog-app-mobile [data-module="profil"] .sog-acc-bloc .sog-eye b { display: none; }
body.sog-app-mobile [data-module="profil"] .sog-acc-bloc .sog-eye::before,
body.sog-app-mobile [data-module="profil"] .sog-acc-bloc .sog-eye::after { display: none; }
body.sog-app-mobile [data-module="profil"] .sog-acc-bloc .sog-eye.red { color: var(--carmin); }

body.sog-app-mobile [data-module="profil"] .sog-zone-grid,
body.sog-app-mobile [data-module="profil"] .sog-zone-grid.cols-4 {
  grid-template-columns: 1fr 1fr; gap: 8px;
}
body.sog-app-mobile [data-module="profil"] .sog-zone-grid .sog-lvl { border-radius: 12px; }

body.sog-app-mobile [data-module="profil"] .sog-acc-conc {
  padding: 16px;
  border-radius: 16px;  
  gap: 12px;
}

body.sog-app-mobile [data-module="profil"] .sog-acc-conc-medal {
  flex: 0 0 56px; width: 56px; height: 56px;
}

body.sog-app-mobile [data-module="profil"] .sog-acc-conc-txt { flex: 1 1 0; }
body.sog-app-mobile [data-module="profil"] .sog-acc-conc-t { font-size: 14px; }
body.sog-app-mobile [data-module="profil"] .sog-acc-conc-d { font-size: 12px; }

body.sog-app-mobile [data-module="profil"] .sog-acc-conc > .cta-gold {
  flex: 1 1 100%;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
  min-height: 48px;
}

body.sog-app-mobile [data-module="dictee"],
body.sog-app-mobile [data-module="qcm"],
body.sog-app-mobile [data-module="compo"] { margin: 0; }

body.sog-app-mobile [data-module="dictee"] .cq-hero,
body.sog-app-mobile [data-module="qcm"] .cq-hero,
body.sog-app-mobile [data-module="compo"] .cq-hero { border-radius: 16px; overflow: hidden; }
body.sog-app-mobile [data-module="dictee"] .cq-hero-in,
body.sog-app-mobile [data-module="qcm"] .cq-hero-in,
body.sog-app-mobile [data-module="compo"] .cq-hero-in { padding: 16px 16px 10px; }
body.sog-app-mobile [data-module="dictee"] .cq-hero-t,
body.sog-app-mobile [data-module="qcm"] .cq-hero-t,
body.sog-app-mobile [data-module="compo"] .cq-hero-t { font-size: 24px; margin-bottom: 6px; }
body.sog-app-mobile [data-module="dictee"] .cq-hero-lead,
body.sog-app-mobile [data-module="qcm"] .cq-hero-lead,
body.sog-app-mobile [data-module="compo"] .cq-hero-lead { font-size: 11px; line-height: 1.6; }
body.sog-app-mobile [data-module="dictee"] .cq-fig,
body.sog-app-mobile [data-module="qcm"] .cq-fig,
body.sog-app-mobile [data-module="compo"] .cq-fig { padding: 12px 14px; }
body.sog-app-mobile [data-module="dictee"] .cq-fig .v,
body.sog-app-mobile [data-module="qcm"] .cq-fig .v,
body.sog-app-mobile [data-module="compo"] .cq-fig .v { font-size: 18px; }
body.sog-app-mobile [data-module="dictee"] .cq-fig .k,
body.sog-app-mobile [data-module="qcm"] .cq-fig .k,
body.sog-app-mobile [data-module="compo"] .cq-fig .k { font-size: 9.5px; margin-top: 4px; }

body.sog-app-mobile [data-module="dictee"] .sog-eye,
body.sog-app-mobile [data-module="qcm"] .sog-eye,
body.sog-app-mobile [data-module="compo"] .sog-eye { margin: 26px 0 12px; }

body.sog-app-mobile [data-module="dictee"] .tr-ctarow > .cta-gold,
body.sog-app-mobile [data-module="qcm"] .tr-ctarow > .cta,
body.sog-app-mobile [data-module="compo"] .tr-ctarow > .cta,
body.sog-app-mobile [data-module="compo"] .tr-ctarow > .cta-gold {
  flex: 1 1 100%;
  border: 0; border-radius: 999px;
  background: var(--brique); color: var(--marine);
  font-family: var(--display); font-size: 15px;
  padding: 15px; min-height: 48px;
  text-align: center;
}

body.sog-app-mobile [data-module="dictee"] .tr-etq,
body.sog-app-mobile [data-module="qcm"] .tr-etq,
body.sog-app-mobile [data-module="compo"] .tr-etq { border-radius: 6px; font-size: 12px; padding: 5px 10px; }

body.sog-app-mobile [data-module="dictee"] .tr-card,
body.sog-app-mobile [data-module="compo"] .tr-card {
  background: #fffdf7; border-color: #ddd1b2; border-radius: 14px;
}

body.sog-app-mobile [data-module="dictee"] .tr-bar .hd,
body.sog-app-mobile [data-module="qcm"] .tr-bar .hd,
body.sog-app-mobile [data-module="compo"] .tr-bar .hd { font-size: 10.5px; margin-bottom: 3px; }
body.sog-app-mobile [data-module="dictee"] .tr-bar .tk,
body.sog-app-mobile [data-module="qcm"] .tr-bar .tk,
body.sog-app-mobile [data-module="compo"] .tr-bar .tk { height: 6px; border-radius: 3px; overflow: hidden; }
body.sog-app-mobile [data-module="dictee"] .tr-lbl,
body.sog-app-mobile [data-module="compo"] .tr-lbl { font-size: 10px; margin: 16px 0 8px; }

body.sog-app-mobile [data-module="dictee"] .tr-foot,
body.sog-app-mobile [data-module="compo"] .tr-foot { gap: 10px; margin-top: 14px; }
body.sog-app-mobile [data-module="dictee"] .tr-foot .cta-gold,
body.sog-app-mobile [data-module="compo"] .tr-foot .cta-gold {
  flex: 1 1 auto; border-radius: 999px; padding: 14px; font-size: 13px;
  text-align: center; min-height: 48px;
}
body.sog-app-mobile [data-module="dictee"] .tr-foot .lk,
body.sog-app-mobile [data-module="compo"] .tr-foot .lk {
  border: 1px solid var(--marine); border-radius: 999px;
  padding: 12px 16px; color: var(--marine); font-size: 12px;
}

body.sog-app-mobile [data-module="dictee"] .sog-eye { display: none; }

body.sog-app-mobile [data-module="dictee"] .cq-hero { border-radius: 16px; }
body.sog-app-mobile [data-module="dictee"] .cq-hero-in { padding: 12px 16px 2px; }
body.sog-app-mobile [data-module="dictee"] .cq-hero-t { font-size: 14px; margin-bottom: 0; }
body.sog-app-mobile [data-module="dictee"] .cq-hero-lead { display: none; }

body.sog-app-mobile [data-module="dictee"] .cq-fig { padding: 10px 12px; }
body.sog-app-mobile [data-module="dictee"] .cq-fig .v { font-size: 13px; }
body.sog-app-mobile [data-module="dictee"] .cq-fig .k { font-size: 9px; margin-top: 3px; }

body.sog-app-mobile [data-module="dictee"] .cq-fig.dic-prog { padding: 12px 16px; }
body.sog-app-mobile [data-module="dictee"] .dic-rail { margin: 7px 0 6px; }
body.sog-app-mobile [data-module="dictee"] .dic-rail i { width: 12px; height: 4px; border-radius: 2px; }
body.sog-app-mobile [data-module="dictee"] .dic-jauge { height: 6px; border-radius: 3px; }
body.sog-app-mobile [data-module="dictee"] .dic-hint { font-size: 10.5px; }

body.sog-app-mobile [data-module="dictee"] .dic-sur { font-size: 10px; }

body.sog-app-mobile [data-module="dictee"] .dz-mag { border-radius: 20px; padding: 18px 16px 14px; }
body.sog-app-mobile [data-module="dictee"] .dz-row { justify-content: center; row-gap: 14px; }
body.sog-app-mobile [data-module="dictee"] .dz-nav { width: 100%; justify-content: center; gap: 18px; }
body.sog-app-mobile [data-module="dictee"] .dz-sep { display: none; }
body.sog-app-mobile [data-module="dictee"] .dz-tbt { width: 48px; height: 48px; border-radius: 50%; font-size: 15px; }
body.sog-app-mobile [data-module="dictee"] .dz-play {

  width: 68px; height: 68px; font-size: 24px; position: relative;
}

body.sog-app-mobile [data-module="dictee"] .dz-play::after {
  content: ""; position: absolute; inset: -10px; border-radius: 50%;
  border: 4px solid var(--cream-faint); pointer-events: none;
}
body.sog-app-mobile [data-module="dictee"] .dz-rep {
  border-radius: 999px; font-size: 11px; padding: 9px 14px; min-height: 40px; white-space: nowrap;
}
body.sog-app-mobile [data-module="dictee"] .dz-rate { margin-left: 0; gap: 8px; }
body.sog-app-mobile [data-module="dictee"] .dz-ratek { display: none; }  
body.sog-app-mobile [data-module="dictee"] .dz-ratev {
  border-radius: 999px; font-size: 12px; padding: 9px 13px; min-height: 40px;
}
body.sog-app-mobile [data-module="dictee"] .dz-mag .tr-segbar { margin: 16px 0 8px; gap: 4px; }
body.sog-app-mobile [data-module="dictee"] .dz-mag .tr-segbar .seg { height: 14px; border-radius: 5px; }
body.sog-app-mobile [data-module="dictee"] .dz-hint { font-size: 10.5px; }
body.sog-app-mobile [data-module="dictee"] .dz-opts { gap: 8px 20px; margin-top: 14px; padding-top: 14px; }
body.sog-app-mobile [data-module="dictee"] .dz-sw { font-size: 11px; min-height: 40px; gap: 8px; }
body.sog-app-mobile [data-module="dictee"] .dz-sw .box { width: 18px; height: 18px; font-size: 11px; }

body.sog-app-mobile [data-module="dictee"] #dictee-input {
  background-color: #fffdf7;
  border: 1px solid #ddd1b2; border-radius: 16px;
  padding: 13px 15px;
  font-size: 13px; line-height: 26px;
  min-height: 44vh !important;  
  background-image: repeating-linear-gradient(transparent, transparent 25px, #ece3c9 25px, #ece3c9 26px);
  background-position: 0 12px;
  background-attachment: local;
}

body.sog-app-mobile [data-module="dictee"] .tr-ctarow:has(.dz-wc) {
  position: sticky;
  bottom: calc(88px + env(safe-area-inset-bottom, 0px));
  z-index: 5;
  gap: 10px; margin-top: 12px; align-items: center;
}
body.sog-app-mobile [data-module="dictee"] .tr-ctarow:has(.dz-wc) > .cta {
  flex: 1 1 auto; border: 0; border-radius: 999px;
  background: var(--brique); color: var(--marine);
  font-family: var(--display); font-size: 15px;
  padding: 15px; min-height: 48px;
  box-shadow: 0 10px 24px rgba(18, 36, 64, .25);  
}
body.sog-app-mobile [data-module="dictee"] .tr-ctarow:has(.dz-wc) > .cta-ghost {
  flex: 0 0 auto; border-radius: 999px; background: var(--cream); padding: 12px 16px;
}

body.sog-app-mobile [data-module="dictee"] .dz-wc {
  margin-left: auto;
  background: var(--marine); color: var(--cream);
  border-radius: 999px; padding: 7px 11px;
  font-size: 10.5px; font-variant-numeric: tabular-nums; white-space: nowrap;
}
body.sog-app-mobile [data-module="dictee"] .dz-wc .att { color: var(--cream-mute); }
body.sog-app-mobile [data-module="dictee"] .dz-wc .att.under { color: var(--dot-red); }

body.sog-app-mobile [data-module="dictee"] .dz-guard { border-radius: 12px; padding: 15px 16px; }

body.sog-app-mobile [data-module="dictee"] .tr-verdict { gap: 10px 14px; margin: 4px 0 14px; }
body.sog-app-mobile [data-module="dictee"] .tr-verdict .note { font-size: 40px; }
body.sog-app-mobile [data-module="dictee"] .tr-verdict .note small { font-size: 15px; }
body.sog-app-mobile [data-module="dictee"] .tr-cols { flex-direction: column; gap: 12px; margin-top: 12px; }
body.sog-app-mobile [data-module="dictee"] .dz-corr {
  background: #fffdf7; border: 1px solid #ddd1b2; border-radius: 14px;
  padding: 4px 14px; gap: 0; margin: 4px 0 8px;
}
body.sog-app-mobile [data-module="dictee"] .dz-corr-row {
  border-left: 0; padding: 10px 0; border-bottom: 1px solid #ece3c9;
}
body.sog-app-mobile [data-module="dictee"] .dz-corr-row:last-child { border-bottom: 0; }
body.sog-app-mobile [data-module="dictee"] .dz-corr-head { font-size: 12px; }
body.sog-app-mobile [data-module="dictee"] .dz-corr-exp { font-size: 11px; }
body.sog-app-mobile [data-module="dictee"] .tr-conseil {
  background: #fffdf7; border: 1px solid #ddd1b2; border-left: 3px solid var(--brique);
  border-radius: 12px; padding: 11px 14px; font-size: 11px;
}

body.sog-app-mobile [data-module="qcm"] .sog-lvl-row { gap: 9px; }
body.sog-app-mobile [data-module="qcm"] .sog-lvl-wrap { flex: 1 1 calc(50% - 5px); min-width: calc(50% - 5px); }
body.sog-app-mobile [data-module="qcm"] .sog-lvl { border-radius: 14px; padding: 13px 12px; }
body.sog-app-mobile [data-module="qcm"] .sog-lvl-n { font-size: 16px; }
body.sog-app-mobile [data-module="qcm"] .sog-lvl-d { font-size: 10px; margin-top: 4px; }

body.sog-app-mobile [data-module="qcm"] .sog-console {
  margin: 0 -14px;
  border: 0; border-radius: 0;
  background: var(--marine);
  min-height: calc(100vh - 250px);  
  display: flex; flex-direction: column;
}
body.sog-app-mobile [data-module="qcm"] .sog-console .bar { border-bottom: 0; padding: 12px 16px 0; gap: 10px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .bar .dot { display: none; }
body.sog-app-mobile [data-module="qcm"] .sog-console .bar .tt {
  margin-left: 0; color: var(--brique); font-weight: 700; font-size: 11px;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
body.sog-app-mobile [data-module="qcm"] .sog-console .bar .chr { color: var(--cream); font-size: 13px; font-weight: 700; }
body.sog-app-mobile [data-module="qcm"] .sog-console .body { flex: 1 1 auto; padding: 12px 16px 20px; display: flex; flex-direction: column; }

body.sog-app-mobile [data-module="qcm"] .sog-console .tr-segbar { gap: 2.5px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .tr-segbar i {
  height: 4px; border-radius: 2px; background: rgba(244, 237, 224, .2);
}
body.sog-app-mobile [data-module="qcm"] .sog-console .tr-segbar i.done { background: var(--brique); }
body.sog-app-mobile [data-module="qcm"] .sog-console .tr-segbar i.cur { background: var(--cream); }
body.sog-app-mobile [data-module="qcm"] .sog-console .qkick { font-size: 10px; }

body.sog-app-mobile [data-module="qcm"] .sog-console .qx {
  font-family: var(--mono); font-size: 14px; line-height: 1.6;
  letter-spacing: 0; margin: 4px 0 16px;
}

body.sog-app-mobile [data-module="qcm"] .sog-console .copt {
  align-items: center; border-radius: 14px;
  border: 1px solid rgba(244, 237, 224, .25);
  background: rgba(244, 237, 224, .06);
  min-height: 48px; margin-bottom: 9px;
}
body.sog-app-mobile [data-module="qcm"] .sog-console .copt .ky {
  background: none; color: var(--brique); padding: 12px 4px 12px 14px; font-size: 14px;
}
body.sog-app-mobile [data-module="qcm"] .sog-console .copt:hover:not(:disabled) .ky { background: none; }
body.sog-app-mobile [data-module="qcm"] .sog-console .copt .tx { padding: 12px 14px 12px 6px; font-size: 13px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .copt.is-correct {
  border: 1.5px solid var(--note-ok-vif); background: rgba(62, 152, 77, .16);
}
body.sog-app-mobile [data-module="qcm"] .sog-console .copt.is-correct .ky { background: none; color: var(--brique); }
body.sog-app-mobile [data-module="qcm"] .sog-console .copt .ck { color: var(--note-ok-vif); padding: 12px 14px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .copt.is-wrong {
  border: 1.5px solid var(--note-ko); background: rgba(192, 73, 47, .14); opacity: 1;
}

body.sog-app-mobile [data-module="qcm"] .sog-console .expl {
  border-radius: 10px; background: rgba(244, 237, 224, .08);
  font-size: 11.5px; padding: 12px 14px;
}

body.sog-app-mobile [data-module="qcm"] .sog-console .cnext { margin-top: auto; padding-top: 16px; flex-wrap: wrap; gap: 10px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .cnext .run {
  flex: 1 1 100%; justify-content: center;
  border-radius: 999px; padding: 15px; font-size: 15px; min-height: 48px;
}
body.sog-app-mobile [data-module="qcm"] .sog-console .glink { font-size: 12px; min-height: 44px; padding: 10px 0; }

body.sog-app-mobile [data-module="qcm"] .sog-console .rscore { gap: 10px 14px; align-items: center; margin-bottom: 14px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .rscore .big { font-size: 40px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .rscore .sub { font-size: 11px; }
body.sog-app-mobile [data-module="qcm"] .sog-console .rscore .sub.gold {
  background: #ece3c9; color: var(--marine); font-weight: 700;
  padding: 5px 10px; border-radius: 999px;
}
body.sog-app-mobile [data-module="qcm"] .sog-console .rscore .right { flex: 1 1 100%; margin-left: 0; font-size: 10.5px; }

body.sog-app-mobile [data-module="compo"] .cp-wizov {
  align-items: flex-end; padding: 0;
  background: rgba(18, 36, 64, .55);

  z-index: 90;
}
body.sog-app-mobile [data-module="compo"] .cp-wpanel {
  max-width: none; border-top: 0;
  border-radius: 24px 24px 0 0;
  padding: 18px 16px calc(24px + env(safe-area-inset-bottom, 0px));
  max-height: 88vh; overflow-y: auto;
}
body.sog-app-mobile [data-module="compo"] .cp-wstep .sog-lvl-row { flex-direction: row; gap: 9px; }
body.sog-app-mobile [data-module="compo"] .cp-wstep .sog-lvl-wrap { flex: 1 1 0; width: auto; min-width: 0; }
body.sog-app-mobile [data-module="compo"] .cp-wstep .sog-lvl { padding: 12px 28px 12px 12px; border-radius: 14px; min-height: 62px; }
body.sog-app-mobile [data-module="compo"] .cp-wstep .sog-lvl-n { font-size: 14px; }
body.sog-app-mobile [data-module="compo"] .cp-wstep .sog-lvl-d { font-size: 9.5px; margin-top: 3px; }

body.sog-app-mobile [data-module="compo"] .cp-wstep .sog-lvl-i { top: 6px; right: 6px; width: 22px; height: 22px; }
body.sog-app-mobile [data-module="compo"] .cp-opt { border-radius: 14px; padding: 14px; }
body.sog-app-mobile [data-module="compo"] .cp-tir { gap: 9px; }
body.sog-app-mobile [data-module="compo"] .cp-tir .cta,
body.sog-app-mobile [data-module="compo"] .cp-tir .cta-gold { flex: 1 1 auto; border-radius: 999px; padding: 13px; }
body.sog-app-mobile [data-module="compo"] .cp-wfoot .cta { border-radius: 999px; padding: 13px 22px; }
body.sog-app-mobile [data-module="compo"] .cp-saisie .cta { width: 100%; border-radius: 999px; padding: 14px; margin-top: 10px; }
body.sog-app-mobile [data-module="compo"] .tr-suj { border-radius: 14px; }

body.sog-app-mobile [data-module="compo"] .cp-ctxbar { margin: 0 -14px; padding: 12px 16px; }
body.sog-app-mobile [data-module="compo"] .cp-ctx-top { margin-bottom: 8px; }
body.sog-app-mobile [data-module="compo"] .cp-ctx-title { font-size: 13px; line-height: 1.4; }
body.sog-app-mobile [data-module="compo"] .tr-chrono {
  margin: 0 -14px; padding: 2px 16px 12px; gap: 10px;
}
body.sog-app-mobile [data-module="compo"] .tr-chrono .k { font-size: 9px; }
body.sog-app-mobile [data-module="compo"] .tr-chrono .tm { font-size: 22px; margin-top: 3px; }
body.sog-app-mobile [data-module="compo"] .tr-chrono .btns { gap: 7px; }
body.sog-app-mobile [data-module="compo"] .tr-chrono .btns .cta-dark { padding: 8px 11px; font-size: 11px; min-height: 0; }
body.sog-app-mobile [data-module="compo"] .tr-chrono + .tr-segbar {
  margin: 0 -14px; padding: 0 16px 12px; background: var(--marine); gap: 2.5px;
}
body.sog-app-mobile [data-module="compo"] .tr-chrono + .tr-segbar i {
  height: 5px; border-radius: 2px; background: rgba(244, 237, 224, .2);
}
body.sog-app-mobile [data-module="compo"] .tr-chrono + .tr-segbar i.done { background: var(--brique); }
body.sog-app-mobile [data-module="compo"] .tr-chrono + .tr-segbar i.red { background: var(--dot-red); }

body.sog-app-mobile [data-module="compo"] .cp-writegrid {
  display: flex; flex-direction: column; gap: 0;

  padding: 0 !important;
  margin: 0 -14px;
}
body.sog-app-mobile [data-module="compo"] .cp-writemain { display: flex; flex-direction: column; }

body.sog-app-mobile [data-module="compo"] .cp-guide {
  order: -1; position: static;
  background: #ece3c9; border: 0; border-bottom: 1px solid #ddd1b2;
  padding: 0 16px 12px; margin: 0;
}
body.sog-app-mobile [data-module="compo"] .cp-guide-h {
  display: flex; justify-content: space-between; align-items: center;
  padding: 12px 0; margin: 0; min-height: 44px; cursor: pointer;
  font-size: 11px;
}
body.sog-app-mobile [data-module="compo"] .cp-guide-h::after {
  content: "›"; font-family: var(--mono); font-size: 15px; color: var(--marine);
  transform: rotate(90deg); transition: transform .14s ease;
}
body.sog-app-mobile [data-module="compo"] .cp-guide.sog-am-fold { padding-bottom: 0; }
body.sog-app-mobile [data-module="compo"] .cp-guide.sog-am-fold > :not(.cp-guide-h) { display: none; }
body.sog-app-mobile [data-module="compo"] .cp-guide.sog-am-fold .cp-guide-h::after { transform: none; }
body.sog-app-mobile [data-module="compo"] .cp-exam-note { margin: 12px 16px; }

body.sog-app-mobile [data-module="compo"] .cp-writemain > .sog-textarea {
  background-color: transparent;
  border: 0; border-bottom: 1px solid #ddd1b2; border-radius: 0;
  padding: 14px 16px;
  font-size: 13px; line-height: 26px;
  min-height: 48vh !important;  
  background-image: repeating-linear-gradient(transparent, transparent 25px, #ece3c9 25px, #ece3c9 26px);
  background-position: 0 12px;
  background-attachment: local;
}
body.sog-app-mobile [data-module="compo"] .cp-writemain > .tr-ctarow { padding: 0 16px; margin-top: 12px; }
body.sog-app-mobile [data-module="compo"] .cp-writemain > div:last-child { padding: 0 16px; }

body.sog-app-mobile [data-module="compo"] .cp-writemain > .cfo-champs { padding: 0 16px; }

body.sog-app-mobile [data-module="compo"] .tr-verdict { gap: 10px 14px; margin: 4px 0 12px; }
body.sog-app-mobile [data-module="compo"] .tr-verdict .note { font-size: 36px; }
body.sog-app-mobile [data-module="compo"] .tr-verdict .note small { font-size: 14px; }
body.sog-app-mobile [data-module="compo"] .tr-cols { gap: 9px; margin-top: 12px; }
body.sog-app-mobile [data-module="compo"] .tr-cols .tr-card { padding: 11px 12px; border-radius: 12px; }
body.sog-app-mobile [data-module="compo"] .tr-card .hd { font-size: 9px; letter-spacing: .12em; margin-bottom: 6px; }
body.sog-app-mobile [data-module="compo"] .tr-cols .tr-pts li { font-size: 10px; line-height: 1.6; padding: 4px 0 4px 16px; border-bottom: 0; }
body.sog-app-mobile [data-module="compo"] .copie { margin: 18px -16px 0; padding: 20px 16px; }

body.sog-app-mobile .sog-am-tile.rejeu { background: var(--marine); border-color: var(--marine); }
body.sog-app-mobile .sog-am-tile.rejeu .vis {
  width: auto; height: auto; min-width: 32px; background: none; border-radius: 0;
  font-family: var(--mono); font-size: 24px; color: var(--brique);
}
body.sog-app-mobile .sog-am-tile.rejeu .t { color: var(--cream); font-size: 14px; }
body.sog-app-mobile .sog-am-tile.rejeu .s { color: var(--cream-mute); font-size: 10.5px; }
body.sog-app-mobile .sog-am-tile.rejeu .ar { color: var(--brique); }

body.sog-app-mobile.sog-landing .lp-sec .lp-inner { padding: 22px 18px; }
body.sog-app-mobile.sog-landing .lp-sec.alt { background: #ece3c9; }

body.sog-app-mobile.sog-landing .lp-band .sog-eye {
  margin: 0 0 12px; gap: 6px;
  font-size: 9.5px; letter-spacing: .16em; color: #8a8175;
}
body.sog-app-mobile.sog-landing .lp-band .sog-eye b {
  background: none; padding: 0; color: var(--brique);
  font-family: var(--mono); font-size: 9.5px; font-weight: 700;
}
body.sog-app-mobile.sog-landing .lp-band .sog-eye::after { display: none; }

body.sog-app-mobile.sog-landing .lp-hero .lp-inner { padding: 16px 18px 0; }
body.sog-app-mobile.sog-landing .lp-hero-cols { gap: 0; }
body.sog-app-mobile.sog-landing .lp-title { font-size: 27px; line-height: 1.2; margin: 6px 56px 12px 0; }
body.sog-app-mobile.sog-landing .lp-lead { font-size: 11.5px; line-height: 1.6; margin: 0 0 16px; }
body.sog-app-mobile.sog-landing .lp-hero .lp-cta { gap: 10px; flex-wrap: nowrap; }
body.sog-app-mobile.sog-landing .lp-hero .lp-cta .cta-gold {
  flex: 1.2 1 0; min-width: 0;
  border-radius: 999px; padding: 14px 8px;
  font-size: 13px; min-height: 48px; text-align: center;
}
body.sog-app-mobile.sog-landing .lp-hero .lp-cta .cta-dark {
  flex: 1 1 0; min-width: 0;
  border-radius: 999px; padding: 14px 8px;
  font-family: var(--display); font-size: 13px; min-height: 48px;
  justify-content: center;
  border-color: rgba(244, 237, 224, .5);  
}

body.sog-app-mobile.sog-landing .lp-actions { width: 100%; }
body.sog-app-mobile.sog-landing .lp-testlink {
  display: flex; width: 100%; text-align: center; border-radius: 999px;
  margin-top: 12px; padding: 13px 8px; font-size: 13px; min-height: 48px;
}
body.sog-app-mobile.sog-landing .lp-free { text-align: center; font-size: 10.5px; margin: 12px 0 0; }

body.sog-app-mobile.sog-landing .lp-hero-video { margin-top: 16px; }
body.sog-app-mobile.sog-landing .lp-vthumb {
  display: block; width: 100%;
  border-radius: 16px 16px 0 0; overflow: hidden;
  background: var(--marine-dim);
}
body.sog-app-mobile.sog-landing .lp-vthumb .vplay { width: 52px; height: 52px; font-size: 18px; }

body.sog-app-mobile.sog-landing .lp-scoregrid { background: var(--marine-dim); }
body.sog-app-mobile.sog-landing .lp-scorecell { padding: 14px 10px; }
body.sog-app-mobile.sog-landing .lp-scorecell .v { font-size: 18px; }
body.sog-app-mobile.sog-landing .lp-scorecell .k {
  font-size: 9px; letter-spacing: .04em; text-transform: none; margin-top: 4px;
}

body.sog-app-mobile.sog-landing .lp-createur { flex-direction: row; align-items: center; gap: 14px; }
body.sog-app-mobile.sog-landing .lp-ecusson { width: 74px; margin: 0; }
body.sog-app-mobile.sog-landing .lp-cr-t { font-size: 15px; margin: 0 0 6px; }
body.sog-app-mobile.sog-landing .lp-createur-txt p { font-size: 10.5px; line-height: 1.6; color: #4a4436; }

body.sog-app-mobile.sog-landing .lp-zig { gap: 0; }
body.sog-app-mobile.sog-landing .lp-zig .lp-row {
  gap: 10px; padding: 16px 0 20px;
  border-bottom: 1px solid #ddd1b2;
}
body.sog-app-mobile.sog-landing .lp-zig .lp-row:last-child { border-bottom: 0; padding-bottom: 4px; }
body.sog-app-mobile.sog-landing .lp-row-desc h3 { font-size: 16px; margin: 0 0 4px; }
body.sog-app-mobile.sog-landing .lp-row-desc p { font-size: 11px; line-height: 1.55; color: #4a4436; }
body.sog-app-mobile.sog-landing .lp-zig .lp-row:nth-child(odd) .lp-pvin { margin-right: 34px; }
body.sog-app-mobile.sog-landing .lp-zig .lp-row:nth-child(even) .lp-pvin { margin-left: 34px; }
body.sog-app-mobile.sog-landing .lp-rap {
  width: auto; margin: 0;
  border-radius: 14px; border-top: 0; padding: 13px 15px;
}
body.sog-app-mobile.sog-landing .lp-pv.rap .lp-zoom { right: 8px; }
body.sog-app-mobile.sog-landing .lp-qcm { border-radius: 14px; padding: 13px 15px; }

body.sog-app-mobile.sog-landing .lp-dt { background: var(--marine); border-radius: 14px; padding: 13px 15px; }
body.sog-app-mobile.sog-landing .lp-dt-keys .k { background: var(--cream-faint); }
body.sog-app-mobile.sog-landing .lp-dt-line { color: var(--cream-mute); font-size: 11px; line-height: 1.8; }

body.sog-app-mobile.sog-landing .lp-bento { grid-template-columns: 1fr 1fr; gap: 10px; }
body.sog-app-mobile.sog-landing .lp-bento .lp-tile { grid-column: auto; border-radius: 14px; padding: 13px; }
body.sog-app-mobile.sog-landing .lp-tile .lp-kick { font-size: 8.5px; margin: 0 30px 8px 0; }
body.sog-app-mobile.sog-landing .lp-tile .sog-xp .xpb i { height: 5px; border-radius: 2px; }
body.sog-app-mobile.sog-landing .lp-tile .sog-xp .xpl { font-size: 9.5px; margin-top: 8px; }
body.sog-app-mobile.sog-landing .lp-tile-big { font-size: 30px; }
body.sog-app-mobile.sog-landing .lp-tile-sub { font-size: 10px; margin-top: 6px; }
body.sog-app-mobile.sog-landing .lp-tile.cal,
body.sog-app-mobile.sog-landing .lp-tile.troph { background: #fffdf7; border: 1px solid #ddd1b2; }
body.sog-app-mobile.sog-landing .lp-tile.cal .lp-kick,
body.sog-app-mobile.sog-landing .lp-tile.troph .lp-kick { color: #8a8175; }
body.sog-app-mobile.sog-landing .lp-tile .sog-cal { grid-template-rows: repeat(7, 7px); grid-auto-columns: 7px; }
body.sog-app-mobile.sog-landing .lp-tile .sog-cal-cell { width: 7px; height: 7px; border-radius: 2px; background: #ece3c9; }
body.sog-app-mobile.sog-landing .lp-tile .sog-cal-cell.on { background: var(--brique); }
body.sog-app-mobile.sog-landing .lp-troph-mini { gap: 6px; }
body.sog-app-mobile.sog-landing .lp-troph-mini .sog-trophy svg { width: 26px; height: 26px; }
body.sog-app-mobile.sog-landing .lp-troph-mini .more { font-size: 10px; color: #8a8175; }

body.sog-app-mobile.sog-landing .lp-quote { gap: 10px; }
body.sog-app-mobile.sog-landing .lp-quote-mark { font-size: 52px; color: var(--note-mid); }
body.sog-app-mobile.sog-landing .lp-quote-txt { font-size: 16px; line-height: 1.45; }
body.sog-app-mobile.sog-landing .lp-quote-p { font-size: 11px; line-height: 1.6; }
body.sog-app-mobile.sog-landing .lp-tut-steps { font-size: 10px; gap: 8px; margin-top: 16px; }
body.sog-app-mobile.sog-landing .lp-tut-steps > span { flex: 1 1 0; min-width: 0; }
body.sog-app-mobile.sog-landing .lp-tut-steps .sp { display: none; }
body.sog-app-mobile.sog-landing .lp-tut-steps b { font-size: 11px; }

body.sog-app-mobile.sog-landing .lp-widget { margin: 4px auto 0; }

body.sog-app-mobile.sog-landing .lp-avis {
  display: flex; flex-direction: column; gap: 10px;
  overflow: visible; padding-bottom: 0;
}
body.sog-app-mobile.sog-landing .lp-avis figure {
  flex: 0 0 auto; gap: 7px;
  background: #fffdf7; border-color: #ddd1b2;
  border-radius: 14px; padding: 13px 15px;
}
body.sog-app-mobile.sog-landing .lp-avis .stars { font-size: 12px; letter-spacing: 2px; }
body.sog-app-mobile.sog-landing .lp-avis blockquote p { font-size: 11px; line-height: 1.6; }
body.sog-app-mobile.sog-landing .lp-avis figcaption { font-size: 9.5px; color: #8a8175; }
body.sog-app-mobile.sog-landing .lp-avis figcaption b { font-size: 10.5px; }

body.sog-app-mobile.sog-landing .lp-inner h3[style] { font-size: 13px !important; margin: 0 0 4px !important; }
body.sog-app-mobile.sog-landing .lp-inner p[style] { font-size: 11px !important; line-height: 1.65 !important; }
body.sog-app-mobile.sog-landing .lp-sec .lp-inner > div[style] {
  gap: 16px !important;

  grid-template-columns: 1fr !important;
}

body.sog-app-mobile.sog-landing .lp-ctaband .lp-inner { padding: 30px 18px; }
body.sog-app-mobile.sog-landing .lp-big { font-size: 22px; margin: 0 0 16px; }
body.sog-app-mobile.sog-landing .lp-ctaband .lp-cta .cta-gold {
  width: 100%; border-radius: 999px; padding: 15px;
  font-size: 14px; min-height: 48px; text-align: center;
}
body.sog-app-mobile.sog-landing .lp-ctasub { font-size: 10.5px; color: var(--brique-light); }
body.sog-app-mobile.sog-landing [data-module="landing"] > div:last-child {
  padding-bottom: calc(22px + env(safe-area-inset-bottom, 0px)) !important;
}

body.sog-app-mobile .lp-lightbox {
  padding: calc(12px + env(safe-area-inset-top, 0px)) 12px calc(12px + env(safe-area-inset-bottom, 0px));
}

body.sog-app-mobile .lp-lightbox:has(.lb-test) { padding: 0; align-items: stretch; }
body.sog-app-mobile .lb-inner.lb-test {
  width: 100%; max-width: none; max-height: none;
  border-radius: 0; box-shadow: none;
  overflow-y: auto; -webkit-overflow-scrolling: touch;

  padding: calc(14px + env(safe-area-inset-top, 0px)) 16px calc(26px + env(safe-area-inset-bottom, 0px));
}

body.sog-app-mobile .lb-test .lb-close {
  position: fixed;
  top: calc(10px + env(safe-area-inset-top, 0px)); right: 14px;
  z-index: 2;
  background: var(--cream); border-radius: 999px; padding: 8px 10px;
}
body.sog-app-mobile .lb-test .lp-test-t { font-size: 21px; margin-right: 74px; line-height: 1.25; }
body.sog-app-mobile .lb-test .lp-test-p { font-size: 11.5px; line-height: 1.6; }

body.sog-app-mobile .lb-test .lp-test-box { background: none; border: 0; padding: 0; }

body.sog-app-mobile .lb-test .lp-test-mag.mini { border-radius: 16px; padding: 13px 14px 11px; }
body.sog-app-mobile .lb-test .lp-test-mag.mini .dz-tbt { width: 38px; height: 38px; border-radius: 12px; }
body.sog-app-mobile .lb-test .lp-test-mag.mini .dz-play { width: 44px; height: 44px; }
body.sog-app-mobile .lb-test .lp-test-mag.mini .dz-ratev { border-radius: 999px; }

body.sog-app-mobile .lp-test-ta {
  font-size: 16px;  
  background-color: #fffdf7;
  border: 1px solid #ddd1b2; border-radius: 16px;
  padding: 12px 14px;
  line-height: 24px; min-height: 96px;
  background-image: repeating-linear-gradient(transparent, transparent 23px, #ece3c9 23px, #ece3c9 24px);
  background-position: 0 12px;
  background-attachment: local;
}

body.sog-app-mobile .lb-test .lp-test-res { border-top: 0; margin-top: 6px; padding-top: 0; }
body.sog-app-mobile .lp-test-row .cta-gold {
  width: 100%; border-radius: 999px; padding: 14px;
  font-size: 14px; min-height: 48px;
}
body.sog-app-mobile .lp-test-verdict { font-size: 16px; }
body.sog-app-mobile .lp-test-cta { gap: 10px; }
body.sog-app-mobile .lp-test-cta .cta-gold,
body.sog-app-mobile .lp-test-cta .btn-linkedin {
  flex: 1 1 100%; border-radius: 999px; min-height: 48px;
}

body.sog-app-mobile:not(.sog-am-app):not(.sog-landing) .site-main {
  padding: 6px 22px calc(40px + env(safe-area-inset-bottom, 0px));
}
body.sog-app-mobile:not(.sog-am-app) #sog-main > .lp-back { font-size: 13px; padding: 12px 0; margin: 0; }

body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .page-header::before {
  content: "PREPADAWAN";
  display: block;
  font-family: var(--mono); font-size: 10px; letter-spacing: .22em; color: #8a8175;
  margin-bottom: 12px;
}
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .page-title { font-size: 28px; line-height: 1.15; }
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .page-title .page-cursor { width: 11px; height: 26px; }

body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .page-lead { display: none; }
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-rule { display: none; }

body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-chips.pair {
  max-width: 100%; gap: 10px; margin-bottom: 4px;
}
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-chip {
  min-height: 44px; border-radius: 999px; font-size: 12px;
}

body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-form { max-width: none; }
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-form .sog-flbl {
  margin-top: 24px; margin-bottom: 0;
  font-size: 9px; letter-spacing: .14em; color: #8a8175;
}
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-input {
  font-size: 16px;  
  padding: 10px 2px; min-height: 44px;
}
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-hint { font-size: 11px; }

body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-form .cta-row { margin-top: 26px; }
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-form .cta-row > .cta {
  border-radius: 999px; padding: 15px;
  font-size: 15px; min-height: 48px; letter-spacing: -.01em;
}
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-form:has(.sog-form-pair) .cta-row > .cta {
  background: var(--brique); color: var(--marine);
}

body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-form > .cta-ghost {
  border: 0; background: none;
  text-decoration: underline; text-underline-offset: 3px;
  color: var(--marine); font-size: 12px; min-height: 44px; margin-top: 14px;
}
body.sog-app-mobile:not(.sog-am-app) [data-module="profil"] .sog-form .sog-meta {
  text-align: center; font-size: 10.5px;
}

body.sog-app-mobile.sog-am-app .site-main { padding-left: 14px; padding-right: 14px; }

body.sog-app-mobile.sog-am-app .cta,
body.sog-app-mobile.sog-am-app .cta-gold,
body.sog-app-mobile.sog-am-app .cta-dark,
body.sog-app-mobile.sog-am-app .cta-ghost,
body.sog-app-mobile.sog-am-app .cta-danger { border-radius: 999px; }
body.sog-app-mobile .sog-help-panel { border-radius: 16px; }

body.sog-app-mobile.sog-am-joueur .site-header { display: none; }
body.sog-app-mobile.sog-am-joueur .sog-am-tb { display: none; }

body.sog-app-mobile.sog-am-joueur .site-main {
  padding-top: 0;
  padding-bottom: calc(24px + env(safe-area-inset-bottom, 0px));
}

body.sog-app-mobile.sog-am-joueur.sog-am-joueur-qcm .site-main { background: var(--marine); }
body.sog-app-mobile.sog-am-joueur [data-module="qcm"] .sog-console {
  min-height: calc(100vh - 40px);
  min-height: calc(100dvh - 40px);
}
body.sog-app-mobile.sog-am-joueur [data-module="qcm"] .sog-console .bar {
  padding-top: calc(12px + env(safe-area-inset-top, 0px));
}

body.sog-app-mobile.sog-am-joueur [data-module="compo"] .cp-ctxbar {
  padding-top: calc(12px + env(safe-area-inset-top, 0px));
}

body.sog-app-mobile.sog-am-dic-joueur [data-module="dictee"] > .cq-hero,
body.sog-app-mobile.sog-am-dic-joueur [data-module="dictee"] > .tr-conseil,
body.sog-app-mobile.sog-am-dic-joueur [data-module="dictee"] > .tr-ctarow {
  display: none;
}

body.sog-app-mobile.sog-am-dic-joueur .site-main {
  padding-top: calc(10px + env(safe-area-inset-top, 0px));
}

body.sog-app-mobile.sog-am-dic-verdict [data-module="dictee"] > .cq-hero,
body.sog-app-mobile.sog-am-dic-verdict [data-module="dictee"] > .tr-conseil,
body.sog-app-mobile.sog-am-dic-verdict [data-module="dictee"] > .tr-ctarow,
body.sog-app-mobile.sog-am-dic-verdict [data-module="dictee"] > h2.sog-eye,
body.sog-app-mobile.sog-am-dic-verdict [data-module="dictee"] > div:has(.dz-mag),
body.sog-app-mobile.sog-am-dic-verdict [data-module="dictee"] > div:has(> .sog-textarea) {
  display: none;
}
body.sog-app-mobile.sog-am-dic-verdict .site-main {
  padding-top: calc(10px + env(safe-area-inset-top, 0px));
}

body.sog-app-mobile.sog-am-cp-verdict [data-module="compo"] .cp-ctxbar,
body.sog-app-mobile.sog-am-cp-verdict [data-module="compo"] .tr-chrono,
body.sog-app-mobile.sog-am-cp-verdict [data-module="compo"] .cp-guide,

body.sog-app-mobile.sog-am-cp-verdict [data-module="compo"] .cp-writemain > .cp-exam-note,
body.sog-app-mobile.sog-am-cp-verdict [data-module="compo"] .cp-writemain > .sog-textarea,
body.sog-app-mobile.sog-am-cp-verdict [data-module="compo"] .cp-writemain > .tr-ctarow {
  display: none;
}
body.sog-app-mobile.sog-am-cp-verdict .site-main {
  padding-top: calc(10px + env(safe-area-inset-top, 0px));
}

body.sog-app-mobile.sog-am-att [data-module="dictee"] .sog-attente,
body.sog-app-mobile.sog-am-att [data-module="compo"] .sog-attente {
  position: fixed;
  inset: 0;
  z-index: 120;
  margin: 0;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: calc(24px + env(safe-area-inset-top, 0px))
           calc(26px + env(safe-area-inset-right, 0px))
           calc(30px + env(safe-area-inset-bottom, 0px))
           calc(26px + env(safe-area-inset-left, 0px));
  overflow-y: auto;
}

body.sog-app-mobile.sog-am-att [data-module] .sog-attente .at-t { font-size: 26px; }
body.sog-app-mobile.sog-am-att [data-module] .sog-attente .at-sub { font-size: 13px; margin-top: 8px; }
body.sog-app-mobile.sog-am-att [data-module] .sog-attente .at-steps { gap: 14px; margin-top: 26px; }
body.sog-app-mobile.sog-am-att [data-module] .sog-attente .at-step { font-size: 13.5px; }
body.sog-app-mobile.sog-am-att [data-module] .sog-attente .at-bar { margin-top: 26px; }

body.sog-app-mobile [data-module="compo"] .ccx-duo { flex-direction: column; }
body.sog-app-mobile [data-module="compo"] .ccx-cartouche { flex-direction: column; gap: 14px; }
body.sog-app-mobile [data-module="compo"] .ccx-cart-sep { display: none; }
body.sog-app-mobile [data-module="compo"] .tr-cols.ccx-triple { flex-direction: column; }
body.sog-app-mobile [data-module="compo"] .cfo-champs .ccx-rendre { display: none; }

body.sog-app-mobile [data-module="sog2"] .ccx-cartouche { flex-direction: column; gap: 14px; }
body.sog-app-mobile [data-module="dictee"] .ccx-cartouche { flex-direction: column; gap: 14px; }

body.sog-app-mobile .cba { right: 10px; }
body.sog-app-mobile .cba-box { width: 100%; }
body.sog-app-mobile [data-module="sog2"] .ccx-cart-sep { display: none; }
body.sog-app-mobile [data-module="sog2"] .int-tbbar { flex-wrap: wrap; }
body.sog-app-mobile [data-module="sog2"] .int-tbbar .int-tb-qs { flex: 1 1 100%; }
body.sog-app-mobile [data-module="sog2"] .int-tbbar .int-tb-q { flex: 1 1 0; min-width: 0; padding: 0; }

body.sog-app-mobile [data-module="sog2"] .sgf-zone { width: 96%; }
