:root{--bg:#171b1f;--panel:#20282f;--panel2:#26323b;--border:#303c45;--text:#f0f3f5;--muted:#8d99a2;--blue:#46aaf4;--green:#6fd29a;--danger:#ef716b}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}a{text-decoration:none;color:inherit}button,input{font:inherit}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;border:0;border-radius:5px;padding:12px 15px;cursor:pointer;font-size:13px;transition:.18s}.primary-button{background:var(--blue);color:#08151e;font-weight:700}.primary-button:hover{background:#74c3fa}.landing-page{display:grid;place-items:center;min-height:100vh}.landing-wrap{width:min(100% - 40px,760px);min-height:520px;display:flex;flex-direction:column;justify-content:space-between;padding:34px 0}.landing-mark{font-size:15px;font-weight:800;letter-spacing:.12em}.landing-mark span{color:var(--muted);font-weight:400}.landing-content{margin:0 auto 50px;width:min(100%,540px)}.landing-kicker{font-size:11px;color:var(--blue);letter-spacing:.15em;font-weight:700;margin-bottom:18px}.landing-content h1{font-size:clamp(38px,6vw,64px);line-height:1.02;letter-spacing:-.055em;margin:0 0 18px;font-weight:700}.landing-content h1 span{color:var(--muted);font-weight:400}.landing-content p{font-size:15px;line-height:1.6;color:var(--muted);max-width:340px;margin:0 0 27px}.landing-content .button{width:210px}.landing-content b{font-size:18px;font-weight:400}.auth-page{min-height:100vh;display:grid;place-items:center}.auth-wrap{width:min(calc(100% - 36px),400px);padding:30px 0}.auth-brand{font-size:15px;font-weight:800;letter-spacing:.12em;text-align:center;margin-bottom:26px}.auth-brand span{color:var(--muted);font-weight:400}.auth-card{background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:27px 28px}.auth-card h1{font-size:27px;line-height:1.08;letter-spacing:-.04em;margin:0 0 9px}.auth-card h1 span{color:var(--muted);font-weight:400}.auth-intro{font-size:13px;color:var(--muted);margin:0 0 22px}.auth-card form{display:flex;flex-direction:column;gap:14px}label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:11px}input{background:#171d22;border:1px solid var(--border);border-radius:4px;padding:11px 12px;color:var(--text);font-size:13px;outline:0}input:focus{border-color:var(--blue)}.auth-card .button{width:100%;margin-top:5px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-bottom{text-align:center;color:var(--muted);font-size:12px;margin:19px 0 0}.form-bottom a{color:var(--blue)}.back-link{display:block;text-align:center;color:var(--muted);font-size:12px;margin-top:17px}.form-message{padding:10px 12px;border-radius:4px;font-size:12px;margin-bottom:14px}.error{background:#3b2528;color:#ffaaa4}.hidden{display:none}.dashboard-layout{min-height:100vh;display:flex}.sidebar{width:240px;background:#15191d;border-right:1px solid var(--border);padding:20px 13px;transition:width .18s;flex-shrink:0}.sidebar.closed{width:63px}.sidebar.closed .brand-text,.sidebar.closed .nav-label,.sidebar.closed .category,.sidebar.closed .soon{display:none}.sidebar.closed .side-top{justify-content:center}.sidebar.closed .side-item{justify-content:center}.side-top{height:33px;display:flex;align-items:center;justify-content:space-between;padding:0 9px;margin-bottom:25px}.brand-text{font-size:14px;font-weight:800;letter-spacing:.12em}.brand-text span{color:var(--muted);font-weight:400}.menu-toggle{border:0;background:transparent;color:var(--muted);font-size:22px;cursor:pointer;padding:2px 5px}.category{font-size:9px;letter-spacing:.14em;color:#65727b;padding:0 10px;margin:21px 0 7px}.side-item{min-height:34px;display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:4px;color:#aab4ba;font-size:12px;position:relative}.side-item:hover,.side-item.active{background:var(--panel);color:var(--text)}.side-item.active{color:var(--blue)}.side-icon{width:17px;text-align:center;color:var(--muted);font-size:13px}.soon{margin-left:auto;font-size:8px;color:#6e7b83;border:1px solid #3a474e;border-radius:3px;padding:2px 4px;white-space:nowrap}.main-area{flex:1;min-width:0}.dash-header{height:67px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 34px}.dash-header small{color:var(--muted);font-size:12px}.user-chip{display:flex;align-items:center;gap:10px;font-size:12px}.avatar{width:29px;height:29px;border-radius:50%;background:#35434c;display:grid;place-items:center;color:var(--blue);font-size:11px;font-weight:700}.dash-content{width:min(100% - 68px,960px);margin:0 auto;padding:38px 0}.dash-content h1{font-size:30px;letter-spacing:-.04em;margin:0 0 5px}.dash-content h1 span{color:var(--muted);font-weight:400}.dash-subtitle{color:var(--muted);font-size:13px;margin:0 0 30px}.overview-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:13px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:20px}.panel-title{font-size:11px;color:var(--muted);margin:0 0 23px}.welcome-panel{min-height:205px}.welcome-panel h2{font-size:25px;line-height:1.08;margin:0 0 12px;letter-spacing:-.04em}.welcome-panel p{font-size:13px;color:var(--muted);max-width:370px;margin:0}.balance-panel .balance-value{font-size:32px;margin:35px 0 5px}.balance-panel small{color:var(--muted);font-size:11px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:13px}.quick-card{min-height:115px}.quick-card strong{display:block;font-size:17px;margin:22px 0 4px}.quick-card span{font-size:11px;color:var(--muted)}.page-title{font-size:25px!important;margin-bottom:4px!important}.balance-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.balance-card{background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:17px}.balance-card label{font-size:10px}.balance-card strong{font-size:22px;display:block;margin-top:19px}.empty-note{color:var(--muted);font-size:12px;margin-top:23px}.logout{margin:22px 10px 0;color:#d88782;font-size:11px;display:block}.logout:hover{color:var(--danger)}@media(max-width:800px){.dash-header{padding:0 18px}.dash-content{width:min(100% - 36px,960px)}.overview-grid,.quick-grid,.balance-cards{grid-template-columns:1fr 1fr}}@media(max-width:520px){.form-row{grid-template-columns:1fr}.auth-card{padding:23px 20px}.landing-wrap{min-height:470px}.landing-content h1{font-size:43px}.dash-content{padding-top:27px}.overview-grid,.quick-grid,.balance-cards{grid-template-columns:1fr}.dash-header small{display:none}.user-chip{margin-left:auto}}

.public-header{position:fixed;top:0;left:0;right:0;height:72px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);background:rgba(23,27,31,.94);z-index:5}.logo-image{display:flex;align-items:center;height:42px;width:132px;overflow:hidden}.logo-image img{width:132px;height:auto;display:block}.header-link{font-size:12px;color:var(--muted);padding:8px 12px;border:1px solid var(--border);border-radius:4px}.header-link:hover{color:var(--text);border-color:var(--blue)}.landing-page{display:block;padding-top:72px}.landing-page .landing-wrap{min-height:calc(100vh - 72px);padding:0 20px;display:grid;place-items:center}.landing-page .landing-content{margin:0}.auth-page{display:block;padding-top:72px}.auth-page .auth-wrap{margin:0 auto;padding-top:74px}.loading-page{display:block;padding-top:72px}.loading-box{min-height:calc(100vh - 72px);display:grid;place-content:center;text-align:center}.loading-box h1{font-size:20px;letter-spacing:-.03em;margin:24px 0 5px}.loading-box p{color:var(--muted);font-size:12px;margin:0}.loading-lines{height:34px;display:flex;align-items:center;justify-content:center;gap:5px}.loading-lines i{display:block;width:4px;height:14px;border-radius:3px;background:var(--blue);animation:heartbeat 1s infinite ease-in-out}.loading-lines i:nth-child(2){animation-delay:.12s}.loading-lines i:nth-child(3){animation-delay:.24s}.loading-lines i:nth-child(4){animation-delay:.36s}.loading-lines i:nth-child(5){animation-delay:.48s}@keyframes heartbeat{0%,100%{height:10px;opacity:.35}50%{height:32px;opacity:1}}.side-top .logo-image{width:112px;height:30px}.side-top .logo-image img{width:112px}.sidebar.closed .side-top .logo-image{display:none}@media(max-width:520px){.public-header{padding:0 18px}.auth-page .auth-wrap{padding-top:48px}.register-card{padding-left:17px;padding-right:17px}.landing-page .landing-content h1{font-size:41px}}

/* V5: drawer reabrível e formulário sem overflow */
.sidebar{position:relative;z-index:20;overflow-x:hidden}.side-top,.menu-toggle{position:relative;z-index:30}.menu-toggle{min-width:30px;min-height:30px;display:grid;place-items:center;pointer-events:auto}.sidebar.closed{width:62px}.sidebar.closed .side-top{padding-left:7px;padding-right:7px}.auth-wrap,.auth-card,.auth-card form,.form-row,label,input{min-width:0;max-width:100%}.auth-card{width:100%;overflow:hidden}.auth-card input{width:100%;display:block}.form-row{width:100%}@media(max-width:700px){.auth-page .auth-wrap{width:min(calc(100% - 28px),400px)}.auth-card{padding:22px 18px}.form-row{grid-template-columns:1fr;gap:14px}}

