/* Bladi Recettes 0.9 — composant autonome, largeur du conteneur. */
.bladi-recipe{--br-ink:#263b46;--br-muted:#596b76;--br-blue:#173d5d;--br-orange:#996010;--br-accent:#e19d3a;--br-line:#dfe7eb;--br-header-height:60px;--br-shadow:0 6px 22px rgba(23,61,93,.05);container:bladi-recipe/inline-size;margin:24px 0 32px;color:var(--br-ink);font:inherit;line-height:1.6;overflow-wrap:break-word}
.bladi-recipe *{box-sizing:border-box}
.bladi-recipe [hidden]{display:none!important}
.bladi-recipe svg{display:block;width:18px;height:18px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bladi-recipe__sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.bladi-recipe__print-title{display:none}
.bladi-recipe__toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin:0 0 16px;padding:16px;border:1px solid var(--br-line);border-radius:14px;background:#f8fafb}
.bladi-recipe__identity{display:flex;align-items:center;gap:12px;min-width:0}
.bladi-recipe__identity>div{min-width:0}
.bladi-recipe__identity-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:var(--br-blue);color:#fff}
.bladi-recipe__identity-icon svg{width:24px;height:24px}
.bladi-recipe__eyebrow{display:block;margin:0 0 4px;color:var(--br-orange);font-size:12px;font-weight:700;letter-spacing:.06em;line-height:1.2;text-transform:uppercase}
.bladi-recipe__identity strong{display:block;color:var(--br-blue);font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.bladi-recipe__jump{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.bladi-recipe__jump a,.bladi-recipe__jump button,.bladi-recipe__reset,.bladi-recipe__cooking-controls button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid #cbd8df;border-radius:10px;background:#fff;color:var(--br-blue)!important;font:inherit;font-size:14px;font-weight:600;line-height:1.3;text-decoration:none!important;cursor:pointer;transition:background-color .15s,border-color .15s}
.bladi-recipe__jump a:hover,.bladi-recipe__jump button:hover,.bladi-recipe__reset:hover,.bladi-recipe__cooking-controls button:hover{background:#edf3f6;border-color:#8ca4b2;opacity:1}
.bladi-recipe a:focus-visible,.bladi-recipe button:focus-visible,.bladi-recipe input:focus-visible{outline:3px solid var(--br-blue);outline-offset:3px}
.bladi-recipe button:disabled{opacity:.5;cursor:default}
.bladi-recipe__meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:8px;margin:0 0 16px;padding:0}
.bladi-recipe__meta-item{display:flex;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid var(--br-line);border-radius:12px;background:#fff}
.bladi-recipe__meta-item>div{min-width:0}
.bladi-recipe__meta-icon{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:8px;background:#f0f5f7;color:var(--br-blue)}
.bladi-recipe__meta dt{margin:0 0 4px;color:var(--br-muted);font-size:12px;font-weight:600;line-height:1.3}
.bladi-recipe__meta dd{margin:0;color:var(--br-blue);font-size:16px;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.bladi-recipe__layout{display:grid;gap:16px;align-items:start}
.bladi-recipe__ingredients,.bladi-recipe__steps{min-width:0;border:1px solid var(--br-line);border-radius:16px;background:#fff;box-shadow:var(--br-shadow);scroll-margin-top:calc(var(--br-header-height) + 16px)}
.bladi-recipe__section-head{position:relative;margin:0;padding:20px;border-bottom:1px solid var(--br-line);border-radius:15px 15px 0 0;background:#f8fafb}
.bladi-recipe__section-head:before{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;border-radius:2px;background:var(--br-accent)}
.bladi-recipe__steps .bladi-recipe__section-head:before{background:var(--br-blue)}
.bladi-recipe__section-head>span{display:block;margin:0 0 4px;color:var(--br-muted);font-size:12px;font-weight:600;letter-spacing:.05em;line-height:1.3;text-transform:uppercase}
.bladi-recipe__section-head h2{margin:0;color:var(--br-blue);font-size:24px;font-weight:700;line-height:1.2;letter-spacing:-.02em}
.bladi-recipe__ingredient-group,.bladi-recipe__step-group{padding:16px 20px}
.bladi-recipe__ingredient-group+.bladi-recipe__ingredient-group,.bladi-recipe__step-group+.bladi-recipe__step-group{padding-top:0}
.bladi-recipe h3{margin:0 0 12px;color:var(--br-blue);font-size:16px;font-weight:700;line-height:1.4}
.bladi-recipe__ingredient-group h3,.bladi-recipe__ingredient-subtitle{margin:4px 0 8px!important;padding:8px 12px!important;border-radius:8px;background:#fff5e5;color:#76511b!important;font-size:14px!important;text-transform:none!important}
.bladi-recipe__ingredients ul,.bladi-recipe__steps ol{margin:0;padding:0;list-style:none}
.bladi-recipe__ingredients li{margin:0;padding:0;border-bottom:1px solid #edf1f3;color:var(--br-ink);font-size:16px;line-height:1.5}
.bladi-recipe__ingredients li:last-child{border-bottom:0}
.bladi-recipe__check{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;min-height:44px;padding:10px 0;cursor:pointer;font:inherit}
.bladi-recipe__check input{width:18px;height:18px;margin:3px 0 0;padding:0;accent-color:var(--br-blue)}
.bladi-recipe__check input:checked+span{color:var(--br-muted);text-decoration:line-through}
.bladi-recipe__reset{margin:0 20px 16px;font-size:13px;max-width:calc(100% - 40px)}
.bladi-recipe__steps li{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;margin:0;padding:0 0 24px;scroll-margin-top:calc(var(--br-header-height) + 16px)}
.bladi-recipe__steps li:last-child{padding-bottom:0}
.bladi-recipe__steps li:not(:last-child):after{content:"";position:absolute;left:19px;top:40px;bottom:0;width:2px;background:#e2e9ed}
.bladi-recipe__step-number{position:relative;z-index:1;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--br-blue);color:#fff;font-size:14px;font-weight:700;line-height:1}
.bladi-recipe__step-content{min-width:0;padding-top:4px}
.bladi-recipe__step-content h4{margin:0 0 8px;color:var(--br-blue);font-size:17px;font-weight:700;line-height:1.35}
.bladi-recipe__step-text{color:var(--br-ink);font-size:16px;line-height:1.65}
.bladi-recipe__step-time{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:4px 8px;border-radius:8px;background:#edf3f6;color:#3f5969;font-size:13px;font-weight:600}
.bladi-recipe__step-time svg{width:16px;height:16px}
.bladi-recipe__cooking-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:16px 20px;border-top:1px solid var(--br-line);font-size:14px;line-height:1.4}
.bladi-recipe__cooking-controls span{text-align:center}
.bladi-recipe--cooking .bladi-recipe__steps li:not(.is-current),.bladi-recipe--cooking .bladi-recipe__step-group:not(.is-current-group){display:none}
.bladi-recipe--cooking .bladi-recipe__steps li:after{display:none}
.bladi-recipe--cooking .bladi-recipe__step-text{font-size:19px;line-height:1.7}
@container bladi-recipe (min-width:800px){.bladi-recipe__layout{grid-template-columns:minmax(280px,.8fr) minmax(0,1.4fr);gap:24px}.bladi-recipe--sticky .bladi-recipe__ingredients{position:sticky;top:calc(var(--br-header-height) + 16px)}}
@container bladi-recipe (max-width:520px){.bladi-recipe__toolbar{padding:12px;gap:12px}.bladi-recipe__jump{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.bladi-recipe__jump a,.bladi-recipe__jump button{padding:8px;font-size:13px}.bladi-recipe__section-head{padding:16px}.bladi-recipe__ingredient-group,.bladi-recipe__step-group{padding:16px}.bladi-recipe__steps li{grid-template-columns:36px minmax(0,1fr);gap:12px}.bladi-recipe__step-number{width:36px;height:36px}.bladi-recipe__steps li:not(:last-child):after{left:17px;top:36px}.bladi-recipe__reset{margin-left:16px;max-width:calc(100% - 32px)}.bladi-recipe__cooking-controls{padding:12px;flex-wrap:wrap}.bladi-recipe__cooking-controls span{order:-1;width:100%}}
@media(prefers-reduced-motion:reduce){.bladi-recipe *{transition:none!important;scroll-behavior:auto!important}}
@media print{[data-recipe-print-hidden]{display:none!important}[data-recipe-print-path]{position:static!important;display:block!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;overflow:visible!important;box-shadow:none!important;background:#fff!important}body.bladi-recipe-print{margin:0!important;background:#fff!important;color:#000!important}.bladi-recipe{font-size:11pt!important;container-type:normal!important}.bladi-recipe__print-title{display:block!important;margin:0 0 16px;font-size:20pt;color:#000}.bladi-recipe__jump,.bladi-recipe__reset,.bladi-recipe__cooking-controls,.bladi-recipe__identity-icon{display:none!important}.bladi-recipe__layout{display:block!important}.bladi-recipe__ingredients{position:static!important;margin-bottom:16px}.bladi-recipe__toolbar,.bladi-recipe__meta-item,.bladi-recipe__ingredients,.bladi-recipe__steps{box-shadow:none!important;background:#fff!important}.bladi-recipe__steps li,.bladi-recipe__meta-item{break-inside:avoid}.bladi-recipe__section-head,h3,h4{break-after:avoid}.bladi-recipe--cooking .bladi-recipe__steps li{display:grid!important}.bladi-recipe--cooking .bladi-recipe__step-group{display:block!important}.bladi-recipe__check{display:block;min-height:0;padding:6px 0}.bladi-recipe__check input{display:none}.bladi-recipe__check input:checked+span{text-decoration:none;color:inherit}.bladi-recipe__step-text,.bladi-recipe--cooking .bladi-recipe__step-text{font-size:11pt!important;line-height:1.5!important}}
