/* Ketanima v5: un sitio fijo para ti y cinco minutos para volver. */
.app-topbar { position:fixed;top:0;left:50%;transform:translateX(-50%);width:min(100%,430px);z-index:40;padding-top:env(safe-area-inset-top,0px);background:var(--bg); }
.app-topbar[hidden],.app-topbar [hidden] { display:none!important; }
.app-topbar .talk-bar { position:relative;top:auto;margin:0;padding:10px 18px;height:70px;gap:10px; }
.app-topbar .talk-bar::after { display:none; }
.app-topbar::after { content:'';position:absolute;left:0;right:0;bottom:-14px;height:14px;background:linear-gradient(var(--bg),transparent);pointer-events:none; }
#top-home-controls { display:flex;align-items:center;gap:8px;min-width:0;min-height:44px;margin-bottom:12px; }
#top-home-controls .talk-pill { padding:12px 15px;min-width:0;font-size:14px; }
#top-home-controls .talk-toggle { width:40px;height:40px;flex-shrink:0; }
.home-inner .talk-drawer { margin-top:0; }
.app-topbar .prof-btn { width:44px;height:44px;margin:0;flex-shrink:0; }
#global-hospital { text-decoration:none; }
.app-topbar .prof-btn[aria-pressed="true"] { color:#d851b8;border-color:#d851b8; }
.top-brand { border:0;background:none;flex:1;text-align:left;cursor:pointer;padding:0; }
.top-brand img { width:104px;height:auto;display:block; }
.home-inner { padding-top:calc(90px + env(safe-area-inset-top,0px)); }
#scr-cal,#scr-profile,.screen.khd-scr.active { padding-top:calc(90px + env(safe-area-inset-top,0px)); }
.guia-wrap { padding-top:calc(90px + env(safe-area-inset-top,0px)); }
.khd .sem-fija { top:calc(70px + env(safe-area-inset-top,0px)); }
.profile-back { align-self:flex-start;margin-bottom:22px; }
#tab-mind { background:none;border:0;font:inherit;cursor:pointer; }
#tab-mind.active { color:#b7a3f5; }
.guide-entry { display:flex;flex-direction:column;gap:12px;width:100%;text-align:left;padding:26px 22px;margin:0 0 36px;background:#171219;border:1px solid #d851b833;border-radius:28px;cursor:pointer; }
.guide-entry-k { color:#db91cf;font-size:13px;letter-spacing:.13em;text-transform:uppercase; }
.guide-entry strong { font:800 29px/.98 var(--font-d);letter-spacing:-.04em; }
.guide-entry>span:not(.guide-entry-k) { color:var(--sub);font-size:14px;line-height:1.5; }
.guide-entry b { display:flex;justify-content:space-between;color:#db91cf;font-size:13px;margin-top:12px; }.guide-entry i { font-style:normal;font-size:21px; }
#scr-mind { padding:calc(88px + env(safe-area-inset-top,0px)) 18px 120px;--mind:#b7a3f5; }
.mind-k { font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--mind);display:flex;gap:8px;align-items:center;margin-bottom:16px; }
.mind-k::before { content:'';width:6px;height:6px;background:currentColor;border-radius:50%; }
.mind-title { font:800 clamp(48px,13vw,62px)/.94 var(--font-d);letter-spacing:-.055em;margin:0 0 18px; }.mind-title em { font-style:normal;color:var(--mind); }
.mind-lead { color:var(--sub);font-size:15px;line-height:1.55;max-width:355px;margin-bottom:24px; }
.mind-ticket { padding:24px;background:var(--mind);color:#191122;border-radius:28px;margin:20px 0;position:relative;overflow:hidden; }
.mind-ticket small { font-size:13px;letter-spacing:.1em;text-transform:uppercase; }.mind-ticket h2 { font:800 32px/1.02 var(--font-d);letter-spacing:-.04em;margin:14px 0 10px; }.mind-ticket p { font-size:15px;line-height:1.5; }
.mind-ticket .mind-ticket-foot { border-top:1px solid #19112230;margin-top:22px;padding-top:14px;display:flex;justify-content:space-between;font-size:13px; }
.mind-primary,.mind-secondary { display:flex;align-items:center;justify-content:center;gap:12px;width:100%;border:0;border-radius:999px;padding:16px 20px;font-size:15px;font-weight:600;cursor:pointer; }
.mind-primary { background:var(--mind);color:#191122; }.mind-secondary { background:var(--card);color:var(--text);border:1px solid var(--border); }
.mind-quiet { border:0;background:none;color:var(--sub);font-size:13px;padding:14px;cursor:pointer; }
.mind-foot { color:var(--sub);font-size:13px;line-height:1.5;text-align:center;margin:12px 0 24px; }
.mind-anchor { border:0;margin:22px 0; }.mind-anchor legend { color:var(--sub);font-size:13px;margin-bottom:10px; }.mind-anchor>div { display:flex;flex-wrap:wrap;gap:8px; }
.mind-anchor button { border:1px solid var(--border);background:var(--card);color:var(--sub);border-radius:999px;padding:11px 14px;font-size:13px;cursor:pointer; }.mind-anchor button[aria-pressed="true"] { color:var(--mind);border-color:var(--mind); }
.mind-principles { margin:40px 0 32px; }
.mind-principles h2 { font:800 clamp(32px,9vw,40px)/1.02 var(--font-d);letter-spacing:-.045em;color:var(--text);margin:0 0 24px; }
.mind-principles-list { list-style:none;padding:0;margin:0; }
.mind-principles-list li { display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;padding:22px 0;border-top:1px solid #b7a3f540; }
.mind-principle-number { font:700 22px/1.2 var(--font-d);color:var(--mind);font-variant-numeric:tabular-nums; }
.mind-principles h3 { font:700 20px/1.2 var(--font-d);letter-spacing:-.025em;color:var(--text);margin:0 0 8px; }
.mind-principles p { font-size:16px;line-height:1.55;color:var(--sub);margin:0; }
.mind-level-head { display:flex;justify-content:space-between;align-items:center;margin:32px 0 14px;font-size:13px; }.mind-level-head span { color:var(--sub); }
.mind-levels { display:grid;grid-template-columns:repeat(4,1fr);gap:8px; }.mind-level { display:flex;flex-direction:column;align-items:flex-start;gap:8px;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:12px 10px;cursor:pointer;color:var(--sub); }.mind-level b { font:800 22px var(--font-d); }.mind-level span { font-size:13px; }.mind-level[aria-pressed="true"] { border-color:var(--mind);color:var(--mind); }.mind-level:disabled { opacity:.35;cursor:default; }
.mind-progress { display:flex;gap:5px;margin:12px 0 22px; }.mind-progress i { height:3px;background:var(--card2);flex:1;border-radius:5px; }.mind-progress i.on { background:var(--mind); }
.mind-session-top { display:flex;justify-content:space-between;align-items:center;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--sub); }.mind-session-top b { color:var(--mind);font-variant-numeric:tabular-nums;font-size:16px; }
.mind-stage-title { font:800 37px/1 var(--font-d);letter-spacing:-.045em;margin:20px 0 15px; }.mind-stage-text { color:var(--sub);font-size:15px;line-height:1.6;min-height:96px; }
.mind-orb { position:relative;width:190px;height:190px;margin:26px auto 20px;border:1px solid #b7a3f530;border-radius:50%;display:grid;place-items:center; }.mind-orb::before,.mind-orb::after { content:'';position:absolute;inset:18px;border:1px solid #b7a3f530;border-radius:50%; }.mind-orb::after { inset:37px; }.mind-orb span,.mind-orb .mind-sound-button { display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--mind);color:#191122;font:800 26px var(--font-d);letter-spacing:-.06em; }
.mind-nudge { text-align:center;font-size:13px;color:var(--sub);min-height:38px;line-height:1.5;margin:10px 0 20px; }
.mind-tags { display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin:18px 0 8px; }.mind-tags button { border:1px solid #b7a3f540;background:#b7a3f512;border-radius:999px;padding:11px 13px;color:var(--mind);font-size:13px;cursor:pointer; }.mind-tags button.chosen { animation:mind-label-away .8s ease; }@keyframes mind-label-away { 50% { transform:translateY(-8px);opacity:.3; } }
.mind-controls { display:flex;flex-wrap:wrap;gap:8px; }.mind-controls>button { flex:1; }.mind-pause-note { color:var(--mind);font-size:13px;text-align:center;margin:16px 0; }
.mind-reflect { display:flex;gap:8px;margin:18px 0; }.mind-reflect button { flex:1;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px 8px;font-size:13px;cursor:pointer; }.mind-reflect button[aria-pressed="true"] { color:var(--mind);border-color:var(--mind); }
.mind-sources { display:block;text-align:center;color:var(--muted);font-size:13px;margin-top:26px; }
#mind-root :focus-visible,.guide-entry:focus-visible,#global-profile:focus-visible { outline:2px solid #b7a3f5;outline-offset:4px; }
@media(prefers-reduced-motion:reduce) { .mind-tags button.chosen { animation:none; } }
@media(prefers-reduced-motion:reduce) { .screen.active { animation:none; }.tab-glow { transition:none; } }
/* Una indicación estable; los controles no flotan encima de la práctica. */
.mind-session-view { padding-bottom:0; }
.mind-session-top { gap:16px;letter-spacing:0;text-transform:none;font-size:15px; }
.mind-session-top b { flex-shrink:0;font-size:20px; }
.mind-stage-title { font-size:clamp(40px,12vw,54px);margin-top:32px; }
.mind-stage-text { font-size:17px;min-height:0;margin-bottom:28px; }
.mind-session-view .mind-focus-field { height:140px; }
.mind-session-view .mind-audio-space { margin:22px 0; }
.mind-session-view .mind-sound-button { display:flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border:1px solid var(--border);border-radius:99px;background:none;color:var(--sub);font:500 14px var(--font); }
.mind-session-view .mind-sound-button[aria-pressed="true"] { border-color:var(--mind);color:var(--mind);box-shadow:none; }
.mind-session-view .mind-sound-caption { text-align:left;margin:10px 0; }
.mind-session-tip { border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:16px 0;margin:24px 0; }
.mind-session-tip summary { color:var(--sub);font-size:15px;cursor:pointer; }
.mind-session-tip p { font-size:16px;line-height:1.55;margin-top:16px;color:var(--text); }
.mind-controls { display:flex;flex-direction:column;gap:8px;margin-top:28px; }
.mind-controls>button { flex:none; }
.mind-controls .mind-quiet { min-height:44px;font-size:15px; }
.mind-anchor legend { font-weight:600;color:var(--text); }

.mind-orb::before,.mind-orb::after { pointer-events:none; }
.mind-sound-button { border:0;cursor:pointer;position:relative;z-index:1; }
.mind-sound-button[aria-pressed="true"] { box-shadow:0 0 0 9px #b7a3f522; }
.mind-sound-button:disabled { cursor:default;opacity:.6; }
.mind-orb.sounding { border-color:#b7a3f599; }
.mind-orb.sounding::before,.mind-orb.sounding::after { border-color:#b7a3f566; }
.mind-sound-caption { color:var(--sub);font-size:13px;line-height:1.5;text-align:center;margin:-8px 0 18px; }

/* Explicar la práctica antes de pedir que empiece; elegir sin perder el sitio. */
.mind-lead strong { color:var(--text);font-weight:600; }
.mind-explain { padding:20px;border:1px solid var(--border);border-radius:22px;background:var(--card);margin-bottom:28px; }
.mind-explain p { color:var(--sub);font-size:15px;line-height:1.55; }
.mind-explain p+p { margin-top:18px; }
.mind-explain b { display:block;color:var(--text);font-size:16px;margin-bottom:5px; }
.mind-level-head { gap:12px;flex-wrap:wrap; }
.mind-level-head b { font-size:16px; }
.mind-choose-help { color:var(--sub);font-size:14px;line-height:1.5;margin:-3px 0 16px; }
.mind-level[aria-pressed="true"] { background:#b7a3f51c;box-shadow:inset 0 0 0 1px var(--mind); }
#mind-selected-tip { min-height:254px; }

.mind-anchor legend,.mind-anchor button {font-size:14px}
.mind-point-space {text-align:center;margin:24px auto}
.mind-focus-field {height:210px;display:grid;place-items:center;background:#101012;border:1px solid #ffffff12;border-radius:24px}
.mind-fixed-point {display:block;width:14px;height:14px;background:#fff;border-radius:50%;animation:none!important;transform:none!important}
.mind-point-space .mind-sound-button {display:inline-block;width:auto;height:auto;margin-top:16px;padding:12px 20px;border:1px solid #b7a3f560;border-radius:99px;background:#b7a3f512;color:var(--mind);font:600 14px var(--font-d);letter-spacing:0}

/* Un consejo a la vez. La misma tarjeta que las frases de Inicio. */
#mind-selected-tip.mind-advice { background:var(--mind);min-height:0;margin:0 0 16px;cursor:default; }
.mind-advice .motiv-tag { display:flex;line-height:1.4;margin:4px 0 12px; }
.mind-advice #mind-tip-text { font:700 27px/1.12 var(--font-d);letter-spacing:-.035em; }
.mind-all-tips { margin-bottom:28px; }
.mind-all-tips summary { padding:12px 0;color:var(--sub);font-size:15px;cursor:pointer; }
.mind-all-tips .mind-levels { margin-top:12px; }
.mind-ready-steps { list-style:none;margin:30px 0;padding:0;display:grid;gap:24px; }
.mind-ready-steps li { display:flex;gap:16px; }
.mind-ready-steps li>span { color:var(--mind);font:700 20px var(--font-d);padding-top:2px; }
.mind-ready-steps b { font-size:17px; }
.mind-ready-steps p { font-size:15px;line-height:1.5;color:var(--sub);margin-top:6px; }

/* Durante la práctica, solo el reloj y el control del momento. */
body.mind-clock-active #app-topbar,body.mind-clock-active #main-tabbar { display:none!important; }
body.mind-clock-active #scr-mind { padding:0 18px; }
.mind-clock-screen { min-height:100svh;min-height:100dvh;padding:calc(18px + env(safe-area-inset-top,0px)) 0 calc(24px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column; }
.mind-clock-top { display:flex;justify-content:space-between;align-items:center;min-height:44px;color:var(--sub);font-size:14px; }
.mind-mute { width:44px;height:44px;padding:10px;background:none;border:1px solid var(--border);border-radius:50%;color:var(--mind);cursor:pointer; }
.mind-mute svg { display:block;width:100%;height:100%; }
.mind-mute[aria-pressed="false"] { color:var(--sub); }
.mind-clock-center { flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 0;gap:24px; }
.mind-clock { position:relative;width:min(100%,340px);aspect-ratio:1;display:grid;place-items:center; }
.mind-clock-ring { position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--mind);stroke-width:2;transform:rotate(-90deg); }
.mind-clock-track { stroke:#b7a3f522; }
#mind-time { font:500 clamp(68px,21vw,88px)/1 var(--font);font-variant-numeric:tabular-nums;letter-spacing:-.06em;color:var(--text); }
.mind-clock-anchor { color:var(--sub);font-size:15px;line-height:1.4; }
.mind-clock-center .mind-fixed-point { flex-shrink:0; }
.mind-clock-controls { min-height:108px;display:flex;flex-direction:column;gap:8px;justify-content:flex-start; }
.mind-clock-stop { align-self:center;min-height:48px;min-width:150px;padding:14px 32px;border:1px solid #b7a3f560;border-radius:99px;background:none;color:var(--text);font:600 16px var(--font);cursor:pointer; }
.mind-clock-controls .mind-quiet { min-height:48px;font-size:16px; }
.mind-clock-controls .mind-sound-caption { margin:0;text-align:center; }
@media(max-height:650px) { .mind-clock-center { padding:18px 0;gap:16px; }.mind-clock { width:min(100%,260px); }.mind-clock-controls { min-height:104px; } }

/* Selector de tiempo: la regla se mueve bajo un marcador fijo. */
.mind-duration { margin:36px 0 12px;padding:12px 0;background:none;border:0;text-align:center; }
.mind-duration h2 { font:600 16px var(--font);color:var(--sub); }
.mind-duration output { display:block;font:800 clamp(76px,24vw,104px)/1.1 var(--font-d);letter-spacing:-.055em;font-variant-numeric:tabular-nums;color:var(--text);margin:28px 0 22px; }
.mind-ruler-wrap { position:relative;width:100%;height:100px; }
.mind-ruler { display:flex;align-items:center;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x mandatory;height:100%;width:100%;cursor:grab;user-select:none;-webkit-user-select:none;overscroll-behavior-x:contain;mask-image:linear-gradient(to right,transparent,#000 20%,#000 80%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 20%,#000 80%,transparent); }
.mind-ruler::-webkit-scrollbar { display:none; }
.mind-ruler::before,.mind-ruler::after { content:'';flex:0 0 calc(50% - 12px);height:1px; }
.mind-ruler-tick { position:relative;display:block;flex:0 0 24px;height:24px;scroll-snap-align:center; }
.mind-ruler-tick::after { content:'';position:absolute;top:0;bottom:0;left:calc(50% - 1px);width:2px;border-radius:2px;background:#85858d; }
.mind-ruler-tick.major { height:44px; }
.mind-ruler-marker { position:absolute;left:calc(50% - 1.5px);top:3px;bottom:3px;width:3px;border-radius:3px;background:var(--mind);pointer-events:none; }
.mind-ruler.dragging { scroll-snap-type:none;cursor:grabbing; }
.mind-ruler:focus-visible { outline:2px solid var(--mind);outline-offset:-3px;border-radius:12px; }
#mind-duration-hint { font-size:13px;color:var(--sub);margin:14px 0 0; }
.mind-primary:disabled { opacity:.4;cursor:not-allowed; }

/* Preparación directa y consejos en pestañas; instrucciones a petición. */
.mind-intro-head { display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px; }
.mind-intro-head .mind-k { margin:0; }
.mind-exit { display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;padding:0;border:1px solid var(--border);border-radius:50%;background:none;color:var(--mind);font:26px/1 var(--font);cursor:pointer; }
#mind-ready-guide .mind-ready-steps { margin:24px 0;gap:20px; }
#mind-ready-guide .mind-ready-steps p { margin-top:4px; }
#mind-root:not(.mind-session-view) .mind-duration { margin:24px 0 12px;padding:20px 0 12px;border-top:1px solid var(--border); }
#mind-root:not(.mind-session-view) .mind-duration output { font-size:76px;margin:14px 0 10px; }
#mind-root:not(.mind-session-view) .mind-ruler-wrap { height:72px; }
#mind-duration-hint { margin-top:10px; }
.mind-setup-sound { display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0 18px;color:var(--sub);font-size:14px; }
.mind-launch { margin:0 0 20px; }
.mind-discard { display:block;margin:-8px auto 18px; }
.mind-resume { display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 0;margin:22px 0 12px;border-top:1px solid var(--border);color:var(--sub);font-size:14px; }
.mind-resume b { color:var(--text);font:800 68px/1.1 var(--font-d);font-variant-numeric:tabular-nums;letter-spacing:-.05em; }
.mind-clock-top { gap:12px; }
.mind-clock-top>span { flex:1;text-align:center; }

.mind-panel[hidden] { display:none!important; }
.mind-tips-title { font:800 36px/1.05 var(--font-d);letter-spacing:-.04em;margin:0 0 24px; }
/* Explicación completa, por bloques, antes de los consejos. */
.mind-about { margin-bottom:32px;padding-bottom:28px;border-bottom:1px solid var(--border); }
.mind-about-title { font:800 36px/1.05 var(--font-d);letter-spacing:-.04em;margin:0 0 24px; }
.mind-about .mind-explain { margin:28px 0; }
.mind-about .mind-principles { margin:32px 0 24px; }
.mind-about .mind-foot { text-align:left;margin:0;padding-top:22px;border-top:1px solid var(--border); }
.mind-about .mind-sources { text-align:left;margin-top:16px; }

.mind-ready-section { margin-top:28px;padding-top:28px;border-top:1px solid var(--border); }
