/* RESPIRA 360 v0.3 · Híbrido terapéutico premium */
.r360-page{
  --r-bg:#0b0820;
  --r-bg-2:#171044;
  --r-panel:rgba(28,20,72,.88);
  --r-panel-solid:#1b144b;
  --r-panel-2:#251b5f;
  --r-border:rgba(221,236,228,.14);
  --r-border-strong:rgba(235,243,238,.24);
  --r-text:#ffffff;
  --r-muted:#d6d4e9;
  --r-muted-2:#aaa5ce;
  --r-teal:#6f63ff;
  --r-teal-2:#ffe27a;
  --r-gold:#ffd65a;
  --r-amber:#ffc96b;
  --r-lung:#efad7b;
  --r-violet:#8c75ff;
  --r-danger:#ef9b90;
  --r-shadow:0 24px 70px rgba(0,0,0,.28);
  --r-font:"Poppins","Segoe UI",Arial,sans-serif;
  position:relative;
  min-height:100vh;
  margin:0;
  overflow:hidden;
  color:var(--r-text);
  background:
    radial-gradient(circle at 12% 10%,rgba(111,99,255,.24),transparent 32%),
    radial-gradient(circle at 91% 18%,rgba(255,214,90,.11),transparent 28%),
    linear-gradient(180deg,var(--r-bg-2),var(--r-bg));
  font-family:var(--r-font);
  transition:background .28s ease,color .28s ease;
}
.r360-page[data-theme="light"]{
  --r-bg:#eeeafd;
  --r-bg-2:#f8f6ff;
  --r-panel:rgba(255,255,255,.88);
  --r-panel-solid:#fffdf9;
  --r-panel-2:#f1effb;
  --r-border:rgba(67,52,139,.14);
  --r-border-strong:rgba(67,52,139,.20);
  --r-text:#21164f;
  --r-muted:#625d7d;
  --r-muted-2:#7d769b;
  --r-shadow:0 22px 58px rgba(40,28,95,.12);
  background:
    radial-gradient(circle at 10% 8%,rgba(111,99,255,.16),transparent 29%),
    radial-gradient(circle at 92% 12%,rgba(227,189,120,.15),transparent 28%),
    linear-gradient(180deg,var(--r-bg-2),var(--r-bg));
}
.r360-page *{box-sizing:border-box}
.r360-page button,.r360-page select,.r360-page input{font:inherit}
.r360-page button{color:inherit}
.r360-shell{width:min(1540px,calc(100% - 40px));margin:0 auto;position:relative;z-index:2}
.r360-bg-orb{position:absolute;border-radius:999px;pointer-events:none;filter:blur(8px);opacity:.55}
.r360-bg-orb-a{width:460px;height:460px;left:-250px;top:320px;background:radial-gradient(circle,rgba(111,99,255,.12),transparent 70%)}
.r360-bg-orb-b{width:520px;height:520px;right:-300px;top:420px;background:radial-gradient(circle,rgba(155,143,228,.10),transparent 70%)}

/* Header / brand */
.r360-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:26px;padding-bottom:18px}
.r360-brand{display:flex;align-items:center;gap:18px;color:var(--r-text)!important;text-decoration:none!important;min-width:0}
.r360-brand-logo-wrap{display:block;flex:0 0 auto}
.r360-brand-logo{display:block;width:min(240px,34vw);height:auto}
.r360-brand-logo-light{display:none}
.r360-page[data-theme="light"] .r360-brand-logo-dark{display:none}
.r360-page[data-theme="light"] .r360-brand-logo-light{display:block}
.r360-brand-copy{display:flex;flex-direction:column;gap:2px;padding-left:17px;border-left:1px solid var(--r-border-strong);line-height:1.15}
.r360-brand-copy strong{font-size:.82rem;letter-spacing:.14em;font-weight:800;color:var(--r-teal-2)}
.r360-brand-copy small{font-size:.76rem;color:var(--r-muted)}
.r360-header-actions{display:flex;align-items:center;gap:10px}
.r360-header-btn{min-height:44px;padding:0 14px;border:1px solid var(--r-border);border-radius:14px;background:rgba(255,255,255,.035);display:flex;align-items:center;gap:9px;cursor:pointer;transition:.18s ease}
.r360-header-btn:hover{border-color:var(--r-border-strong);background:rgba(255,255,255,.07);transform:translateY(-1px)}
.r360-header-btn>span:first-child{font-size:1.05rem;color:var(--r-gold)}
.r360-header-btn-text{font-size:.78rem;font-weight:600;color:var(--r-muted)}

/* Hero */
.r360-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:40px;align-items:end;padding-top:34px;padding-bottom:34px}
.r360-eyebrow{margin:0 0 10px;font-size:.69rem;line-height:1.3;letter-spacing:.16em;font-weight:800;color:var(--r-teal-2);text-transform:uppercase}
.r360-hero h1{max-width:900px;margin:0;font-family:var(--r-font);font-size:clamp(2.7rem,5.2vw,5.3rem);line-height:1.02;letter-spacing:-.045em;font-weight:650;color:var(--r-text)}
.r360-hero-copy>p:last-child{max-width:800px;margin:20px 0 0;color:var(--r-muted);font-size:clamp(1rem,1.4vw,1.1rem);line-height:1.78}
.r360-hero-trust{display:grid;gap:10px;padding-bottom:6px}
.r360-hero-trust span{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--r-border);font-size:.82rem;color:var(--r-muted)}
.r360-hero-trust b{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:rgba(111,99,255,.10);color:var(--r-teal-2);font-size:.7rem;letter-spacing:.08em}

/* Main dashboard */
.r360-dashboard{display:grid;grid-template-columns:285px minmax(0,1fr) 270px;gap:16px;align-items:start;padding-bottom:20px;transition:grid-template-columns .32s ease}
.r360-side,.r360-player{border:1px solid var(--r-border);background:var(--r-panel);box-shadow:var(--r-shadow);backdrop-filter:blur(16px)}
.r360-side{border-radius:28px;padding:22px}
.r360-side-heading h2{margin:0 0 17px;font-size:1.25rem;line-height:1.25;letter-spacing:-.02em;font-weight:650}
.r360-practice-list{display:grid;gap:8px}
.r360-practice{width:100%;min-height:64px;border:1px solid transparent;border-radius:17px;background:transparent;display:grid;grid-template-columns:38px minmax(0,1fr) 16px;gap:11px;align-items:center;text-align:left;padding:9px 10px;cursor:pointer;transition:.18s ease}
.r360-practice:hover{background:rgba(255,255,255,.045);border-color:var(--r-border)}
.r360-practice.is-active{background:linear-gradient(135deg,rgba(111,99,255,.13),rgba(227,189,120,.07));border-color:rgba(111,99,255,.23)}
.r360-practice-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:rgba(255,255,255,.055);color:var(--r-teal-2);font-size:1rem}
.r360-practice.is-active .r360-practice-icon{background:rgba(111,99,255,.16)}
.r360-practice-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.r360-practice-copy strong{font-size:.83rem;font-weight:650;line-height:1.24;color:var(--r-text)}
.r360-practice-copy small{font-size:.66rem;line-height:1.35;color:var(--r-muted-2)}
.r360-chevron{color:var(--r-muted-2);font-size:1.15rem}
.r360-select-block{margin-top:22px;padding-top:19px;border-top:1px solid var(--r-border)}
.r360-select-block>label{display:block;margin:0 0 9px;font-size:.72rem;font-weight:700;color:var(--r-muted)}
.r360-duration-options{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}
.r360-duration-options button{min-height:39px;border:1px solid var(--r-border);border-radius:12px;background:rgba(255,255,255,.03);font-size:.72rem;font-weight:600;color:var(--r-muted);cursor:pointer}
.r360-duration-options button.is-active{background:rgba(227,189,120,.12);border-color:rgba(227,189,120,.30);color:var(--r-gold)}
.r360-safety-note{display:flex;gap:11px;margin-top:19px;padding:14px;border:1px solid rgba(227,189,120,.20);border-radius:16px;background:rgba(227,189,120,.055)}
.r360-safety-icon{flex:0 0 25px;width:25px;height:25px;border-radius:9px;display:grid;place-items:center;background:rgba(227,189,120,.15);color:var(--r-gold);font-weight:800;font-size:.72rem}
.r360-safety-note strong{font-size:.72rem;color:var(--r-gold)}
.r360-safety-note p{margin:5px 0 0;font-size:.64rem;line-height:1.55;color:var(--r-muted)}

/* Player */
.r360-player{border-radius:30px;padding:18px;min-width:0}
.r360-player-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:5px 3px 16px}
.r360-player-head h2{margin:0;font-size:clamp(1.55rem,2.2vw,2.05rem);letter-spacing:-.025em;font-weight:650}
.r360-player-subtitle{margin:6px 0 0;color:var(--r-muted);font-size:.77rem;line-height:1.55;max-width:620px}
.r360-view-switch{display:flex;gap:4px;padding:4px;border:1px solid var(--r-border);border-radius:13px;background:rgba(255,255,255,.025);flex:0 0 auto}
.r360-view-switch button{border:0;border-radius:9px;background:transparent;padding:8px 9px;font-size:.66rem;color:var(--r-muted);cursor:pointer}
.r360-view-switch button.is-active{background:rgba(111,99,255,.13);color:var(--r-teal-2)}

/* Stage */
.r360-stage-wrap{position:relative}
.r360-stage{position:relative;min-height:650px;border:1px solid var(--r-border);border-radius:24px;overflow:hidden;background:
  radial-gradient(circle at 50% 46%,rgba(111,99,255,.09),transparent 33%),
  radial-gradient(circle at 50% 64%,rgba(239,177,119,.05),transparent 28%),
  linear-gradient(180deg,rgba(21,14,63,.86),rgba(8,7,29,.98));
transition:background .28s ease,min-height .3s ease}
.r360-page[data-theme="light"] .r360-stage{background:
  radial-gradient(circle at 50% 46%,rgba(111,99,255,.15),transparent 34%),
  radial-gradient(circle at 50% 64%,rgba(239,177,119,.08),transparent 28%),
  linear-gradient(180deg,#faf8ff,#f0edfb)}
.r360-stage:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.4),transparent 88%);pointer-events:none}
.r360-stage-topline{position:absolute;left:18px;right:18px;top:16px;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:12px}
.r360-stage-status{display:flex;align-items:center;gap:8px;font-size:.62rem;letter-spacing:.12em;font-weight:700;color:var(--r-muted)}
.r360-stage-status i{width:7px;height:7px;border-radius:50%;background:var(--r-gold);box-shadow:0 0 0 6px rgba(227,189,120,.08)}
.r360-stage.is-running .r360-stage-status i{background:var(--r-teal);box-shadow:0 0 0 6px rgba(111,99,255,.09)}
.r360-stage-fullscreen{width:39px;height:39px;border-radius:12px;border:1px solid var(--r-border);background:rgba(255,255,255,.035);cursor:pointer;color:var(--r-muted)}
.r360-stage-fullscreen:hover{color:var(--r-text);border-color:var(--r-border-strong)}
.r360-orbit{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(111,99,255,.10);pointer-events:none}
.r360-orbit-1{width:430px;height:430px}
.r360-orbit-2{width:540px;height:540px;border-color:rgba(227,189,120,.06)}
.r360-aura{position:absolute;left:50%;top:50%;width:330px;height:390px;transform:translate(-50%,-50%) scale(.76);border-radius:50%;background:radial-gradient(ellipse,rgba(111,99,255,.22),rgba(111,99,255,.08) 40%,transparent 72%);filter:blur(10px);opacity:.62;pointer-events:none;transition:opacity .08s linear}
.r360-phase-display{position:absolute;left:50%;top:65px;transform:translateX(-50%);z-index:9;text-align:center;display:flex;flex-direction:column;align-items:center;pointer-events:none}
.r360-phase-display>span{font-size:.62rem;letter-spacing:.15em;font-weight:700;color:var(--r-muted);text-transform:uppercase}
.r360-phase-display>strong{margin-top:2px;font-size:clamp(1.65rem,3vw,2.55rem);letter-spacing:.08em;font-weight:650;color:var(--r-text)}
.r360-phase-display>small{font-size:.72rem;color:var(--r-gold)}
.r360-anatomy{position:absolute;z-index:4;left:50%;bottom:14px;transform:translateX(-50%);height:555px;width:auto;max-width:88%;overflow:visible}
.r360-ground-shadow{fill:rgba(0,0,0,.16)}
.r360-thorax-zone{fill:rgba(111,99,255,.055);stroke:rgba(111,99,255,.14);stroke-width:2}
.r360-abdomen-zone{fill:rgba(227,189,120,.045);stroke:rgba(227,189,120,.10);stroke-width:2}
.r360-lungs{filter:drop-shadow(0 0 18px rgba(239,177,119,.21))}
.r360-lungs [data-lung-left],.r360-lungs [data-lung-right]{transform-box:fill-box;transform-origin:center;transition:opacity .22s ease}
.r360-bronchi{filter:drop-shadow(0 0 5px rgba(255,238,208,.25))}
.r360-airway circle{fill:#fff0c7;filter:drop-shadow(0 0 8px rgba(255,234,188,.8))}
.r360-diaphragm text,.r360-anatomy-labels text{fill:var(--r-muted);font-family:var(--r-font);font-size:14px;font-weight:500}
.r360-anatomy-labels line{stroke:rgba(227,189,120,.42);stroke-width:1.4}
.r360-diaphragm path{transition:stroke .2s ease}
.r360-body-cue{position:absolute;z-index:9;left:18px;bottom:18px;max-width:290px;display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--r-border);border-radius:16px;background:rgba(18,12,55,.88);backdrop-filter:blur(10px)}
.r360-page[data-theme="light"] .r360-body-cue{background:rgba(255,255,255,.82)}
.r360-body-cue>span{display:grid;place-items:center;width:35px;height:35px;flex:0 0 35px;border-radius:12px;background:rgba(111,99,255,.12);color:var(--r-teal-2);font-size:1rem}
.r360-body-cue strong{display:block;font-size:.72rem;font-weight:650}
.r360-body-cue small{display:block;margin-top:2px;font-size:.61rem;line-height:1.45;color:var(--r-muted)}
.r360-phase-track{position:absolute;left:50%;bottom:22px;z-index:8;width:min(260px,40%);height:4px;transform:translateX(-50%);background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}
.r360-phase-track>span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--r-gold),var(--r-teal));transition:width .08s linear}