/* V6: cadastro em etapas */
.register-flow-wrap{width:min(calc(100% - 28px),480px)}.register-flow{padding:25px 26px 20px}.stepper{display:flex;align-items:center;width:100%;margin:0 0 28px}.step{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#2b353d;color:#82909a;font-size:11px;font-weight:700}.step.active{background:var(--blue);color:#07141e}.stepper i{height:1px;background:var(--border);flex:1;margin:0 8px}.form-step{display:none}.form-step.active{display:flex;flex-direction:column;gap:14px}.form-step h1{font-size:29px;margin:0 0 -4px;letter-spacing:-.045em}.step-kicker{font-size:10px;letter-spacing:.14em;color:var(--blue);font-weight:700;margin:0}.form-step .auth-intro{margin:0 0 6px}.secondary-button{background:#2b353d;color:var(--text)}.secondary-button:hover{background:#35434d}.step-actions{display:flex;gap:10px}.step-actions .button{flex:1}.review-box{display:grid;gap:8px;background:#171d22;border:1px solid var(--border);border-radius:5px;padding:12px}.review-box div{display:flex;justify-content:space-between;gap:15px;align-items:center}.review-box small{font-size:9px;color:#72808a}.review-box strong{font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.turnstile-slot{min-height:65px;display:flex;align-items:center;justify-content:center;overflow:hidden}.terms-check{display:grid;grid-template-columns:18px 1fr;gap:9px;align-items:start;line-height:1.45}.terms-check input{width:16px;height:16px;margin:1px 0}.terms-check span{font-size:11px}.terms-check a{color:var(--blue)}@media(max-width:520px){.register-flow-wrap{width:calc(100% - 24px)}.register-flow{padding:20px 15px 17px}.form-step h1{font-size:26px}.turnstile-slot{justify-content:flex-start}.step-actions{flex-direction:column-reverse}.step-actions .button{width:100%}}

/* V7: etapa final refinada e documentos */
.register-flow{padding-bottom:24px}.turnstile-slot{margin:10px 0 16px;min-height:75px;padding:8px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.terms-list{display:flex;flex-direction:column;gap:10px;margin:0 0 18px}.terms-check{padding:0;display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;align-items:start}.terms-check span{min-width:0}.step-actions{margin-top:4px;align-items:stretch}.step-actions .button{min-height:40px;justify-content:center;padding:10px 13px}.step-actions .primary-button{flex:1.1}.step-actions .secondary-button{flex:.65}.document-page{min-height:100vh;padding-top:72px}.document-box{width:min(calc(100% - 36px),520px);margin:0 auto;padding-top:105px}.document-box h1{font-size:32px;margin:0 0 12px}.document-box>p:last-child{color:var(--muted);font-size:14px}@media(max-width:520px){.register-flow{padding-left:15px;padding-right:15px}.turnstile-slot{justify-content:flex-start;margin-top:8px;margin-bottom:14px}.terms-list{gap:9px}.step-actions{flex-direction:row}.step-actions .button{font-size:12px;gap:8px}.document-box{padding-top:80px}}

/* V8: citação quadrada e telefone */
.final-quote{margin:0 0 16px;padding:13px 15px;border:1px solid var(--blue);border-left:3px solid var(--blue);border-radius:0;background:#18242c;color:#b7dfff;font-size:12px;line-height:1.55}.review-box{border-radius:0}.turnstile-slot{border-radius:0;margin-top:14px}.availability-message{font-size:11px;line-height:1.4;margin:-5px 0 1px;color:var(--danger)}.availability-message.ok{color:var(--green)}

/* V9: indicadores de validação */
label{position:relative}.field-status{position:absolute;right:11px;bottom:10px;width:18px;height:18px;display:grid;place-items:center;font-size:17px;font-weight:700;line-height:1;pointer-events:none}.field-status.ok{color:var(--green)}.field-status.bad{color:var(--danger)}.field-status.wait{color:var(--blue);animation:statusPulse .8s infinite alternate}.final-quote{position:relative;overflow:hidden;isolation:isolate}.final-quote::after{content:"";position:absolute;width:180px;height:180px;right:-70px;top:-95px;border:1px solid rgba(70,170,244,.3);box-shadow:0 0 35px rgba(70,170,244,.18);transform:rotate(24deg);z-index:-1;animation:quoteGlow 4s ease-in-out infinite}.terms-list{margin-top:0}.terms-check .field-status{display:none}@keyframes statusPulse{from{opacity:.35}to{opacity:1}}@keyframes quoteGlow{0%,100%{transform:rotate(24deg) translate(0,0);opacity:.55}50%{transform:rotate(24deg) translate(-12px,8px);opacity:1}}

/* V10: iconografia própria */
.side-icon{display:grid;place-items:center}.side-icon img{width:18px;height:18px;object-fit:contain;display:block;filter:brightness(1.18)}.sidebar.closed .side-icon img{width:19px;height:19px}.field-icon{position:absolute;left:11px;bottom:10px;width:16px;height:16px;object-fit:contain;opacity:.7;pointer-events:none}.auth-card label input{padding-left:35px}.auth-card .terms-check input{padding-left:0}.terms-check .field-icon{display:none}.logo-image img{object-fit:contain}

/* V11: citação dinâmica contida */
.final-quote{position:relative;isolation:isolate;overflow:hidden;border-radius:0;background:#111c24;border:1px solid rgba(77,188,255,.75);box-shadow:inset 0 0 24px rgba(31,148,219,.12),0 0 18px rgba(22,128,196,.08);padding:16px 38px 16px 16px}.final-quote::before{content:"";position:absolute;inset:-80%;z-index:-1;background:conic-gradient(from 0deg,transparent 0deg,rgba(52,184,255,.05) 45deg,rgba(77,217,255,.42) 100deg,transparent 150deg,rgba(64,119,255,.32) 220deg,transparent 285deg);filter:blur(13px);animation:quoteSweep 5s linear infinite}.final-quote::after{content:"”";position:absolute;right:10px;top:-4px;color:rgba(128,216,255,.65);font-family:Georgia,serif;font-size:54px;line-height:1;z-index:0;animation:quoteMark 2.8s ease-in-out infinite}.final-quote{animation:quoteBorder 3.5s ease-in-out infinite}.field-status.wait{display:none}@keyframes quoteSweep{to{transform:rotate(360deg) scale(1.1)}}@keyframes quoteMark{0%,100%{transform:translateY(0);opacity:.48}50%{transform:translateY(5px);opacity:.95}}@keyframes quoteBorder{0%,100%{border-color:rgba(77,188,255,.55)}50%{border-color:rgba(110,227,255,1);box-shadow:inset 0 0 32px rgba(31,148,219,.23),0 0 24px rgba(22,154,220,.18)}}

/* V12: citação compacta com luz deslizante */
.final-quote{margin:0 0 13px;padding:11px 35px 11px 13px;min-height:0;font-size:11px;line-height:1.45;text-align:left;background:#111b22;border:1px solid rgba(77,188,255,.6);box-shadow:inset 0 0 18px rgba(31,148,219,.12);animation:none}
.final-quote::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(108deg,transparent 0%,rgba(76,197,255,.03) 25%,rgba(109,224,255,.34) 47%,rgba(49,126,255,.12) 58%,transparent 82%);background-size:220% 100%;filter:blur(7px);animation:quoteSlide 11s linear infinite}
.final-quote::after{content:"”";position:absolute;right:8px;top:auto;bottom:-7px;color:rgba(128,216,255,.78);font-family:Georgia,serif;font-size:39px;line-height:1;z-index:1;animation:quoteMark 4s ease-in-out infinite}
@keyframes quoteSlide{0%{background-position:120% 0}100%{background-position:-120% 0}}
@keyframes quoteMark{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(-2px);opacity:.95}}

/* V13: menu alinhado e ondas contínuas */
.sidebar:not(.closed) .side-item{justify-content:flex-start;text-align:left}.sidebar:not(.closed) .side-icon{flex:0 0 19px;width:19px;text-align:left}.sidebar:not(.closed) .nav-label{display:block;flex:1;text-align:left}.sidebar:not(.closed) .soon{display:inline-block;margin-left:auto}.final-quote{margin:0 0 12px;padding:10px 33px 10px 12px;font-size:10.5px;line-height:1.42;min-height:0}.final-quote::before{content:"";position:absolute;inset:-95% -40%;z-index:-1;background:repeating-radial-gradient(ellipse at 50% 50%,rgba(88,203,255,.24) 0 1px,transparent 2px 17px),repeating-radial-gradient(ellipse at 50% 50%,transparent 0 7px,rgba(64,145,255,.13) 8px 9px,transparent 10px 25px);filter:blur(1px);opacity:.95;animation:topographicWaves 16s linear infinite}.final-quote::after{right:8px;bottom:-7px;top:auto;font-size:36px}.sidebar.closed .nav-label,.sidebar.closed .soon{display:none!important}@keyframes topographicWaves{0%{transform:translate(-4%,-2%) rotate(-4deg) scale(.95)}50%{transform:translate(4%,3%) rotate(2deg) scale(1.08)}100%{transform:translate(-4%,-2%) rotate(-4deg) scale(.95)}}

.sidebar:not(.closed) .category{display:block}

/* V14: vitrine de planos */
.plans-page-content{max-width:1280px}.plans-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.plans-heading h1{font-size:32px;letter-spacing:-.045em;margin:5px 0 7px}.plans-heading .dash-subtitle{margin:0}.plans-legend{display:flex;gap:14px;align-items:center;color:var(--muted);font-size:11px;white-space:nowrap}.plans-legend span{display:flex;align-items:center;gap:5px}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.legend-dot.subscription{background:var(--blue)}.legend-dot.gift{background:#f5a66e}.plans-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.plan-card{position:relative;display:flex;flex-direction:column;min-width:0;padding:18px 16px 15px;background:linear-gradient(145deg,#1c2730,#141d23);border:1px solid var(--border);border-radius:7px;overflow:hidden;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.plan-card:hover{transform:translateY(-3px);border-color:rgba(106,205,255,.65);box-shadow:0 12px 28px rgba(0,0,0,.18)}.plan-card.recommended{border-color:rgba(91,202,255,.9);box-shadow:inset 0 0 0 1px rgba(91,202,255,.18),0 0 22px rgba(37,153,218,.13)}.plan-badge{position:absolute;top:0;right:0;padding:5px 8px;background:var(--blue);color:#07131c;font-size:8px;font-weight:800;letter-spacing:.08em}.plan-card-top{display:flex;align-items:center;gap:9px;margin-bottom:10px}.plan-icon{width:25px;height:25px;object-fit:contain}.plan-card h2{font-size:18px;margin:0;letter-spacing:-.03em}.plan-description{min-height:52px;margin:0 0 14px;color:var(--muted);font-size:11px;line-height:1.45}.plan-prices{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:14px}.price-option{padding:9px 8px;border:1px solid var(--border);border-radius:4px;min-width:0}.price-option small{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:8px;letter-spacing:.06em}.price-option small img{width:12px;height:12px;object-fit:contain}.price-option strong{display:block;margin-top:4px;font-size:15px;color:var(--text);white-space:nowrap}.price-option strong em{font-size:9px;color:var(--muted);font-style:normal;font-weight:400}.gift-price{border-color:rgba(245,166,110,.38);background:rgba(245,166,110,.045)}.gift-price strong{color:#ffc18e}.plan-features{display:grid;gap:7px;margin:0 0 17px;padding-top:12px;border-top:1px solid var(--border);color:#b7c1c6;font-size:10px}.plan-features span{display:flex;align-items:center;gap:7px;min-width:0}.plan-features img{width:14px;height:14px;object-fit:contain;flex:0 0 14px}.plan-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:auto}.plan-actions .button{min-width:0;padding:9px 5px;font-size:10px}.plans-page-content .form-message{margin-bottom:14px}@media(max-width:1050px){.plans-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.plans-heading{display:block;margin-bottom:18px}.plans-legend{margin-top:14px}.plans-heading h1{font-size:26px}.plans-grid{grid-template-columns:1fr}.plan-description{min-height:0}}

/* V15: ações com ícones e citação sem riscos fixos */
.plan-actions .plan-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;text-align:center}.plan-actions .plan-action img{width:15px;height:15px;object-fit:contain;flex:0 0 15px}.final-quote{border:0!important;box-shadow:none!important;background:rgba(17,27,34,.78);outline:0}.final-quote::before{background:repeating-radial-gradient(ellipse at 50% 50%,rgba(88,203,255,.25) 0 1px,transparent 2px 19px),radial-gradient(ellipse at 20% 20%,rgba(50,150,255,.2),transparent 45%);filter:blur(1.5px);opacity:.9;animation:topographicWaves 18s ease-in-out infinite}.final-quote::after{border:0!important;box-shadow:none!important}

/* ============================================================================
   V16 — menu lateral fixo, cabeçalho com o botão, carteira e moderação
   ========================================================================== */

/* --- estrutura: o menu não rola junto com a página ------------------------ */
.dashboard-layout{display:block;min-height:100vh}
.sidebar{position:fixed;top:0;left:0;bottom:0;width:242px;height:100vh;display:flex;flex-direction:column;padding:14px 11px 16px;border-right:1px solid var(--border);background:#15191d;overflow-y:auto;overflow-x:hidden;z-index:60;transition:width .2s ease,transform .24s cubic-bezier(.2,.8,.2,1);overscroll-behavior:contain}
.sidebar::-webkit-scrollbar{width:6px}
.sidebar::-webkit-scrollbar-thumb{background:#2c363e;border-radius:3px}
.sidebar.closed{width:66px}
.side-nav{flex:1}
.main-area{margin-left:242px;min-width:0;transition:margin-left .2s ease}
body[data-sidebar="closed"] .main-area{margin-left:66px}

.side-top{height:44px;display:flex;align-items:center;justify-content:flex-start;padding:0 8px;margin-bottom:18px}
.side-top .logo-image{width:140px;height:40px;display:flex;align-items:center;overflow:visible}
.side-top .logo-image img{width:100%;height:100%;object-fit:contain;object-position:left center}
.sidebar.closed .side-top{justify-content:center;padding:0}
.sidebar.closed .side-top .logo-image{display:none}
.sidebar.closed .side-top::after{content:"M4S";font-size:11px;font-weight:800;letter-spacing:.1em;color:var(--blue)}

.side-item{gap:11px;margin-bottom:1px}
.sidebar.closed .side-item{justify-content:center;padding-left:0;padding-right:0}
.sidebar.closed .side-icon{flex:0 0 auto}
.category-espaco{height:6px}
.categoria-admin{color:#a58cff}
.side-item.active{background:var(--panel);box-shadow:inset 2px 0 0 var(--blue)}
.logout{display:flex;align-items:center;gap:11px;margin:14px 0 0;padding:9px 10px;border-radius:4px;border-top:1px solid var(--border);padding-top:14px}
.logout .side-icon img{width:17px;height:17px;opacity:.85}
.sidebar.closed .logout{justify-content:center}
.sidebar.closed .logout .nav-label{display:none}

/* --- cabeçalho fixo, com o botão do menu dentro dele ---------------------- */
.dash-header{position:sticky;top:0;z-index:45;height:64px;padding:0 26px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:rgba(21,25,29,.92);backdrop-filter:saturate(140%) blur(8px);border-bottom:1px solid var(--border)}
.header-left{display:flex;align-items:center;gap:14px;min-width:0}
.header-trail{color:var(--muted);font-size:11px;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.menu-toggle{flex:0 0 auto;width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:5px;background:transparent;color:var(--muted);cursor:pointer;padding:0;transition:.16s}
.menu-toggle:hover{color:var(--blue);border-color:var(--blue);background:#1b262e}
.menu-toggle:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.menu-bars{display:grid;gap:4px;width:16px}
.menu-bars i{display:block;height:2px;border-radius:2px;background:currentColor;transition:width .18s ease}
.menu-bars i:nth-child(1),.menu-bars i:nth-child(3){width:16px}
.menu-bars i:nth-child(2){width:16px;justify-self:start}
.menu-toggle[aria-expanded="false"] .menu-bars i:nth-child(2){width:9px}
.chip-admin{font-size:8px;font-weight:800;letter-spacing:.09em;color:#c3b0ff;border:1px solid rgba(140,107,255,.55);background:rgba(140,107,255,.12);border-radius:3px;padding:3px 5px}

/* --- painel: cartões --------------------------------------------------- */
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.panel-head .panel-title{margin:0}
.link-button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--muted);font-size:11px;cursor:pointer;padding:4px 2px}
.link-button:hover{color:var(--blue)}
.link-button img{width:14px;height:14px;object-fit:contain}
.panel-cta{width:100%;justify-content:center;gap:8px;margin-top:16px}
.panel-cta img{width:15px;height:15px;object-fit:contain}
.balance-panel{display:flex;flex-direction:column}
.balance-panel .balance-value{margin:24px 0 4px}
.plan-chip{display:flex;align-items:center;gap:11px;margin-top:20px;padding:11px 13px;border:1px solid var(--border);border-radius:5px;background:#1a232a}
.plan-chip img{width:22px;height:22px;object-fit:contain}
.plan-chip small{display:block;font-size:8px;letter-spacing:.12em;color:var(--muted)}
.plan-chip strong{font-size:14px;font-weight:600}
.plan-chip code{margin-left:auto;font-size:9px;color:#7d8a93;letter-spacing:.04em;white-space:nowrap}
.quick-card{display:flex;flex-direction:column;justify-content:space-between}

/* --- carteira ------------------------------------------------------------ */
.balance-card.destaque{border-color:rgba(70,170,244,.5);background:linear-gradient(160deg,#1d2831,#182027)}
.balance-card.destaque strong{color:var(--blue)}
.deposito-panel{margin-top:13px}
.aviso-simulacao{font-size:9px;letter-spacing:.08em;color:#ffc18e;border:1px solid rgba(245,166,110,.45);background:rgba(245,166,110,.1);border-radius:3px;padding:3px 6px;text-transform:uppercase}
.metodo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:20px}
.metodo-card{display:flex;align-items:center;gap:11px;padding:13px;border:1px solid var(--border);border-radius:6px;background:#171d22;cursor:pointer;text-align:left;color:var(--text);transition:.16s}
.metodo-card:hover{border-color:rgba(106,205,255,.6)}
.metodo-card.ativo{border-color:var(--blue);background:#182530;box-shadow:inset 0 0 0 1px rgba(70,170,244,.25)}
.metodo-card img{width:30px;height:30px;object-fit:contain;flex:0 0 30px}
.metodo-card strong{display:block;font-size:14px;font-weight:600}
.metodo-card span{font-size:10px;color:var(--muted)}
.deposito-form{display:grid;gap:12px}
.valor-label input{width:100%;font-size:19px;padding:13px 12px}
.valores-rapidos{display:flex;flex-wrap:wrap;gap:7px}
.valor-rapido{border:1px solid var(--border);background:#171d22;color:#aeb9c0;border-radius:4px;padding:7px 13px;font-size:11px;cursor:pointer;transition:.15s}
.valor-rapido:hover{border-color:var(--blue);color:var(--text)}
.metodo-limites{margin:0;font-size:11px;color:var(--muted)}
.deposito-form .button{width:210px;justify-content:center;gap:8px}
.deposito-form .button img{width:15px;height:15px;object-fit:contain}

.cobranca{margin-top:22px;padding-top:20px;border-top:1px solid var(--border)}
.cobranca-topo{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}
.cobranca-topo small{display:block;font-size:9px;letter-spacing:.11em;color:var(--muted);margin-bottom:5px}
.cobranca-topo strong{font-size:23px}
.situacao{font-size:9px;letter-spacing:.09em;text-transform:uppercase;border-radius:3px;padding:5px 8px;border:1px solid var(--border);color:var(--muted)}
.situacao[data-estado="pendente"]{color:#ffd27d;border-color:rgba(244,170,20,.5);background:rgba(244,170,20,.1)}
.situacao[data-estado="aprovado"]{color:#8fe89b;border-color:rgba(81,222,66,.5);background:rgba(81,222,66,.1)}
.situacao[data-estado="recusado"]{color:#ff9d9d;border-color:rgba(237,68,86,.5);background:rgba(237,68,86,.1)}
.cobranca-corpo{display:grid;grid-template-columns:190px minmax(0,1fr);gap:20px;align-items:start}
.cobranca-qr{width:190px;height:190px;display:grid;place-items:center;background:#fff;border-radius:6px;padding:9px}
.cobranca-qr svg,.cobranca-qr img{width:100%;height:100%;display:block}
.cobranca-dados{display:grid;gap:11px;min-width:0}
.copiavel{gap:7px}
.copiavel textarea{width:100%;background:#171d22;border:1px solid var(--border);border-radius:4px;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.5;padding:11px;resize:vertical;word-break:break-all;outline:0}
.copiavel textarea:focus{border-color:var(--blue)}
.cobranca-dados .button{width:190px;justify-content:center;gap:8px}
.cobranca-dados .button img{width:15px;height:15px;object-fit:contain}
.cobranca-nota{margin:0;font-size:11px;line-height:1.5;color:var(--muted)}

/* --- tabelas (carteira e logs) ------------------------------------------ */
.tabela-wrap{overflow-x:auto;margin:0 -4px}
.tabela{width:100%;border-collapse:collapse;font-size:11.5px}
.tabela th{text-align:left;font-size:9px;letter-spacing:.11em;color:var(--muted);font-weight:600;padding:0 10px 10px;border-bottom:1px solid var(--border);white-space:nowrap}
.tabela td{padding:11px 10px;border-bottom:1px solid #262f37;color:#c2ccd2;vertical-align:middle}
.tabela tr:last-child td{border-bottom:0}
.tabela .direita{text-align:right}
.tabela .empty-note{margin:0;padding:26px 10px;text-align:center}
.valor-positivo{color:var(--green);font-weight:600}
.valor-negativo{color:var(--danger);font-weight:600}

/* --- moderação: logs ----------------------------------------------------- */
.logs-resumo{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.balance-card.ok strong{color:var(--green)}
.balance-card.ruim strong{color:var(--danger)}
.logs-panel{margin-top:13px}
.logs-barra{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:18px}
.abas{display:flex;gap:5px;background:#171d22;border:1px solid var(--border);border-radius:5px;padding:4px}
.aba{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--muted);font-size:11px;padding:7px 12px;border-radius:4px;cursor:pointer;transition:.15s}
.aba img{width:14px;height:14px;object-fit:contain;opacity:.75}
.aba:hover{color:var(--text)}
.aba.active{background:var(--panel);color:var(--text)}
.aba.active img{opacity:1}
.logs-acoes{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.logs-acoes input[type="search"]{width:230px;padding:8px 11px;font-size:11px}
.auto-refresh{flex-direction:row;align-items:center;gap:6px;font-size:11px;color:var(--muted);cursor:pointer}
.auto-refresh input{width:14px;height:14px;margin:0}
.tabela-logs td{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}
.tabela-logs .rota{color:var(--text);max-width:330px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.metodo-http{display:inline-block;min-width:46px;text-align:center;font-size:9px;font-weight:700;letter-spacing:.05em;border-radius:3px;padding:3px 5px;background:#26323b;color:#9fb0bb}
.metodo-http[data-m="POST"]{background:rgba(81,222,66,.14);color:#8fe89b}
.metodo-http[data-m="DELETE"]{background:rgba(237,68,86,.14);color:#ff9d9d}
.codigo-status{font-weight:700}
.codigo-status[data-faixa="ok"]{color:var(--green)}
.codigo-status[data-faixa="redir"]{color:var(--blue)}
.codigo-status[data-faixa="erro"]{color:var(--danger)}
.log-detalhe{display:block;margin-top:4px;font-size:10px;color:#8d99a2;white-space:normal}

/* --- gaveta em telas pequenas ------------------------------------------- */
.drawer-scrim{display:none;position:fixed;inset:0;z-index:55;background:rgba(3,8,12,.66);backdrop-filter:blur(2px)}
@media(max-width:980px){
  .sidebar{width:274px;transform:translateX(-102%);box-shadow:16px 0 40px rgba(0,0,0,.4)}
  .sidebar.closed{width:274px;transform:translateX(-102%)}
  body[data-sidebar="open"] .sidebar{transform:none}
  .main-area,body[data-sidebar="closed"] .main-area{margin-left:0}
  .sidebar .side-top .logo-image{display:flex}
  .sidebar.closed .side-top{justify-content:flex-start;padding:0 8px}
  .sidebar.closed .side-top::after{content:none}
  .sidebar.closed .side-item{justify-content:flex-start;padding-left:10px;padding-right:10px}
  .sidebar.closed .nav-label,.sidebar.closed .soon,.sidebar.closed .category{display:block}
  .sidebar.closed .logout{justify-content:flex-start}
  .sidebar.closed .logout .nav-label{display:block}
  body.drawer-open{overflow:hidden}
  body.drawer-open .drawer-scrim{display:block}
  .dash-header{padding:0 18px}
  .cobranca-corpo{grid-template-columns:1fr;justify-items:center}
  .cobranca-dados{width:100%}
}
@media(max-width:640px){
  .logs-resumo{grid-template-columns:1fr}
  .logs-barra{align-items:stretch}
  .abas{width:100%}
  .aba{flex:1;justify-content:center}
  .logs-acoes{width:100%}
  .logs-acoes input[type="search"]{flex:1;width:auto}
  .deposito-form .button,.cobranca-dados .button{width:100%}
  .dash-content{padding-top:24px}
  .header-trail{display:none}
  .cobranca-qr{width:100%;max-width:250px;height:auto;aspect-ratio:1}
}

/* --- logo: sem corte no cabeçalho público ------------------------------- */
.public-header .logo-image{height:44px;width:138px;overflow:visible}
.public-header .logo-image img{width:100%;height:100%;object-fit:contain;object-position:left center}

/* ============================================================================
   V17 — aba ativa discreta, menu do usuário, moedas, cupons e minha conta
   ========================================================================== */

/* O atributo hidden vem do stylesheet do navegador, então qualquer classe
   nossa com `display` o vencia e o elemento continuava na tela. */
[hidden]{display:none!important}

/* --- aba ativa: sem texto azul, sem barra azul ---------------------------
   O azul é a cor de ação (botões, links). Usar a mesma cor para marcar
   "onde você está" competia com os botões e poluía a coluna inteira. */
.side-item.active,
.sidebar .side-item.active{color:var(--text);background:#212a31;box-shadow:none;font-weight:500}
.side-item.active .side-icon img{opacity:1}
.side-item.active::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:15px;border-radius:0 2px 2px 0;background:#5d6a74}
.side-item:hover{background:#1d252b;color:var(--text)}
.sidebar.closed .side-item.active::before{height:20px}

/* --- menu suspenso do usuário ------------------------------------------- */
.user-menu{position:relative}
.user-chip{border:1px solid transparent;background:transparent;color:inherit;cursor:pointer;padding:5px 7px 5px 10px;border-radius:6px;transition:.15s}
.user-chip:hover{border-color:var(--border);background:#1d252b}
.user-chip[aria-expanded="true"]{border-color:var(--border);background:#1d252b}
.avatar{overflow:hidden;flex:0 0 29px}
.avatar img{width:100%;height:100%;object-fit:cover;display:block}
.chip-seta{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--muted);transition:transform .16s}
.user-chip[aria-expanded="true"] .chip-seta{transform:rotate(180deg)}
.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:212px;background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:6px;z-index:60;box-shadow:0 18px 40px rgba(0,0,0,.45);display:grid;gap:1px}
.dropdown-nome{font-size:9px;letter-spacing:.11em;color:var(--muted);padding:8px 10px 6px;border-bottom:1px solid var(--border);margin-bottom:5px;text-transform:uppercase}
.dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:5px;background:transparent;color:#c2ccd2;font-size:12px;text-align:left;cursor:pointer;transition:.14s}
.dropdown-item img{width:16px;height:16px;object-fit:contain}
.dropdown-item:hover{background:#1d252b;color:var(--text)}
.dropdown-item.indisponivel{color:#6e7b83;cursor:default}
.dropdown-item.indisponivel:hover{background:transparent}
.dropdown-item .soon{margin-left:auto}
.dropdown-item.sair{color:#d88782;border-top:1px solid var(--border);border-radius:0 0 5px 5px;margin-top:5px;padding-top:11px}
.dropdown-item.sair:hover{color:var(--danger)}

/* --- alternador de moeda ------------------------------------------------- */
.titulo-com-acao{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:22px}
.titulo-com-acao .dash-subtitle{margin-bottom:0}
.moeda-switch{display:flex;gap:3px;background:#171d22;border:1px solid var(--border);border-radius:6px;padding:3px}
.moeda-opcao{border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.03em;padding:7px 14px;border-radius:4px;cursor:pointer;transition:.15s}
.moeda-opcao:hover{color:var(--text)}
.moeda-opcao.active{background:var(--panel2);color:var(--text)}
.cotacao-nota{margin:0 0 16px;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:7px}
.cotacao-nota.vencida{color:#ffc18e}
.balance-card small{display:block;margin-top:6px;font-size:10.5px;color:var(--muted)}
.equivalente{margin:0;font-size:11.5px;color:var(--blue);min-height:16px}
.saldo-faixa{display:flex;align-items:center;gap:11px;flex-wrap:wrap;background:var(--panel);border:1px solid var(--border);border-radius:6px;padding:13px 16px;margin-bottom:13px}
.saldo-faixa img{width:20px;height:20px;object-fit:contain}
.saldo-faixa span{font-size:10px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}
.saldo-faixa strong{font-size:19px}
.saldo-faixa small{color:var(--muted);font-size:11px}
.saldo-faixa .link-button{margin-left:auto}
.aviso-gateway{font-size:9px;letter-spacing:.08em;color:#ffc18e;border:1px solid rgba(245,166,110,.45);background:rgba(245,166,110,.1);border-radius:3px;padding:3px 6px;text-transform:uppercase}
.cobranca-linha{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#171d22;border:1px solid var(--border);border-radius:5px;padding:10px 12px}
.cobranca-linha span{font-size:10px;letter-spacing:.09em;color:var(--muted);text-transform:uppercase}
.cobranca-linha code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;color:var(--text)}
.cobranca-expira{margin:0;font-size:11px;color:var(--muted)}
.situacao[data-estado="contestado"]{color:#ffc18e;border-color:rgba(245,166,110,.5);background:rgba(245,166,110,.1)}
.situacao[data-estado="estornado"],.situacao[data-estado="divergente"]{color:#ff9d9d;border-color:rgba(237,68,86,.5);background:rgba(237,68,86,.1)}

/* --- planos -------------------------------------------------------------- */
.plans-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:13px}
.plan-card{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:19px;display:flex;flex-direction:column;gap:13px}
.plan-card.atual{border-color:rgba(111,210,154,.55)}
.plan-card.recommended{border-color:rgba(70,170,244,.45)}
.plan-badge{position:absolute;top:-9px;right:14px;font-size:8px;font-weight:800;letter-spacing:.09em;background:var(--panel2);color:#c2ccd2;border:1px solid var(--border);border-radius:3px;padding:4px 7px}
.plan-badge.meu{background:rgba(111,210,154,.16);color:#8fe89b;border-color:rgba(111,210,154,.5)}
.plan-card-top{display:flex;align-items:center;gap:11px}
.plan-icon{width:32px;height:32px;object-fit:contain}
.plan-card h2{font-size:18px;margin:0;letter-spacing:-.02em}
.plan-description{font-size:12px;line-height:1.5;color:var(--muted);margin:0;flex:1}
.plan-prices{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.price-option{background:#171d22;border:1px solid var(--border);border-radius:5px;padding:11px}
.price-option small{display:block;font-size:8px;letter-spacing:.11em;color:var(--muted);margin-bottom:7px}
.price-option strong{font-size:16px;display:block;word-break:break-all}
.price-option em{font-size:10px;font-style:normal;color:var(--muted)}
.plan-features{display:grid;gap:7px}
.plan-features span{display:flex;align-items:center;gap:8px;font-size:11.5px;color:#aab4ba}
.plan-features img{width:14px;height:14px;object-fit:contain;flex:0 0 14px}
.plan-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.plan-actions .button{justify-content:center;gap:7px;padding:10px 8px;font-size:12px}
.plan-actions .button img{width:14px;height:14px;object-fit:contain}
.plan-actions .button:disabled{opacity:.5;cursor:not-allowed}
.plans-legend{display:flex;gap:16px;font-size:11px;color:var(--muted)}
.ok{background:#1e3327;color:#9fe6b8}

/* --- minha conta --------------------------------------------------------- */
.perfil-capa{position:relative;border:1px solid var(--border);border-radius:8px;overflow:hidden;margin-bottom:16px;background:var(--panel)}
.capa-fundo{height:186px;background:linear-gradient(135deg,#1d2831,#232f38 60%,#1a2229);background-size:cover;background-position:center;position:relative}
.capa-fundo video,.capa-fundo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.capa-acoes{position:absolute;top:13px;right:13px;display:flex;gap:8px;z-index:2}
.capa-botao{display:inline-flex;align-items:center;gap:7px;font-size:11px;color:#dbe3e8;background:rgba(12,17,21,.72);border:1px solid rgba(255,255,255,.14);border-radius:5px;padding:7px 11px;cursor:pointer;backdrop-filter:blur(4px)}
.capa-botao:hover{border-color:var(--blue);color:#fff}
.capa-botao img{width:14px;height:14px;object-fit:contain}
.capa-perfil{display:flex;align-items:flex-end;gap:16px;padding:0 22px 20px;margin-top:-42px;position:relative;z-index:2;flex-wrap:wrap}
.avatar-grande{position:relative;width:92px;height:92px;border-radius:50%;border:3px solid var(--panel);background:#35434c;display:grid;place-items:center;overflow:hidden;cursor:pointer;flex:0 0 92px}
.avatar-grande img.foto{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.avatar-inicial{font-size:32px;font-weight:700;color:var(--blue)}
.avatar-troca{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:9px;color:#fff;background:rgba(8,13,17,.72);opacity:0;transition:.16s;text-align:center}
.avatar-troca img{width:18px;height:18px;object-fit:contain}
.avatar-grande:hover .avatar-troca{opacity:1}
.capa-nome{flex:1;min-width:0;padding-bottom:4px}
.capa-nome h1{font-size:24px;margin:0 0 3px;letter-spacing:-.03em}
.capa-nome p{margin:0;font-size:12px;color:var(--muted)}
.conta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:13px}
.dados-lista{margin:0;display:grid;gap:11px}
.dados-lista div{display:flex;justify-content:space-between;gap:15px;align-items:baseline;border-bottom:1px solid #262f37;padding-bottom:10px}
.dados-lista div:last-child{border-bottom:0;padding-bottom:0}
.dados-lista dt{font-size:10px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.dados-lista dd{margin:0;font-size:12.5px;text-align:right;word-break:break-word}
.nota-discreta{font-size:11px;line-height:1.5;color:var(--muted);margin:14px 0 0}
.campo-linha{gap:7px;margin-bottom:14px}
.campo-linha input,.campo-linha select,.campo-linha textarea{width:100%;background:#171d22;border:1px solid var(--border);border-radius:4px;padding:11px 12px;color:var(--text);font-size:13px;outline:0;font-family:inherit}
.campo-linha textarea{resize:vertical}
.campo-linha input:focus,.campo-linha select:focus,.campo-linha textarea:focus{border-color:var(--blue)}
.aviso-forte{display:flex;gap:9px;align-items:flex-start;font-size:11.5px;line-height:1.5;color:#ffd7b0;background:rgba(245,166,110,.09);border:1px solid rgba(245,166,110,.34);border-radius:5px;padding:11px 12px;margin:0 0 12px}
.aviso-forte img{width:15px;height:15px;object-fit:contain;flex:0 0 15px;margin-top:1px}
.historico-nomes{margin-top:18px;border-top:1px solid var(--border);padding-top:14px}
.historico-nomes ul{list-style:none;margin:9px 0 0;padding:0;display:grid;gap:6px}
.historico-nomes li{font-size:11.5px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.conta-content .panel .button{width:100%;justify-content:center;gap:8px}
.conta-content .panel .button img{width:15px;height:15px;object-fit:contain}

/* --- cupons -------------------------------------------------------------- */
.cupons-resumo{grid-template-columns:repeat(4,1fr)}
.gerar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:0 13px;margin-bottom:6px}
.gerar-grid .larga{grid-column:1/-1}
.cupons-content .panel>.button{width:210px;justify-content:center;gap:8px}
.cupons-content .panel>.button img{width:15px;height:15px;object-fit:contain}
.acoes-lote,.acoes-selecao{display:flex;align-items:center;gap:15px;flex-wrap:wrap;background:#171d22;border:1px solid var(--border);border-radius:5px;padding:10px 13px;margin-bottom:14px;font-size:11.5px;color:var(--muted)}
.link-button.perigo{color:#d88782}
.link-button.perigo:hover{color:var(--danger)}
.tabela-cupons .col-check{width:34px}
.tabela-cupons input[type="checkbox"]{width:15px;height:15px;margin:0;accent-color:var(--blue)}
.codigo-cupom{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--text);letter-spacing:.03em}
.selo{display:inline-block;font-size:9px;letter-spacing:.06em;text-transform:uppercase;border-radius:3px;padding:3px 6px;border:1px solid var(--border);color:var(--muted)}
.selo[data-e="disponivel"]{color:#8fe89b;border-color:rgba(111,210,154,.5);background:rgba(111,210,154,.1)}
.selo[data-e="usado"]{color:#9fb0bb;background:#26323b}
.selo[data-e="desativado"],.selo[data-e="vencido"]{color:#ff9d9d;border-color:rgba(237,68,86,.45);background:rgba(237,68,86,.1)}
.acoes-linha{display:flex;gap:5px;justify-content:flex-end}
.acao-mini{border:1px solid var(--border);background:#171d22;border-radius:4px;width:28px;height:28px;display:grid;place-items:center;cursor:pointer;padding:0;transition:.15s}
.acao-mini:hover{border-color:var(--blue)}
.acao-mini img{width:14px;height:14px;object-fit:contain}

@media(max-width:980px){
  .conta-grid{grid-template-columns:1fr}
  .cupons-resumo{grid-template-columns:repeat(2,1fr)}
  .capa-perfil{padding:0 16px 18px}
}
@media(max-width:640px){
  .titulo-com-acao{align-items:stretch}
  .moeda-switch{width:100%}
  .moeda-opcao{flex:1}
  .cupons-resumo{grid-template-columns:1fr}
  .plan-actions,.plan-prices{grid-template-columns:1fr}
  .cupons-content .panel>.button{width:100%}
  .saldo-faixa .link-button{margin-left:0}
}

/* V17.1 — o valor em LTC tem 8 casas e não cabia na caixa do preço */
.price-option strong{overflow-wrap:anywhere;line-height:1.25}
.price-option strong.cripto{font-size:12.5px;letter-spacing:-.01em}
.saldo-faixa strong{overflow-wrap:anywhere}
.nota-discreta + .campo-linha{margin-top:16px}
.plan-badge{z-index:2}
/* o selo saía para fora do cartão e o cartão de cima o cortava */
.plan-badge{top:11px;right:11px}
.plan-card{padding-top:22px}

/* ============================================================================
   V18 — respiro entre blocos, barra de abas, janela de compra e conta
   ========================================================================== */

/* --- espaçamento: os painéis estavam se encostando ----------------------- */
.dash-content{padding:34px 0 72px}
.secao-topo{margin-bottom:26px}
.secao-topo .dash-subtitle{margin:0}
.secao-topo .page-title{margin-bottom:6px!important}
.secao-topo .panel-title{margin:0 0 10px}
.panel{padding:22px}
/* qualquer bloco que venha depois de outro ganha respiro, sem exceção */
.dash-content .panel + .panel,
.dash-content .panel + .balance-cards,
.dash-content .balance-cards + .panel,
.dash-content .logs-resumo + .panel,
.dash-content .conta-grid + .panel,
.dash-content .panel + .conta-grid,
.dash-content .perfil-capa + .panel,
.dash-content .form-message + .panel,
.dash-content .abas-barra + .aba-painel,
.aba-painel .panel + .panel,
.aba-painel .balance-cards + .panel{margin-top:20px}
.balance-cards,.logs-resumo,.cupons-resumo{gap:14px}
.conta-grid,.plans-grid{gap:20px}
.overview-grid,.quick-grid{gap:18px}
.quick-grid{margin-top:18px}
.deposito-panel{margin-top:0}
.panel-head{margin-bottom:20px}

/* --- barra de abas: uma faixa fina acima do conteúdo --------------------- */
.abas-barra{display:flex;gap:4px;background:#161c21;border:1px solid var(--border);border-radius:7px;padding:4px;margin-bottom:20px;overflow-x:auto;scrollbar-width:none}
.abas-barra::-webkit-scrollbar{display:none}
.aba-link{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;border:0;background:transparent;color:var(--muted);font-family:inherit;font-size:12px;font-weight:500;letter-spacing:.01em;padding:9px 15px;border-radius:5px;cursor:pointer;white-space:nowrap;transition:.15s}
.aba-link img{width:15px;height:15px;object-fit:contain;opacity:.65;transition:.15s}
.aba-link:hover{color:var(--text);background:#1c242a}
.aba-link.active{background:var(--panel2);color:var(--text)}
.aba-link.active img{opacity:1}
.aba-link:focus-visible{outline:2px solid var(--blue);outline-offset:-2px}

.filtros-linha{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.filtros-linha input[type="search"]{flex:1;min-width:200px;background:#171d22;border:1px solid var(--border);border-radius:5px;padding:9px 12px;color:var(--text);font-size:12px;font-family:inherit;outline:0}
.filtros-linha input[type="search"]:focus{border-color:var(--blue)}
.filtros-linha select{background:#171d22;border:1px solid var(--border);border-radius:5px;padding:9px 12px;color:var(--text);font-size:12px;font-family:inherit;outline:0}

/* --- carteira: relatório ------------------------------------------------- */
.origem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.origem-item{display:flex;align-items:flex-start;gap:12px;background:#171d22;border:1px solid var(--border);border-radius:6px;padding:15px}
.origem-item img{width:26px;height:26px;object-fit:contain;flex:0 0 26px}
.origem-item small{display:block;font-size:8.5px;letter-spacing:.11em;color:var(--muted);margin-bottom:6px}
.origem-item strong{display:block;font-size:17px}
.origem-item span{display:block;margin-top:4px;font-size:11px;color:var(--muted)}
.deposito-intro{margin:0 0 22px;font-size:12.5px;line-height:1.6;color:var(--muted);max-width:64ch}
.deposito-form{display:grid;gap:14px}
.cobranca-linha.destaque-ltc{border-color:rgba(70,170,244,.45);background:#182530}
.cobranca-linha.destaque-ltc code{font-size:15px;color:var(--blue)}

/* --- planos -------------------------------------------------------------- */
.preco-bloco{background:#171d22;border:1px solid var(--border);border-radius:6px;padding:14px}
.preco-bloco small{display:block;font-size:8.5px;letter-spacing:.11em;color:var(--muted);margin-bottom:8px}
.preco-real{display:block;font-size:21px;font-weight:700;letter-spacing:-.02em;line-height:1.1}
.preco-real em{font-size:11px;font-style:normal;font-weight:400;color:var(--muted)}
.preco-cripto{display:block;margin-top:5px;font-size:10.5px;color:#7f8d97;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.plan-prices{gap:11px}

/* --- janela de confirmação ---------------------------------------------- */
.modal-fundo{position:fixed;inset:0;z-index:90;background:rgba(4,9,13,.74);backdrop-filter:blur(3px);display:grid;place-items:center;padding:22px;overflow-y:auto}
.modal-caixa{position:relative;width:min(100%,468px);background:var(--panel);border:1px solid var(--border);border-radius:9px;padding:26px;box-shadow:0 28px 70px rgba(0,0,0,.55)}
.modal-caixa h2{font-size:23px;margin:0 0 16px;letter-spacing:-.03em}
.modal-caixa .step-kicker{margin:0 0 7px}
.modal-caixa .final-quote{font-size:12.5px;line-height:1.6;margin:0 0 22px}
.modal-fechar{position:absolute;top:13px;right:13px;width:30px;height:30px;border:1px solid var(--border);background:transparent;color:var(--muted);border-radius:5px;font-size:19px;line-height:1;cursor:pointer;transition:.15s}
.modal-fechar:hover{color:var(--text);border-color:var(--blue)}
.cupom-linha{display:flex;gap:9px}
.cupom-linha input{flex:1;min-width:0}
.cupom-linha .button{flex:0 0 auto;padding:0 18px;font-size:12px}
.resumo-compra{background:#171d22;border:1px solid var(--border);border-radius:6px;padding:15px;margin:18px 0 20px;display:grid;gap:10px}
.resumo-compra div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;font-size:12.5px;color:var(--muted)}
.resumo-compra strong{color:var(--text);font-size:13.5px}
.resumo-compra .linha-desconto strong{color:var(--green)}
.resumo-compra .linha-total{border-top:1px solid var(--border);padding-top:11px;margin-top:2px}
.resumo-compra .linha-total span{color:var(--text)}
.resumo-compra .linha-total strong{font-size:19px;color:var(--blue)}
.resumo-compra small{display:block;text-align:right;font-size:10.5px;color:#7f8d97;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.modal-acoes{display:grid;grid-template-columns:1fr 1.35fr;gap:11px}
.modal-acoes .button{justify-content:center}

/* --- minha conta reorganizada ------------------------------------------- */
.perfil-capa{margin-bottom:0}
.capa-fundo{height:168px}
.capa-perfil{align-items:flex-start;gap:18px;padding:0 24px 22px;margin-top:-38px}
.capa-nome h2{font-size:23px;margin:0 0 4px;letter-spacing:-.03em}
.capa-nome p{margin:0;font-size:12.5px;color:var(--muted)}
.capa-bio{margin-top:8px!important;font-size:12px;line-height:1.55;max-width:52ch}
.capa-meta{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:9px;padding-top:44px}
.selo-plano{font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;border:1px solid rgba(70,170,244,.45);background:rgba(70,170,244,.11);color:#9fd4fb;border-radius:4px;padding:5px 9px}
.capa-acoes{top:14px;right:14px}
.dados-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}
.dado{background:#171d22;border:1px solid var(--border);border-radius:6px;padding:13px 15px;min-width:0}
.dado small{display:block;font-size:8.5px;letter-spacing:.11em;color:var(--muted);margin-bottom:7px}
.dado strong{font-size:13px;font-weight:500;word-break:break-word}
.bloco-intro{margin:0 0 18px;font-size:12.5px;color:var(--muted)}
.bloco-intro strong{color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.bloco-acao{width:100%;justify-content:center;gap:8px;margin-top:4px}
.bloco-acao img{width:15px;height:15px;object-fit:contain}
.campo-linha.espaco-acima{margin-top:22px}
.aviso-forte{margin-bottom:20px}
.conta-content .nota-discreta{margin-top:10px}
.historico-nomes{margin-top:22px}

/* --- correções ----------------------------------------------------------- */
/* `.ok` genérica estava pintando de verde o marcador de campo do cadastro */
.form-message.ok{background:#1e3327;color:#9fe6b8}
.field-status.ok{background:transparent}
.rotulo-linha{display:flex;align-items:center;gap:7px;white-space:nowrap}
.mini-check{flex-direction:row!important;align-items:center;gap:9px;margin:-6px 0 4px;font-size:12px;color:var(--muted);cursor:pointer}
.mini-check input{width:15px;height:15px;margin:0;accent-color:var(--blue);flex:0 0 15px}
.mini-check .field-status,.mini-check .field-icon{display:none}
.campo-telegram input{padding-left:35px}

@media(max-width:980px){
  .capa-meta{margin-left:0;align-items:flex-start;padding-top:0;flex-direction:row}
  .capa-perfil{flex-wrap:wrap}
}
@media(max-width:640px){
  .aba-link{padding:9px 12px;font-size:11.5px}
  .modal-acoes{grid-template-columns:1fr}
  .modal-caixa{padding:22px 18px}
  .cupom-linha{flex-direction:column}
  .cupom-linha .button{width:100%;padding:11px}
  .dash-content{padding:26px 0 56px}
}

/* V18.1 — a classe .hidden perdia para seletores mais específicos
   (`.resumo-compra div` etc), então o bloco continuava na tela */
.hidden{display:none!important}
/* preço não pode vazar do cartão: são duas colunas em ~280px */
.preco-real{font-size:18px;overflow-wrap:anywhere}
.preco-bloco{min-width:0}
.plan-prices{grid-template-columns:1fr 1fr;min-width:0}
/* botão do depósito acompanha o texto em vez de quebrar em duas linhas */
.deposito-form .button{width:auto;justify-self:start;padding-left:22px;padding-right:22px}

/* V18.2 — duas colunas de preço apertavam "R$ 649,90" a ponto de quebrar o
   número no meio. Empilhado, com rótulo à esquerda e valor à direita, cabe. */
.plan-prices{grid-template-columns:1fr;gap:9px}
.preco-bloco{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:3px 14px;padding:12px 14px}
.preco-bloco small{grid-column:1;grid-row:1;margin-bottom:0}
.preco-real{grid-column:2;grid-row:1;text-align:right;white-space:nowrap;overflow-wrap:normal;font-size:19px}
.preco-cripto{grid-column:2;grid-row:2;text-align:right;white-space:nowrap}

/* ============================================================================
   V19 — abas centralizadas, craftland, cargos e comprovantes
   ========================================================================== */

/* --- abas: uma faixa do tamanho do conteúdo, centralizada ---------------- */
.abas-barra{width:max-content;max-width:100%;margin:0 auto 24px;justify-content:center}
@media(max-width:640px){
  .abas-barra{width:100%;justify-content:flex-start}
}

/* --- craftland: introdução ---------------------------------------------- */
.intro-titulo{font-size:20px;line-height:1.35;letter-spacing:-.02em;margin:0 0 16px;max-width:46ch}
.intro-texto{font-size:13px;line-height:1.7;color:#aeb9c0;margin:0 0 14px;max-width:70ch}
.intro-passos{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:24px}
.passo{display:flex;gap:13px;background:#171d22;border:1px solid var(--border);border-radius:6px;padding:15px}
.passo-num{flex:0 0 26px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:rgba(70,170,244,.14);border:1px solid rgba(70,170,244,.4);color:var(--blue);font-size:12px;font-weight:700}
.passo strong{display:block;font-size:13px;margin-bottom:5px}
.passo p{margin:0;font-size:11.5px;line-height:1.55;color:var(--muted)}
.fatos-grade{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:15px}
.fato{display:flex;gap:13px;align-items:flex-start}
.fato img{width:22px;height:22px;object-fit:contain;flex:0 0 22px;margin-top:2px}
.fato strong{display:block;font-size:13px;margin-bottom:5px}
.fato p{margin:0;font-size:12px;line-height:1.6;color:var(--muted)}

.faixa-aviso{display:flex;align-items:center;gap:11px;background:rgba(70,170,244,.08);border:1px solid rgba(70,170,244,.3);border-radius:6px;padding:12px 15px;margin-bottom:18px;font-size:12.5px;color:#bcd4e4}
.faixa-aviso img{width:19px;height:19px;object-fit:contain;flex:0 0 19px}
.faixa-aviso strong{color:var(--text)}
.faixa-aviso code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px}
.faixa-aviso.alerta{background:rgba(245,166,110,.09);border-color:rgba(245,166,110,.34);color:#ffd7b0}

/* --- craftland: pacotes -------------------------------------------------- */
.pacotes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:18px}
.pacote-card{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:22px;display:flex;flex-direction:column;gap:16px;text-align:left;color:inherit;font-family:inherit;cursor:pointer;transition:.16s}
.pacote-card:hover:not(:disabled){border-color:rgba(70,170,244,.55);transform:translateY(-2px)}
.pacote-card:disabled{cursor:not-allowed;opacity:.55}
.pacote-topo{display:flex;align-items:center;gap:12px}
.pacote-topo img{width:34px;height:34px;object-fit:contain}
.pacote-nivel{font-size:9px;letter-spacing:.12em;color:var(--muted);display:block;margin-bottom:3px}
.pacote-qtd{font-size:22px;font-weight:700;letter-spacing:-.03em;line-height:1}
.pacote-qtd em{font-size:11px;font-style:normal;font-weight:400;color:var(--muted);letter-spacing:0}
.pacote-preco{background:#171d22;border:1px solid var(--border);border-radius:6px;padding:13px 15px;display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:3px 12px}
.pacote-preco small{grid-column:1;grid-row:1;font-size:8.5px;letter-spacing:.11em;color:var(--muted)}
.pacote-valor{grid-column:2;grid-row:1;text-align:right;font-size:20px;font-weight:700;white-space:nowrap;letter-spacing:-.02em}
.pacote-cripto{grid-column:2;grid-row:2;text-align:right;font-size:10.5px;color:#7f8d97;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap}
.pacote-riscado{grid-column:1;grid-row:2;font-size:11px;color:#7f8d97;text-decoration:line-through}
.pacote-rodape{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}
.pacote-acao{font-size:12px;font-weight:600;color:var(--blue);display:inline-flex;align-items:center;gap:6px}
.selo-estoque{font-size:9px;letter-spacing:.08em;text-transform:uppercase;border-radius:3px;padding:4px 7px;border:1px solid rgba(111,210,154,.45);background:rgba(111,210,154,.1);color:#8fe89b}
.selo-estoque[data-e="fora"]{border-color:rgba(237,68,86,.45);background:rgba(237,68,86,.1);color:#ff9d9d}

.vazio-panel{text-align:center;padding:52px 24px}
.vazio-icone{width:58px;height:58px;object-fit:contain;margin-bottom:16px}
.vazio-panel h2{font-size:20px;margin:0 0 10px;letter-spacing:-.02em}
.vazio-panel p{margin:0 auto 18px;font-size:12.5px;line-height:1.7;color:var(--muted);max-width:52ch}

/* --- janela em duas etapas ---------------------------------------------- */
.modal-etapa{display:none}
.modal-etapa.active{display:block}
.step-kicker.ok{color:var(--green)}
.modal-acoes a.button{text-decoration:none;gap:8px}
.modal-acoes a.button img{width:15px;height:15px;object-fit:contain}
#subs-uid{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;letter-spacing:.04em}

/* --- cargos -------------------------------------------------------------- */
.cargos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}
.cargo-card{position:relative;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:22px;display:flex;flex-direction:column;gap:15px}
.cargo-card.ativo{border-color:rgba(111,210,154,.5)}
.cargo-topo{display:flex;align-items:center;gap:13px}
.cargo-topo img{width:36px;height:36px;object-fit:contain}
.cargo-topo h2{font-size:18px;margin:0;letter-spacing:-.02em}
.cargo-desc{margin:0;font-size:12.5px;line-height:1.6;color:var(--muted)}
.cargo-beneficios{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.cargo-beneficios li{display:flex;align-items:flex-start;gap:9px;font-size:12px;color:#aab4ba}
.cargo-beneficios li::before{content:"";flex:0 0 5px;width:5px;height:5px;border-radius:50%;background:var(--blue);margin-top:6px}
.cargo-rodape{margin-top:auto;display:grid;gap:11px}
.cargo-preco{font-size:21px;font-weight:700;letter-spacing:-.02em}
.cargo-preco small{display:block;font-size:10.5px;font-weight:400;color:var(--muted);letter-spacing:0;margin-top:3px}
.cargo-card .button{width:100%;justify-content:center;gap:8px}
.cargo-card .button img{width:15px;height:15px;object-fit:contain}
.selo-cargo{position:absolute;top:14px;right:14px;font-size:8px;font-weight:800;letter-spacing:.09em;border-radius:3px;padding:4px 7px;border:1px solid var(--border);background:var(--panel2);color:#c2ccd2}
.selo-cargo[data-e="ativo"]{border-color:rgba(111,210,154,.5);background:rgba(111,210,154,.13);color:#8fe89b}

/* --- comprovantes -------------------------------------------------------- */
.comprovantes-lista{display:grid;gap:14px}
.comprovante-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;background:var(--panel);border:1px solid var(--border);border-radius:7px;padding:18px 20px;text-decoration:none;color:inherit;transition:.16s}
.comprovante-item:hover{border-color:rgba(70,170,244,.5)}
.comprovante-item>img{width:34px;height:34px;object-fit:contain}
.comprovante-info{min-width:0}
.comprovante-info strong{display:block;font-size:14px;margin-bottom:4px}
.comprovante-info span{font-size:11.5px;color:var(--muted)}
.comprovante-info code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#7f8d97}
.comprovante-direita{text-align:right;display:grid;gap:7px;justify-items:end}
.mini-barra{width:120px;height:5px;border-radius:3px;background:#26323b;overflow:hidden}
.mini-barra i{display:block;height:100%;background:linear-gradient(90deg,#2f89d6,#6acdff);border-radius:3px}

/* --- página do comprovante ---------------------------------------------- */
.comprovante-page{background:var(--bg)}
.comprovante-caixa{width:min(100% - 40px,780px);margin:0 auto;padding:38px 0 72px;display:grid;gap:18px}
.comprovante-topo{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:4px}
.comprovante-topo h1{font-size:27px;margin:6px 0 6px;letter-spacing:-.03em}
.comprovante-order{margin:0;font-size:12px;color:var(--muted)}
.comprovante-order code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:#9fb0bb;font-size:12px}
.situacao[data-estado="completed"]{color:#8fe89b;border-color:rgba(81,222,66,.5);background:rgba(81,222,66,.1)}
.situacao[data-estado="processing"]{color:#9fd4fb;border-color:rgba(70,170,244,.5);background:rgba(70,170,244,.1)}
.situacao[data-estado="failed"],.situacao[data-estado="canceled"]{color:#ff9d9d;border-color:rgba(237,68,86,.5);background:rgba(237,68,86,.1)}
.situacao[data-estado="partial"]{color:#ffd27d;border-color:rgba(244,170,20,.5);background:rgba(244,170,20,.1)}
.comprovante-progresso .progresso-topo{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.progresso-topo small{display:block;font-size:8.5px;letter-spacing:.11em;color:var(--muted);margin-bottom:7px}
.progresso-topo strong{font-size:34px;font-weight:700;letter-spacing:-.03em;color:var(--blue);line-height:1}
.progresso-numeros{font-size:12px;color:var(--muted)}
.progresso-numeros span{color:var(--text);font-weight:600}
.barra{height:9px;border-radius:5px;background:#222c34;overflow:hidden}
.barra-preenchida{height:100%;border-radius:5px;background:linear-gradient(90deg,#2f89d6,#6acdff);transition:width .5s ease}
.comprovante-grade{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.comprovante-rodape{margin:6px 0 0;font-size:11px;line-height:1.6;color:#6e7b83;text-align:center}
@media(max-width:560px){
  .comprovante-grade{grid-template-columns:1fr}
  .comprovante-item{grid-template-columns:auto 1fr;gap:12px}
  .comprovante-direita{grid-column:1/-1;justify-items:start;text-align:left}
}

/* V19.1 — o selo é filho de um flex column, então esticava a largura toda */
.selo-estoque{position:absolute;top:14px;right:14px}
.pacote-card{padding-top:44px}
.pacote-card:disabled .pacote-acao{color:var(--muted)}

/* ============================================================================
   V20 — segurança da conta, login rápido e gestão de membros
   ========================================================================== */

/* --- login: etapas e o link discreto do login rápido --------------------- */
.login-etapa{display:none}
.login-etapa.active{display:block}
.rotulo-topo{display:flex;align-items:baseline;justify-content:space-between;gap:12px;width:100%}
.login-rapido-link{border:0;background:transparent;padding:0;font-family:inherit;font-size:11.5px;color:var(--blue);cursor:pointer;text-decoration:none;letter-spacing:0}
.login-rapido-link:hover{text-decoration:underline}
.voltar-senha{margin-top:18px}
.metodos-rapidos{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:11px}
.metodos-rapidos.coluna{grid-template-columns:1fr}
.metodo-rapido{display:flex;align-items:center;gap:13px;background:#171d22;border:1px solid var(--border);border-radius:6px;padding:15px;text-align:left;color:inherit;font-family:inherit;width:100%}
.metodo-rapido.botao{cursor:pointer;transition:.15s}
.metodo-rapido.botao:hover{border-color:var(--blue);background:#182530}
.metodo-rapido img{width:26px;height:26px;object-fit:contain;flex:0 0 26px}
.metodo-rapido strong{display:block;font-size:13.5px;margin-bottom:3px}
.metodo-rapido span{font-size:11px;color:var(--muted)}
.metodo-rapido.ativo{border-color:rgba(111,210,154,.45)}
.metodo-rapido.ativo span{color:#8fe89b}
.metodo-seta{margin-left:auto;color:var(--blue);font-size:15px}

/* --- página de segurança ------------------------------------------------- */
.recurso-seg{padding:0;overflow:hidden}
.recurso-topo{display:flex;align-items:flex-start;gap:14px;padding:22px;border-bottom:1px solid var(--border)}
.recurso-topo img{width:30px;height:30px;object-fit:contain;flex:0 0 30px}
.recurso-topo h2{font-size:17px;margin:0 0 6px;letter-spacing:-.02em}
.recurso-topo p{margin:0;font-size:12.5px;line-height:1.6;color:var(--muted);max-width:62ch}
.selo-seg{flex:0 0 auto;font-size:8.5px;font-weight:800;letter-spacing:.09em;border-radius:3px;padding:5px 8px;border:1px solid var(--border);background:var(--panel2);color:#9fb0bb}
.selo-seg[data-e="on"]{border-color:rgba(111,210,154,.5);background:rgba(111,210,154,.12);color:#8fe89b}
.recurso-corpo{padding:22px}
.recurso-corpo .campo-linha:last-of-type{margin-bottom:16px}
.perigo-botao{color:#d88782;border-color:rgba(237,68,86,.35)}
.perigo-botao:hover{color:var(--danger);border-color:rgba(237,68,86,.6)}

.totp-passos{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:start}
.totp-qr{width:200px;height:200px;background:#fff;border-radius:7px;padding:10px;display:grid;place-items:center}
.totp-qr svg{width:100%;height:100%;display:block}
.totp-dados{min-width:0}
.totp-dados .bloco-intro strong{color:var(--blue);font-family:inherit}
#totp-codigo,#totp-remover-codigo,#codigo-2fa{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:20px;letter-spacing:.32em;text-align:center}

.reserva-caixa{margin:0 22px 22px;padding:18px;border:1px solid rgba(244,170,20,.35);background:rgba(244,170,20,.07);border-radius:7px}
.reserva-caixa ul{list-style:none;margin:14px 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:9px}
.reserva-caixa li{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;background:#171d22;border:1px solid var(--border);border-radius:4px;padding:9px 11px;text-align:center;letter-spacing:.06em}

.passkey-lista{list-style:none;margin:18px 0;padding:0;display:grid;gap:10px}
.passkey-lista li{display:flex;align-items:center;gap:13px;background:#171d22;border:1px solid var(--border);border-radius:6px;padding:13px 15px}
.passkey-lista img{width:20px;height:20px;object-fit:contain;flex:0 0 20px}
.passkey-info{flex:1;min-width:0}
.passkey-info strong{display:block;font-size:13px;margin-bottom:3px}
.passkey-info span{font-size:11px;color:var(--muted)}

/* --- moderação: membros -------------------------------------------------- */
.membros-resumo{grid-template-columns:repeat(4,1fr)}
.membros-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.membro-card{display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:18px}
.membro-avatar{width:52px;height:52px;flex:0 0 52px;border-radius:50%;background:#35434c;display:grid;place-items:center;overflow:hidden;font-size:20px;font-weight:700;color:var(--blue)}
.membro-avatar img{width:100%;height:100%;object-fit:cover}
.membro-info{flex:1;min-width:0}
.membro-info strong{display:block;font-size:14px;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.membro-info span{display:block;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.membro-card .button{flex:0 0 auto;padding:9px 14px;font-size:11.5px}
.membro-selo{display:inline-block;margin-top:5px;font-size:8px;font-weight:800;letter-spacing:.09em;border:1px solid rgba(140,107,255,.5);background:rgba(140,107,255,.12);color:#c3b0ff;border-radius:3px;padding:3px 5px}

.modal-caixa.largo{width:min(100%,660px)}
.mm-cabecalho{display:flex;align-items:center;gap:15px;margin-bottom:20px}
.mm-avatar{width:58px;height:58px;flex:0 0 58px;border-radius:50%;background:#35434c;display:grid;place-items:center;overflow:hidden;font-size:22px;font-weight:700;color:var(--blue)}
.mm-avatar img{width:100%;height:100%;object-fit:cover}
.mm-cabecalho h2{font-size:20px;margin:0 0 4px;letter-spacing:-.02em}
.mm-cabecalho p{margin:0;font-size:12.5px;color:var(--muted)}
.mm-id code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10.5px;color:#7f8d97}
.mm-resumo{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:22px}
.mm-bloco{border-top:1px solid var(--border);padding-top:18px;margin-bottom:18px}
.mm-linha{display:flex;gap:9px;flex-wrap:wrap}
.mm-linha select,.mm-linha input{background:#171d22;border:1px solid var(--border);border-radius:5px;padding:10px 12px;color:var(--text);font-size:12.5px;font-family:inherit;outline:0;min-width:0}
.mm-linha select{flex:0 0 auto}
.mm-linha input[type="number"]{width:110px}
.mm-linha input[type="text"]{flex:1;min-width:150px}
.mm-linha select:focus,.mm-linha input:focus{border-color:var(--blue)}
.mm-linha .button{flex:0 0 auto;padding:10px 18px;font-size:12px}
.mm-cargos{display:flex;flex-wrap:wrap;gap:9px}
.cargo-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:#171d22;border-radius:5px;padding:9px 13px;font-size:12px;color:#aab4ba;cursor:pointer;font-family:inherit;transition:.15s}
.cargo-toggle:hover{border-color:var(--blue)}
.cargo-toggle[data-ativo="true"]{border-color:rgba(111,210,154,.5);background:rgba(111,210,154,.1);color:#8fe89b}
#mm-historico td{font-size:11.5px}

@media(max-width:980px){
  .membros-resumo{grid-template-columns:repeat(2,1fr)}
  .mm-resumo{grid-template-columns:repeat(2,1fr)}
  .totp-passos{grid-template-columns:1fr;justify-items:center}
  .totp-dados{width:100%}
}
@media(max-width:640px){
  .membros-resumo{grid-template-columns:1fr}
  .mm-resumo{grid-template-columns:1fr}
  .mm-linha{flex-direction:column;align-items:stretch}
  .mm-linha input[type="number"]{width:100%}
  .membro-card{flex-wrap:wrap}
}
