/* D.3.2 — Recuperación Integral del Sandbox real. Capa visual externa; sin lógica de producción. */
:root{--ysbx-bg:#f4f7ef;--ysbx-card:#fffdf8;--ysbx-ink:#17221b;--ysbx-dim:#526257;--ysbx-line:#dbe3d7;--ysbx-green:#23432b;--ysbx-green-2:#527842;--ysbx-soft:#edf4e7;--ysbx-warn:#fff3e3;--ysbx-warn-ink:#76501f;--ysbx-blue:#eaf2fb;--ysbx-blue-ink:#21496c;--ysbx-shadow:0 .8rem 2.5rem rgba(31,50,37,.08)}
.yb-richtext:has(.ysbx-root),.yb-node-content:has(.ysbx-root){font-size:1rem!important;line-height:1.5!important;color:var(--ysbx-ink)!important;-webkit-text-fill-color:currentColor!important;width:100%!important;max-width:none!important;white-space:normal!important;word-break:normal!important}
.yb-richtext .ysbx-root *,.yb-node-content .ysbx-root *{box-sizing:border-box}
.ysbx-root{container-type:inline-size;width:100%;max-width:92rem;margin-inline:auto;color:var(--ysbx-ink);font-family:Inter,system-ui,sans-serif}
.ysbx-root a{color:inherit}.ysbx-shell{display:grid;grid-template-columns:minmax(14rem,17rem) minmax(0,1fr);gap:1rem;align-items:start}
.ysbx-side{position:sticky;top:5.6rem;display:grid;gap:.35rem;padding:.7rem;border:.0625rem solid var(--ysbx-line);border-radius:1.2rem;background:rgba(255,253,248,.97);box-shadow:var(--ysbx-shadow);max-height:52rem;overflow:auto}
.ysbx-side a{display:flex;align-items:center;gap:.65rem;padding:.68rem .75rem;border-radius:.8rem;text-decoration:none;color:var(--ysbx-dim);font-size:.86rem}.ysbx-side a:hover,.ysbx-side a:focus-visible{background:var(--ysbx-soft);color:var(--ysbx-green)}.ysbx-side a.is-active{background:var(--ysbx-green);color:white;font-weight:800}.ysbx-side svg{width:1.05rem;height:1.05rem;flex:none}
.ysbx-side-section{margin:.5rem .35rem .15rem;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#758278}.ysbx-side .ysbx-library-link{background:var(--ysbx-blue);color:var(--ysbx-blue-ink);font-weight:800}.ysbx-side .ysbx-journey-link{background:var(--ysbx-soft);color:var(--ysbx-green);font-weight:800}.ysbx-finish{border-top:.0625rem solid var(--ysbx-line);padding-top:.65rem;margin-top:.35rem}.ysbx-finish button{width:100%}
.ysbx-main{min-width:0}.ysbx-mobile-nav{display:none;gap:.4rem;overflow:auto;padding:.1rem 0 .75rem}.ysbx-mobile-nav a{white-space:nowrap;border:.0625rem solid var(--ysbx-line);border-radius:99rem;padding:.45rem .7rem;text-decoration:none;font-size:.76rem;background:var(--ysbx-card)}.ysbx-mobile-nav a.is-active{background:var(--ysbx-green);color:white}
.ysbx-hero{position:relative;overflow:hidden;border-radius:1.55rem;background:linear-gradient(135deg,#1e3826,#557746);color:white;padding:clamp(1.25rem,4cqi,2.4rem);box-shadow:var(--ysbx-shadow);margin-bottom:1rem}.ysbx-hero:after{content:"";position:absolute;inset:auto -12% -55% 42%;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.08);pointer-events:none}.ysbx-hero h1{margin:.35rem 0 .55rem;color:white;font-family:Fraunces,serif;font-size:clamp(2rem,5cqi,3.5rem);line-height:1.05}.ysbx-hero p{max-width:58rem;margin:.3rem 0 1rem;line-height:1.62;color:#f7fff8}.ysbx-kicker{font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#d8ead1}.ysbx-meta{display:flex;gap:.45rem;flex-wrap:wrap}.ysbx-meta span{padding:.34rem .58rem;border-radius:99rem;background:rgba(255,255,255,.14);font-size:.74rem;font-weight:700}
.ysbx-command{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(8rem,.65fr));gap:.7rem;margin-bottom:1rem}.ysbx-command-main,.ysbx-mini{border:.0625rem solid var(--ysbx-line);background:var(--ysbx-card);border-radius:1.05rem;padding:.9rem 1rem}.ysbx-command-main{display:flex;justify-content:space-between;gap:1rem;align-items:center}.ysbx-command-main strong{display:block;font-size:1rem}.ysbx-command-main span,.ysbx-mini small{color:var(--ysbx-dim);font-size:.76rem}.ysbx-mini strong{display:block;color:var(--ysbx-green);font-size:1.06rem;margin-bottom:.15rem}.ysbx-status-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:99rem;padding:.32rem .58rem;background:var(--ysbx-soft);color:var(--ysbx-green);font-size:.72rem;font-weight:900}.ysbx-status-pill:before{content:"";width:.45rem;height:.45rem;border-radius:50%;background:#4d8b4e}.ysbx-status-pill.is-warning{background:var(--ysbx-warn);color:var(--ysbx-warn-ink)}.ysbx-status-pill.is-warning:before{background:#b87a2b}
.ysbx-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin:1rem 0 .8rem}.ysbx-section-head h2{margin:0;color:var(--ysbx-ink);font-family:Fraunces,serif;font-size:clamp(1.45rem,3cqi,2rem)}.ysbx-section-head p{max-width:58rem;margin:.25rem 0 0;color:var(--ysbx-dim);line-height:1.6}.ysbx-actions{display:flex;gap:.5rem;flex-wrap:wrap}
.ysbx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:.8rem}.ysbx-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.ysbx-card{border:.0625rem solid var(--ysbx-line);background:var(--ysbx-card);border-radius:1.1rem;padding:1rem;box-shadow:0 .35rem 1.4rem rgba(31,50,37,.035)}.ysbx-card h3{margin:.15rem 0 .5rem;color:var(--ysbx-green);font-family:Fraunces,serif;font-size:1.08rem}.ysbx-card p,.ysbx-card li{color:var(--ysbx-dim);line-height:1.58}.ysbx-card ul{padding-left:1.1rem}.ysbx-card strong.ysbx-value{display:block;font-size:1.2rem;color:var(--ysbx-ink);overflow-wrap:anywhere}.ysbx-card small{color:var(--ysbx-dim)}
.ysbx-data-card{display:grid;gap:.6rem}.ysbx-data-top{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}.ysbx-data-state{font-size:.68rem;font-weight:900;border-radius:99rem;padding:.27rem .5rem;background:var(--ysbx-soft);color:var(--ysbx-green)}.ysbx-data-state.is-unknown{background:var(--ysbx-warn);color:var(--ysbx-warn-ink)}.ysbx-data-source{padding-top:.55rem;border-top:.0625rem solid var(--ysbx-line);font-size:.74rem;color:var(--ysbx-dim)}.ysbx-data-action{font-size:.78rem;color:var(--ysbx-blue-ink);background:var(--ysbx-blue);border-radius:.7rem;padding:.58rem .65rem}
.ysbx-library-open,.ysbx-journey-start{border:0;border-radius:.8rem;padding:.62rem .8rem;font:inherit;font-weight:800;cursor:pointer}.ysbx-library-open{background:var(--ysbx-blue);color:var(--ysbx-blue-ink)}.ysbx-journey-start{background:var(--ysbx-green);color:white}.ysbx-library-open:hover,.ysbx-journey-start:hover{filter:brightness(.97)}
.ysbx-banner{display:flex;gap:.8rem;align-items:flex-start;border-radius:1rem;padding:.9rem 1rem;margin:.8rem 0;background:var(--ysbx-soft);color:var(--ysbx-green)}.ysbx-banner.is-protected{background:#f6eee4;color:#624626}.ysbx-banner svg{width:1.2rem;height:1.2rem;flex:none}.ysbx-banner p{margin:0;line-height:1.55}
.ysbx-timeline{display:grid;gap:.65rem}.ysbx-step{display:grid;grid-template-columns:minmax(5.2rem,7rem) minmax(0,1fr);gap:.8rem;border:.0625rem solid var(--ysbx-line);background:var(--ysbx-card);border-radius:1rem;padding:.85rem}.ysbx-step>strong{color:var(--ysbx-green)}.ysbx-step h3{margin:0 0 .25rem;font-size:1rem}.ysbx-step p{margin:0;color:var(--ysbx-dim)}
.ysbx-journey-phases{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:.6rem;counter-reset:phase}.ysbx-phase{counter-increment:phase;border:.0625rem solid var(--ysbx-line);border-radius:1rem;padding:.8rem;background:var(--ysbx-card)}.ysbx-phase:before{content:counter(phase);display:grid;place-items:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--ysbx-green);color:white;font-size:.72rem;font-weight:900;margin-bottom:.5rem}.ysbx-phase strong{display:block}.ysbx-phase small{color:var(--ysbx-dim)}
.ysbx-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:.7rem}.ysbx-library-card{display:flex;flex-direction:column;gap:.5rem;border:.0625rem solid #cbdceb;background:linear-gradient(145deg,#f7fbff,#eef5fb);border-radius:1rem;padding:.9rem}.ysbx-library-card strong{color:var(--ysbx-blue-ink)}.ysbx-library-card p{margin:0;color:#496276;font-size:.82rem;line-height:1.5}.ysbx-library-card button{margin-top:auto}
.ysbx-climate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));gap:.65rem}.ysbx-climate-card{border:.0625rem solid var(--ysbx-line);background:var(--ysbx-card);border-radius:1rem;padding:.85rem}.ysbx-climate-card strong{display:block;font-size:1.15rem}.ysbx-climate-card small{color:var(--ysbx-dim)}.ysbx-horizontal{display:flex;gap:.65rem;overflow:auto;padding-bottom:.3rem}.ysbx-horizontal>.ysbx-climate-card{min-width:10rem}.ysbx-climate-source{font-size:.75rem;color:var(--ysbx-dim);margin:.65rem 0 0}.ysbx-climate-source a{color:var(--ysbx-blue-ink)}.ysbx-loading{display:flex;gap:.55rem;align-items:center;color:var(--ysbx-dim)}.ysbx-loading:before{content:"";width:.7rem;height:.7rem;border-radius:50%;background:var(--ysbx-green-2);animation:ysbx-pulse .8s infinite alternate}@keyframes ysbx-pulse{to{opacity:.25}}
.ysbx-result-engine{border-left:.25rem solid var(--ysbx-green-2)}.ysbx-result-engine.is-blocked{border-left-color:#ad4b34}.ysbx-note{border-radius:.85rem;padding:.75rem .85rem;background:var(--ysbx-soft);color:var(--ysbx-green);line-height:1.55}.ysbx-protected{border-radius:.85rem;padding:.75rem .85rem;background:var(--ysbx-warn);color:var(--ysbx-warn-ink);line-height:1.55}
.ysbx-ai-grid{display:grid;gap:.65rem}.ysbx-ai-q{width:100%;text-align:left;border:.0625rem solid var(--ysbx-line);border-radius:.8rem;background:white;padding:.72rem;font:inherit;font-weight:700;cursor:pointer}.ysbx-ai-answer{margin-top:.55rem;padding:.7rem;border-radius:.8rem;background:var(--ysbx-soft);color:var(--ysbx-dim)}
.ysbx-root .yolia-d2-journey,.ysbx-root .yolia-d3-journey{margin:0 0 1rem;border-radius:1.2rem;box-shadow:var(--ysbx-shadow)}
html[dir="rtl"] .ysbx-root{text-align:right}html[dir="rtl"] .ysbx-card ul{padding-left:0;padding-right:1.1rem}
@container (max-width:64rem){.ysbx-command{grid-template-columns:repeat(3,minmax(0,1fr))}.ysbx-command-main{grid-column:1/-1}.ysbx-grid.two{grid-template-columns:1fr}}
@container (max-width:50rem){.ysbx-shell{grid-template-columns:1fr}.ysbx-side{display:none}.ysbx-mobile-nav{display:flex}.ysbx-command{grid-template-columns:1fr 1fr}.ysbx-command-main{grid-column:1/-1}.ysbx-step{grid-template-columns:1fr}}
@container (max-width:32rem){.ysbx-command{grid-template-columns:1fr}.ysbx-grid.two{grid-template-columns:1fr}.ysbx-hero{border-radius:1.1rem}}

.ysbx-block-gap{margin-top:.8rem}.ysbx-choice{display:flex;gap:.55rem;align-items:flex-start;border:.0625rem solid var(--ysbx-line);border-radius:.85rem;padding:.75rem;background:var(--ysbx-card);color:var(--ysbx-dim)}.ysbx-choice input{margin-top:.2rem}.ysbx-range{margin:.8rem 0}.ysbx-range label{display:grid;gap:.35rem;font-weight:700}.ysbx-range input{width:100%}
/* D.3.3 — continuidad real del proceso de Laboratorio */
.ysbx-lab-journey{margin:0 0 1rem;border:.0625rem solid var(--ysbx-line);border-radius:1.2rem;background:linear-gradient(145deg,#f8fbf5,#fffdf8);padding:1rem;box-shadow:var(--ysbx-shadow)}
.ysbx-lab-progress{height:.6rem;border-radius:99rem;background:var(--ysbx-line);overflow:hidden}.ysbx-lab-progress>span{display:block;height:100%;width:var(--ysbx-progress,0%);background:linear-gradient(90deg,var(--ysbx-green),var(--ysbx-green-2));transition:width .2s ease}
.ysbx-lab-journey .ysbx-phase.is-current{border-color:var(--ysbx-green);box-shadow:inset 0 0 0 .0625rem var(--ysbx-green);background:var(--ysbx-soft)}.ysbx-lab-journey .ysbx-phase.is-done{opacity:.78}.ysbx-lab-journey .ysbx-phase.is-done:before{content:"✓"}.ysbx-lab-journey form{margin:0}.ysbx-lab-journey .ysbx-actions form{display:inline-flex}
