:root{--crema:#f3ecdf;--blanco:#fffdf8;--tinta:#26332b;--texto:#34443b;--suave:#6b7a70;--verde:#4f7a5a;--verde2:#3d6247;--salvia:#7fa386;--linea:#e5dccb;--oro:#d9a441;--rojo:#c8553d;--fondo:#f8f3ea}
*{box-sizing:border-box}
html,body{margin:0;background:var(--fondo);color:var(--texto);font:16px/1.6 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}
a{color:var(--verde2)}
img{max-width:100%}
h1,h2,h3{font-family:Fraunces,Georgia,serif;color:var(--tinta);line-height:1.15}
.k-top{position:sticky;top:0;z-index:20;background:var(--tinta);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px}
.k-top b{font:800 18px Fraunces,Georgia,serif;letter-spacing:.2em}
.k-top select{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:8px;padding:4px 6px;font:600 13px Inter}
.k-top select option{color:#000}
.k-nav{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;background:var(--blanco);border-top:1px solid var(--linea);padding-bottom:env(safe-area-inset-bottom)}
.k-nav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:7px 2px;font:600 10.5px Inter;color:var(--suave);text-decoration:none;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.k-nav a span{font-size:17px;line-height:1}
.k-nav a.on{color:var(--verde2)}
main{max-width:860px;margin:0 auto;padding:16px 16px 96px;overflow-wrap:anywhere}
.k-hero__t,.k-card__side,.k-dl a b{min-width:0}
.k-h1{font-size:28px;margin:6px 0 12px}
.k-lead{font-size:16px;color:var(--texto)}
.k-hero{display:flex;gap:16px;align-items:center;background:var(--crema);border-radius:18px;padding:18px;margin-bottom:14px}
.k-hero h1{margin:4px 0 6px;font-size:clamp(24px,5vw,32px)}
.k-hero p{margin:0;color:var(--suave)}
.k-hero__img{width:120px;border-radius:10px;flex:none}
.k-eyebrow{font:800 11px Inter;letter-spacing:.22em;color:var(--verde)}
.k-search{position:relative;margin:10px 0 14px}
.k-search input{width:100%;padding:13px 14px;border:1px solid var(--linea);border-radius:12px;font:16px Inter;background:#fff}
.k-qr{position:absolute;left:0;right:0;top:100%;z-index:10;background:#fff;border:1px solid var(--linea);border-radius:12px;box-shadow:0 12px 30px rgba(0,0,0,.08);overflow:hidden}
.k-qr:empty{display:none}
.k-qr a,.k-qr p{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border-top:1px solid var(--linea);text-decoration:none;color:var(--tinta);margin:0}
.k-qr a span{color:var(--suave);font-size:12px}
.k-prog{background:#fff;border:1px solid var(--linea);border-radius:14px;padding:14px;margin-bottom:14px}
.k-bar{height:7px;background:var(--linea);border-radius:9px;overflow:hidden;margin:8px 0}
.k-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--verde),var(--oro))}
.k-btn{display:inline-block;border:0;cursor:pointer;background:var(--verde2);color:#fff;text-decoration:none;font:700 14.5px Inter;padding:11px 16px;border-radius:11px}
.k-btn--pdf{background:#fff;color:var(--verde2);border:1.5px solid var(--verde2)}
.k-link{text-decoration:none;font-weight:600}
.k-row{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 14px}
.k-row--end{justify-content:flex-end}
.k-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.k-tile{display:block;background:#fff;border:1px solid var(--linea);border-radius:14px;padding:14px;text-decoration:none;color:var(--tinta)}
.k-tile b{display:block}
.k-tile span{color:var(--suave);font-size:13px}
.k-tile--alt{background:var(--crema)}
.k-tile--bonus img{width:100%;border-radius:10px;margin-bottom:8px}
.k-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.k-filters select{flex:1 1 160px;min-width:0;padding:9px;border:1px solid var(--linea);border-radius:10px;background:#fff;font:14px Inter}
.k-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.k-it{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linea);border-radius:14px;padding:8px;text-decoration:none;color:var(--tinta)}
.k-it img{width:100%;aspect-ratio:2/3;object-fit:contain;background:var(--crema);border-radius:10px}
.k-it b{font-size:14px;line-height:1.3;margin-top:6px}
.k-it span{font-size:12px;color:var(--suave)}
.k-it--done{border-color:var(--salvia);box-shadow:inset 0 0 0 1px var(--salvia)}
.k-it--done b:after{content:" ✓";color:var(--verde)}
.k-card{background:#fff;border:1px solid var(--linea);border-radius:18px;padding:18px;margin-bottom:14px}
.k-card__meta{font:700 11.5px Inter;letter-spacing:.06em;text-transform:uppercase;color:var(--verde)}
.k-card__t{font-size:clamp(24px,5vw,32px);margin:4px 0 0}
.k-card__sk{font-style:italic;color:var(--suave);margin-top:2px}
.k-card__grid{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:18px;margin-top:14px}
.k-fig{width:100%;aspect-ratio:2/3;object-fit:contain;background:var(--crema);border-radius:12px;display:block}
.k-fig--none{visibility:hidden}
.k-blk{margin-bottom:12px}
.k-blk h4,.k-phase h4,.k-seqph h4,.k-pose h4{margin:8px 0 5px;font:800 12.5px Inter;letter-spacing:.04em;text-transform:uppercase;color:var(--tinta)}
.k-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:0}
.k-dot--r{background:var(--rojo)}.k-dot--g{background:var(--salvia)}.k-dot--o{background:#e7a48f}
.k-chip{display:inline-block;font-size:13px;padding:3px 9px;border-radius:999px;margin:0 5px 5px 0}
.k-chip--r{background:#f6ddd6;color:#8c3624}.k-chip--g{background:#dfe9dd;color:var(--verde2)}.k-chip--o{background:#fbece6;color:#9a5a45}
.k-scale{display:flex;gap:8px}
.k-scale__i{flex:1;position:relative;height:24px;background:var(--linea);border-radius:7px;overflow:hidden}
.k-scale__i i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,var(--salvia),var(--oro),var(--rojo))}
.k-scale__i b{position:relative;display:block;text-align:center;font:800 13px/24px Inter;color:var(--tinta)}
.k-sec{border-top:1px solid var(--linea);padding-top:12px;margin-top:14px}
.k-sec h3{font-size:19px;margin:0 0 8px}
.k-sec p{margin:0 0 8px}
.k-kv p{margin:0 0 7px}
.k-phases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.k-phase{background:var(--fondo);border-radius:12px;padding:10px 12px;font-size:14.5px}
.k-phase p{margin:0 0 5px}
.k-mis{background:#fbf1dc;border:1px solid #efd9a6;border-radius:12px;padding:12px 14px}
.k-say{font-family:Fraunces,Georgia,serif;font-style:italic;font-size:17px;color:var(--verde2)}
.k-quotes{list-style:none;padding:0;margin:0}
.k-quotes li{padding:6px 0 6px 14px;border-left:3px solid var(--salvia);margin-bottom:6px;font-style:italic}
.k-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.k-list{margin:0;padding-left:20px}
.k-list li{margin-bottom:4px}
.k-steps{margin:0;padding-left:22px}
.k-steps li{margin-bottom:6px}
.k-br{font-size:12px;color:var(--suave);font-style:italic}
.k-warn{background:#fdf0ec;border:1px solid #f1cfc3;border-radius:12px;padding:12px 14px}
.k-refer{background:#eef4ee;border:1px solid #cfe0cf;border-radius:12px;padding:12px 14px}
.k-tblw{overflow-x:auto}
.k-tbl{width:100%;border-collapse:collapse;font-size:14px}
.k-tbl th,.k-tbl td{border-bottom:1px solid var(--linea);padding:7px 8px;text-align:left;vertical-align:top}
.k-tbl th{background:var(--crema);font-weight:700}
.k-seq{border:1px solid var(--linea);border-radius:14px;padding:14px;margin:14px 0;background:#fff}
.k-seq__h h3{margin:0}
.k-seq__m{color:var(--verde);font:700 13px Inter;margin:3px 0 6px}
.k-seqtbl td:first-child{width:38%}
.k-seqph{overflow-x:auto}
.k-min{font-weight:600;color:var(--suave);text-transform:none}
.k-sm{font-size:13px;color:var(--suave)}
.k-call{border-radius:12px;padding:12px 14px;margin:10px 0}
.k-call--tip{background:#eef4ee}.k-call--warn{background:#fdf0ec}.k-call--refer{background:#fbf1dc}
.k-pose{border:1px solid var(--linea);border-radius:12px;padding:10px 14px;margin:10px 0;background:#fff}
.k-pose__g p{margin:0 0 5px;font-size:14.5px}
.k-doc{background:#fff;border:1px solid var(--linea);border-radius:18px;padding:20px}
.k-doc__h h1{font-size:clamp(26px,5vw,34px);margin:4px 0 6px}
.k-doc__sub{color:var(--suave);margin:0}
.k-tag{display:inline-block;background:var(--oro);color:#fff;font:800 11px Inter;letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.k-dsec{margin-top:22px}
.k-dsec h2{font-size:22px;border-bottom:2px solid var(--crema);padding-bottom:4px}
.k-form{border:1.5px solid var(--tinta);border-radius:12px;padding:14px;margin:14px 0}
.k-form h3{margin:0 0 4px}
.k-ff{margin-top:10px}
.k-ff label{display:block;font:700 13px Inter;color:var(--tinta)}
.k-ln{height:26px;border-bottom:1px solid #9aa39d}
.k-chk{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:14px}
.k-scl{display:flex;gap:4px}
.k-scl span{flex:1;text-align:center;border:1px solid #9aa39d;border-radius:6px;font-size:13px;padding:3px 0}
.k-bodymap img{display:block;margin:6px auto;max-height:420px}
.k-dl{display:grid;gap:8px}
.k-dl a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--linea);border-radius:12px;padding:12px 14px;text-decoration:none;color:var(--tinta)}
.k-dl a b{flex:1;font-weight:600}
.k-dl a em{font-style:normal;color:var(--verde2);font-weight:700;font-size:13px}
.k-pn{display:flex;justify-content:space-between;gap:10px;margin:10px 0}
.k-pn a{text-decoration:none;font-weight:600;max-width:48%}
.k-foot{margin-top:26px;font-size:12px;color:var(--suave);text-align:center}
.k-cf{position:fixed;inset:0;pointer-events:none;z-index:99}
.k-cf i{position:absolute;top:-14px;width:9px;height:14px;border-radius:2px;animation:kFall linear forwards}
@keyframes kFall{to{transform:translateY(110vh) rotate(720deg)}}
@media (max-width:620px){
  .k-card{padding:14px}
  .k-card__grid{grid-template-columns:1fr}
  .k-card__figwrap{max-width:320px;margin:0 auto;width:100%}
  .k-phases{grid-template-columns:1fr}
  .k-two{grid-template-columns:1fr}
  .k-hero__img{width:84px}
}

/* ---------- print (PDF) ---------- */
.k-print body{background:#fff;font-size:9.6pt;line-height:1.45}
.k-print .k-top,.k-print .k-nav,.k-print .k-foot,.k-print .k-row,.k-print .k-pn{display:none!important}
.k-print main{max-width:none;padding:0;margin:0}
.k-print .k-card,.k-print .k-doc{border:0;border-radius:0;padding:0;margin:0;box-shadow:none}
.k-print .k-card{break-before:page}
.k-print .k-card__t{font-size:22pt}
.k-print .k-card__grid{grid-template-columns:36% 1fr;gap:14px}
.k-print .k-fig{max-height:96mm}
.k-print .k-phases{grid-template-columns:repeat(3,1fr)}
.k-print .k-two{grid-template-columns:1fr 1fr}
.k-print .k-sec{margin-top:8px;padding-top:6px}
.k-print .k-sec h3,.k-print .k-sec h4{break-after:avoid}
.k-print .k-mis,.k-print .k-warn,.k-print .k-refer,.k-print .k-kv p,.k-print .k-quotes li,.k-print .k-steps li{break-inside:avoid}
.k-print .k-sec h3{font-size:12.5pt;margin-bottom:4px}
.k-print .k-say{font-size:11.5pt}
.k-print .k-tbl{font-size:9pt}
.k-print .k-tbl thead{display:table-header-group}
.k-print .k-tbl tr,.k-print .k-pose,.k-print .k-phase,.k-print .k-call{break-inside:avoid}
.k-print .k-seq{break-before:page;border:0;padding:0}
.k-print .k-seqph{break-inside:avoid}
.k-print .k-form{break-before:page;border:0;padding:0}
.k-print .k-ln{height:9mm}
.k-print .k-dsec h2{break-after:avoid}
.k-print .k-doc{break-before:page}
.k-print .k-doc__h h1{font-size:24pt}
.k-print a{color:inherit;text-decoration:none}
.k-cover{height:97vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;background:var(--crema);padding:20mm}
.k-cover h1{font-size:30pt;margin:8px 0}
.k-cover p{font-size:13pt;color:var(--suave);margin:0 0 10mm}
.k-cover img{max-height:110mm;max-width:80%;border-radius:6px}
.k-cover__f{margin-top:10mm;font:700 9pt Inter;letter-spacing:.2em;text-transform:uppercase;color:var(--verde)}
.k-toc{break-before:page}
.k-toc ol{font-size:12pt;line-height:2}
.k-chap{break-before:page;padding-top:40mm}
.k-chap__n{font:800 11pt Inter;letter-spacing:.2em;text-transform:uppercase;color:var(--verde)}
.k-chap h1{font-size:30pt;margin:6px 0 12px}
.k-chap__l{columns:2;font-size:10.5pt}
.k-print .k-mus{break-before:auto;break-inside:avoid;margin-bottom:8mm}
.k-print .k-mus .k-fig{max-height:70mm}
[tabindex="-1"]:focus{outline:none}
/* upgrades: cue library sections show the pose figure */
.k-dsec--pose{display:grid;grid-template-columns:1fr 96px;gap:0 14px;align-items:start}
.k-dsec--pose>h2{grid-column:1/-1}
.k-dsec--pose>.k-dsec__fig{grid-column:2;grid-row:2}
.k-dsec--pose>.k-tblw{grid-column:1;grid-row:2}
.k-dsec__fig .k-fig{width:96px;height:auto;border-radius:10px;background:#fff}
@media (max-width:560px){.k-dsec--pose{grid-template-columns:1fr}.k-dsec--pose>.k-dsec__fig{grid-column:1;grid-row:auto;max-width:120px}.k-dsec--pose>.k-tblw{grid-row:auto}}
.k-print .k-dsec--pose{break-inside:avoid-page}
/* tables: columns as wide as their longest word (main uses overflow-wrap:anywhere, which split "Week" into "Wee k") */
.k-tbl{overflow-wrap:break-word}
.k-tbl td:first-child,.k-tbl th:first-child{white-space:nowrap}
@media (max-width:560px){.k-dsec--pose .k-tbl{font-size:13px}.k-dsec--pose .k-tbl th,.k-dsec--pose .k-tbl td{padding:6px 5px}}

.k-pose__f{max-width:230px;margin:4px auto 10px}
.k-pose__f .k-fig{border-radius:10px}
.k-pose__m{margin:2px 0 8px;padding:6px 10px;background:var(--crema);border-radius:8px}
.k-pose__m p{margin:0 0 3px;font-size:13.5px}
@media (min-width:700px){.k-pose--fig{display:grid;grid-template-columns:180px 1fr;gap:16px;align-items:start}.k-pose__f{margin:4px 0}}
@media (max-width:600px){.k-seqtbl,.k-seqtbl tbody,.k-seqtbl tr,.k-seqtbl td{display:block;width:auto}.k-seqtbl tr{padding:8px 0;border-bottom:1px solid var(--linea)}.k-seqtbl td{border:0;padding:2px 2px}.k-seqtbl td:first-child{width:auto;padding-bottom:4px}}
.k-print .k-pose--fig{display:grid;grid-template-columns:44mm 1fr;gap:5mm}.k-print .k-pose__f{margin:0}
.k-print .k-pose__f .k-fig{max-height:66mm}
.k-print .k-pose--fig{break-inside:auto}
.k-print .k-pose--fig .k-pose__f,.k-print .k-pose h4,.k-print .k-pose__m{break-inside:avoid;break-after:avoid}
.k-print .k-seqph{break-inside:auto}
.k-print .k-seqph h4{break-after:avoid}
.k-print .k-seqtbl tr,.k-print .k-pose__g p,.k-print .k-say{break-inside:avoid}
.k-print .k-seq>p.k-sm{break-before:avoid;break-inside:avoid}.k-print .k-seqph:last-of-type .k-seqtbl tr:last-child{break-after:avoid}

/* audios de los bonos */
.k-audio{margin:14px 0;padding:14px 16px;background:#fff;border:1px solid var(--linea,#e4ddd0);border-radius:12px}
.k-audio h4{margin:0 0 8px;font-size:16px}
.k-audio audio{width:100%;margin:4px 0 10px}
.k-audio .k-min{font-weight:400;opacity:.65;font-size:13px}
.k-audio__t{margin-top:10px;font-size:14px}
.k-audio__t summary{cursor:pointer;opacity:.8}
.k-audio__t p{margin:8px 0 0;white-space:pre-line}
