/* =========================================================================
   mks-screens.css — Styles d'écrans (Home, Identification, Saisie)
   S'appuie sur mks-core.css (tokens + primitives). Namespace .mks-.
   ========================================================================= */

/* ===================== HOME ============================================ */
.mks-hero{background:linear-gradient(180deg,#FFFFFF,#F0F4FA); padding:50px 20px 60px;
  position:relative; overflow:hidden; border-bottom:1px solid var(--mks-line);}
.mks-hero::before{content:''; position:absolute; top:-120px; right:-120px; width:420px; height:420px;
  background:radial-gradient(circle,rgba(139,199,0,.18),transparent 70%);}
.mks-hero__inner{max-width:1080px; margin:0 auto; position:relative;}
.mks-brand{text-align:center; margin-bottom:38px;}
.mks-brand .mks-logo-xl{font-family:'Space Grotesk'; font-weight:700; font-size:36px; color:var(--mks-ink); letter-spacing:-1px;}
.mks-brand .mks-logo-xl span.lime{color:var(--mks-lime);}
.mks-brand .mks-by{display:block; font-size:12px; letter-spacing:4px; text-transform:uppercase; color:var(--mks-muted2); margin-top:6px; font-weight:600;}
.mks-brand .mks-tag{font-size:15px; color:var(--mks-muted); margin-top:16px; max-width:520px; margin:16px auto 0; line-height:1.6;}

.mks-auth{max-width:420px; margin:0 auto; background:#fff; border:1px solid var(--mks-line);
  border-radius:20px; padding:30px; box-shadow:var(--mks-shadow-float);}
.mks-auth h2{font-family:'Space Grotesk'; font-size:18px; color:var(--mks-ink); text-align:center; margin-bottom:6px;}
.mks-auth .mks-auth__sub{font-size:13px; color:var(--mks-muted); text-align:center; margin-bottom:24px;}
.mks-auth-step{display:block;}
.mks-auth-step.mks-hidden{display:none;}
.mks-err{color:#DC2626; font-size:13px; text-align:center; margin-top:10px; min-height:16px;}

.mks-praticiens{display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:8px;}
.mks-prat{padding:16px; border:1px solid var(--mks-line); border-radius:12px; background:var(--mks-bg); cursor:pointer; text-align:center; transition:.2s;}
.mks-prat:hover{border-color:var(--mks-lime-d); background:#f4fbe8;}
.mks-prat .mks-av{width:42px; height:42px; border-radius:50%; background:linear-gradient(135deg,var(--mks-lime-d),var(--mks-blue-data));
  color:#fff; font-family:'Space Grotesk'; font-weight:700; font-size:17px; display:flex; align-items:center; justify-content:center; margin:0 auto 8px;}
.mks-prat .mks-pn{font-family:'Space Grotesk'; font-weight:600; font-size:14px; color:var(--mks-ink);}
.mks-back{font-size:12px; color:var(--mks-muted); cursor:pointer; text-align:center; margin-top:14px;}
.mks-back:hover{color:var(--mks-ink);}

.mks-preview{background:var(--mks-bg); padding:50px 20px 70px;}
.mks-preview__inner{max-width:1080px; margin:0 auto;}
.mks-pv-head{text-align:center; margin-bottom:34px;}
.mks-pv-head .mks-eyebrow{font-family:'Space Grotesk'; font-size:12px; letter-spacing:3px; text-transform:uppercase; color:var(--mks-lime);}
.mks-pv-head h3{font-family:'Space Grotesk'; font-size:26px; color:var(--mks-ink); margin-top:10px;}
.mks-pv-head p{font-size:14px; color:var(--mks-muted); margin-top:8px; max-width:560px; margin:8px auto 0;}
.mks-pv-grid{display:grid; grid-template-columns:1fr 1fr 1fr; gap:18px;}
@media(max-width:820px){ .mks-pv-grid{grid-template-columns:1fr;} }
.mks-pv-card{background:#fff; border-radius:18px; padding:22px; border:1px solid var(--mks-line); box-shadow:0 12px 32px rgba(14,42,71,.08);}
.mks-pv-card .mks-pv-title{font-family:'Space Grotesk'; font-size:11px; letter-spacing:1.5px; text-transform:uppercase; color:var(--mks-muted); margin-bottom:14px; display:flex; align-items:center; gap:8px;}
.mks-pv-card .mks-pv-title::before{content:''; width:12px; height:2px; background:var(--mks-lime);}
.mks-pv-legend{display:flex; gap:10px; flex-wrap:wrap; justify-content:center; margin-top:8px; font-size:10px; color:var(--mks-muted);}
.mks-pv-legend .li{display:flex; align-items:center; gap:4px;}
.mks-pv-legend .ln{width:12px; height:3px; border-radius:2px;}
.mks-pv-tz{display:flex; gap:7px; justify-content:center; font-size:9px; color:var(--mks-muted); margin-top:6px; flex-wrap:wrap;}
.mks-pv-tz i{width:8px; height:8px; border-radius:2px; display:inline-block; margin-right:3px;}
.mks-feat{display:flex; gap:24px; justify-content:center; margin-top:40px; flex-wrap:wrap;}
.mks-feat .f{text-align:center; max-width:200px;}
.mks-feat .f .ic{width:52px; height:52px; margin:0 auto 12px; border-radius:14px; background:#f4fbe8; border:1px solid #e0f0c4; display:flex; align-items:center; justify-content:center;}
.mks-feat .f .ft{font-family:'Space Grotesk'; font-weight:600; font-size:14px; color:var(--mks-ink); margin-bottom:4px;}
.mks-feat .f .fd{font-size:12px; color:var(--mks-muted); line-height:1.5;}
.mks-footer{text-align:center; padding:30px 20px; font-size:12px; color:var(--mks-muted2); border-top:1px solid var(--mks-line); background:#fff;}
.mks-footer span{font-family:'Space Grotesk'; color:var(--mks-ink2); font-weight:600;}

/* ===================== IDENTIFICATION ================================== */
.mks-topbar .who{font-size:12px; color:var(--mks-muted);}
.mks-topbar .who b{color:var(--mks-ink2); font-family:'Space Grotesk';}

.mks-step{display:none;}
.mks-step.show{display:block; animation:mks-fade .4s;}
@keyframes mks-fade{from{opacity:0; transform:translateY(10px);} to{opacity:1; transform:translateY(0);}}

.mks-code-banner{display:flex; align-items:center; gap:14px; padding:16px 20px; background:#f4fbe8; border:1px solid #e0f0c4; border-radius:12px; margin-bottom:20px;}
.mks-code-banner .ic{width:40px; height:40px; border-radius:10px; background:var(--mks-lime-d); color:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.mks-code-banner .t{font-size:13px; color:var(--mks-ink2);}
.mks-code-banner .t b{font-family:'Space Grotesk'; font-size:17px; color:var(--mks-ink); display:block; letter-spacing:1px;}

.mks-hist{display:flex; flex-direction:column; gap:10px; margin-bottom:20px;}
.mks-hist-item{display:flex; align-items:center; gap:14px; padding:14px 16px; border:1px solid var(--mks-line); border-radius:12px; background:var(--mks-bg);}
.mks-hist-item .artic{width:44px; height:44px; border-radius:11px; background:var(--mks-ink); color:#fff; font-family:'Space Grotesk'; font-weight:700; font-size:12px; display:flex; align-items:center; justify-content:center; text-align:center; line-height:1.1; flex-shrink:0;}
.mks-hist-item .info{flex:1;}
.mks-hist-item .info .ttl{font-family:'Space Grotesk'; font-weight:600; font-size:14px; color:var(--mks-ink);}
.mks-hist-item .info .meta{font-size:12px; color:var(--mks-muted); margin-top:2px;}
.mks-badge{font-size:11px; font-weight:700; padding:4px 10px; border-radius:12px;}
.mks-badge.encours{background:#FEF3C7; color:#B45309;}
.mks-badge.termine{background:#DCFCE7; color:#15803D;}

.mks-choice-title{font-family:'Space Grotesk'; font-size:14px; font-weight:600; color:var(--mks-ink); margin:20px 0 12px;}
.mks-artic-grid{display:grid; grid-template-columns:1fr 1fr 1fr; gap:12px;}
@media(max-width:560px){ .mks-artic-grid{grid-template-columns:1fr;} }
.mks-artic-card{padding:20px; border:1px solid var(--mks-line); border-radius:14px; text-align:center; cursor:pointer; transition:.2s; background:#fff; position:relative;}
.mks-artic-card.active:hover{border-color:var(--mks-lime-d); background:#fafdf5;}
.mks-artic-card.soon{opacity:.5; cursor:not-allowed;}
.mks-artic-card .ai{font-size:30px; margin-bottom:8px;}
.mks-artic-card .an{font-family:'Space Grotesk'; font-weight:600; font-size:15px; color:var(--mks-ink);}
.mks-artic-card .as{font-size:11px; color:var(--mks-muted); margin-top:3px;}
.mks-artic-card .soon-tag{position:absolute; top:8px; right:8px; font-size:9px; font-weight:700; background:var(--mks-line); color:var(--mks-muted); padding:2px 7px; border-radius:8px; text-transform:uppercase;}

.mks-consent{margin-top:18px; padding:18px; background:var(--mks-bg); border:1px solid var(--mks-line); border-radius:12px;}
.mks-consent .ct{font-family:'Space Grotesk'; font-weight:600; font-size:13px; color:var(--mks-ink); margin-bottom:12px;}
.mks-consent label{display:flex; gap:10px; align-items:flex-start; font-size:13px; color:var(--mks-ink2); margin-bottom:11px; cursor:pointer; line-height:1.45;}
.mks-consent label:last-child{margin-bottom:0;}
.mks-consent input{width:18px; height:18px; margin-top:1px; flex-shrink:0; accent-color:var(--mks-lime-d);}
.mks-consent .req{color:var(--mks-red); font-weight:600;}

.mks-actions{display:flex; gap:10px; justify-content:flex-end; margin-top:20px; flex-wrap:wrap;}

/* ---- Sélecteur Tegner (bouton + modal descriptif) -------------------- */
.mks-teg-btn{display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:13px 16px; background:var(--mks-bg); border:1px solid var(--mks-line2);
  border-radius:var(--mks-r-input); cursor:pointer; transition:.2s; width:100%; text-align:left;}
.mks-teg-btn:hover{border-color:var(--mks-lime-d);}
.mks-teg-btn .tb-l{font-size:13px; color:var(--mks-muted); line-height:1.3;}
.mks-teg-btn .tb-l b{font-family:'Space Grotesk'; font-size:18px; color:var(--mks-ink); display:block;}
.mks-teg-btn .tb-go{font-size:12px; color:var(--mks-lime-d); font-weight:600; white-space:nowrap;}
.mks-teg-card{display:flex; gap:14px; align-items:flex-start; padding:14px 16px;
  border:1px solid var(--mks-line); border-radius:11px; cursor:pointer; transition:.15s; margin-bottom:8px;}
.mks-teg-card:hover{border-color:var(--mks-lime-d); background:#fafdf5;}
.mks-teg-card.sel{border-color:var(--mks-lime-d); background:#f4fbe8;}
.mks-teg-card .lv{font-family:'Space Grotesk'; font-weight:700; font-size:24px; color:var(--mks-ink); width:36px; flex-shrink:0; text-align:center;}
.mks-teg-card .desc{font-size:14px; color:var(--mks-ink2); line-height:1.45; padding-top:2px;}

/* =====================================================================
   SAISIE BILAN
   ===================================================================== */
.mks-nav-chips{max-width:780px; margin:0 auto; padding:10px 20px; display:flex; gap:6px; overflow-x:auto;}
.mks-nav-chips a{font-size:11px; font-weight:600; white-space:nowrap; padding:6px 12px; border-radius:16px;
  background:var(--mks-bg); color:var(--mks-muted); text-decoration:none; border:1px solid var(--mks-line); transition:.2s;}
.mks-nav-chips a:hover{border-color:var(--mks-lime-d); color:var(--mks-ink);}
.mks-topbar .mks-logo small{font-weight:400; color:var(--mks-muted); font-size:13px;}

.mks-block{background:#fff; border-radius:16px; box-shadow:var(--mks-shadow-card); margin-bottom:20px; overflow:hidden; scroll-margin-top:120px;}
.mks-block__head{display:flex; align-items:center; gap:12px; padding:18px 22px; background:linear-gradient(180deg,#fff,#fafbfd); border-bottom:1px solid var(--mks-line);}
.mks-block__head .nb{width:30px; height:30px; border-radius:9px; background:var(--mks-ink); color:#fff; font-family:'Space Grotesk'; font-weight:700; font-size:14px; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.mks-block__head h2{font-family:'Space Grotesk'; font-size:17px; color:var(--mks-ink); flex:1;}
.mks-block__head .live{font-family:'Space Grotesk'; font-size:13px; font-weight:700; padding:4px 12px; border-radius:14px; background:var(--mks-bg); color:var(--mks-muted);}
.mks-block__head .live.g{background:#DCFCE7; color:#15803D;} .mks-block__head .live.y{background:#FEF9C3; color:#A16207;}
.mks-block__head .live.o{background:#FEF3C7; color:#B45309;} .mks-block__head .live.r{background:#FEE2E2; color:#B91C1C;}
.mks-block__body{padding:20px 22px;}
.mks-block__intro{font-size:12px; color:var(--mks-muted); margin-bottom:12px;}

/* groupe bilatéral (sain/lésé + résultat) */
.mks-bilat{background:var(--mks-bg); border:1px solid var(--mks-line); border-radius:12px; padding:14px; margin-bottom:12px;}
.mks-bilat__title{font-family:'Space Grotesk'; font-weight:600; font-size:14px; color:var(--mks-ink); margin-bottom:8px; display:flex; justify-content:space-between; align-items:baseline;}
.mks-bilat__title .funit{font-size:11px; color:var(--mks-muted2); font-weight:400;}
.mks-bilat__row{display:grid; grid-template-columns:1fr 1fr 84px; gap:10px; align-items:end;}
.mks-bilat__row.tri{grid-template-columns:1fr 1fr 1fr;}
@media(max-width:560px){ .mks-bilat__row{grid-template-columns:1fr 1fr;} }
.mks-mini label{font-size:10px; color:var(--mks-muted); text-transform:uppercase; letter-spacing:.5px; display:block; margin-bottom:3px;}
.mks-mini input,.mks-mini select{width:100%; padding:9px 10px; border:1px solid var(--mks-line2); border-radius:8px; font-family:'Space Grotesk'; font-size:15px; text-align:center; background:#fff;}
.mks-mini input:focus,.mks-mini select:focus{outline:none; border-color:var(--mks-lime-d); box-shadow:0 0 0 3px rgba(139,199,0,.12);}
.mks-rescell{font-family:'Space Grotesk'; font-size:13px; font-weight:700; text-align:center; padding-bottom:9px; line-height:1.2;}

/* wellness */
.mks-well-legend{background:var(--mks-bg); border:1px solid var(--mks-line); border-radius:11px; padding:12px 14px; margin-bottom:16px;}
.mks-well-legend .wl-t{font-size:11px; text-transform:uppercase; letter-spacing:1px; color:var(--mks-muted); margin-bottom:8px;}
.mks-well-legend .wl-scale{display:flex; gap:4px; justify-content:space-between;}
.mks-well-legend .wl-i{flex:1; text-align:center;}
.mks-well-legend .emo{font-size:20px; display:block;}
.mks-well-legend .n{font-family:'Space Grotesk'; font-weight:700; font-size:12px; color:var(--mks-ink2);}
.mks-well-legend .w{font-size:9px; color:var(--mks-muted2); line-height:1.1; display:block;}
.mks-well-line{display:grid; grid-template-columns:110px 1fr; gap:12px; align-items:center; padding:10px 0; border-bottom:1px solid var(--mks-line);}
.mks-well-line:last-child{border-bottom:none;}
.mks-well-line .wn{font-size:13px; font-weight:600; color:var(--mks-ink2);}
.mks-well-line .wbtns{display:flex; gap:5px;}
.mks-well-line .wbtns button{flex:1; height:36px; border:1px solid var(--mks-line2); background:#fff; border-radius:8px; font-family:'Space Grotesk'; font-weight:600; font-size:14px; color:var(--mks-ink2); cursor:pointer; transition:.15s;}
.mks-well-line .wbtns button:hover{border-color:var(--mks-lime-d);}
.mks-well-line .wbtns button.sel{background:var(--mks-ink); color:#fff; border-color:var(--mks-ink);}

/* EVA */
.mks-eva-lbl{font-size:13px; font-weight:600; color:var(--mks-ink2); display:block; margin-bottom:6px;}
.mks-eva{display:flex; gap:4px; flex-wrap:wrap;}
.mks-eva .opt{width:42px; border:1px solid var(--mks-line2); background:#fff; border-radius:8px; padding:6px 2px; text-align:center; cursor:pointer; transition:.15s;}
.mks-eva .opt:hover{border-color:var(--mks-lime-d);}
.mks-eva .opt.sel{color:#fff; border-color:transparent;}
.mks-eva .opt .n{font-family:'Space Grotesk'; font-weight:700; font-size:14px;}
.mks-eva-words{font-size:11px; color:var(--mks-muted); margin-top:6px; min-height:16px; font-style:italic;}
.mks-valise{margin-top:12px; padding:14px; background:#FFF7ED; border:1px solid #FED7AA; border-radius:10px; display:none;}
.mks-valise.show{display:block;}
.mks-valise .vt{font-size:12px; font-weight:600; color:#9A3412; margin-bottom:8px;}
.mks-checks{display:flex; gap:10px; flex-wrap:wrap;}
.mks-checks label{display:flex; align-items:center; gap:7px; padding:9px 14px; background:#fff; border:1px solid var(--mks-line); border-radius:9px; font-size:13px; cursor:pointer;}
.mks-checks label small{color:var(--mks-muted2);}
.mks-checks input{width:auto;}

/* questionnaires */
.mks-qcard{background:var(--mks-bg); border:1px solid var(--mks-line); border-radius:11px; padding:14px 16px; margin-bottom:10px;}
.mks-qcard .qtop{display:flex; align-items:center; justify-content:space-between; gap:10px;}
.mks-qcard .qn{font-weight:600; font-size:14px; color:var(--mks-ink2);}
.mks-qcard .qn small{display:block; font-weight:400; color:var(--mks-muted2); font-size:11px;}
.mks-qcard .qactions{display:flex; gap:8px; align-items:center;}
.mks-qcard .qscore{width:74px; padding:8px; border:1px solid var(--mks-line2); border-radius:8px; text-align:center; font-family:'Space Grotesk'; font-weight:700; font-size:15px;}
.mks-qcard .qpts{font-family:'Space Grotesk'; font-size:12px; font-weight:700; min-width:44px; text-align:center;}

/* add/remove optionnel */
.mks-add-opt{display:inline-flex; align-items:center; gap:7px; font-size:13px; font-weight:600; color:var(--mks-lime-d); cursor:pointer; padding:10px 14px; border:1px dashed var(--mks-lime-d); border-radius:10px; background:#fafdf5;}
.mks-opt-block{display:none;} .mks-opt-block.show{display:block;}
.mks-rm-opt{font-size:11px; color:var(--mks-red); cursor:pointer; font-weight:600;}

/* escalier sauts */
.mks-stair{border:1px solid var(--mks-line); border-radius:12px; margin-bottom:12px; overflow:hidden;}
.mks-stair__head{display:flex; align-items:center; gap:10px; padding:12px 16px; background:var(--mks-bg);}
.mks-stair__head .sn{width:24px; height:24px; border-radius:7px; background:var(--mks-ink); color:#fff; font-family:'Space Grotesk'; font-weight:700; font-size:12px; display:flex; align-items:center; justify-content:center;}
.mks-stair__head .st{font-family:'Space Grotesk'; font-weight:600; font-size:14px; flex:1;}
.mks-stair__body{padding:14px 16px;}
.mks-stair__gate{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 16px; border-top:1px solid var(--mks-line); flex-wrap:wrap;}
.mks-add-next{display:inline-flex; align-items:center; gap:7px; font-size:13px; font-weight:600; color:#fff; background:var(--mks-lime-d); border:none; border-radius:9px; padding:9px 16px; cursor:pointer;}
.mks-stop-link{font-size:12px; color:var(--mks-red); cursor:pointer; font-weight:600; background:none; border:none;}
.mks-stop-why{display:none; margin:0 16px 14px; padding:12px; background:#FEF2F2; border:1px solid #FECACA; border-radius:9px;}
.mks-stop-why.show{display:block;}
.mks-stop-why .swt{font-size:12px; font-weight:600; color:#B91C1C; margin-bottom:8px;}
.mks-stop-why textarea{width:100%; min-height:46px; border:1px solid #FECACA; border-radius:8px; padding:9px; font-size:12px; font-family:'Inter'; margin-top:8px; resize:vertical;}
.mks-stair.locked{opacity:.5;}
.mks-stair.locked .mks-stair__body{font-size:12px; color:var(--mks-muted);}

/* synthèse auto */
.mks-auto-comment{background:#F0FDF4; border:1px solid #BBF7D0; border-radius:12px; padding:16px 18px;}
.mks-auto-comment .ac-head{display:flex; align-items:center; gap:8px; font-family:'Space Grotesk'; font-weight:600; font-size:13px; color:#15803D; margin-bottom:10px;}
.mks-auto-comment ul{list-style:none; margin-bottom:12px;}
.mks-auto-comment li{font-size:13px; color:#166534; padding:4px 0 4px 18px; position:relative;}
.mks-auto-comment li::before{content:'•'; position:absolute; left:4px; color:var(--mks-green);}
.mks-auto-comment textarea{width:100%; min-height:80px; padding:11px 13px; border:1px solid #BBF7D0; border-radius:9px; font-family:'Inter'; font-size:13px; resize:vertical; background:#fff;}
.mks-auto-comment .ac-note{font-size:11px; color:#15803D; margin-top:6px; font-style:italic;}

/* barre d'action fixe */
.mks-actionbar{position:fixed; bottom:0; left:0; right:0; background:#fff; border-top:1px solid var(--mks-line); box-shadow:0 -4px 20px rgba(14,42,71,.08); z-index:100;}
.mks-actionbar .inner{max-width:780px; margin:0 auto; padding:14px 20px; display:flex; gap:12px; align-items:center;}
.mks-actionbar .summary{flex:1; font-size:13px; color:var(--mks-muted);}
.mks-actionbar .summary b{color:var(--mks-ink); font-family:'Space Grotesk';}
body.mks-saisie{padding-bottom:90px; background:#E8ECF2;}

/* =====================================================================
   QUESTIONNAIRES (modale)
   ===================================================================== */
.mks-q-scale{font-size:12px; color:var(--mks-ink2); background:var(--mks-bg); border-radius:8px; padding:9px 12px; margin-bottom:6px; line-height:1.5;}
.mks-q-item{padding:15px 4px; border-bottom:1px solid var(--mks-line); display:flex; flex-direction:column; gap:10px;}
.mks-q-item:last-child{border-bottom:none;}
.mks-q-item .q-txt{font-size:14px; color:var(--mks-ink2); line-height:1.4;}
.mks-q-item .q-txt .num{font-family:'Space Grotesk'; font-weight:700; color:var(--mks-lime-d); margin-right:8px;}
.mks-q-opts{display:flex; gap:6px; flex-wrap:wrap;}
.mks-q-opts.col{flex-direction:column; align-items:stretch;}
.mks-q-opts button{padding:8px 14px; border:1px solid var(--mks-line2); background:#fff; border-radius:9px; font-family:'Inter'; font-size:13px; color:var(--mks-ink2); cursor:pointer; transition:.15s; flex:1; min-width:60px; text-align:center;}
.mks-q-opts.col button{flex:none; text-align:left;}
.mks-q-opts button:hover{border-color:var(--mks-lime-d);}
.mks-q-opts button.sel{background:var(--mks-ink); color:#fff; border-color:var(--mks-ink);}
.mks-q-opts button.na{flex:0 0 auto; min-width:44px; color:var(--mks-muted2);}
.mks-q-opts button.na.sel{background:var(--mks-muted); border-color:var(--mks-muted); color:#fff;}
.mks-q-slider{display:flex; align-items:center; gap:14px;}
.mks-q-slider input[type=range]{flex:1; accent-color:var(--mks-lime-d);}
.mks-q-slider .sv{font-family:'Space Grotesk'; font-weight:700; font-size:18px; color:var(--mks-ink); width:30px; text-align:center;}
.mks-q-ends{display:flex; justify-content:space-between; font-size:10px; color:var(--mks-muted2); margin-top:2px;}
.mks-q-foot{position:sticky; bottom:0; background:#fff; border-top:1px solid var(--mks-line); padding:16px 0 4px; display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-top:8px;}
.mks-q-result{display:flex; align-items:center; gap:14px;}
.mks-q-result .score{font-family:'Space Grotesk'; font-weight:700; font-size:32px; color:var(--mks-ink); line-height:1;}
.mks-q-result .score small{font-size:16px; color:var(--mks-muted2);}
.mks-q-badge{display:inline-block; padding:3px 10px; border-radius:12px; font-size:12px; font-weight:700;}
.mks-q-badge.g{background:#DCFCE7; color:#15803D;} .mks-q-badge.o{background:#FEF3C7; color:#B45309;}
.mks-q-badge.r{background:#FEE2E2; color:#B91C1C;} .mks-q-badge.x{background:var(--mks-bg); color:var(--mks-muted);}
.mks-q-verify{padding:11px 14px; background:#FFF7ED; border:1px solid #FED7AA; border-radius:10px; font-size:11px; color:#9A3412; line-height:1.5; margin-bottom:12px;}

/* =====================================================================
   UX — tap targets tablette (spec §7.3 : ≥48px), navigation, progression
   ===================================================================== */
.mks-eva .opt{min-width:46px; min-height:48px; display:flex; flex-direction:column; align-items:center; justify-content:center;}
.mks-well-line .wbtns button{height:48px;}
.mks-checks label{padding:12px 14px; min-height:48px; align-items:center;}
.mks-mini input,.mks-mini select{padding:12px 10px;}
.mks-q-opts button{min-height:48px;}

/* lien retour (topbar) */
.mks-back-link{font-size:13px; font-weight:600; color:var(--mks-muted); text-decoration:none;
  padding:7px 11px; border:1px solid var(--mks-line); border-radius:8px; background:var(--mks-bg); white-space:nowrap;}
.mks-back-link:hover{color:var(--mks-ink); border-color:var(--mks-lime-d);}

/* bouton thème (mode sombre optionnel) */
.mks-theme-btn{position:fixed; bottom:104px; right:14px; z-index:150; width:44px; height:44px;
  border-radius:50%; border:1px solid var(--mks-line2); background:var(--mks-card); cursor:pointer;
  font-size:18px; box-shadow:var(--mks-shadow-card);}
.mks-theme-btn:hover{border-color:var(--mks-lime-d);}

/* nav-chips : états de progression */
.mks-nav-chips a.part{border-color:var(--mks-lime-d); color:var(--mks-ink2);}
.mks-nav-chips a.done{background:#DCFCE7; color:#15803D; border-color:#BBF7D0;}
.mks-nav-chips a.done::after{content:' ✓';}

/* hint valeur du bilan précédent */
.mks-prev{color:var(--mks-blue-data); font-weight:700; font-size:9px; text-transform:none; letter-spacing:0; margin-left:4px;}

/* barre de reprise de brouillon */
.mks-draftbar{max-width:780px; margin:14px auto 0; padding:12px 16px; background:#FFFBEB;
  border:1px solid #FDE68A; border-radius:12px; display:flex; gap:10px; align-items:center;
  font-size:13px; color:#92400E; flex-wrap:wrap;}
.mks-draftbar .mks-spacer{flex:1;}

/* questionnaires — mode patient (tablette tendue au patient) */
.mks-modal.patient .mks-q-result{display:none;}
.mks-modal.patient [data-report]{display:none;}
.mks-modal.patient .mks-q-verify{display:none;}
.mks-modal.patient .mks-qpm-btn{display:none;}
.mks-modal.patient .mks-modal__x{display:none;}
.mks-modal.patient .mks-modal__inner{max-width:780px;}
.mks-modal.patient .mks-q-item .q-txt{font-size:17px;}
.mks-modal.patient .mks-q-opts button{padding:14px; font-size:15px; min-height:54px;}
.mks-modal.patient .mks-qpm-done{display:inline-flex !important;}
