/* Personal Pro Pulse 31 — unidade visual editorial em TODOS os perfis.
   O design pertence à plataforma; só textos e imagens da vitrine são editáveis. */
:root{
  --bg:#10120e;--side:#141610;--panel:#1d201a;--panel2:#282c23;
  --line:#42493a;--muted:#b4bba9;--ink:#f7f7ed;
  --primary:#d7fb37;--good:#d7fb37;--warn:#ffd679;--bad:#ff9a9b;--blue:#a7d2e6;
}
body{background:#10120e;color:var(--ink);font-feature-settings:"ss01" on}
::selection{background:#d7fb37;color:#11150d}
.btn{background:#d7fb37;color:#13190c;border-radius:2px;letter-spacing:.025em;font-size:12px;text-transform:uppercase;min-height:43px}
.btn.secondary{background:#292e25;border:1px solid #58634c;color:#f4f8e5}
.btn.ghost{background:transparent;border:1px solid #657052;color:#e9f3d4}
.btn.warn{background:#655323;color:#ffe8a0}.btn.danger{background:#522b29;color:#ffd2cc}
.btn:hover:not(:disabled){filter:brightness(1.12)}
.tag{border-radius:2px;background:#303f25;color:#dfff95;text-transform:uppercase;letter-spacing:.055em}
.tag.pending{background:#463a23;color:#ffdc9c}.tag.off{background:#403333;color:#ffb4b4}
.info{background:#202b1f;border:1px solid #586b3d;border-radius:3px;color:#e0efc3}
.info.warn{background:#352b19;border-color:#796338}.info.bad{background:#382022;border-color:#915450}
.card,.item,.kpi,.quick-card,.hero,.welcome-card,.preview,.modal,.train-ex,.notice{border-radius:3px}
.card{background:#1b1e19;border-color:#404737;padding:23px}
.item{background:#252a21;border-color:#3f4a36}
.item:hover{border-color:#91ac4e}
.hero{background:linear-gradient(135deg,#252d1a,#181d18 75%);border:1px solid #5b7040;border-radius:3px}
.thumb{border-radius:2px;background:#334326}
.stat,.green,.price{color:var(--primary)}
.eyebrow{font-size:11px;color:var(--primary);letter-spacing:.18em;text-transform:uppercase}
.section-title{border-bottom:1px solid #42483b;padding-bottom:20px;margin-bottom:20px}
.section-title h1{font-size:clamp(2rem,4.4vw,3.8rem);line-height:.98;letter-spacing:-.045em;font-weight:950;text-transform:uppercase;max-width:960px}
.section-title p{color:#bfc5b5}
h2,h3{letter-spacing:-.017em}
h2{font-weight:900}
.tiny,small,p{color:#b4bba9}
.field{color:#e5e9d8}
.field input,.field select,.field textarea{background:#151913;border-color:#535f49;border-radius:2px;color:#f8fae9;outline-color:#d7fb37}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#d7fb37}
.pill{border-color:#5a624e;border-radius:3px;color:#d7e4c8}
.bar{background:#3c4434;border-radius:2px}.bar>span{background:#d7fb37;border-radius:2px}
.tabs button{border-radius:2px;background:#282e24;color:#cbd5b8}.tabs button.active{background:#d7fb37;color:#19210c;border-color:#d7fb37}
.av{background:#d7fb37;color:#141b0a;border-radius:2px}
.badge-count{background:#d7fb37;color:#1b250b;border-radius:2px}
/* Navegação idêntica entre admin, personal e aluno */
.v31-shell{grid-template-columns:247px minmax(0,1fr);background:#10120e;min-height:100vh}
.v31-sidebar{background:#151811;border-right:1px solid #414936;padding:27px 16px;gap:17px}
.v31-logo{font-size:17px;line-height:1.12;letter-spacing:.03em;color:#f8faec}
.v31-logo strong{color:#d7fb37}.v31-logo small{font-size:9px;letter-spacing:.19em;margin-top:6px;color:#d7fb37}
.v31-logo .brand-mark{border-radius:2px;background:#d7fb37;color:#172109;width:38px;height:38px;font-size:26px}
.v31-sidebar-sub{font-size:9px;color:#a7b194;letter-spacing:.15em;font-weight:850;padding:14px 12px 8px;border-top:1px solid #394132}
.v31-sidebar .nav{gap:3px}
.v31-sidebar .nav button{border-radius:2px;padding:12px 14px;color:#bfcab2;border-left:2px solid transparent;transition:background .12s,color .12s}
.v31-sidebar .nav button.active{background:#26331b;color:#d7fb37;border-left-color:#d7fb37}
.v31-sidebar .nav button:hover{background:#292f21;color:#f5fbe9}
.v31-sidebar .nav button span{color:#d7fb37;font-size:18px}
.v31-sidebar .sidefoot{border-top:1px solid #48503c;padding-top:18px}
.v31-sidebar .sidefoot>small{color:#d7fb37;font-size:9px;font-weight:900;letter-spacing:.12em}
.v31-sidebar-mini{margin-top:11px;font-size:12px;line-height:1.7;color:#c4cbb9;font-weight:900;letter-spacing:.07em}
.v31-sidebar-mini strong{color:#d7fb37}
.v31-content{max-width:1430px;padding:24px clamp(19px,3.5vw,52px) 35px}
.v31-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 0 18px;margin-bottom:24px;border-bottom:1px solid #414a39;flex-wrap:wrap}
.v31-topbar .user{display:flex;align-items:center;gap:8px;color:#f8ffe9;font-size:12px;font-weight:700}
.v31-mini-head{font-size:10px;color:#d7fb37;letter-spacing:.18em;font-weight:950}
.v31-internal-footer{border-top:1px solid #424938;margin:34px 0 12px;padding-top:20px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#d7fb37;font-size:10px;letter-spacing:.14em;font-weight:850}
.v31-internal-footer span{color:#929d87;font-size:9px;letter-spacing:.1em}
/* Heros internos: mesmo DNA da vitrine pública, sempre com imagem à direita */
.v31-dashhero{display:grid;grid-template-columns:minmax(0,1.07fr) minmax(250px,.93fr);margin-bottom:32px;min-height:285px;background:#1d2119;border:1px solid #49533b;overflow:hidden}
.v31-dashhero-copy{padding:clamp(24px,3vw,43px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.v31-dashhero-copy h2{font-size:clamp(2.35rem,4.8vw,5rem);font-weight:1000;line-height:.93;letter-spacing:-.06em;margin:17px 0;max-width:700px}
.v31-dashhero-copy h2 em{font-style:normal;color:#d7fb37}
.v31-dashhero-copy p{font-size:13px;max-width:390px;line-height:1.6;color:#c8d1b8;margin-bottom:23px}
.v31-dashhero-image{position:relative;min-height:265px;background:#303723}
.v31-dashhero-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:saturate(.8) contrast(1.1)}
.v31-dashhero-image:after{content:'PERSONAL PRO  /  PULSE';position:absolute;bottom:15px;right:16px;font-size:10px;color:#e4fba0;letter-spacing:.17em;font-weight:950}
/* Login, primeiro acesso e painéis coesos com a referência */
.welcome,.onboard,.welcome-grid{color:var(--ink)}
.welcome .brand{color:#f9fbef;font-size:20px}.welcome .brand strong{color:#d7fb37}
.welcome-hero h1,.onboard-data h1{font-size:clamp(3rem,6vw,6rem);font-weight:1000;line-height:.98;letter-spacing:-.062em;text-transform:uppercase}
.welcome-hero{max-width:780px}.welcome-card{background:#1d211b;border-top:2px solid #d7fb37}
.onboard-video{border-radius:2px}
.stepdots span{border-radius:2px}.stepdots span.on{background:#d7fb37}
.modal{background:#20271c;border-color:#677454;border-radius:4px}
.series-row{background:#283023;border-radius:2px}.series-row.done{background:#354728}
.series-row label{color:#e6efd4}
/* Editor da vitrine: campos e posições travados pelo template */
.v31-store-link{border-top:3px solid #d7fb37;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.v31-store-link h2{font-size:clamp(26px,4vw,39px);text-transform:uppercase;letter-spacing:-.05em}
.v31-store-link .actions{justify-content:flex-end;flex-direction:column;align-items:stretch}
.v31-editor-section{margin-top:12px;border-color:#49523c;border-radius:3px;padding:27px}
.v31-editor-heading{display:flex;align-items:start;gap:19px;padding-bottom:15px;border-bottom:1px solid #424b38;margin-bottom:21px}
.v31-editor-heading>span{display:grid;place-items:center;background:#d7fb37;color:#121909;font-size:14px;font-weight:1000;min-width:46px;height:46px}
.v31-editor-heading h2{font-size:23px;text-transform:uppercase;letter-spacing:-.03em;margin-bottom:6px}
.v31-editor-heading p{font-size:13px;max-width:560px}
.v31-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.v31-form-grid .v31-wide{grid-column:span 2}
.v31-upload-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.v31-media-input{border:1px solid #46533b;background:#242b1e;padding:13px;display:grid;grid-template-columns:95px minmax(0,1fr);gap:13px;align-items:start}
.v31-media-input b{font-size:13px;text-transform:uppercase;line-height:1.35}
.v31-media-input p{font-size:12px;margin:5px 0 12px}
.v31-media-input .field{font-size:11px}
.v31-media-input input{min-width:0;padding:8px 6px;font-size:11px}
.v31-media-preview{width:95px;height:115px;display:flex;align-items:center;justify-content:center;background:#393f2c;color:#d7fb37;font-size:42px;overflow:hidden}
.v31-media-preview img{width:100%;height:100%;object-fit:cover}
.v31-media-input .btn{margin-top:10px}
.v31-store-save{padding:24px 26px;background:#303a24;border:1px solid #839a45;display:flex;align-items:center;justify-content:space-between;gap:20px}
.v31-store-save b{font-size:20px;letter-spacing:-.025em}
.v31-store-save p{font-size:12px}
/* Vitrine: imagens configuráveis mas coordenadas e tamanho fixos */
.v30-sale{--v30-lime:#d7fb37;background:#11120e}
.v30-site-hero,.v30-site-benefits,.v30-site-focus,.v30-site-pricing,.v30-site-steps,.v30-site-pro{position:relative}
.v30-focus-visual img{display:block;width:calc(100% + 38px);height:195px;object-fit:cover;margin:0 -19px}
.v30-focus-card{min-width:0}
.v31-pro-photo{overflow:hidden}.v31-pro-photo img{width:100%;height:100%;object-fit:cover}
.v30-hero-picture img{width:100%;height:100%;object-fit:cover}
@media(max-width:1100px){.v31-shell{grid-template-columns:199px minmax(0,1fr)}.v31-sidebar{padding:20px 10px}.v31-sidebar .nav button{font-size:12px;padding:12px 9px}.v31-upload-list{grid-template-columns:1fr}.v31-dashhero-copy h2{font-size:clamp(2.2rem,4.6vw,4rem)}}
@media(max-width:780px){
 .v31-shell{display:block}.v31-sidebar{position:relative;width:100%;height:auto;border-right:0;border-bottom:1px solid #4a543b;padding:14px 14px 11px;gap:10px}
 .v31-sidebar-sub,.v31-sidebar .sidefoot{display:none}.v31-sidebar .nav{flex-direction:row;overflow-x:auto;gap:5px;scrollbar-width:none}
 .v31-sidebar .nav button{font-size:12px;padding:9px 11px;flex-shrink:0;border:1px solid #4a503e}
 .v31-sidebar .nav button span{display:none}.v31-sidebar .nav button.active{border:1px solid #d7fb37}
 .v31-content{padding:16px 13px 27px}.v31-topbar{margin-bottom:17px}
 .v31-dashhero{grid-template-columns:1fr;min-height:0}.v31-dashhero-copy{padding:23px}.v31-dashhero-copy h2{font-size:clamp(2.6rem,9vw,4.8rem)}.v31-dashhero-image{height:230px;min-height:230px}
 .v31-form-grid{grid-template-columns:1fr}.v31-form-grid .v31-wide{grid-column:span 1}
 .v31-store-link{grid-template-columns:1fr}.v31-store-link .actions{align-items:stretch}
 .v31-store-save{display:block;padding:19px}.v31-store-save button{width:100%;margin-top:15px}
 .v30-focus-visual img{height:134px;width:calc(100% + 24px);margin:0 -12px}
 .v31-upload-list{grid-template-columns:1fr}
}
@media(max-width:490px){.v31-media-input{grid-template-columns:76px 1fr;gap:10px}.v31-media-preview{width:76px;height:94px}.v31-editor-section{padding:17px}.v31-content{padding:15px 11px 25px}.v31-dashhero-image{min-height:180px;height:180px}.v31-dashhero-copy h2{font-size:2.65rem}.section-title h1{font-size:2.45rem}.v31-topbar .user>span:last-child{display:none}}
