:root{--navy:#08243f;--navy2:#103d5c;--teal:#0b6570;--teal2:#1d7f82;--sage:#dfeee7;--mint:#eff8f4;--ivory:#fbf8f1;--lav:#f0edf7;--ink:#071624;--muted:#52606d;--line:#dbe4e8;--bg:#f4f7f8;--white:#fff;--danger:#a52b24;--dangerbg:#fff0ee;--warn:#8b5d00;--warnbg:#fff7df;--success:#146a43;--successbg:#edf8f1;--info:#1f5f8d;--infobg:#edf5fb;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:12px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}img{max-width:100%}.container{width:min(1220px,calc(100% - 36px));margin:auto}.muted{color:var(--muted)}.small{font-size:10.5px}.nowrap{white-space:nowrap}.hide{display:none!important}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #cbd7dd;background:#fff;border-radius:9px;padding:9px 12px;font-weight:700;min-height:34px}.btn:hover{background:#f7fafb}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn.teal{background:var(--teal);border-color:var(--teal);color:#fff}.btn.danger{background:#fff8f7;border-color:#ecc7c3;color:var(--danger)}.btn.ghost{background:transparent}.btn.small{padding:6px 9px;min-height:29px;font-size:10.5px}.btn.block{width:100%}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-weight:750;font-size:9.8px;border:1px solid transparent}.badge.success{background:var(--successbg);color:var(--success);border-color:#c7e7d4}.badge.warning{background:var(--warnbg);color:var(--warn);border-color:#ecd89e}.badge.danger{background:var(--dangerbg);color:var(--danger);border-color:#f1c8c4}.badge.info{background:var(--infobg);color:var(--info);border-color:#cbdff0}.badge.muted{background:#f0f3f5;color:#5d6871;border-color:#dde4e8}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius)}.card-pad{padding:16px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}.card-title{font-size:13px;font-weight:800}.section-title{font-size:18px;font-weight:800;letter-spacing:-.2px}.section-sub{font-size:11px;color:var(--muted);margin-top:3px}.notice{padding:11px 12px;border:1px solid #cae3df;background:#f1faf7;border-radius:10px;line-height:1.55}.notice.warn{border-color:#ead9a9;background:#fffaea}.notice.danger{border-color:#efcbc7;background:#fff4f2}.notice strong{font-weight:800}.flash-wrap{position:fixed;right:20px;top:76px;z-index:90;display:grid;gap:8px}.flash{width:min(360px,calc(100vw - 40px));padding:11px 13px;border-radius:10px;border:1px solid var(--line);background:#fff;box-shadow:0 8px 30px rgba(13,36,55,.1)}.flash.success{border-color:#bfe0cc;background:#f1faf5}.flash.error{border-color:#edc8c4;background:#fff3f1}.flash.info{border-color:#c5dcec;background:#f0f7fb}
.field{display:grid;gap:6px}.field label{font-weight:750;font-size:10.8px}.field input,.field textarea,.field select{width:100%;background:#fff;border:1px solid #cbd6dc;border-radius:9px;padding:10px 11px;outline:none}.field textarea{resize:vertical;min-height:95px}.field input:focus,.field textarea:focus,.field select:focus{border-color:#6c929b;box-shadow:0 0 0 3px rgba(11,101,112,.08)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.check-row{display:flex;gap:8px;align-items:flex-start}.check-row input{margin-top:2px}.switchline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #e7edef}.switchline:last-child{border-bottom:0}
/* auth */
.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.auth-brand{background:linear-gradient(145deg,var(--navy),#0b344e);color:#fff;padding:52px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-brand:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(255,255,255,.12);border-radius:50%;right:-240px;bottom:-250px}.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:14px}.brand-mark{width:36px;height:36px;border:1px solid rgba(255,255,255,.35);border-radius:10px;display:grid;place-items:center}.auth-copy{max-width:560px;position:relative;z-index:1}.auth-copy h1{font-family:Georgia,serif;font-size:38px;line-height:1.13;margin:0 0 16px;font-weight:500}.auth-copy p{font-size:13px;color:#d8e6ee;line-height:1.7}.auth-panel{display:grid;place-items:center;padding:32px;background:#fafcfc}.auth-card{width:min(430px,100%)}.auth-card h2{font-size:21px;margin:0 0 7px}.auth-card>p{margin:0 0 22px;color:var(--muted)}.auth-form{display:grid;gap:12px}.auth-links{display:flex;justify-content:space-between;margin-top:14px;font-size:10.8px;color:var(--teal);font-weight:700}
/* private app */
.app-shell{min-height:100vh;display:grid;grid-template-columns:224px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:224px;background:var(--navy);color:#fff;padding:17px 13px;display:flex;flex-direction:column;z-index:40}.sidebar .brand{padding:4px 5px 18px;border-bottom:1px solid rgba(255,255,255,.13)}.sidebar .brand small{display:block;color:#a9c2d3;font-weight:500;font-size:9.5px;margin-top:2px}.nav-label{text-transform:uppercase;letter-spacing:.7px;font-size:9px;color:#7f9fb6;padding:17px 8px 7px}.nav{display:grid;gap:3px}.nav a{padding:9px 10px;border-radius:8px;color:#dfe9ef;font-weight:650;display:flex;align-items:center;gap:8px}.nav a:hover,.nav a.active{background:rgba(255,255,255,.1);color:#fff}.nav .doticon{width:7px;height:7px;border:1px solid #8fb1c4;border-radius:50%}.side-bottom{margin-top:auto;padding-top:12px;border-top:1px solid rgba(255,255,255,.12)}.side-bottom a{display:block;padding:8px;color:#cad9e3}.app-main{grid-column:2;min-width:0}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:30}.topbar h1{font-size:14px;margin:0}.topbar p{font-size:9.8px;color:var(--muted);margin:2px 0 0}.user-chip{display:flex;align-items:center;gap:9px}.avatar{width:34px;height:34px;border-radius:10px;background:#e6f1ee;color:var(--teal);display:grid;place-items:center;font-weight:800}.content{padding:20px 24px 34px;max-width:1500px;margin:auto}.page-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-end;margin-bottom:15px}.page-head h2{font-size:18px;margin:0}.page-head p{margin:3px 0 0;color:var(--muted)}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:14px}.kpi{padding:14px}.kpi label{font-size:10px;color:var(--muted);font-weight:700}.kpi strong{display:block;font-size:22px;margin-top:7px;letter-spacing:-.3px}.kpi span{font-size:9.8px;color:var(--muted)}.grid-2{display:grid;grid-template-columns:1.45fr .85fr;gap:13px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stack{display:grid;gap:12px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}table{border-collapse:collapse;width:100%;min-width:720px}th,td{text-align:left;padding:10px 11px;border-bottom:1px solid #e8edef;vertical-align:middle}th{background:#f8fafb;font-size:9px;letter-spacing:.35px;text-transform:uppercase;color:#53616e}td{font-size:10.8px}tr:last-child td{border-bottom:0}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 11px;flex-wrap:wrap}.search{border:1px solid #cbd6dc;border-radius:9px;padding:8px 10px;background:#fff;min-width:220px}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:14px;overflow:auto}.tabs a{padding:9px 11px;border-bottom:2px solid transparent;color:#4a5a66;font-weight:650;white-space:nowrap}.tabs a.active{border-color:var(--teal);color:var(--ink);font-weight:800}.panel-note{font-size:10px;line-height:1.55;color:#4f5e69;background:#f7fafb;border:1px solid #e1e8eb;padding:10px;border-radius:9px}.status-list{display:grid;gap:8px}.status-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #e8edef}.status-item:last-child{border-bottom:0}.booking-card{padding:13px;border:1px solid var(--line);border-radius:11px;display:grid;grid-template-columns:1fr auto;gap:12px}.booking-card strong{font-size:11.5px}.booking-card .meta{font-size:10px;color:var(--muted);margin-top:3px}.action-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.timeline{display:grid;gap:12px}.record{border-left:3px solid #c9dbde;padding-left:11px}.record h4{margin:0 0 4px;font-size:11px}.record p{margin:0;white-space:pre-wrap;color:#2f3e48;line-height:1.6}.record footer{font-size:9.5px;color:var(--muted);margin-top:6px}.editor textarea{min-height:300px}.preview-box{background:var(--ivory);border:1px solid #eadfcf;border-radius:12px;padding:16px}.day-row{display:grid;grid-template-columns:100px 1fr 1fr 80px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid #e7edef}.day-row:last-child{border-bottom:0}.day-row input[type=time]{width:100%;padding:8px;border:1px solid #cbd6dc;border-radius:8px}.codebox{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#f3f6f7;border:1px solid #dbe3e7;padding:10px;border-radius:8px;word-break:break-all;font-size:10px}
/* public profile */
.public-body{background:#fff}.public-nav{height:70px;background:var(--navy);color:#fff;display:flex;align-items:center;position:sticky;top:0;z-index:50}.public-nav .container{display:flex;align-items:center;justify-content:space-between;gap:20px}.public-links{display:flex;gap:30px;font-weight:700}.public-cta{background:#6ba49e;color:#fff;border:0;border-radius:999px;padding:10px 18px;font-weight:800}.hero{background:linear-gradient(135deg,#fffaf1,#f8fbf8 58%,#f6f1eb);padding:42px 0 36px;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:#e7f0ea;right:-100px;bottom:-170px;opacity:.65}.hero-grid{display:grid;grid-template-columns:360px 1fr 230px;gap:42px;align-items:center;position:relative;z-index:1}.portrait{height:335px;border-radius:42% 58% 42% 58%/44% 44% 56% 56%;background:linear-gradient(145deg,#c8ded6,#efe3d5);overflow:hidden;display:grid;place-items:center}.portrait img{width:100%;height:100%;object-fit:cover}.portrait-placeholder{width:130px;height:130px;border-radius:50%;background:rgba(255,255,255,.6);display:grid;place-items:center;font-family:Georgia,serif;font-size:36px;color:var(--teal)}.hero h1{font-family:Georgia,serif;font-size:42px;line-height:1.08;margin:0;color:#08243f;font-weight:500}.hero .crp{color:var(--teal);font-size:14px;font-weight:700;margin-top:6px}.hero .bio{font-size:13px;line-height:1.75;max-width:560px;margin:20px 0;color:#1d3340}.trust-list{display:grid;gap:17px}.trust{display:flex;gap:10px;align-items:center}.trust-icon{width:43px;height:43px;border-radius:50%;background:var(--sage);display:grid;place-items:center;font-size:18px}.trust:nth-child(2) .trust-icon{background:var(--lav)}.trust:nth-child(3) .trust-icon{background:#f4ead0}.trust strong{display:block;font-size:10.8px}.trust span{font-size:9.8px;color:#394e59}.public-section{padding:38px 0}.public-section.soft{background:#fbfcfb}.public-section.ivory{background:var(--ivory)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.section-head h2{font-family:Georgia,serif;font-size:27px;font-weight:500;margin:0;color:#112c42}.section-head p{margin:5px 0 0;color:#52636d}.profile-content-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.article-card{border:1px solid #e1e6e3;border-radius:14px;overflow:hidden;background:#fff}.article-cover{height:160px;background:linear-gradient(145deg,#dcece5,#eee5d8);display:grid;place-items:center;font-size:36px}.article-card .body{padding:13px}.category{display:inline-flex;padding:3px 7px;border-radius:999px;background:#e4f0eb;color:#256258;font-size:8.8px;text-transform:uppercase;font-weight:800;letter-spacing:.3px}.article-card h3{font-size:14px;line-height:1.35;margin:8px 0 7px}.article-card p{font-size:10.5px;color:#4d5d66;line-height:1.55;margin:0 0 11px}.readmore{color:var(--teal);font-weight:800;font-size:10.5px}.schedule-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:16px}.calendar-box,.slots-box{padding:16px}.date-input{font-size:13px;padding:11px!important}.slots{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.slot{border:1px solid #8fb1b4;background:#fff;border-radius:8px;padding:8px 12px;font-weight:800;color:#0b4550}.slot:hover,.slot.selected{background:var(--teal);color:#fff}.payment-note{margin-top:14px;background:#eef3ef;border-radius:9px;padding:9px 10px;font-size:10px;color:#43565b}.about-card{padding:18px;line-height:1.75;font-size:12px}.about-card h3{font-family:Georgia,serif;font-size:20px;margin:0 0 9px}.specialties{display:flex;flex-wrap:wrap;gap:6px}.specialty{padding:6px 9px;background:#f0f7f4;border:1px solid #d6e8e0;border-radius:999px;color:#24564f;font-weight:700;font-size:9.8px}.public-footer{background:#071d31;color:#d8e4eb;padding:28px 0}.public-footer .container{display:flex;justify-content:space-between;gap:20px;align-items:center}.public-footer small{color:#9fb4c3}.article-page{padding:38px 0}.article-reader{width:min(790px,100%);margin:auto}.article-reader h1{font-family:Georgia,serif;font-size:36px;line-height:1.15;color:#102d43;font-weight:500}.article-reader .lead{font-size:13px;color:#51616b;line-height:1.65}.article-reader .article-text{font-family:Georgia,serif;font-size:16px;line-height:1.9;color:#1c2f39;white-space:pre-wrap;margin-top:25px}.article-reader .authorbox{margin-top:30px;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;align-items:center;gap:15px}
/* booking */
.booking-shell{min-height:100vh;background:#f5f8f8;padding:30px 0}.booking-wrap{width:min(920px,calc(100% - 28px));margin:auto}.booking-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.payment-grid{display:grid;grid-template-columns:1fr .85fr;gap:14px}.countdown{font-size:28px;font-weight:800;color:var(--warn)}.qrbox{display:grid;place-items:center;min-height:230px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px}.qrbox img,.qrbox canvas{max-width:205px!important;height:auto!important}.receipt-preview{max-width:250px;border-radius:8px;border:1px solid var(--line)}
/* room */
.room-body{background:#071625;color:#fff;min-height:100vh}.room-head{height:58px;padding:0 18px;border-bottom:1px solid #263d50;display:flex;align-items:center;justify-content:space-between}.room-grid{display:grid;grid-template-columns:1fr 310px;min-height:calc(100vh - 58px)}.video-area{padding:14px;display:flex;flex-direction:column}.video-stage{background:#10283d;border:1px solid #2b465c;border-radius:13px;flex:1;display:grid;place-items:center;overflow:hidden;min-height:430px}.video-stage video{width:100%;height:100%;object-fit:cover}.video-placeholder{text-align:center;color:#a9bfce}.video-placeholder .circle{width:90px;height:90px;border-radius:50%;background:#24475f;display:grid;place-items:center;margin:0 auto 12px;font-size:26px;font-weight:800}.room-controls{display:flex;justify-content:center;gap:8px;padding-top:12px}.room-control{width:42px;height:42px;border-radius:50%;border:1px solid #35536b;background:#173149;color:#fff}.room-control.end{background:#b93730;border-color:#b93730}.room-side{border-left:1px solid #263d50;background:#0b2032;padding:15px}.room-side h3{font-size:12px;margin:0 0 10px}.room-info{border:1px solid #284459;background:#10293c;border-radius:10px;padding:10px;margin-bottom:9px;font-size:10px;line-height:1.55}.room-side textarea{width:100%;height:180px;background:#081a2a;border:1px solid #31506a;color:#fff;border-radius:9px;padding:10px;resize:vertical}
@media(max-width:1050px){.hero-grid{grid-template-columns:300px 1fr}.trust-list{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.kpis{grid-template-columns:repeat(2,1fr)}.grid-2,.schedule-layout{grid-template-columns:1fr}.room-grid{grid-template-columns:1fr}.room-side{border-left:0;border-top:1px solid #263d50}}
@media(max-width:820px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;min-height:0;display:block}.sidebar .nav{display:flex;overflow:auto}.sidebar .nav-label,.side-bottom{display:none}.sidebar .nav a{white-space:nowrap}.app-main{grid-column:auto}.topbar{position:static}.content{padding:15px}.hero-grid{grid-template-columns:1fr;text-align:center}.portrait{width:min(360px,100%);margin:auto}.hero .bio{margin-left:auto;margin-right:auto}.trust-list{grid-template-columns:1fr}.trust{justify-content:center}.public-links{display:none}.article-grid,.profile-content-grid,.payment-grid{grid-template-columns:1fr}.article-grid{gap:10px}.form-grid{grid-template-columns:1fr}.room-grid{min-height:auto}.public-footer .container{flex-direction:column;text-align:center}}
@media(max-width:520px){.container{width:min(100% - 24px,1220px)}.auth-panel{padding:20px}.topbar{padding:0 14px}.content{padding:12px}.kpis,.grid-3{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.hero{padding-top:24px}.hero h1{font-size:33px}.portrait{height:280px}.article-reader h1{font-size:30px}.day-row{grid-template-columns:80px 1fr 1fr}.day-row .active-cell{grid-column:1/-1}.booking-card{grid-template-columns:1fr}.public-cta{padding:8px 12px}.public-nav{height:60px}}
.webrtc-grid{width:100%;height:100%;min-height:530px;position:relative;background:#091a29}.remote-video{width:100%;height:100%;min-height:530px;object-fit:cover;background:#10283d}.local-tile{position:absolute;right:14px;bottom:14px;width:190px;height:128px;border-radius:11px;overflow:hidden;border:1px solid #4a6579;background:#132d42;box-shadow:0 8px 22px rgba(0,0,0,.24)}.local-tile video{width:100%;height:100%;object-fit:cover}.call-state{position:absolute;left:18px;top:16px;background:rgba(4,14,23,.75);padding:7px 10px;border-radius:8px;font-size:10px}.room-control.off{background:#7f3131;border-color:#a44949}.external-room{display:block;margin-top:9px;text-align:center;color:#fff;border:1px solid #3f5d73;border-radius:8px;padding:8px;font-weight:700}
@media(max-width:600px){.local-tile{width:120px;height:85px}.remote-video,.webrtc-grid{min-height:380px}}

details summary{list-style:none;cursor:pointer}details summary::-webkit-details-marker{display:none}.mini-form{display:grid;gap:6px}.mini-form input{width:100%;border:1px solid var(--line);border-radius:8px;padding:8px;color:var(--ink);background:#fff}.guardian-fields{border-top:1px solid var(--line);padding-top:10px;margin-top:2px}

/* v4 - agenda flexível e correções do blog/pagamento */
.agenda-settings-grid,.agenda-lists-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}.availability-card{margin-bottom:14px}.availability-week{display:grid;gap:10px}.availability-day{border:1px solid var(--line);border-radius:11px;padding:12px;background:#fbfcfc}.availability-day-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.availability-day-head strong{display:block;font-size:11.5px}.availability-day-head span{display:block;font-size:9.8px;color:var(--muted);margin-top:2px}.availability-ranges{display:grid;gap:7px}.availability-range{display:grid;grid-template-columns:minmax(125px,1fr) auto minmax(125px,1fr) auto;gap:8px;align-items:center}.availability-range input{width:100%;padding:9px;border:1px solid #cbd6dc;border-radius:8px;background:#fff;color:var(--ink)}.availability-range span{font-size:10px;color:var(--muted)}.remove-range{border:0;background:transparent;color:var(--danger);font-weight:750;padding:7px 4px;cursor:pointer}
.article-card{display:flex!important;flex-direction:column!important;min-height:350px;overflow:hidden!important;background:#fff!important}.article-cover{position:relative!important;overflow:hidden!important;flex:0 0 180px;height:180px!important;background:linear-gradient(145deg,#dcece5,#eee5d8)!important}.article-cover>img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;display:block!important}.article-cover-placeholder{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#e2eee8,#f1eadf)}.article-cover-placeholder:before,.article-cover-placeholder:after{content:"";position:absolute;border-radius:50%;background:rgba(82,137,123,.10)}.article-cover-placeholder:before{width:150px;height:150px;left:-45px;bottom:-70px}.article-cover-placeholder:after{width:110px;height:110px;right:-25px;top:-35px}.article-cover-placeholder span{position:relative;z-index:1;border:1px solid rgba(29,89,79,.16);background:rgba(255,255,255,.72);color:#245c53;padding:7px 11px;border-radius:999px;font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:.4px}.article-card .body{position:relative!important;z-index:2;background:#fff!important;display:flex;flex:1;flex-direction:column;padding:15px!important}.article-card h3{min-height:38px}.article-card p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;min-height:49px}.article-card .readmore{margin-top:auto;padding-top:3px}.qrbox #qrcode{display:grid;place-items:center;min-height:205px}.qrbox #qrcode img,.qrbox #qrcode canvas{display:block!important;margin:auto!important;image-rendering:pixelated}
@media(max-width:900px){.agenda-settings-grid,.agenda-lists-grid{grid-template-columns:1fr}}@media(max-width:620px){.availability-day-head{align-items:flex-start;flex-direction:column}.availability-range{grid-template-columns:1fr auto 1fr}.availability-range .remove-range{grid-column:1/-1;justify-self:end}.article-cover{flex-basis:165px;height:165px!important}}

/* v5 — sala ajustada à tela do notebook + anotações + transcrição e resumo assistido */
html:has(.room-body){height:100%}
.room-body{height:100dvh;min-height:0;overflow:hidden;background:#061421;color:#fff}
.room-head{height:52px;min-height:52px;padding:0 14px;border-bottom:1px solid #263d50;background:#081b2b;display:flex;align-items:center;justify-content:space-between;gap:12px}
.room-head-actions{display:flex;align-items:center;gap:9px}.room-fit-label{font-size:9.5px;color:#a8c0cf;border:1px solid #2d485c;background:#0e2638;border-radius:999px;padding:4px 8px}
.room-grid{height:calc(100dvh - 52px);min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px;overflow:hidden}
.video-area{padding:10px 11px 8px;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}
.video-stage{background:#030b12;border:1px solid #294459;border-radius:12px;flex:1;min-height:0;height:auto;display:grid;place-items:center;overflow:hidden}
.webrtc-grid{width:100%;height:100%;min-height:0!important;position:relative;background:#030b12;display:flex;align-items:center;justify-content:center;overflow:hidden}
.video-stage video,.remote-video{width:100%!important;height:100%!important;min-height:0!important;max-height:100%!important;object-fit:contain!important;background:#030b12}
.local-tile{position:absolute;right:11px;bottom:11px;width:clamp(150px,18vw,220px);height:auto!important;aspect-ratio:16/9;border-radius:10px;overflow:hidden;border:1px solid #557184;background:#0d2232;box-shadow:0 6px 20px rgba(0,0,0,.28)}
.local-tile video{width:100%!important;height:100%!important;object-fit:contain!important;background:#07131e}.local-tile span,.remote-label{position:absolute;background:rgba(2,10,17,.72);color:#fff;font-size:9px;border-radius:5px;padding:4px 6px;line-height:1}.local-tile span{left:6px;bottom:6px}.remote-label{left:11px;bottom:11px;z-index:2}
.call-state{position:absolute;left:11px;top:11px;background:rgba(4,14,23,.78);padding:6px 9px;border-radius:7px;font-size:9.5px;z-index:3}.room-controls{flex:0 0 50px;height:50px;display:flex;align-items:center;justify-content:center;gap:8px;padding:7px 0 0}.room-control{width:39px;height:39px;flex:0 0 39px}
.room-side{height:100%;min-height:0;overflow:hidden;border-left:1px solid #263d50;background:#0a1d2d;padding:0}.room-side-scroll{height:100%;overflow-y:auto;overscroll-behavior:contain;padding:13px 13px 20px;scrollbar-width:thin;scrollbar-color:#385268 transparent}.room-side-scroll::-webkit-scrollbar{width:7px}.room-side-scroll::-webkit-scrollbar-thumb{background:#385268;border-radius:20px}
.room-patient-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding-bottom:11px;border-bottom:1px solid #243d50}.room-patient-head strong{font-size:12px;display:block;margin-top:2px}.room-patient-head small{font-size:9.5px;color:#9eb5c4;display:block;margin-top:2px}.room-eyebrow{display:block;color:#82b9bd;text-transform:uppercase;letter-spacing:.55px;font-size:8.5px;font-weight:800}.room-secure-dot{font-size:9px;color:#74d4ac;background:#102f32;border:1px solid #28564c;border-radius:999px;padding:4px 7px;white-space:nowrap}
.room-panel-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:10px 0}.room-panel-tabs button{border:1px solid #2c485d;background:#0d2639;color:#b9ccd8;border-radius:7px;padding:7px 8px;font-weight:750;font-size:9.5px}.room-panel-tabs button.active{background:#eaf6f3;color:#0b3e47;border-color:#b9ddd5}.room-panel{display:none}.room-panel.active{display:block}.room-section-title{font-size:11px;font-weight:800}.room-help{font-size:9.5px;color:#9eb4c2;line-height:1.48;margin:4px 0 9px}
.room-notes,.summary-editor{width:100%;background:#061725!important;border:1px solid #315067!important;color:#fff!important;border-radius:8px!important;padding:9px!important;resize:vertical!important;line-height:1.5}.room-notes{height:clamp(150px,31vh,250px)!important;min-height:120px!important}.summary-editor{height:180px!important;min-height:130px!important;margin-top:8px}.room-btn{background:#12334a!important;border-color:#3d5a70!important;color:#fff!important;min-height:32px!important;padding:7px 9px!important;font-size:9.7px!important}.room-btn:hover{background:#194158!important}.room-btn:disabled{opacity:.48;cursor:not-allowed}.room-btn.danger-soft{background:#342127!important;border-color:#6b3f47!important;color:#ffd9d4!important}.room-save-state{font-size:9px;color:#9db1bf;min-height:17px;margin-top:5px;line-height:1.4}.room-save-state.ok{color:#7ed7af}.room-save-state.error{color:#ffaaa1}
.room-info.compact{padding:8px 9px;font-size:9.2px;margin-top:9px}.room-ai-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.ai-status{font-size:8.5px;padding:4px 7px;border-radius:999px;border:1px solid #3c5669;background:#102a3e;color:#c4d4de;white-space:nowrap}.ai-status[data-status="active"]{color:#8fe5bf;border-color:#326c5b;background:#0d3029}.ai-status[data-status="requested"]{color:#f1d48b;border-color:#6b5c30;background:#322b16}.ai-status[data-status="declined"]{color:#ffaaa1;border-color:#674047;background:#321e23}.ai-action-row{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:7px}.speech-support{font-size:8.8px;line-height:1.4;color:#9db4c3;min-height:14px;margin:4px 0 7px}.speech-support.ok{color:#7ed7af}.speech-support.error{color:#ffaaa1}
.transcript-box{height:190px;overflow-y:auto;border:1px solid #2b465a;background:#061725;border-radius:9px;padding:8px;display:grid;align-content:start;gap:7px}.transcript-empty{font-size:9.2px;color:#7790a0;line-height:1.45;padding:6px}.transcript-line{display:grid;gap:2px;border-radius:7px;padding:7px 8px;font-size:9.3px;line-height:1.45;border:1px solid #223e52;background:#0b2233}.transcript-line strong{font-size:8.5px;color:#84c9c7}.transcript-line.patient{background:#102334}.transcript-line.patient strong{color:#dbc98f}.transcript-line span{white-space:pre-wrap}.ai-summary-card{border-top:1px solid #243d50;margin-top:10px;padding-top:10px}
.ai-consent-box{border:1px solid #3d6d6a;background:#102c35;border-radius:10px;padding:11px;margin-bottom:10px}.ai-consent-box[hidden]{display:none!important}.ai-consent-box>strong{display:block;font-size:10.5px;margin:4px 0 5px}.ai-consent-box p{font-size:9.5px;line-height:1.5;color:#c4d6df;margin:0 0 9px}
@media(max-width:1050px) and (min-width:761px){.room-grid{grid-template-columns:minmax(0,1fr) 320px}.local-tile{width:155px}.room-fit-label{display:none}}
@media(max-height:700px) and (min-width:761px){.room-head{height:46px;min-height:46px}.room-grid{height:calc(100dvh - 46px)}.video-area{padding:7px 8px 5px}.room-controls{height:44px;flex-basis:44px;padding-top:5px}.room-control{width:35px;height:35px;flex-basis:35px}.room-side-scroll{padding:10px}.room-notes{height:145px!important}.transcript-box{height:145px}.summary-editor{height:140px!important}}
@media(max-width:760px){.room-body{height:auto;min-height:100vh;overflow:auto}.room-head{position:sticky;top:0;z-index:20}.room-fit-label{display:none}.room-grid{height:auto;min-height:calc(100vh - 52px);grid-template-columns:1fr;overflow:visible}.video-area{height:58vh;min-height:370px}.room-side{height:auto;border-left:0;border-top:1px solid #263d50;overflow:visible}.room-side-scroll{height:auto;overflow:visible}.local-tile{width:125px}.remote-label{bottom:8px}.room-notes{height:170px!important}.transcript-box{height:200px}}

/* v6 — recebimentos diretos pelo provedor do psicólogo */
.payment-path{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:14px 0;padding:12px;border:1px solid #d8e6e3;background:#f3faf7;border-radius:10px;color:var(--navy)}
.payment-path span{color:var(--teal);font-weight:900}.payment-path.public{background:#f8fbfa}.payment-path strong{font-size:10.5px}


/* v11 — identificação do paciente, pagador e termo único visível no agendamento */
.booking-section-title{font-size:11px;font-weight:850;letter-spacing:.2px;color:var(--navy);padding-top:7px;border-top:1px solid #e5ecef;margin-top:2px}.booking-section-title:first-of-type{border-top:0;padding-top:0}.terms-full{border:1px solid #cfdcdd;border-radius:12px;background:#fffdfa;overflow:hidden}.terms-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;background:linear-gradient(135deg,#edf7f3,#f8f5ee);border-bottom:1px solid #dce7e4}.terms-head>div{display:grid;gap:2px}.terms-head strong{font-size:11.5px}.terms-head span{font-size:9.5px;color:#5a6a70}.terms-text{padding:16px;font-size:10.3px;line-height:1.72;color:#263842;white-space:normal}.terms-accept{border:1px solid #c5deda;background:#f1faf7;border-radius:10px;padding:12px 13px;font-weight:700;line-height:1.5}.terms-accept input{width:17px;height:17px;flex:0 0 auto;accent-color:var(--teal)}
@media(max-width:620px){.terms-head{align-items:flex-start;flex-direction:column}.terms-text{padding:13px;font-size:10.5px}}

/* v12 — contratação pública, onboarding profissional e assinatura Danxis */
.sales-body,.onboarding-body{background:#f7f9f9;color:#0a1d2d}.sales-body .topbar,.onboarding-body .topbar{display:none}
.sales-container{width:min(1180px,calc(100% - 40px));margin:0 auto}.sales-nav{height:72px;background:#fff;border-bottom:1px solid #dce5e6;display:flex;align-items:center;position:sticky;top:0;z-index:40}.sales-nav .sales-container{display:flex;align-items:center;justify-content:space-between;gap:24px}.sales-nav nav{display:flex;align-items:center;gap:20px}.sales-nav nav>a:not(.btn){font-size:11px;font-weight:750;color:#173244;text-decoration:none}.sales-brand{display:flex;align-items:center;gap:10px;color:#0a1d2d;text-decoration:none;font-size:12px}.sales-brand>span:last-child{display:grid;line-height:1.15}.sales-brand b{font-size:9.5px;color:#2d6d67;font-weight:750}.sales-mark{display:grid!important;place-items:center;width:34px;height:34px;border-radius:9px;background:#0b2a42;color:#fff!important;font-weight:900!important;letter-spacing:-.6px}
.sales-hero{padding:76px 0 56px;background:linear-gradient(145deg,#f7fbfa 0%,#f7f5ef 53%,#eef5f4 100%)}.sales-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:58px;align-items:center}.sales-eyebrow{display:inline-flex;align-items:center;gap:7px;font-size:9.5px;font-weight:850;letter-spacing:.75px;text-transform:uppercase;color:#2a7069;margin-bottom:15px}.sales-eyebrow:before{content:"";width:23px;height:2px;background:#2a7069}.sales-copy h1,.checkout-page h1,.pending-shell h1{font-size:clamp(34px,4.4vw,62px);letter-spacing:-2.2px;line-height:1.02;margin:0;color:#0a2337;max-width:750px}.sales-copy>p{font-size:15px;line-height:1.65;color:#42565f;max-width:680px;margin:22px 0}.sales-actions{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0 18px}.sales-big{min-height:46px!important;padding:0 18px!important;font-size:11px!important}.sales-trust{display:flex;gap:17px;flex-wrap:wrap;color:#465b62;font-size:10px}.sales-trust span:before{content:"✓";font-weight:900;color:#2a7069;margin-right:6px}
.sales-product{border:1px solid #cadbd9;border-radius:18px;background:#fff;padding:12px;box-shadow:0 20px 50px rgba(20,55,66,.09)}.sales-screen{border:1px solid #dce5e5;border-radius:12px;overflow:hidden;background:#f8faf9;min-height:390px;display:grid;grid-template-columns:92px 1fr}.sales-screen-side{background:#0a2941;padding:17px 10px;display:grid;align-content:start;gap:9px}.sales-screen-side i{height:8px;background:rgba(255,255,255,.23);border-radius:10px}.sales-screen-side i:first-child{height:25px;background:rgba(255,255,255,.9);margin-bottom:10px}.sales-screen-main{padding:22px}.sales-screen-top{height:42px;border-bottom:1px solid #d9e3e4;margin-bottom:16px}.sales-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sales-kpi{height:76px;border:1px solid #d8e4e3;background:#fff;border-radius:9px;padding:12px}.sales-kpi:before,.sales-kpi:after{content:"";display:block;border-radius:6px;background:#d9e5e3}.sales-kpi:before{height:7px;width:55%;margin-bottom:15px}.sales-kpi:after{height:16px;width:38%;background:#86b9b2}.sales-schedule{margin-top:12px;height:188px;border:1px solid #d8e4e3;border-radius:9px;background:repeating-linear-gradient(to bottom,#fff 0,#fff 33px,#e9efef 34px)}
.sales-section{padding:66px 0}.sales-section.ivory{background:#f5f2eb}.sales-section-head{max-width:720px;margin-bottom:30px}.sales-section-head h2{font-size:30px;letter-spacing:-.9px;color:#0a2337;margin:0 0 10px}.sales-section-head p{color:#53666d;line-height:1.6;margin:0}.sales-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sales-feature{background:#fff;border:1px solid #d9e4e3;border-radius:13px;padding:20px;min-height:155px}.sales-feature b{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;background:#eaf5f2;color:#245f59;margin-bottom:14px;font-size:10px}.sales-feature h3{margin:0 0 7px;color:#0a2337;font-size:13px}.sales-feature p{font-size:10.5px;line-height:1.6;color:#52656c;margin:0}
.sales-plan{display:grid;grid-template-columns:1fr 360px;gap:34px;align-items:center;border:1px solid #cbdcda;border-radius:18px;background:#fff;padding:34px}.sales-plan h2{font-size:28px;margin:0 0 9px}.sales-plan p{color:#52666d;line-height:1.65}.sales-price{display:flex;align-items:baseline;gap:5px;color:#0a2941}.sales-price strong{font-size:36px;letter-spacing:-1.5px}.sales-price span{font-size:11px;color:#66777d}.sales-plan-actions{display:grid;gap:9px}.sales-foot{padding:26px 0;border-top:1px solid #dce5e6;background:#fff}.sales-foot .sales-container{display:flex;justify-content:space-between;gap:20px;color:#66777d;font-size:9.5px}
.checkout-page{min-height:calc(100vh - 72px);display:flex;align-items:center;padding:56px 20px;background:linear-gradient(145deg,#f7fbfa,#f5f1e9)}.checkout-wrap{width:min(1040px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:54px;align-items:center}.checkout-page h1{font-size:45px;max-width:570px}.checkout-page section>p{font-size:13px;line-height:1.65;color:#53666e;max-width:590px}.checkout-steps{display:grid;gap:9px;margin-top:25px}.checkout-steps>div{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #d9e3e2}.checkout-steps b,.onboarding-title>b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#e5f2ef;color:#245f59;font-size:10px;flex:0 0 auto}.checkout-steps span{display:grid;gap:2px}.checkout-steps strong{font-size:11px;color:#173244}.checkout-steps small{font-size:9.5px;color:#64757b}.checkout-card{background:#fff;border:1px solid #cbdcda;border-radius:18px;padding:27px;box-shadow:0 18px 50px rgba(15,55,65,.08)}.checkout-card>span{font-size:8.5px;letter-spacing:.8px;font-weight:850;color:#2a7069}.checkout-card h2{font-size:20px;margin:7px 0 18px}.checkout-price{display:flex;align-items:baseline;gap:5px;margin-bottom:16px}.checkout-price strong{font-size:37px;color:#0a2941;letter-spacing:-1.5px}.checkout-price small{font-size:10px;color:#68797f}.checkout-note{font-size:9px;line-height:1.55;color:#6b7b80;margin:14px 0 0}
.onboarding-body{background:#f2f6f5}.onboarding-wrap{width:min(980px,calc(100% - 36px));margin:38px auto 70px}.onboarding-intro{text-align:center;max-width:720px;margin:0 auto 25px}.onboarding-intro h1{font-size:34px;color:#0a2337;margin:7px 0 10px;letter-spacing:-1px}.onboarding-intro p{font-size:11px;color:#5a6d73;line-height:1.65}.onboarding-form{display:grid;gap:12px}.onboarding-card{background:#fff;border:1px solid #d5e1e0;border-radius:14px;padding:22px}.onboarding-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.onboarding-title h2{font-size:15px;margin:1px 0 4px;color:#0a2337}.onboarding-title p{font-size:9.8px;color:#66777d;margin:0;line-height:1.5}.contract-box{border:1px solid #cbd9d9;border-radius:11px;overflow:hidden;background:#fffdf9}.contract-meta{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #dde6e4;background:#edf6f3;font-size:9.5px}.contract-meta strong{color:#173244}.contract-meta span{color:#607279}.contract-box .contract-text{max-height:460px;overflow-y:auto;padding:17px;font-size:10px;line-height:1.68;color:#293f49;white-space:normal}.contract-accept{margin-top:12px}.onboarding-submit{min-height:50px!important;font-size:11.5px!important}
.pending-shell{min-height:100vh;background:linear-gradient(145deg,#f8fbfa,#f2f0e9)}.pending-shell>header{height:72px;background:#fff;border-bottom:1px solid #dbe5e5;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1040px)/2))}.pending-shell>header>a:last-child{font-size:10px;color:#41575f}.pending-shell>main{width:min(1040px,calc(100% - 36px));margin:0 auto;padding:54px 0 72px}.pending-shell h1{font-size:42px;max-width:720px}.pending-shell>main>p{color:#566a71;max-width:760px;line-height:1.65}.approval-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:28px 0}.approval-grid article{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:11px;background:#fff;border:1px solid #d4e0df;border-radius:12px;padding:15px}.approval-grid article>span{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;background:#edf5f3;color:#2a6b65;font-weight:850;font-size:10px}.approval-grid article div{display:grid;gap:2px}.approval-grid article strong{font-size:10.5px;color:#173244}.approval-grid article small{font-size:9px;color:#65777d}.pending-payment,.pending-help{background:#fff;border:1px solid #d4e0df;border-radius:13px;padding:21px;margin-top:12px}.pending-payment h2{font-size:16px;margin:0 0 5px}.pending-payment>p,.pending-help p{font-size:10px;color:#61747a;line-height:1.6}.pending-help strong{font-size:11px;color:#173244}
@media(max-width:900px){.sales-hero-grid,.checkout-wrap,.sales-plan{grid-template-columns:1fr}.sales-product{max-width:620px}.checkout-card{max-width:520px}.sales-feature-grid{grid-template-columns:1fr 1fr}.approval-grid{grid-template-columns:1fr}}
@media(max-width:620px){.sales-container{width:min(100% - 24px,1180px)}.sales-nav{height:64px}.sales-nav nav>a:not(.btn){display:none}.sales-brand>span:last-child{display:none}.sales-hero{padding:48px 0 38px}.sales-copy h1{font-size:38px;letter-spacing:-1.4px}.sales-hero-grid{gap:30px}.sales-product{display:none}.sales-feature-grid{grid-template-columns:1fr}.sales-plan{padding:22px}.sales-foot .sales-container{flex-direction:column}.checkout-page{padding:36px 14px}.checkout-page h1{font-size:36px}.onboarding-wrap{width:calc(100% - 20px);margin-top:20px}.onboarding-card{padding:15px}.contract-box .contract-text{max-height:390px}.pending-shell>main{width:calc(100% - 22px);padding-top:36px}.pending-shell h1{font-size:34px}.approval-grid article{grid-template-columns:32px 1fr}.approval-grid article>.badge{grid-column:2}.pending-shell>header{padding:0 12px}.pending-shell>header .sales-brand>span:last-child{display:grid}}

/* v12.1 — acabamento da landing conforme estrutura HTML da versão */
.sales-hero-grid>div:first-child h1{font-size:clamp(34px,4.4vw,62px);letter-spacing:-2.2px;line-height:1.02;margin:0;color:#0a2337;max-width:750px}.sales-hero-grid>div:first-child>p{font-size:15px;line-height:1.65;color:#42565f;max-width:680px;margin:22px 0}.sales-screen{display:block;min-height:390px}.sales-screen-top{height:52px;margin:0;display:flex;align-items:center;gap:6px;padding:0 15px;border-bottom:1px solid #d9e3e4;background:#fff}.sales-screen-top i{width:7px;height:7px;border-radius:50%;background:#cad9d8}.sales-screen-top strong{margin-left:auto;font-size:9px;color:#415c63}.sales-screen-body{min-height:338px;display:grid;grid-template-columns:125px 1fr}.sales-screen-body>aside{background:#0a2941;color:#dceaf0;padding:20px 13px;display:grid;align-content:start;gap:13px;font-size:9px}.sales-screen-body>aside b{color:#fff}.sales-screen-body>aside span{opacity:.75}.sales-screen-body>div{padding:20px;background:#f7f9f9}.sales-mini-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sales-mini-kpis article,.sales-feature-card{background:#fff;border:1px solid #d8e4e3;border-radius:9px;padding:13px}.sales-mini-kpis small,.sales-feature-card small{display:block;color:#6c7b80;font-size:8px;margin-bottom:6px}.sales-mini-kpis b{font-size:11px;color:#0a2941}.sales-feature-card{margin-top:11px;min-height:165px}.sales-feature-card h3{font-size:14px;color:#0a2941;margin:25px 0 8px}.sales-feature-card p{font-size:9.5px;line-height:1.55;color:#68787d;max-width:260px}
.sales-heading{max-width:720px;margin-bottom:28px}.sales-heading>span{font-size:9px;font-weight:850;letter-spacing:.75px;text-transform:uppercase;color:#2a7069}.sales-heading h2{font-size:30px;letter-spacing:-.9px;color:#0a2337;margin:7px 0 10px}.sales-heading p{color:#53666d;line-height:1.6;margin:0}.sales-features{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}.sales-features article{background:#fff;border:1px solid #d9e4e3;border-radius:13px;padding:19px;min-height:160px}.sales-features article b{display:grid;place-items:center;width:31px;height:31px;border-radius:8px;background:#eaf5f2;color:#245f59;margin-bottom:14px;font-size:9px}.sales-features h3{margin:0 0 7px;color:#0a2337;font-size:12px}.sales-features p{font-size:10px;line-height:1.6;color:#52656c;margin:0}.sales-plan-section{background:#f5f2eb}.sales-plan ul{padding-left:18px;color:#445a62;font-size:10.5px;line-height:1.9;margin:17px 0 0}.sales-plan>.sales-price{display:flex;flex-direction:column;align-items:stretch;gap:7px;border-left:1px solid #dce5e4;padding-left:29px}.sales-plan>.sales-price>small{font-size:9px;color:#66777d;text-transform:uppercase;letter-spacing:.5px}.sales-plan>.sales-price>strong{font-size:52px;line-height:1;color:#0a2941;letter-spacing:-2px}.sales-plan>.sales-price sup{font-size:16px;vertical-align:top;position:relative;top:8px;margin-right:4px}.sales-plan>.sales-price em{font-size:26px;font-style:normal;letter-spacing:-1px}.sales-plan>.sales-price>span{font-size:10px;color:#66777d;margin-bottom:9px}.sales-login-link{text-align:center;color:#2a6f69;font-weight:750;font-size:9.5px;text-decoration:none}.sales-footer{padding:24px 0;border-top:1px solid #dce5e6;background:#fff}.sales-footer .sales-container{display:flex;justify-content:space-between;gap:20px;color:#66777d;font-size:9.5px}.sales-footer strong{color:#173244}
@media(max-width:900px){.sales-features{grid-template-columns:1fr 1fr}.sales-plan>.sales-price{border-left:0;border-top:1px solid #dce5e4;padding:24px 0 0}}
@media(max-width:620px){.sales-features{grid-template-columns:1fr}.sales-footer .sales-container{flex-direction:column}.sales-screen-body{grid-template-columns:95px 1fr}}

/* v14 — pagamento da mensalidade Danxis e fila de aprovação */
.payment-choice-layout{align-items:start}.payment-options-panel{display:grid;gap:13px}.pay-option{background:#fff;border:1px solid #d4e1e0;border-radius:14px;padding:20px;display:grid;align-content:start;gap:11px}.pay-option-title{display:flex;align-items:center;gap:10px}.pay-option-title h3{font-size:12px;color:#0a2941;margin:0 0 3px}.pay-option-title p{font-size:9px;color:#66777d;margin:0}.pay-icon{width:35px;height:35px;border-radius:9px;background:#eaf5f2;color:#245f59;display:grid;place-items:center;font-weight:900;font-size:10px;flex:0 0 auto}.mp-card-form{display:grid;gap:10px}.mp-field{min-height:44px;border:1px solid #cad9da;border-radius:8px;background:#fff;padding:10px}.mp-progress{width:100%;height:5px}.notice.compact{padding:10px 12px;font-size:9.2px;line-height:1.5}.manual-refund-box{max-width:300px;border:1px solid #e6b9b9;background:#fff6f6;border-radius:9px;padding:10px;display:grid;gap:8px}.manual-refund-box strong{font-size:9.5px;color:#872e2e}.manual-refund-box small{font-size:8.8px;line-height:1.5;color:#6b4545;white-space:normal}
@media(max-width:760px){.payment-choice-layout{grid-template-columns:1fr}}

/* v19 — layout acolhedor da página de contratação */
.warm-signup-page{padding:28px 0 48px;background:linear-gradient(180deg,#efe2d2 0%,#f5efe6 24%,#f7f5f1 100%)}
.warm-signup-shell{width:min(1380px,calc(100% - 36px));margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr);gap:22px;align-items:stretch}
.warm-signup-hero{display:grid;grid-template-columns:minmax(360px,.95fr) minmax(320px,.85fr);background:linear-gradient(135deg,#f6efe6 0%,#f3eadf 100%);border:1px solid #e3d9cc;border-radius:30px;overflow:hidden;min-height:760px;box-shadow:0 22px 60px rgba(80,53,34,.08)}
.warm-signup-copy{padding:38px 34px 28px;display:flex;flex-direction:column;gap:16px;position:relative;background:radial-gradient(circle at top left,#fffefb 0,#f8f2ea 68%,#f1e7db 100%)}
.warm-signup-copy .brand{color:#173a33}
.warm-signup-copy .brand-mark.warm{border-color:#b9cbbf;background:#eef4ef;color:#1f5147}
.warm-signup-copy .sales-eyebrow{color:#2e6a60}
.warm-signup-copy h1{font-family:Georgia,serif;font-size:54px;line-height:1.02;letter-spacing:-2px;color:#173a33;margin:0;max-width:430px}
.warm-signup-copy>p{font-size:15px;line-height:1.75;color:#4a595a;max-width:460px;margin:0}
.warm-signup-features{display:grid;gap:10px;margin-top:2px}
.warm-signup-features article{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid #e2ddd3;border-radius:16px;background:rgba(255,255,255,.62);backdrop-filter:blur(4px)}
.warm-signup-features b,.warm-step-list b{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#edf1e8;border:1px solid #d2ddcf;color:#245247;font-size:12px;flex:0 0 auto}
.warm-signup-features strong,.warm-step-list strong{display:block;font-size:12.5px;color:#18353e;margin-bottom:2px}
.warm-signup-features span,.warm-step-list span{display:block;font-size:10px;line-height:1.6;color:#5c6b6d}
.warm-signup-quote{margin-top:auto;background:rgba(255,255,255,.74);border:1px solid #e5ddd3;border-radius:20px;padding:16px 18px}
.warm-signup-quote p{margin:0 0 7px;font-size:12px;line-height:1.75;color:#566567}
.warm-signup-quote small{color:#6d7a7d;font-size:10px}
.warm-signup-scene{position:relative;background:linear-gradient(180deg,#eadac8 0%,#f4eee7 100%);display:flex;align-items:flex-end;justify-content:center;padding:0}
.warm-signup-scene img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
.warm-signup-panel{background:rgba(255,255,255,.88);border:1px solid #e7e4df;border-radius:30px;padding:24px;display:grid;gap:18px;backdrop-filter:blur(8px);box-shadow:0 18px 52px rgba(30,55,40,.08)}
.warm-panel-notice{padding:13px 16px;border-radius:18px;background:#f4f8f4;border:1px solid #d7e4d8;color:#37584d;font-size:11px;font-weight:700;text-align:center}
.warm-panel-card{background:#fff;border:1px solid #ebebe5;border-radius:24px;padding:22px}
.warm-panel-card.steps{padding-bottom:12px}
.warm-panel-header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:14px}
.warm-panel-header span{display:block;font-size:9px;letter-spacing:.7px;color:#5f726f;font-weight:800;margin-bottom:7px}
.warm-panel-header strong{display:block;font-family:Georgia,serif;font-size:18px;color:#173a33;line-height:1.2}
.warm-panel-header em{font-style:normal;background:#e8efe1;color:#476253;border-radius:999px;padding:8px 12px;font-size:10px;font-weight:800;white-space:nowrap}
.warm-panel-price{display:flex;align-items:flex-end;gap:5px;margin-bottom:8px}.warm-panel-price strong{font-size:58px;line-height:1;color:#134537;letter-spacing:-2px}.warm-panel-price small{font-size:16px;color:#4f625f;margin-bottom:7px}
.warm-panel-card>p{font-size:12px;color:#5f6d6f;line-height:1.65;margin:0 0 15px}
.warm-panel-list{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:9px}
.warm-panel-list li{position:relative;padding-left:24px;font-size:11px;color:#2e4747;line-height:1.55}
.warm-panel-list li:before{content:"✓";position:absolute;left:0;top:0;color:#2d8a52;font-weight:900}
.warm-step-list{display:grid;gap:11px}
.warm-step-list article{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:flex-start;padding:6px 0}
.warm-panel-card.steps h2{font-family:Georgia,serif;font-size:20px;color:#173a33;margin:0 0 8px}
.warm-panel-footer{background:#f4f0ea;border:1px solid #e6ddd2;color:#59696a;border-radius:18px;padding:16px 18px;font-size:11px;line-height:1.65}
.warm-panel-footer strong{color:#173a33}

@media(max-width:1180px){.warm-signup-shell{grid-template-columns:1fr}.warm-signup-panel{max-width:880px;margin:0 auto}.warm-signup-hero{grid-template-columns:1fr 360px;min-height:unset}}
@media(max-width:820px){.warm-signup-page{padding:18px 0 30px}.warm-signup-shell{width:min(100% - 20px,1380px);gap:16px}.warm-signup-hero{grid-template-columns:1fr;border-radius:24px}.warm-signup-copy{padding:26px 20px}.warm-signup-copy h1{font-size:40px;max-width:none}.warm-signup-copy>p{font-size:13px}.warm-signup-scene{min-height:360px}.warm-signup-panel{padding:16px;border-radius:24px}.warm-panel-card{padding:18px}.warm-panel-price strong{font-size:48px}.warm-panel-header{flex-direction:column;align-items:flex-start}.warm-panel-header em{padding:6px 10px}}

/* ===== V21 — contratação simples, estável e com a identidade do protótipo aprovado ===== */
.contract-simple-body{background:#fff;color:#090909}
.contract-simple-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.contract-simple-nav{height:78px;background:#fff;border-bottom:1px solid #d9e2de;display:flex;align-items:center;position:sticky;top:0;z-index:60}
.contract-simple-nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.contract-simple-brand{display:flex;align-items:center;text-decoration:none}
.contract-simple-brand img{display:block;height:31px;width:auto;object-fit:contain}
.contract-simple-nav nav{display:flex;align-items:center;gap:12px}
.contract-simple-nav nav>a{font-size:12px;font-weight:750;color:#0a0a0a;text-decoration:none;padding:10px 12px;border-radius:999px}
.contract-simple-nav .contract-simple-login{padding:10px 16px;background:#e3e9e5;border:1px solid #a9bbb4;color:#0f3044}

.contract-simple-page{background:#fff}
.contract-simple-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#0f3044 0%,#244755 46%,#59685f 100%);padding:72px 0 76px}
.contract-simple-hero:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(130,188,209,.14);border-radius:50%;right:-180px;top:-250px;pointer-events:none}
.contract-simple-hero:after{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(225,214,196,.12);border-radius:50%;right:-270px;bottom:-420px;pointer-events:none}
.contract-simple-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr);gap:72px;align-items:center}
.contract-simple-copy{color:#fff;max-width:690px}
.contract-simple-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.11em;font-weight:850;color:#fff;margin-bottom:16px}
.contract-simple-eyebrow i{width:8px;height:8px;background:#fff;border-radius:50%;display:block}
.contract-simple-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,5vw,67px);font-weight:500;letter-spacing:-2.5px;line-height:.98;margin:0 0 22px;color:#fff;max-width:690px}
.contract-simple-copy>p{font-size:14px;line-height:1.82;color:#f5f7f5;margin:0;max-width:650px}
.contract-simple-checks{display:flex;flex-wrap:wrap;gap:12px 18px;margin:28px 0 24px}
.contract-simple-checks>div{display:flex;align-items:center;gap:8px;color:#fff;font-size:11px;font-weight:700}
.contract-simple-checks b{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.32);background:rgba(255,255,255,.10);font-size:10px}
.contract-simple-note{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);border-radius:18px;padding:16px 18px;max-width:620px}
.contract-simple-note strong{display:block;font-size:11px;color:#fff;margin-bottom:4px}
.contract-simple-note span{display:block;font-size:11px;line-height:1.65;color:#e2ebe7}

.contract-simple-price-card{background:#fff;border:1px solid #d8e1dc;border-radius:32px;padding:32px;box-shadow:0 22px 46px rgba(4,17,24,.18);color:#080808}
.contract-simple-label{display:block;font-size:9px;letter-spacing:.11em;text-transform:uppercase;font-weight:900;color:#173944;margin-bottom:8px}
.contract-simple-price-card h2{font-size:20px;line-height:1.2;margin:0 0 25px;color:#080808}
.contract-simple-price{display:flex;align-items:flex-start;gap:6px;margin:0 0 24px;color:#080808}
.contract-simple-price sup{font-size:13px;font-weight:800;margin-top:8px}
.contract-simple-price strong{font-family:Georgia,"Times New Roman",serif;font-size:58px;line-height:.88;font-weight:500;letter-spacing:-2px}
.contract-simple-price span{font-size:11px;align-self:flex-end;margin-bottom:5px}
.contract-simple-benefits{display:grid;gap:12px;padding:20px 0;border-top:1px solid #dce4df;border-bottom:1px solid #dce4df;margin-bottom:22px}
.contract-simple-benefits>div{display:flex;justify-content:space-between;gap:20px;font-size:11px}
.contract-simple-benefits span,.contract-simple-benefits b{color:#080808}
.contract-simple-button{min-height:54px;border-radius:999px;background:#0f3044;color:#fff;display:flex;align-items:center;justify-content:center;gap:13px;text-decoration:none;font-size:12px;font-weight:850;padding:0 22px}
.contract-simple-button:hover{background:#173f50}
.contract-simple-already{text-align:center;font-size:10px;margin:14px 0 0;color:#111}
.contract-simple-already a{color:#111;text-decoration:underline;text-underline-offset:3px}

.contract-simple-steps-section{padding:76px 0 82px;background:#fff}
.contract-simple-section-head{max-width:720px;margin-bottom:34px}
.contract-simple-section-head>span{font-size:10px;letter-spacing:.1em;font-weight:850;color:#173944}
.contract-simple-section-head h2{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:38px;line-height:1.08;letter-spacing:-1.3px;font-weight:700;color:#080808;margin:10px 0 12px}
.contract-simple-section-head p{font-size:12px;line-height:1.7;color:#080808;margin:0}
.contract-simple-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.contract-simple-steps article{background:#fff;border:1px solid #d6dfda;border-radius:22px;padding:24px;min-height:210px;box-shadow:0 10px 24px rgba(15,48,68,.04)}
.contract-simple-steps article>b{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#0f3044;color:#fff;font-size:12px;margin-bottom:24px}
.contract-simple-steps h3{font-size:13px;line-height:1.3;color:#080808;margin:0 0 10px}
.contract-simple-steps p{font-size:12px;line-height:1.65;color:#080808;margin:0}

/* Cadastro/contrato: mesma linguagem visual, sem alterar o funcionamento */
.onboarding-body{background:#f7f8f6;color:#080808}
.onboarding-body .sales-nav{height:78px;background:#fff;border-bottom:1px solid #d9e2de;box-shadow:none}
.onboarding-body .sales-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.onboarding-body .sales-brand{font-size:12px;color:#0f3044;font-weight:800}
.onboarding-body .sales-mark{background:#0f3044}
.onboarding-body .sales-nav nav>a{font-size:11px;color:#080808}
.onboarding-wrap{width:min(980px,calc(100% - 40px));margin:52px auto 80px}
.onboarding-intro{text-align:left;max-width:760px;margin:0 0 30px}
.onboarding-intro .sales-eyebrow{font-size:10px;color:#173944;margin-bottom:10px}
.onboarding-intro h1{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:38px;line-height:1.08;letter-spacing:-1.3px;font-weight:700;color:#080808;margin:0 0 12px}
.onboarding-intro p{font-size:12px;line-height:1.75;color:#080808;margin:0}
.onboarding-form{display:grid;gap:16px}
.onboarding-card{background:#fff;border:1px solid #d6dfda;border-radius:24px;padding:26px;box-shadow:0 10px 24px rgba(15,48,68,.035)}
.onboarding-title{display:flex;align-items:flex-start;gap:14px;margin-bottom:20px}
.onboarding-title>b{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#0f3044;color:#fff;font-size:12px;flex:0 0 auto}
.onboarding-title h2{font-size:15px;line-height:1.3;color:#080808;margin:2px 0 5px}
.onboarding-title p{font-size:12px;line-height:1.6;color:#080808;margin:0}
.onboarding-card .field label{color:#080808;font-size:10.5px;font-weight:750}
.onboarding-card .field input,.onboarding-card .field select,.onboarding-card .field textarea{border-color:#cfdad5;background:#fff;color:#080808;border-radius:12px}
.onboarding-card .small,.onboarding-card .muted{color:#3d5456!important;font-size:10.5px}
.onboarding-card .notice{border-radius:14px}
.contract-box{border:1px solid #cbd7d2;border-radius:16px;background:#fff;overflow:hidden}
.contract-meta{background:#e9f0ec;border-bottom:1px solid #d5e0db;padding:14px 16px}
.contract-box .contract-text{font-size:11px;line-height:1.72;color:#080808;padding:18px;max-height:460px}
.onboarding-submit{background:#0f3044!important;border-color:#0f3044!important;color:#fff!important;min-height:54px!important;border-radius:999px!important;font-size:12px!important}

@media(max-width:980px){
  .contract-simple-grid{grid-template-columns:1fr;gap:38px}
  .contract-simple-price-card{max-width:620px}
  .contract-simple-steps{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .contract-simple-container{width:min(100% - 24px,1180px)}
  .contract-simple-nav{height:66px}
  .contract-simple-brand img{height:27px}
  .contract-simple-nav nav>a:first-child{display:none}
  .contract-simple-hero{padding:46px 0 52px}
  .contract-simple-copy h1{font-size:42px;letter-spacing:-1.5px}
  .contract-simple-copy>p{font-size:12px}
  .contract-simple-price-card{padding:24px;border-radius:26px}
  .contract-simple-price strong{font-size:52px}
  .contract-simple-steps-section{padding:56px 0 62px}
  .contract-simple-section-head h2{font-size:31px}
  .contract-simple-steps{grid-template-columns:1fr}
  .contract-simple-steps article{min-height:auto}
  .onboarding-wrap{width:calc(100% - 22px);margin:32px auto 56px}
  .onboarding-intro h1{font-size:31px}
  .onboarding-card{padding:18px;border-radius:20px}
}


/* ===== V22 — menu da contratação igual ao protótipo + tipografia/cores refinadas ===== */
.flow-topbar{height:78px;background:#fff;border-bottom:1px solid #d9e2de;display:flex;align-items:center;position:sticky;top:0;z-index:70}
.flow-topbar .flow-nav{width:min(1180px,calc(100% - 40px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.flow-topbar .flow-brand{display:flex;align-items:center;flex-shrink:0}
.flow-topbar .flow-brand-logo{display:block;height:31px;width:auto;max-width:100%}
.flow-navlinks{display:flex;align-items:center;gap:12px}
.flow-navlinks>a{font-size:12px;font-weight:750;color:#0a0a0a;text-decoration:none;padding:10px 12px;border-radius:999px;transition:all .18s ease}
.flow-navlinks>a:hover{color:#0f3044}
.flow-navlinks .login{padding:10px 16px;background:#e3e9e5;border:1px solid #a9bbb4;color:#0f3044}
.flow-navlinks .cta{padding:10px 22px;background:#0f3044;color:#fff;border:1px solid #0f3044}
.flow-navlinks .cta:hover{background:#173f50;color:#fff}

.onboarding-body{background:#f7f8f6;color:#122b39}
.onboarding-wrap{width:min(980px,calc(100% - 40px));margin:52px auto 80px}
.onboarding-intro{max-width:820px;margin:0 0 32px}
.onboarding-intro .sales-eyebrow{font-size:10px;letter-spacing:.09em;color:#244b55;margin-bottom:12px}
.onboarding-intro h1{font-size:clamp(36px,4.2vw,54px);line-height:1.05;letter-spacing:-1.6px;font-weight:800;color:#07131c;margin:0 0 12px}
.onboarding-intro p{font-size:12px;line-height:1.8;color:#173244;margin:0;max-width:780px}
.onboarding-card{background:#fff;border:1px solid #d6dfda;border-radius:24px;padding:26px;box-shadow:0 10px 24px rgba(15,48,68,.035)}
.onboarding-title h2{font-size:16px;line-height:1.25;color:#081018;margin:2px 0 5px;font-weight:500}
.onboarding-title p{font-size:12px;line-height:1.7;color:#314a53;margin:0}
.onboarding-card .field label{color:#081018;font-size:11px;font-weight:750}
.onboarding-card .field input,.onboarding-card .field select,.onboarding-card .field textarea{border-color:#cfdad5;background:#fff;color:#081018;border-radius:12px;font-size:12px}
.onboarding-card .small,.onboarding-card .muted{color:#4a6468!important;font-size:11px}
.onboarding-card .notice{font-size:11px;line-height:1.65}
.contract-box .contract-text{font-size:12px;line-height:1.78;color:#122b39;padding:18px;max-height:460px}
.contract-meta{background:#e9f0ec;border-bottom:1px solid #d5e0db;padding:14px 16px;color:#163642}
.contract-meta strong,.contract-meta span{font-size:11px}

.sales-body .checkout-page h1{color:#081018}
.sales-body .checkout-page p,.sales-body .checkout-page .panel-note,.sales-body .checkout-page .checkout-note,.sales-body .checkout-page .pay-option-title p{color:#173244}
.sales-body .checkout-steps small{color:#4a6468}

@media(max-width:680px){
  .flow-topbar{height:66px}
  .flow-topbar .flow-nav{width:min(100% - 24px,1180px)}
  .flow-topbar .flow-brand-logo{height:24px}
  .flow-navlinks{gap:8px}
  .flow-navlinks>a{padding:9px 11px;font-size:11px}
  .flow-navlinks>a:not(.login):not(.cta){display:none}
  .flow-navlinks .login{display:none}
  .onboarding-wrap{width:calc(100% - 22px);margin:32px auto 56px}
  .onboarding-intro h1{font-size:31px}
}


/* ===== V23 — refinamentos finais de tipografia e estados dos botões ===== */
.navlinks>a,
.navlinks>a:visited{color:var(--v30-black)!important}
.navlinks .login,
.navlinks .login:visited,
.navlinks .login:hover,
.navlinks .login:active,
.navlinks .login:focus{color:var(--v30-black)!important;background:#dfe5e0!important;border-color:#9cb0a8!important}
.navlinks .cta,
.navlinks .cta:visited,
.navlinks .cta:hover,
.navlinks .cta:active,
.navlinks .cta:focus{color:#fff!important;background:linear-gradient(135deg,var(--v30-navy),var(--v30-navy-2))!important;border-color:var(--v30-navy)!important}

.flow-navlinks>a,
.flow-navlinks>a:visited{color:#0a0a0a!important}
.flow-navlinks .login,
.flow-navlinks .login:visited,
.flow-navlinks .login:hover,
.flow-navlinks .login:active,
.flow-navlinks .login:focus{color:#0f3044!important;background:#e3e9e5!important;border-color:#a9bbb4!important}
.flow-navlinks .cta,
.flow-navlinks .cta:visited,
.flow-navlinks .cta:hover,
.flow-navlinks .cta:active,
.flow-navlinks .cta:focus{color:#fff!important;background:#0f3044!important;border-color:#0f3044!important}

.contract-simple-nav nav>a,
.contract-simple-nav nav>a:visited{color:#0a0a0a!important}
.contract-simple-nav .contract-simple-login,
.contract-simple-nav .contract-simple-login:visited,
.contract-simple-nav .contract-simple-login:hover,
.contract-simple-nav .contract-simple-login:active,
.contract-simple-nav .contract-simple-login:focus{color:#0f3044!important;background:#e3e9e5!important;border-color:#a9bbb4!important}
.contract-simple-button,
.contract-simple-button:visited,
.contract-simple-button:hover,
.contract-simple-button:active,
.contract-simple-button:focus,
.btn.primary,
.btn.primary:visited,
.btn.primary:hover,
.btn.primary:active,
.btn.primary:focus{color:#fff!important}

.contract-simple-section-head h2,
.onboarding-intro h1,
.sales-body .checkout-page h1{font-weight:600!important;letter-spacing:-1.1px!important}
.onboarding-intro p strong,
.sales-body .checkout-page p strong,
.contract-simple-section-head p strong{font-weight:600!important;color:inherit!important}

@media(min-width:981px){
  .workflow .section-head,
  .pillars .section-head{
    max-width:none!important;
    display:grid!important;
    grid-template-columns:140px minmax(330px,470px) minmax(250px,1fr)!important;
    align-items:center!important;
    gap:28px!important;
  }
  .workflow .section-head .eyebrow,
  .pillars .section-head .eyebrow{
    display:flex!important;
    align-items:flex-start!important;
    gap:12px!important;
    max-width:140px!important;
    line-height:1.35!important;
    white-space:normal!important;
    margin:0!important;
  }
  .workflow .section-head .eyebrow i,
  .pillars .section-head .eyebrow i{flex:0 0 8px;margin-top:4px}
  .workflow .section-head h2,
  .pillars .section-head h2{margin:0!important}
  .workflow .section-head p,
  .pillars .section-head p{margin:0!important;max-width:none!important}
}


/* ===== V24 — aliviar títulos das seções Como funciona / Plataforma ===== */
.workflow .section-head h2,
.pillars .section-head h2{
  font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size: clamp(34px, 3.2vw, 40px) !important;
  line-height: 1.12 !important;
  font-weight: 500 !important;
  letter-spacing: -1px !important;
  max-width: 560px !important;
}
.workflow .section-head p,
.pillars .section-head p{
  font-size: 12px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
}
.workflow .section-head .eyebrow,
.pillars .section-head .eyebrow{
  font-weight: 700 !important;
  letter-spacing: .03em !important;
}
@media(max-width:980px){
  .workflow .section-head h2,
  .pillars .section-head h2{
    font-size: 32px !important;
    max-width: none !important;
  }
}


/* ===== V25 — restaurar cabeçalhos empilhados do protótipo ===== */
@media(min-width:981px){
  .workflow .section-head,
  .pillars .section-head{
    display:block !important;
    max-width: 1020px !important;
    margin-bottom: 34px !important;
  }
  .workflow .section-head .eyebrow,
  .pillars .section-head .eyebrow{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    max-width:none !important;
    margin:0 0 20px !important;
    white-space:normal !important;
  }
  .workflow .section-head h2,
  .pillars .section-head h2{
    display:block !important;
    max-width: 900px !important;
    margin:0 0 18px !important;
    font-family: Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
    font-size: clamp(40px, 4vw, 58px) !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;
    letter-spacing: -1.4px !important;
  }
  .workflow .section-head p,
  .pillars .section-head p{
    display:block !important;
    max-width: 900px !important;
    margin:0 !important;
    font-size: 12px !important;
    line-height: 1.8 !important;
    font-weight: 400 !important;
  }
}

/* V28 - ajuste visual do formulário de cartão Mercado Pago */
#platform-card-form{display:grid;gap:12px}
#platform-card-form .form-grid{align-items:start}
#platform-card-form .field{gap:6px}
#platform-card-form .mp-field{height:56px;min-height:56px;padding:0 14px;display:flex;align-items:center;overflow:hidden;background:#fff;border:1px solid #cbd6dc;border-radius:12px}
#platform-card-form #mp-card-number,#platform-card-form #mp-expiration,#platform-card-form #mp-security{height:56px;min-height:56px}
#platform-card-form .mp-field iframe{width:100%!important;height:100%!important;min-height:0!important;border:0!important;display:block}
#platform-card-form .field input,#platform-card-form .field select{min-height:50px;height:50px}

/* V29 - checkout mais compacto e fundo menos claro */
.sales-body .checkout-page{
  background:linear-gradient(145deg,#edf2ef 0%,#e7ece8 58%,#ebe6df 100%)!important;
  padding:42px 20px!important;
}
.sales-body .checkout-wrap{gap:40px!important}
.sales-body .checkout-card{
  padding:22px!important;
  border-radius:18px!important;
  box-shadow:0 14px 34px rgba(15,55,65,.07)!important;
}
.sales-body .payment-options-panel{gap:10px!important}
.sales-body .pay-option{
  padding:16px!important;
  gap:9px!important;
  border-radius:16px!important;
}
.sales-body .pay-option-title{gap:8px!important}
.sales-body .pay-option-title h3{margin-bottom:2px!important}
#platform-card-form{gap:9px!important}
#platform-card-form .form-grid{gap:10px!important}
#platform-card-form .field{gap:5px!important}
#platform-card-form .mp-field,
#platform-card-form #mp-card-number,
#platform-card-form #mp-expiration,
#platform-card-form #mp-security{
  height:48px!important;
  min-height:48px!important;
  border-radius:10px!important;
  padding:0 12px!important;
}
#platform-card-form .field input,
#platform-card-form .field select{
  height:46px!important;
  min-height:46px!important;
  border-radius:10px!important;
}
#platform-card-form .field label{font-size:10.5px!important}
.sales-body .panel-note{background:#f2f5f2!important;border-color:#d5dfda!important}


/* V30 - ajustar pagamento lado a lado, botões alinhados e fundo mais suave */
.onboarding-body{
  background:linear-gradient(145deg,#edf2ef 0%,#e7ece8 58%,#ebe6df 100%)!important;
}
.sales-body .checkout-page,
.onboarding-body .onboarding-page{
  background:linear-gradient(145deg,#edf2ef 0%,#e7ece8 58%,#ebe6df 100%)!important;
}
.onboarding-page{min-height:calc(100vh - 72px)}
.payment-options-panel{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px!important;
  align-items:start;
}
.payment-plan-head{grid-column:1 / -1}
.sales-body .pay-option{height:100%}
.sales-body .checkout-page .pay-option .btn,
.sales-body .checkout-page .pay-option .btn.teal,
.sales-body .checkout-page .pay-option .btn.primary,
.sales-body .checkout-page .pay-option button[type="button"]{
  background:#0f3044!important;
  border-color:#0f3044!important;
  color:#fff!important;
}
.sales-body .checkout-page .pay-option .btn:hover,
.sales-body .checkout-page .pay-option .btn.teal:hover,
.sales-body .checkout-page .pay-option .btn.primary:hover,
.sales-body .checkout-page .pay-option button[type="button"]:hover{
  background:#173f50!important;
  border-color:#173f50!important;
}
.sales-body .checkout-page .pay-option .btn:disabled,
.sales-body .checkout-page .pay-option button:disabled{
  opacity:.8!important;
}
.sales-body .checkout-page .pix-direct-box img{width:min(220px,100%)!important;height:auto!important}

@media(max-width:980px){
  .payment-options-panel{grid-template-columns:1fr!important}
  .payment-plan-head{grid-column:auto}
}


/* ===== V31 — pagamento aprovado no protótipo + cadastro no fundo do banner ===== */
.pay31-page{min-height:calc(100vh - 78px);padding:42px 24px 54px;position:relative;overflow:hidden;background:linear-gradient(120deg,#0f3044 0%,#244755 46%,#59685f 100%)}
.pay31-page:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(130,188,209,.14);border-radius:50%;right:-180px;top:-250px;pointer-events:none}.pay31-page:after{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(225,214,196,.12);border-radius:50%;right:-270px;bottom:-420px;pointer-events:none}
.pay31-wrap{width:min(1440px,100%);margin:auto;display:grid;grid-template-columns:minmax(360px,.74fr) minmax(760px,1.26fr);gap:42px;align-items:start;position:relative;z-index:1}
.pay31-intro{padding:10px 0 0;position:sticky;top:108px}.pay31-eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.08em;font-weight:800;color:#fff;text-transform:uppercase;margin-bottom:15px}.pay31-eyebrow:before{content:"";width:24px;height:2px;background:#fff}.pay31-intro h1{font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:46px;line-height:1.04;letter-spacing:-1.8px;font-weight:500;margin:0 0 16px;max-width:560px;color:#fff}.pay31-lead{font-size:12px;line-height:1.8;color:#f4f6f4;max-width:560px;margin:0}.pay31-lead strong{font-weight:650;color:#fff}
.pay31-progress{margin-top:28px;display:grid;border-top:1px solid rgba(255,255,255,.18)}.pay31-step{display:grid;grid-template-columns:32px 1fr;gap:11px;align-items:center;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.18)}.pay31-step b{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.18);font-size:10px}.pay31-step.current b{background:#fff;color:#0f3044;border-color:#fff}.pay31-step strong{display:block;font-size:11px;font-weight:650;color:#fff;margin-bottom:1px}.pay31-step small{font-size:10px;color:#d9e5e1}.pay31-note{margin-top:18px;border-left:3px solid #c5dbd1;padding:4px 0 4px 12px;font-size:10.5px;line-height:1.65;color:#e4ece8;max-width:540px}.pay31-note strong{color:#fff}
.pay31-shell{background:#fff;border:1px solid #ced9d5;border-radius:28px;overflow:hidden;box-shadow:0 18px 45px rgba(15,48,68,.07)}.pay31-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px 18px;border-bottom:1px solid #dfe6e2;background:linear-gradient(90deg,#fff,#f7faf8)}.pay31-head small{display:block;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#2a6968;font-weight:850;margin-bottom:4px}.pay31-head h2{font-size:18px;margin:0;font-weight:600;color:#0a1720}.pay31-price{display:flex;align-items:baseline;gap:5px;white-space:nowrap}.pay31-price strong{font-size:34px;letter-spacing:-1.3px;color:#0f3044;font-weight:700}.pay31-price span{font-size:10px;color:#5b6e73}.pay31-sub{padding:10px 28px;background:#f7f9f8;border-bottom:1px solid #e0e6e3;font-size:10px;color:#4a6066}
.pay31-body{padding:26px 28px 30px}.pay31-chooser{border:1px solid #d7e0dc;border-radius:20px;padding:18px;background:linear-gradient(180deg,#fbfcfc,#f6f9f8)}.pay31-chooser-label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#2a6968;font-weight:800;margin-bottom:6px}.pay31-chooser h3{font-size:22px;line-height:1.2;font-weight:550;margin:0 0 16px;color:#081721}.pay31-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pay31-choice{border:1px solid #cfdad5;background:#fff;border-radius:18px;padding:16px 18px;display:flex;align-items:flex-start;gap:12px;cursor:pointer;text-align:left;transition:.18s ease;color:#0a1117}.pay31-choice:hover{transform:translateY(-1px);border-color:#adc1bb}.pay31-choice.active{border-color:#1f5565;background:#eef5f3;box-shadow:inset 0 0 0 1px #1f5565}.pay31-choice-icon,.pay31-icon{width:42px;height:42px;border-radius:13px;background:#e9f1ee;display:grid;place-items:center;color:#0e5360;flex:0 0 auto}.pay31-choice-icon svg,.pay31-icon svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8}.pay31-choice strong{display:block;font-size:14px;font-weight:650;margin-bottom:3px}.pay31-choice small{display:block;font-size:10px;color:#51656b;line-height:1.55}
.pay31-panel{margin-top:20px;border:1px solid #d7e0dc;border-radius:22px;padding:22px;background:#fff}.pay31-panel[hidden]{display:none!important}.pay31-panel-head{display:flex;align-items:center;gap:11px;margin-bottom:16px}.pay31-panel-head h3{font-size:16px;margin:0 0 2px;font-weight:650;color:#0a1117}.pay31-panel-head p{font-size:10px;color:#465d63;margin:0}.pay31-info{background:#edf5f2;border:1px solid #ccddd7;border-radius:12px;padding:11px 12px;font-size:10px;line-height:1.6;color:#173842;margin-bottom:16px}.pay31-info strong{font-weight:700}.pay31-form{display:grid;gap:10px}.pay31-field{display:grid;gap:5px}.pay31-field label{font-size:10px;font-weight:650;color:#0a1117}.pay31-field input,.pay31-field select,.pay31-mp-field{width:100%;height:44px;border:1px solid #c7d4d5;border-radius:10px;background:#fff;padding:0 12px;outline:none;font-size:12px;color:#0a1117}.pay31-mp-field{display:flex;align-items:center;overflow:hidden}.pay31-mp-field iframe{width:100%!important;height:100%!important;border:0!important}.pay31-row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pay31-btn{width:100%;height:48px;border:0;border-radius:11px;background:#0f3044!important;border-color:#0f3044!important;color:#fff!important;font-weight:800;font-size:11px;display:flex;align-items:center;justify-content:center;cursor:pointer;margin-top:4px}.pay31-btn:hover{background:#173f50!important}.pay31-btn.secondary{margin-top:8px}.pay31-field textarea{width:100%;min-height:92px;border:1px solid #c7d4d5;border-radius:10px;background:#fff;padding:10px 12px;font:inherit;font-size:11px;resize:vertical;color:#0a1117}
.pay31-pix-start,.pay31-pix-live{display:grid;grid-template-columns:1fr 220px;gap:18px;align-items:start}.pay31-pix-start p,.pay31-pix-live p{font-size:11px;line-height:1.78;color:#173244;margin:0 0 16px}.pay31-pix-start small{display:block;margin-top:12px;font-size:9.5px;line-height:1.6;color:#637378}.pay31-qr-placeholder{min-height:220px;border:1px dashed #b9cac5;border-radius:18px;background:#f8faf9;display:grid;place-items:center;text-align:center;padding:20px;color:#4b6267}.pay31-qr-placeholder svg{width:44px;height:44px;stroke:#6c9187;fill:none;stroke-width:1.5;margin-bottom:8px}.pay31-qr-placeholder strong{display:block;color:#163643;font-size:11px;margin-bottom:4px}.pay31-qr-placeholder span{font-size:10px}.pay31-pix-live img{display:block;width:220px;height:220px;object-fit:contain;background:#fff;border:1px solid #dbe4e8;border-radius:12px;padding:8px}

.onboarding-body{background:#0f3044!important}.onboarding-body .onboarding-page{min-height:calc(100vh - 78px);position:relative;overflow:hidden;background:linear-gradient(120deg,#0f3044 0%,#244755 46%,#59685f 100%)!important}.onboarding-body .onboarding-page:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(130,188,209,.14);border-radius:50%;right:-180px;top:-250px;pointer-events:none}.onboarding-body .onboarding-page:after{content:"";position:absolute;width:620px;height:620px;border:1px solid rgba(225,214,196,.12);border-radius:50%;right:-270px;bottom:-420px;pointer-events:none}.onboarding-body .onboarding-wrap{position:relative;z-index:1}.onboarding-body .onboarding-intro .sales-eyebrow{color:#fff!important}.onboarding-body .onboarding-intro .sales-eyebrow:before{background:#fff!important}.onboarding-body .onboarding-intro h1{color:#fff!important}.onboarding-body .onboarding-intro p{color:#eef4f1!important}.onboarding-body .onboarding-intro p strong{color:#fff!important}.onboarding-body .onboarding-card{background:#fff!important}.onboarding-body .onboarding-submit{background:#0f3044!important;color:#fff!important;border-color:#0f3044!important}

@media(max-width:1120px){.pay31-wrap{grid-template-columns:1fr;max-width:980px}.pay31-intro{position:static}}
@media(max-width:760px){.pay31-page{padding:28px 14px 40px}.pay31-intro h1{font-size:36px}.pay31-head{align-items:flex-start;flex-direction:column;gap:10px}.pay31-choice-grid,.pay31-row2,.pay31-pix-start,.pay31-pix-live{grid-template-columns:1fr}.pay31-body{padding:18px}.pay31-head,.pay31-sub{padding-left:18px;padding-right:18px}.pay31-pix-live img{width:min(220px,100%);height:auto}}

/* ===== V32 — aguardando aprovação no fundo do banner principal ===== */
.pending-body{background:#0f3044!important;}
.pending-shell{
  min-height:100vh!important;
  position:relative;
  overflow:hidden;
  background:linear-gradient(120deg,#0f3044 0%,#244755 46%,#59685f 100%)!important;
}
.pending-shell:before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  border:1px solid rgba(130,188,209,.14);
  border-radius:50%;
  right:-180px;
  top:-250px;
  pointer-events:none;
}
.pending-shell:after{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  border:1px solid rgba(225,214,196,.12);
  border-radius:50%;
  right:-270px;
  bottom:-420px;
  pointer-events:none;
}
.pending-shell>header,
.pending-shell>main{position:relative;z-index:1;}
.pending-shell .sales-eyebrow{color:#fff!important;}
.pending-shell .sales-eyebrow:before{background:#fff!important;}
.pending-shell h1{color:#fff!important;}
.pending-shell>main>p{color:#eef4f1!important;}
.pending-shell .approval-grid article,
.pending-shell .pending-payment,
.pending-shell .pending-help{background:#fff!important;}


/* ===== V33 — menu padrão e status contidos em aguardando-aprovacao ===== */
.pending-shell > .flow-topbar{
  height:78px !important;
  min-height:78px !important;
  background:#fff !important;
  border-bottom:1px solid #d9e2de !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:initial !important;
  position:relative !important;
  z-index:70 !important;
}
.pending-shell > .flow-topbar .flow-nav{
  width:min(1180px,calc(100% - 40px)) !important;
  margin:0 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
}
.pending-shell > .flow-topbar .flow-brand-logo{
  height:31px !important;
  width:auto !important;
  display:block !important;
}
.pending-shell > .flow-topbar .flow-navlinks{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
.pending-shell > .flow-topbar .flow-navlinks > a{
  font-size:12px !important;
  color:#0a0a0a !important;
}
.pending-shell > .flow-topbar .flow-navlinks .login{
  color:#0f3044 !important;
  background:#e3e9e5 !important;
  border:1px solid #a9bbb4 !important;
}
.pending-shell > .flow-topbar .flow-navlinks .cta{
  color:#fff !important;
  background:#0f3044 !important;
  border:1px solid #0f3044 !important;
}

.pending-shell .approval-grid article{
  grid-template-columns:36px minmax(0,1fr) !important;
  grid-template-rows:auto auto !important;
  align-items:start !important;
  overflow:hidden !important;
  min-width:0 !important;
}
.pending-shell .approval-grid article > div{
  min-width:0 !important;
}
.pending-shell .approval-grid article > .badge{
  grid-column:2 !important;
  grid-row:2 !important;
  justify-self:start !important;
  align-self:start !important;
  width:max-content !important;
  max-width:100% !important;
  min-width:0 !important;
  margin-top:7px !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}
.pending-shell .approval-grid article strong,
.pending-shell .approval-grid article small{
  min-width:0 !important;
  overflow-wrap:anywhere !important;
}

@media(max-width:680px){
  .pending-shell > .flow-topbar{
    height:66px !important;
    min-height:66px !important;
  }
  .pending-shell > .flow-topbar .flow-nav{
    width:calc(100% - 24px) !important;
  }
  .pending-shell > .flow-topbar .flow-brand-logo{
    height:24px !important;
  }
  .pending-shell > .flow-topbar .flow-navlinks{
    gap:8px !important;
  }
  .pending-shell > .flow-topbar .flow-navlinks > a:not(.login):not(.cta){
    display:none !important;
  }
  .pending-shell > .flow-topbar .flow-navlinks .login{
    display:none !important;
  }
  .pending-shell .approval-grid article{
    grid-template-columns:32px minmax(0,1fr) !important;
  }
}


/* ===== V34 — código do vendedor + WhatsApp comercial ===== */
.pay31-seller-field{margin:0 0 13px!important;}
.pay31-seller-field label{display:flex!important;align-items:baseline!important;gap:5px!important;}
.pay31-seller-field label span{font-size:10px!important;font-weight:500!important;color:#607177!important;}
.pay31-seller-field small{display:block;margin-top:4px;font-size:10px;line-height:1.45;color:#66777c;}
.pay31-seller-field input{text-transform:uppercase;letter-spacing:.025em;}
.seller-code-badge{white-space:nowrap;letter-spacing:.025em;}
.danxis-whatsapp-float{position:fixed;right:22px;bottom:22px;z-index:9999;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:#1FAE57;border:2px solid rgba(255,255,255,.92);transition:transform .18s ease,background .18s ease;}
.danxis-whatsapp-float:hover{transform:translateY(-2px);background:#198C47;}
.danxis-whatsapp-float:focus-visible{outline:3px solid rgba(255,255,255,.9);outline-offset:3px;}
.danxis-whatsapp-float svg{width:27px;height:27px;fill:#fff;display:block;}
@media(max-width:680px){.danxis-whatsapp-float{right:14px;bottom:14px;width:48px;height:48px}.danxis-whatsapp-float svg{width:25px;height:25px}}
@media print{.danxis-whatsapp-float{display:none!important}}


/* ===== V39 — padrão visual dos botões do portal ===== */
.professional-app .app-shell .btn{background:var(--navy)!important;border-color:var(--navy)!important;color:#fff!important;box-shadow:none!important}
.professional-app .app-shell .btn:hover,.professional-app .app-shell .btn:focus{background:var(--navy2)!important;border-color:var(--navy2)!important;color:#fff!important}
.professional-app .app-shell .btn:visited{color:#fff!important}
.manual-booking-card>summary{width:max-content;list-style:none}.manual-booking-card>summary::-webkit-details-marker{display:none}.manual-booking-content{margin-top:16px;padding-top:15px;border-top:1px solid var(--line);max-width:940px}.manual-booking-content .booking-section-title{margin-top:9px}.manual-booking-content .terms-accept{margin-top:4px}

/* ===== V39 — reprodução WebRTC automática ===== */
.room-body video{pointer-events:none!important;-webkit-user-select:none;user-select:none}
.room-body video::-webkit-media-controls,.room-body video::-webkit-media-controls-start-playback-button,.room-body video::-webkit-media-controls-overlay-play-button{display:none!important;-webkit-appearance:none!important;opacity:0!important}
.remote-video,.local-tile video{background:#030b12!important}
@media(max-width:760px){.manual-booking-content .form-grid{grid-template-columns:1fr}}

/* ===== V40 — corrige botão Sair da sala no teleatendimento ===== */
.room-head-actions #leaveRoom,
.room-head-actions #leaveRoom:visited{
  background:#123349!important;
  border-color:#36556a!important;
  color:#fff!important;
  min-width:92px!important;
  border-radius:999px!important;
  padding:6px 12px!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.room-head-actions #leaveRoom:hover,
.room-head-actions #leaveRoom:focus{
  background:#1a435a!important;
  border-color:#527085!important;
  color:#fff!important;
}

/* V41 — agendamento manual guiado pela agenda real */
.manual-slot-field{margin-top:2px}
.manual-slots{min-height:38px;margin-top:8px}
.manual-slots .slot{background:#fff;border-color:#9fb0b7;color:#0f3044;min-width:66px;text-align:center;cursor:pointer}
.manual-slots .slot:hover,.manual-slots .slot.selected{background:#0f3044!important;border-color:#0f3044!important;color:#fff!important}
#manualBookingForm button[disabled]{opacity:.48;cursor:not-allowed}


/* ===== V42 — escolha do visual do blog ===== */
.blog-theme-form{display:grid;gap:14px}.theme-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.theme-choice{display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px;cursor:pointer;transition:.18s ease;overflow:hidden}.theme-choice:hover{border-color:#9eb4bd}.theme-choice.selected{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}.theme-choice>input{position:absolute;opacity:0;pointer-events:none}.theme-preview{height:250px;border:1px solid #d8e1de;border-radius:12px;overflow:hidden;background:#f7f9f8;position:relative}.theme-preview .mini-nav{height:28px;background:#fff;border-bottom:1px solid #d8e1de}.classic-preview .mini-nav{background:var(--navy);border-bottom:0}.classic-preview .mini-hero{height:102px;padding:14px;display:grid;grid-template-columns:74px 1fr 55px;gap:10px;align-items:center;background:linear-gradient(135deg,#fffaf1,#f8fbf8 58%,#f6f1eb)}.theme-preview .mini-photo{display:block;width:62px;height:72px;border-radius:30px;background:#cfded7}.theme-preview .mini-lines{display:block;height:50px;border-radius:5px;background:repeating-linear-gradient(to bottom,#14394b 0 5px,transparent 5px 13px);opacity:.8}.theme-preview .mini-icons{display:block;height:60px;border-radius:7px;background:repeating-linear-gradient(to bottom,#dfeee7 0 14px,transparent 14px 21px)}.classic-preview .mini-two{display:grid;grid-template-columns:1.25fr .75fr;gap:7px;padding:9px;background:#fbfcfb}.classic-preview .mini-two i,.classic-preview .mini-three i{display:block;border-radius:7px;background:#fff;border:1px solid #dfe6e3}.classic-preview .mini-two i{height:42px}.classic-preview .mini-three{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 9px 9px}.classic-preview .mini-three i{height:50px}.modern-preview{background:#edf1ee}.modern-preview .mini-nav{height:28px}.mini-modern-top{height:126px;padding:12px;display:grid;grid-template-columns:64px 1fr 48px 1fr;gap:8px;align-items:center;background:linear-gradient(120deg,#0f3044,#244755 55%,#59685f)}.mini-modern-top .mini-photo{width:58px;height:58px;border-radius:50%;border:3px solid rgba(255,255,255,.8)}.mini-modern-top .mini-lines{height:54px;background:repeating-linear-gradient(to bottom,#fff 0 5px,transparent 5px 13px);opacity:.9}.mini-modern-top .mini-icons{height:58px;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.22) 0 14px,transparent 14px 21px)}.mini-about{display:block;height:94px;border-radius:8px;background:#fff}.mini-modern-bottom{display:grid;grid-template-columns:.92fr 1.08fr;gap:8px;padding:10px}.mini-modern-bottom i{height:72px;border-radius:8px;background:#fff;border:1px solid #d7e0dc}.theme-choice-copy{padding:13px 4px 3px}.theme-choice-copy>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.theme-name{font-size:16px;font-weight:800;color:var(--navy)}.theme-current{font-size:9.5px;font-weight:800;color:var(--success);background:var(--successbg);border-radius:999px;padding:4px 7px;min-height:22px}.theme-current:empty{display:none}.theme-choice-copy p{margin:7px 0 0;color:var(--muted);font-size:10.8px;line-height:1.6}

/* ===== V42 — tema Moderno do blog público ===== */
.public-body.theme-modern{background:#f2efe9}.public-body.theme-modern .public-nav{height:72px;background:#fff;color:#0b1720;border-bottom:1px solid #d6dfdb}.public-body.theme-modern .public-nav .brand-mark{border-color:#aac0b8;color:#0f3044;background:#f6f9f7}.public-body.theme-modern .public-nav .public-cta{background:#0f3044;color:#fff}.public-body.theme-modern .public-links{gap:24px}.public-body.theme-modern .public-footer{background:linear-gradient(110deg,#0f3044,#173f50)}.public-body.theme-modern .article-page{background:#f2efe9}.public-body.theme-modern .article-reader{background:#fff;border:1px solid #d7e0dc;border-radius:18px;padding:26px}.public-body.theme-modern .article-reader h1{color:#0f3044}.public-body.theme-modern .readmore{color:#15586a}

/* A home moderna usa os mesmos dados/recursos do Clássico, reorganizados visualmente. */
.public-home.theme-modern{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-template-rows:auto auto auto auto auto;background:#f2efe9;min-height:100vh}.public-home.theme-modern>.public-nav{grid-column:1/-1;grid-row:1}.public-home.theme-modern>.hero{grid-column:1;grid-row:2;background:linear-gradient(120deg,#0f3044 0%,#244755 70%,#405d5b 100%);padding:36px 0;min-width:0}.public-home.theme-modern>.public-about-section{grid-column:2;grid-row:2;background:linear-gradient(120deg,#405d5b 0%,#52645f 100%);padding:36px 0;min-width:0;display:flex;align-items:stretch}.public-home.theme-modern>.public-agenda-section{grid-column:1;grid-row:3;background:linear-gradient(180deg,#edf1ee,#f2efe9);padding:26px 0 18px;min-width:0}.public-home.theme-modern>.public-content-section{grid-column:2;grid-row:3;background:linear-gradient(180deg,#edf1ee,#f2efe9);padding:26px 0 18px;min-width:0}.public-home.theme-modern>.public-trust-section{grid-column:1/-1;grid-row:4;background:#f2efe9!important;padding:0 0 26px}.public-home.theme-modern>.public-footer{grid-column:1/-1;grid-row:5}.public-home.theme-modern>.hero>.container,.public-home.theme-modern>.public-about-section>.container,.public-home.theme-modern>.public-agenda-section>.container,.public-home.theme-modern>.public-content-section>.container{width:calc(100% - 36px);max-width:none}.public-home.theme-modern .hero-grid{grid-template-columns:245px minmax(250px,1fr) 175px;gap:18px;align-items:center}.public-home.theme-modern .portrait{width:220px;height:220px;border-radius:50%;border:6px solid rgba(255,255,255,.16);justify-self:center;background:#fff}.public-home.theme-modern .hero h1{font-size:45px;line-height:.98;color:#fff}.public-home.theme-modern .hero .crp{color:#b8ddd5}.public-home.theme-modern .hero .bio{color:#eef5f2;font-size:12px;line-height:1.65;margin:17px 0}.public-home.theme-modern .hero .btn{background:#fff!important;color:#0f3044!important;border-color:#fff!important}.public-home.theme-modern .hero .trust-list{gap:10px}.public-home.theme-modern .hero .trust{color:#fff}.public-home.theme-modern .hero .trust-icon{background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.18);color:#fff}.public-home.theme-modern .hero .trust span{color:#d8e7e2}.public-home.theme-modern .profile-content-grid{grid-template-columns:minmax(0,1fr) minmax(230px,.72fr);gap:16px;height:100%;align-items:stretch}.public-home.theme-modern .public-about-section .card{border-color:rgba(255,255,255,.45);border-radius:17px;min-width:0}.public-home.theme-modern .about-card{padding:18px;line-height:1.55;font-size:11px}.public-home.theme-modern .about-card h3{font-size:24px;color:#0f3044}.public-home.theme-modern .public-about-section .card-pad{padding:18px}.public-home.theme-modern .public-about-section .card-title{font-family:Georgia,serif;font-size:22px;font-weight:500;color:#0f3044}.public-home.theme-modern .specialty{background:#e4eeea;border-color:#e4eeea;color:#245348}.public-home.theme-modern .public-agenda-section .section-head,.public-home.theme-modern .public-content-section .section-head{align-items:flex-start}.public-home.theme-modern .public-agenda-section .section-head h2,.public-home.theme-modern .public-content-section .section-head h2{font-size:25px;color:#0f3044}.public-home.theme-modern .public-agenda-section .schedule-layout{grid-template-columns:1fr 1fr;gap:12px}.public-home.theme-modern .public-agenda-section .card,.public-home.theme-modern .public-content-section .article-card{border-color:#d7e0dc;border-radius:14px}.public-home.theme-modern .public-agenda-section .slot:hover,.public-home.theme-modern .public-agenda-section .slot.selected{background:#0f3044;border-color:#0f3044}.public-home.theme-modern .public-content-section .article-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.public-home.theme-modern .public-content-section .article-cover{height:116px}.public-home.theme-modern .public-content-section .article-card h3{font-size:12.5px}.public-home.theme-modern .public-content-section .article-card p{font-size:9.5px}.public-home.theme-modern .public-trust-section .grid-3{gap:14px}.public-home.theme-modern .public-trust-section .card{border-color:#d7e0dc}.public-home.theme-modern .public-trust-section .card-title{color:#0f3044}

@media(max-width:1280px){.public-home.theme-modern{display:block}.public-home.theme-modern>.hero,.public-home.theme-modern>.public-about-section,.public-home.theme-modern>.public-agenda-section,.public-home.theme-modern>.public-content-section,.public-home.theme-modern>.public-trust-section,.public-home.theme-modern>.public-footer{display:block}.public-home.theme-modern>.hero{background:linear-gradient(120deg,#0f3044,#244755 55%,#59685f)}.public-home.theme-modern>.public-about-section{background:#405d5b}.public-home.theme-modern .hero-grid{grid-template-columns:220px 1fr 190px}.public-home.theme-modern .portrait{width:205px;height:205px}.public-home.theme-modern .profile-content-grid{grid-template-columns:1.25fr .75fr}.public-home.theme-modern .public-content-section .article-cover{height:145px}}
@media(max-width:980px){.theme-choice-grid{grid-template-columns:1fr}.public-home.theme-modern .hero-grid{grid-template-columns:1fr;text-align:center}.public-home.theme-modern .portrait{width:220px;height:220px;margin:auto}.public-home.theme-modern .hero .bio{margin-left:auto;margin-right:auto}.public-home.theme-modern .hero .trust-list{grid-template-columns:repeat(3,1fr)}.public-home.theme-modern .profile-content-grid,.public-home.theme-modern .public-agenda-section .schedule-layout{grid-template-columns:1fr}.public-home.theme-modern .public-content-section .article-grid{grid-template-columns:1fr}.public-home.theme-modern .public-content-section .article-cover{height:190px}}
@media(max-width:600px){.theme-preview{height:210px}.public-home.theme-modern .hero h1{font-size:38px}.public-home.theme-modern .hero .trust-list{grid-template-columns:1fr}.public-home.theme-modern>.hero>.container,.public-home.theme-modern>.public-about-section>.container,.public-home.theme-modern>.public-agenda-section>.container,.public-home.theme-modern>.public-content-section>.container{width:calc(100% - 28px)}}

/* ===== V43 — TEMA MODERNO fiel ao protótipo aprovado ===== */
.public-home.theme-modern{display:block!important;background:#f2efe9!important;min-height:100vh!important;color:#0b1720!important;font-size:12px!important;line-height:1.55!important}
.public-home.theme-modern>.public-nav{height:72px!important;background:#fff!important;border-bottom:1px solid #d6dfdb!important;color:#0b1720!important;display:flex!important;position:sticky!important;top:0!important;z-index:50!important}
.public-home.theme-modern>.public-nav .container{width:min(1460px,calc(100% - 48px))!important;max-width:none!important;margin:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:26px!important}
.public-home.theme-modern>.public-nav .brand{color:#0f3044!important;font-size:15px!important;font-weight:700!important;gap:12px!important}
.public-home.theme-modern>.public-nav .brand-mark{width:35px!important;height:35px!important;border-radius:10px!important;border:1px solid #aac0b8!important;background:#f6f9f7!important;color:#0f3044!important;display:grid!important;place-items:center!important}
.public-home.theme-modern>.public-nav .public-links{display:flex!important;align-items:center!important;gap:8px!important;font-weight:650!important}
.public-home.theme-modern>.public-nav .public-links a{padding:9px 12px!important;border-radius:999px!important;color:#111!important}
.public-home.theme-modern>.public-nav .public-cta{background:#0f3044!important;color:#fff!important;padding:10px 18px!important;border-radius:999px!important;font-weight:750!important}

.public-home.theme-modern .modern-profile-hero{position:relative!important;overflow:hidden!important;background:linear-gradient(120deg,#0f3044 0%,#244755 48%,#59685f 100%)!important;padding:30px 0 32px!important}
.public-home.theme-modern .modern-profile-hero:before{content:"";position:absolute;width:580px;height:580px;border:1px solid rgba(255,255,255,.09);border-radius:50%;right:-260px;top:-330px;pointer-events:none}
.public-home.theme-modern .modern-profile-hero:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.07);border-radius:50%;left:-230px;bottom:-320px;pointer-events:none}
.public-home.theme-modern .modern-profile-hero>.container{width:min(1460px,calc(100% - 48px))!important;max-width:none!important;margin:auto!important}
.public-home.theme-modern .modern-profile-grid{position:relative;z-index:1;display:grid;grid-template-columns:250px minmax(290px,.78fr) 190px minmax(285px,.9fr) minmax(240px,.72fr);gap:18px;align-items:stretch}
.public-home.theme-modern .modern-portrait{width:245px;height:245px;border-radius:50%;overflow:hidden;border:7px solid rgba(255,255,255,.14);background:#fff;align-self:center;justify-self:center;display:grid;place-items:center}
.public-home.theme-modern .modern-portrait img{width:100%;height:100%;object-fit:cover;display:block}
.public-home.theme-modern .modern-portrait-placeholder{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(145deg,#c8ded6,#efe3d5);font-family:Georgia,"Times New Roman",serif;font-size:42px;color:#0f3044}
.public-home.theme-modern .modern-profile-main{align-self:center;min-width:0}
.public-home.theme-modern .modern-profile-main h1{font-family:Georgia,"Times New Roman",serif;font-size:46px;line-height:.98;font-weight:500;letter-spacing:-1.4px;color:#fff;margin:0 0 10px;overflow-wrap:anywhere}
.public-home.theme-modern .modern-crp{font-size:14px;font-weight:700;color:#b8ddd5;margin-bottom:18px}
.public-home.theme-modern .modern-bio{font-size:12px;line-height:1.6;color:#eef5f2;max-width:440px;margin:0 0 20px}
.public-home.theme-modern .modern-btn{border:0;border-radius:10px;padding:11px 18px;font-weight:750;cursor:pointer;display:inline-flex;justify-content:center;align-items:center;text-decoration:none}
.public-home.theme-modern .modern-btn-light{background:#fff!important;color:#0f3044!important}
.public-home.theme-modern .modern-btn-dark{background:#0f3044!important;color:#fff!important}
.public-home.theme-modern .modern-submit{width:100%;margin-top:4px}
.public-home.theme-modern .modern-trust-list{display:grid;gap:10px;align-self:center;min-width:0}
.public-home.theme-modern .modern-trust{display:flex;align-items:center;gap:11px;color:#fff;min-width:0}
.public-home.theme-modern .modern-trust-icon{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;font-size:16px;flex:0 0 auto;color:#fff}
.public-home.theme-modern .modern-trust strong{display:block;font-size:11px;margin-bottom:1px;color:#fff}
.public-home.theme-modern .modern-trust span{font-size:10px;color:#d8e7e2;white-space:normal}
.public-home.theme-modern .modern-info-card{background:#fff;border:1px solid rgba(255,255,255,.45);border-radius:17px;padding:18px;min-height:245px;overflow:hidden;min-width:0}
.public-home.theme-modern .modern-info-card h2{font-family:Georgia,"Times New Roman",serif;font-size:22px;font-weight:500;margin:0 0 10px;color:#0f3044}
.public-home.theme-modern .modern-info-card p,.public-home.theme-modern .modern-about-copy{margin:0 0 8px;color:#233c46;font-size:11px;line-height:1.52}
.public-home.theme-modern .modern-info-card strong{color:#0f3044}
.public-home.theme-modern .modern-specialties{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 15px}
.public-home.theme-modern .modern-specialty{background:#e4eeea;color:#245348;border-radius:999px;padding:6px 9px;font-size:9.5px;font-weight:500}
.public-home.theme-modern .modern-open,.public-home.theme-modern .modern-closed{display:inline-flex;border-radius:8px;padding:7px 10px;font-weight:700;font-size:10px}
.public-home.theme-modern .modern-open{background:#e3f0ea;color:#27624e}.public-home.theme-modern .modern-closed{background:#eee9e5;color:#6a5146}

.public-home.theme-modern .modern-main-section{padding:26px 0 18px;background:linear-gradient(180deg,#edf1ee 0%,#f2efe9 100%)}
.public-home.theme-modern .modern-main-section>.container{width:min(1460px,calc(100% - 48px))!important;max-width:none!important;margin:auto!important}
.public-home.theme-modern .modern-content-layout{display:grid;grid-template-columns:.94fr 1.06fr;gap:22px;align-items:start}
.public-home.theme-modern .modern-card{background:#fff;border:1px solid #d7e0dc;border-radius:18px;min-width:0}
.public-home.theme-modern .modern-schedule-card,.public-home.theme-modern .modern-articles-wrap{padding:18px}
.public-home.theme-modern .modern-section-head,.public-home.theme-modern .modern-articles-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:14px}
.public-home.theme-modern .modern-section-head h2,.public-home.theme-modern .modern-articles-head h2{font-family:Georgia,"Times New Roman",serif;font-size:24px;line-height:1.1;font-weight:500;color:#0f3044;margin:0 0 4px}
.public-home.theme-modern .modern-section-head p,.public-home.theme-modern .modern-articles-head p{margin:0;color:#5d6e72}
.public-home.theme-modern .modern-price{text-align:right;white-space:nowrap}.public-home.theme-modern .modern-price strong{font-size:17px;color:#0f3044}.public-home.theme-modern .modern-price span{display:block;font-size:10px;color:#5d6e72}
.public-home.theme-modern .modern-schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.public-home.theme-modern .modern-inner{border:1px solid #d7e0dc;border-radius:14px;padding:14px;background:#fbfcfb;min-width:0}
.public-home.theme-modern .modern-inner label{display:block;font-weight:700;margin-bottom:6px}
.public-home.theme-modern .modern-date-input{width:100%!important;height:42px!important;border:1px solid #c7d4d0!important;border-radius:9px!important;background:#fff!important;padding:0 11px!important;color:#172b33!important}
.public-home.theme-modern .modern-notice{margin-top:12px;padding:12px;border-radius:10px;background:#e8f1ed;color:#254a42;font-size:10px}
.public-home.theme-modern .modern-policy{background:#f5f5f2;color:#526467}
.public-home.theme-modern .modern-slots-title{font-weight:750;margin-bottom:3px}.public-home.theme-modern .modern-slots-sub{color:#5d6e72;font-size:10px;margin-bottom:10px}
.public-home.theme-modern .modern-slots{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:9px!important;margin:0!important}
.public-home.theme-modern .modern-slot{height:38px;border:1px solid #bfcfca;border-radius:9px;background:#fff;color:#165064;font-weight:750;cursor:pointer;padding:0 8px}
.public-home.theme-modern .modern-slot:hover,.public-home.theme-modern .modern-slot.selected{background:#0f3044;border-color:#0f3044;color:#fff}
.public-home.theme-modern .modern-booking-form{margin-top:14px;padding-top:16px;border-top:1px solid #d7e0dc;gap:10px}
.public-home.theme-modern .modern-booking-form .field input,.public-home.theme-modern .modern-booking-form .field select{background:#fff}
.public-home.theme-modern .modern-readmore{color:#15586a;font-weight:750;text-decoration:none}
.public-home.theme-modern .modern-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.public-home.theme-modern .modern-article{overflow:hidden;border:1px solid #d7e0dc;border-radius:14px;background:#fff;min-width:0}
.public-home.theme-modern .modern-article-cover{height:116px;background:linear-gradient(145deg,#dcece5,#eee5d8);overflow:hidden;display:grid;place-items:center}
.public-home.theme-modern .modern-article-cover img{width:100%;height:100%;object-fit:cover;display:block}
.public-home.theme-modern .modern-cover-placeholder{width:100%;height:100%;display:grid;place-items:center;color:#245348;font-weight:700}
.public-home.theme-modern .modern-article-body{padding:12px}
.public-home.theme-modern .modern-category{display:inline-flex;background:#e2eee9;color:#276153;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.public-home.theme-modern .modern-article h3{font-size:12.5px;line-height:1.28;margin:8px 0 7px;color:#111f28}
.public-home.theme-modern .modern-article p{font-size:9.5px;color:#5d6e72;margin:0 0 11px;min-height:42px;line-height:1.55}

.public-home.theme-modern .modern-trust-section{padding:0 0 26px;background:#f2efe9!important}
.public-home.theme-modern .modern-trust-section>.container{width:min(1460px,calc(100% - 48px))!important;max-width:none!important;margin:auto!important}
.public-home.theme-modern .modern-bottom-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.public-home.theme-modern .modern-bottom-card{display:flex;align-items:flex-start;gap:12px;padding:15px 16px;background:#fff;border:1px solid #d7e0dc;border-radius:14px}
.public-home.theme-modern .modern-bottom-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e4eeea;color:#28594d;font-size:16px;flex:0 0 auto}
.public-home.theme-modern .modern-bottom-card:nth-child(2) .modern-bottom-icon{background:#e6e3ec;color:#4a4563}.public-home.theme-modern .modern-bottom-card:nth-child(3) .modern-bottom-icon{background:#f1e7d5;color:#81611e}
.public-home.theme-modern .modern-bottom-card strong{display:block;margin-bottom:2px;color:#0f3044}.public-home.theme-modern .modern-bottom-card span{font-size:10px;color:#5d6e72}
.public-home.theme-modern .modern-footer{background:linear-gradient(110deg,#0f3044,#173f50)!important;color:#fff!important;padding:24px 0!important}
.public-home.theme-modern .modern-footer>.container{width:min(1460px,calc(100% - 48px))!important;max-width:none!important}

@media(max-width:1280px){
  .public-home.theme-modern>.public-nav .container,.public-home.theme-modern .modern-profile-hero>.container,.public-home.theme-modern .modern-main-section>.container,.public-home.theme-modern .modern-trust-section>.container,.public-home.theme-modern .modern-footer>.container{width:min(1180px,calc(100% - 36px))!important}
  .public-home.theme-modern .modern-profile-grid{grid-template-columns:230px minmax(280px,1fr) 190px minmax(280px,1fr);gap:16px}
  .public-home.theme-modern .modern-areas{grid-column:4}.public-home.theme-modern .modern-about{grid-column:1/4}
  .public-home.theme-modern .modern-portrait{width:215px;height:215px}.public-home.theme-modern .modern-profile-main h1{font-size:42px}
}
@media(max-width:1180px){
  .public-home.theme-modern .modern-profile-grid{grid-template-columns:220px 1fr 190px}.public-home.theme-modern .modern-portrait{width:205px;height:205px}.public-home.theme-modern .modern-about{grid-column:1/3}.public-home.theme-modern .modern-areas{grid-column:3}.public-home.theme-modern .modern-profile-main h1{font-size:40px}
}
@media(max-width:980px){
  .public-home.theme-modern .modern-profile-grid,.public-home.theme-modern .modern-content-layout{grid-template-columns:1fr}.public-home.theme-modern .modern-portrait{width:220px;height:220px;margin:auto}.public-home.theme-modern .modern-profile-main{text-align:center}.public-home.theme-modern .modern-bio{margin-left:auto;margin-right:auto}.public-home.theme-modern .modern-trust-list{grid-template-columns:repeat(3,1fr)}.public-home.theme-modern .modern-about,.public-home.theme-modern .modern-areas{grid-column:auto}.public-home.theme-modern .modern-info-card{min-height:auto}.public-home.theme-modern .modern-article-grid{grid-template-columns:1fr}.public-home.theme-modern .modern-article-cover{height:190px}
}
@media(max-width:820px){.public-home.theme-modern>.public-nav .public-links{display:none!important}}
@media(max-width:720px){
  .public-home.theme-modern>.public-nav{height:auto!important;min-height:64px!important;padding:10px 0!important}.public-home.theme-modern>.public-nav .container,.public-home.theme-modern .modern-profile-hero>.container,.public-home.theme-modern .modern-main-section>.container,.public-home.theme-modern .modern-trust-section>.container,.public-home.theme-modern .modern-footer>.container{width:calc(100% - 28px)!important}.public-home.theme-modern .modern-profile-hero{padding:24px 0}.public-home.theme-modern .modern-profile-main h1{font-size:38px}.public-home.theme-modern .modern-trust-list{grid-template-columns:1fr}.public-home.theme-modern .modern-schedule-grid{grid-template-columns:1fr}.public-home.theme-modern .modern-slots{grid-template-columns:repeat(2,1fr)!important}.public-home.theme-modern .modern-bottom-cards{grid-template-columns:1fr}.public-home.theme-modern .modern-section-head,.public-home.theme-modern .modern-articles-head{align-items:flex-start;flex-direction:column}.public-home.theme-modern .modern-price{text-align:left}
}

/* ===== V44 — leitura de posts respeita o tema Moderno ===== */
.public-body.theme-modern{
  background:linear-gradient(120deg,#0f3044 0%,#244755 48%,#59685f 100%)!important;
  min-height:100vh;
}
.public-body.theme-modern .article-page{
  position:relative;
  overflow:hidden;
  min-height:calc(100vh - 72px);
  padding:46px 24px 58px;
  background:linear-gradient(120deg,#0f3044 0%,#244755 48%,#59685f 100%)!important;
}
.public-body.theme-modern .article-page:before{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:50%;
  right:-285px;
  top:-330px;
  pointer-events:none;
}
.public-body.theme-modern .article-page:after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  border:1px solid rgba(205,229,220,.10);
  border-radius:50%;
  left:-280px;
  bottom:-350px;
  pointer-events:none;
}
.public-body.theme-modern .article-reader{
  position:relative;
  z-index:1;
  width:min(920px,100%);
  margin:0 auto;
  background:#fff!important;
  border:1px solid rgba(255,255,255,.58)!important;
  border-radius:24px!important;
  padding:34px 38px 32px!important;
  box-shadow:0 18px 44px rgba(4,24,34,.12);
}
.public-body.theme-modern .article-reader>.readmore{
  display:inline-flex;
  align-items:center;
  min-height:36px;
  padding:8px 12px;
  border-radius:999px;
  background:#e7efeb;
  color:#174d58!important;
  font-weight:750;
}
.public-body.theme-modern .article-reader .category{
  background:#e2eee9;
  color:#276153;
  border-radius:999px;
  padding:6px 10px;
}
.public-body.theme-modern .article-reader h1{
  font-family:Georgia,"Times New Roman",serif;
  color:#0f3044!important;
  font-size:44px;
  line-height:1.06;
  font-weight:500;
  letter-spacing:-1.2px;
  margin-top:15px;
}
.public-body.theme-modern .article-reader .lead{
  color:#405860;
  font-size:13px;
  line-height:1.75;
}
.public-body.theme-modern .article-reader>img{
  border-radius:18px!important;
  border:1px solid #d7e0dc;
}
.public-body.theme-modern .article-text{
  color:#1d343d;
  font-size:12.5px;
  line-height:1.9;
}
.public-body.theme-modern .authorbox{
  margin-top:30px;
  padding-top:20px;
  border-top:1px solid #d7e0dc;
}
.public-body.theme-modern .authorbox .btn{
  background:#0f3044!important;
  color:#fff!important;
  border-color:#0f3044!important;
}
.public-body.theme-modern .public-footer{
  background:linear-gradient(110deg,#0f3044,#173f50)!important;
}
@media(max-width:680px){
  .public-body.theme-modern .article-page{padding:26px 14px 38px;min-height:calc(100vh - 66px)}
  .public-body.theme-modern .article-reader{padding:24px 18px 22px!important;border-radius:18px!important}
  .public-body.theme-modern .article-reader h1{font-size:34px;letter-spacing:-.7px}
}

/* ===== V45 — coerência visual do Clássico + textos pretos no Moderno ===== */
/* CLÁSSICO: preserva a estrutura, elimina o azul-marinho escuro e unifica a paleta */
.public-body.theme-classic{
  background:#fffdf9;
  color:#000;
}
.public-body.theme-classic .public-nav{
  background:linear-gradient(90deg,#eef7f4 0%,#f4faf7 52%,#edf6f2 100%)!important;
  color:#000!important;
  border-bottom:1px solid #cdded8!important;
}
.public-body.theme-classic .public-nav .brand{
  color:#176b68!important;
}
.public-body.theme-classic .public-nav .brand-mark{
  background:#f6fbf9!important;
  color:#176b68!important;
  border-color:#84b8b1!important;
}
.public-body.theme-classic .public-links a{
  color:#000!important;
}
.public-body.theme-classic .public-cta,
.public-body.theme-classic .hero .btn,
.public-body.theme-classic .btn.teal,
.public-body.theme-classic .btn.primary{
  background:#2f9188!important;
  border-color:#2f9188!important;
  color:#fff!important;
}
.public-body.theme-classic .public-cta:hover,
.public-body.theme-classic .hero .btn:hover,
.public-body.theme-classic .btn.teal:hover,
.public-body.theme-classic .btn.primary:hover{
  background:#287b74!important;
  border-color:#287b74!important;
}
.public-body.theme-classic .hero h1,
.public-body.theme-classic .section-head h2,
.public-body.theme-classic .about-card h3,
.public-body.theme-classic .article-reader h1{
  color:#145c5a!important;
}
.public-body.theme-classic .hero .crp,
.public-body.theme-classic .readmore{
  color:#2b817a!important;
}
.public-body.theme-classic .hero .bio,
.public-body.theme-classic .trust span,
.public-body.theme-classic .section-head p,
.public-body.theme-classic .article-card p,
.public-body.theme-classic .payment-note,
.public-body.theme-classic .article-reader .lead,
.public-body.theme-classic .article-reader .article-text,
.public-body.theme-classic .muted,
.public-body.theme-classic .small.muted,
.public-body.theme-classic .about-card,
.public-body.theme-classic .about-card p,
.public-body.theme-classic .card p{
  color:#000!important;
}
.public-body.theme-classic .specialty,
.public-body.theme-classic .category{
  background:#e9f4f0!important;
  border-color:#cfe3dc!important;
  color:#226961!important;
}
.public-body.theme-classic .slot{
  color:#176b68!important;
  border-color:#9fc8c1!important;
}
.public-body.theme-classic .slot:hover,
.public-body.theme-classic .slot.selected{
  background:#2f9188!important;
  border-color:#2f9188!important;
  color:#fff!important;
}
.public-body.theme-classic .public-footer{
  background:#dfeee9!important;
  color:#000!important;
  border-top:1px solid #c9ddd6!important;
}
.public-body.theme-classic .public-footer small,
.public-body.theme-classic .public-footer strong{
  color:#000!important;
}
.public-body.theme-classic .article-reader .authorbox .btn{
  background:#2f9188!important;
  border-color:#2f9188!important;
  color:#fff!important;
}

/* MODERNO: tudo que era cinza nas superfícies claras passa para preto */
.public-home.theme-modern .modern-section-head p,
.public-home.theme-modern .modern-articles-head p,
.public-home.theme-modern .modern-price span,
.public-home.theme-modern .modern-policy,
.public-home.theme-modern .modern-slots-sub,
.public-home.theme-modern .modern-article p,
.public-home.theme-modern .modern-bottom-card span,
.public-home.theme-modern .modern-about-copy,
.public-home.theme-modern .modern-info-card p,
.public-home.theme-modern .modern-inner,
.public-home.theme-modern .modern-booking-form,
.public-home.theme-modern .field label,
.public-home.theme-modern .small,
.public-home.theme-modern .muted{
  color:#000!important;
}
.public-body.theme-modern .article-reader .lead,
.public-body.theme-modern .article-text,
.public-body.theme-modern .article-reader .small.muted{
  color:#000!important;
}


/* ===== V45 — coerência de cores do tema Clássico + textos pretos no Moderno ===== */

/* CLÁSSICO: mantém a estrutura original e unifica a identidade visual em teal/sálvia. */
.public-body.theme-classic{
  --classic-teal:#2f8f88;
  --classic-teal-dark:#176e69;
  --classic-teal-soft:#e9f4f1;
  --classic-mint:#f1f8f5;
  --classic-line:#cfe1db;
  color:#000 !important;
  background:#fff !important;
}

.public-body.theme-classic .public-nav{
  background:linear-gradient(90deg,#f1f8f5 0%,#edf7f3 100%) !important;
  color:#000 !important;
  border-bottom:1px solid #cfe1db !important;
}

.public-body.theme-classic .public-nav .brand{
  color:#176e69 !important;
}

.public-body.theme-classic .public-nav .brand-mark{
  color:#176e69 !important;
  border-color:#86b8ad !important;
  background:#f7fbf9 !important;
}

.public-body.theme-classic .public-links,
.public-body.theme-classic .public-links a{
  color:#000 !important;
}

.public-body.theme-classic .public-cta,
.public-body.theme-classic .hero .btn,
.public-body.theme-classic .btn.teal,
.public-body.theme-classic .public-footer .btn{
  background:#2f8f88 !important;
  border-color:#2f8f88 !important;
  color:#fff !important;
}

.public-body.theme-classic .public-cta:hover,
.public-body.theme-classic .hero .btn:hover,
.public-body.theme-classic .btn.teal:hover,
.public-body.theme-classic .public-footer .btn:hover{
  background:#267d76 !important;
  border-color:#267d76 !important;
}

.public-body.theme-classic .hero{
  background:linear-gradient(135deg,#fffdf8 0%,#f8fbf8 58%,#f3f8f5 100%) !important;
}

.public-body.theme-classic .hero h1,
.public-body.theme-classic .section-head h2,
.public-body.theme-classic .about-card h3,
.public-body.theme-classic .card-title,
.public-body.theme-classic .article-reader h1{
  color:#125f5b !important;
}

.public-body.theme-classic .hero .crp,
.public-body.theme-classic .readmore{
  color:#2f8f88 !important;
}

.public-body.theme-classic .hero .bio,
.public-body.theme-classic .trust span,
.public-body.theme-classic .section-head p,
.public-body.theme-classic .article-card p,
.public-body.theme-classic .payment-note,
.public-body.theme-classic .muted,
.public-body.theme-classic .small.muted,
.public-body.theme-classic .article-reader .lead,
.public-body.theme-classic .article-reader .article-text,
.public-body.theme-classic .about-card,
.public-body.theme-classic .card p,
.public-body.theme-classic .panel-note,
.public-body.theme-classic .terms-text{
  color:#000 !important;
}

.public-body.theme-classic .trust-icon{
  background:#e3f1ed !important;
  color:#176e69 !important;
}

.public-body.theme-classic .trust:nth-child(2) .trust-icon{
  background:#edf0f8 !important;
  color:#176e69 !important;
}

.public-body.theme-classic .trust:nth-child(3) .trust-icon{
  background:#f6ecd8 !important;
  color:#176e69 !important;
}

.public-body.theme-classic .specialty,
.public-body.theme-classic .category{
  background:#e9f4f1 !important;
  border-color:#cfe1db !important;
  color:#176e69 !important;
}

.public-body.theme-classic .slot{
  color:#176e69 !important;
  border-color:#8fbbb2 !important;
}

.public-body.theme-classic .slot:hover,
.public-body.theme-classic .slot.selected{
  background:#2f8f88 !important;
  border-color:#2f8f88 !important;
  color:#fff !important;
}

.public-body.theme-classic .public-trust-section{
  background:#f3f8f5 !important;
}

.public-body.theme-classic .public-footer{
  background:#2c716c !important;
  color:#fff !important;
}

.public-body.theme-classic .public-footer small{
  color:#fff !important;
}

/* Prévia do tema Clássico acompanha a nova paleta, sem alterar a estrutura. */
.classic-preview .mini-nav{
  background:#eef7f3 !important;
  border-bottom:1px solid #cfe1db !important;
}

/* MODERNO: tudo que era cinza em áreas claras passa a preto. */
.public-body.theme-modern .modern-section-head p,
.public-body.theme-modern .modern-articles-head p,
.public-body.theme-modern .modern-price span,
.public-body.theme-modern .modern-slots-sub,
.public-body.theme-modern .modern-article p,
.public-body.theme-modern .modern-bottom-card span,
.public-body.theme-modern .modern-policy,
.public-body.theme-modern .modern-info-card p,
.public-body.theme-modern .modern-about-copy,
.public-body.theme-modern .article-reader .lead,
.public-body.theme-modern .article-reader .article-text,
.public-body.theme-modern .article-reader .muted,
.public-body.theme-modern .article-reader .small.muted,
.public-body.theme-modern .article-reader p,
.public-body.theme-modern .article-reader small{
  color:#000 !important;
}

/* Mantém textos claros somente onde o fundo do Moderno é escuro. */
.public-body.theme-modern .modern-profile-hero .modern-bio{
  color:#eef5f2 !important;
}
.public-body.theme-modern .modern-profile-hero .modern-trust span{
  color:#d8e7e2 !important;
}
.public-body.theme-modern .modern-footer,
.public-body.theme-modern .modern-footer small,
.public-body.theme-modern .public-footer,
.public-body.theme-modern .public-footer small{
  color:#fff !important;
}


/* ===== V46 — terceiro tema: Clássico Azul Escuro ===== */
.theme-choice-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.classic-dark-preview .mini-nav{
  background:#0f3044 !important;
  border-bottom:0 !important;
}
.classic-dark-preview .mini-hero{
  height:102px;
  padding:14px;
  display:grid;
  grid-template-columns:74px 1fr 55px;
  gap:10px;
  align-items:center;
  background:linear-gradient(135deg,#fffaf1,#f7f9f8 58%,#eef2f1);
}
.classic-dark-preview .mini-photo{
  display:block;width:62px;height:72px;border-radius:30px;background:#cfded7;
}
.classic-dark-preview .mini-lines{
  display:block;height:50px;border-radius:5px;
  background:repeating-linear-gradient(to bottom,#0f3044 0 5px,transparent 5px 13px);
  opacity:.9;
}
.classic-dark-preview .mini-icons{
  display:block;height:60px;border-radius:7px;
  background:repeating-linear-gradient(to bottom,#d9e5e9 0 14px,transparent 14px 21px);
}
.classic-dark-preview .mini-two{
  display:grid;grid-template-columns:1.25fr .75fr;gap:7px;padding:9px;background:#fbfcfb;
}
.classic-dark-preview .mini-two i,
.classic-dark-preview .mini-three i{
  display:block;border-radius:7px;background:#fff;border:1px solid #dfe6e3;
}
.classic-dark-preview .mini-two i{height:42px}
.classic-dark-preview .mini-three{
  display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:0 9px 9px;
}
.classic-dark-preview .mini-three i{height:50px}

/* CLÁSSICO AZUL ESCURO:
   mesma estrutura do Clássico, mudando somente a identidade cromática. */
.public-body.theme-classic-dark{
  --classic-dark:#0f3044;
  --classic-dark-2:#173f50;
  --classic-dark-soft:#e7eef1;
  --classic-dark-line:#b8c9d0;
  background:#fffdf9 !important;
  color:#000 !important;
}

.public-body.theme-classic-dark .public-nav{
  background:#0f3044 !important;
  color:#fff !important;
  border-bottom:1px solid #264b5c !important;
}
.public-body.theme-classic-dark .public-nav .brand,
.public-body.theme-classic-dark .public-links,
.public-body.theme-classic-dark .public-links a{
  color:#fff !important;
}
.public-body.theme-classic-dark .public-nav .brand-mark{
  background:#173f50 !important;
  color:#fff !important;
  border-color:#557383 !important;
}
.public-body.theme-classic-dark .public-cta,
.public-body.theme-classic-dark .hero .btn,
.public-body.theme-classic-dark .btn.teal,
.public-body.theme-classic-dark .btn.primary,
.public-body.theme-classic-dark .public-footer .btn{
  background:#0f3044 !important;
  border-color:#0f3044 !important;
  color:#fff !important;
}
.public-body.theme-classic-dark .public-cta:hover,
.public-body.theme-classic-dark .hero .btn:hover,
.public-body.theme-classic-dark .btn.teal:hover,
.public-body.theme-classic-dark .btn.primary:hover,
.public-body.theme-classic-dark .public-footer .btn:hover{
  background:#173f50 !important;
  border-color:#173f50 !important;
}

.public-body.theme-classic-dark .hero{
  background:linear-gradient(135deg,#fffaf4 0%,#f8faf9 58%,#edf2f2 100%) !important;
}
.public-body.theme-classic-dark .hero h1,
.public-body.theme-classic-dark .section-head h2,
.public-body.theme-classic-dark .about-card h3,
.public-body.theme-classic-dark .card-title,
.public-body.theme-classic-dark .article-reader h1{
  color:#0f3044 !important;
}
.public-body.theme-classic-dark .hero .crp,
.public-body.theme-classic-dark .readmore{
  color:#173f50 !important;
}

/* Textos em superfícies claras sempre pretos */
.public-body.theme-classic-dark .hero .bio,
.public-body.theme-classic-dark .trust span,
.public-body.theme-classic-dark .section-head p,
.public-body.theme-classic-dark .article-card p,
.public-body.theme-classic-dark .payment-note,
.public-body.theme-classic-dark .muted,
.public-body.theme-classic-dark .small.muted,
.public-body.theme-classic-dark .article-reader .lead,
.public-body.theme-classic-dark .article-reader .article-text,
.public-body.theme-classic-dark .about-card,
.public-body.theme-classic-dark .about-card p,
.public-body.theme-classic-dark .card p,
.public-body.theme-classic-dark .panel-note,
.public-body.theme-classic-dark .terms-text{
  color:#000 !important;
}

.public-body.theme-classic-dark .trust-icon{
  background:#e5eef1 !important;
  color:#0f3044 !important;
}
.public-body.theme-classic-dark .trust:nth-child(2) .trust-icon{
  background:#e9e9f2 !important;
  color:#0f3044 !important;
}
.public-body.theme-classic-dark .trust:nth-child(3) .trust-icon{
  background:#f3e9d4 !important;
  color:#0f3044 !important;
}

.public-body.theme-classic-dark .specialty,
.public-body.theme-classic-dark .category{
  background:#e7eef1 !important;
  border-color:#c6d5db !important;
  color:#0f3044 !important;
}

.public-body.theme-classic-dark .slot{
  color:#0f3044 !important;
  border-color:#9cb3bd !important;
}
.public-body.theme-classic-dark .slot:hover,
.public-body.theme-classic-dark .slot.selected{
  background:#0f3044 !important;
  border-color:#0f3044 !important;
  color:#fff !important;
}

.public-body.theme-classic-dark .public-trust-section{
  background:#f0f4f5 !important;
}
.public-body.theme-classic-dark .public-footer{
  background:#0f3044 !important;
  color:#fff !important;
  border-top:1px solid #264b5c !important;
}
.public-body.theme-classic-dark .public-footer small,
.public-body.theme-classic-dark .public-footer strong{
  color:#fff !important;
}
.public-body.theme-classic-dark .article-reader .authorbox .btn{
  background:#0f3044 !important;
  border-color:#0f3044 !important;
  color:#fff !important;
}

/* Página aberta de post/conteúdos acompanha o terceiro tema. */
.public-body.theme-classic-dark .article-reader{
  background:#fff !important;
}
.public-body.theme-classic-dark .article-reader .authorbox{
  border-top-color:#cbd7dc !important;
}

@media(max-width:1180px){
  .theme-choice-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .theme-choice-grid{grid-template-columns:1fr}
}


/* ===== V48 — tipografia leve no portal profissional + central Meu blog ===== */
/* O portal do psicólogo evita pesos de negrito. O Admin não é afetado. */
.professional-app,
.professional-app input,
.professional-app select,
.professional-app textarea,
.professional-app button{
  font-weight:400;
}
.professional-app h1,
.professional-app h2,
.professional-app h3,
.professional-app h4,
.professional-app h5,
.professional-app h6,
.professional-app strong,
.professional-app b,
.professional-app label,
.professional-app th,
.professional-app .card-title,
.professional-app .section-title,
.professional-app .section-sub strong,
.professional-app .page-head h2,
.professional-app .topbar h1,
.professional-app .sidebar .brand,
.professional-app .sidebar .brand small,
.professional-app .nav a,
.professional-app .btn,
.professional-app .badge,
.professional-app .status-item strong,
.professional-app .theme-name,
.professional-app .theme-current,
.professional-app .booking-card strong,
.professional-app .availability-day strong,
.professional-app .kpi strong,
.professional-app .kpi label{
  font-weight:500 !important;
}
.professional-app .muted,
.professional-app .section-sub,
.professional-app .meta,
.professional-app .small{
  font-weight:400 !important;
}

.blog-hub-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
}
.blog-hub-card{
  min-height:245px;
  padding:22px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  color:#101820;
  text-decoration:none;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  transition:border-color .16s ease, transform .16s ease;
}
.blog-hub-card:hover{
  border-color:#8ca8b1;
  transform:translateY(-1px);
}
.blog-hub-icon{
  width:44px;
  height:44px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:#e8efed;
  color:var(--navy);
  margin-bottom:20px;
}
.blog-hub-icon svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.65;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.blog-hub-title{
  font-size:14px;
  line-height:1.35;
  font-weight:500 !important;
  color:#111;
  margin-bottom:9px;
}
.blog-hub-text{
  font-size:12px;
  line-height:1.65;
  color:#111;
  font-weight:400;
}
.blog-hub-link{
  margin-top:auto;
  padding-top:22px;
  color:var(--navy);
  font-size:12px;
  font-weight:500 !important;
}
.theme-choice-grid-two{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  max-width:1050px;
}

@media(max-width:980px){
  .blog-hub-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .blog-hub-grid,.theme-choice-grid-two{grid-template-columns:1fr !important}
  .blog-hub-card{min-height:210px}
}


/* ===== V49 — Agenda compacta em uma única tela ===== */

/* Mantém a agenda confortável, porém com menos altura e menos espaços verticais. */
body .app-main:has(.agenda-page),
body .app-content:has(.agenda-page),
body .panel-content:has(.agenda-page){
  padding-top:14px !important;
  padding-bottom:14px !important;
}

.agenda-page{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  min-height:0 !important;
}

.agenda-page .page-head,
.agenda-page .section-head,
.agenda-page .toolbar{
  margin-bottom:8px !important;
}

.agenda-page .page-head h1,
.agenda-page .page-head h2,
.agenda-page .section-head h2{
  margin-bottom:3px !important;
}

.agenda-page .page-head p,
.agenda-page .section-head p{
  margin:0 !important;
}

.agenda-page .grid,
.agenda-page .cards-grid,
.agenda-page .agenda-grid,
.agenda-page .stats-grid{
  gap:10px !important;
}

.agenda-page .card,
.agenda-page .panel,
.agenda-page .agenda-card,
.agenda-page .stat-card{
  padding:12px 14px !important;
  border-radius:12px !important;
  min-height:0 !important;
}

.agenda-page .card h3,
.agenda-page .panel h3,
.agenda-page .agenda-card h3{
  margin:0 0 7px !important;
}

.agenda-page .form-grid,
.agenda-page .fields-grid,
.agenda-page .availability-grid{
  gap:8px 10px !important;
}

.agenda-page label{
  margin-bottom:4px !important;
}

.agenda-page input,
.agenda-page select,
.agenda-page textarea{
  min-height:36px !important;
  height:36px !important;
  padding:7px 10px !important;
}

.agenda-page textarea{
  height:auto !important;
  min-height:58px !important;
}

.agenda-page .btn,
.agenda-page button{
  min-height:34px !important;
  padding:7px 12px !important;
}

.agenda-page .weekday-row,
.agenda-page .availability-row,
.agenda-page .schedule-row,
.agenda-page .slot-row{
  padding:6px 0 !important;
  margin:0 !important;
  min-height:0 !important;
}

.agenda-page .weekday-row + .weekday-row,
.agenda-page .availability-row + .availability-row,
.agenda-page .schedule-row + .schedule-row{
  border-top:1px solid #e2e8e5 !important;
}

.agenda-page .badge,
.agenda-page .pill,
.agenda-page .status{
  padding:4px 8px !important;
  line-height:1.1 !important;
}

.agenda-page table th,
.agenda-page table td{
  padding:7px 8px !important;
}

.agenda-page .notice,
.agenda-page .info-box,
.agenda-page .helper-box{
  padding:8px 10px !important;
  margin-top:7px !important;
  margin-bottom:7px !important;
}

/* Se a Agenda utiliza blocos genéricos do painel, compacta somente dentro dela. */
.agenda-page > .card,
.agenda-page > .panel{
  margin-bottom:0 !important;
}

/* Desktop: prioriza que os blocos principais fiquem lado a lado e dentro da viewport. */
@media (min-width:1100px){
  .agenda-page{
    max-height:calc(100vh - 108px) !important;
    overflow:hidden !important;
  }

  .agenda-page .agenda-grid,
  .agenda-page .cards-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    align-items:start !important;
  }

  .agenda-page .agenda-grid > *,
  .agenda-page .cards-grid > *{
    min-width:0 !important;
  }

  .agenda-page .card,
  .agenda-page .panel,
  .agenda-page .agenda-card{
    max-height:calc(100vh - 180px) !important;
    overflow:auto !important;
    scrollbar-width:thin;
  }
}

/* Notebook menor: continua compacto sem cortar conteúdo. */
@media (min-width:900px) and (max-width:1099px){
  .agenda-page .card,
  .agenda-page .panel,
  .agenda-page .agenda-card{
    padding:11px 12px !important;
  }
}

/* Mobile volta a permitir rolagem normal. */
@media (max-width:899px){
  .agenda-page{
    max-height:none !important;
    overflow:visible !important;
  }
}


/* ===== V50 — correção do seletor de Visual do Blog ===== */
.blog-theme-form .theme-choice{
  position:relative !important;
  cursor:pointer !important;
  user-select:none;
}
.blog-theme-form .theme-choice > input[type="radio"]{
  position:absolute !important;
  top:16px !important;
  right:16px !important;
  width:18px !important;
  height:18px !important;
  margin:0 !important;
  opacity:0 !important;
  pointer-events:auto !important;
  z-index:5 !important;
  cursor:pointer !important;
}
.blog-theme-form .theme-radio-indicator{
  position:absolute;
  top:14px;
  right:14px;
  width:22px;
  height:22px;
  border-radius:50%;
  border:1.5px solid #8ea6b0;
  background:#fff;
  z-index:4;
  pointer-events:none;
}
.blog-theme-form .theme-choice.selected .theme-radio-indicator{
  border-color:#0f3044;
  box-shadow:inset 0 0 0 5px #fff;
  background:#0f3044;
}
.blog-theme-form .theme-choice.selected{
  border-color:#0f3044 !important;
  box-shadow:inset 0 0 0 1px #0f3044 !important;
  background:#fbfcfc !important;
}
.blog-theme-form .theme-preview,
.blog-theme-form .theme-choice-copy{
  pointer-events:none;
}
.blog-theme-form .theme-choice-copy{
  padding-right:32px !important;
}


/* ===== V51 — Agenda realmente compacta e aproveitando a largura ===== */
.agenda-compact{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
  width:100%;
}

.agenda-compact .page-head{
  margin:0 0 2px !important;
  min-height:54px;
}
.agenda-compact .page-head h2{
  margin:0 0 3px !important;
}
.agenda-compact .page-head p{
  margin:0 !important;
}

/* Cards superiores */
.agenda-compact .agenda-settings-grid{
  gap:10px !important;
  margin:0 !important;
  align-items:stretch;
}
.agenda-compact .agenda-settings-grid > .card{
  padding:13px 15px !important;
}
.agenda-compact .agenda-settings-grid .card-title{
  margin-bottom:4px !important;
}
.agenda-compact .agenda-settings-grid .muted{
  margin:0 0 8px !important;
  line-height:1.35 !important;
}
.agenda-compact .agenda-settings-grid .auth-form{
  gap:7px !important;
}
.agenda-compact .agenda-settings-grid .form-grid{
  gap:8px !important;
}
.agenda-compact .agenda-settings-grid .field{
  gap:3px !important;
  margin:0 !important;
}
.agenda-compact .agenda-settings-grid label{
  margin:0 0 3px !important;
}
.agenda-compact .agenda-settings-grid input,
.agenda-compact .agenda-settings-grid select{
  height:36px !important;
  min-height:36px !important;
  padding:6px 10px !important;
}
.agenda-compact .agenda-settings-grid .btn{
  min-height:36px !important;
  padding:7px 12px !important;
}

/* Horários recorrentes */
.agenda-compact .availability-card{
  margin:0 !important;
}
.agenda-compact .availability-card .card-head{
  min-height:auto !important;
  padding:11px 14px 9px !important;
}
.agenda-compact .availability-card .card-pad{
  padding:10px 12px 11px !important;
}
.agenda-compact .availability-card .section-sub{
  margin-top:2px !important;
  line-height:1.25 !important;
}
.agenda-compact .availability-week{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:8px !important;
}
.agenda-compact .availability-day{
  padding:9px 10px !important;
  border-radius:10px !important;
  min-width:0;
}
.agenda-compact .availability-day-head{
  margin:0 0 6px !important;
  gap:7px !important;
}
.agenda-compact .availability-day-head > div{
  min-width:0;
}
.agenda-compact .availability-day-head strong{
  font-size:11px !important;
  line-height:1.15 !important;
}
.agenda-compact .availability-day-head span{
  font-size:9px !important;
  line-height:1.15 !important;
  margin-top:1px !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.agenda-compact .availability-day-head .btn{
  min-height:28px !important;
  height:28px !important;
  padding:4px 8px !important;
  font-size:9px !important;
  white-space:nowrap;
}
.agenda-compact .availability-ranges{
  gap:5px !important;
}
.agenda-compact .availability-range{
  display:grid !important;
  grid-template-columns:minmax(82px,1fr) 14px minmax(82px,1fr) 24px !important;
  gap:5px !important;
  align-items:center !important;
}
.agenda-compact .availability-range input{
  height:34px !important;
  min-height:34px !important;
  padding:5px 7px !important;
  border-radius:7px !important;
  min-width:0 !important;
}
.agenda-compact .availability-range span{
  text-align:center;
  font-size:9px !important;
}
.agenda-compact .remove-range{
  width:24px !important;
  height:28px !important;
  padding:0 !important;
  display:grid !important;
  place-items:center !important;
  font-size:18px !important;
  line-height:1 !important;
  font-weight:400 !important;
}
.agenda-compact .availability-card .form-actions{
  margin-top:8px !important;
}
.agenda-compact .availability-card .form-actions .btn{
  min-height:34px !important;
  height:34px !important;
  padding:6px 12px !important;
}

/* Cards inferiores: continuam completos, mas não fazem a página crescer
   indefinidamente quando há muitos registros. */
.agenda-compact .agenda-lists-grid{
  gap:10px !important;
  margin:0 !important;
  align-items:stretch;
}
.agenda-compact .agenda-lists-grid > .card{
  padding:12px 14px !important;
  min-height:0 !important;
}
.agenda-compact .agenda-lists-grid .card-title{
  margin-bottom:3px !important;
}
.agenda-compact .agenda-lists-grid > .card > p.muted{
  margin:0 0 7px !important;
}
.agenda-compact .agenda-lists-grid .auth-form{
  gap:6px !important;
}
.agenda-compact .agenda-lists-grid .field{
  gap:3px !important;
  margin:0 !important;
}
.agenda-compact .agenda-lists-grid input{
  height:34px !important;
  min-height:34px !important;
  padding:5px 9px !important;
}
.agenda-compact .agenda-lists-grid .btn{
  min-height:32px !important;
  padding:6px 10px !important;
}
.agenda-compact .agenda-lists-grid .status-list{
  gap:5px !important;
  margin-top:7px !important;
  max-height:92px;
  overflow:auto;
  scrollbar-width:thin;
}
.agenda-compact .agenda-lists-grid .status-item{
  padding:6px 0 !important;
  min-height:0 !important;
}

/* A tela do print possui largura suficiente para quatro dias por linha. */
@media (min-width:1500px){
  .agenda-compact .availability-week{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}

/* Notebooks médios ainda aproveitam bastante a largura. */
@media (min-width:1150px) and (max-width:1499px){
  .agenda-compact .availability-week{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

/* Em alturas típicas de desktop, o conjunto principal cabe sem desperdiçar espaço. */
@media (min-width:1150px) and (min-height:760px){
  .agenda-compact .agenda-settings-grid > .card{
    min-height:0 !important;
  }
}

/* Tablet/mobile: volta a empilhar para não apertar campos. */
@media (max-width:1149px){
  .agenda-compact .availability-week{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width:760px){
  .agenda-compact .agenda-settings-grid,
  .agenda-compact .agenda-lists-grid,
  .agenda-compact .availability-week{
    grid-template-columns:1fr !important;
  }
  .agenda-compact .availability-range{
    grid-template-columns:1fr 14px 1fr 24px !important;
  }
}


/* ===== V52 — Portal profissional alinhado ao protótipo aprovado ===== */
html:has(body.professional-app),
body.professional-app{overflow-x:hidden !important;background:#edf1ef !important;color:#000 !important}
body.professional-app{font-size:12px !important}
.professional-app .app-shell{grid-template-columns:252px minmax(0,1fr) !important;width:100% !important;max-width:100% !important;overflow-x:hidden !important}
.professional-app .sidebar{width:252px !important;padding:24px 17px 20px !important;background:linear-gradient(135deg,#0a3550 0%,#0e4a5b 58%,#5d7f75 100%) !important;border-right:1px solid rgba(255,255,255,.10) !important;color:#fff !important;overflow-y:auto !important;overflow-x:hidden !important}
.professional-app .sidebar .portal-brand{gap:13px !important;padding:4px 2px 22px !important;border-bottom:1px solid rgba(255,255,255,.16) !important;align-items:center !important}
.professional-app .sidebar .portal-brand .brand-mark{width:48px !important;height:48px !important;min-width:48px !important;border:1px solid rgba(255,255,255,.60) !important;border-radius:13px !important;color:#fff !important;font-size:18px !important;font-weight:500 !important;text-shadow:0 0 1px rgba(0,0,0,.55),0 1px 0 rgba(0,0,0,.35) !important;background:transparent !important}
.professional-app .portal-brand-copy{display:block;min-width:0}
.professional-app .portal-brand-copy strong{display:block;color:#fff !important;font-size:14px !important;line-height:1.08 !important;font-weight:500 !important;text-shadow:0 0 1px rgba(0,0,0,.55),0 1px 0 rgba(0,0,0,.35) !important}
.professional-app .sidebar .portal-brand-copy small{display:block;color:#fff !important;font-size:10px !important;line-height:1.12 !important;margin-top:3px !important;font-weight:400 !important;text-shadow:0 0 1px rgba(0,0,0,.48),0 1px 0 rgba(0,0,0,.25) !important;white-space:nowrap}
.professional-app .nav-label{padding:22px 10px 9px !important;color:#8fc2d3 !important;font-size:8px !important;letter-spacing:.14em !important}
.professional-app .nav{gap:6px !important}
.professional-app .nav a{height:43px !important;padding:0 12px !important;border-radius:11px !important;color:#fff !important;font-size:13px !important;font-weight:400 !important;gap:11px !important;text-shadow:0 0 1px rgba(0,0,0,.55),0 1px 0 rgba(0,0,0,.35) !important;border:1px solid transparent !important}
.professional-app .nav a:hover{background:rgba(255,255,255,.08) !important}
.professional-app .nav a.active{background:rgba(130,169,184,.23) !important;color:#fff !important;border-color:rgba(255,255,255,.88) !important;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18) !important}
.professional-app .portal-nav-icon{width:19px !important;min-width:19px !important;text-align:center !important;color:#fff !important;font-size:13px !important;text-shadow:0 0 1px rgba(0,0,0,.55) !important}
.professional-app .side-bottom{border-top:1px solid rgba(255,255,255,.13) !important;padding-top:14px !important}
.professional-app .side-bottom a{color:#fff !important;font-size:12px !important;padding:7px 5px !important;text-shadow:0 0 1px rgba(0,0,0,.55),0 1px 0 rgba(0,0,0,.35) !important}

.professional-app .app-main{grid-column:2 !important;min-width:0 !important;background:#edf1ef !important;min-height:100vh !important}
.professional-app .topbar{height:88px !important;padding:0 36px !important;background:#f3f5f4 !important;border-bottom:1px solid #d6dfdc !important;position:sticky !important;top:0 !important}
.professional-app .topbar h1{font-size:24px !important;font-weight:500 !important;letter-spacing:-.5px !important;color:#000 !important;margin:0 0 4px !important}
.professional-app .topbar p{font-size:12px !important;color:#000 !important;margin:0 !important}
.professional-app .user-chip{gap:13px !important;color:#000 !important}
.professional-app .user-chip .avatar{width:44px !important;height:44px !important;border-radius:50% !important;background:#dceee8 !important;color:#0a4c57 !important;font-size:14px !important;font-weight:500 !important}
.professional-app .user-chip strong{font-size:12px !important;color:#000 !important;font-weight:500 !important}
.professional-app .user-chip .muted{color:#000 !important;font-size:12px !important}
.professional-app .content{padding:18px 24px 28px !important;max-width:none !important;width:100% !important;margin:0 !important;background:#edf1ef !important;min-width:0 !important}

.professional-app .page-head{margin-bottom:12px !important;min-width:0 !important}
.professional-app .page-head h2{font-size:18px !important;color:#000 !important;font-weight:500 !important}
.professional-app .page-head p{font-size:12px !important;color:#000 !important}
.professional-app .card{background:#fafbfa !important;border:1px solid #d4ddda !important;border-radius:13px !important;box-shadow:none !important;color:#000 !important;min-width:0 !important}
.professional-app .card-pad{padding:16px !important}
.professional-app .card-head{padding:13px 16px !important;border-bottom-color:#d9e2df !important}
.professional-app .card-title{font-size:14px !important;color:#000 !important;font-weight:500 !important}
.professional-app .section-title{color:#000 !important;font-weight:500 !important}
.professional-app .section-sub,.professional-app .muted,.professional-app .small,.professional-app .meta,.professional-app .panel-note{font-size:12px !important;color:#000 !important}
.professional-app p,.professional-app span,.professional-app label,.professional-app li,.professional-app td,.professional-app th,.professional-app input,.professional-app select,.professional-app textarea,.professional-app button,.professional-app a{font-size:12px}
.professional-app strong,.professional-app b,.professional-app label,.professional-app th{font-weight:500 !important}

.professional-app .kpis{gap:12px !important;margin-bottom:12px !important;min-width:0 !important}
.professional-app .kpi{padding:17px !important;min-height:116px !important}
.professional-app .kpi label{font-size:12px !important;color:#000 !important;font-weight:400 !important}
.professional-app .kpi strong{font-size:26px !important;color:#000 !important;font-weight:400 !important;margin-top:6px !important}
.professional-app .kpi span{font-size:12px !important;color:#000 !important}
.professional-app .grid-2,.professional-app .grid-3,.professional-app .kpis,.professional-app .form-grid{min-width:0 !important}
.professional-app .grid-2{gap:12px !important}
.professional-app .grid-3{gap:12px !important}
.professional-app .stack{gap:12px !important;min-width:0 !important}

/* Botões na família verde/sálvia do protótipo: nenhum azul-marinho no portal profissional. */
.professional-app .btn,.professional-app .btn.primary,.professional-app .btn.teal,.professional-app .btn.dark{background:linear-gradient(90deg,#dbeae4 0%,#cfe3db 100%) !important;border:1px solid #b8cfc7 !important;color:#103f46 !important;border-radius:9px !important;font-size:12px !important;font-weight:500 !important;box-shadow:none !important}
.professional-app .btn.primary,.professional-app .btn.teal{background:linear-gradient(90deg,#abd6c7 0%,#91c3b3 100%) !important;border-color:#8db7aa !important;color:#103f46 !important}
.professional-app .btn:hover,.professional-app .btn.primary:hover,.professional-app .btn.teal:hover{background:linear-gradient(90deg,#cfe3db 0%,#bfd8cf 100%) !important}
.professional-app .btn.danger{background:linear-gradient(90deg,#fde4e5 0%,#f7d5d7 100%) !important;border-color:#e4b5b8 !important;color:#8a3a41 !important}
.professional-app .btn.small{font-size:12px !important}

.professional-app .field{gap:5px !important;min-width:0 !important}
.professional-app .field label{font-size:12px !important;color:#000 !important}
.professional-app .field input,.professional-app .field textarea,.professional-app .field select,.professional-app .search{background:#fff !important;color:#000 !important;border:1px solid #cdd7d4 !important;border-radius:9px !important;font-size:12px !important;min-width:0 !important;box-shadow:none !important}
.professional-app .field input:focus,.professional-app .field textarea:focus,.professional-app .field select:focus{border-color:#8bb5a8 !important;box-shadow:0 0 0 3px rgba(107,164,158,.09) !important}
.professional-app .table-wrap{background:#fafbfa !important;border-color:#d7dfdc !important;max-width:100% !important;overflow:auto !important}
.professional-app table{min-width:680px !important}
.professional-app th{background:#f4f6f5 !important;color:#000 !important;font-size:12px !important;text-transform:none !important;letter-spacing:0 !important}
.professional-app td{color:#000 !important;font-size:12px !important;border-bottom-color:#e0e6e4 !important}
.professional-app .booking-card{border-color:#d6e0dd !important;border-radius:11px !important;background:#fbfcfb !important}
.professional-app .booking-card .meta{color:#000 !important}
.professional-app .status-list .status-item{border-bottom-color:#e0e6e4 !important}
.professional-app .notice,.professional-app .panel-note{background:#f6f9f7 !important;border-color:#d6e1dd !important;color:#000 !important}
.professional-app .notice.warn{background:#fff9e9 !important;border-color:#ead9a9 !important}
.professional-app .notice.danger{background:#fff2f1 !important;border-color:#efcbc7 !important}
.professional-app .badge{font-size:11px !important;font-weight:500 !important}

/* Ações rápidas da visão geral — mesma composição visual aprovada no protótipo. */
.professional-app .portal-quick-actions{background:#fafbfa;border:1px solid #d4ddda;border-radius:13px;padding:18px;box-shadow:none}
.professional-app .portal-quick-head{margin-bottom:14px}
.professional-app .portal-quick-head p{margin:4px 0 0;color:#000;font-size:12px}
.professional-app .portal-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.professional-app .portal-quick-item{min-height:72px;border:1px solid #cfe0da;border-radius:13px;background:linear-gradient(135deg,#e6f0ed 0%,#d8e7e2 100%);padding:11px 12px;display:grid;grid-template-columns:46px minmax(0,1fr);gap:11px;align-items:center;text-align:left;color:#000 !important;text-shadow:none !important}
.professional-app .portal-quick-item:hover{background:linear-gradient(135deg,#dcece7 0%,#d0e4de 100%);border-color:#b7d0c8}
.professional-app .portal-quick-icon{width:46px;height:46px;border-radius:13px;background:linear-gradient(135deg,#2b6971 0%,#4f857a 100%);color:#fff !important;display:grid;place-items:center;font-size:19px !important}
.professional-app .portal-quick-item strong{display:block;color:#000 !important;font-size:12px !important;font-weight:500 !important}
.professional-app .portal-quick-item small{display:block;color:#000 !important;font-size:12px !important;margin-top:3px}

/* Agenda real: compacta, sem barra horizontal e preservando todos os formulários. */
.professional-app .agenda-compact{width:100% !important;max-width:100% !important;overflow-x:hidden !important;gap:10px !important}
.professional-app .agenda-compact .page-head{min-height:auto !important;margin-bottom:0 !important}
.professional-app .agenda-settings-grid{display:grid !important;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr) !important;gap:12px !important;min-width:0 !important}
.professional-app .agenda-settings-grid>*{min-width:0 !important}
.professional-app .agenda-compact .agenda-settings-grid>.card{padding:16px !important}
.professional-app .agenda-compact .agenda-settings-grid .auth-form{gap:8px !important}
.professional-app .agenda-compact .agenda-settings-grid input,.professional-app .agenda-compact .agenda-settings-grid select{height:36px !important;min-height:36px !important;padding:0 10px !important}
.professional-app .agenda-compact .availability-card .card-head{padding:12px 16px !important}
.professional-app .agenda-compact .availability-card .card-pad{padding:12px 14px !important}
.professional-app .agenda-compact .availability-week{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr)) !important;gap:10px !important;min-width:0 !important}
.professional-app .agenda-compact .availability-day{padding:12px !important;border:1px solid #d4ddda !important;background:#fafbfa !important;border-radius:12px !important;min-width:0 !important}
.professional-app .agenda-compact .availability-day-head{margin-bottom:8px !important;gap:8px !important}
.professional-app .agenda-compact .availability-day-head strong{font-size:12px !important;color:#000 !important}
.professional-app .agenda-compact .availability-day-head span{font-size:10px !important;color:#000 !important;white-space:normal !important;overflow:visible !important}
.professional-app .agenda-compact .availability-day-head .btn{width:auto !important;min-width:32px !important;height:32px !important;min-height:32px !important;padding:0 8px !important;font-size:10px !important}
.professional-app .agenda-compact .availability-range{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) 24px !important;gap:6px !important;min-width:0 !important}
.professional-app .agenda-compact .availability-range input{width:100% !important;min-width:0 !important;height:34px !important;padding:0 8px !important}
.professional-app .agenda-compact .availability-range span{font-size:12px !important;color:#000 !important;white-space:nowrap}
.professional-app .agenda-compact .remove-range{background:transparent !important;border:0 !important;color:#9b3e43 !important;font-size:18px !important}
.professional-app .agenda-lists-grid{gap:10px !important;min-width:0 !important}
.professional-app .agenda-lists-grid>*{min-width:0 !important}

/* Meu blog e temas continuam funcionais, apenas recebem o novo acabamento. */
.professional-app .blog-hub-card,.professional-app .theme-choice{background:#fafbfa !important;border-color:#d4ddda !important;box-shadow:none !important}
.professional-app .blog-hub-card:hover,.professional-app .theme-choice:hover{border-color:#a9c7bd !important}
.professional-app .blog-theme-form .theme-choice.selected{border-color:#7fae9f !important;box-shadow:inset 0 0 0 1px #7fae9f !important;background:#f5f9f7 !important}
.professional-app .blog-theme-form .theme-choice.selected .theme-radio-indicator{border-color:#4f857a !important;background:#4f857a !important}

@media(max-width:1500px){
 .professional-app .agenda-compact .availability-week{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:1180px){
 .professional-app .app-shell{grid-template-columns:224px minmax(0,1fr) !important}
 .professional-app .sidebar{width:224px !important;padding-left:14px !important;padding-right:14px !important}
 .professional-app .portal-brand-copy small{font-size:9px !important}
 .professional-app .agenda-settings-grid{grid-template-columns:1fr !important}
 .professional-app .kpis{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
}
@media(max-width:900px){
 .professional-app .app-shell{display:block !important}
 .professional-app .sidebar{position:relative !important;width:100% !important;min-height:auto !important;max-height:none !important}
 .professional-app .nav{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
 .professional-app .side-bottom{display:none !important}
 .professional-app .app-main{grid-column:auto !important}
 .professional-app .topbar{height:auto !important;min-height:82px !important;padding:14px 18px !important}
 .professional-app .content{padding:16px !important}
 .professional-app .grid-2,.professional-app .grid-3,.professional-app .agenda-settings-grid,.professional-app .agenda-compact .availability-week{grid-template-columns:1fr !important}
 .professional-app .portal-quick-grid{grid-template-columns:1fr !important}
}
@media(max-width:600px){
 .professional-app .nav{grid-template-columns:1fr !important}
 .professional-app .kpis{grid-template-columns:1fr !important}
 .professional-app .topbar h1{font-size:20px !important}
 .professional-app .user-chip>div:last-child{display:none}
}

/* V52 — o título do módulo fica no cabeçalho superior, como no protótipo. */
.professional-app .content > .page-head > div:first-child,
.professional-app .agenda-compact > .page-head > div:first-child{
  display:none !important;
}
.professional-app .content > .page-head,
.professional-app .agenda-compact > .page-head{
  justify-content:flex-end !important;
  align-items:center !important;
  min-height:0 !important;
  margin:0 0 10px !important;
}
.professional-app .content > .page-head:has(> div:first-child:only-child),
.professional-app .agenda-compact > .page-head:has(> div:first-child:only-child){
  display:none !important;
}

/* ===== V53 — padronização final de TODOS os botões do portal profissional ===== */
/* Sobrescreve a regra antiga V39, que possuía especificidade maior e ainda deixava alguns botões azul-marinho. */
.professional-app .app-shell .btn,
.professional-app .app-shell a.btn,
.professional-app .app-shell button.btn,
.professional-app .app-shell input.btn,
.professional-app .app-shell .btn.dark,
.professional-app .app-shell .btn.ghost{
  background:linear-gradient(90deg,#dbeae4 0%,#cfe3db 100%) !important;
  border:1px solid #b8cfc7 !important;
  color:#103f46 !important;
  box-shadow:none !important;
  text-shadow:none !important;
}
.professional-app .app-shell .btn.primary,
.professional-app .app-shell .btn.teal{
  background:linear-gradient(90deg,#abd6c7 0%,#91c3b3 100%) !important;
  border-color:#8db7aa !important;
  color:#103f46 !important;
}
.professional-app .app-shell .btn:hover,
.professional-app .app-shell .btn:focus,
.professional-app .app-shell .btn.dark:hover,
.professional-app .app-shell .btn.dark:focus,
.professional-app .app-shell .btn.ghost:hover,
.professional-app .app-shell .btn.ghost:focus{
  background:linear-gradient(90deg,#cfe3db 0%,#bfd8cf 100%) !important;
  border-color:#a9c7bd !important;
  color:#103f46 !important;
}
.professional-app .app-shell .btn.primary:hover,
.professional-app .app-shell .btn.primary:focus,
.professional-app .app-shell .btn.teal:hover,
.professional-app .app-shell .btn.teal:focus{
  background:linear-gradient(90deg,#9fcfbe 0%,#85b9a8 100%) !important;
  border-color:#7eaa9d !important;
  color:#103f46 !important;
}
.professional-app .app-shell .btn:visited,
.professional-app .app-shell a.btn:visited{
  color:#103f46 !important;
}
.professional-app .app-shell .btn.danger,
.professional-app .app-shell .btn.danger:hover,
.professional-app .app-shell .btn.danger:focus{
  background:linear-gradient(90deg,#fde4e5 0%,#f7d5d7 100%) !important;
  border-color:#e4b5b8 !important;
  color:#8a3a41 !important;
}

/* Horários do agendamento manual também seguem a paleta verde/sálvia. */
.professional-app .manual-slots .slot{
  background:#f8fbfa !important;
  border:1px solid #b8cfc7 !important;
  color:#103f46 !important;
  box-shadow:none !important;
}
.professional-app .manual-slots .slot:hover,
.professional-app .manual-slots .slot.selected{
  background:linear-gradient(90deg,#abd6c7 0%,#91c3b3 100%) !important;
  border-color:#8db7aa !important;
  color:#103f46 !important;
}

/* Controles da sala: sem azul nos botões. Mantém vermelho apenas para ações destrutivas/saída. */
.professional-app .room-btn,
.professional-app .app-shell .room-btn{
  background:linear-gradient(90deg,#b8d8cc 0%,#9cc4b4 100%) !important;
  border-color:#90b3a7 !important;
  color:#103f46 !important;
  box-shadow:none !important;
}
.professional-app .room-btn:hover,
.professional-app .room-btn:focus,
.professional-app .app-shell .room-btn:hover,
.professional-app .app-shell .room-btn:focus{
  background:linear-gradient(90deg,#a9cfbf 0%,#8fb9aa 100%) !important;
  border-color:#83aa9d !important;
  color:#103f46 !important;
}
.professional-app .room-btn.danger-soft,
.professional-app .app-shell .room-btn.danger-soft{
  background:#f7dfe0 !important;
  border-color:#d9aeb2 !important;
  color:#7f343b !important;
}
.professional-app .room-panel-tabs button{
  background:#dcebe6 !important;
  border-color:#b8cfc7 !important;
  color:#103f46 !important;
  box-shadow:none !important;
}
.professional-app .room-panel-tabs button:hover,
.professional-app .room-panel-tabs button.active{
  background:#a8d2c3 !important;
  border-color:#88b3a5 !important;
  color:#103f46 !important;
}
.professional-app .room-head-actions #leaveRoom,
.professional-app .room-head-actions #leaveRoom:visited,
.professional-app .room-head-actions #leaveRoom:hover,
.professional-app .room-head-actions #leaveRoom:focus{
  background:#f7dfe0 !important;
  border-color:#d9aeb2 !important;
  color:#7f343b !important;
  box-shadow:none !important;
}

/* Segurança visual: qualquer variante antiga explicitamente chamada dark/primary/teal dentro do portal
   fica presa à paleta aprovada, sem afetar páginas públicas ou administrativas. */
.professional-app .app-shell [class~="btn"][class~="dark"],
.professional-app .app-shell [class~="btn"][class~="primary"],
.professional-app .app-shell [class~="btn"][class~="teal"]{
  text-shadow:none !important;
}


/* ===== V54 — Capa do topo exclusiva do tema Clássico Azul Escuro ===== */
.public-body.theme-classic-dark .hero.has-default-cover{
  background:
    radial-gradient(circle at 86% 16%,rgba(107,170,188,.28) 0,rgba(107,170,188,0) 28%),
    radial-gradient(circle at 8% 92%,rgba(55,111,137,.22) 0,rgba(55,111,137,0) 31%),
    linear-gradient(115deg,#0f3044 0%,#16475d 48%,#2b6879 73%,#6a8990 100%) !important;
}
.public-body.theme-classic-dark .hero.has-custom-cover{
  background-image:
    linear-gradient(90deg,rgba(7,34,52,.76) 0%,rgba(12,48,66,.62) 48%,rgba(21,57,72,.48) 100%),
    var(--classic-cover-image) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}
.public-body.theme-classic-dark .hero.has-default-cover:before,
.public-body.theme-classic-dark .hero.has-custom-cover:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.035));
  z-index:0;
}
.public-body.theme-classic-dark .hero.has-default-cover:after,
.public-body.theme-classic-dark .hero.has-custom-cover:after{
  background:rgba(172,211,218,.12) !important;
  border:1px solid rgba(213,237,240,.13);
}
.public-body.theme-classic-dark .hero.has-default-cover h1,
.public-body.theme-classic-dark .hero.has-custom-cover h1,
.public-body.theme-classic-dark .hero.has-default-cover .crp,
.public-body.theme-classic-dark .hero.has-custom-cover .crp,
.public-body.theme-classic-dark .hero.has-default-cover .bio,
.public-body.theme-classic-dark .hero.has-custom-cover .bio,
.public-body.theme-classic-dark .hero.has-default-cover .trust,
.public-body.theme-classic-dark .hero.has-custom-cover .trust,
.public-body.theme-classic-dark .hero.has-default-cover .trust span,
.public-body.theme-classic-dark .hero.has-custom-cover .trust span{
  color:#fff !important;
  text-shadow:0 1px 2px rgba(0,0,0,.22);
}
.public-body.theme-classic-dark .hero.has-default-cover .trust-icon,
.public-body.theme-classic-dark .hero.has-custom-cover .trust-icon,
.public-body.theme-classic-dark .hero.has-default-cover .trust:nth-child(2) .trust-icon,
.public-body.theme-classic-dark .hero.has-custom-cover .trust:nth-child(2) .trust-icon,
.public-body.theme-classic-dark .hero.has-default-cover .trust:nth-child(3) .trust-icon,
.public-body.theme-classic-dark .hero.has-custom-cover .trust:nth-child(3) .trust-icon{
  background:rgba(238,248,248,.92) !important;
  color:#0f3044 !important;
  border:1px solid rgba(255,255,255,.38);
}
.public-body.theme-classic-dark .hero.has-default-cover .btn,
.public-body.theme-classic-dark .hero.has-custom-cover .btn{
  background:#eef7f5 !important;
  border-color:#eef7f5 !important;
  color:#0f3044 !important;
}
.public-body.theme-classic-dark .hero.has-default-cover .btn:hover,
.public-body.theme-classic-dark .hero.has-custom-cover .btn:hover{
  background:#dcece8 !important;
  border-color:#dcece8 !important;
  color:#0f3044 !important;
}
.public-body.theme-classic-dark .hero.has-default-cover .portrait,
.public-body.theme-classic-dark .hero.has-custom-cover .portrait{
  border:1px solid rgba(255,255,255,.36);
  box-shadow:0 12px 34px rgba(5,28,43,.20);
}

.professional-app .classic-cover-field{
  min-width:0;
}
.professional-app .classic-cover-current{
  margin-top:9px;
  padding:9px;
  border:1px solid #cfdad7;
  border-radius:10px;
  background:#f4f7f5;
}
.professional-app .classic-cover-current img{
  display:block;
  width:100%;
  height:92px;
  object-fit:cover;
  object-position:center;
  border-radius:8px;
  border:1px solid #c6d3cf;
}
.professional-app .classic-cover-remove{
  margin-top:8px !important;
  color:#000 !important;
  font-size:12px !important;
}
.professional-app .classic-cover-default-note{
  margin-top:9px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 9px;
  border:1px solid #cfdad7;
  border-radius:9px;
  background:#f4f7f5;
  color:#000;
  font-size:12px;
}
.professional-app .classic-cover-default-swatch{
  width:44px;
  height:24px;
  flex:0 0 auto;
  border-radius:7px;
  background:linear-gradient(115deg,#0f3044,#16475d 52%,#4f7882);
  border:1px solid #466c78;
}
@media(max-width:760px){
  .public-body.theme-classic-dark .hero.has-custom-cover{background-position:center top !important}
  .professional-app .classic-cover-current img{height:78px}
}

/* ===== V56 — Landing page: correção responsiva real para celular ===== */
@media (max-width: 980px){
  .danxis-psychology-landing{
    overflow-x:hidden;
  }
  .danxis-psychology-landing .workflow .section-head,
  .danxis-psychology-landing .pillars .section-head{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 28px !important;
  }
  .danxis-psychology-landing .workflow .section-head .eyebrow,
  .danxis-psychology-landing .pillars .section-head .eyebrow{
    display:flex !important;
    width:100% !important;
    max-width:none !important;
    align-items:center !important;
    gap:10px !important;
    white-space:normal !important;
    margin:0 0 14px !important;
    line-height:1.35 !important;
  }
  .danxis-psychology-landing .workflow .section-head h2,
  .danxis-psychology-landing .pillars .section-head h2{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 14px !important;
  }
  .danxis-psychology-landing .workflow .section-head p,
  .danxis-psychology-landing .pillars .section-head p{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
  }
  .danxis-psychology-landing .modules-summary{
    width:100% !important;
  }
  .danxis-psychology-landing .modules-grid,
  .danxis-psychology-landing .journey{
    min-width:0 !important;
    width:100% !important;
  }
}

@media (max-width: 680px){
  .danxis-psychology-landing .section{
    padding:54px 0 !important;
  }
  .danxis-psychology-landing .pillars,
  .danxis-psychology-landing .workflow{
    overflow:hidden !important;
  }
  .danxis-psychology-landing .pillars .section-head,
  .danxis-psychology-landing .workflow .section-head{
    margin-bottom:24px !important;
  }
  .danxis-psychology-landing .pillars .section-head h2,
  .danxis-psychology-landing .workflow .section-head h2{
    font-size:30px !important;
    line-height:1.08 !important;
    letter-spacing:-.8px !important;
    font-weight:600 !important;
  }
  .danxis-psychology-landing .pillars .section-head p,
  .danxis-psychology-landing .workflow .section-head p{
    font-size:12px !important;
    line-height:1.7 !important;
  }
  .danxis-psychology-landing .pillars .section-head .eyebrow,
  .danxis-psychology-landing .workflow .section-head .eyebrow{
    font-size:9.5px !important;
  }
  .danxis-psychology-landing .modules-summary{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
    margin-bottom:18px !important;
  }
  .danxis-psychology-landing .modules-summary span{
    display:block !important;
    width:100% !important;
    text-align:left !important;
    padding:9px 12px !important;
    white-space:normal !important;
  }
  .danxis-psychology-landing .modules-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .danxis-psychology-landing .module-card,
  .danxis-psychology-landing .module-card.site{
    width:100% !important;
    min-width:0 !important;
    grid-column:auto !important;
    min-height:auto !important;
    padding:18px !important;
    border-radius:20px !important;
  }
  .danxis-psychology-landing .module-card.site .module-points{
    grid-template-columns:1fr !important;
  }
  .danxis-psychology-landing .module-head{
    margin-bottom:14px !important;
  }
  .danxis-psychology-landing .module-card h3{
    font-size:14px !important;
    line-height:1.35 !important;
  }
  .danxis-psychology-landing .module-card>p,
  .danxis-psychology-landing .module-points li{
    font-size:12px !important;
  }
  .danxis-psychology-landing .journey{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  .danxis-psychology-landing .journey:before{
    display:none !important;
  }
  .danxis-psychology-landing .step{
    width:100% !important;
    min-width:0 !important;
    padding:18px !important;
    border:1px solid #d7ddd8 !important;
    border-radius:20px !important;
  }
  .danxis-psychology-landing .step-dot{
    margin-bottom:14px !important;
  }
  .danxis-psychology-landing .step h3{
    font-size:14px !important;
  }
  .danxis-psychology-landing .step p{
    max-width:none !important;
    font-size:12px !important;
  }
  .danxis-psychology-landing .quick-features{
    width:100% !important;
    min-width:0 !important;
  }
  .danxis-psychology-landing .quick-features article{
    width:100% !important;
    min-width:0 !important;
  }
}


/* ===== V57 — agendamento em página separada ===== */
.booking-step-body{background:#f3f1ed;color:#111;min-height:100vh}
.booking-step-page,.booking-legal-page{min-height:100vh;padding:28px 18px 48px;background:linear-gradient(180deg,#f7f5f1 0%,#eeefec 100%)}
.booking-step-wrap{width:min(920px,100%);margin:0 auto}.booking-step-wrap.legal-wrap{width:min(860px,100%)}
.booking-step-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
.booking-brand{display:flex;align-items:center;gap:11px;color:#102f3f;text-decoration:none}.booking-brand-mark{width:42px;height:42px;border:1px solid #7fa9a3;border-radius:12px;display:grid;place-items:center;font-size:13px;font-weight:600;background:#e4efeb}.booking-brand strong{display:block;font-size:13px;font-weight:600}.booking-brand small{display:block;margin-top:2px;font-size:11px;color:#111}.booking-back{font-size:12px;color:#145c59;text-decoration:none}.booking-back:hover{text-decoration:underline}
.booking-summary-card{display:grid;grid-template-columns:1.4fr 1fr 1fr;background:linear-gradient(135deg,#103d50,#476f6b);color:#fff;border-radius:18px;padding:18px 20px;margin-bottom:14px}.booking-summary-card>div{padding:2px 18px;border-right:1px solid rgba(255,255,255,.18)}.booking-summary-card>div:first-child{padding-left:0}.booking-summary-card>div:last-child{border-right:0;padding-right:0}.booking-summary-card span,.booking-summary-card small{display:block;color:#fff;font-size:11px}.booking-summary-card strong{display:block;font-size:14px;font-weight:500;margin:5px 0}
.booking-step-card{background:#fff;border:1px solid #d8dfdc;border-radius:18px;padding:26px 28px;box-shadow:0 12px 34px rgba(24,57,61,.055)}.booking-step-eyebrow{font-size:10px;letter-spacing:.12em;color:#226b66;margin-bottom:8px}.booking-step-card h1{font-size:22px;font-weight:500;margin:0 0 7px;color:#111}.booking-step-lead{font-size:12px;color:#111;margin:0 0 22px;line-height:1.55}
.booking-data-form{gap:13px}.booking-data-form .field label{color:#111;font-size:12px}.booking-data-form .field input,.booking-data-form .field select{height:42px;background:#fff;color:#111;border:1px solid #cbd7d3;border-radius:10px;font-size:12px}.booking-data-form .booking-section-title{font-size:13px;font-weight:500;margin-top:8px;color:#111}
.booking-consent-compact{margin-top:8px;padding-top:18px;border-top:1px solid #dce3df}.booking-consent-check{display:grid;grid-template-columns:20px 1fr;gap:9px;align-items:start;font-size:12px;color:#111;line-height:1.5;cursor:pointer}.booking-consent-check input{width:18px;height:18px;margin:1px 0 0;accent-color:#087b68}.booking-consent-check strong{font-weight:500}.booking-continue-btn{width:100%;height:48px;border:0;border-radius:999px;background:#0b8b73;color:#fff;font-size:12px;font-weight:600;margin-top:20px;cursor:pointer}.booking-continue-btn:hover{background:#087a65}.booking-consent-compact p{text-align:center;font-size:12px;line-height:1.55;color:#111;margin:14px auto 0;max-width:720px}.booking-consent-compact a{color:#087262;text-decoration:none}.booking-consent-compact a:hover{text-decoration:underline}.booking-legal-page .booking-back{display:inline-block;margin-bottom:14px}.legal-reader{font-size:12px;line-height:1.7;color:#111;border-top:1px solid #e1e5e2;padding-top:18px}
@media(max-width:700px){.booking-step-page,.booking-legal-page{padding:16px 12px 34px}.booking-step-top{align-items:flex-start;flex-direction:column;margin-bottom:14px}.booking-summary-card{grid-template-columns:1fr;padding:15px 17px}.booking-summary-card>div{padding:10px 0;border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.booking-summary-card>div:first-child{padding-top:0}.booking-summary-card>div:last-child{border-bottom:0;padding-bottom:0}.booking-step-card{padding:20px 16px;border-radius:15px}.booking-step-card h1{font-size:19px}.booking-data-form .form-grid{grid-template-columns:1fr}.booking-continue-btn{height:46px}.booking-consent-compact p{text-align:left}}

/* ===== V58 — Tema público CLEAN ===== */
.theme-choice-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.clean-preview{background:#eef2f0!important}
.clean-preview .mini-nav{height:30px;background:#fff!important;border-bottom:1px solid #d8e1de!important}
.mini-clean-hero{height:126px;padding:12px;display:grid;grid-template-columns:1.15fr .85fr;gap:10px;align-items:center;background:linear-gradient(115deg,#0a324a 0%,#123f50 58%,#587b72 100%)}
.mini-clean-title{display:block;height:76px;border-radius:6px;background:repeating-linear-gradient(to bottom,#fff 0 7px,transparent 7px 18px);opacity:.92}
.mini-clean-photo{display:block;width:78px;height:78px;border-radius:50%;justify-self:center;background:#d7e5df;border:4px solid rgba(255,255,255,.45)}
.mini-clean-content{display:grid;grid-template-columns:1.25fr .75fr .75fr;gap:7px;padding:10px;background:#f7f9f8}
.mini-clean-content i{height:64px;border-radius:8px;background:#fff;border:1px solid #d8e1de}

.public-body.theme-clean{background:#eef2f0!important;color:#000!important;font-size:12px}
.public-body.theme-clean .public-nav{height:76px!important;background:#fff!important;border-bottom:1px solid #dde5e2!important;box-shadow:none!important}
.public-body.theme-clean .public-nav>.container{width:min(1180px,calc(100% - 48px))!important;max-width:none!important}
.public-body.theme-clean .public-nav .brand{color:#0b344b!important;font-size:14px!important;font-weight:600!important;gap:0!important}
.public-body.theme-clean .public-nav .brand-mark{display:none!important}
.public-body.theme-clean .public-links a{color:#000!important;font-size:12px!important;font-weight:400!important}
.public-body.theme-clean .public-cta{background:#0b344b!important;border:1px solid #0b344b!important;color:#fff!important;border-radius:999px!important;padding:11px 18px!important;font-size:12px!important}
.public-body.theme-clean .public-cta:hover{background:#174b58!important}

.clean-hero{position:relative;overflow:hidden;padding:50px 0;background:radial-gradient(circle at 88% 15%,rgba(164,207,192,.14),transparent 28%),linear-gradient(112deg,#0a324a 0%,#123f50 58%,#587b72 100%);color:#fff}
.clean-hero:before,.clean-hero:after{content:"";position:absolute;border:1px solid rgba(216,237,231,.14);border-radius:50%;pointer-events:none}
.clean-hero:before{width:390px;height:390px;left:-210px;top:150px}.clean-hero:after{width:470px;height:470px;right:-180px;top:55px}
.clean-hero>.container,.clean-main>.container,.clean-about-section>.container,.clean-agenda-section>.container,.clean-final-cta>.container,.clean-footer>.container{width:min(1180px,calc(100% - 48px))!important;max-width:none!important;margin:0 auto}
.clean-hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:48px;align-items:center;position:relative;z-index:2}
.clean-eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:14px;font-size:9px!important;letter-spacing:.13em;text-transform:uppercase;color:#fff}
.clean-eyebrow span,.clean-section-label span{width:8px;height:8px;border-radius:50%;border:1px solid #7fc0b3;display:inline-block;flex:none}
.clean-hero-copy h1{margin:0;max-width:650px;font-family:Georgia,'Times New Roman',serif;font-size:56px!important;line-height:1.01;font-weight:400!important;letter-spacing:-1.5px;color:#fff!important}
.clean-hero-copy h1 em{font-style:italic;font-weight:400;color:#bed9d0}
.clean-hero-copy>p{max-width:640px;margin:20px 0 0;color:#fff!important;font-size:12px!important;line-height:1.65}
.clean-hero-actions{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}
.clean-btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 18px;border-radius:999px;background:linear-gradient(90deg,#b2d4c8,#93bbae);border:1px solid #9fc4b8;color:#123f45!important;font-size:12px!important;font-weight:500!important}
.clean-btn-outline{background:transparent;border-color:rgba(255,255,255,.38);color:#fff!important}
.clean-profile-card{border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:22px;background:rgba(8,45,62,.28);backdrop-filter:blur(4px)}
.clean-profile-head{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center}
.clean-profile-photo{width:190px;height:190px;border-radius:50%;overflow:hidden;border:3px solid rgba(255,255,255,.32);display:grid;place-items:center;background:rgba(255,255,255,.1);font-size:36px}
.clean-profile-photo img{width:100%;height:100%;object-fit:cover}
.clean-profile-card h2{margin:0 0 5px;font-size:20px!important;line-height:1.15;font-weight:500!important;color:#fff!important}
.clean-crp{font-size:12px!important;color:#fff!important}
.clean-profile-card>p{margin:17px 0 0;color:#fff!important;font-size:12px!important;line-height:1.55}
.clean-profile-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}.clean-profile-tags span{border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.07);color:#fff!important;border-radius:999px;padding:7px 10px;font-size:12px!important}

.clean-about-section{padding:22px 0;background:#eef2f0}
.clean-about-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}
.clean-light-card{background:#fbfcfb;border:1px solid #d4deda;border-radius:16px;padding:18px;color:#000}
.clean-section-kicker{font-size:9px!important;letter-spacing:.12em;color:#315f5c;text-transform:uppercase;margin-bottom:8px;font-weight:600}
.clean-light-card h2{margin:0 0 10px;font-size:19px!important;color:#0b344b!important;font-weight:500!important}
.clean-light-card h3{margin:0 0 8px;font-size:14px!important;color:#0b344b!important;font-weight:500!important}
.clean-light-card p,.clean-about-text{font-size:12px!important;line-height:1.65;color:#000!important}
.clean-specialties{display:flex;flex-wrap:wrap;gap:7px}.clean-specialties span{padding:7px 10px;border-radius:999px;background:#e7efec;border:1px solid #d2e0db;color:#000!important;font-size:12px!important}
.clean-open-row{margin-top:16px;padding-top:13px;border-top:1px solid #e0e7e4;display:flex;justify-content:space-between;align-items:center;gap:12px;color:#000;font-size:12px}.clean-open-row strong{color:#245c52;font-weight:500}.clean-open-row strong.closed{color:#7a3438}

.clean-main{padding:26px 0 30px;background:#f7f9f8}
.clean-content-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:18px}
.clean-section-label{display:flex;align-items:center;gap:8px;margin-bottom:11px;font-size:9px!important;letter-spacing:.12em;text-transform:uppercase;color:#173844;font-weight:600}
.clean-section-label span{background:#6fa797;border:0}
.clean-featured-card{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;padding:14px;background:#fff;border:1px solid #d5dfdb;border-radius:16px;align-items:center}
.clean-featured-cover{min-height:250px;border-radius:12px;overflow:hidden;background:#e8efec}.clean-featured-cover img{width:100%;height:100%;min-height:250px;object-fit:cover}.clean-cover-placeholder{width:100%;height:100%;min-height:160px;display:grid;place-items:center;background:linear-gradient(135deg,#e3eeea,#d4e4de);color:#28574f;font-size:12px}
.clean-featured-body{padding:6px}.clean-category{display:block;font-size:9px!important;letter-spacing:.08em;text-transform:uppercase;color:#4a7c73!important;font-weight:600}
.clean-featured-body h2{margin:7px 0 9px;font-size:20px!important;line-height:1.15;color:#0b2d3b!important;font-weight:500!important}.clean-featured-body p{margin:0;color:#000!important;font-size:12px!important;line-height:1.55}.clean-read-btn{display:inline-flex;margin-top:14px;padding:10px 15px;border-radius:999px;background:#dbeae4;color:#143f45!important;border:1px solid #c6dad2;font-size:12px!important;font-weight:500}
.clean-empty{padding:25px;background:#fff;border:1px solid #d5dfdb;border-radius:16px;color:#000;font-size:12px}
.clean-more-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:20px 0 10px}.clean-more-head .clean-section-label{margin:0}.clean-more-head>a{color:#356b63!important;font-size:12px!important}
.clean-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.clean-post-card{background:#fff;border:1px solid #d5dfdb;border-radius:14px;overflow:hidden}.clean-post-cover{height:145px;background:#e6eeeb}.clean-post-cover img{width:100%;height:100%;object-fit:cover}.clean-post-body{padding:11px}.clean-post-body h3{margin:6px 0 7px;font-size:13px!important;line-height:1.25;color:#0b2d3b!important;font-weight:500!important}.clean-post-body p{margin:0;color:#000!important;font-size:12px!important;line-height:1.45}.clean-post-body>a{display:inline-block;margin-top:9px;color:#356b63!important;font-size:12px!important;font-weight:500}
.clean-sidebar{display:grid;gap:13px;align-content:start}.clean-side-card{background:#fff;border:1px solid #d5dfdb;border-radius:16px;padding:15px}.clean-side-card h3{margin:0 0 11px;color:#0b344b!important;font-size:14px!important;font-weight:500!important}.clean-topic-list{display:grid;gap:7px}.clean-topic-list>span{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border-radius:10px;background:#eef3f1;color:#000!important;font-size:12px!important}.clean-topic-list i{display:block;width:8px;height:8px;border-radius:50%;background:#6b9d91}
.clean-agenda-mini{padding:17px;border-radius:16px;background:linear-gradient(145deg,#0c344b,#1d5961);color:#fff}.clean-calendar-icon{font-size:20px;margin-bottom:8px;color:#b8d9cf}.clean-agenda-mini h3{margin:0 0 8px;color:#fff!important;font-size:15px!important;font-weight:500!important}.clean-agenda-mini p{margin:0;color:#fff!important;font-size:12px!important;line-height:1.5}.clean-agenda-mini a{display:flex;align-items:center;justify-content:center;margin-top:14px;min-height:38px;border-radius:999px;background:#a8cbbf;color:#143e44!important;font-size:12px!important;font-weight:500}

.clean-agenda-section{padding:30px 0;background:#eef2f0}.clean-agenda-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}.clean-agenda-head h2{margin:0 0 4px;color:#0b344b!important;font-size:22px!important;font-weight:500!important}.clean-agenda-head p{margin:0;color:#000!important;font-size:12px!important}.clean-price{text-align:right}.clean-price strong{display:block;color:#0b344b;font-size:20px;font-weight:500}.clean-price span{display:block;color:#000;font-size:12px;margin-top:3px}.clean-schedule-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px}.clean-label{display:block;color:#000;font-size:12px;margin-bottom:6px}.clean-date-input{width:100%;height:40px;border:1px solid #cbd9d4;border-radius:9px;background:#fff;color:#000;padding:0 10px;font-size:12px}.clean-note{margin-top:10px;padding:10px;border-radius:9px;background:#eef4f1;border:1px solid #dde8e4;color:#000;font-size:12px;line-height:1.45}.clean-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.clean-slot{height:38px;border:1px solid #bfd4cd;border-radius:9px;background:#edf4f1;color:#143f45;font-size:12px;cursor:pointer}.clean-slot:hover,.clean-slot.selected{background:#a9cfc2;border-color:#8eb9aa;color:#103a40}
.clean-final-cta{padding:18px 0 28px;background:#eef2f0}.clean-final-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 20px;background:linear-gradient(90deg,#deebe6,#f8faf9);border:1px solid #c8d7d2;border-radius:16px}.clean-final-cta strong{display:block;color:#0b344b;font-size:15px;font-weight:500}.clean-final-cta span{display:block;margin-top:4px;color:#000;font-size:12px}.clean-final-cta a{flex:none;display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:0 17px;border-radius:999px;background:#b2d0c6;color:#143f45!important;font-size:12px!important;font-weight:500}.clean-footer{background:#0b344b!important;color:#fff!important}.clean-footer strong,.clean-footer small{color:#fff!important}

/* Conteúdos e leitura no tema Clean */
.public-body.theme-clean .public-content-section{background:#f7f9f8!important;padding:34px 0 44px!important}.public-body.theme-clean .public-content-section>.container{width:min(1180px,calc(100% - 48px))!important;max-width:none!important}.public-body.theme-clean .section-head h2{color:#0b344b!important;font-size:24px!important;font-weight:500!important}.public-body.theme-clean .section-head p{color:#000!important;font-size:12px!important}.public-body.theme-clean .article-grid{gap:14px!important}.public-body.theme-clean .article-card{background:#fff!important;border:1px solid #d5dfdb!important;border-radius:14px!important;box-shadow:none!important}.public-body.theme-clean .article-card .article-cover{height:210px!important}.public-body.theme-clean .article-card .body{padding:14px!important}.public-body.theme-clean .article-card h3{color:#0b344b!important;font-weight:500!important}.public-body.theme-clean .article-card p{color:#000!important;font-size:12px!important}.public-body.theme-clean .category,.public-body.theme-clean .readmore{color:#3f756c!important}.public-body.theme-clean .public-footer{background:#0b344b!important;color:#fff!important}.public-body.theme-clean .public-footer strong,.public-body.theme-clean .public-footer small{color:#fff!important}
.public-body.theme-clean .article-page{min-height:calc(100vh - 76px);padding:34px 16px 48px;background:linear-gradient(180deg,#eaf0ed 0,#f7f9f8 240px)}.public-body.theme-clean .article-reader{max-width:900px!important;margin:0 auto!important;background:#fff!important;border:1px solid #d4deda!important;border-radius:18px!important;padding:30px!important;box-shadow:none!important}.public-body.theme-clean .article-reader h1{font-family:Georgia,'Times New Roman',serif!important;color:#0b344b!important;font-size:38px!important;font-weight:400!important;line-height:1.08!important}.public-body.theme-clean .article-reader .lead,.public-body.theme-clean .article-text,.public-body.theme-clean .article-reader .small.muted{color:#000!important;font-size:12px!important;line-height:1.75!important}.public-body.theme-clean .article-reader .authorbox{background:#eef4f1!important;border:1px solid #d7e3de!important}.public-body.theme-clean .article-reader .btn{background:#b2d1c6!important;border-color:#9fc0b5!important;color:#143f45!important}

@media(max-width:1100px){.theme-choice-grid-three{grid-template-columns:1fr 1fr!important}.clean-hero-grid{grid-template-columns:1fr;gap:28px}.clean-profile-card{max-width:720px}.clean-content-layout{grid-template-columns:1fr}.clean-sidebar{grid-template-columns:1fr 1fr}.clean-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clean-about-grid{grid-template-columns:1fr}.clean-schedule-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.public-body.theme-clean .public-links{display:none!important}.public-body.theme-clean .public-nav>.container,.clean-hero>.container,.clean-main>.container,.clean-about-section>.container,.clean-agenda-section>.container,.clean-final-cta>.container,.clean-footer>.container,.public-body.theme-clean .public-content-section>.container{width:calc(100% - 28px)!important}.clean-hero{padding:34px 0}.clean-hero-copy h1{font-size:42px!important}.clean-profile-head{grid-template-columns:150px 1fr}.clean-profile-photo{width:150px;height:150px}.clean-featured-card{grid-template-columns:1fr}.clean-sidebar{grid-template-columns:1fr}.clean-schedule-grid{grid-template-columns:1fr}.clean-slots{grid-template-columns:repeat(3,1fr)}.clean-final-cta>.container{flex-direction:column;align-items:flex-start}.clean-final-cta a{width:100%}}
@media(max-width:600px){.theme-choice-grid-three{grid-template-columns:1fr!important}.public-body.theme-clean .public-nav{height:68px!important}.public-body.theme-clean .public-cta{padding:9px 13px!important}.clean-hero{padding:28px 0}.clean-hero-copy h1{font-size:37px!important;letter-spacing:-.8px}.clean-hero-copy>p{font-size:12px!important}.clean-hero-actions{flex-direction:column}.clean-btn{width:100%}.clean-profile-card{padding:18px}.clean-profile-head{grid-template-columns:132px 1fr;gap:15px}.clean-profile-photo{width:132px;height:132px}.clean-profile-card h2{font-size:18px!important}.clean-post-grid{grid-template-columns:1fr}.clean-post-cover{height:190px}.clean-agenda-head{align-items:flex-start;flex-direction:column}.clean-price{text-align:left}.clean-slots{grid-template-columns:repeat(2,1fr)}.public-body.theme-clean .article-reader{padding:22px 17px!important}.public-body.theme-clean .article-reader h1{font-size:30px!important}}

/* ===== V61 — Cards premium da seção "Conheça o Danxis Psicologia Integrada" ===== */
.danxis-psychology-landing .pillars .modules-grid{
  display:grid !important;
  grid-template-columns:repeat(6,minmax(0,1fr)) !important;
  gap:18px !important;
  align-items:stretch !important;
}
.danxis-psychology-landing .pillars .module-card,
.danxis-psychology-landing .pillars .module-card.site{
  grid-column:span 2 !important;
  min-width:0 !important;
  min-height:345px !important;
  position:relative !important;
  overflow:hidden !important;
  padding:22px 24px 24px !important;
  border:1px solid #c9d8d2 !important;
  border-radius:24px !important;
  background:#f9fbfa !important;
  color:#000 !important;
  box-shadow:none !important;
  transition:border-color .2s ease,transform .2s ease !important;
}
.danxis-psychology-landing .pillars .module-card:nth-child(n+7){
  grid-column:span 3 !important;
}
.danxis-psychology-landing .pillars .module-card:nth-child(2),
.danxis-psychology-landing .pillars .module-card.tele,
.danxis-psychology-landing .pillars .module-card:nth-child(9){
  background:linear-gradient(180deg,#f9fbfa 0%,#edf6f2 100%) !important;
  border-color:#aacbc0 !important;
}
.danxis-psychology-landing .pillars .module-card:hover{
  transform:translateY(-2px) !important;
  border-color:#9dbbb0 !important;
}
.danxis-psychology-landing .pillars .module-card:before{
  content:"" !important;
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  height:5px !important;
  background:linear-gradient(90deg,#8fb8aa,#c6ddd4) !important;
  z-index:2 !important;
}
.danxis-psychology-landing .pillars .module-card:nth-child(2):before,
.danxis-psychology-landing .pillars .module-card.tele:before,
.danxis-psychology-landing .pillars .module-card:nth-child(9):before{
  height:6px !important;
  background:linear-gradient(90deg,#2f746d,#9bc4b6) !important;
}
.danxis-psychology-landing .pillars .module-card:after{
  content:"" !important;
  position:absolute !important;
  width:118px !important;
  height:118px !important;
  border:1px solid rgba(79,121,114,.10) !important;
  border-radius:50% !important;
  right:-55px !important;
  top:-52px !important;
  background:transparent !important;
  pointer-events:none !important;
}
.danxis-psychology-landing .pillars .module-head{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
  min-height:64px !important;
  margin:0 0 18px !important;
  padding:0 0 17px !important;
  border-bottom:1px solid #d9e4df !important;
  position:relative !important;
  z-index:3 !important;
}
.danxis-psychology-landing .pillars .module-icon,
.danxis-psychology-landing .pillars .module-card.tele .module-icon{
  width:46px !important;
  height:46px !important;
  flex:0 0 46px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:14px !important;
  background:linear-gradient(145deg,#dcebe5,#edf5f1) !important;
  border:1px solid #bfd3cc !important;
  color:#0d5360 !important;
}
.danxis-psychology-landing .pillars .module-icon svg{
  width:20px !important;
  height:20px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.8 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.danxis-psychology-landing .pillars .module-tag{
  display:block !important;
  min-width:0 !important;
  padding:0 !important;
  color:#0e3441 !important;
  font-size:10px !important;
  line-height:1.35 !important;
  letter-spacing:.10em !important;
  text-transform:uppercase !important;
  font-weight:600 !important;
}
.danxis-psychology-landing .pillars .module-card h3{
  margin:0 0 8px !important;
  color:#0a2c39 !important;
  font-size:14px !important;
  line-height:1.35 !important;
  font-weight:600 !important;
}
.danxis-psychology-landing .pillars .module-card>p{
  margin:0 0 17px !important;
  color:#000 !important;
  font-size:12px !important;
  line-height:1.6 !important;
  font-weight:400 !important;
}
.danxis-psychology-landing .pillars .module-points,
.danxis-psychology-landing .pillars .module-card.site .module-points{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}
.danxis-psychology-landing .pillars .module-points li{
  position:relative !important;
  min-height:20px !important;
  margin:0 !important;
  padding:1px 0 0 30px !important;
  color:#000 !important;
  font-size:12px !important;
  line-height:1.48 !important;
  font-weight:400 !important;
}
.danxis-psychology-landing .pillars .module-points li:before{
  content:"✓" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:20px !important;
  height:20px !important;
  display:grid !important;
  place-items:center !important;
  border:1px solid #c6dad2 !important;
  border-radius:7px !important;
  background:#e0eee8 !important;
  color:#356f66 !important;
  font-size:11px !important;
  line-height:1 !important;
  font-weight:600 !important;
}
.danxis-psychology-landing .pillars .seo-note{
  margin-top:17px !important;
  padding:13px !important;
  border:1px solid #cbdcd5 !important;
  border-radius:14px !important;
  background:#edf4f1 !important;
  color:#000 !important;
}
.danxis-psychology-landing .pillars .seo-note b,
.danxis-psychology-landing .pillars .seo-note span{
  color:#000 !important;
  font-size:12px !important;
  line-height:1.5 !important;
  font-weight:400 !important;
}
.danxis-psychology-landing .pillars .seo-note b{
  color:#0a2c39 !important;
  font-weight:600 !important;
  margin-bottom:3px !important;
}
.danxis-psychology-landing .pillars .seo-badge{
  min-width:34px !important;
  height:30px !important;
  background:#d8eae4 !important;
  border:1px solid #c1d8d0 !important;
  color:#245f57 !important;
}
.danxis-psychology-landing .pillars .seo-badge svg{
  width:17px !important;
  height:17px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.7 !important;
}
.danxis-psychology-landing .pillars .modules-summary{
  gap:8px !important;
  margin-bottom:24px !important;
}
.danxis-psychology-landing .pillars .modules-summary span,
.danxis-psychology-landing .pillars .modules-summary span:nth-child(2),
.danxis-psychology-landing .pillars .modules-summary span:nth-child(3),
.danxis-psychology-landing .pillars .modules-summary span:nth-child(4){
  color:#fff !important;
  border:1px solid rgba(255,255,255,.20) !important;
  background:rgba(255,255,255,.055) !important;
  box-shadow:none !important;
  padding:8px 13px !important;
}

@media(max-width:1080px){
  .danxis-psychology-landing .pillars .modules-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .danxis-psychology-landing .pillars .module-card,
  .danxis-psychology-landing .pillars .module-card.site,
  .danxis-psychology-landing .pillars .module-card:nth-child(n+7){
    grid-column:auto !important;
  }
}
@media(max-width:680px){
  .danxis-psychology-landing .pillars .modules-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .danxis-psychology-landing .pillars .module-card,
  .danxis-psychology-landing .pillars .module-card.site,
  .danxis-psychology-landing .pillars .module-card:nth-child(n+7){
    grid-column:auto !important;
    min-height:auto !important;
    padding:19px !important;
    border-radius:20px !important;
  }
  .danxis-psychology-landing .pillars .module-head{
    min-height:56px !important;
    padding-bottom:14px !important;
    margin-bottom:15px !important;
  }
  .danxis-psychology-landing .pillars .module-icon,
  .danxis-psychology-landing .pillars .module-card.tele .module-icon{
    width:42px !important;
    height:42px !important;
    flex-basis:42px !important;
  }
}

/* ===== V63 — RESPONSIVIDADE GLOBAL: celular + tablet + desktop ===== */
html,body{max-width:100%;overflow-x:hidden}
img,video,canvas,svg,iframe{max-width:100%}
input,select,textarea,button{max-width:100%;min-width:0}
.card,.card-pad,.field,.toolbar,.action-row,.status-item,.booking-card,.notice,.tabs,.table-wrap{min-width:0}
.mobile-menu-toggle,.public-menu-toggle,.landing-menu-toggle,.flow-menu-toggle,.mobile-menu-backdrop{display:none}

/* ---------- Navegação privada: drawer real em tablets/celulares ---------- */
@media(max-width:1024px){
  body.professional-app,body.admin-app{overflow-x:hidden!important}
  body.private-menu-open{overflow:hidden!important}
  .professional-app .app-shell,.admin-app .app-shell{display:block!important;grid-template-columns:none!important;min-height:100vh!important;overflow:visible!important}
  .professional-app .sidebar,.admin-app .sidebar{
    position:fixed!important;inset:0 auto 0 0!important;width:min(310px,86vw)!important;height:100dvh!important;min-height:0!important;
    transform:translateX(-105%)!important;transition:transform .22s ease!important;z-index:250!important;overflow-y:auto!important;overflow-x:hidden!important;
    padding:20px 14px!important;display:flex!important;flex-direction:column!important;
  }
  .professional-app .app-shell.mobile-menu-open .sidebar,.admin-app .app-shell.mobile-menu-open .sidebar{transform:translateX(0)!important}
  .professional-app .sidebar .nav,.admin-app .sidebar .nav{display:grid!important;grid-template-columns:1fr!important;overflow:visible!important;gap:5px!important}
  .professional-app .sidebar .nav a,.admin-app .sidebar .nav a{white-space:normal!important;min-height:42px!important}
  .professional-app .sidebar .nav-label,.admin-app .sidebar .nav-label{display:block!important}
  .professional-app .side-bottom,.admin-app .side-bottom{display:block!important;margin-top:auto!important}
  .professional-app .app-main,.admin-app .app-main{grid-column:auto!important;width:100%!important;min-width:0!important}
  .professional-app .topbar,.admin-app .topbar{
    position:sticky!important;top:0!important;z-index:120!important;height:auto!important;min-height:72px!important;
    padding:12px 16px!important;gap:12px!important;background:#f3f5f4!important;
  }
  .admin-app .topbar{background:#fff!important}
  .mobile-menu-toggle{
    display:grid!important;place-items:center!important;flex:0 0 40px!important;width:40px!important;height:40px!important;border-radius:11px!important;
    border:1px solid #c7d5d0!important;background:#fff!important;color:#0f3044!important;font-size:20px!important;line-height:1!important;padding:0!important;
  }
  .professional-app .topbar>div:first-of-type,.admin-app .topbar>div:first-of-type{min-width:0!important;flex:1!important}
  .professional-app .topbar h1,.admin-app .topbar h1{font-size:19px!important;line-height:1.2!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .professional-app .topbar p,.admin-app .topbar p{font-size:11px!important;line-height:1.35!important;white-space:normal!important}
  .professional-app .content,.admin-app .content{width:100%!important;max-width:100%!important;padding:16px!important;margin:0!important;min-width:0!important}
  .mobile-menu-backdrop{position:fixed!important;inset:0!important;border:0!important;background:rgba(3,18,27,.52)!important;z-index:240!important;padding:0!important}
  .professional-app .app-shell.mobile-menu-open .mobile-menu-backdrop,.admin-app .app-shell.mobile-menu-open .mobile-menu-backdrop{display:block!important}
  .professional-app .kpis,.admin-app .kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .professional-app .grid-2,.professional-app .grid-3,.admin-app .grid-2,.admin-app .grid-3{grid-template-columns:1fr!important}
  .professional-app .agenda-settings-grid,.professional-app .agenda-compact .availability-week{grid-template-columns:1fr!important}
  .professional-app .portal-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .professional-app .blog-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .professional-app .theme-choice-grid,.professional-app .theme-choice-grid-two,.professional-app .theme-choice-grid-three{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:760px){
  .professional-app .content,.admin-app .content{padding:12px!important}
  .professional-app .topbar,.admin-app .topbar{padding:10px 12px!important;min-height:68px!important}
  .professional-app .topbar h1,.admin-app .topbar h1{font-size:17px!important}
  .professional-app .user-chip,.admin-app .user-chip{gap:7px!important;flex:0 0 auto!important}
  .professional-app .user-chip .avatar,.admin-app .user-chip .avatar{width:38px!important;height:38px!important;min-width:38px!important}
  .professional-app .user-chip>div:last-child,.admin-app .user-chip>div:last-child{display:none!important}
  .professional-app .page-head,.admin-app .page-head{align-items:stretch!important;flex-direction:column!important;gap:9px!important}
  .professional-app .page-head>.action-row,.admin-app .page-head>.action-row{width:100%!important}
  .professional-app .page-head>.action-row .btn,.admin-app .page-head>.action-row .btn{flex:1 1 auto!important}
  .professional-app .kpis,.admin-app .kpis{grid-template-columns:1fr!important}
  .professional-app .portal-quick-grid,.professional-app .blog-hub-grid,
  .professional-app .theme-choice-grid,.professional-app .theme-choice-grid-two,.professional-app .theme-choice-grid-three{grid-template-columns:1fr!important}
  .professional-app .toolbar,.admin-app .toolbar{align-items:stretch!important;flex-direction:column!important}
  .professional-app .toolbar .search,.admin-app .toolbar .search{width:100%!important;min-width:0!important}
  .professional-app .form-grid,.admin-app .form-grid{grid-template-columns:1fr!important}
  .professional-app .form-actions,.admin-app .form-actions{align-items:stretch!important;flex-direction:column!important}
  .professional-app .form-actions .btn,.admin-app .form-actions .btn{width:100%!important}
  .professional-app .booking-card,.admin-app .booking-card{grid-template-columns:1fr!important}
  .professional-app .status-item,.admin-app .status-item,.professional-app .switchline,.admin-app .switchline{align-items:flex-start!important;flex-direction:column!important}
  .professional-app .day-row,.admin-app .day-row{grid-template-columns:1fr!important;gap:7px!important}
  .professional-app .action-row,.admin-app .action-row{width:100%!important}
  .professional-app .action-row .btn,.admin-app .action-row .btn{max-width:100%!important}
  .professional-app .agenda-compact .availability-range{grid-template-columns:minmax(0,1fr) 14px minmax(0,1fr) 28px!important;gap:5px!important}
  .professional-app .portal-quick-item{grid-template-columns:42px minmax(0,1fr)!important;min-height:68px!important;padding:10px!important}
  .professional-app .portal-quick-icon{width:42px!important;height:42px!important}
  .professional-app details>summary{max-width:100%!important;white-space:normal!important}
}

/* Tabelas privadas viram cartões no celular — sem rolagem lateral da página. */
@media(max-width:760px){
  .professional-app .table-wrap,.admin-app .table-wrap{overflow:visible!important;border:0!important;background:transparent!important}
  .professional-app table.responsive-card-table,.admin-app table.responsive-card-table{display:block!important;min-width:0!important;width:100%!important;background:transparent!important}
  .professional-app table.responsive-card-table thead,.admin-app table.responsive-card-table thead{display:none!important}
  .professional-app table.responsive-card-table tbody,.admin-app table.responsive-card-table tbody{display:grid!important;gap:10px!important}
  .professional-app table.responsive-card-table tr,.admin-app table.responsive-card-table tr{display:block!important;background:#fafbfa!important;border:1px solid #d4ddda!important;border-radius:12px!important;padding:8px 12px!important;overflow:hidden!important}
  .admin-app table.responsive-card-table tr{background:#fff!important;border-color:#dbe4e8!important}
  .professional-app table.responsive-card-table td,.admin-app table.responsive-card-table td{
    display:grid!important;grid-template-columns:minmax(92px,36%) minmax(0,1fr)!important;gap:10px!important;align-items:start!important;
    width:100%!important;min-width:0!important;padding:9px 0!important;border-bottom:1px solid #e1e7e4!important;white-space:normal!important;overflow-wrap:anywhere!important;
  }
  .professional-app table.responsive-card-table td:last-child,.admin-app table.responsive-card-table td:last-child{border-bottom:0!important}
  .professional-app table.responsive-card-table td::before,.admin-app table.responsive-card-table td::before{content:attr(data-label);font-size:10px!important;font-weight:600!important;color:#315d58!important;line-height:1.35!important}
  .admin-app table.responsive-card-table td::before{color:#51616b!important}
  .professional-app table.responsive-card-table td[colspan],.admin-app table.responsive-card-table td[colspan]{grid-template-columns:1fr!important}
  .professional-app table.responsive-card-table td[colspan]::before,.admin-app table.responsive-card-table td[colspan]::before{display:none!important}
}

/* ---------- Site principal / contratação ---------- */
@media(max-width:1100px){
  .danxis-psychology-landing .container{width:calc(100% - 36px)!important;max-width:100%!important}
  .danxis-psychology-landing .hero-grid,.danxis-psychology-landing .showcase-grid,.danxis-psychology-landing .plan-wrap{grid-template-columns:1fr!important;gap:34px!important}
  .danxis-psychology-landing .hero-grid{min-height:auto!important;padding:48px 0!important}
  .danxis-psychology-landing .visual{min-height:auto!important;max-width:760px!important;margin:auto!important;width:100%!important}
  .danxis-psychology-landing .quick-features{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .danxis-psychology-landing .quick-features article{border:0!important;border-bottom:1px solid #d8e1dc!important}
  .danxis-psychology-landing .quick-features article:nth-child(odd){border-right:1px solid #d8e1dc!important}
  .danxis-psychology-landing .journey{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .danxis-psychology-landing .journey:before{display:none!important}
  .danxis-psychology-landing .final-card{grid-template-columns:1fr!important}
}

@media(max-width:760px){
  .danxis-psychology-landing .topbar{height:68px!important;min-height:68px!important;padding:0!important;overflow:visible!important}
  .danxis-psychology-landing .topbar .nav{position:relative!important;width:calc(100% - 24px)!important;gap:8px!important}
  .danxis-psychology-landing .brand-logo{height:34px!important;max-width:170px!important}
  .landing-menu-toggle{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border:1px solid #b9cbc4!important;border-radius:11px!important;background:#fff!important;color:#0f3044!important;font-size:19px!important;order:2!important}
  .danxis-psychology-landing .navlinks{position:absolute!important;left:0!important;right:0!important;top:54px!important;display:none!important;grid-template-columns:1fr!important;gap:2px!important;padding:10px!important;background:#fff!important;border:1px solid #d8e1dd!important;border-radius:14px!important;box-shadow:0 18px 34px rgba(15,48,68,.13)!important;z-index:100!important}
  .danxis-psychology-landing .topbar.nav-open .navlinks{display:grid!important}
  .danxis-psychology-landing .navlinks>a,.danxis-psychology-landing .navlinks>a:not(.login):not(.cta),.danxis-psychology-landing .navlinks .login,.danxis-psychology-landing .navlinks .cta{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-height:42px!important;padding:0 12px!important;border-radius:9px!important;color:#000!important;background:#fff!important;border:0!important}
  .danxis-psychology-landing .navlinks .cta{background:#0f3044!important;color:#fff!important;justify-content:center!important;margin-top:4px!important}
  .danxis-psychology-landing .hero-grid{padding:34px 0!important;text-align:left!important}
  .danxis-psychology-landing .hero h1{font-size:clamp(36px,11vw,46px)!important;line-height:1.02!important;letter-spacing:-1.4px!important}
  .danxis-psychology-landing .hero-copy>p{font-size:12px!important;line-height:1.65!important}
  .danxis-psychology-landing .actions{display:grid!important;grid-template-columns:1fr!important}
  .danxis-psychology-landing .actions .btn{width:100%!important}
  .danxis-psychology-landing .trust-row{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .danxis-psychology-landing .floating{position:static!important;width:100%!important;margin-top:9px!important}
  .danxis-psychology-landing .visual{display:block!important}
  .danxis-psychology-landing .visual-banner{width:100%!important;border-radius:20px!important}
  .danxis-psychology-landing .quick-features{grid-template-columns:1fr!important;border-radius:22px!important}
  .danxis-psychology-landing .quick-features article,.danxis-psychology-landing .quick-features article:nth-child(odd){border-right:0!important;border-bottom:1px solid #d8e1dc!important;min-height:auto!important;padding:19px 17px!important}
  .danxis-psychology-landing .section{padding:52px 0!important}
  .danxis-psychology-landing .section-head{margin-bottom:24px!important}
  .danxis-psychology-landing .section-head h2,.danxis-psychology-landing .showcase-copy h2,.danxis-psychology-landing .plan-copy h2{font-size:30px!important;line-height:1.08!important;letter-spacing:-.7px!important}
  .danxis-psychology-landing .modules-summary{display:grid!important;grid-template-columns:1fr!important}
  .danxis-psychology-landing .modules-summary span{width:100%!important;text-align:center!important;white-space:normal!important}
  .danxis-psychology-landing .pillars .module-head{align-items:center!important}
  .danxis-psychology-landing .pillars .module-tag{text-align:right!important;white-space:normal!important}
  .danxis-psychology-landing .journey{grid-template-columns:1fr!important}
  .danxis-psychology-landing .step{min-width:0!important}
  .danxis-psychology-landing .step p{max-width:none!important}
  .danxis-psychology-landing .site-preview,.danxis-psychology-landing .browser{max-width:100%!important;overflow:hidden!important}
  .danxis-psychology-landing .preview-info,.danxis-psychology-landing .public-hero{grid-template-columns:1fr!important}
  .danxis-psychology-landing .price-card{padding:22px!important;border-radius:24px!important}
  .danxis-psychology-landing .price strong{font-size:48px!important}
  .danxis-psychology-landing .benefits>div{align-items:flex-start!important;flex-direction:column!important;gap:3px!important}
  .danxis-psychology-landing .benefits b{text-align:left!important}
  .danxis-psychology-landing .final-cta{padding:52px 0!important}
  .danxis-psychology-landing .final-card{padding:28px 20px!important;border-radius:24px!important}
  .danxis-psychology-landing .final-card h2{font-size:28px!important}
  .danxis-psychology-landing .final-card .btn{width:100%!important;min-width:0!important}
  .danxis-psychology-landing .foot{align-items:flex-start!important;flex-direction:column!important}
}

/* Página "Contratar" */
@media(max-width:980px){
  .contract-simple-grid{grid-template-columns:1fr!important;gap:30px!important}
  .contract-simple-price-card{max-width:620px!important;width:100%!important}
  .contract-simple-steps{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .contract-simple-container{width:calc(100% - 24px)!important}
  .contract-simple-nav{height:66px!important}
  .contract-simple-nav nav>a:not(.contract-simple-login){display:none!important}
  .contract-simple-brand img{height:25px!important}
  .contract-simple-hero{padding:42px 0 48px!important}
  .contract-simple-copy h1{font-size:38px!important;line-height:1.02!important;letter-spacing:-1.2px!important}
  .contract-simple-checks{display:grid!important;grid-template-columns:1fr!important}
  .contract-simple-price-card{padding:20px!important;border-radius:22px!important}
  .contract-simple-price strong{font-size:48px!important}
  .contract-simple-benefits>div{align-items:flex-start!important;flex-direction:column!important;gap:3px!important}
  .contract-simple-steps{grid-template-columns:1fr!important}
  .contract-simple-section-head h2{font-size:29px!important}
}

/* Fluxos de topo: cadastro, pagamento e aguardando aprovação */
@media(max-width:760px){
  .flow-topbar{height:66px!important;min-height:66px!important;overflow:visible!important}
  .flow-topbar .flow-nav{position:relative!important;width:calc(100% - 24px)!important;gap:8px!important}
  .flow-topbar .flow-brand-logo{height:25px!important;max-width:170px!important}
  .flow-menu-toggle{display:grid!important;place-items:center!important;width:40px!important;height:40px!important;border:1px solid #b9cbc4!important;border-radius:11px!important;background:#fff!important;color:#0f3044!important;font-size:19px!important;margin-left:auto!important}
  .flow-topbar .flow-navlinks{position:absolute!important;left:0!important;right:0!important;top:54px!important;display:none!important;grid-template-columns:1fr!important;gap:2px!important;padding:10px!important;background:#fff!important;border:1px solid #d8e1dd!important;border-radius:14px!important;box-shadow:0 18px 34px rgba(15,48,68,.13)!important;z-index:150!important}
  .flow-topbar.nav-open .flow-navlinks{display:grid!important}
  .flow-topbar .flow-navlinks>a,.pending-shell > .flow-topbar .flow-navlinks>a,.pending-shell > .flow-topbar .flow-navlinks>a:not(.login):not(.cta),.pending-shell > .flow-topbar .flow-navlinks .login{display:flex!important;align-items:center!important;justify-content:flex-start!important;width:100%!important;min-height:42px!important;padding:0 12px!important;border:0!important;border-radius:9px!important;background:#fff!important;color:#000!important}
  .flow-topbar .flow-navlinks .cta,.pending-shell > .flow-topbar .flow-navlinks .cta{display:flex!important;background:#0f3044!important;color:#fff!important;justify-content:center!important;margin-top:4px!important}
}

/* Cadastro / onboarding / assinatura */
@media(max-width:900px){
  .onboarding-wrap{width:calc(100% - 28px)!important;margin:28px auto 48px!important}
  .onboarding-intro{max-width:100%!important}
  .checkout-wrap,.pay31-wrap{grid-template-columns:1fr!important;gap:28px!important}
  .pay31-intro{position:static!important}
}
@media(max-width:640px){
  .onboarding-wrap{width:calc(100% - 20px)!important;margin-top:18px!important}
  .onboarding-intro h1{font-size:28px!important;line-height:1.08!important}
  .onboarding-card{padding:15px!important;border-radius:12px!important}
  .onboarding-title{gap:9px!important}
  .contract-meta{align-items:flex-start!important;flex-direction:column!important;gap:4px!important}
  .contract-box .contract-text{max-height:330px!important;padding:13px!important}
  .checkout-page{padding:28px 12px!important;align-items:flex-start!important}
  .checkout-page h1{font-size:32px!important;line-height:1.05!important}
  .checkout-card{padding:18px!important}
  .pay31-page{padding:24px 12px 34px!important}
  .pay31-intro h1{font-size:32px!important;letter-spacing:-1px!important}
  .pay31-shell{border-radius:20px!important}
  .pay31-head,.pay31-body{padding-left:16px!important;padding-right:16px!important}
  .pay31-choice-grid,.pay31-row2,.pay31-pix-start,.pay31-pix-live{grid-template-columns:1fr!important}
  .pay31-choice{padding:14px!important}
  .pay31-panel{padding:15px!important;border-radius:16px!important}
  .pay31-pix-live img{width:min(220px,100%)!important;height:auto!important;margin:auto!important}
  .pending-shell>main{width:calc(100% - 24px)!important;padding:34px 0 50px!important}
  .pending-shell h1{font-size:32px!important;line-height:1.06!important}
  .pending-shell .approval-grid{grid-template-columns:1fr!important}
}

/* Login / primeiro acesso */
@media(max-width:820px){
  .auth-shell{grid-template-columns:1fr!important;min-height:100dvh!important}
  .auth-brand{display:none!important}
  .auth-panel{min-height:100dvh!important;padding:28px 20px!important;align-content:center!important}
  .auth-card{width:min(460px,100%)!important}
}
@media(max-width:480px){
  .auth-panel{padding:22px 14px!important}
  .auth-card h2{font-size:19px!important}
  .auth-links{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
}

/* ---------- Blog público: todos os temas ---------- */
.public-menu-toggle{border:1px solid rgba(255,255,255,.30);background:transparent;color:inherit;border-radius:10px;width:39px;height:39px;place-items:center;font-size:18px;padding:0}
.public-body.theme-modern .public-menu-toggle,.public-body.theme-clean .public-menu-toggle{border-color:#c2d1cc;background:#fff;color:#0f3044}
@media(max-width:900px){
  .public-body{overflow-x:hidden!important}
  .public-body .public-nav{height:68px!important;min-height:68px!important;overflow:visible!important}
  .public-body .public-nav>.container{position:relative!important;width:calc(100% - 28px)!important;max-width:100%!important;gap:9px!important}
  .public-menu-toggle{display:grid!important;margin-left:auto!important;flex:0 0 39px!important}
  .public-body .public-links{position:absolute!important;left:0!important;right:0!important;top:52px!important;display:none!important;grid-template-columns:1fr!important;gap:2px!important;padding:10px!important;border-radius:13px!important;background:#fff!important;border:1px solid #d3dfda!important;box-shadow:0 16px 32px rgba(13,42,55,.14)!important;z-index:120!important;color:#000!important;text-align:left!important}
  .public-body .public-nav.nav-open .public-links{display:grid!important}
  .public-body .public-links a{display:flex!important;align-items:center!important;min-height:41px!important;padding:0 11px!important;border-radius:8px!important;color:#000!important;background:#fff!important;white-space:normal!important}
  .public-body .public-nav .brand{min-width:0!important;max-width:55%!important;overflow:hidden!important}
  .public-body .public-nav .brand>span:last-child{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
  .public-body .public-cta{white-space:nowrap!important;flex:0 0 auto!important;padding:9px 13px!important}
  .public-body .hero-grid,.public-body .profile-content-grid,.public-body .schedule-layout{grid-template-columns:1fr!important}
  .public-body .hero-grid{text-align:center!important;gap:24px!important}
  .public-body .portrait{width:min(300px,82vw)!important;height:auto!important;aspect-ratio:1/1!important;margin:auto!important;border-radius:50%!important}
  .public-body .hero .bio{margin-left:auto!important;margin-right:auto!important}
  .public-body .trust-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-column:auto!important}
  .public-body .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .public-body .article-reader{width:min(790px,calc(100% - 32px))!important}
  .public-body .public-footer .container{width:calc(100% - 28px)!important;max-width:100%!important}
  .public-home.theme-modern .modern-profile-grid,.public-home.theme-modern .modern-content-layout{grid-template-columns:1fr!important}
  .public-home.theme-modern .modern-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .public-home.theme-modern .modern-about,.public-home.theme-modern .modern-areas{grid-column:auto!important}
  .public-home.theme-modern .modern-portrait{margin:auto!important}
  .clean-hero-grid,.clean-content-layout,.clean-about-grid,.clean-schedule-grid{grid-template-columns:1fr!important}
  .clean-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .clean-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .public-body .public-nav>.container{width:calc(100% - 20px)!important}
  .public-body .public-nav .brand{max-width:calc(100% - 52px)!important;font-size:12px!important}
  .public-body .public-cta{display:none!important}
  .public-body .hero,.public-body .public-section{padding-left:0!important;padding-right:0!important}
  .public-body .hero h1{font-size:34px!important;line-height:1.08!important}
  .public-body .hero .crp{font-size:12px!important}
  .public-body .hero .bio{font-size:12px!important;line-height:1.65!important}
  .public-body .trust-list{grid-template-columns:1fr!important}
  .public-body .trust{justify-content:flex-start!important;text-align:left!important}
  .public-body .section-head{align-items:flex-start!important;flex-direction:column!important;gap:7px!important}
  .public-body .section-head h2{font-size:23px!important;line-height:1.15!important}
  .public-body .article-grid{grid-template-columns:1fr!important}
  .public-body .article-cover{height:auto!important;min-height:180px!important;aspect-ratio:4/3!important}
  .public-body .slots{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .public-body .slot{width:100%!important;text-align:center!important}
  .public-body .article-reader{width:calc(100% - 20px)!important}
  .public-body .article-reader h1{font-size:29px!important;line-height:1.12!important}
  .public-body .article-reader .article-text{font-size:14px!important;line-height:1.75!important}
  .public-body .article-reader .authorbox{align-items:stretch!important;flex-direction:column!important}
  .public-body .article-reader .authorbox .btn{width:100%!important}
  .public-body .public-footer .container{align-items:flex-start!important;flex-direction:column!important;text-align:left!important}
  .public-home.theme-modern .modern-article-grid,.clean-post-grid,.clean-sidebar{grid-template-columns:1fr!important}
  .public-home.theme-modern .modern-trust-list{grid-template-columns:1fr!important}
  .clean-hero-copy h1{font-size:34px!important}
  .clean-profile-head{grid-template-columns:1fr!important;text-align:center!important}
  .clean-profile-photo{width:170px!important;height:170px!important;margin:auto!important}
  .clean-profile-tags{justify-content:center!important}
  .clean-hero-actions{display:grid!important;grid-template-columns:1fr!important}
  .clean-btn{width:100%!important}
  .clean-slots{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .clean-final-cta>.container{align-items:stretch!important;flex-direction:column!important}
  .clean-final-cta a{width:100%!important}
}

/* ---------- Fluxo do paciente / agendamento ---------- */
@media(max-width:800px){
  .booking-step-page,.booking-legal-page{padding:18px 14px 38px!important}
  .booking-step-wrap{width:100%!important;max-width:760px!important}
  .booking-step-top{align-items:flex-start!important;flex-direction:column!important;gap:12px!important}
  .booking-summary-card{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .booking-data-form .form-grid{grid-template-columns:1fr!important}
  .booking-step-card{padding:20px!important}
  .booking-shell .payment-grid{grid-template-columns:1fr!important}
  .booking-wrap{width:calc(100% - 24px)!important}
}
@media(max-width:520px){
  .booking-step-page,.booking-legal-page{padding:12px 10px 28px!important}
  .booking-brand{min-width:0!important}
  .booking-brand span{overflow-wrap:anywhere!important}
  .booking-summary-card{grid-template-columns:1fr!important;padding:14px!important}
  .booking-summary-card>div{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.16)!important;padding:9px 0!important}
  .booking-summary-card>div:last-child{border-bottom:0!important}
  .booking-step-card{padding:16px 13px!important;border-radius:14px!important}
  .booking-step-card h1{font-size:19px!important}
  .booking-consent-compact p{text-align:left!important}
  .booking-continue-btn{width:100%!important;min-height:46px!important}
  .booking-top{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
}

/* ---------- Sala de teleatendimento ---------- */
@media(max-width:760px){
  .room-body{height:auto!important;min-height:100dvh!important;overflow:auto!important}
  .room-head{height:auto!important;min-height:56px!important;padding:8px 10px!important;gap:8px!important;flex-wrap:wrap!important}
  .room-head>div:first-child{min-width:0!important}
  .room-head-actions{margin-left:auto!important;gap:6px!important}
  .room-grid{height:auto!important;min-height:calc(100dvh - 56px)!important;grid-template-columns:1fr!important;overflow:visible!important}
  .video-area{height:auto!important;min-height:0!important;padding:8px!important}
  .video-stage,.webrtc-grid,.remote-video{min-height:0!important;height:auto!important;aspect-ratio:16/10!important}
  .local-tile{width:29vw!important;max-width:130px!important;height:auto!important;aspect-ratio:4/3!important;right:8px!important;bottom:8px!important}
  .room-controls{height:auto!important;min-height:54px!important;flex-wrap:wrap!important;padding:8px 0!important}
  .room-side{height:auto!important;overflow:visible!important;border-left:0!important;border-top:1px solid #263d50!important}
  .room-side-scroll{height:auto!important;overflow:visible!important;padding:12px!important}
  .room-panel-tabs{position:sticky!important;top:0!important;background:#0a1d2d!important;z-index:5!important}
  .room-notes,.summary-editor{height:180px!important}
  .transcript-box{height:200px!important}
}

/* ---------- Pequenos dispositivos ---------- */
@media(max-width:390px){
  .professional-app .content,.admin-app .content{padding:10px!important}
  .mobile-menu-toggle{width:38px!important;height:38px!important;flex-basis:38px!important}
  .professional-app .topbar p,.admin-app .topbar p{display:none!important}
  .danxis-psychology-landing .hero h1{font-size:34px!important}
  .danxis-psychology-landing .container{width:calc(100% - 20px)!important}
  .public-body .slots,.clean-slots{grid-template-columns:1fr!important}
  .booking-step-card{padding:14px 11px!important}
}

/* V63 — safe areas e interação touch (iOS/Android) */
@supports(padding:max(0px)){
  .danxis-whatsapp-float{bottom:max(14px,env(safe-area-inset-bottom))}
  @media(max-width:1024px){
    .professional-app .sidebar,.admin-app .sidebar{padding-bottom:max(20px,env(safe-area-inset-bottom))!important}
  }
  @media(max-width:760px){
    .room-controls{padding-bottom:max(8px,env(safe-area-inset-bottom))!important}
  }
}
@media(hover:none) and (pointer:coarse){
  a,button,.btn,.slot,.clean-slot{touch-action:manipulation}
  .btn,.public-cta,.contract-simple-button,.booking-continue-btn{min-height:42px}
}


/* =========================================================
   V64 — Gestão de Pacientes consolidada
   ========================================================= */
.professional-app .patient-management-nav{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0 0 18px;
  padding:6px;
  background:#f4f7f5;
  border:1px solid #d6e0dc;
  border-radius:15px;
}
.professional-app .patient-management-nav a{
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:9px 12px;
  border-radius:11px;
  color:#000;
  font-size:12px;
  font-weight:500;
  border:1px solid transparent;
  transition:.16s ease;
}
.professional-app .patient-management-nav a span{
  width:25px;
  height:25px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#dfece7;
  color:#17495a;
  font-size:12px;
}
.professional-app .patient-management-nav a:hover{
  background:#edf4f1;
  border-color:#cfddd7;
}
.professional-app .patient-management-nav a.active{
  background:linear-gradient(135deg,#d9ebe4,#eef5f2);
  border-color:#b9d0c7;
  color:#103d49;
}
.professional-app .patient-management-nav a.active span{
  background:#123f50;
  color:#fff;
}
.professional-app .patient-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin:0 0 12px;
}
.professional-app .patient-section-head h2{
  margin:0 0 4px;
  font-size:14px;
  line-height:1.3;
  font-weight:600;
  color:#000;
}
.professional-app .patient-section-head p{
  margin:0;
  font-size:12px;
  line-height:1.5;
  color:#000;
}
.professional-app .patient-search-bar{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto auto;
  gap:8px;
  align-items:center;
  margin:0 0 16px;
  padding:11px;
  border:1px solid #d4dfda;
  border-radius:14px;
  background:#f9fbfa;
}
.professional-app .patient-search-field{
  position:relative;
  min-width:0;
}
.professional-app .patient-search-field input{
  width:100%;
  height:42px;
  padding:0 13px 0 40px;
  border:1px solid #cbd9d3;
  border-radius:11px;
  background:#fff;
  color:#000;
  font-size:12px;
  outline:none;
}
.professional-app .patient-search-field input:focus{
  border-color:#7ea99c;
  box-shadow:0 0 0 3px rgba(126,169,156,.12);
}
.professional-app .patient-search-icon{
  position:absolute;
  left:13px;
  top:50%;
  transform:translateY(-50%);
  z-index:1;
  color:#17495a;
  font-size:17px;
  pointer-events:none;
}
.professional-app .patient-search-bar .btn{
  min-height:42px;
  white-space:nowrap;
}
.professional-app .patient-empty{
  padding:18px 12px;
  text-align:center;
  color:#000;
  font-size:12px;
}
.professional-app .patient-management-grid .action-row{
  flex-wrap:wrap;
}

@media(max-width:760px){
  .professional-app .patient-management-nav{
    gap:5px;
    padding:5px;
  }
  .professional-app .patient-management-nav a{
    min-width:0;
    min-height:42px;
    padding:7px 5px;
    gap:5px;
    font-size:11px;
    text-align:center;
  }
  .professional-app .patient-management-nav a span{
    width:22px;
    height:22px;
    border-radius:7px;
    flex:0 0 22px;
  }
  .professional-app .patient-search-bar{
    grid-template-columns:1fr 1fr;
    padding:9px;
  }
  .professional-app .patient-search-field{
    grid-column:1/-1;
  }
  .professional-app .patient-search-bar .btn{
    width:100%;
  }
  .professional-app .patient-section-head{
    align-items:flex-start;
    flex-direction:column;
  }
}
@media(max-width:420px){
  .professional-app .patient-management-nav a{
    flex-direction:column;
    line-height:1.15;
    min-height:58px;
  }
}

/* =========================================================
   V65 — Gestão de Pacientes: prontuário e documentos por paciente
   ========================================================= */
.professional-app .patient-name-with-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-width:310px;
}
.professional-app .patient-name-copy{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
.professional-app .patient-name-copy strong{
  font-size:12px;
  font-weight:600;
  color:#000;
}
.professional-app .patient-inline-actions{
  display:flex;
  align-items:center;
  gap:6px;
  flex:0 0 auto;
}
.professional-app .patient-record-link{
  min-height:34px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 10px;
  border:1px solid #c8d9d2;
  border-radius:9px;
  background:#edf5f1;
  color:#143f49;
  font-size:11px;
  font-weight:500;
  white-space:nowrap;
}
.professional-app .patient-record-link:hover{
  background:#dfece7;
  border-color:#acc8bd;
}
.professional-app .patient-record-link span{
  font-size:12px;
  line-height:1;
}
.professional-app .patient-back-link{
  flex:0 0 auto;
}
@media(max-width:1180px){
  .professional-app .patient-name-with-actions{
    min-width:260px;
    align-items:flex-start;
    flex-direction:column;
    gap:8px;
  }
}
@media(max-width:760px){
  .professional-app .patient-list-table table,
  .professional-app .patient-list-table tbody,
  .professional-app .patient-list-table tr,
  .professional-app .patient-list-table td{width:100%}
  .professional-app .patient-name-with-actions{min-width:0;width:100%;}
  .professional-app .patient-inline-actions{width:100%;}
  .professional-app .patient-record-link{flex:1;min-height:40px;}
  .professional-app .patient-back-link{width:100%;}
}

/* V65 — modalidades profissionais: Psicologia e Psicanálise */
.professional-type-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0 12px}
.professional-type-option{display:block;border:1px solid #cfdadd;border-radius:12px;padding:12px;cursor:pointer;background:#fff}
.professional-type-option input{margin-right:8px}
.professional-type-option span{display:inline-flex;flex-direction:column;gap:3px;vertical-align:top}
.professional-type-option strong{font-size:12px;font-weight:600}
.professional-type-option small{font-size:12px;line-height:1.45}
.professional-type-option:has(input:checked){border-color:var(--teal);box-shadow:0 0 0 1px var(--teal) inset}
.professional-disclosure{margin-top:8px;padding:9px 10px;border:1px solid rgba(16,74,92,.18);border-radius:10px;font-size:12px;line-height:1.5;max-width:720px}
.professional-disclosure.compact{padding:7px 8px;max-width:540px}
@media(max-width:720px){.professional-type-options{grid-template-columns:1fr}}

/* V67 — correção visual da declaração de vínculo em Psicanálise */
.psychoanalysis-association-declaration{gap:8px}
.psychoanalysis-association-declaration .association-check{
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  gap:9px;
  width:100%;
  margin:2px 0 0;
  cursor:pointer;
  font-size:12px;
  font-weight:500;
  line-height:1.45;
}
.psychoanalysis-association-declaration .association-check input[type="checkbox"]{
  width:16px!important;
  height:16px!important;
  min-width:16px;
  flex:0 0 16px;
  margin:1px 0 0;
  padding:0;
}
.psychoanalysis-association-declaration .association-check span{
  display:block;
  flex:1;
  min-width:0;
}


/* =========================================================
   V68 — Teleatendimento, blog automático e documentos admin
   ========================================================= */
.room-body{--room-platform:#3f625f;--room-platform-soft:#6f8d87}
.room-body .video-stage{border-color:var(--room-platform)!important}
.room-body .local-tile{border-color:var(--room-platform-soft)!important}
.room-body .room-control:not(.end){border-color:var(--room-platform-soft)!important;background:#274b49!important}
.room-body .room-control:not(.end):hover{background:#315956!important}
.virtual-bg-canvas{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;left:-9999px!important;top:-9999px!important}
.room-hidden-file{display:none!important}
.virtual-bg-status{text-align:center;font-size:9px;line-height:1.3;color:#9fb9b4;margin-top:3px;min-height:13px}
.virtual-bg-status.active{color:#c5eee4;font-weight:700}
.room-bg-btn,.room-bg-reset{font-size:17px!important}
.admin-document-link{display:inline-flex;align-items:center;gap:5px;color:var(--teal);font-weight:800;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.admin-document-link:hover{color:var(--navy)}
@media(max-width:760px){.virtual-bg-status{margin:0 0 5px}.room-controls{gap:6px!important}}

/* ===== V70 — menu lateral sem ícones + ativação de mídia ===== */
.professional-app .nav a,.admin-app .nav a{gap:0!important}
.professional-app .portal-nav-icon,.admin-app .doticon{display:none!important}
.room-media-permission{position:absolute;left:50%;top:50%;z-index:8;transform:translate(-50%,-50%);min-height:42px;padding:0 16px;border:1px solid rgba(255,255,255,.34);border-radius:10px;background:var(--room-platform,#395157);color:#fff;font:inherit;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 10px 28px rgba(0,0,0,.22)}
.room-media-permission[hidden]{display:none!important}

/* ===== V72 — controles da sala refinados e alinhados ===== */
.room-body .room-controls{
  gap:12px!important;
  padding-top:14px!important;
}
.room-body .room-control{
  width:52px!important;
  height:52px!important;
  flex:0 0 52px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  line-height:0!important;
  border-radius:50%!important;
  border:1px solid rgba(159,201,190,.48)!important;
  background:linear-gradient(180deg,#325f5b 0%, #264b48 100%)!important;
  color:#ffffff!important;
  box-shadow:0 8px 18px rgba(1,11,17,.22), inset 0 1px 0 rgba(255,255,255,.08)!important;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease!important;
}
.room-body .room-control:hover{
  transform:translateY(-1px)!important;
  background:linear-gradient(180deg,#3a6c67 0%, #2b5450 100%)!important;
  border-color:rgba(196,230,221,.62)!important;
  box-shadow:0 10px 20px rgba(1,11,17,.28), inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.room-body .room-control:focus-visible{
  outline:none!important;
  box-shadow:0 0 0 4px rgba(144,192,180,.24), 0 10px 20px rgba(1,11,17,.28)!important;
}
.room-body .room-control svg{
  width:22px!important;
  height:22px!important;
  display:block!important;
  margin:0 auto!important;
  overflow:visible!important;
}
.room-body .room-control svg,
.room-body .room-control svg *{
  stroke:#ffffff!important;
  fill:none!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
}
.room-body .room-control.off{
  background:linear-gradient(180deg,#8a3c39 0%, #6d2e2c 100%)!important;
  border-color:rgba(240,161,154,.55)!important;
}
.room-body .room-control.end{
  background:linear-gradient(180deg,#dc4d41 0%, #c63b33 100%)!important;
  border-color:rgba(255,171,165,.7)!important;
}
.room-body .room-control.end:hover{
  background:linear-gradient(180deg,#e4574b 0%, #d0443a 100%)!important;
  border-color:rgba(255,193,188,.82)!important;
}
.room-body .room-control.end svg,
.room-body .room-control.end svg *{
  stroke:#ffffff!important;
}
.room-body .virtual-bg-status{
  margin-top:8px!important;
  font-size:11px!important;
  line-height:1.35!important;
  color:#d7e7e0!important;
  text-align:center!important;
}
@media(max-width:760px){
  .room-body .room-controls{gap:10px!important;padding-top:12px!important}
  .room-body .room-control{width:48px!important;height:48px!important;flex-basis:48px!important}
  .room-body .room-control svg{width:20px!important;height:20px!important}
}

/* ===== V73 — Anotações dos teleatendimentos na Gestão de Pacientes ===== */
.professional-app .patient-notes-layout{
  align-items:start;
}
.professional-app .patient-note-info{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-top:12px;
  padding:11px 12px;
  border:1px solid #d4dfda;
  border-radius:11px;
  background:#f7faf8;
  font-size:12px;
  color:#000;
}
.professional-app .patient-note-info strong{
  font-weight:600;
}
.professional-app .patient-call-notes-card{
  min-width:0;
}
.professional-app .patient-call-notes-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.professional-app .patient-call-note{
  padding:13px 14px;
  border:1px solid #d2dfda;
  border-radius:12px;
  background:#fbfcfb;
}
.professional-app .patient-call-note header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:9px;
  padding-bottom:8px;
  border-bottom:1px solid #e2e9e6;
}
.professional-app .patient-call-note header>div{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.professional-app .patient-call-note header strong{
  font-size:12px;
  font-weight:600;
  color:#000;
}
.professional-app .patient-call-note header span,
.professional-app .patient-note-updated{
  font-size:11px;
  color:#334b46;
}
.professional-app .patient-call-note-content{
  font-size:12px;
  line-height:1.65;
  color:#000;
  overflow-wrap:anywhere;
}
@media(max-width:760px){
  .professional-app .patient-call-note header{
    flex-direction:column;
    gap:5px;
  }
  .professional-app .patient-inline-actions{
    flex-wrap:wrap;
  }
  .professional-app .patient-record-link{
    min-width:calc(50% - 4px);
  }
}
