
:root{
  --forest:#29483b;
  --sage:#78977f;
  --sage2:#a9bea9;
  --leaf:#dfeadf;
  --cream:#f8f5ec;
  --paper:#fffdf8;
  --sand:#e8ddc8;
  --gold:#b89558;
  --ink:#26332d;
  --muted:#68766f;
  --line:#d9dfd7;
  --danger:#9a5b50;
  --shadow:0 12px 35px rgba(39,67,53,.10);
  --radius:18px;
}
*{box-sizing:border-box}
body{
  margin:0;background:linear-gradient(135deg,#f4f7f1 0%,#faf7ef 55%,#edf4ed 100%);
  color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5
}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.app{min-height:100vh}
.header{
  background:linear-gradient(135deg,var(--forest),#3f6654);
  color:white;padding:22px 28px;position:sticky;top:0;z-index:20;
  box-shadow:0 5px 22px rgba(25,48,37,.18)
}
.header-inner{max-width:1400px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:14px}
.logo{
  width:52px;height:52px;border-radius:50%;background:#f2ead9;color:var(--forest);
  display:grid;place-items:center;font-size:27px;box-shadow:inset 0 0 0 5px rgba(255,255,255,.18)
}
.brand h1{font-family:Georgia,serif;font-size:25px;margin:0;font-weight:500;letter-spacing:.2px}
.brand p{margin:2px 0 0;color:#dce9df;font-size:13px}
.nav{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.nav button{
  border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.10);color:white;
  padding:9px 14px;border-radius:999px
}
.nav button.active,.nav button:hover{background:#f2ead9;color:var(--forest)}
.main{max-width:1400px;margin:0 auto;padding:28px}
.page{display:none}.page.active{display:block}
.hero{
  padding:30px;border-radius:24px;background:
  radial-gradient(circle at 90% 15%,rgba(120,151,127,.22),transparent 28%),
  linear-gradient(135deg,#fffdf8,#eef5ed);
  border:1px solid var(--line);box-shadow:var(--shadow);margin-bottom:22px
}
.hero h2{font-family:Georgia,serif;font-size:34px;margin:0 0 8px;color:var(--forest)}
.hero p{max-width:800px;color:var(--muted);margin:0}
.grid{display:grid;grid-template-columns:380px 1fr;gap:22px}
.card{background:rgba(255,253,248,.92);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}
.card h3{font-family:Georgia,serif;color:var(--forest);margin:0 0 15px;font-size:21px}
.field{margin-bottom:14px}.field label{display:block;font-weight:700;font-size:13px;margin-bottom:6px;color:#405249}
input,textarea,select{
  width:100%;border:1px solid #cfd8d0;background:white;border-radius:12px;padding:11px 12px;
  outline:none;color:var(--ink)
}
input:focus,textarea:focus,select:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(120,151,127,.13)}
textarea{min-height:95px;resize:vertical}
.btn{
  border:0;border-radius:12px;padding:11px 16px;font-weight:700;
  background:var(--forest);color:white;transition:.15s
}
.btn:hover{transform:translateY(-1px);filter:brightness(1.05)}
.btn.secondary{background:#e8efe8;color:var(--forest);border:1px solid #ccd9cc}
.btn.gold{background:var(--gold);color:white}
.btn.danger{background:#f3e5e2;color:#7e493f;border:1px solid #e2c8c3}
.actions{display:flex;gap:9px;flex-wrap:wrap}
.search{position:relative;margin-bottom:12px}
.search input{padding-left:40px}
.search span{position:absolute;left:13px;top:9px;font-size:19px}
.category-tabs{margin-bottom:12px}
.category-tabs select{
  width:100%;border:1px solid var(--line);background:#f4f7f1;color:var(--forest);
  border-radius:12px;padding:11px 40px 11px 13px;font-weight:700;
  appearance:auto
}
.symptom-list{max-height:650px;overflow:auto;padding-right:4px}
.symptom{
  width:100%;text-align:left;border:1px solid var(--line);background:white;border-radius:13px;
  padding:12px;margin-bottom:8px;color:var(--ink)
}
.symptom:hover{border-color:var(--sage2);background:#fbfdf9}
.symptom.selected{border-color:var(--sage);background:#edf5ed;box-shadow:inset 4px 0 var(--sage)}
.symptom .name{font-weight:700}.symptom .cat{font-size:11px;color:var(--muted);margin-top:3px}
.advice-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:14px}
.advice-head h3{margin-bottom:4px}.advice-head p{margin:0;color:var(--muted);font-size:13px}
.advice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.advice{
  border:1px solid var(--line);border-radius:15px;background:white;padding:16px;
  position:relative
}
.advice.selected{border:2px solid var(--sage);background:#f7fbf6}
.advice-top{display:flex;gap:10px;align-items:flex-start}
.advice input[type=checkbox]{width:19px;height:19px;margin-top:3px;accent-color:var(--forest)}
.advice h4{margin:0;color:var(--forest);font-size:16px}
.advice .type{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:.7px;
  color:#657a6d;background:#eaf0e9;border-radius:999px;padding:4px 7px;margin-top:6px}
.details{margin-top:12px;border-top:1px solid #e4e9e4;padding-top:11px}
.detail{margin:7px 0;font-size:13px}.detail b{color:var(--forest)}
.empty{padding:45px 20px;text-align:center;color:var(--muted);border:1px dashed #cbd5cc;border-radius:15px;background:#fbfcf9}
.counter{font-size:12px;color:var(--muted);margin-top:8px}
.selected-panel{margin-top:22px}
.selection-list{display:grid;gap:12px}
.selection{
  background:white;border:1px solid var(--line);border-radius:14px;padding:15px;
  display:grid;grid-template-columns:1fr auto;gap:12px
}
.selection h4{margin:0;color:var(--forest)}.selection p{margin:4px 0 0;font-size:13px;color:var(--muted)}
.tag{display:inline-block;background:#edf3ec;border-radius:999px;padding:4px 8px;font-size:11px;margin:3px 3px 0 0}
.remove{border:0;background:#f5e8e5;color:#8a4c42;border-radius:10px;padding:7px 10px;height:max-content}
.note{
  background:#f2eee2;border-left:4px solid var(--gold);padding:13px 15px;border-radius:9px;
  font-size:12px;color:#5e584a;margin-top:16px
}

/* Anamnèse naturopathique */
.anamnese-btn{margin-left:8px}
.anamnese-modal-window{max-width:1100px;max-height:92vh;overflow:auto}
.anamnese-intro{margin:0 0 14px;color:#65746a;line-height:1.5}
.anamnese-section{border:1px solid #d9e3dc;border-radius:13px;padding:15px;margin:12px 0;background:#fbfdfb}
.anamnese-section h3{margin:0 0 12px;color:#29483b;font-size:17px}
.anamnese-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.anamnese-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.anamnese-field{display:flex;flex-direction:column;gap:6px}
.anamnese-field.full{grid-column:1/-1}
.anamnese-field label{font-weight:800;color:#40574b;font-size:13px}
.anamnese-field input,.anamnese-field select,.anamnese-field textarea{width:100%;box-sizing:border-box}
.anamnese-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.anamnese-check{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border:1px solid #d9e3dc;border-radius:9px;background:#fff;font-size:13px;color:#40574b}
.anamnese-check input{margin-top:2px;accent-color:#29483b}
.anamnese-actions{display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:rgba(255,255,255,.96);padding-top:12px}
.sheet-anamnese{margin:20px 0;padding:16px;border:1px solid #d9e3dc;border-radius:13px;background:#f7faf6}
.sheet-anamnese h3{margin:0 0 10px;color:#29483b}
.sheet-anamnese-block{margin:12px 0;padding-top:10px;border-top:1px solid #dfe7e0}
.sheet-anamnese-block:first-of-type{border-top:0;padding-top:0}
.sheet-anamnese-block h4{margin:0 0 5px;color:#29483b}
.sheet-anamnese-block p{margin:5px 0;line-height:1.55}
@media(max-width:700px){.anamnese-grid,.anamnese-grid.three,.anamnese-checks{grid-template-columns:1fr}.anamnese-modal-window{max-height:95vh}.anamnese-actions{flex-direction:column}.anamnese-actions .btn{width:100%}}

/* consultation sheet */
.sheet-wrap{max-width:950px;margin:auto}
.sheet{
  background:white;border:1px solid #d8ddd8;box-shadow:0 12px 40px rgba(30,50,40,.12);
  padding:42px 48px;border-radius:4px
}
.sheet-header{margin-bottom:20px}
.sheet-banner{background:#29483b;color:white;min-height:105px;max-width:760px;margin:0 auto;padding:12px 22px;display:flex;align-items:center;justify-content:center;gap:16px;border-radius:4px;overflow:hidden}
.sheet-banner-logo{max-width:180px;max-height:72px;width:auto;height:auto;border-radius:0;object-fit:contain;flex:0 0 auto;display:none}
.sheet-banner h1{font-family:Georgia,serif;font-size:30px;line-height:1.08;margin:0;color:white;font-weight:700;text-align:center}
.sheet-banner p{font-size:15px;line-height:1.3;margin:6px 0 0;color:white;text-align:center}
.sheet-date{text-align:right;font-size:12px;color:var(--muted);margin-top:8px}
.patient-box{margin:20px 0;background:#f3f7f1;border:1px solid #d9e3d9;border-radius:13px;padding:15px}
.patient-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.patient-grid div{font-size:12px}.patient-grid b{display:block;color:var(--forest);font-size:10px;text-transform:uppercase;letter-spacing:.6px}
.patient-grid span{display:block;color:#26332d;font-weight:600;margin-top:2px;min-height:18px}

.body-metrics{margin-top:18px;background:#fffdf8;border:1px solid #d9e3d9;border-radius:15px;padding:16px}
.body-metrics-title{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.body-metrics-title strong{font-family:Georgia,serif;color:var(--forest);font-size:19px}
.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.metrics-grid .field{margin-bottom:0}
.metrics-grid .field.full{grid-column:1/-1}
.metrics-grid .field label{font-size:12px}
.metrics-grid input,.metrics-grid select{padding:11px 12px}
.health-summary{margin-top:14px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.health-result{border:1px solid #dce5dc;background:#f6faf5;border-radius:12px;padding:12px}
.bmi-status{display:inline-block;margin-top:6px;padding:4px 10px;border-radius:999px;font-size:13px;font-weight:700;line-height:1.2}.bmi-status.normal{background:#dff2df;color:#236b35}.bmi-status.under{background:#e4eef8;color:#2b5d87}.bmi-status.over{background:#fff0cf;color:#8a5a00}.bmi-status.obesity{background:#fde0dc;color:#a52a1d}.bmi-status.warning{background:#f4d9d9;color:#8e1f1f}
.health-result strong{display:block;color:var(--forest);font-size:12px;text-transform:uppercase;letter-spacing:.5px}
.health-result .value{font-size:20px;font-weight:700;color:var(--forest);margin-top:2px}
.health-result .sub{font-size:14px;color:var(--muted);margin-top:5px;line-height:1.35;font-weight:500}
.health-note{margin-top:10px;font-size:11px;color:#68766f;line-height:1.45}
.nutrition-reperes{
  display:block;
  font-size:13px;
  font-weight:800;
  line-height:1.5;
  color:#3e5148;
}
@media print{
  .sheet-irido-points{display:none !important;}

  .nutrition-reperes{
    font-size:11px;
    font-weight:800;
  }
}

.bmi-result-card{overflow:hidden}
.bmi-scale-wrap{margin-top:12px}
.bmi-scale{position:relative;height:16px;display:flex;border-radius:999px;overflow:visible;box-shadow:inset 0 0 0 1px rgba(40,70,55,.12)}
.bmi-segment{height:100%}
.under-seg{background:#8bb7d8;flex:3.5}
.normal-seg{background:#83c88c;flex:6.4}
.over-seg{background:#f2c46b;flex:5}
.obesity1-seg{background:#ee9b67;flex:5}
.obesity2-seg{background:#e97763;flex:5}
.obesity3-seg{background:#d9534f;flex:5}
.bmi-marker{position:absolute;top:50%;left:50%;width:4px;height:28px;transform:translate(-50%,-50%);background:#173d2f;border-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.28);z-index:2}
.bmi-marker span{position:absolute;bottom:31px;left:50%;transform:translateX(-50%);white-space:nowrap;background:#173d2f;color:#fff;border-radius:7px;padding:3px 6px;font-size:11px;font-weight:800}
.bmi-scale-labels{display:grid;grid-template-columns:3.5fr 6.4fr 5fr 5fr 5fr 5fr;gap:3px;margin-top:6px;font-size:9px;line-height:1.15;color:#68766f;text-align:center}
.bmi-scale-labels b{font-size:9px;color:#3e5148}
.bmi-proximity{margin-top:8px;font-size:12px;font-weight:700;color:#3e5148;line-height:1.35}
.sheet-bmi-item small{display:block;margin-top:4px;font-size:10px;color:#68766f}
.sheet-bmi-scale{margin-top:12px;padding-top:8px;border-top:1px solid #e2e8e2}
.sheet-bmi-scale-title{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:var(--forest);margin-bottom:5px}
.sheet-bmi-bar{position:relative;height:11px;display:flex;border-radius:999px;overflow:visible}
.sheet-bmi-seg{height:100%}.sheet-bmi-seg.under-seg{flex:3.5}.sheet-bmi-seg.normal-seg{flex:6.4}.sheet-bmi-seg.over-seg{flex:5}.sheet-bmi-seg.obesity1-seg{flex:5}.sheet-bmi-seg.obesity2-seg{flex:5}.sheet-bmi-seg.obesity3-seg{flex:5}
.sheet-bmi-marker{position:absolute;top:50%;width:3px;height:19px;transform:translate(-50%,-50%);background:#173d2f;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.sheet-bmi-labels{display:grid;grid-template-columns:3.5fr 6.4fr 5fr 5fr 5fr 5fr;gap:2px;margin-top:4px;font-size:7px;line-height:1.1;color:#68766f;text-align:center}
.sheet-bmi-labels b{font-size:7px;color:#3e5148}
.sheet-bmi-proximity{margin-top:5px;font-size:9px;font-weight:700;color:#3e5148}
@media print{
  .sheet-bmi-scale{break-inside:avoid}
}

.sheet-health{margin:20px 0;background:#f6faf5;border:1px solid #d9e3d9;border-radius:13px;padding:15px;break-inside:avoid}
.sheet-health h3{margin:0 0 10px;padding-bottom:6px;border-bottom:1px solid #dfe6df}
.sheet-health-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.sheet-health-item{background:white;border:1px solid #e0e6e0;border-radius:10px;padding:9px}
.sheet-health-item b{display:block;font-size:10px;color:var(--forest);text-transform:uppercase;letter-spacing:.5px}
.sheet-health-item span{display:block;font-weight:700;font-size:13px;margin-top:2px}
.sheet-health-note{margin:10px 0 0;font-size:10px;color:#6c776f;line-height:1.4}
@media(max-width:700px){.metrics-grid,.health-summary{grid-template-columns:1fr}.sheet-health-grid{grid-template-columns:repeat(2,1fr)}}
@media print{.sheet-health{break-inside:avoid}.body-metrics{display:none!important}}
.sheet h2{font-family:Georgia,serif;color:var(--forest);font-weight:500;font-size:25px;margin:25px 0 12px}
.sheet h3{color:var(--forest);font-size:18px;margin:25px 0 9px;padding-bottom:6px;border-bottom:1px solid #dfe6df}
/* Boutons d’effacement sur la Fiche Conseil — visibles uniquement à l’écran */
.sheet-remove-btn{
  border:1px solid #e1b8b8;
  background:#fff7f7;
  color:#a33b3b;
  border-radius:7px;
  padding:4px 8px;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
  margin-left:8px;
  vertical-align:middle;
}
.sheet-remove-btn:hover{background:#fceaea}
.sheet-remove-btn:focus-visible{outline:2px solid #a33b3b;outline-offset:2px}
@media print{.sheet-remove-btn{display:none!important}}
.sheet-advice{border:1px solid #dce3dc;border-radius:13px;padding:16px;margin:12px 0;break-inside:avoid}
.sheet-advice h4{font-size:16px;color:var(--forest);margin:0 0 8px}
.sheet-advice p{margin:6px 0;font-size:13px}.sheet-advice b{color:#3e5b4b}
.sheet-footer{margin-top:30px;padding-top:15px;border-top:1px solid #dfe3df;font-size:10px;color:#748078}
.no-print{margin-bottom:18px}

.bach-section{margin-top:22px}
.bach-intro{
  background:linear-gradient(135deg,#f5f1fb,#eef5ed);
  border:1px solid #ddd8e8;border-radius:15px;padding:15px;margin-bottom:15px;
  color:#5f625e;font-size:13px
}
.bach-toolbar{display:grid;grid-template-columns:1fr 220px;gap:10px;margin-bottom:14px}
.bach-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-height:700px;overflow:auto;padding-right:4px}
.bach-card{
  background:white;border:1px solid var(--line);border-radius:15px;padding:15px;
  transition:.15s
}
.bach-card.selected{border:2px solid #8d78a8;background:#faf8fd}
.bach-top{display:flex;gap:10px;align-items:flex-start}
.bach-top input{width:19px;height:19px;accent-color:#7b6595;margin-top:4px}
.bach-name{font-family:Georgia,serif;color:#59466c;font-size:18px;font-weight:600}
.bach-french{font-size:12px;color:var(--muted);margin-top:1px}
.bach-family{display:inline-block;margin-top:7px;padding:4px 8px;border-radius:999px;background:#eee9f4;color:#675575;font-size:10px;text-transform:uppercase;letter-spacing:.5px}
.bach-detail{font-size:12px;margin-top:9px;padding-top:9px;border-top:1px solid #eee9f1}
.bach-detail b{color:#5c496d}
.bach-selected{margin-top:18px;background:#fbf8fd;border:1px solid #ded6e6;border-radius:15px;padding:16px}
.bach-selected h3{margin:0 0 12px;color:#59466c;font-family:Georgia,serif}
.bach-selection-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border-bottom:1px solid #e8e1ec;padding:8px 0;font-size:13px}
.bach-selection-row:last-child{border-bottom:0}
.bach-remove{border:0;background:#f0e8f2;color:#654e75;border-radius:9px;padding:5px 8px}
.sheet-bach{
  margin-top:24px;border:1px solid #ddd5e4;border-radius:13px;padding:17px;background:#fcfaff;
  break-inside:avoid
}
.sheet-bach h3{font-family:Georgia,serif;color:#59466c;margin:0 0 10px;border-bottom:1px solid #ddd5e4}
.sheet-bach-item{padding:10px 0;border-bottom:1px solid #e9e3ed;break-inside:avoid}
.sheet-bach-item:last-child{border-bottom:0}

.bach-equilibre-input{
 width:min(100%,650px);box-sizing:border-box;border:1px solid #c9c1b5;border-radius:6px;
 padding:4px 7px;font:inherit;color:inherit;background:#fff;
}
@media print{
 .bach-equilibre-input{border:0;padding:0;background:transparent;outline:none;box-shadow:none;width:100%;}
}

.sheet-bach-item h4{margin:0;color:#59466c;font-size:16px}
.sheet-bach-item p{font-size:12px;margin:5px 0}
.bach-method{
  margin-top:15px;padding:12px;background:#f3efe4;border-left:4px solid var(--gold);
  border-radius:8px;font-size:12px
}
@media(max-width:800px){.bach-toolbar{grid-template-columns:1fr}.bach-list{grid-template-columns:1fr}}
@media print{.sheet-bach{break-inside:avoid}}
.toast{
  position:fixed;right:22px;bottom:22px;background:var(--forest);color:white;padding:12px 16px;
  border-radius:12px;box-shadow:var(--shadow);display:none;z-index:100
}
.toast.show{display:block}
@media(max-width:950px){
 .grid{grid-template-columns:1fr}.advice-grid{grid-template-columns:1fr}.symptom-list{max-height:420px}
 .patient-grid{grid-template-columns:repeat(2,1fr)}.sheet{padding:25px}
}
@media(max-width:620px){
 .header{padding:15px}.header-inner{align-items:flex-start;flex-direction:column}.nav{width:100%;justify-content:flex-start}
 .main{padding:14px}.hero{padding:22px}.hero h2{font-size:27px}.patient-grid{grid-template-columns:1fr 1fr}
 .sheet-banner{padding:12px 16px;gap:12px;min-height:92px;max-width:760px}.sheet-banner-logo{max-width:140px;max-height:56px;width:auto;height:auto}.sheet-banner h1{font-size:25px}.sheet-banner p{font-size:13px}.sheet-date{text-align:left}
}
@media print{
 @page{size:A4;margin:12mm}
 body{background:white;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .header,.no-print,.toast{display:none!important}
 #printPatientBox{display:block!important;visibility:visible!important}
 #printPatientBox .patient-grid{display:grid!important}
 #printPatientBox .patient-grid div{display:block!important;visibility:visible!important}
 #printPatientBox .patient-grid span,#printPatientBox .patient-grid b{display:block!important;visibility:visible!important}
 .main{padding:0;max-width:none}
 .page{display:none!important}.page.print-page{display:block!important}
 .sheet-wrap{max-width:none}.sheet{box-shadow:none;border:0;padding:0;border-radius:0}
 .sheet-advice{break-inside:avoid}
}

.iridology-modal-window{max-width:1500px;width:98vw;max-height:96vh;overflow:auto}.iridology-modal-window .modal-body{padding:24px}.irido-eyes-grid{gap:22px}.eye-card{padding:18px}.eye-card-head h3{font-size:22px}.eye-stage-new{min-height:620px}.eye-auto-analysis{font-size:13px}.eye-auto-analysis strong{font-size:14px}.irido-live-help{font-size:13px}
.irido-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}
.irido-upload{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:#1f513e;color:#fff;font-weight:800;cursor:pointer}.irido-upload input{display:none}
.iridology-disclaimer{padding:11px 13px;border:1px solid #e5dcc0;background:#fbf7e9;border-radius:12px;color:#5d5a49;font-size:12px;line-height:1.45}
.irido-layout{display:grid;grid-template-columns:minmax(420px,1.2fr) minmax(340px,.8fr);gap:18px}
.irido-viewer,.irido-panel-block{background:#fbfcfa;border:1px solid #dfe7df;border-radius:14px;padding:14px}
.irido-viewer-head{display:flex;justify-content:space-between;margin-bottom:10px;color:#294d3c}
.irido-stage{position:relative;min-height:470px;border-radius:14px;background:#f1eee7;display:flex;align-items:center;justify-content:center;overflow:hidden}
#iridoImage{max-width:100%;max-height:620px;object-fit:contain;position:relative;z-index:1}.irido-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#6c786f}.irido-placeholder-icon{font-size:64px}
.irido-ring{position:absolute;border:2px dashed rgba(31,81,62,.62);border-radius:50%;z-index:3;cursor:pointer;box-sizing:border-box}.irido-ring:hover{border-style:solid;box-shadow:0 0 0 4px rgba(31,81,62,.1)}
.ring-stomach{width:16%;height:16%}.ring-intestinal{width:25%;height:25%}.ring-nervous{width:37%;height:37%}.ring-gland{width:49%;height:49%}.ring-organic{width:62%;height:62%}.ring-circulation{width:76%;height:76%}.ring-skin{width:90%;height:90%}
.irido-pupil{position:absolute;width:13%;height:13%;border-radius:50%;background:rgba(45,35,27,.25);z-index:2;pointer-events:none}
.irido-zone-help{font-size:11px;color:#6c786f;margin-top:8px}.irido-panel{display:flex;flex-direction:column;gap:12px}.irido-panel-block h3{margin:0 0 9px;color:#294d3c;font-size:14px}
.irido-constitution-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.irido-choice{border:1px solid #d5e0d7;background:#fff;border-radius:10px;padding:9px;font-weight:800;color:#294d3c;cursor:pointer}.irido-choice.active{background:#e7f2e9;border-color:#6c9b79}
.irido-choice small{font-weight:600;color:#68766f}.irido-panel-block input,.irido-panel textarea{width:100%;box-sizing:border-box;border:1px solid #d7e0d8;border-radius:9px;padding:9px;font:inherit}
.irido-observation-list{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px;max-height:220px;overflow:auto}.irido-observation{border:1px solid #dde5de;background:#fff;border-radius:9px;padding:8px;text-align:left;cursor:pointer;font-size:11px}.irido-observation.active{background:#edf6ee;border-color:#79a284}
.irido-selected{display:flex;flex-wrap:wrap;gap:6px;min-height:28px}.irido-tag{background:#e7f2e9;border:1px solid #c5dbc9;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;color:#294d3c;cursor:pointer}
.irido-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.irido-mark{position:absolute;z-index:5;width:16px;height:16px;border-radius:50%;background:#9a3d38;border:2px solid #fff;box-shadow:0 1px 5px #555;transform:translate(-50%,-50%);pointer-events:none}
@media(min-width:1200px){.iridology-modal-window{max-width:1700px;width:98vw}.iridology-modal-window .modal-body{padding:28px}.eye-stage-new{min-height:680px}}
@media(max-width:850px){.irido-layout{grid-template-columns:1fr}.irido-stage{min-height:350px}.irido-observation-list{grid-template-columns:1fr}.irido-constitution-grid{grid-template-columns:1fr}}
@media print{.iridology-modal-window{display:none!important}}


.irido-cartography{margin:12px 0 16px;background:#fbfcfa;border:1px solid #dfe7df;border-radius:14px;padding:13px}
.irido-cartography-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;color:#294d3c}
.irido-cartography-head strong{display:block;font-size:14px}.irido-cartography-head span{display:block;font-size:11px;color:#68766f;margin-top:2px}
.irido-map-tabs{display:flex;gap:6px;flex-wrap:wrap}.irido-map-tab{border:1px solid #d5e0d7;background:#fff;border-radius:9px;padding:7px 10px;font-weight:800;color:#294d3c;cursor:pointer}
.irido-map-tab.active{background:#e7f2e9;border-color:#6c9b79}
.irido-map-frame{margin-top:10px;background:#f1eee7;border-radius:11px;padding:8px;display:flex;justify-content:center;align-items:center;min-height:180px;overflow:hidden}
.irido-map-frame img{display:block;max-width:100%;max-height:420px;width:auto;height:auto;object-fit:contain}
.irido-map-caption{font-size:10px;color:#68766f;margin-top:7px;line-height:1.35}


/* --- Iridologie : superposition D/G --- */
.irido-eyes-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}
.eye-card{background:#fbfcfa;border:1px solid #dfe7df;border-radius:14px;padding:12px;min-width:0}
.eye-card-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:9px;color:#174e8c}
.eye-card-head h3{margin:0;font-size:18px}.eye-card-head span{font-size:10px;color:#68766f}
.eye-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.eye-upload{display:inline-flex;align-items:center;gap:6px;background:#1477dc;color:#fff;padding:8px 10px;border-radius:8px;font-size:11px;font-weight:800;cursor:pointer}.eye-upload input{display:none}
.btn.mini{font-size:11px;padding:8px 10px}
.eye-stage-new{position:relative;min-height:390px;border-radius:11px;background:#f0ede5;overflow:hidden;display:flex;align-items:center;justify-content:center}
.eye-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}
.eye-overlay{position:absolute;z-index:2;width:100%;height:100%;object-fit:contain;opacity:.5;pointer-events:none;transition:opacity .15s,width .15s,height .15s}
.eye-placeholder{position:relative;z-index:0;display:flex;flex-direction:column;align-items:center;gap:6px;color:#6b786f;text-align:center}.eye-placeholder span{font-size:52px}.eye-placeholder small{font-size:10px}
.overlay-controls{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px;align-items:center}.overlay-controls label{font-size:10px;font-weight:800;color:#294d3c}.overlay-controls input[type=range]{width:100%;accent-color:#1477dc}.overlay-controls output{float:right;font-size:10px;font-weight:800}.check-control{display:flex;gap:6px;align-items:center}.check-control input{accent-color:#1477dc}
.irido-live-help{font-size:11px;color:#68766f}
.eye-auto-analysis{margin-top:10px;border:1px solid #d8e4da;background:#f5faf5;border-radius:12px;padding:11px 12px;color:#294d3c;font-size:11px;line-height:1.45}.eye-auto-analysis strong{display:block;font-size:12px;margin-bottom:5px;color:#174e37}.eye-auto-analysis .auto-note{margin-top:6px;color:#68766f;font-size:10px}.eye-auto-analysis .auto-tags{display:flex;flex-wrap:wrap;gap:5px}.eye-auto-analysis .auto-tag{background:#fff;border:1px solid #cbdccf;border-radius:999px;padding:4px 7px;font-weight:800}.eye-auto-analysis .auto-low{color:#8a5a00}.eye-auto-analysis .auto-error{color:#8e1f1f;font-weight:700}.irido-analysis-grid{display:grid;grid-template-columns:.8fr 1.4fr .8fr;gap:12px;margin-top:10px}
@media(max-width:950px){.irido-eyes-grid,.irido-analysis-grid{grid-template-columns:1fr}.eye-stage-new{min-height:330px}}


/* Réglage précis photo sous cartographie */
.eye-stage-new{touch-action:none}
.eye-photo{cursor:grab;transform-origin:center center;user-select:none;-webkit-user-drag:none}
.eye-photo.dragging{cursor:grabbing}
.eye-overlay{opacity:.62;pointer-events:none;filter:none;mix-blend-mode:normal}
.eye-overlay{z-index:3}
.eye-photo{z-index:2}
.eye-placeholder{z-index:1}
.eye-overlay-controls-note{font-size:10px;color:#68766f;line-height:1.35}


/* Visionneuse d'alignement réparée */
.eye-stage-new{background:#f3f0e8;border:1px solid #d7e1db;box-shadow:inset 0 0 0 1px rgba(30,60,45,.05);position:relative;overflow:hidden}
.eye-photo{z-index:2;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;cursor:grab;transform-origin:center center;user-select:none;-webkit-user-drag:none;will-change:transform}
.eye-photo.dragging{cursor:grabbing}
.eye-overlay{z-index:3;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;height:100%;object-fit:contain;opacity:.62;pointer-events:none;will-change:width,height,opacity;filter:none;mix-blend-mode:normal}
.eye-placeholder{z-index:1;color:#496257;background:rgba(255,255,255,.65);padding:14px 18px;border-radius:12px;text-align:center}
.eye-placeholder b{font-size:13px}.eye-placeholder small{color:#68766f}
.eye-card-head h3{color:#124e37}
.overlay-controls .eye-position-label{display:flex;flex-direction:column;gap:2px}


/* Iridologie : visionneuse plein écran */
#iridologyModal.irido-fullscreen{position:fixed;inset:0;width:100vw;height:100vh;padding:12px;box-sizing:border-box;align-items:stretch;justify-content:stretch;background:rgba(8,20,14,.82);z-index:9999}
#iridologyModal.irido-fullscreen .iridology-modal-window{width:100%;max-width:none;height:100%;max-height:none;margin:0;box-sizing:border-box;border-radius:16px;overflow:auto}
#iridologyModal.irido-fullscreen .irido-eyes-grid{grid-template-columns:1fr 1fr}
.eye-stage-new{cursor:crosshair}
.eye-photo{cursor:grab}.eye-zoom-active{outline:2px solid rgba(31,91,68,.18)}

.eye-photo.dragging{cursor:grabbing}
.eye-move-controls{display:grid;grid-template-columns:repeat(3,38px);grid-template-rows:38px 38px 38px;gap:4px;justify-content:center;align-items:center;margin-top:7px}
.eye-move-controls button{width:38px;height:38px;padding:0;border:1px solid #cfdcd3;border-radius:8px;background:#fff;color:#174e37;font-size:18px;font-weight:900;cursor:pointer;line-height:1}
.eye-move-controls button:hover{background:#eaf3ec}
.eye-move-controls .move-up{grid-column:2;grid-row:1}
.eye-move-controls .move-left{grid-column:1;grid-row:2}
.eye-move-controls .move-center{grid-column:2;grid-row:2;font-size:13px}
.eye-move-controls .move-right{grid-column:3;grid-row:2}
.eye-move-controls .move-down{grid-column:2;grid-row:3}
.eye-position-note{font-size:10px;color:#68766f;text-align:center;margin-top:3px}
@media(max-width:900px){
  #iridologyModal.irido-fullscreen .irido-eyes-grid{grid-template-columns:1fr}
}


/* Cartographie transparente bien visible au-dessus de la photo */
.eye-overlay{
  z-index:3 !important;
  opacity:.62;
  mix-blend-mode:normal !important;
  filter:none !important;
  pointer-events:none !important;
}
.eye-photo{z-index:2 !important}


/* Opacité de la cartographie : contrôle visible dans la visionneuse plein écran */
.map-opacity-control{
  display:flex;align-items:center;gap:10px;padding:8px 10px;
  background:#eef5f0;border:1px solid #cdded2;border-radius:10px;
  margin-top:8px;
}
.map-opacity-control strong{font-size:11px;color:#174e37;white-space:nowrap}
.map-opacity-control input[type=range]{flex:1;min-width:140px;accent-color:#174e37}
.map-opacity-control output{min-width:42px;text-align:right;font-weight:900;color:#174e37}


.reference-weight-card .value{font-size:20px !important;}
.sheet-health-item small{display:block;margin-top:3px;font-size:10px;line-height:1.25;}

.oligo-tabs{display:flex;gap:10px;margin:0 0 16px;padding:8px;border:1px solid #dfe8e1;border-radius:14px;background:#f7faf8;position:sticky;top:0;z-index:2}
.oligo-tab{flex:1;border:1px solid #d3dfd6;background:#fff;color:var(--forest);border-radius:10px;padding:11px 14px;font-weight:700;cursor:pointer;font-size:14px;transition:.15s}
.oligo-tab:hover{transform:translateY(-1px)}
.oligo-tab.active{background:var(--forest);color:#fff;border-color:var(--forest);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.oligo-block.oligo-hidden{display:none}
@media(max-width:760px){.oligo-tabs{flex-direction:column;position:static}.oligo-tab{width:100%}}
.mag-important-red{color:#b00020;font-weight:700;}

/* --- Comparateur de compléments alimentaires --- */
.sheet-complements .sheet-advice{margin-top:12px}

.comparator-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.9fr);gap:22px;align-items:start}
.comparator-catalog-card,.comparator-selection-card{min-width:0}
.comparator-head,.comparator-selection-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.comparator-head h3,.comparator-selection-head h3{margin:6px 0 4px}
.comparator-head p{margin:0}
.comparator-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.comparator-file-btn{cursor:pointer}
.comparator-muted{color:var(--muted);font-size:.92rem}
.comparator-price-note{margin:-6px 0 12px;color:var(--muted);font-size:.78rem;line-height:1.4}

.comparator-catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;flex-wrap:wrap}
.comparator-catalog-status{color:var(--muted);font-size:.82rem}
.comparator-catalog-toggle{white-space:nowrap}
/* Empêche les bordures/décorations globales de créer de petits traits dans le texte produit. */
.comparator-product .comp-lab,
.comparator-product .comparator-muted,
.comparator-product h4{border:0!important;text-decoration:none!important;background:transparent!important;box-shadow:none!important;overflow-wrap:anywhere;word-break:break-word;white-space:normal}

.comparator-filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;margin:18px 0}
.comparator-product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.comparator-product{border:1px solid var(--line);border-radius:16px;background:var(--paper);padding:15px;box-shadow:0 5px 18px rgba(39,67,53,.05)}
.comparator-product h4{margin:5px 0 3px;font-size:1.03rem}
.comparator-product .comp-lab{font-size:.82rem;color:var(--muted)}
.comparator-purpose{
  margin-top:9px;
  padding:8px 10px;
  border-radius:10px;
  background:#f3f7f1;
  border:1px solid #dfe8df;
  color:#40574b;
  font-size:.82rem;
  line-height:1.35;
}
.comparator-purpose b{color:var(--forest)}

.comparator-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:11px 0;font-size:.86rem}
.comparator-meta span{display:block;background:var(--leaf);padding:7px 9px;border-radius:9px}
.comparator-product-actions{display:flex;gap:8px;flex-wrap:wrap}
.comparator-product-actions button{flex:1;min-width:120px}

.comparator-product-actions .comp-edit-btn{border-color:var(--gold);color:var(--forest)}
.comparator-edit-modal{position:fixed;inset:0;z-index:9999;background:rgba(20,35,28,.48);display:flex;align-items:center;justify-content:center;padding:20px}
.comparator-edit-box{width:min(760px,96vw);max-height:92vh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 60px rgba(0,0,0,.22);padding:22px}
.comparator-edit-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:15px}
.comparator-edit-head h3{margin:0;color:var(--forest)}
.comparator-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.comparator-edit-grid .full{grid-column:1/-1}
.comparator-edit-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}
@media(max-width:700px){.comparator-edit-grid{grid-template-columns:1fr}.comparator-edit-grid .full{grid-column:auto}.comparator-edit-box{padding:16px}}
.comparator-empty{padding:22px;border:1px dashed var(--line);border-radius:14px;text-align:center;color:var(--muted);background:rgba(248,245,236,.65)}
.comparator-empty.small{padding:18px}
.comparator-add{margin-top:18px;border-top:1px solid var(--line);padding-top:15px}
.comparator-add summary{cursor:pointer;font-weight:700;color:var(--forest)}
.comparator-add-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}
.comparator-add-grid .full{grid-column:1/-1}
.comparator-import-note{margin-top:15px;font-size:.78rem;color:var(--muted);line-height:1.5}
.comparator-count{display:inline-flex;min-width:32px;height:32px;padding:0 9px;align-items:center;justify-content:center;border-radius:999px;background:var(--leaf);font-weight:800;color:var(--forest)}
.comparator-selected-item{border:1px solid var(--line);border-radius:15px;padding:14px;margin-top:12px;background:var(--paper)}
.comparator-selected-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.comparator-selected-top strong{display:block}
.comparator-selected-top small{color:var(--muted)}
.comparator-remove{border:0;background:transparent;color:var(--danger);cursor:pointer;font-weight:700}
.comparator-selected-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}
.comparator-selected-fields .full{grid-column:1/-1}
.comparator-observance{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.comparator-observance-title{font-weight:700;font-size:.86rem;margin-bottom:7px}
.comparator-observance-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}
@media(max-width:980px){
  .comparator-layout{grid-template-columns:1fr}
  .comparator-product-grid{grid-template-columns:1fr}
  .comparator-filters{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
  .comparator-head,.comparator-selection-head{flex-direction:column}
  .comparator-filters,.comparator-add-grid,.comparator-selected-fields,.comparator-observance-row{grid-template-columns:1fr}
  .comparator-add-grid .full,.comparator-selected-fields .full{grid-column:auto}
}
@media print{
  #comparateur:not(.print-page){display:none!important}
}



/* ===== ORIGINAL STYLE BLOCK ===== */


.eye-fs-tools{display:none;position:absolute;left:14px;right:14px;top:14px;z-index:20;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.94);border:1px solid #d7e1db;box-shadow:0 8px 24px rgba(30,55,40,.16);color:#294d3c}
.eye-fs-tools .eye-fs-title{font-weight:800;font-size:13px;white-space:nowrap}
.eye-fs-tools label{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:800;min-width:250px;flex:1}
.eye-fs-tools input[type=range]{width:180px;accent-color:#1477dc}
.eye-fs-tools output{font-size:11px;min-width:42px}
.eye-fs-tools .btn{margin-left:auto}
.eye-card-head h3[data-open-eye-fullscreen]{cursor:pointer}
.eye-card-head h3[data-open-eye-fullscreen]:hover{text-decoration:underline;text-underline-offset:3px}
/* Un seul espace de travail par œil : la carte entière passe en plein écran. */
.eye-card:fullscreen{background:#f3f0e8;width:100vw;height:100vh;min-height:100vh;box-sizing:border-box;border:0;border-radius:0;padding:18px;overflow:auto}
.eye-card:fullscreen .eye-card-head{position:sticky;top:0;z-index:30;background:#fff;border-radius:14px;padding:12px 14px;box-shadow:0 8px 24px rgba(30,55,40,.12)}
.eye-card:fullscreen .eye-stage-new{height:calc(100vh - 245px);min-height:420px;background:#f3f0e8;border-radius:14px}
.eye-card:fullscreen .eye-fs-tools{display:flex}
.eye-card:fullscreen .eye-photo{max-width:none;max-height:none}
.eye-card:fullscreen .eye-overlay{max-width:none;max-height:none}
.eye-card:fullscreen .overlay-controls{position:sticky;bottom:0;z-index:25;background:rgba(255,255,255,.97);border-radius:14px;padding:12px;margin-top:10px;box-shadow:0 -6px 22px rgba(30,55,40,.12)}
.eye-card:fullscreen .eye-auto-analysis{max-width:1100px;margin:10px auto}
@media(max-width:700px){.eye-fs-tools{left:8px;right:8px;top:8px}.eye-fs-tools label{min-width:180px}.eye-fs-tools input[type=range]{width:130px}.eye-fs-tools .btn{margin-left:0}.eye-card:fullscreen{padding:8px}.eye-card:fullscreen .eye-stage-new{height:calc(100vh - 330px);min-height:300px}}


/* ===== ORIGINAL STYLE BLOCK ===== */


.consultation-links-card{display:flex;align-items:center;min-height:260px}
.consultation-links{width:100%;display:grid;gap:16px}
.consultation-link{
 width:100%;display:flex;align-items:center;gap:14px;text-align:left;
 border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px;
 cursor:pointer;box-shadow:var(--shadow);transition:.15s
}
.consultation-link:hover{transform:translateY(-2px);border-color:var(--sage2)}
.consultation-link .link-icon{font-size:28px;flex:0 0 38px;text-align:center}
.consultation-link span:nth-child(2){flex:1}
.consultation-link strong{display:block;color:var(--forest);font-size:16px;margin-bottom:4px}
.consultation-link small{display:block;color:var(--muted);font-size:12px;line-height:1.4}
.consultation-link .link-arrow{font-size:22px;color:var(--sage);font-weight:700}
.bach-link{border-color:#ddd5e4;background:#fcfafc}
.bach-link strong{color:#59466c}
.bach-link .link-arrow{color:#8d78a8}
.modal-overlay{
 position:fixed;inset:0;background:rgba(25,39,30,.46);z-index:9999;
 display:none;align-items:center;justify-content:center;padding:18px
}
.modal-overlay.open{display:flex}
.modal-window{
 width:min(980px,96vw);max-height:92vh;overflow:auto;background:#faf8f1;
 border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:20px
}
.bach-modal-window{background:#fcf9fd}
.modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.modal-head h2{margin:0 0 4px}
.modal-head p{margin:0;color:var(--muted);font-size:13px}
.modal-close{
 width:40px;height:40px;border:0;border-radius:50%;background:#fff;
 font-size:26px;line-height:1;cursor:pointer;flex:0 0 auto
}
.modal-window>.card{box-shadow:none;margin:0}
.modal-window .bach-section{margin-top:0}
@media(max-width:700px){
 .consultation-links-card{min-height:auto}
 .modal-overlay{padding:8px}
 .modal-window{max-height:95vh;padding:14px;border-radius:16px}
 .modal-head{gap:8px}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


.patient-cover{width:100%;max-width:1180px;margin:0 auto}
.patient-cover-card{min-height:calc(100vh - 230px);display:flex;flex-direction:column;justify-content:center;padding:48px 56px}
.patient-cover-title{display:flex;align-items:center;gap:22px;margin-bottom:38px}
.patient-cover-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:#edf5ed;font-size:36px;flex:0 0 auto}
.patient-cover-title .eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--sage);margin-bottom:7px}
.patient-cover-title h2{font-family:Georgia,serif;font-size:38px;margin:0 0 8px;color:var(--forest)}
.patient-cover-title p{margin:0;color:var(--muted);font-size:14px}
.patient-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}
.patient-fields .full{grid-column:1/-1}
.patient-fields .field input,.patient-fields .field textarea{font-size:15px;padding:14px 15px;border-radius:12px}
.patient-fields textarea{min-height:145px}
.patient-actions{justify-content:flex-end;margin-top:28px}
.patient-actions .btn{min-width:190px}
.nav button[id="openSymptomsBtn"],.nav button[id="openBachBtn"]{white-space:nowrap}
@media(max-width:700px){
 .patient-cover-card{min-height:auto;padding:28px 20px}
 .patient-cover-title{align-items:flex-start;margin-bottom:28px}
 .patient-cover-title h2{font-size:30px}
 .patient-cover-icon{width:58px;height:58px;font-size:28px}
 .patient-fields{grid-template-columns:1fr}
 .patient-fields .full{grid-column:auto}
 .patient-actions{flex-direction:column}
 .patient-actions .btn{width:100%}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


#symptomModal .symptom-modal-search,
#symptomModal .symptom-modal-categories,
#symptomModal .symptom-modal-list{display:block}
#symptomModal.symptom-detail .symptom-modal-search,
#symptomModal.symptom-detail .symptom-modal-categories,
#symptomModal.symptom-detail .symptom-modal-list{display:none}
#symptomModal .symptom-detail-header{display:none}
#symptomModal.symptom-detail .symptom-detail-header{display:flex}
.symptom-detail-header{
  align-items:center;justify-content:space-between;gap:12px;
  margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)
}
.symptom-back{
  border:1px solid var(--line);background:white;color:var(--forest);
  border-radius:10px;padding:9px 13px;font-weight:700;cursor:pointer
}


/* ===== ORIGINAL STYLE BLOCK ===== */


.patient-save-box{
 display:flex;align-items:center;justify-content:space-between;gap:20px;
 background:#edf5ed;border:1px solid var(--line);border-radius:15px;padding:16px;margin-bottom:18px
}
.patient-save-box p{margin:4px 0 0;color:var(--muted);font-size:12px}
.patient-history{display:grid;gap:10px}
.patient-record{
 background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;
 display:flex;align-items:center;justify-content:space-between;gap:15px
}
.patient-record-main strong{display:block;color:var(--forest);font-size:15px}
.patient-record-main small{display:block;color:var(--muted);margin-top:4px}
.patient-record-actions{display:flex;gap:7px;flex-wrap:wrap}
.patient-record-actions button{
 border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 11px;
 cursor:pointer;font-weight:700;color:var(--forest)
}
.patient-record-actions .delete{color:#76504a}
.patient-empty{
 padding:30px 15px;text-align:center;color:var(--muted);
 border:1px dashed var(--line);border-radius:13px;background:#fff
}
@media(max-width:650px){
 .patient-save-box,.patient-record{flex-direction:column;align-items:stretch}
 .patient-record-actions button{flex:1}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


.irido-eye-chooser{display:none!important;padding:18px 4px 8px;text-align:center}
.irido-chooser-title{font-size:18px;font-weight:900;color:#174e37;margin-bottom:16px}
.irido-chooser-links{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:18px;max-width:760px;margin:0 auto}
.irido-eye-link{border:1px solid #cdded2;background:#fff;border-radius:18px;padding:24px 20px;cursor:pointer;box-shadow:0 8px 24px rgba(30,55,40,.10);color:#174e37;display:flex;align-items:center;justify-content:center;gap:9px;font-size:22px;font-weight:900;transition:.18s}
.irido-eye-link:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(30,55,40,.16);background:#f7fbf8}
.irido-eye-link span{font-size:20px}
.irido-eye-link small{font-size:13px;color:#68766f}
.irido-chooser-help{margin:14px auto 0;max-width:700px;color:#68766f;font-size:11px}
.irido-eyes-grid.irido-choice-hidden,.irido-eyes-grid.irido-single-active{display:grid!important}
.irido-eyes-grid.irido-single-active .eye-card,.irido-eyes-grid .eye-card{display:block;width:auto;max-width:none}
.irido-single-back{display:none!important;justify-content:flex-start;margin:0 0 10px}
.irido-single-back .btn{font-weight:800}
@media(max-width:700px){.irido-chooser-links{grid-template-columns:1fr}.irido-eye-link{padding:20px}}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Iridologie : fenêtre de travail très grande */
#iridologyModal{padding:10px !important;align-items:stretch !important;justify-content:stretch !important}
#iridologyModal .iridology-modal-window{width:calc(100vw - 20px) !important;max-width:none !important;height:calc(100vh - 20px) !important;max-height:none !important;margin:0 !important;padding:28px !important;box-sizing:border-box !important;border-radius:20px !important;overflow:auto !important}
#iridologyModal .irido-eyes-grid{width:100% !important}
#iridologyModal .eye-card{padding:24px !important}
#iridologyModal .eye-card-head h3{font-size:26px !important}
#iridologyModal .eye-card-head>div>span{font-size:14px !important}
#iridologyModal .eye-stage-new{min-height:calc(100vh - 410px) !important;height:clamp(620px,68vh,820px) !important}
#iridologyModal .eye-photo{max-width:96% !important;max-height:96% !important}
#iridologyModal .eye-auto-analysis{font-size:14px !important}
#iridologyModal .eye-auto-analysis strong{font-size:15px !important}
#iridologyModal .irido-live-help{font-size:14px !important}
@media(max-width:800px){
  #iridologyModal{padding:4px !important}
  #iridologyModal .iridology-modal-window{width:calc(100vw - 8px) !important;height:calc(100vh - 8px) !important;padding:16px !important;border-radius:14px !important}
  #iridologyModal .eye-card{padding:16px !important}
  #iridologyModal .eye-stage-new{height:65vh !important;min-height:500px !important}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* La taille de la cartographie est pilotée directement par le curseur Taille. */
#iridologyModal .eye-overlay{max-width:none !important;max-height:none !important;object-fit:contain !important;}

.irido-quick-keywords{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:9px;padding:10px 12px;border-radius:12px;background:#f3f7f2;border:1px solid #d9e4d8}
.irido-quick-title{font-weight:800;color:var(--forest);font-size:12px}
.irido-keyword{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:white;border:1px solid #cbd9cc;color:var(--forest);font-size:12px;font-weight:800}
.auto-symptom-narrative{margin:7px 0 0;padding:11px 13px;background:#f6faf5;border:1px solid #dfe7df;border-radius:10px;color:#294d3c;line-height:1.55;font-size:13px;font-weight:600}
.sheet-irido-narrative{margin:8px 0 0;font-size:12px;line-height:1.55;color:#31473d}
.sheet-iridology-conclusion{display:block!important;margin:24px 0;padding:18px;border:1px solid #d9e3d9;border-radius:14px;background:#f8fbf7;color:#29483b;break-inside:auto;page-break-inside:auto}
.sheet-iridology-conclusion h3{margin:0 0 10px!important;padding-bottom:8px;border-bottom:1px solid #dfe6df;font-family:Georgia,serif;color:#29483b}
.sheet-irido-intro{margin:0 0 12px;font-size:12px;color:#68766f;line-height:1.45}
.sheet-irido-eye{margin:12px 0;padding:11px 13px;background:#fff;border:1px solid #e0e7e0;border-radius:10px;break-inside:avoid}
.sheet-irido-eye h4{margin:0 0 5px;color:#29483b;font-size:14px}
.sheet-irido-narrative{margin:0!important;font-size:12px;line-height:1.55;color:#31473d}
/* Photos des iris dans la Fiche Conseil : format compact, comme dans le PDF patient. */
.sheet-irido-photo{width:120px !important;height:120px !important;max-width:120px !important;max-height:120px !important;object-fit:contain !important;display:block !important;margin:8px auto 12px !important;border-radius:10px;border:1px solid #d9e3d9;background:#fff;}
.sheet-irido-photo-wrap{text-align:center !important;}
.sheet-irido-photo-label{font-size:10px;color:#68766f;margin-top:2px;}
.sheet-irido-note{margin-top:12px;padding-top:10px;border-top:1px solid #dfe6df;font-size:10px;line-height:1.45;color:#68766f}
@media print{#sheetIridologyConclusion{display:block!important;visibility:visible!important}.sheet-iridology-conclusion{display:block!important;visibility:visible!important;break-inside:auto!important;page-break-inside:auto!important}.sheet-irido-eye{break-inside:avoid!important;page-break-inside:avoid!important}.sheet-irido-photo{width:120px;height:120px;object-fit:contain;display:block;margin:8px auto 12px;border-radius:10px;border:1px solid #d9e3d9;background:#fff}.sheet-irido-photo-wrap{text-align:center}.sheet-irido-photo-label{font-size:10px;color:#68766f;margin-top:2px}}


<style id="sheet-irido-patient-print">
/* PDF patient : uniquement les deux blocs lisibles par le patient. */
.sheet-irido-patient-title{
  display:none;font-family:Georgia,serif;font-size:22px;font-weight:700;
  color:#29483b;margin:0 0 12px;
}
.sheet-irido-patient-photos{
  display:none;gap:14px;justify-content:center;align-items:flex-start;margin:0 0 16px;
}
.sheet-irido-patient-photos > div{flex:0 0 48%;max-width:48%;text-align:center;}
.sheet-irido-patient-photos img{
  display:block;width:100%;max-width:360px;height:180px;object-fit:contain;
  margin:0 auto 5px;border:1px solid #d9e3d9;border-radius:10px;background:#fff;
}
.sheet-irido-patient-photos span{font-size:11px;font-weight:700;color:#29483b;}
@media print{
  .sheet-irido-patient-title{display:block !important;}
  .sheet-irido-patient-photos{display:flex !important;}
  .sheet-irido-patient-photos img{
    width:100%;max-width:360px;height:150px;object-fit:contain;
    -webkit-print-color-adjust:exact;print-color-adjust:exact;
  }
}
.sheet-irido-global{
  margin-top:0 !important;
  padding:16px 18px !important;
  border:1px solid #cfe0d2 !important;
  border-radius:16px !important;
  background:#f3f8f3 !important;
  box-shadow:none !important;
}
.sheet-irido-global h4{
  font-size:19px !important;
  margin:0 0 10px !important;
  color:#29483b !important;
}
.sheet-irido-global > p:first-of-type{
  margin:0 !important;
  font-size:13px !important;
  line-height:1.62 !important;
  color:#29483b !important;
  font-weight:600 !important;
}
.sheet-irido-advice{
  margin-top:14px !important;
  padding:15px 17px !important;
  border:1px solid #cfe0d2 !important;
  border-radius:16px !important;
  background:#edf6ee !important;
  break-inside:avoid;
  page-break-inside:avoid;
}
.sheet-irido-advice h4{
  font-size:18px !important;
  margin:0 0 9px !important;
  color:#29483b !important;
}
.sheet-irido-advice ul{margin:8px 0 4px 20px !important;padding:0 !important;}
.sheet-irido-advice li{margin:6px 0 !important;line-height:1.5 !important;color:#29483b !important;font-size:12.5px !important;}
@media print{
  /* Le PDF ne montre que Lecture d’ensemble + Pistes + Important. */
  .sheet-irido-eye{display:none !important;}
  .sheet-irido-intro{display:none !important;}
  .sheet-iridology-conclusion > h3{
    display:block !important;
    visibility:visible !important;
    font-family:Georgia,serif;
    font-size:22px !important;
    font-weight:700 !important;
    color:#29483b !important;
    margin:0 0 12px !important;
  }
  .sheet-irido-patient-title{display:none !important;}
  .sheet-irido-patient-photos{
    display:flex !important;
    visibility:visible !important;
  }
  .sheet-irido-patient-photos > div{
    display:block !important;
    visibility:visible !important;
  }
  .sheet-irido-patient-photos img{
    display:block !important;
    visibility:visible !important;
  }
  .irido-print-hide{display:none !important;}
  .sheet-iridology-conclusion{margin-top:12px !important;padding:0 !important;border:0 !important;background:transparent !important;}
  .sheet-irido-global{display:block !important;break-inside:avoid;page-break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .sheet-irido-advice{-webkit-print-color-adjust:exact;print-color-adjust:exact;}
  .sheet-irido-note{margin-top:12px !important;padding:9px 11px !important;}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


.sheet-iridology-conclusion{margin-top:24px;border:1px solid #d9e3d9;border-radius:13px;padding:17px;background:#f7faf6;break-inside:avoid;}
.sheet-iridology-conclusion h3{margin:0 0 10px;padding-bottom:7px;border-bottom:1px solid #dfe6df;color:var(--forest);font-family:Georgia,serif;font-size:20px;}
.sheet-irido-intro{margin:0 0 12px;font-size:11px;color:#68766f;line-height:1.45;}
.sheet-irido-eye{margin:10px 0;padding:10px 12px;background:white;border:1px solid #e1e7e1;border-radius:10px;break-inside:avoid;}
.sheet-irido-eye h4{margin:0 0 4px;color:var(--forest);font-size:13px;}
.sheet-irido-narrative{margin:0;font-size:12px;line-height:1.55;color:#31473d;}
.sheet-irido-note{margin-top:12px;padding:9px 11px;background:#f3efe4;border-left:3px solid var(--gold);border-radius:7px;font-size:10px;line-height:1.45;color:#5e584a;}
@media print{.sheet-iridology-conclusion{break-inside:avoid;page-break-inside:avoid;background:#f7faf6 !important;-webkit-print-color-adjust:exact;print-color-adjust:exact;}}

/* --- Oligothérapie : module automatique basé sur le support de formation fourni --- */
.oligo-modal-window{max-width:1250px;width:96vw;max-height:94vh;overflow:auto}
.oligo-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
.oligo-block{background:#fffdf8;border:1px solid var(--line);border-radius:16px;padding:18px}
.oligo-block h3{margin:0 0 8px;color:var(--forest);font-family:Georgia,serif}
.oligo-help{font-size:12px;color:var(--muted);margin:0 0 14px}
.oligo-question{margin:0 0 16px;padding:13px 14px;border:1px solid #e0e6df;border-radius:13px;background:#fbfcf9}
.oligo-question legend{font-weight:700;color:#405249;padding:0 5px;font-size:13px}
.oligo-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:9px}
.oligo-option{display:flex;align-items:flex-start;gap:8px;padding:8px 9px;border-radius:10px;background:white;border:1px solid #e0e5df;font-size:12px;line-height:1.35}
.oligo-option input{width:auto;margin-top:2px;flex:0 0 auto}
.oligo-result-empty{padding:18px;border:1px dashed #ccd8ce;border-radius:12px;color:var(--muted);background:#f7faf6;font-size:13px}
.oligo-result{border:1px solid #dce5dd;border-radius:13px;padding:13px 14px;background:#f8fbf7;margin-bottom:9px}
.oligo-result.top{border-color:#b9cdbd;box-shadow:0 4px 14px rgba(39,67,53,.07)}
.oligo-result-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
.oligo-result h4{margin:0;color:var(--forest);font-size:16px}
.oligo-score{font-size:11px;font-weight:700;color:#68766f;background:#e8efe8;border-radius:999px;padding:4px 8px;white-space:nowrap}
.oligo-result p{margin:7px 0 0;font-size:12px;color:#405249;line-height:1.5}
.oligo-keywords{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.oligo-keyword{font-size:11px;padding:4px 8px;border-radius:999px;background:#edf3ed;color:var(--forest);border:1px solid #d9e4d9}
.oligo-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.oligo-source-note{font-size:10px;line-height:1.45;color:#6c6759;background:#f5f0e5;border-left:3px solid var(--gold);padding:9px 10px;border-radius:7px;margin-top:12px}
.oligo-selected-line{margin-top:12px;padding:11px 12px;background:#edf5ee;border-radius:11px;border:1px solid #d3e2d5;font-size:12px}

.oligo-base-option{display:flex;align-items:flex-start;gap:9px;padding:10px 9px;border-bottom:1px solid #e4e9e3;background:#fff;cursor:pointer}
.oligo-base-option:hover{background:#f7faf6}
.oligo-base-option input{width:auto;margin-top:3px;flex:0 0 auto;accent-color:var(--forest)}
.oligo-base-option b{color:var(--forest);font-size:13px}
.sheet-oligo{margin:14px 0;padding:14px 16px;background:#f7faf6;border:1px solid #d9e4da;border-radius:12px;break-inside:avoid;page-break-inside:avoid}
.sheet-oligo h3{margin:0 0 7px;color:var(--forest);font-family:Georgia,serif}
.sheet-oligo-intro{font-size:11px;color:#68766f;margin:0 0 10px}
.sheet-oligo-item{padding:8px 10px;background:white;border:1px solid #e1e7e1;border-radius:9px;margin:7px 0}
.sheet-oligo-item h4{margin:0;color:var(--forest);font-size:13px}
.sheet-oligo-item p{margin:4px 0 0;font-size:11px;line-height:1.45}
@media(max-width:900px){.oligo-grid{grid-template-columns:1fr}.oligo-options{grid-template-columns:1fr}}
@media print{.oligo-modal-window{display:none!important}.sheet-oligo{-webkit-print-color-adjust:exact;print-color-adjust:exact}}


/* ===== ORIGINAL STYLE BLOCK ===== */

.sheet-irido-advice{margin-top:14px;padding:14px 16px;border:1px solid #d7e3da;border-radius:14px;background:#f8fbf8}.sheet-irido-advice h4{margin:0 0 8px}.sheet-irido-advice ul{margin:8px 0 10px 20px;padding:0}.sheet-irido-advice li{margin:5px 0;line-height:1.45}.sheet-irido-advice p{line-height:1.5}@media print{.sheet-irido-advice{break-inside:avoid}.sheet-irido-advice li{margin:3px 0}}

/* ===== ORIGINAL STYLE BLOCK ===== */


@media print {
  #sheetIridologyConclusion { display:block !important; visibility:visible !important; }
  #sheetIridologyConclusion .sheet-iridology-conclusion { display:block !important; visibility:visible !important; }
  #sheetIridologyConclusion .sheet-irido-patient-title {
    display:block !important; visibility:visible !important;
    font-family:Georgia,serif !important; font-size:22px !important; font-weight:700 !important;
    color:#29483b !important; margin:0 0 12px !important;
  }
  #sheetIridologyConclusion .sheet-irido-patient-photos {
    display:flex !important; visibility:visible !important; width:100% !important;
    gap:14px !important; justify-content:center !important; align-items:flex-start !important;
    margin:0 0 16px !important;
  }
  #sheetIridologyConclusion .sheet-irido-patient-photos > div {
    display:block !important; visibility:visible !important; flex:0 0 48% !important;
    max-width:48% !important; text-align:center !important;
  }
  #sheetIridologyConclusion .sheet-irido-patient-photos img {
    display:block !important; visibility:visible !important; opacity:1 !important;
    width:100% !important; max-width:360px !important; height:150px !important;
    object-fit:contain !important; margin:0 auto 5px !important;
    border:1px solid #d9e3d9 !important; background:#fff !important;
    -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important;
  }
  #sheetIridologyConclusion .sheet-irido-patient-photos span {
    display:block !important; visibility:visible !important; font-size:11px !important;
    font-weight:700 !important; color:#29483b !important;
  }
}


/* ===== ORIGINAL STYLE BLOCK ===== */


@media print {
  /* ===== BILAN IRIDOLOGIE : PHOTOS OBLIGATOIRES DANS LE PDF ===== */
  #sheetIridologyConclusion {
    display:block !important;
    visibility:visible !important;
  }

  #sheetIridologyConclusion .sheet-iridology-conclusion {
    display:block !important;
    visibility:visible !important;
  }

  #sheetIridologyConclusion .sheet-iridology-conclusion > h3 {
    display:block !important;
    visibility:visible !important;
  }

  /* On affiche les blocs des yeux : c'est là que les vraies photos
     déjà chargées dans #eyePhotoD / #eyePhotoG sont utilisées. */
  #sheetIridologyConclusion .sheet-irido-eye {
    display:block !important;
    visibility:visible !important;
    margin:0 0 12px !important;
    padding:10px !important;
    background:#fff !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
  }

  #sheetIridologyConclusion .sheet-irido-eye h4 {
    display:block !important;
    visibility:visible !important;
    margin:0 0 7px !important;
  }

  #sheetIridologyConclusion .sheet-irido-eye .sheet-remove-btn,
  #sheetIridologyConclusion .sheet-irido-points,
  #sheetIridologyConclusion .sheet-irido-signs,
  #sheetIridologyConclusion .sheet-irido-narrative {
    display:none !important;
  }

  #sheetIridologyConclusion .sheet-irido-photo-wrap {
    display:block !important;
    visibility:visible !important;
    width:100% !important;
    text-align:center !important;
  }

  #sheetIridologyConclusion .sheet-irido-photo {
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:180px !important;
    height:180px !important;
    max-width:180px !important;
    max-height:180px !important;
    object-fit:contain !important;
    margin:4px auto 5px !important;
    border:1px solid #d9e3d9 !important;
    background:#fff !important;
    -webkit-print-color-adjust:exact !important;
    print-color-adjust:exact !important;
  }

  #sheetIridologyConclusion .sheet-irido-photo-label {
    display:block !important;
    visibility:visible !important;
  }

  /* Le titre interne n'est pas nécessaire : le H3 principal porte déjà
     le titre unique « Bilan iridologie ». */
  #sheetIridologyConclusion .sheet-irido-patient-title {
    display:none !important;
  }

  /* Si le bloc global contient aussi une copie des photos, on la masque
     pour éviter les doublons : les photos ci-dessus sont les vraies images. */
  #sheetIridologyConclusion .sheet-irido-patient-photos {
    display:none !important;
  }
}


/* ===== ORIGINAL STYLE BLOCK ===== */


@media print{
  /* Un seul affichage des photos : les deux iris ensemble, après les informations patient. */
  #sheetIridologyConclusion .sheet-irido-eye{display:none !important;}
  #sheetIridologyConclusion .sheet-irido-patient-title{display:none !important;}
  #sheetIridologyConclusion .sheet-irido-patient-photos{
    display:flex !important;
    visibility:visible !important;
    width:100% !important;
    gap:18px !important;
    justify-content:center !important;
    align-items:flex-start !important;
    margin:0 0 16px !important;
  }
  #sheetIridologyConclusion .sheet-irido-patient-photos > div{
    display:block !important;
    visibility:visible !important;
    flex:0 0 48% !important;
    max-width:48% !important;
    text-align:center !important;
  }
  #sheetIridologyConclusion .sheet-irido-patient-photos img{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    max-width:340px !important;
    height:145px !important;
    object-fit:contain !important;
    margin:0 auto 5px !important;
  }
  #sheetIridologyConclusion .sheet-irido-global{display:block !important;visibility:visible !important;}
}

/* Naturopathie Pro — identité de marque */
.brand{flex:0 0 auto;min-width:280px}
.brand h1{white-space:nowrap}
.brand p{white-space:nowrap}
@media(max-width:1050px){
  .header-inner{align-items:flex-start}
  .brand{min-width:250px}
  .brand h1{font-size:23px}
}
@media(max-width:700px){
  .brand{min-width:0}
  .brand h1{font-size:22px}
  .brand p{font-size:12px}
}

<style id="professional-profile-style">
.prof-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.prof-profile-grid .full{grid-column:1/-1}
.prof-profile-card label{display:block;margin:11px 0 6px;font-weight:700;color:#33443a;font-size:13px}
.prof-profile-card input,.prof-profile-card textarea{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #cbd8cd;border-radius:10px;font-size:14px;background:#fbfcfa}
.prof-profile-card textarea{min-height:78px;resize:vertical}
.prof-logo-row{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center;margin-bottom:10px}
.prof-logo-preview{width:150px;height:95px;border:1px dashed #cbd8cd;border-radius:12px;background:#f7faf7;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#7a897f;font-size:12px;text-align:center;padding:8px}
.prof-logo-preview img{max-width:100%;max-height:100%;object-fit:contain}
.prof-profile-preview{margin-top:18px;border:1px solid #d9e4d9;border-radius:14px;background:#f4f8f4;padding:14px}
.prof-profile-preview-title{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#78977f;font-weight:800;margin-bottom:8px}
.prof-doc-preview{background:#29483b;color:white;border-radius:10px;padding:12px 16px;display:flex;align-items:center;gap:12px;min-height:78px}
.prof-doc-preview img{max-width:180px;max-height:72px;width:auto;height:auto;object-fit:contain;border-radius:0;background:transparent;display:none}
.prof-doc-preview h4{font-family:Georgia,serif;margin:0;font-size:19px}.prof-doc-preview p{margin:3px 0 0;font-size:11px;color:#dce9df}.prof-doc-preview .coords{margin-top:4px;font-size:10px;color:#e9f1eb}
@media(max-width:700px){.prof-profile-grid{grid-template-columns:1fr}.prof-profile-grid .full{grid-column:auto}.prof-logo-row{grid-template-columns:1fr}}


/* ===== ORIGINAL STYLE BLOCK ===== */


.local-home-cancel-link{display:inline-block;margin-top:8px;color:#527662;text-decoration:underline;text-underline-offset:3px;font-size:12px;font-weight:700;cursor:pointer;background:none;border:0;padding:0;font-family:Arial,sans-serif}
.local-home-cancel-link:hover{color:#29483b}
#localCancelSubscription{position:fixed;inset:0;z-index:1000005;background:rgba(25,45,36,.38);display:none;align-items:center;justify-content:center;padding:20px;font-family:Arial,sans-serif}
.local-cancel-card{width:min(560px,100%);background:#fff;border:1px solid #d9e4d9;border-radius:22px;padding:28px;box-shadow:0 20px 70px rgba(0,0,0,.25)}
.local-cancel-card h2{margin:0 0 10px;color:#29483b;font-family:Georgia,serif;font-size:28px}
.local-cancel-card p{margin:0;color:#53635a;line-height:1.6;font-size:15px}
.local-cancel-card .cancel-highlight{margin:18px 0;padding:14px 16px;background:#f1f6f1;border-left:4px solid #6f9278;border-radius:10px;color:#405349;line-height:1.5}
.local-cancel-actions{display:flex;justify-content:flex-end;margin-top:20px}
.local-cancel-close{border:0;border-radius:10px;padding:11px 18px;background:#29483b;color:#fff;font-weight:800;cursor:pointer}


/* ===== ORIGINAL STYLE BLOCK ===== */


.local-home-visual-actions{display:flex;gap:10px;justify-content:center;align-items:stretch;flex-wrap:wrap;margin-top:14px;width:100%;position:relative;z-index:5}
.local-home-visual-actions button{border-radius:12px;padding:11px 14px;font-size:13px;font-weight:800;cursor:pointer;min-height:44px;box-sizing:border-box}
.local-home-visual-actions .local-public-submit{background:#fff;color:#29483b;border:1px solid rgba(255,255,255,.85)}
.local-home-visual-actions .local-public-login{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.5)}
.local-home-visual-actions button:hover{filter:brightness(1.05);transform:translateY(-1px)}
@media(max-width:760px){.local-home-visual-actions{flex-direction:column}.local-home-visual-actions button{width:100%}}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Les deux boutons restent dans l'encart vert et se placent sous l'animation. */
#localSaasHome .local-home-visual{
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
}
#localSaasHome .local-home-visual .local-home-screen{
  flex:0 0 auto !important;
}
#localSaasHome .local-home-visual .local-home-visual-actions{
  flex:0 0 auto !important;
  width:min(100%,360px) !important;
  margin-top:14px !important;
}
#localSaasHome .local-home-visual .local-home-visual-actions button{
  flex:1 1 0 !important;
}
@media(max-width:760px){
  #localSaasHome .local-home-visual .local-home-visual-actions{width:100% !important;}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Mise en page accueil : contenu et animation côte à côte, sans grand vide */
#localSaasHome{padding:20px!important;}
#localSaasHome .local-home-card{width:min(1420px,100%)!important;min-height:calc(100vh - 40px);padding:34px 40px 38px!important;display:block!important;}
#localSaasHome .local-home-grid{display:grid!important;grid-template-columns:minmax(0,1.18fr) minmax(420px,.82fr)!important;grid-template-rows:auto auto auto auto auto auto!important;gap:14px 30px!important;align-items:start!important;}
#localSaasHome .local-home-grid > section{display:contents!important;}
#localSaasHome .local-home-grid > section .local-home-kicker{grid-column:1!important;grid-row:1!important;margin:0!important;}
#localSaasHome .local-home-grid > section h1{grid-column:1!important;grid-row:2!important;margin:0!important;line-height:.98!important;}
#localSaasHome .local-home-grid > section .lead{grid-column:1!important;grid-row:3!important;margin:0!important;max-width:none!important;}
#localSaasHome .local-home-grid > section .local-home-intro{grid-column:1!important;grid-row:4!important;margin:0!important;max-width:none!important;}
#localSaasHome .local-home-grid > section .local-home-features{grid-column:1!important;grid-row:5!important;margin:0!important;}
#localSaasHome .local-home-grid > section .local-home-positioning{grid-column:1!important;grid-row:6!important;margin:0!important;}
#localSaasHome .local-home-grid > section .local-home-note{grid-column:1!important;grid-row:7!important;margin:0!important;}
#localSaasHome .local-home-grid > section #localHomeCancelLink{grid-column:1!important;grid-row:8!important;justify-self:start;}
#localSaasHome .local-home-visual{grid-column:2!important;grid-row:1 / span 8!important;min-height:620px!important;height:100%!important;padding:26px!important;align-self:stretch!important;}
#localSaasHome .local-home-screen{width:min(100%,430px)!important;}
#localSaasHome .local-home-screen .mini-page img{height:330px!important;}
#localSaasHome .local-home-subscriptions{margin-top:24px!important;width:100%!important;box-sizing:border-box;}
@media(max-width:900px){
  #localSaasHome{padding:12px!important;}
  #localSaasHome .local-home-card{min-height:calc(100vh - 24px)!important;padding:24px!important;}
  #localSaasHome .local-home-grid{grid-template-columns:1fr!important;grid-template-rows:auto!important;gap:14px!important;}
  #localSaasHome .local-home-grid > section .local-home-kicker,#localSaasHome .local-home-grid > section h1,#localSaasHome .local-home-grid > section .lead,#localSaasHome .local-home-grid > section .local-home-intro,#localSaasHome .local-home-grid > section .local-home-features,#localSaasHome .local-home-grid > section .local-home-positioning,#localSaasHome .local-home-grid > section .local-home-note,#localSaasHome .local-home-grid > section #localHomeCancelLink{grid-column:1!important;grid-row:auto!important;}
  #localSaasHome .local-home-visual{grid-column:1!important;grid-row:auto!important;min-height:380px!important;height:auto!important;}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


#trialReadonlyBanner{
  flex-wrap:wrap !important;
  position:relative !important;
  z-index:1000001 !important;
}
@media (max-width:800px){
  #trialReadonlyBanner{
    width:calc(100% - 24px) !important;
    gap:8px 12px !important;
  }
  #trialReadonlyBanner .trial-countdown-wrap{
    margin-left:0 !important;
    width:100%;
  }
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Protection visuelle du contenu pendant le mode découverte uniquement */
body.trial-readonly-active,
body.trial-readonly-active *{
  -webkit-user-select:none !important;
  user-select:none !important;
}
body.trial-readonly-active img{
  -webkit-user-drag:none !important;
  user-drag:none !important;
  pointer-events:none;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Sur la page des abonnements : lecture/copie des contenus protégées,
   mais les boutons de choix d'abonnement restent utilisables. */
body.subscription-protected #localSubscriptionPage,
body.subscription-protected #localSaasSubscriptionPage,
body.subscription-protected #localPublicSignupPage{
  -webkit-user-select:none !important;
  user-select:none !important;
}
body.subscription-protected #localSubscriptionPage img,
body.subscription-protected #localSaasSubscriptionPage img,
body.subscription-protected #localPublicSignupPage img{
  -webkit-user-drag:none !important;
  user-drag:none !important;
  pointer-events:none;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Protection générale du contenu du site.
   Les champs de saisie restent utilisables, mais leur contenu ne peut pas
   être sélectionné/copier par les commandes classiques du navigateur. */
html.copyright-protected,
html.copyright-protected body,
html.copyright-protected body *{
  -webkit-user-select:none !important;
  user-select:none !important;
  -webkit-touch-callout:none !important;
}
html.copyright-protected img,
html.copyright-protected video,
html.copyright-protected canvas,
html.copyright-protected svg{
  -webkit-user-drag:none !important;
  user-drag:none !important;
}
html.copyright-protected input,
html.copyright-protected textarea,
html.copyright-protected select{
  -webkit-user-select:none !important;
  user-select:none !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


html:not(.copyright-protected) body,
html:not(.copyright-protected) body *{
  -webkit-user-select:text !important;
  user-select:text !important;
  -webkit-touch-callout:default !important;
}
html:not(.copyright-protected) img,
html:not(.copyright-protected) video,
html:not(.copyright-protected) canvas,
html:not(.copyright-protected) svg{
  -webkit-user-drag:auto !important;
  user-drag:auto !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


.agenda-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:18px;margin-top:18px}
.agenda-calendar-card,.agenda-form-card,.agenda-list-card{padding:20px}
.agenda-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.agenda-month-title{font-size:20px;font-weight:900;color:#29483b;text-transform:capitalize;text-align:center}
.agenda-weekdays,.agenda-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.agenda-weekdays{margin-bottom:6px}.agenda-weekdays div{text-align:center;font-size:12px;font-weight:800;color:#65746a;padding:7px 2px}
.agenda-day{min-height:92px;border:1px solid #d9e3dc;border-radius:10px;background:#fff;padding:7px;cursor:pointer;display:flex;flex-direction:column;gap:5px;transition:.15s}.agenda-day:hover{border-color:#b7cbbd;background:#f8fbf8}.agenda-day.muted{opacity:.42}.agenda-day.today{box-shadow:inset 0 0 0 2px #b69a62}.agenda-day.selected{border-color:#29483b;background:#f1f6f1}.agenda-day-number{font-weight:900;font-size:13px;color:#29483b}.agenda-event{font-size:11px;line-height:1.25;padding:4px 5px;border-radius:6px;background:#e8f1e8;color:#29483b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agenda-event-time{font-weight:900}.agenda-form-head,.agenda-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.agenda-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agenda-submit{width:100%;margin-top:5px}.agenda-form-actions{display:grid;gap:8px}.agenda-edit{border:0;border-radius:8px;padding:8px 10px;cursor:pointer;background:#e8f1e8;color:#29483b;font-weight:800}.agenda-status{font-size:11px;font-weight:800}.agenda-status.annule{color:#9a3c32}.agenda-status.a-confirmer{color:#8a6a28}.agenda-msg{min-height:20px;margin-top:10px;font-size:13px;font-weight:700;color:#27734a}.agenda-list-card{margin-top:18px}.agenda-count{padding:7px 10px;border-radius:999px;background:#f2ead9;color:#29483b;font-size:12px;font-weight:800}.agenda-list{margin-top:14px;display:grid;gap:8px}.agenda-item{display:grid;grid-template-columns:115px 1fr auto;gap:14px;align-items:center;border:1px solid #d9e3dc;border-radius:11px;padding:11px 13px;background:#fff}.agenda-item-date{font-weight:900;color:#29483b}.agenda-item-main strong{display:block;color:#29483b}.agenda-item-main span{font-size:12px;color:#65746a}.agenda-delete{border:0;border-radius:8px;padding:8px 10px;cursor:pointer;background:#f7e7e4;color:#8e3026;font-weight:800}.agenda-empty{padding:20px;text-align:center;color:#65746a;border:1px dashed #cbd8cd;border-radius:10px;background:#fbfcfb}
@media(max-width:900px){.agenda-layout{grid-template-columns:1fr}.agenda-day{min-height:78px}}@media(max-width:600px){.agenda-toolbar{flex-wrap:wrap}.agenda-month-title{order:-1;width:100%}.agenda-weekdays,.agenda-grid{gap:3px}.agenda-day{min-height:68px;padding:5px}.agenda-event{font-size:9px;padding:3px}.agenda-form-row{grid-template-columns:1fr}.agenda-item{grid-template-columns:1fr auto}.agenda-item-date{grid-column:1/-1}.agenda-item-main{min-width:0}}


/* ===== ORIGINAL STYLE BLOCK ===== */


@media print{
  /* Une impression = un seul document sélectionné. */
  .page:not(.print-page){
    display:none !important;
    visibility:hidden !important;
  }
  .page.print-page{
    display:block !important;
    visibility:visible !important;
  }

  /* Le PHV ne doit apparaître que lorsqu'il porte lui-même print-page. */
  #phv:not(.print-page){
    display:none !important;
    visibility:hidden !important;
  }
  #phv.print-page,
  #phv.print-page *{
    visibility:visible !important;
  }

  /* La Fiche Conseil ne doit apparaître que lorsqu'elle porte print-page. */
  #fiche:not(.print-page){
    display:none !important;
    visibility:hidden !important;
  }
  #fiche.print-page,
  #fiche.print-page *{
    visibility:visible !important;
  }
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Correction finale de l'en-tête :
   - les boutons de navigation restent alignés à gauche ;
   - la zone Administrateur / Mon profil / Administration / Déconnexion
     reste à l'extrême droite et ne chevauche plus la navigation. */
.header-inner{align-items:flex-start}
.nav{justify-content:flex-start}
#localSaasTop{
  right:24px!important;
  left:auto!important;
  bottom:18px!important;
  gap:8px;
  justify-content:flex-end;
  flex-wrap:nowrap;
}
@media(max-width:1200px){
  .nav{justify-content:flex-start}
  #localSaasTop{
    right:24px!important;
    bottom:10px!important;
    max-width:calc(100% - 48px);
  }
}
@media(max-width:760px){
  #localSaasTop{
    right:12px!important;
    bottom:8px!important;
    max-width:calc(100% - 24px);
    flex-wrap:wrap;
  }
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* ==========================================================
   NATUROPATHIE PRO — palette relevée sur la capture du site
   ostéotissulaire.fr
   Vert  : #63B50A
   Turquoise : #078C9C
   Orange : #FC9306
   Gris texte : #333333
   Fond : blanc
   ========================================================== */
:root{
  --forest:#078c9c !important;
  --sage:#63b50a !important;
  --sage2:#8fcf3a !important;
  --leaf:#eef8e5 !important;
  --cream:#ffffff !important;
  --paper:#ffffff !important;
  --sand:#eeeeee !important;
  --gold:#fc9306 !important;
  --ink:#333333 !important;
  --muted:#6a6a6a !important;
  --line:#e4e4e4 !important;
  --danger:#b44b45 !important;
  --shadow:0 8px 24px rgba(0,0,0,.07) !important;
}

html,body{background:#fff !important;color:#333 !important}
body{background:#fff !important;font-family:Arial,Helvetica,sans-serif !important}

/* En-tête : blanc, très proche de la capture */
.header{background:#fff !important;color:#333 !important;border-bottom:1px solid #e6e6e6 !important;box-shadow:none !important}
.brand h1{color:#078c9c !important}
.brand p{color:#666 !important}
.logo{background:#fff !important;color:#078c9c !important;border:0 !important}
.nav button{border:0 !important;background:#fff !important;color:#333 !important}
.nav button.active{color:#fc9306 !important;background:#fff !important;border-color:transparent !important}
.nav button:hover{color:#078c9c !important;background:#fff !important;border-color:transparent !important}

/* Titres et blocs */
.hero{background:#fff !important;border-color:#e5e5e5 !important;box-shadow:none !important}
.hero h2,.card h3,.sheet h2,.sheet h3{color:#333 !important}
.hero p{color:#666 !important}
.card{background:#fff !important;border-color:#e5e5e5 !important;box-shadow:0 6px 20px rgba(0,0,0,.045) !important}
.card:hover{box-shadow:0 9px 25px rgba(0,0,0,.07) !important}

input,textarea,select{border-color:#d9d9d9 !important;background:#fff !important;color:#333 !important}
input:focus,textarea:focus,select:focus{border-color:#078c9c !important;box-shadow:0 0 0 3px rgba(7,140,156,.12) !important}

/* Boutons : vert / turquoise / orange comme le site ostéo */
.btn{background:#078c9c !important;color:#fff !important;border-color:#078c9c !important}
.btn:hover{background:#067b89 !important}
.btn.secondary{background:#eef8e5 !important;color:#4d8d08 !important;border-color:#cfe7b7 !important}
.btn.gold{background:#fc9306 !important;color:#fff !important;border-color:#fc9306 !important}
.btn.danger{background:#fff1ef !important;color:#a7443e !important;border-color:#efcbc7 !important}

/* Symptômes */
.category-tabs select{background:#fff !important;border-color:#ddd !important;color:#333 !important}
.symptom{background:#fff !important;border-color:#e1e1e1 !important;color:#333 !important}
.symptom:hover{border-color:#63b50a !important;background:#f9fdf6 !important}
.symptom.selected{border-color:#63b50a !important;background:#f2faea !important;box-shadow:inset 4px 0 #63b50a !important}
.symptom .cat{color:#078c9c !important}
.advice{background:#fff !important;border-color:#e1e1e1 !important}
.advice.selected{border-color:#078c9c !important;background:#f3fbfc !important}
.advice h4{color:#078c9c !important}
.advice .type{color:#4d8d08 !important;background:#eef8e5 !important}
.advice input[type=checkbox]{accent-color:#63b50a !important}
.selection{background:#fff !important;border-color:#e1e1e1 !important}
.selection h4{color:#078c9c !important}
.tag{background:#eef8e5 !important;color:#4d8d08 !important}
.note{background:#fff7e9 !important;border-left-color:#fc9306 !important;color:#665333 !important}

/* Anamnèse */
.anamnese-section{background:#fff !important;border-color:#e1e1e1 !important}
.anamnese-section h3,.anamnese-field label{color:#333 !important}
.anamnese-check{background:#fff !important;border-color:#e1e1e1 !important;color:#555 !important}
.anamnese-check input{accent-color:#63b50a !important}
.anamnese-actions{background:#fff !important}

/* Fiche conseil */
.sheet{background:#fff !important;border-color:#e0e0e0 !important;box-shadow:0 8px 30px rgba(0,0,0,.06) !important}
.sheet-banner{background:#078c9c !important}
.patient-box,.sheet-health,.body-metrics{background:#f7fbf3 !important;border-color:#dcebd2 !important}
.patient-grid b,.body-metrics-title strong,.health-result strong,.health-result .value{color:#078c9c !important}
.health-result{background:#fff !important;border-color:#e1e1e1 !important}
.sheet-advice{border-color:#e1e1e1 !important;background:#fff !important}
.sheet-advice h4{color:#078c9c !important}
.sheet-footer{border-top-color:#e1e1e1 !important}

/* Bach */
.bach-intro{background:#f7fbf3 !important;border-color:#dcebd2 !important}
.bach-card{background:#fff !important;border-color:#e1e1e1 !important}
.bach-card.selected{border-color:#63b50a !important;background:#f4faee !important}
.bach-name,.bach-selected h3,.sheet-bach h3,.sheet-bach-item h4{color:#078c9c !important}
.bach-family{background:#eef8e5 !important;color:#4d8d08 !important}
.bach-selected,.sheet-bach{background:#f9fcf7 !important;border-color:#dcebd2 !important}
.bach-method{background:#fff7e9 !important;border-left-color:#fc9306 !important}

/* Iridologie */
.irido-upload,.eye-upload{background:#078c9c !important}
.iridology-disclaimer{background:#f7fbf3 !important;border-color:#dcebd2 !important;color:#555 !important}
.irido-viewer,.irido-panel-block,.irido-cartography,.eye-card{background:#fff !important;border-color:#e1e1e1 !important}
.irido-stage,.irido-map-frame,.eye-stage-new{background:#f5f5f5 !important}
.irido-viewer-head,.irido-cartography-head,.irido-panel-block h3{color:#078c9c !important}
.irido-choice,.irido-map-tab{background:#fff !important;border-color:#ddd !important;color:#333 !important}
.irido-choice.active,.irido-map-tab.active{background:#eef8e5 !important;border-color:#63b50a !important;color:#4d8d08 !important}
.map-opacity-control{background:#f7fbf3 !important;border-color:#dcebd2 !important}
.map-opacity-control strong,.map-opacity-control output{color:#078c9c !important}

/* Oligothérapie */
.oligo-tabs{background:#f7fbf3 !important;border-color:#dcebd2 !important}
.oligo-tab{background:#fff !important;border-color:#ddd !important;color:#333 !important}
.oligo-tab.active{background:#63b50a !important;color:#fff !important;border-color:#63b50a !important}

/* Comparateur */
.comparator-product,.comparator-selected-item,.comparator-edit-box{background:#fff !important;border-color:#e1e1e1 !important}
.comparator-purpose{background:#f7fbf3 !important;border-color:#dcebd2 !important;color:#555 !important}
.comparator-meta span,.comparator-count{background:#eef8e5 !important}
.comparator-count{color:#4d8d08 !important}
.comparator-empty{background:#fafafa !important;border-color:#ddd !important}
.comparator-head h3,.comparator-selection-head h3,.comparator-edit-head h3,.comparator-add summary{color:#078c9c !important}

/* Patients / historique */
.patient-cover-icon{background:#eef8e5 !important;color:#63b50a !important}
.patient-cover-title .eyebrow{color:#fc9306 !important}
.patient-cover-title h2{color:#078c9c !important}
.patient-save-box{background:#f7fbf3 !important;border-color:#dcebd2 !important}
.patient-record{background:#fff !important;border-color:#e1e1e1 !important}
.patient-record-main strong,.patient-record-actions button{color:#078c9c !important}
.patient-empty{background:#fff !important;border-color:#ddd !important}

/* Navigation interne / modales */
.consultation-link{background:#fff !important;border-color:#e1e1e1 !important;box-shadow:0 6px 18px rgba(0,0,0,.045) !important}
.consultation-link:hover{border-color:#63b50a !important}
.consultation-link strong{color:#078c9c !important}
.consultation-link .link-arrow{color:#fc9306 !important}
.bach-link{background:#fff !important;border-color:#e1e1e1 !important}
.bach-link strong{color:#078c9c !important}
.bach-link .link-arrow{color:#fc9306 !important}
.modal-overlay{background:rgba(0,0,0,.42) !important}
.modal-window,.bach-modal-window{background:#fff !important}
.modal-close{background:#fff !important;color:#078c9c !important}
.symptom-back{background:#fff !important;border-color:#ddd !important;color:#078c9c !important}

/* Compte / administration */
#localSaasTop .local-saas-topbtn,#localSaasTop .local-subscription-btn{border:1px solid #dcdcdc !important;background:#fff !important;color:#333 !important;opacity:1 !important;text-shadow:none !important;font-weight:700 !important}
#localSaasTop .local-saas-topbtn:hover,#localSaasTop .local-saas-topbtn:focus-visible,#localSaasTop .local-subscription-btn:hover{background:#078c9c !important;color:#fff !important;border-color:#078c9c !important}
#localSaasTop .local-saas-pill{background:#eef8e5 !important;border:1px solid #dcebd2 !important;color:#4d8d08 !important;opacity:1 !important}

button,.btn,.card,.hero,.symptom,.advice,.bach-card,.consultation-link,.patient-record,.comparator-product{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease !important}
.toast{background:#078c9c !important}

/* Quelques accents textuels supplémentaires */
.text-green,.success,.ok{color:#63b50a !important}
.text-blue,.info{color:#078c9c !important}
.text-orange,.accent{color:#fc9306 !important}

@media(max-width:700px){.header{padding:14px 16px !important}.main{padding:16px !important}}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Ronds/pilules autour de TOUS les liens du bandeau supérieur */
header button,
header a,
nav button,
nav a,
.nav button,
.nav a,
.top-nav button,
.top-nav a,
button[data-section],
button[data-page],
button[data-view] {
  border: 1px solid #d9d9d9 !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  padding: 9px 15px !important;
  box-shadow: none !important;
}

/* Lien actif */
header button.active,
header a.active,
nav button.active,
nav a.active,
.nav button.active,
.nav a.active,
.top-nav button.active,
.top-nav a.active,
button[data-section].active,
button[data-page].active,
button[data-view].active {
  border-color: #078C9C !important;
  background: #078C9C !important;
  color: #ffffff !important;
}

/* Garder les boutons de compte ronds eux aussi */
header .account button,
header .account a,
.account button,
.account a {
  border-radius: 999px !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Réglage final : même organisation visuelle que le bandeau marron.
   On ne change pas le HTML du menu : on règle uniquement son espace. */
.header-inner{align-items:flex-start !important;gap:16px !important;}
.brand{flex:0 0 300px !important;min-width:300px !important;}
.nav{flex:1 1 auto !important;min-width:0 !important;gap:7px !important;justify-content:flex-start !important;align-content:flex-start !important;}
.nav button{padding:8px 12px !important;white-space:nowrap !important;}

/* Les boutons de compte remontent dans le bandeau, à droite, sur la hauteur de la 2e ligne. */
#localSaasTop{
  position:absolute !important;
  top:82px !important;
  bottom:auto !important;
  right:24px !important;
  left:auto !important;
  z-index:25 !important;
  display:none;
  gap:8px !important;
  flex-wrap:nowrap !important;
  align-items:center !important;
  justify-content:flex-end !important;
}
#localSaasTop .local-saas-topbtn,
#localSaasTop .local-subscription-btn{
  border:1px solid #dcdcdc !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#333 !important;
  padding:9px 14px !important;
  white-space:nowrap !important;
}
#localSaasTop .local-saas-topbtn:hover,
#localSaasTop .local-subscription-btn:hover{
  background:#078c9c !important;color:#fff !important;border-color:#078c9c !important;
}

@media(max-width:1200px){
  .brand{flex-basis:260px !important;min-width:260px !important;}
  .nav{gap:6px !important;}
  .nav button{padding-left:10px !important;padding-right:10px !important;}
  #localSaasTop{right:18px !important;top:82px !important;}
}
@media(max-width:760px){
  .header-inner{flex-direction:column !important;}
  .brand{flex-basis:auto !important;min-width:0 !important;}
  .nav{width:100% !important;}
  #localSaasTop{position:static !important;width:100%;justify-content:flex-end !important;flex-wrap:wrap !important;margin-top:4px;}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Au survol : le bouton passe en bleu turquoise, comme le bouton actif.
   Le survol prend temporairement le dessus sur le bouton actif. */
.nav button:hover,
.nav button:focus-visible,
header button:hover,
header a:hover,
nav button:hover,
nav a:hover,
.top-nav button:hover,
.top-nav a:hover {
  background: #078C9C !important;
  border-color: #078C9C !important;
  color: #ffffff !important;
}

/* Quand la souris quitte un bouton, son état actif d'origine réapparaît. */
.nav button.active:not(:hover) {
  background: #078C9C !important;
  border-color: #078C9C !important;
  color: #ffffff !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Bandeau supérieur complet : le voile bleu couvre logo + titre + tous les liens */
.header {
  background: rgba(7, 140, 156, 0.075) !important;
  min-height: 150px !important;
  padding: 18px 28px !important;
  box-sizing: border-box !important;
}

/* Le fond bleu doit rester sur toute la hauteur réelle du bandeau */
.header-inner {
  min-height: 114px !important;
  align-items: center !important;
}

/* Le logo reste bien intégré dans le bandeau */
.brand {
  align-self: center !important;
}

/* Les boutons gardent leur blanc et leur effet bleu au survol */
.header .nav button {
  background: #ffffff !important;
}

/* Ligne de séparation discrète en bas du bandeau */
.header {
  border-bottom: 1px solid rgba(7, 140, 156, 0.12) !important;
  box-shadow: 0 3px 18px rgba(7, 140, 156, 0.08) !important;
}

@media (max-width: 700px) {
  .header {
    min-height: 0 !important;
    padding: 14px 16px !important;
  }
  .header-inner {
    min-height: 0 !important;
  }
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Au survol : le bouton devient bleu turquoise, comme Consultation */
header button:hover,
header a:hover,
nav button:hover,
nav a:hover,
.nav button:hover,
.nav a:hover,
.top-nav button:hover,
.top-nav a:hover {
  background: #078C9C !important;
  border-color: #078C9C !important;
  color: #ffffff !important;
}

/* Les éléments du bandeau gardent leur état actif bleu */
header button.active:hover,
header a.active:hover,
nav button.active:hover,
nav a.active:hover,
.nav button.active:hover,
.nav a.active:hover,
.top-nav button.active:hover,
.top-nav a.active:hover {
  background: #078C9C !important;
  border-color: #078C9C !important;
  color: #ffffff !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Bandeau d'en-tête : même bleu, mais sans transparence */
.header {
  background: #eef9fa !important;
}

/* On garde l'effet bleu plein au survol des liens */
header button:hover,
header a:hover,
nav button:hover,
nav a:hover,
.nav button:hover,
.nav a:hover,
.top-nav button:hover,
.top-nav a:hover {
  background: #078C9C !important;
  border-color: #078C9C !important;
  color: #ffffff !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* =========================================================
   ACCUEIL — même identité couleur que le reste du logiciel
   ========================================================= */
#localSaasHome .local-home-card {
  background: #ffffff !important;
  border: 1px solid rgba(7,140,156,.18) !important;
}

#localSaasHome .local-home-kicker {
  color: #63B50A !important;
}

#localSaasHome h1 {
  color: #078C9C !important;
}

#localSaasHome h1 span {
  color: #63B50A !important;
}

#localSaasHome .lead,
#localSaasHome .local-home-intro {
  color: #3f4d4f !important;
}

#localSaasHome .local-home-feature {
  background: #f8fcfc !important;
  border: 1px solid rgba(7,140,156,.18) !important;
  color: #3f4d4f !important;
}

#localSaasHome .local-home-feature strong {
  color: #078C9C !important;
}

#localSaasHome .local-home-feature:hover {
  background: #eef9fa !important;
  border-color: #078C9C !important;
}

#localSaasHome .local-home-positioning {
  background: #f6fbf8 !important;
  border-left: 4px solid #63B50A !important;
  color: #3f4d4f !important;
}

#localSaasHome .local-home-positioning strong {
  color: #078C9C !important;
}

#localSaasHome .local-home-visual {
  background: #078C9C !important;
}

#localSaasHome .local-home-screen {
  border-color: rgba(7,140,156,.22) !important;
}

#localSaasHome .local-home-mini-nav span {
  border-color: rgba(7,140,156,.22) !important;
  background: #ffffff !important;
}

#localSaasHome .local-home-mini-nav span:hover,
#localSaasHome .local-home-mini-nav span.active {
  background: #078C9C !important;
  border-color: #078C9C !important;
  color: #ffffff !important;
}

#localSaasHome .local-home-note {
  color: #6b7778 !important;
}

#localSaasHome .local-home-cancel-link {
  color: #078C9C !important;
}

/* Éléments orange : rappel de la couleur d'accent du site ostéo */
#localSaasHome .local-home-card .accent,
#localSaasHome .local-home-card .highlight {
  color: #FC9306 !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Modification demandée : UNIQUEMENT les deux textes verts de l'en-tête de l'accueil */
#localSaasHome .local-home-kicker {
  color: #a0a0a0 !important;
}

#localSaasHome h1 span {
  color: #a0a0a0 !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* =========================================================
   ABONNEMENTS / CRÉATION DE COMPTE
   Même palette que le reste du site
   ========================================================= */

/* Bloc principal */
#localSubscriptionPage .local-subscription-page-card,
#localSaasHome .local-home-subscriptions {
  background: linear-gradient(180deg, #fbfeff, #f4fbfc) !important;
  border-color: rgba(7,140,156,.18) !important;
}

/* Petits titres */
#localSubscriptionPage .local-public-kicker,
#localSaasHome .local-home-subscriptions .local-public-kicker {
  color: #54767b !important;
}

/* Titres principaux */
#localSubscriptionPage h2,
#localSubscriptionPage .local-public-head h2,
#localSaasHome .local-home-subscriptions h2 {
  color: #078C9C !important;
}

/* Textes explicatifs */
#localSubscriptionPage p,
#localSubscriptionPage .local-public-head p,
#localSaasHome .local-home-subscriptions p {
  color: #627477 !important;
}

/* Formules */
#localSubscriptionPage .local-public-plan,
#localSaasHome .local-home-subscriptions .local-public-plan {
  background: #ffffff !important;
  border-color: rgba(7,140,156,.20) !important;
}

#localSubscriptionPage .local-public-plan strong,
#localSubscriptionPage .local-public-plan b,
#localSaasHome .local-home-subscriptions .local-public-plan strong,
#localSaasHome .local-home-subscriptions .local-public-plan b {
  color: #078C9C !important;
}

#localSubscriptionPage .local-public-plan span,
#localSaasHome .local-home-subscriptions .local-public-plan span {
  color: #667679 !important;
}

/* Formule sélectionnée */
#localSubscriptionPage .local-public-plan.selected,
#localSubscriptionPage .local-public-plan:has(input:checked),
#localSaasHome .local-home-subscriptions .local-public-plan.selected,
#localSaasHome .local-home-subscriptions .local-public-plan:has(input:checked) {
  border-color: #078C9C !important;
  background: #eef9fa !important;
  box-shadow: 0 5px 15px rgba(7,140,156,.10) !important;
}

/* Formulaire */
#localSubscriptionPage .local-public-form,
#localSaasHome .local-home-subscriptions .local-public-form {
  background: #ffffff !important;
  border-color: rgba(7,140,156,.18) !important;
}

#localSubscriptionPage .local-public-form h3,
#localSaasHome .local-home-subscriptions .local-public-form h3 {
  color: #078C9C !important;
}

#localSubscriptionPage .local-public-form label,
#localSaasHome .local-home-subscriptions .local-public-form label {
  color: #40595d !important;
}

#localSubscriptionPage .local-public-form input,
#localSaasHome .local-home-subscriptions .local-public-form input {
  background: #ffffff !important;
  border-color: #d4e1e3 !important;
}

/* Bouton principal : orange doux */
#localSubscriptionPage .local-public-submit,
#localSaasHome .local-home-create-action {
  background: #d58a3f !important;
  color: #ffffff !important;
  border-color: #d58a3f !important;
}

/* Bouton secondaire */
#localSubscriptionPage .local-public-login,
#localSaasHome .local-home-login-action {
  background: #f4fbfc !important;
  color: #078C9C !important;
  border: 1px solid rgba(7,140,156,.22) !important;
}

/* Bouton retour */
#localSubscriptionPage .local-subscription-back {
  background: #eef9fa !important;
  color: #078C9C !important;
  border-color: rgba(7,140,156,.22) !important;
}

/* Lien de résiliation */
#localSubscriptionPage a,
#localSaasHome .local-home-cancel-link {
  color: #078C9C !important;
}

/* Bandeau visuel de la page d'accueil lié aux abonnements */
#localSaasHome .local-home-visual {
  background: #078C9C !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Page d'accueil : conserver uniquement la phrase principale en marron-orangé doux */
#localSaasHome h1 span {
  color: #bd7d45 !important;
  font-size: 0.62em !important;
  line-height: 1.08 !important;
}

/* La zone abonnements conserve la palette colorée validée */
#localSubscriptionPage .local-public-head h2 {
  color: #078C9C !important;
}
#localSubscriptionPage .local-public-plan strong,
#localSubscriptionPage .local-public-plan b {
  color: #078C9C !important;
}
#localSubscriptionPage .local-public-submit {
  background: #d58a3f !important;
  border-color: #d58a3f !important;
  color: #fff !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* =========================================================
   CONNEXION — même palette, sans modifier l'accueil
   ni le panneau abonnements
   ========================================================= */

#localSaasGate {
  background: linear-gradient(135deg, #f4fbfc 0%, #f8fbf8 55%, #fffaf4 100%) !important;
}

#localSaasGate .local-saas-card {
  background: #ffffff !important;
  border: 1px solid rgba(7,140,156,.16) !important;
  box-shadow: 0 18px 45px rgba(7,140,156,.10) !important;
}

#localSaasGate .local-saas-brand h1 {
  color: #078C9C !important;
}

#localSaasGate .local-saas-brand p {
  color: #687477 !important;
}

#localSaasGate #localSaasLoginForm label {
  color: #40595d !important;
}

#localSaasGate #localSaasLoginForm input {
  background: #ffffff !important;
  border: 1px solid #d3e2e4 !important;
  color: #344b4f !important;
}

#localSaasGate #localSaasLoginForm input:focus {
  border-color: #078C9C !important;
  box-shadow: 0 0 0 3px rgba(7,140,156,.10) !important;
  outline: none !important;
}

#localSaasGate #localSaasLoginForm > button[type="submit"] {
  background: #bd7d45 !important;
  border-color: #bd7d45 !important;
  color: #ffffff !important;
}

#localSaasGate #localSaasLoginForm > button[type="submit"]:hover {
  background: #a96c38 !important;
  border-color: #a96c38 !important;
}

#localSaasGate .local-login-create {
  background: #ffffff !important;
  color: #078C9C !important;
  border: 1px solid rgba(7,140,156,.25) !important;
}

#localSaasGate .local-login-create:hover {
  background: #eef9fa !important;
  color: #078C9C !important;
}

#localSaasGate .local-saas-demo {
  background: #f1f8f8 !important;
  border: 1px solid rgba(7,140,156,.10) !important;
  color: #657477 !important;
}

#localSaasGate .local-saas-demo b {
  color: #078C9C !important;
}

#localSaasGate #localSaasMsg {
  color: #bd6254 !important;
}


/* ===== ORIGINAL STYLE BLOCK ===== */


#phv{padding-bottom:40px}
.phv-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.phv-topbar h2{margin:3px 0 6px;font-family:Georgia,"Times New Roman",serif;color:var(--forest);font-size:31px}
.phv-topbar p{margin:0;color:var(--muted);max-width:760px}
.phv-top-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.phv-layout{display:grid;grid-template-columns:minmax(340px,.95fr) minmax(420px,1.05fr);gap:18px;align-items:start}
.phv-editor-card,.phv-preview-card{padding:20px}
.phv-editor-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}
.phv-editor-head h3,.phv-preview-head h3{margin:4px 0 3px;color:var(--forest)}
.phv-editor-head p{margin:0;color:var(--muted);font-size:13px}
.phv-badge{display:inline-flex;align-items:center;border-radius:999px;background:#eaf2e9;color:var(--forest);font-size:11px;font-weight:900;letter-spacing:.65px;text-transform:uppercase;padding:6px 9px}
.phv-status{font-size:12px;font-weight:800;color:var(--muted);white-space:nowrap}
.phv-patient-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#f5f8f3;border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:15px}
.phv-patient-summary span,.phv-paper-patient span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.6px;color:var(--muted);font-weight:800}
.phv-patient-summary strong{display:block;color:var(--forest);margin-top:3px}
.phv-field{margin-top:14px}
.phv-field label{display:block;font-weight:800;color:var(--forest);margin-bottom:7px}
.phv-field textarea,.phv-section-editor textarea{width:100%;border:1px solid var(--line);border-radius:12px;background:#fffefb;padding:11px 12px;min-height:80px;resize:vertical;font:inherit;color:var(--ink);box-sizing:border-box}
.phv-field textarea:focus,.phv-section-editor textarea:focus{outline:2px solid rgba(120,151,127,.22);border-color:var(--sage)}
.phv-section-editor{border:1px solid var(--line);border-radius:14px;background:#fffdf8;padding:12px;margin-top:12px}
.phv-section-title{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.phv-section-title>span{font-size:22px}
.phv-section-title strong{display:block;color:var(--forest)}
.phv-section-title small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.phv-editor-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:16px}
.phv-preview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.phv-preview-note{font-size:11px;color:var(--muted);text-align:right}
.phv-paper{background:#fffdf8;border:1px solid #ddd8ca;border-radius:8px;box-shadow:0 12px 30px rgba(39,67,53,.08);padding:30px;min-height:760px;color:#26332d}
.phv-paper-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:2px solid #dfe7dd;padding-bottom:18px}
.phv-paper-brand{display:flex;gap:13px;align-items:center}
.phv-paper-logo{width:44px;height:44px;border-radius:13px;background:#eaf2e9;display:grid;place-items:center;font-size:23px}
.phv-paper-kicker{font-size:10px;letter-spacing:1.1px;color:#78977f;font-weight:900}
.phv-paper h1{font-family:Georgia,"Times New Roman",serif;font-size:24px;color:#29483b;margin:4px 0}
.phv-paper-brand p{margin:0;color:#68766f;font-size:12px}
.phv-paper-date{font-size:11px;color:#68766f;white-space:nowrap;padding-top:4px}
.phv-paper-patient{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0;padding:12px;border:1px solid #d9dfd7;border-radius:12px;background:#f7f8f3}
.phv-paper-patient strong{display:block;margin-top:4px;color:#29483b;font-size:13px}
.phv-paper-intro{font-size:13px;line-height:1.65;margin:14px 0 18px}
.phv-paper-sections{display:grid;gap:12px}
.phv-paper-section{border:1px solid #d9dfd7;border-radius:12px;padding:14px;background:#fff}
.phv-paper-section h3{margin:0 0 7px;color:#29483b;font-family:Georgia,"Times New Roman",serif;font-size:18px}
.phv-paper-section p{margin:0;font-size:12.5px;line-height:1.65;white-space:pre-line}
.phv-paper-footer{margin-top:24px;padding-top:16px;border-top:1px solid #d9dfd7;display:flex;flex-direction:column;gap:2px}
.phv-paper-footer strong{font-family:Georgia,"Times New Roman",serif;color:#29483b}
.phv-paper-footer span{font-size:12px;color:#68766f}
.phv-paper-footer small{font-size:10px;color:#68766f;margin-top:5px}
.phv-send-box{margin-top:14px;border:1px solid var(--line);border-radius:14px;background:#f7faf5;padding:15px}
.phv-send-box h3{margin:4px 0;color:var(--forest)}
.phv-send-box p{margin:4px 0;color:var(--muted);font-size:12px}
.phv-send-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}
.phv-send-help{margin-top:10px!important;font-size:11px!important}
@media(max-width:1050px){.phv-layout{grid-template-columns:1fr}.phv-paper{max-width:none}}
@media(max-width:700px){.phv-topbar{flex-direction:column}.phv-top-actions{justify-content:flex-start}.phv-patient-summary{grid-template-columns:1fr}.phv-paper{padding:18px}.phv-paper-patient{grid-template-columns:1fr 1fr}.phv-preview-head{flex-direction:column}.phv-preview-note{text-align:left}}
@media print{
  body{background:#fff!important}
  body *{visibility:hidden!important}
  #phv,#phv *{visibility:visible!important}
  #phv{position:static!important;display:block!important;padding:0!important}
  #phv .no-print{display:none!important}
  #phv .phv-preview-card{display:block!important;box-shadow:none!important;border:0!important;padding:0!important}
  #phv .phv-paper{border:0!important;box-shadow:none!important;border-radius:0!important;padding:18mm!important;min-height:0!important}
  #phv .phv-layout{display:block!important}
  #phv .phv-paper-section{break-inside:avoid}
}


/* ===== ORIGINAL STYLE BLOCK ===== */

.patient-vault-box{margin:16px 0;padding:16px;border:1px solid rgba(37,99,235,.18);border-radius:14px;background:rgba(248,250,252,.92)}.patient-vault-box p{margin:5px 0 10px;color:#64748b}.patient-vault-actions{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.patient-vault-actions .btn{font-size:.9rem}.patient-vault-box small{color:#64748b}.vault-ok{color:#166534!important;font-weight:600}

/* ===== ORIGINAL STYLE BLOCK ===== */


.tracker-simple-window{width:min(900px,94vw);max-height:92vh;overflow:auto}.simple-block{border:1px solid #d9e3d9;border-radius:16px;padding:18px;margin-bottom:14px;background:#fff}.simple-block-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.simple-block-head h3{margin:0;color:var(--forest);font-size:19px}.simple-block-head p{margin:5px 0 0;color:var(--muted);font-size:13px}.simple-badge{font-size:10px;font-weight:800;letter-spacing:.5px;background:#edf5ee;color:var(--forest);padding:6px 9px;border-radius:999px;white-space:nowrap}.simple-score-grid,.simple-input-grid,.simple-compare-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.simple-score-grid>div,.simple-input-grid>div,.simple-compare-grid>div{border:1px solid var(--line);border-radius:12px;padding:12px;background:#f8fbf8}.simple-score-grid span,.simple-compare-grid span{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}.simple-score-grid strong{font-size:28px;color:var(--forest);margin-right:4px}.simple-score-grid small{color:var(--muted)}.simple-state{margin-top:12px;padding:11px 13px;border-radius:10px;background:#f5f8f5;color:#405249}.simple-state strong{color:var(--forest)}.simple-input-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.simple-input-grid label{display:block;font-weight:700;font-size:13px;color:#405249;margin-bottom:7px}.simple-input-grid input{width:100%;box-sizing:border-box;padding:11px;font-size:18px;font-weight:700}.simple-today-result{margin-top:12px;padding:13px;border-radius:11px;background:#f5f8f5;border:1px solid #dfe8df;color:#405249;line-height:1.5}.simple-today-result strong{color:var(--forest)}.simple-compare-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.simple-compare-grid strong{font-size:25px;color:var(--forest)}.simple-global-state{margin-top:12px;padding:14px;border-radius:11px;font-size:16px;font-weight:800;background:#f4f8f4;color:var(--forest)}.simple-global-report{margin-top:10px;padding:13px;border-radius:11px;background:#fafcf9;color:#405249;line-height:1.6;font-size:13px}.simple-global-report .positive,.simple-today-result .positive{color:#166534}.simple-global-report .negative,.simple-today-result .negative{color:#9f2d20}.simple-global-report .stable,.simple-today-result .stable{color:#6b756f}.history-filter-row{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.history-filter{border:1px solid #d9e3d9;background:#fff;border-radius:999px;padding:7px 12px;font-weight:700;color:#405249;cursor:pointer}.history-filter.active{background:#edf5ee;color:var(--forest);border-color:#9db8a3}.evo-history-list{display:flex;flex-direction:column;gap:8px}.evo-history-item{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:12px;padding:11px 13px;background:#f8fbf8}.evo-history-main strong{display:block;color:var(--forest)}.evo-history-main small{display:block;color:var(--muted);margin-top:3px}.evo-history-score{font-weight:800;color:var(--forest)}.evo-history-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.evo-history-actions button{border:1px solid #cbd8cd;background:#fff;border-radius:8px;padding:7px 9px;font-weight:700;color:#405249;cursor:pointer}.history-empty{padding:14px;text-align:center;color:var(--muted);border:1px dashed #d9e3d9;border-radius:10px}@media(max-width:760px){.evo-history-item{grid-template-columns:1fr}.evo-history-actions{justify-content:flex-start}}.simple-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px;padding-bottom:4px}@media(max-width:760px){.simple-score-grid,.simple-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.simple-compare-grid{grid-template-columns:1fr}.simple-block-head{flex-direction:column}}


/* ===== ORIGINAL STYLE BLOCK ===== */


#localSaasGate{position:fixed;inset:0;z-index:999999;background:linear-gradient(135deg,#f8f5ec 0%,#e7efe7 100%);display:flex;align-items:center;justify-content:center;padding:20px;font-family:Arial,sans-serif}
#localSaasGate[hidden]{display:none!important}
.local-saas-card{width:min(430px,100%);background:#fff;border-radius:22px;box-shadow:0 20px 60px rgba(41,72,59,.18);padding:32px;border:1px solid #dce6dc}
.local-saas-brand{text-align:center;margin-bottom:24px}.local-saas-brand .leaf{font-size:42px}.local-saas-brand h1{margin:8px 0 4px;color:#29483b;font-family:Georgia,serif;font-size:25px}.local-saas-brand p{margin:0;color:#65746a;font-size:14px}
.local-saas-card label{display:block;margin:14px 0 6px;font-weight:700;color:#33443a;font-size:14px}.local-saas-card input{box-sizing:border-box;width:100%;padding:12px 13px;border:1px solid #cbd8cd;border-radius:10px;font-size:15px;background:#fbfcfa}.local-saas-card button{width:100%;margin-top:18px;padding:12px;border:0;border-radius:10px;background:#29483b;color:#fff;font-weight:700;font-size:15px;cursor:pointer}.local-saas-card button:hover{filter:brightness(1.06)}
#localSaasMsg{min-height:20px;margin-top:12px;text-align:center;color:#a33b2d;font-size:13px;font-weight:700}.local-saas-demo{margin-top:20px;padding:12px;border-radius:10px;background:#f3f7f2;color:#526057;font-size:12px;line-height:1.55}.local-saas-demo b{color:#29483b}
#localSaasTop{position:absolute;right:430px;bottom:18px;z-index:25;display:none;gap:8px;align-items:center;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;font:13px Arial,sans-serif;color:#29483b}.local-saas-pill{padding:8px 11px;background:#f2ead9;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-weight:700;color:#29483b}.local-saas-topbtn{width:auto!important;margin:0!important;padding:9px 14px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important;color:#fff!important;font-size:13px!important;font-weight:700!important}.local-saas-topbtn:hover{background:#f2ead9!important;color:#29483b!important}
#localSaasCreate{position:fixed;inset:0;z-index:1000000;background:rgba(25,45,36,.35);display:none;align-items:center;justify-content:center;padding:20px;font-family:Arial,sans-serif}.local-create-card{width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;padding:28px;box-shadow:0 20px 70px rgba(0,0,0,.25)}.local-create-card h2{margin:0;color:#29483b;font-family:Georgia,serif}.local-create-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.local-create-grid .full{grid-column:1/-1}.local-create-card label{display:block;margin:12px 0 6px;font-weight:700;color:#33443a;font-size:14px}.local-create-card input{box-sizing:border-box;width:100%;padding:12px 13px;border:1px solid #cbd8cd;border-radius:10px;font-size:15px}.local-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:8px}.local-plan{position:relative;border:1px solid #cbd8cd;border-radius:14px;padding:14px;cursor:pointer;background:#fbfcfa}.local-plan input{position:absolute;opacity:0}.local-plan:has(input:checked){border:2px solid #29483b;background:#eef5ee}.local-plan strong{display:block;color:#29483b;font-size:16px}.local-plan span{display:block;color:#69776d;font-size:12px;margin-top:5px}.local-create-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.local-create-actions button{width:auto!important;margin:0!important;padding:10px 16px!important;border:0;border-radius:10px;cursor:pointer}.local-create-cancel{background:#edf1ed!important;color:#33443a!important}.local-create-submit{background:#29483b!important;color:#fff!important}.local-create-msg{min-height:20px;margin-top:10px;color:#a33b2d;font-size:13px;font-weight:700}.local-login-create{display:block!important;background:transparent!important;color:#29483b!important;border:1px solid #cbd8cd!important;margin-top:10px!important}.local-sub-badge{display:inline-block;margin-top:4px;padding:4px 8px;border-radius:999px;background:#edf5ed;color:#27734a;font-size:11px;font-weight:700}.local-admin-tools{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.local-admin-tools button{border:0;border-radius:9px;padding:9px 12px;cursor:pointer;background:#edf1ed;color:#33443a}.local-admin-tools .primary{background:#29483b;color:#fff}.local-account-plan{font-size:11px;color:#69776d;margin-top:4px}
#localSaasAdmin{position:fixed;inset:0;z-index:999999;background:rgba(25,45,36,.35);display:none;align-items:center;justify-content:center;padding:20px;font-family:Arial,sans-serif}.local-admin-card{width:min(650px,100%);max-height:85vh;overflow:auto;background:#fff;border-radius:18px;padding:25px;box-shadow:0 20px 70px rgba(0,0,0,.25)}.local-admin-card h2{margin-top:0;color:#29483b}.local-user-row{display:grid;grid-template-columns:1.4fr 1fr .8fr auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #e7ece7;font-size:13px}.local-status{font-weight:700}.local-status.ok{color:#27734a}.local-status.no{color:#a33b2d}.local-admin-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:18px}.local-admin-actions button{border:0;border-radius:9px;padding:9px 12px;cursor:pointer}.local-close{background:#edf1ed}.local-reset{background:#29483b;color:white}
.local-subscription-btn{border:0;border-radius:9px;padding:9px 12px;cursor:pointer;background:#edf1ed;color:#33443a}.local-cancel-card{width:min(560px,100%);max-height:85vh;overflow:auto;background:#fff;border-radius:18px;padding:25px;box-shadow:0 20px 70px rgba(0,0,0,.25)}.local-cancel-card h2{margin:0;color:#29483b}.local-cancel-card label{display:block;margin:12px 0 6px;font-weight:700;color:#33443a;font-size:14px}.local-cancel-card select,.local-cancel-card textarea{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #cbd8cd;border-radius:10px;font-size:14px}.local-cancel-card textarea{min-height:100px;resize:vertical}.local-cancel-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.local-cancel-actions button{border:0;border-radius:9px;padding:10px 14px;cursor:pointer}.local-cancel-submit{background:#29483b;color:#fff}.local-cancel-msg{min-height:20px;margin-top:10px;font-size:13px;font-weight:700}.local-user-detail{grid-column:1/-1;margin-top:8px;padding:10px 12px;border-radius:10px;background:#f6f9f5;color:#53635a;font-size:12px}.local-user-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.local-user-actions button{border:0;border-radius:8px;padding:7px 9px;cursor:pointer}.local-user-stop{background:#f7e7e4;color:#8e3026}.local-user-start{background:#e8f1e8;color:#27734a}.local-user-mail{background:#edf1ed;color:#33443a}
@media(max-width:1100px){#localSaasTop{right:320px;bottom:12px}
@media(max-width:1200px){
  #localSaasTop{right:24px;bottom:8px;max-width:calc(100% - 48px);justify-content:flex-end;flex-wrap:wrap}
}.local-saas-pill{display:none}}
@media(max-width:760px){.local-create-grid{grid-template-columns:1fr}.local-plans{grid-template-columns:1fr}}
@media(max-width:600px){.local-saas-card{padding:25px}.local-user-row{grid-template-columns:1fr auto}.local-user-row>*:nth-child(2){display:none}}

#localSaasHome{position:fixed;inset:0;z-index:1000001;background:linear-gradient(135deg,#f8f5ec 0%,#e7efe7 52%,#dcebe2 100%);display:flex;align-items:flex-start;justify-content:center;padding:18px 22px;box-sizing:border-box;font-family:Arial,sans-serif;overflow:auto}
#localSaasHome .local-home-card{max-height:calc(100vh - 36px);overflow-y:auto;overflow-x:hidden;margin:0 auto}
#localSaasHome .local-home-card::-webkit-scrollbar{width:8px}
#localSaasHome .local-home-card::-webkit-scrollbar-thumb{background:#cbd8cd;border-radius:10px}
#localSaasHome[hidden]{display:none!important}
.local-home-card{width:min(1050px,100%);background:rgba(255,255,255,.94);border:1px solid #d9e4d9;border-radius:28px;box-shadow:0 24px 80px rgba(41,72,59,.18);padding:42px}
.local-home-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:42px;align-items:center}
.local-home-kicker{font-size:13px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#6f9278;margin-bottom:12px}
.local-home-card h1{font-family:Georgia,serif;color:#29483b;font-size:clamp(34px,5vw,58px);line-height:1.04;margin:0 0 16px}
.local-home-card h1 span{display:block;font-size:.72em;color:#527662;margin-top:7px}
.local-home-card .lead{font-size:18px;line-height:1.65;color:#53635a;max-width:680px;margin:0 0 12px}
.local-home-intro{font-size:15px;line-height:1.6;color:#64736a;max-width:700px;margin:0 0 22px}
.local-home-positioning{margin:2px 0 26px;padding:16px 18px;border-left:4px solid #6f9278;background:linear-gradient(90deg,#f1f6f1,#fafbf9);border-radius:12px;color:#4d5e54;line-height:1.5}
.local-home-positioning strong{display:block;color:#29483b;font-size:15px;margin-bottom:4px}
.local-home-positioning span{display:block;font-size:13px}
.local-home-features{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 24px}
.local-home-feature{padding:12px 14px;border:1px solid #dce6dc;border-radius:14px;background:#f8faf7;color:#405349;font-size:14px;line-height:1.45}
.local-home-feature strong{display:block;color:#29483b;margin-bottom:3px}
.local-home-actions{display:flex;gap:12px;flex-wrap:wrap}
.local-home-actions button{border:0;border-radius:12px;padding:13px 20px;font-size:15px;font-weight:800;cursor:pointer}
.local-home-primary{background:#29483b;color:#fff}.local-home-secondary{background:#edf3ed;color:#29483b;border:1px solid #cbd8cd!important}
.local-home-note{margin-top:14px;font-size:12px;color:#758179}
.local-home-visual{min-height:390px;border-radius:24px;background:linear-gradient(145deg,#315c49,#234638);display:flex;align-items:center;justify-content:center;padding:28px;box-sizing:border-box;position:relative;overflow:hidden}
.local-home-visual:before,.local-home-visual:after{content:'';position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.13)}.local-home-visual:before{width:310px;height:310px}.local-home-visual:after{width:420px;height:420px}
.local-home-screen{position:relative;z-index:2;width:min(100%,350px);background:#fbfaf4;border-radius:18px;padding:18px;box-shadow:0 18px 40px rgba(0,0,0,.2);overflow:hidden}
.local-home-mini-nav{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px;position:relative;z-index:3}
.local-home-mini-nav span{font-size:8px;font-weight:800;color:#355448;background:#edf3ed;border:1px solid #d5e0d5;border-radius:999px;padding:6px 7px;transition:.25s}
.local-home-mini-nav span:nth-child(1){animation:miniNav1 8s infinite}
.local-home-mini-nav span:nth-child(2){animation:miniNav2 8s infinite}
.local-home-mini-nav span:nth-child(3){animation:miniNav3 8s infinite}
.local-home-mini-nav span:nth-child(4){animation:miniNav4 8s infinite}
.local-home-mini-nav span:nth-child(5){animation:miniNav5 8s infinite}
.local-home-screen .mini-top{height:12px;width:58%;background:#dbe7dc;border-radius:8px;margin-bottom:14px}.local-home-screen .mini-title{height:17px;width:82%;background:#315c49;border-radius:8px;margin-bottom:12px}.local-home-screen .mini-line{height:8px;width:100%;background:#e1e8e1;border-radius:6px;margin:8px 0}.local-home-screen .mini-line.short{width:70%}.local-home-screen .mini-boxes{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.local-home-screen .mini-box{height:64px;border-radius:10px;background:#eef4ee;border:1px solid #d7e2d7}
.local-home-cursor{position:absolute;z-index:6;left:22px;top:64px;width:0;height:0;border-left:8px solid transparent;border-right:3px solid transparent;border-top:18px solid #20382e;transform:rotate(-25deg);filter:drop-shadow(0 2px 2px rgba(0,0,0,.25));animation:miniCursor 8s infinite ease-in-out}
.local-home-click{position:absolute;z-index:5;width:18px;height:18px;border:2px solid #8aa995;border-radius:50%;opacity:0;transform:translate(-50%,-50%);animation:miniClick 8s infinite ease-in-out}
@keyframes miniCursor{
  0%,8%{left:28px;top:64px}
  18%,25%{left:92px;top:64px}
  35%,42%{left:165px;top:64px}
  52%,59%{left:238px;top:64px}
  69%,76%{left:303px;top:64px}
  84%,100%{left:28px;top:64px}
}
@keyframes miniClick{
  0%,17%,34%,51%,68%,85%,100%{opacity:0;transform:translate(-50%,-50%) scale(.4)}
  19%,23%,36%,40%,53%,57%,70%,74%{opacity:.9;transform:translate(-50%,-50%) scale(1.15)}
}
@keyframes miniNav1{0%,17%,84%,100%{background:#315c49;color:#fff;transform:translateY(-1px)}18%,83%{background:#edf3ed;color:#355448}}
@keyframes miniNav2{0%,17%,84%,100%{background:#edf3ed;color:#355448}18%,34%{background:#315c49;color:#fff;transform:translateY(-1px)}35%,100%{transform:translateY(0)}}
@keyframes miniNav3{0%,34%,84%,100%{background:#edf3ed;color:#355448}35%,51%{background:#315c49;color:#fff;transform:translateY(-1px)}52%,100%{transform:translateY(0)}}
@keyframes miniNav4{0%,51%,84%,100%{background:#edf3ed;color:#355448}52%,68%{background:#315c49;color:#fff;transform:translateY(-1px)}69%,100%{transform:translateY(0)}}
@keyframes miniNav5{0%,68%,100%{background:#edf3ed;color:#355448}69%,84%{background:#315c49;color:#fff;transform:translateY(-1px)}85%,100%{transform:translateY(0)}}
@media(max-width:800px){.local-home-card{padding:28px}.local-home-grid{grid-template-columns:1fr;gap:25px}.local-home-visual{min-height:260px}.local-home-features{grid-template-columns:1fr}.local-home-card .lead{font-size:16px}}


/* ===== ORIGINAL STYLE BLOCK ===== */


.local-home-mini-nav{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px}
.local-home-mini-nav span{display:flex;align-items:center;justify-content:center;min-height:24px;padding:5px 4px;font-size:8px;white-space:nowrap;box-sizing:border-box;transition:background .2s,color .2s,transform .2s,box-shadow .2s}
.local-home-mini-nav span:nth-child(4){grid-column:1/2}.local-home-mini-nav span:nth-child(5){grid-column:2/3}.local-home-mini-nav span:nth-child(6){grid-column:3/4}
.local-home-mini-nav span.mini-active{background:#315c49!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 3px 8px rgba(35,70,56,.18)}
.local-home-screen .mini-page{transition:opacity .24s,transform .24s;position:relative;z-index:2;border-radius:10px;overflow:hidden;background:#fff;border:1px solid #d8e3d8;box-shadow:0 4px 12px rgba(35,70,56,.10)}
.local-home-screen .mini-page.mini-changing{opacity:.25;transform:scale(.985)}
.local-home-screen .mini-page img{display:block;width:100%;height:240px;object-fit:contain;object-position:center;background:#fff}
.local-home-cursor{transition:left .62s cubic-bezier(.22,.8,.28,1),top .62s cubic-bezier(.22,.8,.28,1)!important;animation:none!important}
.local-home-click{animation:none!important}
@media(max-width:760px){.local-home-screen .mini-page img{height:210px}.local-home-card{padding:24px}.local-home-features{grid-template-columns:1fr}.local-home-card .lead{font-size:16px}.local-home-intro{font-size:14px}}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Accueil compact : le haut de page utilise toute la largeur et réduit les espaces vides. */
#localSaasHome .local-home-card{width:min(1180px,100%);padding:34px 38px;}
#localSaasHome .local-home-grid{grid-template-columns:minmax(250px,.9fr) minmax(320px,1.15fr) minmax(270px,.75fr);gap:24px;align-items:start;}
#localSaasHome .local-home-card > .local-home-grid > section{display:contents;}
#localSaasHome .local-home-grid > section .local-home-kicker{grid-column:1;}
#localSaasHome .local-home-grid > section h1{grid-column:1;margin-bottom:0;}
#localSaasHome .local-home-grid > section .lead{grid-column:2;max-width:none;margin:24px 0 8px;font-size:16px;line-height:1.55;}
#localSaasHome .local-home-grid > section .local-home-intro{grid-column:2;max-width:none;margin:0 0 14px;font-size:14px;line-height:1.5;}
#localSaasHome .local-home-grid > section .local-home-features{grid-column:1 / 3;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:2px 0 0;}
#localSaasHome .local-home-grid > section .local-home-positioning{grid-column:1 / 3;margin:0;padding:11px 14px;}
#localSaasHome .local-home-grid > section .local-home-actions{grid-column:1 / 3;margin-top:0;}
#localSaasHome .local-home-grid > section .local-home-note{grid-column:1 / 3;margin-top:-4px;}
#localSaasHome .local-home-feature{padding:10px 11px;font-size:12px;line-height:1.35;}
#localSaasHome .local-home-feature strong{font-size:13px;}
#localSaasHome .local-home-visual{grid-column:3;grid-row:1 / span 5;min-height:430px;height:100%;padding:22px;}
#localSaasHome .local-home-screen{width:min(100%,360px);}
@media(max-width:1050px){
  #localSaasHome .local-home-card{width:min(1050px,100%);padding:30px;}
  #localSaasHome .local-home-grid{grid-template-columns:1fr 1fr;gap:22px;}
  #localSaasHome .local-home-grid > section .local-home-kicker,#localSaasHome .local-home-grid > section h1{grid-column:1;}
  #localSaasHome .local-home-grid > section .lead,#localSaasHome .local-home-grid > section .local-home-intro{grid-column:2;}
  #localSaasHome .local-home-grid > section .local-home-features,#localSaasHome .local-home-grid > section .local-home-positioning,#localSaasHome .local-home-grid > section .local-home-actions,#localSaasHome .local-home-grid > section .local-home-note{grid-column:1 / -1;}
  #localSaasHome .local-home-visual{grid-column:1 / -1;grid-row:auto;min-height:330px;}
}
@media(max-width:760px){
  #localSaasHome .local-home-card{padding:24px;}
  #localSaasHome .local-home-grid{display:grid;grid-template-columns:1fr;gap:16px;}
  #localSaasHome .local-home-grid > section{display:contents;}
  #localSaasHome .local-home-grid > section .local-home-kicker,#localSaasHome .local-home-grid > section h1,#localSaasHome .local-home-grid > section .lead,#localSaasHome .local-home-grid > section .local-home-intro,#localSaasHome .local-home-grid > section .local-home-features,#localSaasHome .local-home-grid > section .local-home-positioning,#localSaasHome .local-home-grid > section .local-home-actions,#localSaasHome .local-home-grid > section .local-home-note,#localSaasHome .local-home-visual{grid-column:1;}
  #localSaasHome .local-home-features{grid-template-columns:1fr 1fr;}
  #localSaasHome .local-home-visual{min-height:280px;}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


/* Ajustement final demandé : texte plus resserré et visionneuse moins haute, sans modifier les encarts. */
#localSaasHome .local-home-card{width:min(1180px,100%);padding:28px 34px;}
#localSaasHome .local-home-grid{grid-template-columns:minmax(0,1.22fr) minmax(300px,.78fr);gap:22px;align-items:start;}
#localSaasHome .local-home-card > .local-home-grid > section{display:contents;}
#localSaasHome .local-home-grid > section .local-home-kicker{grid-column:1/-1;margin-bottom:6px;}
#localSaasHome .local-home-grid > section h1{grid-column:1/-1;margin:0 0 7px;line-height:.98;}
#localSaasHome .local-home-card h1 span{margin-top:2px;line-height:1.02;}
#localSaasHome .local-home-grid > section .lead{grid-column:1;max-width:none;margin:0 0 7px;font-size:15px;line-height:1.38;}
#localSaasHome .local-home-grid > section .local-home-intro{grid-column:1;max-width:none;margin:0 0 12px;font-size:13px;line-height:1.38;}
#localSaasHome .local-home-grid > section .local-home-features{grid-column:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:3px 0 0;}
#localSaasHome .local-home-feature{padding:10px 11px;font-size:12px;line-height:1.32;}
#localSaasHome .local-home-feature strong{font-size:13px;margin-bottom:2px;}
#localSaasHome .local-home-visual{grid-column:2;grid-row:3 / span 3;min-height:0;height:100%;padding:15px;border-radius:22px;}
#localSaasHome .local-home-visual:before{width:270px;height:270px;}
#localSaasHome .local-home-visual:after{width:360px;height:360px;}
#localSaasHome .local-home-screen{width:min(100%,340px);padding:14px;border-radius:16px;}
@media(max-width:1050px){
  #localSaasHome .local-home-card{padding:26px 30px;}
  #localSaasHome .local-home-grid{grid-template-columns:1fr 1fr;gap:18px;}
  #localSaasHome .local-home-grid > section .lead,#localSaasHome .local-home-grid > section .local-home-intro{grid-column:1;}
  #localSaasHome .local-home-grid > section .local-home-features{grid-column:1;}
  #localSaasHome .local-home-visual{grid-column:2;grid-row:3 / span 3;min-height:0;}
}
@media(max-width:760px){
  #localSaasHome .local-home-card{padding:22px;}
  #localSaasHome .local-home-grid{grid-template-columns:1fr;gap:14px;}
  #localSaasHome .local-home-grid > section .local-home-kicker,#localSaasHome .local-home-grid > section h1,#localSaasHome .local-home-grid > section .lead,#localSaasHome .local-home-grid > section .local-home-intro,#localSaasHome .local-home-grid > section .local-home-features,#localSaasHome .local-home-grid > section .local-home-positioning,#localSaasHome .local-home-grid > section .local-home-actions,#localSaasHome .local-home-grid > section .local-home-note,#localSaasHome .local-home-visual{grid-column:1;}
  #localSaasHome .local-home-features{grid-template-columns:1fr 1fr;}
  #localSaasHome .local-home-visual{grid-row:auto;min-height:250px;padding:14px;}
}


/* ===== ORIGINAL STYLE BLOCK ===== */


#localSaasHome{position:fixed;inset:0;z-index:999998;overflow:auto;background:linear-gradient(135deg,#f8f5ec 0%,#e7efe7 100%);font-family:Arial,sans-serif;padding:28px;box-sizing:border-box;}
#localSaasHome .local-home-card{width:min(1380px,100%);margin:0 auto;background:#fff;border-radius:28px;padding:34px 40px 42px;box-sizing:border-box;box-shadow:0 18px 60px rgba(41,72,59,.12);}
#localSaasHome .local-home-grid{grid-template-columns:minmax(0,1.2fr) minmax(430px,.8fr);gap:28px;align-items:start;}
#localSaasHome .local-home-visual{grid-column:2;grid-row:1 / span 5;min-height:520px;height:auto;padding:28px;border-radius:26px;}
#localSaasHome .local-home-screen{width:min(100%,390px);padding:18px;}
#localSaasHome .local-home-screen .mini-page img{height:300px;}
#localSaasHome .local-home-subscriptions{margin-top:30px;padding:26px 28px;border:1px solid #d8e3d9;border-radius:22px;background:linear-gradient(180deg,#fbfcfa,#f2f7f1);}
.local-home-subscriptions-head h2{margin:2px 0 6px;color:#29483b;font-family:Georgia,serif;font-size:30px;}
.local-home-subscriptions-head p{margin:0;color:#65746a;font-size:14px;line-height:1.5;}
.local-home-subscriptions .local-public-plans{margin:20px 0 16px;}
.local-home-subscriptions .local-public-form{background:#fff;}
.local-home-subscription-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:16px;}
.local-home-subscription-actions button{border-radius:11px;padding:13px 20px;font-size:14px;font-weight:800;cursor:pointer;}
.local-home-create-action{background:#29483b;color:#fff;border:0;}
.local-home-login-action{background:#edf3ed;color:#29483b;border:1px solid #cbd8cd;}
@media(max-width:900px){#localSaasHome{padding:14px}#localSaasHome .local-home-card{padding:24px}.local-home-grid{grid-template-columns:1fr!important}.local-home-visual{grid-column:1!important;grid-row:auto!important;min-height:360px!important}.local-home-subscriptions{padding:20px!important}}


/* ===== ORIGINAL STYLE BLOCK ===== */


#localSubscriptionPage{position:fixed;inset:0;z-index:100000;background:rgba(25,45,36,.38);display:flex;align-items:center;justify-content:center;padding:22px;font-family:Arial,sans-serif;overflow:auto;}
#localSubscriptionPage[hidden]{display:none!important}
.local-subscription-page-card{width:min(1050px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:24px;padding:30px;box-shadow:0 24px 80px rgba(0,0,0,.25);box-sizing:border-box;}
.local-subscription-page-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:4px;}
.local-subscription-page-head h2{margin:2px 0 6px;color:#29483b;font-family:Georgia,serif;font-size:30px;}
.local-subscription-page-head p{margin:0;color:#65746a;font-size:14px;line-height:1.5;}
.local-subscription-back{border:1px solid #cbd8cd;background:#edf3ed;color:#29483b;border-radius:10px;padding:10px 15px;font-weight:800;cursor:pointer;white-space:nowrap;}
.local-subscription-page-content #localPublicPlans{margin:20px 0 0;padding:0;border:0;background:transparent;}
.local-subscription-page-content .local-public-head{display:none;}
.local-subscription-page-content .local-public-signup{padding:0;}
@media(max-width:760px){.local-subscription-page-card{padding:20px}.local-subscription-page-head{flex-direction:column}.local-subscription-back{align-self:flex-start}.local-subscription-page-head h2{font-size:25px;}}


/* ===== ORIGINAL STYLE BLOCK ===== */


#localPublicPlans{margin:24px 0 8px;padding:24px;border:1px solid #d8e3d9;border-radius:20px;background:linear-gradient(180deg,#fbfcfa,#f2f7f1);scroll-margin-top:20px;}
.local-public-head h2{margin:2px 0 5px;color:#29483b;font-family:Georgia,serif;font-size:24px}.local-public-head p{margin:0;color:#65746a;font-size:13px;line-height:1.5}.local-public-kicker{font-size:11px;letter-spacing:.12em;font-weight:800;color:#27734a;margin-bottom:4px}.local-public-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.local-public-plan{position:relative;border:1px solid #cbd8cd;border-radius:14px;padding:16px;background:#fff;cursor:pointer;transition:.15s}.local-public-plan input{position:absolute;opacity:0}.local-public-plan.selected,.local-public-plan:has(input:checked){border:2px solid #29483b;background:#eef5ee;box-shadow:0 5px 15px rgba(41,72,59,.08)}.local-public-plan strong{display:block;color:#29483b;font-size:17px;margin-bottom:4px}.local-public-plan b{display:block;color:#29483b;font-size:14px}.local-public-plan span{display:block;color:#69776d;font-size:11px;line-height:1.4;margin-top:7px}.local-public-form{padding:18px;border-radius:15px;background:#fff;border:1px solid #dce6dc}.local-public-form h3{margin:0 0 12px;color:#29483b;font-size:18px}.local-public-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.local-public-form label{display:block;margin:0 0 5px;font-weight:700;color:#33443a;font-size:12px}.local-public-form input{box-sizing:border-box;width:100%;padding:11px 12px;border:1px solid #cbd8cd;border-radius:9px;font-size:14px;background:#fbfcfa}.local-public-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.local-public-submit,.local-public-login{border:0;border-radius:10px;padding:12px 18px;font-weight:800;font-size:14px;cursor:pointer;margin-top:0}.local-public-submit{background:#29483b;color:#fff}.local-public-login{background:#edf3ed;color:#29483b;border:1px solid #cbd8cd}.local-public-msg{min-height:20px;margin:9px 0 0;color:#a33b2d;font-size:12px;font-weight:700}.local-public-msg.ok{color:#27734a}
@media(max-width:760px){.local-public-plans,.local-public-form-grid{grid-template-columns:1fr}.local-public-signup{padding:18px}.local-public-plan{padding:14px}}


/* ===== ORIGINAL STYLE BLOCK ===== */


#copyrightWarningNaturopathiePro{
  position:fixed;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  z-index:2147483647;
  display:none;
  width:min(430px,calc(100% - 32px));
  box-sizing:border-box;
  padding:24px 26px;
  border-radius:16px;
  background:#fff;
  color:#243a31;
  text-align:center;
  font-family:Arial,sans-serif;
  box-shadow:0 18px 60px rgba(0,0,0,.28);
  border:2px solid #29483b;
}
#copyrightWarningNaturopathiePro .cw-title{
  font-size:21px;
  font-weight:800;
  margin-bottom:10px;
}
#copyrightWarningNaturopathiePro .cw-text{
  font-size:15px;
  line-height:1.5;
}
#copyrightWarningNaturopathiePro .cw-close{
  margin-top:17px;
  padding:10px 20px;
  border:0;
  border-radius:9px;
  background:#29483b;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}
#copyrightWarningNaturopathiePro.show{display:block}


/* ===== ORIGINAL STYLE BLOCK ===== */


.allergy-check-btn{border:1px solid #d9b06b!important;background:#fff9ec!important;color:#6f4d18!important}
.allergy-check-modal{position:fixed;inset:0;z-index:10020;background:rgba(20,35,28,.52);display:flex;align-items:center;justify-content:center;padding:18px}
.allergy-check-box{width:min(720px,96vw);max-height:90vh;overflow:auto;background:var(--paper);border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 70px rgba(0,0,0,.28);padding:22px}
.allergy-check-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.allergy-check-head h3{margin:0;color:var(--forest)}
.allergy-check-status{margin:16px 0 12px;padding:14px 16px;border-radius:13px;border:1px solid var(--line);line-height:1.5}
.allergy-check-status.danger{background:#fff0ee;border-color:#e4b8b1;color:#7c2d25}
.allergy-check-status.warning{background:#fff8e8;border-color:#ead49d;color:#715214}
.allergy-check-status.safe{background:#edf7ee;border-color:#c8dfcb;color:#285c35}
.allergy-check-status.neutral{background:#f3f6f3;border-color:#d7e0d8;color:#4c5e54}
.allergy-check-list{margin:10px 0 0;padding-left:20px}
.allergy-check-note{font-size:12px;color:var(--muted);line-height:1.5}
.allergy-check-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px;flex-wrap:wrap}
.comparator-allergy-flag{margin-top:10px;padding:8px 10px;border-radius:10px;font-size:.78rem;line-height:1.35}
.comparator-allergy-flag.danger{background:#fff0ee;border:1px solid #e4b8b1;color:#7c2d25}
.comparator-allergy-flag.warning{background:#fff8e8;border:1px solid #ead49d;color:#715214}
@media(max-width:620px){.allergy-check-box{padding:16px}.allergy-check-head{flex-direction:column}.allergy-check-actions .btn{width:100%}}


/* ===== ORIGINAL STYLE BLOCK ===== */


.online-search-box{margin:18px 0 12px;padding:16px;border:1px solid #d8e1d9;border-radius:16px;background:linear-gradient(135deg,#f8fbf8,#fffdf7)}
.online-search-row{display:flex;gap:12px;align-items:flex-end}
.online-search-field{flex:1;margin:0}.online-search-field input{font-size:16px;padding:14px 15px}
.online-search-btn{min-height:49px;white-space:nowrap}
.online-search-hint,.online-source-note{font-size:12px;line-height:1.5;color:var(--muted);margin-top:10px}
.online-search-status{margin:14px 0;color:var(--muted);font-size:14px}
.online-result-card{position:relative;overflow:hidden}
.online-result-top{display:flex;gap:14px;align-items:flex-start}
.online-result-image{width:78px;height:78px;border-radius:12px;object-fit:contain;background:#f4f6f2;border:1px solid #e1e6df;flex:0 0 78px}
.online-result-image.placeholder{display:flex;align-items:center;justify-content:center;font-size:32px}
.online-result-main{min-width:0;flex:1}
.online-result-main h4{margin:2px 0 4px}
.online-result-brand{font-size:13px;color:var(--muted);margin-bottom:8px}
.online-result-ingredients{font-size:13px;line-height:1.45;color:#425249;margin-top:10px;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
.online-result-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.online-result-meta span{background:#f2f6f1;border:1px solid #dce6dd;border-radius:999px;padding:5px 8px;font-size:11px;color:#486052}
.online-result-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.online-result-allergy{margin-top:10px}
.online-manual-add{margin-top:16px}
@media(max-width:760px){.online-search-row{flex-direction:column;align-items:stretch}.online-search-btn{width:100%}.online-result-top{flex-direction:column}.online-result-image{width:64px;height:64px;flex-basis:64px}}