/* Visualization modes */
.r360-page[data-visual="simple"] .r360-anatomy-layer{opacity:0!important;pointer-events:none}
.r360-page[data-visual="simple"] .r360-human-outer{opacity:.90}
.r360-page[data-visual="guided"] .r360-anatomy-anatomical{opacity:0;pointer-events:none}
.r360-page[data-visual="guided"] .r360-anatomy-guided{opacity:1}
.r360-page[data-visual="anatomical"] .r360-anatomy-layer{opacity:1}
.r360-anatomy-layer{transition:opacity .25s ease}

/* Transport */
.r360-transport{padding:15px 3px 3px}
.r360-timeline-row{display:grid;grid-template-columns:42px 1fr 42px;gap:10px;align-items:center;color:var(--r-muted-2);font-size:.62rem;font-variant-numeric:tabular-nums}
.r360-timeline{height:5px;background:rgba(255,255,255,.07);border-radius:999px;overflow:hidden}
.r360-page[data-theme="light"] .r360-timeline{background:rgba(67,52,139,.10)}
.r360-timeline>span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--r-teal),var(--r-gold));transition:width .08s linear}
.r360-actions{display:grid;grid-template-columns:minmax(120px,.75fr) minmax(220px,1.65fr) minmax(140px,.85fr);gap:10px;margin-top:13px}
.r360-actions button{min-height:52px;border-radius:15px;border:1px solid var(--r-border);cursor:pointer;font-weight:650;transition:.18s ease}
.r360-secondary{background:rgba(255,255,255,.035);color:var(--r-muted)!important;font-size:.72rem}
.r360-secondary:hover{background:rgba(255,255,255,.06);color:var(--r-text)!important}
.r360-play{border:0!important;background:linear-gradient(110deg,#7667ff,#8f83ff 42%,#d7b77b 118%);color:#0b0820!important;box-shadow:0 14px 32px rgba(82,62,220,.24);font-size:.78rem;letter-spacing:.02em}
.r360-play:hover{transform:translateY(-1px);box-shadow:0 18px 40px rgba(82,62,220,.32)}
.r360-play>span:first-child{margin-right:8px}

/* Right context */
.r360-context{display:grid;gap:12px;background:transparent;border:0;box-shadow:none;padding:0;backdrop-filter:none}
.r360-now-card,.r360-session-card,.r360-professional-card{border:1px solid var(--r-border);border-radius:22px;background:var(--r-panel);box-shadow:var(--r-shadow);backdrop-filter:blur(14px)}
.r360-now-card{padding:20px}
.r360-now-card h3{margin:0 0 8px;font-size:1.05rem;line-height:1.3;font-weight:650}
.r360-now-card>p:last-child{margin:0;color:var(--r-muted);font-size:.72rem;line-height:1.65}
.r360-session-card{padding:18px}
.r360-session-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:11px;margin-bottom:3px;border-bottom:1px solid var(--r-border);font-size:.74rem}
.r360-session-title span{color:var(--r-muted)}
.r360-session-title strong{color:var(--r-gold);font-size:.76rem}
.r360-stat{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--r-border);font-size:.7rem}
.r360-stat:last-child{border-bottom:0;padding-bottom:0}
.r360-stat span{color:var(--r-muted)}
.r360-stat strong{font-size:.73rem}
.r360-professional-card{padding:20px;background:linear-gradient(160deg,var(--r-panel),rgba(155,143,228,.07))}
.r360-professional-tag{font-size:.58rem;letter-spacing:.12em;color:var(--r-violet);font-weight:800}
.r360-professional-card h3{margin:10px 0 7px;font-size:.92rem;line-height:1.35;font-weight:650}
.r360-professional-card p{margin:0;color:var(--r-muted);font-size:.66rem;line-height:1.6}

/* After note */
.r360-after-note{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:3px;margin-bottom:44px;padding:20px 22px;border:1px solid var(--r-border);border-radius:22px;background:rgba(255,255,255,.025)}
.r360-after-note>div:first-child{display:flex;flex-direction:column;gap:2px}
.r360-after-note>div:first-child>span{font-size:.58rem;letter-spacing:.15em;color:var(--r-teal-2);font-weight:800}
.r360-after-note strong{font-size:.86rem;font-weight:650}
.r360-after-note small{font-size:.65rem;color:var(--r-muted)}
.r360-after-pills{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.r360-after-pills span{padding:7px 9px;border:1px solid var(--r-border);border-radius:999px;color:var(--r-muted);font-size:.6rem}

/* Immersive focus mode */
.r360-page.is-focus .r360-hero,.r360-page.is-focus .r360-library,.r360-page.is-focus .r360-context,.r360-page.is-focus .r360-after-note{display:none}
.r360-page.is-focus .r360-header{padding-top:12px;padding-bottom:10px}
.r360-page.is-focus .r360-brand-logo{width:180px}
.r360-page.is-focus .r360-dashboard{display:block;width:min(1180px,calc(100% - 24px));padding-bottom:18px}
.r360-page.is-focus .r360-player{padding:10px;border-radius:24px}
.r360-page.is-focus .r360-player-head{padding:4px 7px 10px}
.r360-page.is-focus .r360-player-subtitle{display:none}
.r360-page.is-focus .r360-stage{min-height:calc(100vh - 240px)}
.r360-page.is-focus .r360-anatomy{height:min(66vh,650px)}
.r360-page.is-focus .r360-body-cue{max-width:330px}

/* Audio drawer */
.r360-audio-drawer,.r360-complete{position:fixed;inset:0;z-index:200;display:none}
.r360-audio-drawer.is-open,.r360-complete.is-open{display:block}
.r360-drawer-backdrop,.r360-modal-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(4,12,12,.66);backdrop-filter:blur(6px);cursor:default}
.r360-drawer-panel{position:absolute;right:0;top:0;height:100%;width:min(470px,92vw);overflow:auto;padding:28px;background:var(--r-panel-solid);border-left:1px solid var(--r-border);box-shadow:-24px 0 70px rgba(0,0,0,.23)}
.r360-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--r-border)}
.r360-drawer-head h2{margin:0;font-size:1.7rem;font-weight:650}
.r360-drawer-head>button{width:40px;height:40px;border:1px solid var(--r-border);border-radius:12px;background:transparent;font-size:1.25rem;color:var(--r-muted);cursor:pointer}
.r360-audio-control{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:22px}
.r360-audio-control strong{display:block;font-size:.82rem;font-weight:650}
.r360-audio-control small{display:block;margin-top:3px;color:var(--r-muted);font-size:.64rem;line-height:1.45}
.r360-switch{position:relative;display:block;flex:0 0 46px;width:46px;height:27px}
.r360-switch input{position:absolute;opacity:0;pointer-events:none}
.r360-switch span{position:absolute;inset:0;border-radius:999px;background:rgba(255,255,255,.10);border:1px solid var(--r-border);cursor:pointer;transition:.18s ease}
.r360-switch span:after{content:"";position:absolute;width:19px;height:19px;left:3px;top:3px;border-radius:50%;background:var(--r-muted);transition:.18s ease}
.r360-switch input:checked+span{background:rgba(111,99,255,.22);border-color:rgba(111,99,255,.30)}
.r360-switch input:checked+span:after{left:22px;background:var(--r-teal)}
.r360-volume-row,.r360-voice-select-row{display:grid;grid-template-columns:1fr 145px;gap:18px;align-items:center;margin-top:12px;padding-bottom:17px;border-bottom:1px solid var(--r-border);font-size:.68rem;color:var(--r-muted)}
.r360-volume-row input[type="range"]{width:100%;accent-color:var(--r-teal)}
.r360-voice-select-row select{width:100%;min-width:0;border:1px solid var(--r-border);border-radius:11px;padding:8px 9px;background:rgba(255,255,255,.04);color:var(--r-text);font-size:.62rem;outline:none}
.r360-page[data-theme="light"] .r360-voice-select-row select{background:#fff}
.r360-audio-footnote{margin:22px 0 0;padding:14px;border:1px solid var(--r-border);border-radius:14px;color:var(--r-muted);font-size:.62rem;line-height:1.6;background:rgba(255,255,255,.025)}

/* Complete modal */
.r360-complete-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(560px,calc(100% - 28px));padding:34px;border:1px solid var(--r-border);border-radius:26px;background:var(--r-panel-solid);box-shadow:0 32px 100px rgba(0,0,0,.33);text-align:center}
.r360-complete-icon{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 18px;border-radius:20px;background:rgba(111,99,255,.14);color:var(--r-teal);font-size:1.4rem}
.r360-complete-card h2{margin:0;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:650;letter-spacing:-.03em}
.r360-complete-card>p:not(.r360-eyebrow){max-width:460px;margin:12px auto 20px;color:var(--r-muted);font-size:.78rem;line-height:1.7}
.r360-feeling-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.r360-feeling-options button{min-height:48px;border:1px solid var(--r-border);border-radius:13px;background:rgba(255,255,255,.035);font-size:.66rem;color:var(--r-muted);cursor:pointer}
.r360-feeling-options button.is-selected{border-color:rgba(111,99,255,.35);background:rgba(111,99,255,.13);color:var(--r-teal-2)}
.r360-complete-close{width:100%;min-height:52px;margin-top:14px;border-radius:14px}

