:root{--ink:#142c39;--green:#08754b;--muted:#52646d;--line:#dce5e6;--pale:#f2f7f6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:1rem/1.7 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#fff}a{color:var(--green);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible{outline:3px solid #eea929;outline-offset:5px}.skip{position:absolute;left:1rem;top:-6rem;background:#fff;padding:1rem;z-index:5}.skip:focus{top:0}header{border-bottom:1px solid var(--line)}.bar{max-width:1180px;margin:auto;padding:1.25rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{font-size:1.3rem;font-weight:800;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:.7rem}.mark{display:grid;place-items:center;width:36px;height:36px;background:var(--green);color:#fff;border-radius:8px;font-size:1rem}nav{display:flex;gap:1.75rem;flex-wrap:wrap}nav a{font-size:.95rem;color:var(--ink);text-decoration:none}nav a[aria-current]{color:var(--green);font-weight:700;border-bottom:2px solid var(--green)}main{max-width:1180px;margin:auto;padding:2.5rem 2rem 5rem}.eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}h1{font-size:clamp(2.2rem,5vw,4.2rem);line-height:1.08;letter-spacing:-.045em;margin:.8rem 0 1.2rem;max-width:850px}h2{font-size:1.65rem;line-height:1.25;margin:2rem 0 1rem;letter-spacing:-.02em}h3{font-size:1.15rem;line-height:1.4}p{margin:0 0 1.25rem}.lead{font-size:1.2rem;color:var(--muted);max-width:670px}.hero{padding:1.5rem 0 3rem;border-bottom:1px solid var(--line)}.actions{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0}.button{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 1.2rem;background:var(--green);color:white;border-radius:6px;font-weight:650;text-decoration:none}.button:hover{background:#065c3b}.button.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.section-top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-top:2rem}.section-top h2{margin:0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:1.5rem 0}.card{border:1px solid var(--line);border-radius:12px;padding:1.7rem;display:flex;flex-direction:column;align-items:flex-start}.card h3{font-size:1.5rem;margin:.6rem 0 .8rem}.card p{color:var(--muted)}.card .button{margin-top:auto}.tag{font-size:.8rem;font-weight:700;color:var(--green);background:#eaf6ef;padding:.2rem .55rem;border-radius:4px}.mini{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.mini a{display:block;border-top:3px solid var(--green);padding:1rem 0;text-decoration:none;color:var(--ink)}.mini p{color:var(--muted);font-size:.95rem}.crumb{font-size:.9rem;color:var(--muted);margin:0 0 1.5rem}.article-layout{display:grid;grid-template-columns:minmax(0,780px) 240px;gap:3rem}.article h1{font-size:clamp(2rem,4vw,3rem)}.article li{margin:.45rem 0}.article p,.article li{max-width:75ch}.article table{border-collapse:collapse;width:100%;font-size:.9rem;display:block;overflow:auto;margin:1.5rem 0}.article th,.article td{border-bottom:1px solid var(--line);padding:.7rem;text-align:left;white-space:nowrap}.article th{background:var(--pale)}pre{background:#132c39;color:#eaf7ef;padding:1.25rem;border-radius:8px;overflow:auto;font-size:.9rem}code{font-family:Consolas,monospace}p code,li code{background:var(--pale);padding:.1rem .25rem;border-radius:3px}.sidebar{align-self:start;border-left:1px solid var(--line);padding-left:1.5rem;font-size:.9rem}.sidebar h2{font-size:1rem;margin-top:0}.sidebar a{display:block;margin:.8rem 0}.preview{margin:2rem 0;padding:1rem;background:var(--pale);border-radius:10px}.preview img{width:100%;height:auto;display:block;border:1px solid var(--line)}.preview figcaption{font-size:.85rem;color:var(--muted);margin:.7rem 0 0}.notice{padding:1rem 1.25rem;background:#f3f7fa;border-left:3px solid #486c8a;color:#395364;font-size:.9rem;margin:1.5rem 0}.index-title{font-size:clamp(2rem,4vw,3.2rem)}footer{background:var(--ink);color:#dce9ec}footer .inner{max-width:1180px;margin:auto;padding:2rem;display:flex;justify-content:space-between;gap:2rem}footer a{color:#fff}.footnote{font-size:.85rem;color:#b6c9cf;max-width:580px}details{border-bottom:1px solid var(--line);padding:1rem 0}summary{cursor:pointer;font-weight:700}@media(max-width:800px){.bar{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem 1.25rem}nav{gap:1.1rem}main{padding:2rem 1.25rem 3rem}.grid,.mini,.article-layout{grid-template-columns:1fr}.sidebar{border-left:0;border-top:1px solid var(--line);padding:1.5rem 0}.hero{padding-top:.5rem}.section-top{align-items:flex-start;flex-direction:column;gap:.5rem}footer .inner{flex-direction:column;padding:2rem 1.25rem}.card{padding:1.3rem}}
body{background:#f6f8fb;color:#182b42}header{background:white}.bar{padding:1.2rem 2rem;max-width:1240px}.brand{letter-spacing:-.04em}.mark{background:#16774f;border-radius:10px;box-shadow:0 4px 12px #16774f25}main{max-width:1240px;padding-top:2rem}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:3rem;align-items:center;border:0;padding:3rem;border-radius:24px;background:#e8f3ed;position:relative;margin-bottom:3rem}.hero h1{font-size:clamp(2.5rem,4.5vw,4.5rem);max-width:600px;margin-top:1rem;color:#163b2d}.hero h1 em{font-style:normal;color:#168052}.hero .lead{font-size:1.1rem;line-height:1.8;color:#496457}.eyebrow{letter-spacing:.08em;font-size:.78rem}.pill{display:inline-flex;align-items:center;background:white;border:1px solid #c7e1d2;border-radius:100px;padding:.35rem .8rem;color:#276346;font-size:.83rem;font-weight:650}.hero-foot{font-size:.86rem;color:#486858;margin-top:1.2rem}.button{border-radius:9px;padding:.85rem 1.25rem;box-shadow:0 3px 7px #173c2810}.button.secondary{background:transparent;border-color:#b8cfc2}.sheet-demo{background:#fff;border:1px solid #b7d6c3;border-radius:14px;overflow:hidden;box-shadow:0 22px 40px #17432a18;transform:rotate(-2deg)}.sheet-top{background:#16774f;color:white;padding:.9rem 1.1rem;display:flex;align-items:center;justify-content:space-between;font-size:.88rem}.sheet-top strong{font-size:1rem}.sheet-kpis{display:grid;grid-template-columns:repeat(3,1fr);padding:1.3rem;gap:.8rem}.sheet-kpis span{display:block;font-size:.7rem;color:#66796a}.sheet-kpis b{font-size:1.6rem;color:#163c2d}.sheet-demo table{width:calc(100% - 2rem);margin:0 1rem 1.2rem;border-collapse:collapse;font-size:.77rem}.sheet-demo th{background:#edf5f0;color:#426a52;font-weight:600;text-align:left}.sheet-demo th,.sheet-demo td{padding:.7rem .45rem;border-bottom:1px solid #e1e9e4}.status{display:inline-block;color:#23784e;background:#e5f4e9;border-radius:5px;padding:.12rem .4rem;font-size:.7rem}.status.amber{background:#fff1d2;color:#896119}.sheet-formula{border-top:1px solid #e2eae5;padding:.65rem 1rem;font: .75rem/1.5 Consolas,monospace;background:#f9fcfa;color:#48614f}.demo-caption{color:#4f6c5c;font-size:.78rem;text-align:center;margin-top:1.25rem}.section-top span{color:#617182;font-size:.9rem}.card{background:white;box-shadow:0 5px 18px #1c334707;border:1px solid #e2e8ef;border-radius:16px;padding:0;overflow:hidden;transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #1c334710}.card-body{padding:1.6rem;display:flex;flex-direction:column;align-items:flex-start;flex:1}.card h3{font-size:1.45rem;letter-spacing:-.025em;margin-top:.7rem}.card-visual{width:100%;height:170px;background:#e6f2ec;padding:1.25rem 2rem;overflow:hidden}.card-visual img{width:100%;height:100%;object-fit:cover;object-position:left top;border-radius:7px;border:1px solid #c4d8cd;box-shadow:0 7px 15px #244b3620}.formula-visual{background:#e9eefb;display:flex;flex-direction:column;justify-content:center;gap:.6rem;color:#355399}.formula-visual .formula-label{font-size:.72rem;letter-spacing:.1em;font-weight:700}.formula-visual code{font-size:1.15rem;font-weight:700;word-break:break-word}.formula-example{font-size:.85rem;color:#536b99}.tag{background:#eff7f1;font-size:.75rem}.card .button{margin-top:.5rem}.mini{background:#fff;border:1px solid #e0e8ed;border-radius:16px;padding:0 1.5rem;margin-top:1.5rem;gap:2rem}.mini a{border:0;padding:1.5rem 0}.mini h3{margin:.5rem 0;font-size:1.15rem}.mini p{margin:0}.mini .number{font-size:.8rem;font-weight:700;color:#1a8254}.article-layout{background:white;border:1px solid #e0e8ed;border-radius:18px;padding:2.5rem;grid-template-columns:minmax(0,1fr) 230px}.article h1{color:#183d2e}.article h2{margin-top:2.5rem}.article a:not(.button){font-weight:550}.preview{padding:.6rem}.sidebar .notice{border-radius:8px}.index-title{margin-top:.8rem}footer{background:#132d24;margin-top:1rem}.footnote{color:#b9d1c5}footer .inner{max-width:1240px;padding:2.5rem 2rem}.crumb{font-size:.85rem}.grid{gap:1.6rem;margin:1.5rem 0 3rem}@media(max-width:950px){.hero{gap:1.5rem;padding:2rem}.sheet-demo{transform:none}.article-layout{padding:1.5rem;gap:1.5rem;grid-template-columns:minmax(0,1fr) 190px}}@media(max-width:800px){.hero{grid-template-columns:1fr;padding:1.6rem;gap:1.5rem;border-radius:18px}.hero h1{font-size:2.7rem}.bar{padding:1rem 1.25rem}.sheet-demo{max-width:550px}.mini{gap:0}.mini a{border-bottom:1px solid #e0e8ed}.mini a:last-child{border:0}.article-layout{grid-template-columns:1fr;padding:1.25rem}.card-visual{height:150px}.hero-foot{margin-bottom:0}main{padding-top:1.25rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}
.catalog-controls{background:#fff;border:1px solid #dce7e1;border-radius:18px;padding:1.5rem;margin:1.5rem 0}.catalog-controls>label{display:block;font-size:1.15rem;font-weight:700;margin-bottom:.65rem}.catalog-search{display:flex;align-items:center;gap:.75rem}.catalog-search input{flex:1;min-width:0;width:100%;margin:0;min-height:48px;background:#f7faf8;border:1px solid #a6bfb1;border-radius:10px;padding:.8rem 1rem;font:inherit}.catalog-reset{border:0;background:transparent;color:#087b51;font:inherit;font-weight:650;cursor:pointer;padding:.7rem;min-height:44px}.catalog-categories{border:0;padding:0;margin:1.2rem 0 0;min-width:0}.catalog-categories legend{font-size:.9rem;color:#52675d;margin-bottom:.6rem}.catalog-chips{display:flex;flex-wrap:wrap;gap:.55rem}.catalog-chips button{border:1px solid #bed1c6;border-radius:999px;background:white;color:#244436;min-height:44px;padding:.6rem 1rem;font:inherit;font-size:.9rem;cursor:pointer}.catalog-chips button[aria-pressed="true"]{background:#087b51;border-color:#087b51;color:white;font-weight:700}.catalog-controls :focus-visible{outline:3px solid #c59320;outline-offset:3px}.catalog-summary{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:1.1rem}.catalog-summary p{margin:0;font-weight:650}.catalog-summary span{font-size:.85rem;color:#52675d}.catalog-grid>.card{padding:1.5rem;display:flex;flex-direction:column;align-items:flex-start;min-width:0}.catalog-grid>.card h2{font-size:1.3rem;line-height:1.35;margin:.85rem 0 .6rem;letter-spacing:-.02em}.catalog-grid>.card p{margin:0 0 1rem}.catalog-grid>.card .button{margin-top:auto}.catalog-empty h2{font-size:1.25rem;margin:0 0 .5rem}.catalog-grid>[hidden],.catalog-controls [hidden],.catalog-empty[hidden]{display:none!important}@media(max-width:600px){.catalog-controls{padding:1.1rem}.catalog-search{align-items:stretch;flex-direction:column}.catalog-reset{align-self:flex-start;padding-left:0}.catalog-chips{gap:.5rem}.catalog-chips button{padding:.6rem .85rem}.catalog-summary{align-items:flex-start;flex-direction:column}.catalog-grid>.card{padding:1.25rem}.catalog-grid>.card .button{width:100%;text-align:center}}
.budget-steps{padding-left:1.5rem}.budget-steps li{padding:.5rem 0 .7rem .3rem}.budget-steps h3{font-size:1.1rem;margin:.3rem 0}.budget-steps p{margin:.5rem 0}.budget-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0}.budget-results>div{background:#edf7f1;border:1px solid #c7dfd1;border-radius:14px;padding:1.2rem}.budget-results span{display:block;font-size:.9rem;color:#365848}.budget-results strong{display:block;font-size:2rem;color:#116444;margin:.4rem 0}.budget-results p{margin:0}.budget-download{background:#edf7f1;border:1px solid #c7dfd1;border-radius:16px;padding:1.5rem;margin:2rem 0}.budget-download h2{margin-top:0}.budget-download .footnote{color:#365848}@media(max-width:550px){.budget-results{grid-template-columns:1fr}.budget-download{padding:1.1rem}.budget-download .button{width:100%;text-align:center}}.route-final-exercise{scroll-margin-top:110px}.route-final-exercise details{margin-top:1rem}.route-final-exercise summary{cursor:pointer;font-weight:700}footer button{background:none;border:0;color:inherit;text-decoration:underline;font:inherit;cursor:pointer;padding:.4rem;min-height:44px}footer button[hidden]{display:none}
input[type=search],select{display:block;width:100%;max-width:560px;padding:.85rem;border:1px solid var(--line);border-radius:8px;margin:.5rem 0 1rem;font:inherit}details{border-bottom:1px solid var(--line);padding:1rem 0}summary{cursor:pointer;font-weight:650}.article table{max-width:100%}[hidden]{display:none!important}

.grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.card{min-width:0;width:100%}
.card:not(:has(.card-body)){padding:1.6rem}
.card-body{width:100%;min-width:0}
.card h3,.card p{overflow-wrap:anywhere}
.card .button{margin-top:auto}
.card p{margin-bottom:1.5rem}
.card .tag{margin-bottom:.15rem}
.hero:has(>h1){display:block}
.hero-visual{min-width:0}
main{width:100%;min-width:0}
@media(max-width:800px){.grid{grid-template-columns:minmax(0,1fr)}.card:not(:has(.card-body)){padding:1.3rem}}

.workbook-preview{margin:2rem 0;border:1px solid #c9dcd1;border-radius:14px;background:#fff;padding:1.2rem;min-width:0}.workbook-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.workbook-heading h2{margin:.3rem 0 1rem}.sheet-tabs{display:flex;gap:.4rem;overflow:auto;border-bottom:1px solid #c9dcd1;padding:.5rem 0}.sheet-tabs button{font:inherit;padding:.55rem 1rem;border:1px solid #c9dcd1;background:#f2f7f6;border-radius:8px 8px 0 0;cursor:pointer;white-space:nowrap;color:#183d2e}.sheet-tabs button[aria-selected=true]{background:#08754b;color:#fff}.sheet-scroll{overflow:auto;max-height:420px}.article .workbook-table,.workbook-table{display:table;width:max-content;min-width:100%;border-collapse:collapse;margin:0;font: .85rem/1.5 system-ui}.workbook-table td,.workbook-table th{border:1px solid #dce5e6;padding:.65rem .8rem;max-width:420px;white-space:normal;min-width:90px}.workbook-table thead th,.workbook-table tbody th{background:#edf4ef;color:#567062;text-align:center;min-width:38px}.workbook-table tbody tr:first-child td{background:#08754b;color:white;font-weight:700}.workbook-table .formula-cell{background:#eef1f5;color:#52646d;white-space:nowrap}.preview-caption{font-size:.82rem;color:#52646d;margin:1rem 0 0}.preview-dialog{width:min(1400px,96vw);max-height:92vh;border:0;border-radius:16px;padding:1.3rem;box-shadow:0 20px 90px #0005}.preview-dialog::backdrop{background:#142c39bb}.preview-dialog .workbook-preview{margin:1rem 0}.preview-dialog .sheet-scroll{max-height:65vh}.preview-dialog img{max-width:100%;height:auto}.dialog-close{display:block;margin-left:auto}.image-preview-button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.image-preview-button:focus-visible{outline:3px solid #eea929}@media(max-width:600px){.workbook-preview{padding:.8rem}.workbook-heading .button{width:100%}}
.template-ficha{border:1px solid #c8dfd0;border-radius:16px;background:#fff;padding:1.5rem;margin:1.8rem 0 2.5rem;min-width:0}.ficha-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.4rem;align-items:center}.article .template-ficha h2{margin:.4rem 0 .8rem;font-size:1.4rem}.ficha-cta{display:flex;flex-direction:column;gap:.6rem;max-width:310px}.ficha-cta span{font-size:.78rem;color:#52646d}.ficha-download{text-align:center}.ficha-meta{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:1rem;border-top:1px solid #dce5e6;border-bottom:1px solid #dce5e6;padding:1.1rem 0;margin:1rem 0}.ficha-meta dt{font-size:.78rem;color:#52646d}.ficha-meta dd{margin:.25rem 0 0;font-weight:650;font-size:.9rem}.ficha-table{overflow:auto}.article .ficha-table table{display:table;margin:.6rem 0 1.1rem;min-width:480px}.ficha-table td,.ficha-table th{white-space:normal}.ficha-protect{background:#fff6de;padding:.9rem 1rem;border-radius:8px;font-size:.9rem}.ficha-example{background:#edf7f0;border-radius:10px;padding:1rem 1.2rem;margin:1.3rem 0}.ficha-example h3{margin:0 0 .5rem}.ficha-example p{margin:0}.ficha-note{font-size:.8rem;color:#52646d;margin:1rem 0 0}@media(max-width:1000px){.ficha-top{grid-template-columns:minmax(0,1fr)}.ficha-cta{max-width:none}.ficha-meta{grid-template-columns:1fr}}@media(max-width:600px){.template-ficha{padding:1rem}}
.learning-section{margin:2.5rem 0 3.5rem;padding:2rem;background:white;border:1px solid #d5e5db;border-radius:20px}.learning-section h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:.5rem 0 1rem;letter-spacing:-.04em}.learning-section .lead{font-size:1.05rem}.learning-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-top:1.7rem}.learning-option{display:flex;flex-direction:column;padding:1.6rem;border:1px solid #dce5e6;border-radius:14px;text-decoration:none;color:#182b42;background:#f7faf8;transition:border-color .15s,background .15s}.learning-option:hover{border-color:#08754b;background:#edf6f0}.learning-number{display:grid;place-items:center;background:#dcefe3;color:#08754b;border-radius:10px;width:42px;height:42px;font-weight:800}.learning-option h3{font-size:1.3rem;margin:1rem 0 .75rem}.learning-option p{font-size:.95rem;color:#52646d}.learning-link{margin-top:auto;font-weight:750;color:#08754b;padding-top:.6rem}.featured-section .section-top a{font-size:.9rem}.featured-section .card h3{font-size:1.25rem}@media(max-width:800px){.learning-grid{grid-template-columns:minmax(0,1fr)}.learning-section{padding:1.25rem}.learning-option{padding:1.3rem}}
.course-nav{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;padding:1.5rem 0;margin-top:2rem;border-top:1px solid var(--line)}.course-nav a{font-size:.9rem}.course-list{padding-left:1.5rem}.course-list li{padding:.7rem 0}.course-list a{display:flex;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:10px;text-decoration:none;background:white}.course-list span{font-size:.85rem;white-space:nowrap}@media(max-width:600px){.course-list a{flex-direction:column}.course-nav .button{width:100%}}
.course-list{list-style:none;padding:0;margin:1.4rem 0;counter-reset:course-step;display:grid;gap:.8rem}.article .course-list li{counter-increment:course-step;margin:0;padding:0;max-width:none}.course-list a{display:grid;grid-template-columns:2.1rem minmax(0,1fr);column-gap:.8rem;row-gap:.4rem;align-items:start;padding:1rem;min-width:0}.course-list a::before{content:counter(course-step);grid-column:1;grid-row:1 / span 2;display:grid;place-items:center;width:2.1rem;height:2.1rem;border-radius:50%;background:#e6f2eb;color:#08754b;font-size:.9rem;font-weight:750}.course-list strong{grid-column:2;min-width:0;font-size:1rem;line-height:1.45;overflow-wrap:anywhere}.course-list span{grid-column:2;font-size:.85rem;line-height:1.4}.course-list a:hover{border-color:#08754b;background:#f5faf7}@media(max-width:600px){.course-list{gap:.65rem}.course-list a{padding:.9rem;grid-template-columns:1.8rem minmax(0,1fr);gap:.35rem .65rem}.course-list a::before{width:1.8rem;height:1.8rem;font-size:.8rem}.course-list strong{font-size:.95rem}.course-list span{font-size:.8rem}}
.article-layout,.article,.sidebar{min-width:0;max-width:100%}.article{width:100%}.article pre{width:100%;max-width:100%;min-width:0;overflow-x:auto;white-space:pre;overscroll-behavior-x:contain}.article pre code{white-space:pre}.article p,.article li,.article h1,.article h2,.article h3{overflow-wrap:anywhere}.article table{max-width:100%;overscroll-behavior-x:contain}.article img{max-width:100%;height:auto}.workbook-preview,.sheet-panel,.ficha-table{min-width:0;max-width:100%}@media(max-width:800px){.article-layout{display:block;width:100%;padding:1rem}.article-layout .sidebar{margin-top:1.5rem}.article h1{font-size:clamp(1.65rem,7vw,2.2rem);line-height:1.2}.article pre{font-size:.82rem;padding:1rem}.article-layout .article{padding:0}.article table{font-size:.82rem}.article th,.article td{padding:.55rem}}

/* Mobile navigation and contained resource previews */
.bar>nav,.hero>*,.learning-option,.sheet-demo,.sheet-scroll,.sheet-tabs{min-width:0;max-width:100%}
.sheet-scroll,.sheet-tabs,.ficha-table{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
.sheet-formula{overflow-wrap:anywhere}
button,input,select{font:inherit}
button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #eea929;outline-offset:3px}
@media(max-width:800px){
 .bar{gap:.75rem}
 .bar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .65rem;width:100%}
 .bar nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:.5rem .35rem;border-radius:7px;font-size:.9rem;line-height:1.3;text-align:center;background:#f2f7f6}
 .bar nav a[aria-current]{background:#e2f2e8;border-bottom:2px solid #08754b}
 .hero .actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%;gap:.7rem}
 .hero .actions .button{width:100%;text-align:center;white-space:normal}
 .hero h1{font-size:clamp(2rem,9vw,2.7rem)}
 .hero .pill{max-width:100%;font-size:.78rem;white-space:normal}
 .sheet-kpis{padding:1rem .65rem;gap:.4rem}
 .sheet-kpis b{font-size:clamp(1.05rem,4.8vw,1.6rem)}
 .sheet-top{gap:.5rem;flex-wrap:wrap;padding:.75rem}
 .sheet-demo table{font-size:.7rem;width:calc(100% - 1rem);margin:0 .5rem 1rem;table-layout:fixed}
 .sheet-demo td,.sheet-demo th{padding:.45rem .2rem;overflow-wrap:anywhere}
 .sheet-demo .status{font-size:.62rem;padding:.1rem .2rem;white-space:normal}
 .preview{margin:1.5rem 0}
 .button,summary,.sheet-tabs button,.dialog-close{min-height:44px}
 .card-visual{padding:1rem}
 .card-body{padding:1.25rem}
 .preview-dialog{padding:.8rem;width:96vw;max-width:96vw}
 .course-nav a{max-width:100%;overflow-wrap:anywhere}
 footer a{display:inline-block;padding:.3rem 0}
}

.exercise-download{background:#edf7f0;border:1px solid #c7dfd0;border-radius:14px;padding:1.4rem;margin:2rem 0}.article .exercise-download h2{margin:.7rem 0 1rem;font-size:1.4rem}.exercise-note{font-size:.82rem;color:#52646d;margin:.8rem 0 0}@media(max-width:600px){.exercise-download{padding:1rem}.exercise-download .button{width:100%;text-align:center}}
.exercise-top{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin:1.2rem 0 2rem}.exercise-top span{font-size:.85rem;color:#52646d}.exercise-badge{display:inline-block;background:#e5f3eb;color:#08754b;border-radius:5px;font-size:.75rem;font-weight:700;padding:.25rem .55rem;margin-bottom:.6rem}@media(max-width:600px){.exercise-top{align-items:flex-start;flex-direction:column}.exercise-top .button{width:100%}}
.needs-section{margin:3rem 0}.resource-links{padding-left:1.2rem;margin:.5rem 0 0}.resource-links li{margin:.65rem 0}.resource-links a{overflow-wrap:anywhere}.latest-section{margin:3rem 0}.latest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.6rem}.latest-grid .card-body{height:100%}.latest-grid h3 a{color:inherit}.needs-section .card,.latest-grid .card{min-width:0}@media(max-width:800px){.latest-grid{grid-template-columns:1fr}}
.article .button{max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}.sheet-panel:focus-visible,.sheet-scroll:focus-visible,.ficha-table:focus-visible,.article pre:focus-visible{outline:3px solid #eea929;outline-offset:3px}.sheet-scroll,.ficha-table{touch-action:pan-x pan-y}.article summary{line-height:1.5}.latest-grid .card-body{flex:1}footer nav{gap:.7rem 1.1rem;flex-wrap:wrap}@media(max-width:380px){main{padding-left:.8rem;padding-right:.8rem}.hero{padding:1.2rem}.learning-section{padding:1rem}.article-layout{padding:.85rem}.sheet-kpis span{font-size:.62rem}}@media(prefers-reduced-motion:reduce){.card:hover{transform:none}}
.catalog-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.catalog-selects label{display:flex;flex-direction:column;gap:.4rem;font-weight:650}.catalog-selects select{width:100%;min-width:0;min-height:48px;padding:.7rem;border:1px solid #a6bfb1;border-radius:10px;background:#f7faf8;color:#244436;font:inherit}.catalog-grid>.card>.card-body{padding:0;width:100%}.catalog-meta{font-size:.82rem;color:#52675d;margin-top:1rem!important;width:100%}.catalog-grid>[hidden]{display:none!important}@media(max-width:600px){.catalog-selects{grid-template-columns:1fr}.catalog-search input{font-size:16px}}
.path-breadcrumb{font-size:.9rem;margin-bottom:1.5rem}.path-steps{list-style:none;padding:0;margin:2rem 0;display:grid;gap:1rem}.path-step{border:1px solid #dce7e1;border-radius:14px;background:#fff;padding:1.4rem;min-width:0}.path-step-heading{display:flex;align-items:flex-start;gap:.8rem}.article .path-step h2{margin:0;font-size:1.35rem;line-height:1.4}.path-number{flex:0 0 2rem;min-height:2rem;border-radius:50%;background:#e5f3eb;color:#08754b;font-weight:750;display:flex;align-items:center;justify-content:center}.path-lesson-nav{border-top:1px solid #dce7e1;margin-top:2rem;padding-top:1rem}.path-lesson-nav>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.7rem}.path-lesson-nav a{display:inline-block;padding:.5rem 0;min-height:44px}.learning-routes h2{font-size:1.4rem;line-height:1.35}.learning-path .notice h2{margin-top:0;font-size:1.35rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:600px){.path-step{padding:1rem}.path-step .button,.learning-path .notice .button{width:100%;white-space:normal;text-align:center}.path-lesson-nav>div{flex-direction:column;align-items:flex-start}.learning-routes{grid-template-columns:1fr}.path-breadcrumb{overflow-wrap:anywhere}}
.latest-route{margin-top:1.5rem}.latest-route h3{margin-top:0}.latest-grid .card h3{line-height:1.4}@media(max-width:600px){.latest-route .button{width:100%;white-space:normal;text-align:center}}
.formula-copy{min-width:0;margin:1.4rem 0;border:1px solid #c7d8d0;border-radius:10px;overflow:hidden}.formula-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1rem;padding:.5rem .75rem;background:#edf7f0}.formula-copy-button{min-height:44px;padding:.55rem .9rem;border:1px solid #08754b;border-radius:7px;background:#fff;color:#08754b;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer}.formula-copy-button:hover{background:#e0eee6}.formula-copy-button:focus-visible,.formula-manual:focus-visible{outline:3px solid #c59320;outline-offset:2px}.formula-copy-button:disabled{opacity:.7;cursor:wait}.formula-copy-status{font-size:.85rem;color:#244436;overflow-wrap:anywhere}.article .formula-copy pre{margin:0;border-radius:0;max-width:100%;overflow-x:auto}.formula-manual{display:block;box-sizing:border-box;width:calc(100% - 1.5rem);min-height:100px;margin:.75rem;padding:.75rem;border:1px solid #a6bfb1;border-radius:7px;font:16px/1.5 monospace;resize:vertical;color:#19312a;background:#fff}.formula-copy pre code{white-space:pre}@media(max-width:600px){.formula-toolbar{align-items:flex-start}.formula-copy-status{flex-basis:100%}.formula-copy-status:empty{display:none}}
.article-toc{background:#edf7f0;border:1px solid #c7dfd0;border-radius:12px;margin:1.5rem 0;padding:0;min-width:0}.article-toc summary{padding:1rem 1.1rem;min-height:48px;cursor:pointer;font-weight:750;color:#244436;line-height:1.5}.article-toc summary span{font-size:.85rem;font-weight:500}.article-toc nav{padding:0 1.1rem 1rem}.article-toc ol{margin:0;padding-left:1.3rem}.article-toc li{padding:.1rem 0}.article-toc a{display:block;padding:.55rem .25rem;min-height:44px;line-height:1.45;overflow-wrap:anywhere}.article-toc summary:focus-visible,.article-toc a:focus-visible{outline:3px solid #c59320;outline-offset:2px}.article h2[id^="apartado-"]{scroll-margin-top:7rem}.article h2[id^="apartado-"]:focus-visible{outline:3px solid #c59320;outline-offset:4px}@media(max-width:600px){.article-toc summary{padding:.85rem}.article-toc nav{padding:0 .85rem .85rem}.article-toc summary span{display:block}.article h2[id^="apartado-"]{scroll-margin-top:1rem}}
.resource-compat{border-left:4px solid #08754b;background:#f1f7f4;border-radius:7px;padding:1rem 1.1rem;margin:1.25rem 0;min-width:0}.compat-title{color:#244436;font-size:.95rem}.article .resource-compat p{margin:.5rem 0;font-size:.9rem;line-height:1.6}.resource-compat summary{cursor:pointer;font-weight:650;min-height:44px;padding:.5rem 0;line-height:1.5}.resource-compat summary:focus-visible{outline:3px solid #c59320;outline-offset:2px}.article .compat-review,.compat-catalog-note{font-size:.82rem;color:#52675d}.compat-links{overflow-wrap:anywhere}.compat-badge{font-size:.8rem!important;color:#244436;background:#edf7f0;border-radius:5px;padding:.4rem .6rem;line-height:1.5;margin:.2rem 0 .9rem!important;max-width:100%;overflow-wrap:anywhere}@media(max-width:600px){.resource-compat{padding:.85rem}.compat-badge{width:100%}}
.global-search{background:#fff;border:1px solid #c7dfd0;border-radius:18px;padding:1.6rem;margin:2rem 0}.global-search h2{margin:.5rem 0;font-size:1.75rem;line-height:1.3}.global-search-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.8rem}.global-search-field{flex:1 1 280px;min-width:0}.global-type-field{flex:0 1 220px;min-width:0}.global-search-form label{display:block;font-weight:650;margin-bottom:.45rem}.global-search-form input,.global-search-form select{box-sizing:border-box;display:block;width:100%;margin:0;min-height:48px;border:1px solid #a6bfb1;border-radius:8px;padding:.7rem;background:#f7faf8;color:#19312a;font:inherit;font-size:16px}.global-search-form>.button{min-height:48px}.global-suggestions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:1rem 0}.global-suggestions>span{font-size:.9rem}.global-suggestions button{min-height:44px;padding:.45rem .8rem;border:1px solid #c7dfd0;border-radius:999px;background:#f1f7f4;color:#08754b;font:inherit;font-size:.85rem;cursor:pointer}.global-search :focus-visible{outline:3px solid #c59320;outline-offset:3px}.global-results{list-style:none;padding:0;margin:1rem 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.global-result{height:100%;display:flex;flex-direction:column;gap:.45rem;background:#f7faf8;border:1px solid #dce7e1;border-radius:10px;padding:1rem;text-decoration:none;overflow-wrap:anywhere}.global-result:hover{border-color:#08754b;background:#edf7f0}.global-result strong{color:#19312a;line-height:1.4}.global-result-meta{font-size:.78rem;color:#08754b}.global-result-description{font-size:.9rem;color:#52675d;line-height:1.5}#global-search-status{font-size:.9rem;color:#52675d;margin-top:1rem}.global-search [hidden]{display:none!important}@media(max-width:600px){.global-search{padding:1.1rem}.global-search h2{font-size:1.4rem}.global-search-field,.global-type-field{flex-basis:100%}.global-search-form>.button{width:100%;text-align:center}.global-search-form>.catalog-reset{padding-left:0}.global-results{grid-template-columns:1fr}}
.learning-progress{border:1px solid #c7dfd0;border-radius:12px;background:#edf7f0;padding:1.2rem;margin:1.5rem 0}.article .learning-progress h2{font-size:1.25rem;margin:0}.learning-progress progress{display:block;width:100%;height:14px;margin:.7rem 0 1rem;accent-color:#08754b}.learning-progress-status{font-weight:650}.step-check,.progress-storage{display:flex;gap:.7rem;align-items:center;min-height:44px;padding:.65rem 0;font-weight:650;cursor:pointer;line-height:1.5}.step-check input,.progress-storage input{flex:0 0 20px;width:20px;height:20px;accent-color:#08754b;cursor:pointer}.step-check input:focus-visible,.progress-storage input:focus-visible{outline:3px solid #c59320;outline-offset:3px}.path-step.step-complete{border-color:#08754b;background:#f1f8f4}.path-step .step-check{margin-top:1rem;border-top:1px solid #dce7e1}.article .progress-storage-note,.progress-hub-note{font-size:.82rem;line-height:1.6;color:#52675d}.article .progress-storage-error{color:#8c3b12}.lesson-progress-controls{display:block!important;background:#edf7f0;border-radius:8px;padding:.8rem 1rem;margin-top:.8rem}.hub-progress{font-size:.85rem;color:#08754b;font-weight:650}.learning-progress .catalog-reset:disabled{opacity:.5;cursor:default}@media(max-width:600px){.learning-progress{padding:1rem}.step-check,.progress-storage{align-items:flex-start}.step-check input,.progress-storage input{margin-top:.25rem}}