*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}

body{
  background:#E9E7E0;
  color:#1C1B18;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.5;
}
.wrap{max-width:680px;margin:0 auto;padding:0 22px}
a{color:#24406B}
:focus-visible{outline:2px solid #24406B;outline-offset:2px}

/* bandeau */
.topbar{background:#E9E7E0;border-bottom:3px solid #1C1B18}
.topbar .wrap{display:flex;align-items:baseline;justify-content:space-between;padding:16px 22px 12px;gap:16px;flex-wrap:wrap}
.mark{font-weight:700;font-size:16px;letter-spacing:-.01em}
.mark span{color:#24406B;font-weight:400;padding:0 2px}
.topnav{display:flex;gap:16px;font-size:14px}
.topnav a{color:#4A4740;text-decoration:underline;text-underline-offset:3px}
.topnav a:hover{color:#1C1B18}

/* titre */
.head{padding:38px 0 4px}
h1{font-size:34px;line-height:1.12;font-weight:700;letter-spacing:-.02em;max-width:15ch}
h1 em{font-style:normal;background:#CFD8E6;padding:0 2px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.lede{margin-top:16px;max-width:44ch;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:18px;color:#4A4740}

/* sections */
.sec{padding:44px 0 0}
h2{font-size:22px;font-weight:700;letter-spacing:-.015em;padding-bottom:8px;border-bottom:2px solid #1C1B18;margin-bottom:14px}
.sec-note{font-family:Georgia,"Times New Roman",serif;font-style:italic;color:#4A4740;font-size:16px;margin-bottom:18px;max-width:50ch}

/* bloc de reglage */
.panel{margin-top:26px;border:2px solid #1C1B18;background:#F4F2ED}
.panel-in{padding:18px}
.fieldrow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{margin-bottom:16px}
.field label{display:block;font-weight:700;font-size:14px;margin-bottom:5px}
.field input{
  width:100%;background:#fff;border:1px solid #1C1B18;color:#1C1B18;
  padding:10px 11px;font-family:inherit;font-size:18px;font-weight:700;
}
.toggle{display:flex;gap:0}
.toggle button{
  flex:1;background:#fff;border:1px solid #1C1B18;border-left-width:0;
  color:#4A4740;padding:10px 8px;font-family:inherit;font-size:15px;cursor:pointer;
}
.toggle button:first-child{border-left-width:1px}
.toggle button[aria-pressed="true"]{background:#1C1B18;color:#F4F2ED;font-weight:700}

/* resultat */
.readout{border-top:2px solid #1C1B18;background:#DDE3EC;padding:20px 18px;display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ro-item .k{font-size:14px;font-weight:700;color:#4A4740;margin-bottom:2px}
.ro-item .v{font-size:52px;line-height:1;font-weight:700;letter-spacing:-.04em}
.ro-item .v small{font-size:17px;font-weight:400;color:#4A4740;margin-left:3px;letter-spacing:0}
.ro-tip{grid-column:1/-1;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:16px;color:#33312B;border-top:1px solid #A8B0BE;padding-top:14px}

/* raccourcis */
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
.chips button{
  background:#F4F2ED;border:1px solid #B8B3A8;padding:7px 11px;
  font-family:inherit;font-size:14px;cursor:pointer;color:#1C1B18;
}
.chips button:hover{border-color:#1C1B18;background:#fff}

/* table */
.tablescroll{overflow-x:auto}
table{width:100%;border-collapse:collapse;font-size:15px}
caption{text-align:left;font-family:Georgia,"Times New Roman",serif;font-style:italic;color:#4A4740;font-size:15px;padding-bottom:10px}
th{text-align:left;font-size:14px;font-weight:700;padding:0 10px 7px 0;border-bottom:2px solid #1C1B18}
td{padding:9px 10px 9px 0;border-bottom:1px solid #CFCBC0;vertical-align:top}
tbody tr:nth-child(even){background:#EFEDE7}
td:nth-child(2),td:nth-child(3){white-space:nowrap;font-variant-numeric:tabular-nums}
td:nth-child(4){color:#4A4740;font-size:14px}

/* methode */
.method{border-left:3px solid #24406B;padding-left:18px;margin-top:4px}
.method p{margin-bottom:14px;max-width:58ch}
.method p:last-child{margin-bottom:0}

/* faq */
details{border-bottom:1px solid #CFCBC0}
details:first-of-type{border-top:1px solid #CFCBC0}
summary{padding:14px 0;cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:baseline}
summary::-webkit-details-marker{display:none}
summary::after{content:"lire";font-weight:400;font-size:14px;color:#24406B;text-decoration:underline;text-underline-offset:3px;flex:none}
details[open] summary::after{content:"replier"}
details p{padding:0 0 16px;max-width:58ch;color:#33312B}

/* recommandations */
.reco{border-top:1px solid #CFCBC0;padding:18px 0}
.reco .cat{font-size:13px;font-weight:700;color:#24406B;margin-bottom:3px}
.reco h3{font-size:18px;font-weight:700;margin-bottom:6px}
.reco p{font-size:15px;color:#33312B;margin-bottom:12px;max-width:56ch}
.reco a{display:inline-block;border:1px solid #1C1B18;background:#F4F2ED;color:#1C1B18;text-decoration:none;padding:8px 14px;font-size:14px;font-weight:700}
.reco a:hover{background:#1C1B18;color:#F4F2ED}

.adslot{border:1px solid #CFCBC0;background:#E3E1DA;min-height:96px;display:flex;align-items:center;justify-content:center;color:#7A766C;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:14px;margin:38px 0}

.disclosure{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:14px;color:#4A4740;margin-top:14px;max-width:58ch}

footer{margin-top:54px;border-top:3px solid #1C1B18;padding:18px 0 44px;font-size:14px;color:#4A4740}
footer .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
footer a{color:#24406B}

@media (max-width:600px){
  h1{font-size:29px}
  .fieldrow{grid-template-columns:1fr}
  .readout{grid-template-columns:1fr;gap:14px}
  .ro-item .v{font-size:44px}
  .toggle{flex-wrap:wrap}
  .toggle button{flex:1 1 100%;border-left-width:1px;border-top-width:0}
  .toggle button:first-child{border-top-width:1px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* --- fiches aliment --- */
.breadcrumb{padding:20px 0 0;font-size:14px;color:#4A4740}
.breadcrumb a{color:#24406B}
.fiche{border:2px solid #1C1B18;background:#F4F2ED;margin-top:24px}
.fiche dl{display:grid;grid-template-columns:1fr 1fr;gap:0}
.fiche dt{padding:12px 16px 2px;font-size:14px;font-weight:700;color:#4A4740}
.fiche dd{padding:0 16px 14px;font-size:30px;font-weight:700;letter-spacing:-.03em}
.fiche dd small{font-size:15px;font-weight:400;color:#4A4740;margin-left:3px;letter-spacing:0}
.fiche .note{grid-column:1/-1;border-top:1px solid #C4C0B6;padding:14px 16px;font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:16px;color:#33312B;font-weight:400}
.rappel{border-left:3px solid #B03A18;padding-left:18px;margin:26px 0}
.rappel p{max-width:56ch}
.voisins{list-style:none;margin-top:8px}
.voisins li{border-bottom:1px solid #CFCBC0;padding:11px 0}
.voisins li a{font-weight:700}
.voisins li span{display:block;font-size:14px;color:#4A4740;font-weight:400}
.retour{display:inline-block;border:1px solid #1C1B18;background:#F4F2ED;color:#1C1B18;text-decoration:none;padding:10px 16px;font-size:15px;font-weight:700;margin-top:6px}
.retour:hover{background:#1C1B18;color:#F4F2ED}
@media (max-width:600px){
  .fiche dl{grid-template-columns:1fr}
  .fiche dd{font-size:26px}
}
