/* Tela inicial por perfil (admin | coach | client). Mobile-first, tema escuro como 10-14. Cor sempre acompanhada de rotulo.
   #home[data-home-role] esconde os blocos estaticos de demonstracao; sem o atributo (anonimo/demo) o inicio original continua. */
.role-home[hidden]{display:none}
#home[data-home-role]{display:flex;flex-direction:column;gap:16px}
#home[data-home-role]>:not(#roleHome){display:none!important}
#home[data-home-role="client"]>.hero:not(#roleHome){display:grid!important}
#home[data-home-role="client"] .hero-copy{display:none}
#home[data-home-role="client"] .hero.cosmic-hero{grid-template-columns:minmax(0,1fr);min-height:0;padding:18px;gap:0;margin:0;order:1}
#home[data-home-role="client"] .hero.cosmic-hero .today-panel{margin:0;width:100%;max-width:none}
#home[data-home-role="client"] .role-home{display:contents}
#home[data-home-role]{padding-top:8px}
.rh-state{display:grid;gap:10px;justify-items:start;padding:14px 2px}

.rh{display:grid;gap:14px;min-width:0}
.rh-head{display:grid;gap:10px;min-width:0}
.rh-title{margin:0;color:var(--ink);font-size:clamp(22px,6vw,30px);line-height:1.15;letter-spacing:-.5px}
.rh-sub{margin:4px 0 0;color:var(--muted);font-size:13px}
.rh-head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.rh-coach-league-badge{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:10px;min-width:230px;min-height:74px;padding:9px 13px;border:1px solid #8fe5ff4a;border-radius:16px;background:linear-gradient(120deg,#14232b,#101715);color:#effaff;text-decoration:none;box-shadow:inset 0 0 18px #84e4ff0c,0 6px 20px #0003;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.rh-coach-league-badge:before{position:absolute;z-index:-1;content:"";inset:-55%;background:radial-gradient(ellipse at 35% 50%,#75e7ff27,transparent 40%);animation:coach-rank-aura 4.5s ease-in-out infinite}
.rh-coach-league-badge:hover{transform:translateY(-2px);border-color:#9ceaff9c;box-shadow:0 0 24px #70dfff2c}
.rh-coach-league-crystal{position:relative;display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid #a0eaff84;border-radius:50%;background:radial-gradient(circle,#8deaff35,#32647755 64%,#101719);color:#c7f5ff;font-size:16px;font-weight:950;font-variant-numeric:tabular-nums;text-shadow:0 0 12px #8deaff;animation:coach-rank-crystal 3.2s ease-in-out infinite}
.rh-coach-league-crystal:after{position:absolute;content:"";inset:-5px;border:1px solid #a0eaff35;border-radius:50%;animation:coach-rank-medal-ring 2.8s ease-out infinite}
.rh-coach-league-crystal.rank-medal-1{border-color:#ffe58d;background:radial-gradient(circle,#ffe99478,#a77b294f 66%,#211a0b);color:#fff0b0;text-shadow:0 0 12px #ffce43;box-shadow:0 0 18px #ffc94745}
.rh-coach-league-crystal.rank-medal-2{border-color:#e5f2ff;background:radial-gradient(circle,#e6f0ff70,#7f94aa55 66%,#121923);color:#f5f8ff;text-shadow:0 0 12px #d5e6ff;box-shadow:0 0 18px #d2e7ff38}
.rh-coach-league-crystal.rank-medal-3{border-color:#ffc18d;background:radial-gradient(circle,#ffd0a072,#9b512c55 66%,#21140e);color:#ffe0c3;text-shadow:0 0 12px #e48b51;box-shadow:0 0 18px #e48b5145}
.rh-coach-league-copy{display:grid;gap:3px;min-width:0}.rh-coach-league-copy small{color:#a5c8d1;font-size:8px;font-weight:850;letter-spacing:.035em}.rh-coach-league-copy strong{color:#e9faff;font-size:12px;font-weight:950}.rh-coach-league-copy span{color:#9bdff1;font-size:9px;font-weight:800}
.rh-coach-position-row{display:flex;align-items:center;gap:6px;line-height:1.05}.rh-coach-league-copy .rh-coach-position-row strong{font-size:15px;letter-spacing:-.04em}.rh-coach-league-copy .current-position strong{color:#d5ff86;text-shadow:0 0 12px #b6ff5b65}.rh-coach-league-copy .annual-position strong{color:#bdeeff}.rh-coach-league-copy .rh-coach-position-row span{font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.rh-coach-league-copy small{white-space:nowrap}.rh-coach-league-badge.is-loading .rh-coach-league-crystal{font-size:21px}
.rh-mini{min-height:44px;padding:8px 14px;font-size:12px}
.rh-link{display:inline-flex;align-items:center;gap:8px;min-height:44px}
.rh button:focus-visible{outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #5fffd055}
.rh .btn.secondary,.rh .btn.ghost{background:#ffffff0d;color:var(--ink);border:1px solid #ffffff2a}

.rh-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;min-width:0}
.rh-card{min-width:0}
.rh-h{margin:0;color:var(--ink);font-size:15px}
.rh-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.rh-mini-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.rh-kpi{display:grid;gap:2px;min-width:0;padding:12px 13px;border-radius:12px;background:#ffffff0a;border:1px solid #ffffff14}
.rh-kpi-l{color:var(--muted);font-size:12px;font-weight:700}
.rh-kpi strong{color:var(--ink);font-size:24px;line-height:1.1}
.rh-kpi small{color:var(--muted);font-size:12px}
.rh-kpi.warn{border-color:#f2c55c66;background:#f2c55c12}
.rh-kpi.warn strong{color:#f6d98f}
.rh-kpi.bad{border-color:#ff9b8a66;background:#ff9b8a14}
.rh-kpi.bad strong{color:#ffb3a5}

.rh-alert{margin:0;display:grid;gap:10px;padding:13px 14px;border-radius:14px;border:1px solid #ffffff1c;background:#ffffff0a;color:var(--ink)}
.rh-alert.bad{border-color:#ff9b8a66;background:#ff9b8a14}
.rh-alert-line{margin:0;font-size:15px;font-weight:700}

.rh-stack{display:flex;gap:3px;min-height:34px;border-radius:10px;overflow:hidden}
.rh-seg{display:grid;place-items:center;min-width:26px;background:var(--bc);color:#07100f;font-size:12px;font-weight:800}
.rh-legend{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px}
.rh-legend li{display:flex;align-items:center;gap:7px;min-width:0;color:var(--ink);font-size:13px}
.rh-legend i{flex:none;width:12px;height:12px;border-radius:4px;background:var(--bc)}
.rh-legend span{min-width:0;overflow-wrap:anywhere}
.rh-legend small{color:var(--muted)}
.rh .band-engaged{--bc:#6fe3a0}.rh .band-attention{--bc:#f2c55c}.rh .band-risk{--bc:#ff9b8a}.rh .band-new{--bc:#8fb8ff}

.rh-list,.rh-att{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.rh-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;background:#ffffff08;color:var(--muted);font-size:13px}
.rh-list li.on{color:var(--ink);background:#f2c55c14;border:1px solid #f2c55c44}
.rh-list strong{color:var(--ink);font-size:18px}
.rh-att li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:11px;background:#ffffff08;border:1px solid #ffffff12;min-width:0}
.rh-att li>div:first-child{display:grid;gap:2px;min-width:0}
.rh-att strong{color:var(--ink);font-size:14px;overflow-wrap:anywhere}
.rh-att small,.rh-msg{color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.rh-btns{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.rh-person{display:flex;align-items:center;gap:12px}
.rh-person>div{display:grid;gap:2px;min-width:0}
.rh-person small{color:var(--muted);font-size:12px}
.rh-avatar{flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#c7ff6226;color:var(--lime);font-weight:800}

/* tabela de personais: cartoes no celular, tabela a partir de 700px */
.rh-scroll{min-width:0;overflow-x:auto}
.rh-table{width:100%;border-collapse:collapse;color:var(--ink);font-size:13px}
.rh-table thead{display:none}
.rh-table tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 12px;padding:10px 0;border-bottom:1px solid #ffffff14}
.rh-table th[scope=row]{grid-column:1/-1;text-align:left;font-size:15px}
.rh-table td{display:flex;justify-content:space-between;gap:8px;min-width:0}
.rh-table td::before{content:attr(data-label);color:var(--muted)}
.rh-risk{color:#ffb3a5;font-weight:800}
.rh-sortbtn{background:none;border:0;color:var(--muted);font:inherit;font-weight:700;cursor:pointer;padding:6px 4px;min-height:44px}

.rh-ranking{min-width:0}
.rh-kpi strong{overflow-wrap:anywhere}
.rh-client .rh-mini-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.rh-client{display:contents}
.rh-client .rh-top{order:0}
.rh-client .rh-body{display:grid;gap:14px;order:2;min-width:0}

/* Client health / measurement overview */
.health-card{--health-accent:#c7ff62;position:relative;overflow:hidden;min-width:0;padding:clamp(16px,2.5vw,25px);border:1px solid #c7ff6225;border-radius:22px;background:radial-gradient(ellipse at 8% 0,#c7ff6212,transparent 34%),radial-gradient(ellipse at 100% 75%,#6fe3a00d,transparent 36%),linear-gradient(145deg,#121b18,#0c1211);box-shadow:0 18px 45px #0002;animation:health-in .55s ease both}
.health-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0}
.health-head h3{margin:2px 0 0;color:var(--ink);font-size:clamp(18px,2.5vw,23px);letter-spacing:-.03em}
.health-eyebrow{margin:0;color:var(--health-accent);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.health-sub{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.5}
.health-add{flex:none;min-height:44px;display:inline-flex;align-items:center;gap:8px;background:linear-gradient(120deg,#c7ff62,#8ff0b7);color:#102019;font-size:12px;font-weight:850;box-shadow:0 7px 20px #9df76320}
.health-add::before{content:'+';font-size:19px;line-height:.8}
.health-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:17px}
.health-stat{display:flex;align-items:center;gap:11px;min-width:0;padding:12px 14px;border:1px solid #ffffff17;border-radius:14px;background:#ffffff08}
.health-stat-icon{display:grid;place-items:center;flex:none;width:35px;height:35px;border-radius:11px;background:#c7ff6218;color:var(--health-accent);font-size:18px;font-weight:800}
.health-stat>span:last-child{display:grid;gap:2px;min-width:0}
.health-stat small{color:var(--muted);font-size:11px}
.health-stat strong{color:#f0fff5;font-size:clamp(16px,2.2vw,21px);line-height:1.1;overflow-wrap:anywhere}
.health-note{margin:11px 0 0;padding:9px 11px;border-left:2px solid #c7ff6280;border-radius:0 9px 9px 0;background:#c7ff6209;color:#aebfb5;font-size:11px;line-height:1.5}
.health-content{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr);gap:clamp(14px,3vw,28px);align-items:center;margin-top:15px;padding-top:15px;border-top:1px solid #ffffff15;min-width:0}
.health-map-wrap{display:grid;gap:13px;min-width:0}
.health-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.health-figure{position:relative;display:grid;align-content:start;justify-items:center;min-width:0;min-height:210px;padding:9px 8px 8px;border:1px solid #ffffff11;border-radius:16px;background:linear-gradient(180deg,#ffffff08,#ffffff02);overflow:hidden}
.health-figure-label{position:relative;z-index:1;color:#b4c7bc;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.health-map-canvas{position:relative;width:min(100%,180px);aspect-ratio:1/1;min-width:0;overflow:visible}
.health-map-canvas svg{display:block;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 8px 15px #0004)}
.health-silhouette{fill:#708b7b;stroke:#d7f2db;stroke-width:.65;stroke-linejoin:round}
.health-figure-back .health-silhouette{fill:#557265}
.health-pin{position:absolute;z-index:2;left:var(--pin-x);top:var(--pin-y);display:grid;place-items:center;width:22px;height:22px;border:2px solid #0d1713;border-radius:50%;background:var(--health-accent);color:#101c15;font-size:10px;font-weight:900;box-shadow:0 0 0 3px #c7ff6230;transform:translate(-50%,-50%);animation:health-pulse 2.8s ease-in-out infinite}
.health-figure-back .health-pin:nth-of-type(odd){animation-delay:.3s}
.health-meta{display:flex;justify-content:space-between;align-items:center;gap:9px;min-width:0}
.health-meta>span:first-child{display:grid;gap:2px;min-width:0}
.health-meta-label{color:var(--muted);font-size:10px}
.health-meta strong{color:var(--ink);font-size:12px}
.health-trend{flex:none;padding:6px 9px;border:1px solid #7df0aa32;border-radius:20px;background:#7df0aa10;color:#a9f3bd;font-size:10px;font-weight:800}
.health-trend.is-empty{border-color:#ffffff18;background:#ffffff07;color:#aebfb5;font-weight:600}
.health-list{display:grid;gap:7px;min-width:0}
.health-measure{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px 11px;border:1px solid #ffffff12;border-radius:12px;background:#ffffff07}
.health-measure-num{display:grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#c7ff621b;color:var(--health-accent);font-size:11px;font-weight:900}
.health-measure>span:nth-child(2){display:grid;gap:1px;min-width:0}
.health-measure strong{color:#e5f2e9;font-size:12px}
.health-measure small{color:#80978b;font-size:10px}
.health-measure>b{color:#f0fff5;font-size:13px;text-align:right;overflow-wrap:anywhere}
.health-empty{display:grid;justify-items:start;gap:8px;padding:18px;border:1px dashed #ffffff25;border-radius:15px;background:#ffffff05}
.health-empty-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#c7ff6216;color:var(--health-accent);font-size:23px}
.health-empty strong{color:var(--ink);font-size:14px}
.health-empty p{max-width:42ch;margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.health-empty .btn{min-height:42px;margin-top:2px}
.health-infographic{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(265px,.75fr);align-items:start;gap:clamp(14px,2.2vw,24px);margin-top:16px;padding-top:16px;border-top:1px solid #ffffff15;min-width:0}
.health-map-wrap{display:grid;gap:12px;min-width:0}
.health-map{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.health-figure{display:grid;align-content:start;justify-items:center;gap:6px;min-width:0;min-height:0;padding:10px 7px 6px;border:1px solid #ffffff13;border-radius:15px;background:radial-gradient(ellipse at 50% 30%,#8ee4a00b,transparent 55%),linear-gradient(180deg,#ffffff07,#ffffff02);overflow:hidden}
.health-figure-label{color:#b4c7bc;font-size:10px;font-weight:850;letter-spacing:.09em;text-transform:uppercase}
.health-figure svg{display:block;width:100%;height:auto;max-height:430px;overflow:visible;filter:drop-shadow(0 8px 15px #0004)}
.health-silhouette{fill:#728f7f;stroke:#b7d4c1;stroke-width:1.3;stroke-linejoin:round}
.health-silhouette-back{fill:#617e70}
.health-limbs{fill:none;stroke:#b7d4c1;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.health-detail{fill:none;stroke:#d7efe0;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;opacity:.6}
.health-guide-line{fill:none;stroke-width:2;stroke-linecap:round;opacity:.95}
.health-annotation{animation:health-annotation-in .42s ease both}
.health-tape-line{fill:none;stroke-width:8;stroke-linecap:butt;opacity:.62;stroke-dasharray:1;stroke-dashoffset:1;animation:health-tape-draw .8s ease-out both}
.health-tape-line.is-measured{stroke:#c7ff62}
.health-tape-line.is-missing{stroke:#c8d7cd;opacity:.28}
.health-tape-ticks{fill:none;stroke:#e8fff0;stroke-width:1.5;stroke-linecap:round;opacity:.92}
.health-tape-ticks.is-missing{stroke:#9fb1a5;opacity:.45}
.health-guide-line.is-measured{stroke:#c7ff62}
.health-guide-line.is-missing{stroke:#d8e5dd;stroke-dasharray:.025 .025;stroke-dashoffset:0;animation:none;opacity:.42}
.health-guide-line{stroke-dasharray:1;stroke-dashoffset:1;animation:health-tape-draw .75s ease-out both}
.health-callout.is-measured{fill:#c7ff62;stroke:#0c1512;stroke-width:2}
.health-callout.is-missing{fill:#3c4c44;stroke:#a4b7aa;stroke-width:1.5;stroke-dasharray:2 2}
.health-callout{r:18}
.health-callout-number{font:900 18px/1 system-ui,sans-serif;pointer-events:none}
.health-callout-number.is-measured{fill:#102019}
.health-callout-number.is-missing{fill:#d4e3d9}
.health-annotation{transform-box:fill-box;transform-origin:center;transition:transform .24s ease,filter .24s ease}
.health-annotation.is-active{transform:scale(1.1);filter:drop-shadow(0 0 9px #c7ff62aa)}
.health-annotation.is-active .health-tape-line{stroke-width:11;opacity:1}
.health-readout{display:grid;align-content:start;gap:12px;min-width:0;padding:12px;border:1px solid #ffffff16;border-radius:17px;background:#ffffff05}
.health-body-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.health-body-facts .health-stat{display:grid;justify-items:start;gap:5px;padding:9px 8px;border-color:#ffffff16;border-radius:11px}
.health-body-facts .health-stat-icon{width:25px;height:25px;border-radius:8px;font-size:14px}
.health-body-facts .health-stat small{font-size:10px;overflow-wrap:anywhere}
.health-body-facts .health-stat strong{font-size:clamp(14px,1.5vw,18px)}
.health-measure-list{display:grid;gap:6px;min-width:0}
.health-measure{appearance:none;width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:8px 9px;border:1px solid #ffffff12;border-radius:11px;background:#ffffff06;transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}
.health-measure.is-missing{background:#ffffff03;border-style:dashed}
.health-measure:hover,.health-measure:focus-visible,.health-measure[aria-pressed="true"]{transform:translateY(-2px);border-color:#c7ff6280;background:#c7ff620c;box-shadow:0 8px 22px #c7ff6212}
.health-measure:focus-visible{outline:2px solid #c7ff62;outline-offset:2px}
.health-measure-num{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#c7ff621b;color:#c7ff62;font-size:11px;font-weight:900}
.health-measure.is-missing .health-measure-num{background:#ffffff0c;color:#b6c5bc}
.health-measure>span:nth-child(2){display:grid;gap:1px;min-width:0}
.health-measure strong{color:#e5f2e9;font-size:12px}
.health-measure small{color:#80978b;font-size:10px}
.health-measure>b{max-width:145px;color:#f0fff5;font-size:12px;text-align:right;overflow-wrap:anywhere}
.health-measure.is-missing>b{color:#84968b;font-size:10px;font-weight:600}
.health-body-note{margin:0;padding:9px 10px;border-left:2px solid #c7ff6280;border-radius:0 9px 9px 0;background:#c7ff6209;color:#aebfb5;font-size:10px;line-height:1.5}
.health-avatar-card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;min-width:0;min-height:100%;padding:14px 12px 13px;border:1px solid #c7ff6228;border-radius:17px;background:radial-gradient(ellipse at 50% 40%,#bdff2510,transparent 53%),linear-gradient(160deg,#15221c,#0c1311 78%);text-align:center}
.health-avatar-card.has-momentum{border-color:#c7ff6250;background:radial-gradient(ellipse at 50% 42%,#bdff2519,transparent 58%),linear-gradient(160deg,#17271c,#0c1311 78%)}
.avatar-stage{position:relative;display:grid;place-items:center;width:min(100%,260px);aspect-ratio:1/1;isolation:isolate}
.avatar-stage::after{position:absolute;inset:15% 10% 5%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,#c7ff6217,transparent 68%);content:''}
.avatar-stage.is-lit::after{background:radial-gradient(ellipse,#c7ff6230 0,transparent 69%);animation:avatar-glow 2.6s ease-in-out infinite}
.progress-avatar-art{position:absolute;z-index:2;width:88%;height:100%;overflow:visible;filter:drop-shadow(0 12px 18px #0008);animation:avatar-idle 3.8s ease-in-out infinite;transform-origin:50% 90%}
.avatar-ground{fill:#0005}.avatar-leg{fill:#1b2521;stroke:#92a799;stroke-width:1.5;stroke-linejoin:round}.avatar-shoe{fill:#c7ff62;stroke:#e4ffb2;stroke-width:1.4;stroke-linejoin:round}
.avatar-arm,.avatar-neck{fill:url(#avatar-skin);stroke:#e8bb98;stroke-width:1.3;stroke-linejoin:round}.avatar-head{fill:url(#avatar-skin);stroke:#f1c8a3;stroke-width:1.4}.avatar-hair{fill:#202d28}.avatar-face{fill:none;stroke:#875f4e;stroke-width:2;stroke-linecap:round}
.avatar-shirt{fill:url(#avatar-shirt);stroke:#e4ffb4;stroke-width:1.4;stroke-linejoin:round}.avatar-shirt-mark{fill:none;stroke:#244b39;stroke-width:3;stroke-linecap:round;opacity:.65}.is-female .avatar-shirt{filter:hue-rotate(6deg) saturate(.9)}
.avatar-flames{position:absolute;z-index:1;inset:3% 0 0;width:100%;height:93%;overflow:visible;filter:drop-shadow(0 0 10px #ff8a2d55)}
.avatar-flame{fill:#ff6d27;transform-origin:50% 88%;animation:avatar-flame 1.25s ease-in-out infinite alternate}.avatar-flame-inner{fill:#ffd34f;transform-origin:50% 88%;animation:avatar-flame 1.05s ease-in-out -.3s infinite alternate-reverse}.avatar-flame-a{opacity:.8}
.avatar-rest-glow{width:65%;height:68%;border:1px solid #c7ff6220;border-radius:50%;background:radial-gradient(ellipse,#c7ff6214,transparent 68%)}
.avatar-rank{display:flex;align-items:center;gap:7px;margin-top:-4px;color:#c7ff62;font-size:9px;font-weight:900;letter-spacing:.15em}.avatar-level-dot{width:7px;height:7px;border-radius:50%;background:#c7ff62;box-shadow:0 0 12px #c7ff62}
.avatar-title{margin:6px 0 0;color:#f0fff5;font-size:clamp(16px,2vw,20px);letter-spacing:-.03em}.avatar-caption{max-width:250px;margin:5px 0 0;color:#aebfb5;font-size:11px;line-height:1.45}
.avatar-stats{display:grid;grid-template-columns:1fr 1fr;width:100%;margin-top:13px;border-block:1px solid #ffffff12}.avatar-stats>div{display:grid;gap:3px;padding:9px 4px}.avatar-stats>div+div{border-left:1px solid #ffffff12}.avatar-stats strong{color:#ecfff2;font-size:18px;font-variant-numeric:tabular-nums}.avatar-stats span{color:#91a79b;font-size:9px;line-height:1.3}
.avatar-next{display:grid;gap:6px;width:100%;margin-top:11px;text-align:left}.avatar-next-label{display:flex;justify-content:space-between;gap:8px;color:#aebfb5;font-size:9px}.avatar-next-label strong{color:#c7ff62;font-variant-numeric:tabular-nums}.avatar-progress{height:6px;overflow:hidden;border-radius:10px;background:#ffffff12}.avatar-progress>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8de75b,#c7ff62,#76efbb);box-shadow:0 0 12px #c7ff6270;transition:width .65s cubic-bezier(.2,.8,.2,1)}
.avatar-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:11px}.avatar-badge{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border:1px solid #ffffff12;border-radius:999px;background:#ffffff05;color:#64756b;font-size:8px;font-weight:750;line-height:1.2}.avatar-badge>span{font-size:10px}.avatar-badge.is-earned{border-color:#c7ff6240;background:#c7ff620d;color:#d8ffad;box-shadow:inset 0 0 12px #c7ff6207}
@keyframes avatar-idle{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-3px) rotate(.6deg)}}
@keyframes avatar-flame{from{transform:scaleY(.94) scaleX(.98);opacity:.75}to{transform:scaleY(1.06) scaleX(1.02);opacity:1}}
@keyframes avatar-glow{0%,100%{opacity:.65}50%{opacity:1}}
.rh-client .rh-head{animation:client-enter .48s cubic-bezier(.2,.75,.25,1) both}
.rh-client .rh-body>.rh-alert{animation:client-enter .5s cubic-bezier(.2,.75,.25,1) .05s both}
.rh-client .rh-body>.health-card{animation-delay:.11s}
.rh-client .rh-grid>.rh-card{animation:client-enter .55s cubic-bezier(.2,.75,.25,1) both;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.rh-client .rh-grid>.rh-card:nth-child(1){animation-delay:.16s}
.rh-client .rh-grid>.rh-card:nth-child(2){animation-delay:.23s}
.rh-client .rh-grid>.rh-card:nth-child(3){animation-delay:.30s}
@media(hover:hover){.rh-client .rh-grid>.rh-card:hover{transform:translateY(-3px);border-color:#c7ff6240;box-shadow:0 16px 34px #0004}}
@keyframes health-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes health-pulse{0%,100%{box-shadow:0 0 0 3px #c7ff6220}50%{box-shadow:0 0 0 5px #c7ff6235}}
@keyframes client-enter{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes coach-rank-aura{0%,100%{transform:translateX(-8%);opacity:.65}50%{transform:translateX(10%);opacity:1}}
@keyframes coach-rank-crystal{0%,100%{transform:rotate(-7deg) scale(.96);filter:drop-shadow(0 0 6px #7adfff77)}50%{transform:rotate(8deg) scale(1.06);filter:drop-shadow(0 0 13px #8deaffb3)}}
@keyframes coach-rank-medal-ring{0%{transform:scale(.92);opacity:.5}85%,100%{transform:scale(1.23);opacity:0}}

@media(min-width:700px){
  .rh-head{grid-template-columns:minmax(0,1fr) auto;align-items:end}
  .rh-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rh-grid>.rh-card:has(.rh-table){grid-column:1/-1}
  .rh-mini-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .rh-table thead{display:table-header-group}
  .rh-table tr{display:table-row;padding:0}
  .rh-table th,.rh-table td{display:table-cell;padding:10px 8px;text-align:left;border-bottom:1px solid #ffffff14}
  .rh-table td::before{content:none}
  .rh-table th[scope=row]{font-size:13px}
  .rh-sortbtn{padding:6px 0}
}
@media(max-width:699px){.rh-coach-league-badge{width:100%;max-width:420px}.rh-head-actions{align-items:stretch}}
@media(prefers-reduced-motion:reduce){.rh-coach-league-badge:before,.rh-coach-league-crystal,.rh-coach-league-crystal:after{animation:none!important}.rh-coach-league-badge{transition:none!important}}
@media(min-width:1100px){
  #home[data-home-role="client"] .hero.cosmic-hero{padding:22px}
  .rh-client .rh-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){.health-infographic{grid-template-columns:minmax(0,1fr)}.health-map{max-width:600px;margin-inline:auto;width:100%}.health-readout{max-width:600px;width:100%;margin-inline:auto}}
@media(max-width:520px){.health-card{padding:15px;border-radius:18px}.health-head{align-items:stretch;flex-direction:column}.health-add{align-self:flex-start}.health-map{grid-template-columns:minmax(0,1fr);gap:9px;max-width:340px}.health-figure{padding:8px 7px 5px}.health-figure-label{font-size:9px}.health-figure svg{width:min(100%,320px)}.health-readout{padding:9px}.health-body-facts{gap:5px}.health-body-facts .health-stat{padding:7px 6px}.health-body-facts .health-stat small{font-size:9px}.health-body-facts .health-stat strong{font-size:14px}.health-measure{grid-template-columns:26px minmax(0,1fr) auto;gap:6px;padding:7px}.health-measure>b{max-width:112px;font-size:11px}.health-meta{align-items:flex-start;flex-direction:column}}
@keyframes health-tape-draw{to{stroke-dashoffset:0}}
@keyframes health-annotation-in{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.health-card,.health-pin,.health-annotation,.health-guide-line,.health-tape-line,.rh-client .rh-head,.rh-client .rh-body>.rh-alert,.rh-client .rh-grid>.rh-card,.progress-avatar-art,.avatar-flame,.avatar-flame-inner,.avatar-stage.is-lit::after{animation:none!important;transition:none!important;transform:none!important}.health-guide-line,.health-tape-line{stroke-dasharray:none!important;stroke-dashoffset:0!important}.health-measure:hover,.health-measure:focus-visible,.health-measure[aria-pressed="true"],.rh-client .rh-grid>.rh-card:hover{transform:none!important}}
.rh-grid>.health-avatar-card{width:100%;max-width:480px;justify-self:start;min-height:0}.rh-grid>.health-avatar-card .avatar-stage{max-width:260px}