/* Fullscreen stage */
.r360-stage:fullscreen{border-radius:0;min-height:100vh;background:#09071d}
.r360-stage:fullscreen .r360-anatomy{height:min(76vh,760px)}
.r360-stage:fullscreen .r360-phase-display{top:42px}
.r360-stage:fullscreen .r360-body-cue{left:30px;bottom:30px}

/* Session state */
.r360-page.is-session-active .r360-library,.r360-page.is-session-active .r360-context{opacity:.46;transition:opacity .25s ease}
.r360-page.is-session-active .r360-practice,.r360-page.is-session-active [data-duration-choice]{pointer-events:none}
.r360-stage.is-inhale .r360-phase-display>strong{color:#f4cf94}
.r360-stage.is-exhale .r360-phase-display>strong{color:var(--r-teal-2)}
.r360-stage.is-pause .r360-phase-display>strong{color:var(--r-violet)}

/* Light mode polish */
.r360-page[data-theme="light"] .r360-side,.r360-page[data-theme="light"] .r360-player,.r360-page[data-theme="light"] .r360-now-card,.r360-page[data-theme="light"] .r360-session-card,.r360-page[data-theme="light"] .r360-professional-card{box-shadow:var(--r-shadow)}
.r360-page[data-theme="light"] .r360-practice:hover,.r360-page[data-theme="light"] .r360-secondary,.r360-page[data-theme="light"] .r360-header-btn{background:rgba(111,99,255,.035)}

/* Motion preferences */
@media (prefers-reduced-motion:reduce){
  .r360-page *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* Responsive */
@media(max-width:1180px){
  .r360-dashboard{grid-template-columns:250px minmax(0,1fr)}
  .r360-context{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}
  .r360-stage{min-height:610px}
  .r360-anatomy{height:520px}
}
@media(max-width:920px){
  .r360-shell{width:min(100% - 24px,1540px)}
  .r360-header{padding-top:18px}
  .r360-brand-copy{display:none}
  .r360-brand-logo{width:min(220px,56vw)}
  .r360-hero{grid-template-columns:1fr;padding-top:22px;padding-bottom:26px}
  .r360-hero-trust{display:none}
  .r360-hero h1{font-size:clamp(2.4rem,9vw,4rem)}
  .r360-dashboard{grid-template-columns:1fr}
  .r360-library{order:1}
  .r360-player{order:0}
  .r360-context{order:2;grid-column:auto;grid-template-columns:1fr 1fr}
  .r360-professional-card{grid-column:1/-1}
  .r360-practice-list{grid-template-columns:1fr 1fr}
  .r360-stage{min-height:640px}
}
@media(max-width:680px){
  .r360-shell{width:min(100% - 16px,1540px)}
  .r360-header-actions{gap:6px}
  .r360-header-btn{min-height:40px;padding:0 10px}
  .r360-header-btn-text{display:none}
  .r360-brand-logo{width:min(205px,66vw)}
  .r360-hero{padding-top:12px;padding-bottom:20px}
  .r360-hero-copy>p:last-child{font-size:.88rem;line-height:1.65}
  .r360-player{padding:9px;border-radius:22px}
  .r360-player-head{display:block;padding:8px 6px 12px}
  .r360-player-head h2{font-size:1.35rem}
  .r360-player-subtitle{font-size:.7rem}
  .r360-view-switch{margin-top:12px;width:100%}
  .r360-view-switch button{flex:1;padding:8px 5px}
  .r360-stage{min-height:570px;border-radius:18px}
  .r360-anatomy{height:470px;bottom:9px;max-width:100%}
  .r360-orbit-1{width:340px;height:340px}.r360-orbit-2{width:430px;height:430px}
  .r360-phase-display{top:61px}
  .r360-body-cue{left:10px;right:10px;bottom:14px;max-width:none;padding:10px 12px}
  .r360-body-cue small{font-size:.58rem}
  .r360-phase-track{display:none}
  .r360-actions{grid-template-columns:1fr 1.8fr}
  .r360-actions [data-focus-mode]{grid-column:1/-1;min-height:43px}
  .r360-practice-list{grid-template-columns:1fr}
  .r360-context{grid-template-columns:1fr}
  .r360-professional-card{grid-column:auto}
  .r360-after-note{display:block;margin-bottom:28px}
  .r360-after-pills{justify-content:flex-start;margin-top:13px}
  .r360-volume-row,.r360-voice-select-row{grid-template-columns:1fr;gap:9px}
  .r360-feeling-options{grid-template-columns:1fr 1fr}
  .r360-complete-card{padding:26px 18px}
  .r360-page.is-focus .r360-header{padding-top:8px}
  .r360-page.is-focus .r360-brand-logo{width:150px}
  .r360-page.is-focus .r360-player-head{display:none}
  .r360-page.is-focus .r360-stage{min-height:calc(100vh - 205px)}
  .r360-page.is-focus .r360-anatomy{height:min(62vh,520px)}
}
@media(max-width:420px){
  .r360-hero h1{font-size:2.25rem}
  .r360-stage{min-height:535px}
  .r360-anatomy{height:430px}
  .r360-phase-display>strong{font-size:1.55rem}
  .r360-actions{grid-template-columns:1fr}
  .r360-actions [data-focus-mode]{grid-column:auto}
  .r360-secondary{min-height:44px!important}
  .r360-duration-options{grid-template-columns:repeat(4,1fr)}
  .r360-duration-options button{padding:0 4px;font-size:.62rem}
}

/* Integración con el footer público de LIVE360 */
body:has(.r360-page){background:#08071a}
body:has(.r360-page[data-theme="dark"]) .site-footer{background:#08071a;color:#aaa5ce;border-top:1px solid rgba(190,182,255,.10)}
body:has(.r360-page[data-theme="light"]){background:#f3f0e9}
body:has(.r360-page[data-theme="light"]) .site-footer{background:#f3f0e9;color:#71817d;border-top:1px solid rgba(67,52,139,.10)}

/* ======================================================================
   RESPIRA 360 v0.4 · Legibilidad universal + Guía 360
   Objetivo: lectura cómoda también para personas mayores, sin microtexto.
   ====================================================================== */
.r360-page{
  --r-muted:#d6d4e9;
  --r-muted-2:#aaa5ce;
  font-size:16px;
}
.r360-page[data-theme="light"]{
  --r-muted:#526863;
  --r-muted-2:#687d78;
}
.sr-only{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}

/* Default typography: no essential descriptive text below ~14 px. */
.r360-brand-copy strong{font-size:.94rem}
.r360-brand-copy small{font-size:.9rem;line-height:1.35}
.r360-header-btn{min-height:48px;padding:0 16px}
.r360-header-btn-text{font-size:.94rem}
.r360-header-btn>span:first-child{font-size:1.08rem;font-weight:700}
.r360-eyebrow{font-size:.82rem;line-height:1.45;letter-spacing:.12em}
.r360-hero-copy>p:last-child{font-size:clamp(1.08rem,1.5vw,1.22rem);line-height:1.75}
.r360-hero-trust span{font-size:.95rem;line-height:1.45}
.r360-hero-trust b{font-size:.82rem}
.r360-side-heading h2{font-size:1.38rem}
.r360-practice{min-height:76px;padding:12px 12px}
.r360-practice-copy strong{font-size:1rem;line-height:1.35}
.r360-practice-copy small{font-size:.88rem;line-height:1.5;color:var(--r-muted)}
.r360-select-block>label{font-size:.94rem}
.r360-duration-options button{min-height:48px;font-size:.93rem}
.r360-safety-note{padding:16px}
.r360-safety-icon{width:30px;height:30px;flex-basis:30px;font-size:.88rem}
.r360-safety-note strong{font-size:.95rem}
.r360-safety-note p{font-size:.88rem;line-height:1.65}
.r360-player-head h2{font-size:clamp(1.75rem,2.4vw,2.25rem)}
.r360-player-subtitle{font-size:.96rem;line-height:1.65}
.r360-view-switch button{min-height:44px;padding:9px 12px;font-size:.88rem}
.r360-stage-status{font-size:.82rem;line-height:1.4;letter-spacing:.09em}
.r360-stage-fullscreen{width:46px;height:46px;font-size:1.05rem}
.r360-phase-display>span{font-size:.88rem;letter-spacing:.11em}
.r360-phase-display>strong{font-size:clamp(2.25rem,4vw,3.4rem);line-height:1.05}
.r360-phase-display>small{font-size:1rem;line-height:1.4}
.r360-body-cue{max-width:380px;padding:16px 18px;gap:13px}
.r360-body-cue>span{width:44px;height:44px;flex-basis:44px;font-size:1.2rem}
.r360-body-cue strong{font-size:1rem;line-height:1.4}
.r360-body-cue small{font-size:.9rem;line-height:1.58}
.r360-timeline-row{grid-template-columns:54px 1fr 54px;font-size:.84rem}
.r360-actions button{min-height:58px;font-size:.95rem}
.r360-secondary,.r360-play{font-size:.95rem}
.r360-now-card h3{font-size:1.18rem}
.r360-now-card>p:last-child{font-size:.92rem;line-height:1.68}
.r360-session-title,.r360-session-title strong,.r360-stat,.r360-stat strong{font-size:.91rem}
.r360-professional-tag{font-size:.78rem;line-height:1.4}
.r360-professional-card h3{font-size:1.08rem}
.r360-professional-card p{font-size:.9rem;line-height:1.7}
.r360-after-note>div:first-child>span{font-size:.78rem}
.r360-after-note strong{font-size:1rem}
.r360-after-note small,.r360-after-pills span{font-size:.86rem;line-height:1.5}
.r360-drawer-head h2{font-size:1.9rem}
.r360-audio-control strong{font-size:1rem}
.r360-audio-control small{font-size:.9rem;line-height:1.55}
.r360-volume-row,.r360-voice-select-row{font-size:.92rem}
.r360-voice-select-row select{font-size:.9rem;min-height:46px}
.r360-audio-footnote{font-size:.9rem;line-height:1.7}
.r360-complete-card>p:not(.r360-eyebrow){font-size:1rem;line-height:1.75}
.r360-feeling-options button{min-height:54px;font-size:.9rem}

/* Stage hierarchy: keep phase instructions away from the avatar's face. */
.r360-stage{min-height:720px}
.r360-phase-display{
  top:70px;
  min-width:min(420px,72%);
  padding:10px 22px 12px;
  border-radius:20px;
  background:linear-gradient(180deg,rgba(13,9,43,.88),rgba(13,9,43,.48));
  border:1px solid rgba(255,255,255,.055);
  backdrop-filter:blur(8px);
}
.r360-page[data-theme="light"] .r360-phase-display{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.68));border-color:rgba(67,52,139,.08)}
.r360-anatomy{height:560px;bottom:-30px}
.r360-orbit{top:54%}
.r360-aura{top:55%}
.r360-phase-track{bottom:26px;height:6px}

/* Higher-visibility text option. */
.r360-page[data-text-size="large"] .r360-brand-copy small,
.r360-page[data-text-size="large"] .r360-header-btn-text,
.r360-page[data-text-size="large"] .r360-eyebrow,
.r360-page[data-text-size="large"] .r360-practice-copy small,
.r360-page[data-text-size="large"] .r360-safety-note p,
.r360-page[data-text-size="large"] .r360-player-subtitle,
.r360-page[data-text-size="large"] .r360-body-cue small,
.r360-page[data-text-size="large"] .r360-now-card>p:last-child,
.r360-page[data-text-size="large"] .r360-professional-card p,
.r360-page[data-text-size="large"] .r360-audio-control small,
.r360-page[data-text-size="large"] .r360-audio-footnote{font-size:1rem}
.r360-page[data-text-size="large"] .r360-practice-copy strong,
.r360-page[data-text-size="large"] .r360-body-cue strong,
.r360-page[data-text-size="large"] .r360-stat,
.r360-page[data-text-size="large"] .r360-stat strong{font-size:1.06rem}
.r360-page[data-text-size="large"] .r360-dashboard{grid-template-columns:320px minmax(0,1fr) 310px}

/* Guide 360 card */
.r360-guide-card{display:flex;gap:14px;padding:20px;border:1px solid rgba(111,99,255,.24);border-radius:22px;background:linear-gradient(145deg,rgba(111,99,255,.10),rgba(155,143,228,.055));box-shadow:var(--r-shadow)}
.r360-guide-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:rgba(111,99,255,.15);color:var(--r-teal-2);font-size:1.2rem}
.r360-guide-card .r360-eyebrow{margin-bottom:6px}
.r360-guide-card h3{margin:0;font-size:1.08rem;line-height:1.4}
.r360-guide-card p:not(.r360-eyebrow){margin:8px 0 14px;color:var(--r-muted);font-size:.9rem;line-height:1.65}
.r360-guide-open{width:100%;min-height:48px;border:1px solid rgba(111,99,255,.30);border-radius:13px;background:rgba(111,99,255,.13);color:var(--r-teal-2)!important;font-size:.88rem;font-weight:750;cursor:pointer}
.r360-guide-open:hover{background:rgba(111,99,255,.19)}

/* Guide 360 drawer */
.r360-ai-drawer{position:fixed;inset:0;z-index:220;display:none}
.r360-ai-drawer.is-open{display:block}
.r360-ai-panel{position:absolute;right:0;top:0;height:100%;width:min(560px,96vw);display:flex;flex-direction:column;overflow:hidden;padding:26px;background:var(--r-panel-solid);border-left:1px solid var(--r-border);box-shadow:-24px 0 70px rgba(0,0,0,.28)}
.r360-ai-safety{display:flex;gap:10px;flex-direction:column;margin:18px 0 14px;padding:14px 16px;border:1px solid rgba(227,189,120,.21);border-radius:15px;background:rgba(227,189,120,.055);font-size:.88rem;line-height:1.55;color:var(--r-muted)}
.r360-ai-safety strong{color:var(--r-gold);font-size:.94rem}
.r360-ai-chat{flex:1;min-height:220px;overflow:auto;padding:12px 2px 16px;display:flex;flex-direction:column;gap:12px;scroll-behavior:smooth}
.r360-ai-message{display:flex;gap:11px;align-items:flex-start;max-width:92%}
.r360-ai-message.is-user{align-self:flex-end;flex-direction:row-reverse}
.r360-ai-avatar{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:13px;background:rgba(111,99,255,.14);color:var(--r-teal-2);font-size:1rem}
.r360-ai-message>div{padding:13px 15px;border:1px solid var(--r-border);border-radius:16px;background:rgba(255,255,255,.035)}
.r360-ai-message.is-user>div{background:rgba(111,99,255,.10);border-color:rgba(111,99,255,.20)}
.r360-ai-message strong{display:block;margin-bottom:4px;font-size:.9rem}
.r360-ai-message p{margin:0;color:var(--r-muted);font-size:.95rem;line-height:1.65;white-space:pre-wrap}
.r360-ai-recommendation{margin-top:10px;padding:12px;border-radius:13px;background:rgba(227,189,120,.07);border:1px solid rgba(227,189,120,.18)}
.r360-ai-recommendation strong{color:var(--r-gold)}
.r360-ai-recommendation button{width:100%;min-height:46px;margin-top:10px;border:1px solid rgba(111,99,255,.28);border-radius:12px;background:rgba(111,99,255,.13);color:var(--r-teal-2)!important;font-size:.9rem;font-weight:700;cursor:pointer}
.r360-ai-quick{display:flex;gap:8px;flex-wrap:wrap;padding:10px 0}
.r360-ai-quick button{min-height:42px;padding:8px 12px;border:1px solid var(--r-border);border-radius:999px;background:rgba(255,255,255,.035);color:var(--r-muted);font-size:.84rem;cursor:pointer}
.r360-ai-quick button:hover{border-color:rgba(111,99,255,.30);color:var(--r-text)}
.r360-ai-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-top:12px;border-top:1px solid var(--r-border)}
.r360-ai-compose textarea{width:100%;min-height:58px;max-height:150px;resize:vertical;padding:13px 14px;border:1px solid var(--r-border);border-radius:14px;background:rgba(255,255,255,.035);color:var(--r-text);font-size:.96rem;line-height:1.5;outline:none}
.r360-page[data-theme="light"] .r360-ai-compose textarea{background:#fff}
.r360-ai-compose textarea:focus{border-color:rgba(111,99,255,.42);box-shadow:0 0 0 3px rgba(111,99,255,.08)}
.r360-ai-compose button{min-width:92px;min-height:58px;border:0;border-radius:14px;background:linear-gradient(120deg,var(--r-teal),#ffd65a);color:#0b0820!important;font-size:.9rem;font-weight:750;cursor:pointer}
.r360-ai-privacy{margin:10px 0 0;color:var(--r-muted-2);font-size:.78rem;line-height:1.55}

/* Better keyboard focus for accessibility */
.r360-page button:focus-visible,.r360-page select:focus-visible,.r360-page input:focus-visible,.r360-page textarea:focus-visible,.r360-page a:focus-visible{outline:3px solid rgba(111,99,255,.45);outline-offset:3px}

@media(max-width:1180px){
  .r360-page[data-text-size="large"] .r360-dashboard{grid-template-columns:280px minmax(0,1fr)}
  .r360-stage{min-height:700px}
}
@media(max-width:920px){
  .r360-stage{min-height:680px}
  .r360-anatomy{height:535px;bottom:-20px}
  .r360-context{grid-template-columns:1fr 1fr}
  .r360-guide-card{grid-column:1/-1}
}
@media(max-width:680px){
  .r360-header{align-items:flex-start}
  .r360-header-actions{flex-wrap:wrap;justify-content:flex-end}
  .r360-header-btn{min-width:46px;min-height:46px;padding:0 11px}
  .r360-header-btn-text{display:none}
  .r360-hero-copy>p:last-child{font-size:1rem;line-height:1.7}
  .r360-practice-list{grid-template-columns:1fr}
  .r360-practice-copy strong{font-size:1rem}
  .r360-practice-copy small{font-size:.9rem}
  .r360-player-head h2{font-size:1.6rem}
  .r360-player-subtitle{font-size:.95rem}
  .r360-view-switch button{font-size:.84rem}
  .r360-stage{min-height:650px}
  .r360-phase-display{top:62px;min-width:calc(100% - 72px);padding:9px 14px 10px}
  .r360-phase-display>strong{font-size:2.2rem}
  .r360-anatomy{height:500px;bottom:-2px}
  .r360-body-cue{left:12px;right:12px;bottom:28px;max-width:none;padding:14px}
  .r360-body-cue strong{font-size:.98rem}
  .r360-body-cue small{font-size:.9rem}
  .r360-actions{grid-template-columns:1fr}
  .r360-actions button{min-height:54px}
  .r360-context{grid-template-columns:1fr}
  .r360-guide-card{grid-column:auto}
  .r360-ai-panel{width:100vw;padding:18px}
  .r360-ai-compose{grid-template-columns:1fr}
  .r360-ai-compose button{width:100%;min-height:50px}
  .r360-feeling-options{grid-template-columns:1fr 1fr}
}


/* RESPIRA 360 v0.5 · Mobile-first UX / anatomical standard */
html.r360-overlay-open,body.r360-overlay-open{overflow:hidden!important;overscroll-behavior:none}.r360-ui-icon{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.r360-aa-icon{font-weight:800;letter-spacing:-.04em;color:var(--r-gold)}.r360-mobile-menu-toggle{display:none;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 14px;border:1px solid var(--r-border);border-radius:14px;background:rgba(255,255,255,.04);color:var(--r-text);font-weight:700;cursor:pointer}.r360-mobile-menu-toggle .r360-ui-icon{color:var(--r-gold)}
.r360-practice-copy em{display:inline-flex;width:max-content;max-width:100%;margin-top:4px;padding:3px 8px;border-radius:999px;background:rgba(111,99,255,.08);border:1px solid rgba(111,99,255,.13);color:var(--r-teal-2);font-size:.72rem;line-height:1.25;font-style:normal;font-weight:650}.r360-practice[data-intensity-level="media"] .r360-practice-copy em{background:rgba(227,189,120,.08);border-color:rgba(227,189,120,.17);color:var(--r-gold)}.r360-player-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.r360-player-meta>span{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border:1px solid var(--r-border);border-radius:999px;color:var(--r-muted);font-size:.82rem;font-weight:600}.r360-intensity-pill{color:var(--r-teal-2)!important;border-color:rgba(111,99,255,.20)!important;background:rgba(111,99,255,.07)}.r360-intensity-pill.is-medium{color:var(--r-gold)!important;border-color:rgba(227,189,120,.22)!important;background:rgba(227,189,120,.07)}
.r360-anatomy-standard{display:flex;align-items:center;gap:10px;flex:0 0 auto;max-width:310px;padding:10px 12px;border:1px solid rgba(111,99,255,.20);border-radius:15px;background:rgba(111,99,255,.07)}.r360-anatomy-standard>.r360-ui-icon{flex:0 0 24px;width:24px;height:24px;color:var(--r-teal-2)}.r360-anatomy-standard>span{display:flex;flex-direction:column;gap:2px;min-width:0}.r360-anatomy-standard strong{font-size:.86rem;line-height:1.3;color:var(--r-text)}.r360-anatomy-standard small{font-size:.76rem;line-height:1.4;color:var(--r-muted)}.r360-page[data-visual="anatomical"] .r360-anatomy-layer{opacity:1!important;pointer-events:auto}
.r360-stage{min-height:660px}.r360-anatomy{height:540px;bottom:-6px;max-width:94%}.r360-phase-display{top:68px;z-index:10}.r360-stage .r360-body-cue{position:static}.r360-body-cue-docked{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;z-index:1;max-width:none!important;margin:12px 0 0;padding:16px 18px;background:linear-gradient(135deg,rgba(111,99,255,.075),rgba(227,189,120,.045));border-color:rgba(111,99,255,.18)}.r360-phase-track{display:none!important}
.r360-breath-rail{margin-top:12px;padding:14px 16px 10px;border:1px solid var(--r-border);border-radius:18px;background:rgba(255,255,255,.025);overflow:hidden}.r360-breath-rail-head,.r360-breath-rail-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.r360-breath-rail-head{margin-bottom:5px}.r360-breath-rail-head>span{font-size:.84rem;font-weight:650;color:var(--r-muted)}.r360-breath-rail-head>strong{font-size:.86rem;color:var(--r-teal-2)}.r360-breath-rail svg{display:block;width:100%;height:82px;overflow:visible}.r360-wave-area{fill:url(#r360WaveFill);stroke:none}.r360-wave-path{fill:none;stroke:var(--r-teal);stroke-width:4;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 8px rgba(111,99,255,.20))}.r360-wave-cursor-line{stroke:rgba(227,189,120,.32);stroke-width:2;stroke-dasharray:5 5;vector-effect:non-scaling-stroke}.r360-wave-cursor{fill:var(--r-gold);stroke:rgba(255,255,255,.7);stroke-width:2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 8px rgba(227,189,120,.35))}.r360-breath-rail-foot{margin-top:1px;color:var(--r-muted-2);font-size:.75rem}.r360-breath-rail-foot span:nth-child(2){color:var(--r-muted);font-weight:600}
.r360-mobile-tools{position:fixed;inset:0;z-index:235;display:none}.r360-mobile-tools.is-open{display:block}.r360-mobile-tools-backdrop{position:absolute;inset:0;border:0;background:rgba(7,5,24,.72);backdrop-filter:blur(4px)}.r360-mobile-tools-panel{position:absolute;left:0;right:0;bottom:0;max-height:min(78dvh,720px);overflow:auto;padding:20px 18px calc(20px + env(safe-area-inset-bottom));background:var(--r-panel-solid);border:1px solid var(--r-border);border-bottom:0;border-radius:26px 26px 0 0;box-shadow:0 -28px 70px rgba(0,0,0,.32)}.r360-mobile-tools-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.r360-mobile-tools-head h2{margin:0;font-size:1.55rem}.r360-mobile-tools-head>button{display:grid;place-items:center;width:48px;height:48px;border:1px solid var(--r-border);border-radius:14px;background:rgba(255,255,255,.04);color:var(--r-text)}.r360-tool-row{width:100%;min-height:76px;display:grid;grid-template-columns:48px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:12px 8px;border:0;border-bottom:1px solid var(--r-border);background:transparent;text-align:left;cursor:pointer}.r360-tool-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.045);color:var(--r-gold);font-size:1rem}.r360-tool-row-ai .r360-tool-icon{color:var(--r-teal-2);background:rgba(111,99,255,.10)}.r360-tool-row>span:nth-child(2){display:flex;flex-direction:column;gap:3px}.r360-tool-row strong{font-size:1rem;color:var(--r-text)}.r360-tool-row small{font-size:.86rem;line-height:1.45;color:var(--r-muted)}.r360-tool-row>b{font-size:1.4rem;color:var(--r-muted-2)}
.r360-ai-panel{height:100dvh;max-height:100dvh;padding-top:max(22px,env(safe-area-inset-top));padding-bottom:max(18px,env(safe-area-inset-bottom));overscroll-behavior:contain}.r360-ai-head{position:sticky;top:0;z-index:8;margin:-4px -2px 0;padding:4px 2px 12px;background:var(--r-panel-solid)}.r360-ai-back{display:none;align-items:center;gap:5px;min-height:46px;padding:0 10px;border:1px solid var(--r-border);border-radius:13px;background:rgba(255,255,255,.035);color:var(--r-text);font-weight:700}.r360-ai-close{display:grid!important;place-items:center;width:48px!important;height:48px!important;flex:0 0 48px;border-radius:14px!important}.r360-ai-chat{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.r360-ai-compose{position:sticky;bottom:0;z-index:7;background:var(--r-panel-solid)}.r360-ai-compose textarea{font-size:16px!important}.r360-ai-rec-level{display:inline-flex;margin-bottom:7px;padding:3px 8px;border-radius:999px;background:rgba(111,99,255,.10);border:1px solid rgba(111,99,255,.18);color:var(--r-teal-2);font-size:.72rem;font-weight:700}.r360-mobile-session-nav{display:none}
@media(max-width:920px){.r360-dashboard{display:flex!important;flex-direction:column;gap:16px}.r360-player{order:1;width:100%}.r360-library{order:2;width:100%}.r360-context{order:3;width:100%}.r360-anatomy-standard{max-width:100%}.r360-stage{min-height:620px}.r360-anatomy{height:510px;bottom:-2px}}
@media(max-width:680px){.r360-page{overflow-x:hidden}.r360-shell{width:min(100% - 24px,1540px)}.r360-header{position:relative;align-items:center;padding-top:max(14px,env(safe-area-inset-top));padding-bottom:12px;gap:10px}.r360-brand{gap:10px;max-width:calc(100% - 92px)}.r360-brand-logo{width:min(168px,49vw)}.r360-brand-copy{display:none}.r360-header-actions{display:none!important}.r360-mobile-menu-toggle{display:flex;flex:0 0 auto}.r360-hero{padding-top:14px;padding-bottom:18px}.r360-hero h1{font-size:clamp(2.15rem,10.2vw,3.15rem);line-height:1.04}.r360-hero-copy>p:last-child{font-size:1.04rem;line-height:1.68}.r360-hero-trust{display:none}.r360-player{padding:12px;border-radius:22px}.r360-player-head{display:grid;gap:12px;padding:4px 2px 13px}.r360-player-head h2{font-size:1.55rem;line-height:1.2}.r360-player-subtitle{font-size:1rem;line-height:1.58}.r360-anatomy-standard{padding:10px 11px}.r360-player-meta>span{min-height:36px;font-size:.82rem}.r360-stage{min-height:568px;border-radius:19px}.r360-stage-topline{left:12px;right:12px;top:12px}.r360-stage-status{max-width:calc(100% - 60px);font-size:.72rem;letter-spacing:.065em}.r360-stage-fullscreen{width:44px;height:44px}.r360-phase-display{top:62px;min-width:calc(100% - 36px);max-width:calc(100% - 36px);padding:9px 12px 10px;border-radius:17px}.r360-phase-display>span{font-size:.77rem;letter-spacing:.08em}.r360-phase-display>strong{font-size:clamp(2rem,12vw,2.7rem)}.r360-phase-display>small{font-size:.96rem}.r360-anatomy{width:100%;max-width:100%;height:auto;bottom:-2px;top:142px;transform:translateX(-50%)}.r360-orbit,.r360-aura{top:58%}.r360-body-cue-docked{margin-top:10px;padding:15px 14px;border-radius:16px}.r360-body-cue-docked strong{font-size:1rem}.r360-body-cue-docked small{font-size:.94rem;line-height:1.55}.r360-breath-rail{padding:13px 12px 9px;border-radius:16px}.r360-breath-rail svg{height:72px}.r360-transport{padding-top:10px}.r360-timeline-row{grid-template-columns:48px 1fr 48px;font-size:.78rem}.r360-actions{grid-template-columns:1fr 1.55fr!important;gap:8px}.r360-actions button{min-height:56px}.r360-actions [data-focus-mode]{grid-column:1/-1}.r360-side{border-radius:22px;padding:18px}.r360-practice{min-height:76px;padding:10px}.r360-practice-copy strong{font-size:1rem}.r360-practice-copy small{font-size:.9rem;line-height:1.45}.r360-practice-copy em{font-size:.77rem}.r360-page.is-session-active .r360-hero,.r360-page.is-session-active .r360-library,.r360-page.is-session-active .r360-context,.r360-page.is-session-active .r360-after-note{display:none!important}.r360-page.is-session-active .r360-header{padding-bottom:8px}.r360-page.is-session-active .r360-dashboard{padding-bottom:96px}.r360-page.is-session-active .r360-player{border-radius:18px}.r360-page.is-session-active .r360-player-subtitle,.r360-page.is-session-active .r360-anatomy-standard{display:none}.r360-page.is-session-active .r360-stage{min-height:590px}.r360-page.is-session-active .r360-mobile-session-nav{display:grid}.r360-mobile-session-nav{position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:115;grid-template-columns:repeat(3,1fr);gap:6px;padding:7px;border:1px solid var(--r-border);border-radius:19px;background:rgba(18,12,55,.96);backdrop-filter:blur(18px);box-shadow:0 18px 50px rgba(0,0,0,.32)}.r360-page[data-theme="light"] .r360-mobile-session-nav{background:rgba(255,253,249,.95)}.r360-mobile-session-nav button{min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:0;border-radius:13px;background:transparent;color:var(--r-muted);font-size:.72rem;font-weight:650}.r360-mobile-session-nav .r360-ui-icon{width:20px;height:20px}.r360-ai-panel{inset:0!important;width:100vw!important;height:100dvh!important;max-height:100dvh!important;padding:0 14px calc(10px + env(safe-area-inset-bottom));border:0;border-radius:0;box-shadow:none}.r360-ai-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin:0 -14px;padding:max(10px,env(safe-area-inset-top)) 14px 10px;border-bottom:1px solid var(--r-border)}.r360-ai-head>div{text-align:center;min-width:0}.r360-ai-head .r360-eyebrow{display:none}.r360-ai-head h2{font-size:1.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.r360-ai-back{display:flex}.r360-ai-back span{font-size:.82rem}.r360-ai-close{width:46px!important;height:46px!important}.r360-ai-safety{margin:12px 0 8px;padding:11px 12px;font-size:.86rem;line-height:1.48}.r360-ai-chat{min-height:0;padding:8px 0 10px;gap:10px}.r360-ai-message{max-width:96%}.r360-ai-avatar{flex-basis:34px;width:34px;height:34px;border-radius:11px}.r360-ai-message>div{padding:11px 12px;border-radius:15px}.r360-ai-message p{font-size:.97rem;line-height:1.58}.r360-ai-quick{flex-wrap:nowrap;overflow-x:auto;padding:7px 0 8px;scrollbar-width:none}.r360-ai-quick::-webkit-scrollbar{display:none}.r360-ai-quick button{flex:0 0 auto;min-height:40px;font-size:.8rem}.r360-ai-compose{grid-template-columns:minmax(0,1fr) auto!important;gap:8px;margin:0 -14px;padding:10px 14px calc(4px + env(safe-area-inset-bottom));border-top:1px solid var(--r-border)}.r360-ai-compose textarea{min-height:52px;max-height:110px;resize:none;border-radius:15px}.r360-ai-compose button{width:auto!important;min-width:76px;min-height:52px!important;padding:0 13px}.r360-ai-privacy{display:none}.r360-mobile-tools{display:none}.r360-mobile-tools.is-open{display:block}}
@media(max-width:420px){.r360-shell{width:calc(100% - 18px)}.r360-mobile-menu-toggle{padding:0 11px}.r360-mobile-menu-toggle span{display:none}.r360-brand-logo{width:min(158px,55vw)}.r360-stage{min-height:540px}.r360-anatomy{top:148px}.r360-actions{grid-template-columns:1fr!important}.r360-actions [data-focus-mode]{grid-column:auto}.r360-page.is-session-active .r360-stage{min-height:555px}.r360-ai-back span{display:none}.r360-ai-back{width:46px;padding:0;justify-content:center}}

/* RESPIRA 360 v0.6 · Mobile compact + fullscreen fallback */
html.r360-pseudo-fullscreen-open,body.r360-pseudo-fullscreen-open{overflow:hidden!important;overscroll-behavior:none}
.r360-player.is-pseudo-fullscreen{
  position:fixed!important;inset:0!important;z-index:420!important;width:100vw!important;height:100dvh!important;max-width:none!important;
  overflow:auto!important;margin:0!important;padding:max(12px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))!important;
  border:0!important;border-radius:0!important;background:var(--r-bg)!important;box-shadow:none!important;backdrop-filter:none!important;
}
.r360-player.is-pseudo-fullscreen .r360-player-head{max-width:980px;width:100%;margin:0 auto 10px}
.r360-player.is-pseudo-fullscreen .r360-stage-wrap,.r360-player.is-pseudo-fullscreen .r360-transport{max-width:980px;width:100%;margin-left:auto;margin-right:auto}
.r360-player.is-pseudo-fullscreen .r360-stage-fullscreen{position:relative;z-index:6}
.r360-ai-safety-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}
.r360-ai-status{display:inline-flex;align-items:center;min-height:26px;padding:3px 9px;border:1px solid var(--r-border);border-radius:999px;color:var(--r-muted);font-size:.72rem;font-weight:700;white-space:nowrap}
.r360-ai-status.is-live{border-color:rgba(111,99,255,.34);background:rgba(111,99,255,.10);color:var(--r-teal-2)}
.r360-ai-status.is-error{border-color:rgba(239,155,144,.28);background:rgba(239,155,144,.08);color:var(--r-danger)}
.r360-ai-typing p{opacity:.78}.r360-ai-typing p::after{content:' ···';letter-spacing:.12em}

@media(max-width:680px){
  /* Compact practice viewport: phase + full anatomy + cue + wave remain visible in one flow. */
  .r360-page.is-session-active .r360-header{position:sticky;top:0;z-index:105;background:linear-gradient(180deg,var(--r-bg-2),rgba(14,9,44,.94));backdrop-filter:blur(16px)}
  .r360-page[data-theme="light"].is-session-active .r360-header{background:rgba(251,250,246,.94)}
  .r360-page.is-session-active .r360-player{padding:8px!important;border-radius:18px}
  .r360-page.is-session-active .r360-player-head{display:none!important}
  .r360-page.is-session-active .r360-stage-wrap{display:grid;gap:8px}
  .r360-page.is-session-active .r360-stage{min-height:430px!important;height:430px!important;overflow:hidden}
  .r360-page.is-session-active .r360-stage-topline{top:8px;left:9px;right:9px}
  .r360-page.is-session-active .r360-stage-status{font-size:.66rem;max-width:calc(100% - 52px)}
  .r360-page.is-session-active .r360-stage-fullscreen{width:42px;height:42px;border-radius:12px;font-size:1.25rem}
  .r360-page.is-session-active .r360-phase-display{top:50px;min-width:calc(100% - 24px);max-width:calc(100% - 24px);padding:7px 10px 8px;border-radius:15px}
  .r360-page.is-session-active .r360-phase-display>span{font-size:.72rem}
  .r360-page.is-session-active .r360-phase-display>strong{font-size:clamp(1.9rem,11vw,2.5rem);line-height:1}
  .r360-page.is-session-active .r360-phase-display>small{font-size:.88rem}
  .r360-page.is-session-active .r360-anatomy{top:112px!important;height:318px!important;width:auto!important;max-width:96%!important;bottom:auto!important;transform:translateX(-50%)!important}
  .r360-page.is-session-active .r360-orbit,.r360-page.is-session-active .r360-aura{top:61%;transform-origin:center}
  .r360-page.is-session-active .r360-body-cue-docked{margin-top:0;padding:11px 12px;border-radius:14px;display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px}
  .r360-page.is-session-active .r360-body-cue-docked>span{width:38px;height:38px}
  .r360-page.is-session-active .r360-body-cue-docked strong{font-size:.94rem}
  .r360-page.is-session-active .r360-body-cue-docked small{font-size:.87rem;line-height:1.43}
  .r360-page.is-session-active .r360-breath-rail{padding:9px 10px 7px;border-radius:14px}
  .r360-page.is-session-active .r360-breath-rail-head{margin-bottom:0}.r360-page.is-session-active .r360-breath-rail-head>span,.r360-page.is-session-active .r360-breath-rail-head>strong{font-size:.76rem}
  .r360-page.is-session-active .r360-breath-rail svg{height:56px!important}
  .r360-page.is-session-active .r360-breath-rail-foot{font-size:.66rem}
  .r360-page.is-session-active .r360-transport{padding-top:4px}
  .r360-page.is-session-active .r360-timeline-row{display:none!important}
  .r360-page.is-session-active .r360-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
  .r360-page.is-session-active .r360-actions [data-restart],.r360-page.is-session-active .r360-actions [data-focus-mode]{display:none!important}
  .r360-page.is-session-active .r360-actions [data-play]{min-height:54px!important}

  /* The expanded view works even where the browser Fullscreen API does not. */
  .r360-player.is-pseudo-fullscreen{padding:max(8px,env(safe-area-inset-top)) 8px max(78px,calc(12px + env(safe-area-inset-bottom)))!important}
  .r360-player.is-pseudo-fullscreen .r360-player-head{display:none!important}
  .r360-player.is-pseudo-fullscreen .r360-stage{height:min(58dvh,500px)!important;min-height:400px!important}
  .r360-player.is-pseudo-fullscreen .r360-anatomy{height:min(46dvh,370px)!important;top:105px!important}
  .r360-player.is-pseudo-fullscreen .r360-body-cue-docked{margin-top:6px}
  .r360-player.is-pseudo-fullscreen .r360-breath-rail svg{height:58px!important}
  .r360-player.is-pseudo-fullscreen .r360-transport{padding-top:6px}
  .r360-player.is-pseudo-fullscreen .r360-actions [data-restart],.r360-player.is-pseudo-fullscreen .r360-actions [data-focus-mode]{display:none!important}
}

@media(max-width:420px){
  .r360-page.is-session-active .r360-stage{height:405px!important;min-height:405px!important}
  .r360-page.is-session-active .r360-anatomy{height:292px!important;top:108px!important}
  .r360-page.is-session-active .r360-body-cue-docked small{font-size:.84rem}
  .r360-page.is-session-active .r360-breath-rail svg{height:52px!important}
}

@media(max-height:720px) and (max-width:680px){
  .r360-page.is-session-active .r360-stage{height:370px!important;min-height:370px!important}
  .r360-page.is-session-active .r360-anatomy{height:260px!important;top:106px!important}
  .r360-page.is-session-active .r360-body-cue-docked small{display:none}
  .r360-page.is-session-active .r360-breath-rail svg{height:44px!important}
  .r360-page.is-session-active .r360-breath-rail-foot{display:none}
}

/* ======================================================================
   RESPIRA 360 v0.7 · Smart Practice Builder + anonymous ratings
   ====================================================================== */
.r360-configurator{
  margin-bottom:18px;padding:24px;border:1px solid var(--r-border);border-radius:30px;
  background:linear-gradient(135deg,rgba(111,99,255,.075),rgba(227,189,120,.045) 54%,rgba(155,143,228,.035));
  box-shadow:var(--r-shadow);backdrop-filter:blur(16px)
}
.r360-page[data-theme="light"] .r360-configurator{background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(248,246,255,.94))}
.r360-config-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid var(--r-border)}
.r360-config-head h2{margin:0;font-size:clamp(1.55rem,2.4vw,2.2rem);line-height:1.16;letter-spacing:-.03em}
.r360-config-head>div:first-child>p:last-child{max-width:880px;margin:10px 0 0;color:var(--r-muted);font-size:1rem;line-height:1.66}
.r360-config-mode{display:flex;gap:5px;padding:5px;border:1px solid var(--r-border);border-radius:16px;background:rgba(255,255,255,.035);flex:0 0 auto}
.r360-config-mode button{min-height:46px;padding:0 16px;border:0;border-radius:11px;background:transparent;color:var(--r-muted);font-size:.94rem;font-weight:700;cursor:pointer}
.r360-config-mode button.is-active{background:rgba(111,99,255,.14);color:var(--r-teal-2);box-shadow:inset 0 0 0 1px rgba(111,99,255,.18)}
.r360-config-note{margin:16px 0 18px;padding:12px 15px;border:1px solid var(--r-border);border-radius:14px;background:rgba(255,255,255,.03);color:var(--r-muted);font-size:.92rem;line-height:1.55}
.r360-config-note strong{color:var(--r-text)}
.r360-config-primary{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(270px,.45fr);gap:18px}
.r360-config-field{min-width:0}
.r360-config-label{display:flex;align-items:center;gap:11px;margin-bottom:11px}
.r360-config-label>span{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border-radius:11px;background:rgba(111,99,255,.13);border:1px solid rgba(111,99,255,.18);color:var(--r-teal-2);font-size:.82rem;font-weight:800}
.r360-config-label strong{display:block;font-size:1rem;line-height:1.25}
.r360-config-label small{display:block;margin-top:2px;color:var(--r-muted);font-size:.86rem;line-height:1.35}
.r360-config-options{display:flex;flex-wrap:wrap;gap:8px}
.r360-config-options button,.r360-config-audio button{
  min-height:52px;padding:9px 13px;border:1px solid var(--r-border);border-radius:14px;background:rgba(255,255,255,.025);
  color:var(--r-muted);text-align:left;cursor:pointer;transition:.18s ease
}
.r360-config-options button:hover,.r360-config-audio button:hover{border-color:var(--r-border-strong);background:rgba(255,255,255,.055)}
.r360-config-options button.is-active,.r360-config-audio button.is-active{border-color:rgba(111,99,255,.35);background:rgba(111,99,255,.11);color:var(--r-text);box-shadow:inset 0 0 0 1px rgba(111,99,255,.06)}
.r360-config-options button>span,.r360-config-audio button>span{display:block;font-size:.93rem;font-weight:700;line-height:1.25}
.r360-config-options button>small,.r360-config-audio button>small{display:block;margin-top:3px;color:var(--r-muted);font-size:.78rem;line-height:1.35}
.r360-config-options-goals button{flex:1 1 150px}
.r360-config-options-duration{display:grid;grid-template-columns:repeat(5,minmax(62px,1fr));gap:8px}
.r360-config-options-duration button{min-width:0;text-align:center;font-weight:750;font-size:.95rem}
.r360-config-advanced{display:none;margin-top:20px;padding-top:20px;border-top:1px solid var(--r-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.r360-config-advanced.is-open{display:grid}
.r360-config-audio{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.r360-config-audio button{text-align:center;position:relative}
.r360-config-audio button:before{content:'OFF';position:absolute;right:8px;top:6px;color:var(--r-muted-2);font-size:.6rem;font-weight:800;letter-spacing:.06em}
.r360-config-audio button.is-active:before{content:'ON';color:var(--r-teal-2)}
.r360-config-live{display:grid;grid-template-columns:minmax(200px,.55fr) minmax(0,1fr) minmax(260px,.85fr) auto;gap:14px;align-items:center;margin-top:22px;padding:17px;border:1px solid var(--r-border-strong);border-radius:22px;background:rgba(15,10,49,.62)}
.r360-page[data-theme="light"] .r360-config-live{background:rgba(255,255,255,.60)}
.r360-config-live-state{display:flex;align-items:center;gap:11px;min-width:0}
.r360-config-live-dot{width:12px;height:12px;flex:0 0 12px;border-radius:50%;background:var(--r-gold);box-shadow:0 0 0 7px rgba(227,189,120,.08);transition:.2s ease}
.r360-config-live-dot.is-ready{background:var(--r-teal);box-shadow:0 0 0 7px rgba(111,99,255,.10),0 0 24px rgba(111,99,255,.24)}
.r360-config-live-state small,.r360-config-recommendation>span{display:block;color:var(--r-muted-2);font-size:.72rem;font-weight:800;letter-spacing:.1em}
.r360-config-live-state strong{display:block;margin-top:3px;font-size:.96rem;line-height:1.35}
.r360-config-summary{display:flex;flex-wrap:wrap;gap:6px}
.r360-config-summary span,.r360-config-fixed span{display:inline-flex;align-items:center;min-height:34px;padding:6px 10px;border:1px solid var(--r-border);border-radius:999px;background:rgba(255,255,255,.03);color:var(--r-muted);font-size:.79rem;line-height:1.25}
.r360-config-recommendation{min-width:0}
.r360-config-recommendation strong{display:block;margin:3px 0 2px;font-size:1.02rem;line-height:1.3}
.r360-config-recommendation p{margin:0;color:var(--r-muted);font-size:.82rem;line-height:1.45}
.r360-config-fixed{display:none;gap:6px;flex-wrap:wrap;grid-column:1/-1}
.r360-config-start{min-height:58px;padding:0 20px;border:1px solid rgba(111,99,255,.40);border-radius:16px;background:linear-gradient(135deg,#695cff,#d7b46f);color:#171035!important;font-size:.92rem;font-weight:850;letter-spacing:.025em;cursor:pointer;box-shadow:0 10px 28px rgba(111,99,255,.16);white-space:nowrap;transition:.18s ease}
.r360-config-start:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 15px 34px rgba(111,99,255,.22)}
.r360-config-start:disabled{cursor:not-allowed;opacity:.38;filter:saturate(.35);box-shadow:none}
.r360-config-helper{grid-column:1/-1;margin:0;color:var(--r-muted);font-size:.84rem;line-height:1.45}
.r360-social-proof{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:12px;color:var(--r-muted);font-size:.85rem}
.r360-social-proof strong{color:var(--r-text)}.r360-social-star{color:var(--r-gold);font-size:1.05rem}
.r360-practice-desc{display:block;color:var(--r-muted)!important;font-size:.82rem!important;line-height:1.45!important;margin-top:1px}
.r360-practice-copy em{display:inline-flex;width:max-content;margin-top:3px;padding:2px 7px;border:1px solid var(--r-border);border-radius:999px;color:var(--r-teal-2);font-style:normal;font-size:.7rem;font-weight:700}
.r360-intensity-pill.is-dynamic{border-color:rgba(239,177,119,.34);background:rgba(239,177,119,.10);color:var(--r-amber)}

/* Completion rating: graphic feedback without account or free-text PII. */
.r360-rating-block{margin-top:18px;padding:17px;border:1px solid var(--r-border);border-radius:18px;background:rgba(255,255,255,.025)}
.r360-rating-copy strong{display:block;font-size:1rem}.r360-rating-copy small{display:block;margin-top:4px;color:var(--r-muted);font-size:.86rem;line-height:1.5}
.r360-stars{display:flex;justify-content:center;gap:6px;margin:13px 0}
.r360-stars button{width:48px;height:48px;border:1px solid var(--r-border);border-radius:14px;background:rgba(255,255,255,.025);color:rgba(227,189,120,.28);font-size:1.65rem;line-height:1;cursor:pointer;transition:.16s ease}
.r360-stars button:hover,.r360-stars button.is-active{color:var(--r-gold);border-color:rgba(227,189,120,.38);background:rgba(227,189,120,.09);transform:translateY(-1px)}
.r360-reaction-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}
.r360-reaction-chips button{min-height:38px;padding:7px 11px;border:1px solid var(--r-border);border-radius:999px;background:transparent;color:var(--r-muted);font-size:.79rem;cursor:pointer}
.r360-reaction-chips button.is-active{border-color:rgba(111,99,255,.34);background:rgba(111,99,255,.09);color:var(--r-teal-2)}
.r360-rating-status{margin:11px 0 0!important;color:var(--r-muted)!important;font-size:.78rem!important;line-height:1.45!important;text-align:center}

@media(max-width:1180px){
  .r360-config-live{grid-template-columns:minmax(190px,.55fr) minmax(0,1fr) minmax(240px,.85fr)}
  .r360-config-start{grid-column:1/-1;width:100%}.r360-config-fixed{display:flex}
}
@media(max-width:920px){
  .r360-configurator{padding:20px;border-radius:24px}.r360-config-primary{grid-template-columns:1fr}.r360-config-advanced.is-open{grid-template-columns:1fr}
  .r360-config-live{grid-template-columns:1fr 1fr}.r360-config-recommendation{grid-column:1/-1}.r360-config-start{grid-column:1/-1}.r360-config-fixed{grid-column:1/-1}
  .r360-social-proof{justify-content:flex-start;flex-wrap:wrap}
}
@media(max-width:680px){
  .r360-configurator{width:calc(100% - 16px);padding:15px;margin-bottom:12px;border-radius:20px}
  .r360-config-head{display:grid;gap:13px}.r360-config-head>div:first-child>p:last-child{font-size:.94rem;line-height:1.55}.r360-config-mode{width:100%}.r360-config-mode button{flex:1;min-height:46px}
  .r360-config-note{margin:13px 0 15px;font-size:.88rem}
  .r360-config-options-goals{display:grid;grid-template-columns:1fr 1fr;gap:7px}.r360-config-options-goals button{min-height:64px;padding:9px 10px}
  .r360-config-options button>span{font-size:.9rem}.r360-config-options button>small{font-size:.75rem}
  .r360-config-options-duration{grid-template-columns:repeat(5,1fr);gap:5px}.r360-config-options-duration button{min-height:46px;padding:4px;font-size:.84rem}
  .r360-config-advanced{gap:17px}.r360-config-options-format,.r360-config-options-intensity{display:grid;grid-template-columns:1fr;gap:7px}
  .r360-config-options-holds{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.r360-config-options-holds button{min-height:48px;padding:5px;text-align:center;font-size:.78rem}
  .r360-config-audio{grid-template-columns:1fr 1fr}.r360-config-audio button{min-height:58px}
  .r360-config-live{grid-template-columns:1fr;gap:10px;padding:13px}.r360-config-recommendation,.r360-config-start,.r360-config-helper,.r360-config-fixed{grid-column:auto}
  .r360-config-summary{overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px;scrollbar-width:none}.r360-config-summary::-webkit-scrollbar{display:none}.r360-config-summary span{flex:0 0 auto}
  .r360-config-fixed{display:flex}.r360-config-start{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom));z-index:20;width:100%;min-height:58px}
  .r360-social-proof{font-size:.78rem}
  .r360-practice-desc{font-size:.86rem!important;line-height:1.5!important}
  .r360-stars button{width:45px;height:45px}.r360-reaction-chips{display:grid;grid-template-columns:1fr 1fr}.r360-reaction-chips button{border-radius:12px}
  .r360-page.is-session-active .r360-configurator{display:none!important}
}
@media(max-width:390px){
  .r360-config-options-goals{grid-template-columns:1fr}.r360-config-options-duration{grid-template-columns:repeat(3,1fr)}
  .r360-config-options-duration button:nth-child(4),.r360-config-options-duration button:nth-child(5){grid-column:auto}
  .r360-stars{gap:4px}.r360-stars button{width:42px;height:42px;font-size:1.45rem}
}
.r360-configurator.needs-attention{animation:r360ConfigAttention .85s ease both}
@keyframes r360ConfigAttention{0%,100%{box-shadow:var(--r-shadow)}35%{box-shadow:0 0 0 3px rgba(227,189,120,.28),0 24px 70px rgba(0,0,0,.28)}65%{box-shadow:0 0 0 5px rgba(111,99,255,.16),0 24px 70px rgba(0,0,0,.28)}}
.r360-practice[data-intensity-level="dinamica"] .r360-practice-copy em{background:rgba(239,177,119,.09);border-color:rgba(239,177,119,.22);color:var(--r-amber)}


/* =========================================================
   RESPIRA 360 v0.8 · PURPLE BLUE PREMIUM + SMART 3D
   ========================================================= */
.r360-page{
  background:
    radial-gradient(circle at 8% 5%,rgba(112,86,255,.28),transparent 30%),
    radial-gradient(circle at 88% 14%,rgba(60,92,255,.19),transparent 30%),
    radial-gradient(circle at 50% 78%,rgba(255,214,90,.055),transparent 36%),
    linear-gradient(180deg,#171044 0%,#0d0928 58%,#08071a 100%);
}
.r360-eyebrow,.r360-brand-copy strong{color:var(--r-gold)}
.r360-header-btn,.r360-config-options button,.r360-config-audio button,.r360-config-practices button{font-family:var(--r-font)}
.r360-configurator{border-color:rgba(124,104,255,.30);background:linear-gradient(145deg,rgba(31,23,83,.96),rgba(17,12,53,.94));box-shadow:0 32px 90px rgba(3,2,18,.40),inset 0 1px rgba(255,255,255,.035)}
.r360-config-head h2{color:#fff}
.r360-config-head>div:first-child>p:last-child{color:#dedcf1;font-size:1rem;line-height:1.7}
.r360-config-badge{display:grid;align-content:center;gap:3px;min-width:220px;padding:14px 16px;border:1px solid rgba(255,214,90,.26);border-radius:18px;background:linear-gradient(135deg,rgba(111,99,255,.16),rgba(255,214,90,.07));text-align:right}
.r360-config-badge strong{color:#ffe27a;font-size:.92rem;letter-spacing:.12em}.r360-config-badge span{color:#d9d5ef;font-size:.78rem}
.r360-config-flow{display:grid;gap:22px}
.r360-config-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.r360-config-field{padding:17px;border:1px solid rgba(143,127,255,.15);border-radius:19px;background:rgba(255,255,255,.024)}
.r360-config-label span{background:rgba(111,99,255,.19);border-color:rgba(143,127,255,.26);color:#ffe27a}
.r360-config-label strong{font-size:1.03rem;color:#fff}.r360-config-label small{font-size:.88rem;color:#c8c4de}
.r360-config-options button,.r360-config-audio button,.r360-config-practices button{border-color:rgba(169,157,255,.17);background:rgba(255,255,255,.025);color:#d8d4eb}
.r360-config-options button:hover,.r360-config-audio button:hover,.r360-config-practices button:hover{border-color:rgba(255,214,90,.28);background:rgba(111,99,255,.09)}
.r360-config-options button.is-active,.r360-config-audio button.is-active,.r360-config-practices button.is-active{border-color:rgba(255,214,90,.44);background:linear-gradient(135deg,rgba(111,99,255,.22),rgba(255,214,90,.07));color:#fff;box-shadow:inset 0 0 0 1px rgba(255,214,90,.05),0 10px 30px rgba(8,5,38,.18)}
.r360-config-options button>span,.r360-config-audio button>span{font-size:.96rem}.r360-config-options button>small,.r360-config-audio button>small{font-size:.82rem;color:#c8c4de}
.r360-config-practices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.r360-config-practices button{min-height:92px;padding:14px;border-radius:17px;text-align:left;cursor:pointer;transition:.18s ease}
.r360-config-practices button.is-filtered{opacity:.46}.r360-config-practices button.is-filtered:hover{opacity:.78}
.r360-practice-choice-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.r360-practice-choice-top strong{font-size:.96rem;line-height:1.35;color:#fff}.r360-practice-choice-top em{flex:0 0 auto;padding:4px 8px;border:1px solid rgba(255,214,90,.24);border-radius:999px;color:#ffe27a;font-size:.69rem;font-style:normal;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.r360-config-practices button>small{display:block;margin-top:7px;color:#c8c4de;font-size:.84rem;line-height:1.5}
.r360-config-options-duration button:disabled{opacity:.28;cursor:not-allowed;text-decoration:line-through}.r360-config-options-duration button:disabled:hover{transform:none;background:rgba(255,255,255,.025);border-color:rgba(169,157,255,.17)}
.r360-config-options-soundscape{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.r360-config-options-soundscape button{text-align:center}
.r360-config-audio button.is-active:before{color:#ffe27a}
.r360-config-live{border-color:rgba(255,214,90,.22);background:linear-gradient(135deg,rgba(12,8,42,.74),rgba(39,27,101,.46))}
.r360-config-live-dot{background:#7567ff;box-shadow:0 0 0 7px rgba(117,103,255,.12)}
.r360-config-live-dot.is-ready{background:#ffd65a;box-shadow:0 0 0 7px rgba(255,214,90,.12),0 0 28px rgba(255,214,90,.28)}
.r360-config-live-state small,.r360-config-recommendation>span{color:#a9a2cd}.r360-config-recommendation p,.r360-config-helper{font-size:.9rem;color:#ccc8df}
.r360-config-start{min-height:64px;padding:0 26px;border-color:rgba(255,214,90,.52);background:linear-gradient(135deg,#6f63ff 0%,#6654ff 45%,#ffd65a 160%);color:#fff!important;font-size:1rem;box-shadow:0 16px 36px rgba(54,39,190,.30),inset 0 1px rgba(255,255,255,.18)}
.r360-config-start:not(:disabled){animation:r360ReadyPulse 2.4s ease-in-out infinite}.r360-config-start:disabled{background:#28224a;color:#8e89aa!important;border-color:rgba(255,255,255,.09);opacity:1;animation:none}
@keyframes r360ReadyPulse{0%,100%{box-shadow:0 16px 36px rgba(54,39,190,.27),0 0 0 0 rgba(255,214,90,.14)}50%{box-shadow:0 18px 44px rgba(54,39,190,.36),0 0 0 7px rgba(255,214,90,0)}}

/* Do not expose the player before the user confirms a complete practice. */
.r360-page:not(.has-session-launched) .r360-dashboard{display:none!important}
.r360-page.has-session-launched .r360-dashboard{display:grid}
.r360-page.has-session-launched .r360-configurator{display:none}

/* SMART 3D stage. SVG remains as a resilient fallback if WebGL/CDN is unavailable. */
.r360-stage{min-height:720px;background:radial-gradient(circle at 50% 45%,rgba(105,86,255,.21),transparent 37%),linear-gradient(180deg,rgba(25,17,75,.92),rgba(8,7,29,.98))}
.r360-smart3d{position:absolute;inset:92px 34px 42px;z-index:4;overflow:hidden;border-radius:28px;opacity:0;pointer-events:none;transition:opacity .65s ease}
.r360-smart3d canvas{display:block;width:100%!important;height:100%!important;filter:drop-shadow(0 28px 48px rgba(0,0,0,.28))}
.r360-smart3d-loading{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:7px;text-align:center;color:#d9d5ef;z-index:2}.r360-smart3d-loading span{width:40px;height:40px;border:3px solid rgba(255,255,255,.12);border-top-color:#ffd65a;border-radius:50%;animation:r360Spin 1s linear infinite}.r360-smart3d-loading strong{font-size:.9rem}.r360-smart3d-loading small{font-size:.78rem;color:#aaa5ce}@keyframes r360Spin{to{transform:rotate(360deg)}}
.r360-page.r360-3d-ready .r360-smart3d{opacity:1}.r360-page.r360-3d-ready .r360-smart3d-loading{display:none}.r360-page.r360-3d-ready .r360-anatomy{opacity:0;visibility:hidden}.r360-page.r360-3d-ready .r360-orbit,.r360-page.r360-3d-ready .r360-aura{opacity:.3}
.r360-stage-topline,.r360-phase-display{z-index:8}.r360-phase-display strong{color:#fff}.r360-phase-display span,.r360-phase-display small{color:#ffe27a}
.r360-breath-rail{border-color:rgba(143,127,255,.18);background:rgba(14,9,50,.72)}.r360-wave-path{stroke:#ffd65a!important}.r360-wave-cursor{fill:#ffd65a!important}.r360-wave-cursor-line{stroke:rgba(255,214,90,.42)!important}
.r360-body-cue{border-color:rgba(255,214,90,.18);background:linear-gradient(135deg,rgba(32,21,89,.92),rgba(16,11,52,.92))}.r360-body-cue>span{color:#ffe27a}.r360-body-cue strong{font-size:1rem}.r360-body-cue small{font-size:.9rem;color:#d0cce3}
.r360-play{background:linear-gradient(135deg,#7062ff,#513dff 60%,#ffd65a 180%)}

/* Purple-blue semantics across legacy dashboard */
.r360-practice.is-active{background:linear-gradient(135deg,rgba(111,99,255,.18),rgba(255,214,90,.06));border-color:rgba(143,127,255,.28)}
.r360-practice-icon,.r360-practice.is-active .r360-practice-icon{color:#ffe27a;background:rgba(111,99,255,.15)}
.r360-duration-options button.is-active{background:rgba(111,99,255,.18);border-color:rgba(255,214,90,.30);color:#ffe27a}

@media(max-width:920px){.r360-config-grid-2{grid-template-columns:1fr}.r360-config-practices{grid-template-columns:1fr 1fr}.r360-config-badge{text-align:left;min-width:0}.r360-stage{min-height:680px}}
@media(max-width:680px){
  .r360-configurator{padding:14px 12px 104px}.r360-config-practices{grid-template-columns:1fr}.r360-config-field{padding:14px}.r360-config-label strong{font-size:1rem}.r360-config-label small{font-size:.86rem}
  .r360-config-options-goals{grid-template-columns:1fr 1fr}.r360-config-options-duration{grid-template-columns:repeat(3,1fr)}.r360-config-options-soundscape{grid-template-columns:1fr}.r360-config-options-format{display:grid;grid-template-columns:1fr}
  .r360-config-start{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:80;width:calc(100% - 20px);min-height:62px;border-radius:18px}.r360-config-start:disabled{position:sticky;left:auto;right:auto;bottom:calc(8px + env(safe-area-inset-bottom));width:100%}
  .r360-page.has-session-launched .r360-configurator{display:none!important}.r360-page.has-session-launched .r360-dashboard{display:block}
  .r360-stage{min-height:min(74svh,690px);border-radius:22px}.r360-smart3d{inset:88px 4px 22px}.r360-phase-display{top:72px}.r360-phase-display strong{font-size:clamp(2.25rem,12vw,4rem)}
  .r360-body-cue{margin-top:10px}.r360-body-cue strong{font-size:1rem}.r360-body-cue small{font-size:.91rem}
  .r360-breath-rail{margin-top:10px}.r360-player{padding:10px;border-radius:22px}.r360-player-head{padding:6px 4px 11px}.r360-player-subtitle{font-size:.9rem}
}
@media(max-width:390px){.r360-config-options-goals{grid-template-columns:1fr}.r360-stage{min-height:610px}.r360-smart3d{inset:86px 0 18px}}


/* ======================================================================
   RESPIRA 360 v0.9 · Immersive Responsive + Purple/Blue System
   ====================================================================== */
.r360-page{
  --r-bg:#08071a;--r-bg-2:#15103f;--r-panel:rgba(28,20,72,.91);--r-panel-solid:#181140;--r-panel-2:#21185a;
  --r-border:rgba(176,165,255,.20);--r-border-strong:rgba(255,225,122,.34);--r-text:#fff;--r-muted:#e0ddf1;--r-muted-2:#b7b0d7;
  --r-teal:#7868ff;--r-teal-2:#ffe27a;--r-gold:#ffd65a;--r-violet:#9788ff;
  background:radial-gradient(circle at 13% 8%,rgba(120,104,255,.29),transparent 31%),radial-gradient(circle at 88% 18%,rgba(52,77,190,.24),transparent 30%),radial-gradient(circle at 52% 82%,rgba(255,214,90,.055),transparent 35%),linear-gradient(180deg,#171044 0%,#0c0928 58%,#070617 100%)!important;
}
.r360-page .r360-stage{background:radial-gradient(circle at 50% 43%,rgba(121,103,255,.24),transparent 38%),radial-gradient(circle at 50% 68%,rgba(255,214,90,.055),transparent 32%),linear-gradient(180deg,#171044 0%,#0d092a 70%,#080719 100%)!important}
.r360-page .r360-body-cue,.r360-page .r360-breath-rail,.r360-page .r360-mobile-session-nav,.r360-page .r360-drawer-panel,.r360-page .r360-ai-panel{background:linear-gradient(145deg,rgba(28,19,77,.96),rgba(13,9,43,.97))!important}
.r360-page .r360-play,.r360-page .r360-config-start{background:linear-gradient(110deg,#6858ff 0%,#806fff 54%,#ffd65a 145%)!important;color:#fff!important;box-shadow:0 16px 42px rgba(77,57,211,.30)!important}
.r360-page .r360-wave-path{stroke:#ffd65a!important}.r360-page .r360-wave-cursor{fill:#ffd65a!important}.r360-page .r360-wave-cursor-line{stroke:rgba(255,214,90,.5)!important}
.r360-page .r360-stage.is-inhale .r360-phase-display>strong{color:#fff!important}.r360-page .r360-stage.is-exhale .r360-phase-display>strong{color:#ffe27a!important}.r360-page .r360-stage.is-pause .r360-phase-display>strong{color:#a99cff!important}
.r360-page .r360-stage-status i{background:#ffd65a!important}.r360-page .r360-stage.is-running .r360-stage-status i{background:#8f83ff!important;box-shadow:0 0 0 6px rgba(143,131,255,.12),0 0 22px rgba(143,131,255,.35)!important}

/* Official voice: one Latin-Spanish identity, no user voice picker. */
.r360-official-voice-name{display:block;margin-top:3px;color:#fff;font-size:.92rem;line-height:1.35}.r360-voice-select-row>small{display:block;margin-top:4px;color:var(--r-muted-2);font-size:.78rem;line-height:1.45}.r360-voice-select-row select{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}

/* The anatomy is always allowed to breathe: no instructional overlay may cover it. */
.r360-stage-wrap{display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:10px}.r360-body-cue-docked{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;max-width:none!important;margin:0!important}.r360-breath-rail{margin:0!important}
.r360-smart3d,.r360-anatomy{transform-origin:center center}

/* Desktop / tablet session: centered single-column experience. */
.r360-page.is-session-active .r360-dashboard{grid-template-columns:minmax(0,1180px)!important;justify-content:center!important;gap:0!important}
.r360-page.is-session-active .r360-player{width:100%;max-width:1180px;margin:0 auto;background:linear-gradient(160deg,rgba(25,17,71,.90),rgba(10,8,34,.92));border-color:rgba(150,135,255,.22)}
.r360-page.is-session-active .r360-stage{height:clamp(560px,68dvh,780px)!important;min-height:560px!important}
.r360-page.is-session-active .r360-smart3d{inset:96px 18px 20px!important}.r360-page.is-session-active .r360-anatomy{height:min(88%,650px)!important;bottom:0!important}

/* Mobile session = a self-contained viewport; no page scroll and no clipped body. */
@media(max-width:680px){
  html:has(.r360-page.is-session-active),body:has(.r360-page.is-session-active){overflow:hidden!important;overscroll-behavior:none!important}
  .r360-page.is-session-active{position:fixed!important;inset:0!important;z-index:350!important;width:100vw!important;height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;padding:0!important;background:linear-gradient(180deg,#15103f 0%,#0b0824 60%,#070617 100%)!important}
  .r360-page.is-session-active .r360-header,.r360-page.is-session-active .r360-footer,.r360-page.is-session-active footer{display:none!important}
  .r360-page.is-session-active .r360-dashboard{display:block!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important}
  .r360-page.is-session-active .r360-player{display:grid!important;grid-template-rows:minmax(0,1fr) auto!important;width:100%!important;height:100dvh!important;max-width:none!important;margin:0!important;padding:max(8px,env(safe-area-inset-top)) 9px max(8px,env(safe-area-inset-bottom))!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
  .r360-page.is-session-active .r360-player-head{display:none!important}
  .r360-page.is-session-active .r360-stage-wrap{min-height:0!important;display:grid!important;grid-template-rows:minmax(0,1fr) auto auto!important;gap:7px!important;overflow:hidden!important}
  .r360-page.is-session-active .r360-stage{height:auto!important;min-height:0!important;border-radius:20px!important;overflow:hidden!important}
  .r360-page.is-session-active .r360-stage-topline{top:8px!important;left:9px!important;right:9px!important}.r360-page.is-session-active .r360-stage-status{font-size:.64rem!important;letter-spacing:.09em!important}.r360-page.is-session-active .r360-stage-fullscreen{width:42px!important;height:42px!important}
  .r360-page.is-session-active .r360-phase-display{top:48px!important;min-width:calc(100% - 30px)!important;padding:6px 8px!important;background:linear-gradient(180deg,rgba(11,8,35,.88),rgba(11,8,35,.34))!important;border:1px solid rgba(150,135,255,.14)!important;border-radius:16px!important;backdrop-filter:blur(8px)}
  .r360-page.is-session-active .r360-phase-display>span{font-size:.68rem!important;color:#d7d2ee!important}.r360-page.is-session-active .r360-phase-display>strong{font-size:clamp(2.1rem,12vw,3.35rem)!important;line-height:.98!important}.r360-page.is-session-active .r360-phase-display>small{font-size:.9rem!important;color:#ffd65a!important}
  .r360-page.is-session-active .r360-smart3d{inset:100px 0 4px!important;border-radius:16px!important}.r360-page.is-session-active .r360-smart3d canvas{filter:drop-shadow(0 20px 34px rgba(0,0,0,.30))!important}
  .r360-page.is-session-active .r360-anatomy{top:98px!important;bottom:auto!important;height:calc(100% - 104px)!important;max-height:none!important;max-width:94%!important}
  .r360-page.is-session-active .r360-body-cue-docked{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;gap:10px!important;padding:10px 12px!important;border-radius:15px!important}.r360-page.is-session-active .r360-body-cue-docked>span{width:42px!important;height:42px!important}.r360-page.is-session-active .r360-body-cue-docked strong{font-size:.98rem!important}.r360-page.is-session-active .r360-body-cue-docked small{font-size:.84rem!important;line-height:1.42!important}
  .r360-page.is-session-active .r360-breath-rail{padding:8px 10px 6px!important;border-radius:15px!important}.r360-page.is-session-active .r360-breath-rail-head>span,.r360-page.is-session-active .r360-breath-rail-head>strong{font-size:.75rem!important}.r360-page.is-session-active .r360-breath-rail svg{height:48px!important}.r360-page.is-session-active .r360-breath-rail-foot{display:none!important}
  .r360-page.is-session-active .r360-transport{padding:7px 0 0!important}.r360-page.is-session-active .r360-timeline-row{display:none!important}.r360-page.is-session-active .r360-actions{display:grid!important;grid-template-columns:1fr!important;gap:0!important;margin:0!important}.r360-page.is-session-active .r360-actions [data-restart],.r360-page.is-session-active .r360-actions [data-focus-mode]{display:none!important}.r360-page.is-session-active .r360-actions [data-play]{min-height:56px!important;border-radius:17px!important;font-size:1rem!important}
  .r360-page.is-session-active .r360-mobile-session-nav{display:none!important}
}
@media(max-width:420px){
  .r360-page.is-session-active .r360-phase-display{top:46px!important}.r360-page.is-session-active .r360-smart3d{inset:96px 0 3px!important}.r360-page.is-session-active .r360-anatomy{top:94px!important;height:calc(100% - 98px)!important}
}
@media(max-width:680px) and (max-height:720px){
  .r360-page.is-session-active .r360-body-cue-docked small{display:none!important}.r360-page.is-session-active .r360-body-cue-docked{padding:8px 10px!important}.r360-page.is-session-active .r360-breath-rail svg{height:40px!important}.r360-page.is-session-active .r360-actions [data-play]{min-height:50px!important}.r360-page.is-session-active .r360-phase-display>strong{font-size:2.25rem!important}
}

/* Pseudo/native fullscreen uses the exact same adaptive composition. */
.r360-player.is-pseudo-fullscreen{overflow:hidden!important;background:linear-gradient(180deg,#15103f,#070617)!important}.r360-player.is-pseudo-fullscreen .r360-stage-wrap{min-height:0!important;display:grid!important;grid-template-rows:minmax(0,1fr) auto auto!important}.r360-player.is-pseudo-fullscreen .r360-stage{height:auto!important;min-height:0!important}.r360-player.is-pseudo-fullscreen .r360-smart3d{inset:96px 0 4px!important}


/* ==========================================================================\n   RESPIRA 360 v1.0 · Controles de sesión + audio-first + responsive robusto\n   ========================================================================== */
.r360-session-edit,.r360-stage-tools{display:none}
.r360-page.has-session-launched .r360-session-edit,
.r360-page.has-session-launched .r360-stage-tools{display:flex}
.r360-page.has-session-launched .r360-stage-topline{align-items:center;gap:10px}
.r360-session-edit{min-height:44px;align-items:center;gap:7px;padding:0 12px;border:1px solid rgba(150,135,255,.22);border-radius:13px;background:rgba(17,12,53,.88);color:#fff;cursor:pointer;font-size:.82rem;font-weight:700;white-space:nowrap;backdrop-filter:blur(12px)}
.r360-session-edit .r360-ui-icon{width:18px;height:18px}
.r360-stage-tools{margin-left:auto;align-items:center;gap:7px}
.r360-stage-tool{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(150,135,255,.22);border-radius:13px;background:rgba(17,12,53,.88);color:#fff;cursor:pointer;backdrop-filter:blur(12px)}
.r360-stage-tool:hover,.r360-session-edit:hover{border-color:rgba(255,214,90,.42);background:rgba(38,27,101,.92)}
.r360-stage-tool .r360-ui-icon{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.r360-stage-fullscreen{font-size:0!important}
.r360-stage-fullscreen .r360-icon-collapse{display:none}
.r360-page.is-stage-expanded .r360-stage-fullscreen .r360-icon-expand,
.r360-player.is-pseudo-fullscreen .r360-stage-fullscreen .r360-icon-expand{display:none}
.r360-page.is-stage-expanded .r360-stage-fullscreen .r360-icon-collapse,
.r360-player.is-pseudo-fullscreen .r360-stage-fullscreen .r360-icon-collapse{display:block}
.r360-icon-play{display:block}.r360-icon-pause{display:none}
.r360-stage.is-running .r360-icon-play{display:none}.r360-stage.is-running .r360-icon-pause{display:block}
.r360-page:not(.has-session-launched) .r360-stage-status{margin-left:0}
.r360-page.has-session-launched .r360-stage-status{margin-left:auto}

.r360-audio-focus-message{position:absolute;z-index:10;left:50%;bottom:34px;transform:translateX(-50%) translateY(10px);width:min(520px,calc(100% - 34px));display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid rgba(255,214,90,.22);border-radius:18px;background:rgba(14,9,44,.88);opacity:0;pointer-events:none;transition:.28s ease;backdrop-filter:blur(14px)}
.r360-audio-focus-message>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:14px;background:rgba(255,214,90,.11);color:#ffe27a;font-size:1.15rem}
.r360-audio-focus-message strong{display:block;font-size:1rem;color:#fff}.r360-audio-focus-message small{display:block;margin-top:3px;font-size:.88rem;line-height:1.5;color:#d6d4e9}
.r360-page.is-audio-focus .r360-audio-focus-message{opacity:1;transform:translateX(-50%) translateY(0)}
.r360-page.is-audio-focus .r360-smart3d,.r360-page.is-audio-focus .r360-anatomy{opacity:.08!important;filter:blur(1.5px) saturate(.72);transition:opacity .55s ease,filter .55s ease}
.r360-page.is-audio-focus .r360-orbit,.r360-page.is-audio-focus .r360-aura{opacity:.22!important}
.r360-page.is-audio-focus .r360-stage{background:radial-gradient(circle at 50% 48%,rgba(111,99,255,.30),transparent 30%),radial-gradient(circle at 50% 58%,rgba(255,214,90,.08),transparent 25%),linear-gradient(180deg,#171044 0%,#0b0824 68%,#070617 100%)!important}
.r360-page.is-audio-focus [data-audio-focus]{color:#ffe27a;border-color:rgba(255,214,90,.42);box-shadow:0 0 0 4px rgba(255,214,90,.06)}

.r360-audio-guide-tip{display:flex;gap:12px;margin:18px 0 4px;padding:14px;border:1px solid rgba(150,135,255,.20);border-radius:16px;background:rgba(111,99,255,.055)}
.r360-audio-guide-tip>span{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border-radius:12px;background:rgba(255,214,90,.10);color:#ffe27a}
.r360-audio-guide-tip strong{display:block;font-size:.9rem}.r360-audio-guide-tip small{display:block;margin-top:3px;color:var(--r-muted);font-size:.82rem;line-height:1.5}
.r360-audio-footnote strong{color:#ffe27a}

/* Expanded stage is intentionally CSS-driven on touch devices. iOS browsers do not expose\n   reliable element fullscreen for arbitrary HTML, so this is the deterministic app view. */
.r360-page.is-stage-expanded{position:fixed!important;inset:0!important;z-index:900!important;width:100vw!important;height:100dvh!important;overflow:hidden!important;padding:0!important;background:#080719!important}
.r360-page.is-stage-expanded .r360-header,.r360-page.is-stage-expanded .r360-hero,.r360-page.is-stage-expanded .r360-configurator,.r360-page.is-stage-expanded .r360-library,.r360-page.is-stage-expanded .r360-context,.r360-page.is-stage-expanded .r360-after-note,.r360-page.is-stage-expanded .r360-footer,.r360-page.is-stage-expanded footer{display:none!important}
.r360-page.is-stage-expanded .r360-shell.r360-dashboard{display:block!important;width:100%!important;max-width:none!important;height:100%!important;margin:0!important;padding:0!important}
.r360-page.is-stage-expanded .r360-player{display:block!important;position:relative!important;width:100%!important;max-width:none!important;height:100%!important;margin:0!important;padding:max(8px,env(safe-area-inset-top)) 10px max(8px,env(safe-area-inset-bottom))!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:hidden!important}
.r360-page.is-stage-expanded .r360-player-head{display:none!important}
.r360-page.is-stage-expanded .r360-stage-wrap{position:relative!important;display:block!important;width:100%!important;height:100%!important;overflow:hidden!important}
.r360-page.is-stage-expanded .r360-stage{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;border-radius:22px!important}
.r360-page.is-stage-expanded .r360-smart3d{inset:112px 0 108px!important}
.r360-page.is-stage-expanded .r360-anatomy{top:108px!important;height:calc(100% - 220px)!important;max-height:none!important;max-width:94%!important}
.r360-page.is-stage-expanded .r360-body-cue-docked{position:absolute!important;z-index:15!important;left:12px!important;right:12px!important;bottom:78px!important;margin:0!important;max-width:none!important;padding:9px 12px!important;border-radius:15px!important}
.r360-page.is-stage-expanded .r360-body-cue-docked small{display:none!important}
.r360-page.is-stage-expanded .r360-breath-rail{position:absolute!important;z-index:15!important;left:12px!important;right:12px!important;bottom:10px!important;margin:0!important;padding:7px 10px 5px!important;border-radius:15px!important}
.r360-page.is-stage-expanded .r360-breath-rail svg{height:42px!important}.r360-page.is-stage-expanded .r360-breath-rail-foot{display:none!important}
.r360-page.is-stage-expanded .r360-transport{display:none!important}
.r360-page.is-stage-expanded .r360-audio-focus-message{bottom:82px}

.r360-toast{position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom));z-index:1200;transform:translate(-50%,18px);width:min(520px,calc(100% - 28px));padding:12px 15px;border:1px solid rgba(255,214,90,.20);border-radius:15px;background:rgba(14,9,44,.96);color:#fff;box-shadow:0 20px 60px rgba(0,0,0,.34);opacity:0;pointer-events:none;transition:.25s ease;font-size:.85rem;line-height:1.45;text-align:center}.r360-toast.is-visible{opacity:1;transform:translate(-50%,0)}

/* Strict v1.0 palette purge: no green/cyan accents in Respira 360. */
.r360-page{--r-teal:#6f63ff!important;--r-teal-2:#ffe27a!important;--r-gold:#ffd65a!important;--r-muted:#d6d4e9!important;--r-muted-2:#aaa5ce!important}
body:has(.r360-page){background:#08071a!important}
.r360-page .r360-ai-compose button{background:linear-gradient(120deg,#6f63ff,#ffd65a)!important;color:#110b35!important}
.r360-page .r360-config-start{box-shadow:0 10px 28px rgba(111,99,255,.18)!important}.r360-page .r360-config-start:not(:disabled):hover{box-shadow:0 15px 34px rgba(111,99,255,.25)!important}

@media(max-width:680px){
  .r360-page.has-session-launched .r360-stage-topline{top:8px!important;left:8px!important;right:8px!important;gap:6px!important}
  .r360-session-edit{min-height:40px;padding:0 9px;border-radius:12px;font-size:.74rem}.r360-session-edit .r360-ui-icon{width:16px;height:16px}
  .r360-page.has-session-launched .r360-stage-status{display:none!important}
  .r360-stage-tools{gap:5px}.r360-stage-tool{width:40px;height:40px;border-radius:12px}.r360-stage-tool .r360-ui-icon{width:19px;height:19px}
  .r360-page.is-session-active .r360-phase-display{top:56px!important}
  .r360-page.is-session-active .r360-smart3d{inset:112px 0 4px!important}.r360-page.is-session-active .r360-anatomy{top:108px!important;height:calc(100% - 112px)!important}
  .r360-audio-focus-message{bottom:18px;width:calc(100% - 22px);padding:11px 12px}.r360-audio-focus-message strong{font-size:.93rem}.r360-audio-focus-message small{font-size:.8rem}
}
@media(max-width:390px){
  .r360-session-edit span{display:none}.r360-session-edit{width:40px;padding:0;justify-content:center}
  .r360-stage-tools{gap:4px}.r360-stage-tool{width:38px;height:38px}
  .r360-page.is-session-active .r360-phase-display{top:53px!important}.r360-page.is-session-active .r360-smart3d{inset:108px 0 3px!important}.r360-page.is-session-active .r360-anatomy{top:104px!important;height:calc(100% - 108px)!important}
}

/* v1.0 navigation safety: a visible exit route exists both at the top and beside the main control. */
.r360-exit-practice{display:none!important}
.r360-page.has-session-launched .r360-exit-practice{display:flex!important;align-items:center;justify-content:center;color:#f8f7ff!important;background:rgba(111,99,255,.09)!important;border-color:rgba(150,135,255,.22)!important}
.r360-page.has-session-launched .r360-actions{grid-template-columns:minmax(130px,.8fr) minmax(130px,.9fr) minmax(230px,1.55fr) minmax(140px,.85fr)}
.r360-page.has-session-launched .r360-exit-practice:hover{border-color:rgba(255,214,90,.38)!important;background:rgba(111,99,255,.16)!important}
.r360-audio-control em[data-breath-status]{display:block;margin-top:5px;color:#ffd65a;font-size:.78rem;font-style:normal;line-height:1.4}

@media(max-width:680px){
  .r360-page.is-session-active .r360-actions{grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr)!important;gap:7px!important}
  .r360-page.is-session-active .r360-actions [data-exit-practice]{display:flex!important;min-height:54px!important;border-radius:17px!important;font-size:.84rem!important}
  .r360-page.is-session-active .r360-actions [data-play]{min-height:54px!important;border-radius:17px!important;font-size:.95rem!important}
  .r360-page.is-session-active .r360-stage-topline{z-index:28!important;background:linear-gradient(180deg,rgba(8,7,26,.78),rgba(8,7,26,.04));padding-bottom:5px!important}
  .r360-page.is-session-active .r360-session-edit{border-color:rgba(255,214,90,.28)!important}
}
@media(max-width:390px){
  .r360-page.is-session-active .r360-actions [data-exit-practice] span{font-size:.78rem}
}

/* RESPIRA360 UX RC1 · Escala visual LIVE360 */
.r360-page{--r-bg:#041735;--r-bg-2:#062a68;--r-panel:rgba(7,35,87,.90);--r-panel-solid:#08275e;--r-panel-2:#0a3479;--r-teal:#19b9ff;--r-teal-2:#8bdfff;--r-violet:#075dff;background:radial-gradient(circle at 88% 10%,rgba(25,185,255,.18),transparent 26%),linear-gradient(180deg,var(--r-bg-2),var(--r-bg))}
.r360-shell{width:min(75vw,1440px)}
.r360-brand-logo-wrap{display:inline-flex;padding:7px 10px;border-radius:11px;background:#061b46}.r360-brand-logo{width:145px}.r360-brand-copy strong{color:#8bdfff}
.r360-hero.r360-shell{width:100%;min-height:max(620px,calc(100svh - 176px));margin:0;padding:clamp(55px,7vw,105px) max(24px,calc((100vw - min(75vw,1440px))/2));align-items:center;background:radial-gradient(circle at 82% 20%,rgba(25,185,255,.22),transparent 25%),linear-gradient(125deg,rgba(3,20,52,.34),rgba(7,93,255,.08))}
.r360-hero h1{max-width:1080px;font-size:clamp(3rem,6.5vw,6.9rem);line-height:.94;letter-spacing:-.06em}
.r360-configurator{margin-top:70px}
@media(max-width:1180px){.r360-shell{width:calc(100% - 40px)}.r360-hero.r360-shell{padding-inline:24px}}
@media(max-width:680px){.r360-shell{width:calc(100% - 24px)}.r360-hero.r360-shell{min-height:calc(100svh - 190px);padding:48px 20px}.r360-hero h1{font-size:clamp(2.65rem,13vw,4.6rem)}.r360-brand-logo{width:118px}}

/* RESPIRA360 UX COMPACTA RC2 */
.r360-shell{width:min(75vw,1440px);margin-inline:auto}
.r360-header{padding-top:18px;padding-bottom:14px}
.r360-brand{gap:12px}
.r360-brand-logo-wrap{display:grid;width:46px;height:46px;padding:5px;place-items:center;border-radius:14px;background:#061b46}
.r360-brand-logo{width:36px;height:36px;object-fit:contain}
.r360-brand-copy{padding-left:12px}
.r360-brand-copy strong{font-size:.8rem}.r360-brand-copy small{font-size:.72rem}
.r360-header-actions{gap:7px}.r360-header-btn{min-height:44px;padding-inline:12px;border-radius:12px}.r360-header-btn-text{font-size:.76rem}
.r360-hero.r360-shell{min-height:clamp(560px,68svh,720px);padding-block:54px}
.r360-hero h1{max-inline-size:15ch;font-size:clamp(2.9rem,4.8vw,5.15rem);line-height:.98;letter-spacing:-.052em;text-wrap:balance}
.r360-hero-copy>p:last-child{max-width:700px;font-size:clamp(.98rem,1.15vw,1.1rem);line-height:1.65}
.r360-hero-trust span{padding-block:9px;font-size:.84rem}
.r360-configurator{margin-top:48px;margin-bottom:16px;padding:20px;border-radius:22px}
.r360-config-head{gap:18px;padding-bottom:15px}.r360-config-head h2{font-size:clamp(1.45rem,2vw,1.95rem)}
.r360-config-head>div:first-child>p:last-child{margin-top:7px;font-size:.89rem;line-height:1.55}
.r360-config-badge{min-width:190px;padding:11px 13px;border-radius:14px}
.r360-config-flow{gap:14px}.r360-config-grid-2{gap:14px}
.r360-config-field{padding:14px;border-radius:16px}
.r360-config-label{gap:9px;margin-bottom:9px}.r360-config-label>span{width:29px;height:29px;flex-basis:29px;border-radius:9px}
.r360-config-label strong{font-size:.94rem}.r360-config-label small{font-size:.79rem}
.r360-config-options,.r360-config-audio{gap:7px}
.r360-config-options button,.r360-config-audio button{min-height:48px;padding:8px 11px;border-radius:12px}
.r360-config-options button>span,.r360-config-audio button>span{font-size:.87rem}.r360-config-options button>small,.r360-config-audio button>small{font-size:.74rem}
.r360-config-practices{gap:8px}.r360-config-practices button{min-height:76px;padding:11px 12px;border-radius:14px}
.r360-practice-choice-top strong{font-size:.88rem}.r360-config-practices button>small{margin-top:5px;font-size:.76rem;line-height:1.42}
.r360-config-live{grid-template-columns:minmax(170px,.52fr) minmax(0,1fr) minmax(230px,.78fr) auto;gap:11px;margin-top:16px;padding:14px;border-radius:17px}
.r360-config-summary span,.r360-config-fixed span{min-height:30px;padding:5px 9px;font-size:.72rem}
.r360-config-start{min-height:50px;padding-inline:18px;border-radius:13px;font-size:.84rem}
.r360-social-proof{margin-top:9px}
@media(max-width:1180px){
  .r360-shell{width:calc(100% - 40px)}
  .r360-hero.r360-shell{padding-inline:24px}
  .r360-config-live{grid-template-columns:minmax(170px,.55fr) minmax(0,1fr) minmax(210px,.8fr)}
}
@media(max-width:920px){.r360-config-grid-2{grid-template-columns:1fr}.r360-configurator{padding:18px}}
@media(max-width:680px){
  .r360-shell{width:calc(100% - 24px)}
  .r360-header{align-items:flex-start;flex-direction:column}
  .r360-header-actions{width:100%;overflow-x:auto;padding-bottom:2px}.r360-header-btn{flex:0 0 auto}
  .r360-hero.r360-shell{min-height:auto;padding:46px 20px 50px}
  .r360-hero h1{font-size:clamp(2.5rem,12.5vw,3.95rem)}
  .r360-configurator{width:calc(100% - 16px);padding:14px;margin-top:38px}
  .r360-config-head{display:grid}.r360-config-badge{min-width:0;text-align:left}
  .r360-config-options-goals,.r360-config-practices{grid-template-columns:1fr}
  .r360-config-practices button{min-height:72px}
  .r360-config-live{grid-template-columns:1fr;padding:12px}
  .r360-config-start{min-height:54px}
}
