:root{--bg:#f4f2e9;--surface:#fffdf6;--ink:#17342c;--muted:#63756e;--accent:#826b2f;--deep:#12372f;--line:#d9ded7}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--ink)}.hero,.center{min-height:100vh;display:grid;place-items:center;padding:32px}.hero>div{max-width:820px}.eyebrow{font-size:.75rem;letter-spacing:.18em;font-weight:800;color:var(--accent)}h1{font-size:clamp(2.4rem,6vw,5rem);line-height:1.02;margin:.3em 0}p{color:var(--muted);font-size:1.08rem;line-height:1.7}.button{display:inline-block;border:0;border-radius:12px;background:var(--deep);color:white;padding:14px 20px;text-decoration:none;font-weight:700;cursor:pointer}.card{width:min(430px,100%);background:var(--surface);padding:32px;border:1px solid var(--line);border-radius:24px;box-shadow:0 18px 50px #17342c12}.card h1{font-size:2.2rem}.card label{display:block;margin:18px 0;font-weight:700}.card input{width:100%;margin-top:8px;padding:13px 14px;border-radius:10px;border:1px solid var(--line);font:inherit}.alert{background:#fff1ef;border:1px solid #e5bbb4;padding:12px;border-radius:10px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px 28px;background:var(--surface);border-bottom:1px solid var(--line)}.linkbutton{background:none;border:0;font:inherit;cursor:pointer;color:var(--deep);font-weight:700}.dashboard{max-width:1100px;margin:auto;padding:56px 28px}.dashboard h1{font-size:3rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-top:30px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:22px}.metric small{display:block;color:var(--muted);margin-bottom:8px}.metric strong{font-size:1.25rem}
.container{max-width:1100px;margin:auto;padding:24px}.top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin-bottom:18px}.stats strong{display:block;font-size:1.8rem;margin-top:8px}.muted{opacity:.7}.alert{padding:12px 14px;border-radius:10px;margin:14px 0}.alert.error{background:#fee2e2}.alert.success{background:#dcfce7}label{display:block;margin:12px 0}input,textarea,select{width:100%;padding:10px;border:1px solid #d0d5dd;border-radius:8px;box-sizing:border-box}.checks label{display:inline-flex;align-items:center;margin-right:18px}.checks input{width:auto;margin-right:7px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #e5e7eb}.button,button{display:inline-block;padding:10px 16px;border-radius:8px;border:0;text-decoration:none;cursor:pointer;background:#245c43;color:white}.secondary{background:#475467}.danger{background:#b42318}hr{border:0;border-top:1px solid #e5e7eb;margin:24px 0}

.wide-card{width:100%;max-width:none;margin:18px 0}.block-list{display:grid;gap:20px;margin:22px 0}.block-card{width:100%;max-width:none}
.block-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.block-head h2{margin:.2rem 0}.compact{margin:18px 0}
.inline-form{display:grid;grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(190px,2fr) auto;gap:12px;align-items:end;margin-top:16px}
.inline-form label{margin:0}.check-row{display:flex!important;align-items:center;gap:8px;padding-bottom:11px}.check-row input{width:auto}
.line-picker{margin:18px 0}.warning-dot{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#b42318;color:#fff;font-size:.75rem;font-weight:800}
.small-btn{padding:7px 10px;font-size:.85rem}.status-ok{padding:16px;border-radius:12px;background:#dcfce7;font-weight:800}.admin-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}
@media(max-width:760px){.inline-form{grid-template-columns:1fr}.top,.block-head{align-items:flex-start;flex-direction:column}table{display:block;overflow-x:auto}}

.actions-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.progress{width:150px;max-width:100%;height:10px;background:#e8e8e0;border-radius:999px;overflow:hidden;display:inline-block;margin-right:8px;vertical-align:middle}.progress span{display:block;height:100%;background:#315b4f}.metric strong{font-size:1.5rem}

.public-page{padding-top:28px;padding-bottom:60px}.public-header{display:flex;justify-content:space-between;align-items:center;padding:18px 0;border-bottom:1px solid #deded4}.brand{font-size:1.3rem;font-weight:900;color:#173f35;text-decoration:none}.page-intro{padding:52px 0 24px;max-width:780px}.page-intro h1{font-size:clamp(2.2rem,6vw,4.5rem);margin:.3rem 0}.gira-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.gira-public-card{position:relative;max-width:none}.gira-public-card .button{display:inline-block;margin-top:18px}.date-badge{display:inline-block;background:#173f35;color:#fff;border-radius:999px;padding:7px 12px;font-weight:800}.open-label{display:block;color:#18794e;font-weight:800;margin-top:10px}.public-blocks{display:grid;gap:10px}.public-block,.session-line{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:14px 0;border-bottom:1px solid #e7e4da}.public-block:last-child,.session-line:last-child{border-bottom:0}.booking-card{border-top:4px solid #315b4f}.booking-block-selection{display:grid;gap:16px;margin:24px 0}.booking-option{border:1px solid #ddd9cc;border-radius:16px;padding:18px;background:#fff}.required-block{border-color:#9bb8ad}.option-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.option-head h3,.optional-title h3{margin:.25rem 0}.optional-title{display:flex!important;align-items:flex-start;gap:12px;margin:0!important}.optional-title>input{width:auto;margin-top:7px}.availability-pill{white-space:nowrap;background:#eaf4ef;color:#174d3c;border-radius:999px;padding:7px 11px;font-weight:800;font-size:.85rem}.medium-choice{margin-top:14px;padding-top:14px;border-top:1px solid #eee9dd}.medium-choice.is-disabled{opacity:.45;pointer-events:none}.privacy-check{display:flex!important;gap:10px;align-items:flex-start;margin:22px 0!important}.privacy-check input{width:auto;margin-top:4px}.booking-submit{width:100%;padding:16px}.narrow-page{max-width:760px}.confirmation-card{text-align:center;padding:44px 24px;background:#173f35;color:#fff;border-radius:22px;margin:30px 0}.confirmation-card .eyebrow{color:#d7e7df}.confirmation-card h1{margin:.4rem 0 1rem}.queue-number{font-size:clamp(3rem,12vw,6rem);font-weight:900;letter-spacing:-.05em;margin:16px 0}.booking-code{opacity:.8}.cancel-box{border-left:4px solid #b42318}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
@media(max-width:650px){.option-head,.public-block,.session-line{align-items:flex-start;flex-direction:column}.availability-pill{align-self:flex-start}}

.qr-card{text-align:center}.qr-box{display:inline-block;padding:16px;background:#fff;border:1px solid #ddd9cc;border-radius:16px;margin:14px auto}.qr-box img,.qr-box canvas{display:block!important}.waitlist-card{background:#5b4726}.invited-box{margin-top:18px;background:#fff6cf;color:#513d00;padding:14px;border-radius:12px;font-weight:800}.gatekeeper-page{max-width:1280px}.gate-search{display:grid;grid-template-columns:1fr auto;gap:12px}.block-tabs{display:flex;gap:8px;overflow-x:auto;margin:18px 0;padding-bottom:4px}.block-tabs a{white-space:nowrap;padding:10px 14px;border:1px solid #d8d5c9;border-radius:999px;text-decoration:none;color:#315b4f;font-weight:800}.block-tabs a.active{background:#315b4f;color:#fff;border-color:#315b4f}.queue-list{display:grid;gap:10px}.queue-person{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px;border:1px solid #e3dfd3;border-radius:14px}.queue-identity{display:flex;align-items:center;gap:14px}.queue-identity small{display:block;color:#6b6b63;margin-top:4px}.queue-mini{display:grid;place-items:center;min-width:70px;padding:10px 12px;border-radius:12px;background:#173f35;color:#fff;font-weight:900;font-size:1.1rem}.queue-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.queue-actions form{margin:0}.not-checked{font-size:.78rem;font-weight:800;color:#9b241d}.status-called{border-color:#c69a1e;background:#fffaf0}.status-in_service{border-color:#2d6a4f;background:#f0faf4}.status-completed{opacity:.6}.status-absent{opacity:.5}.gatekeeper-page table{width:100%}
@media(max-width:720px){.gate-search{grid-template-columns:1fr}.queue-person{align-items:flex-start;flex-direction:column}.queue-actions{width:100%}.queue-actions form,.queue-actions button{width:100%}}

.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:18px;margin:20px 0}.report-card{max-width:none}.report-card .button{display:inline-block;margin-top:12px}.medium-report-list{display:grid;gap:10px}.medium-report-item{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:12px 0;border-bottom:1px solid #e6e2d8}.medium-report-item:last-child{border-bottom:0}
@media(max-width:600px){.medium-report-item{align-items:flex-start;flex-direction:column}.medium-report-item .button{width:100%;text-align:center}}

.operation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin:20px 0}.operation-card{max-width:none}.occupancy-bar{height:10px;border-radius:999px;background:#e5e1d6;overflow:hidden;margin:15px 0}.occupancy-bar span{display:block;height:100%;background:#315b4f}.mini-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mini-stats span{padding:9px;border-radius:10px;background:#f3f1ea;font-size:.86rem}.mini-stats b{float:right}
:root{--deep:#173f35;--deep2:#0f3028;--paper:#f7f4ec;--gold:#b6975c;--ink:#1e2925}.institutional{background:var(--paper);color:var(--ink)}.site-shell{width:min(1160px,calc(100% - 36px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(247,244,236,.96);backdrop-filter:blur(12px);border-bottom:1px solid #ded8ca}.site-header .site-shell{display:flex;align-items:center;gap:28px;min-height:76px}.site-logo{font-size:1.5rem;font-weight:900;color:var(--deep);text-decoration:none}.site-header nav{display:flex;gap:20px;flex:1}.site-header nav a{text-decoration:none;color:#33433c;font-weight:700;font-size:.94rem}.nav-cta{margin-left:auto}.premium-hero{padding:100px 0 90px;background:linear-gradient(135deg,#f7f4ec,#ece5d4)}.hero-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);align-items:center;gap:60px}.premium-hero h1,.inner-hero h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.95;letter-spacing:-.055em;margin:.2em 0;color:var(--deep2)}.premium-hero p,.inner-hero p{font-size:1.2rem;line-height:1.7;max-width:720px}.hero-symbol{font-size:13rem;color:var(--gold);text-align:center;opacity:.72}.site-section{padding:82px 0}.site-section.alt{background:#eee9de}.site-section.dark{background:var(--deep2);color:#fff}.section-title-row{display:flex;justify-content:space-between;align-items:end;gap:20px}.section-title-row h2,.site-section h2{font-size:clamp(2rem,4vw,3.4rem);line-height:1.05}.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:70px}.principles-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.principles-grid>div{padding:24px;border-radius:18px;background:#f7f4ec;border:1px solid #ded8ca}.principles-grid strong{display:block;font-size:1.2rem;color:var(--deep)}.principles-grid span{display:block;margin-top:8px;color:#6c716d}.content-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.content-card{display:block;padding:26px;border-radius:18px;background:#fff;border:1px solid #ddd6c8;text-decoration:none;color:inherit}.cta-band{display:flex;justify-content:space-between;gap:30px;align-items:center}.light-button{background:#fff!important;color:var(--deep)!important}.inner-hero{padding:90px 0 70px;background:linear-gradient(135deg,#f4efe3,#e6dfcf)}.prose{max-width:840px;font-size:1.06rem;line-height:1.85}.faq-list{max-width:860px}.faq-list details{border-bottom:1px solid #d7d1c3;padding:20px 0}.faq-list summary{font-weight:900;font-size:1.1rem;cursor:pointer}.mediumship-layout{display:grid;grid-template-columns:1fr minmax(360px,.75fr);gap:60px}.interest-form{max-width:none;position:sticky;top:100px}.text-link{font-weight:800;color:var(--deep);text-decoration:none}textarea{width:100%;border:1px solid #d5d0c5;border-radius:10px;padding:12px;background:#fff;font:inherit}@media(max-width:900px){.site-header nav{display:none}.hero-layout,.split-feature,.mediumship-layout{grid-template-columns:1fr}.hero-symbol{font-size:7rem}.interest-form{position:static}.cta-band{flex-direction:column;align-items:flex-start}.principles-grid{grid-template-columns:1fr}.premium-hero{padding-top:70px}}

.course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px}.course-card{background:#fff;border:1px solid #ddd6c8;border-radius:20px;overflow:hidden}.course-cover{height:150px;background:linear-gradient(135deg,#173f35,#315b4f);display:flex;align-items:flex-end;padding:18px;color:#fff;font-weight:900}.course-body{padding:22px}.course-body h2{font-size:1.6rem;margin:.35rem 0}.course-meta{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.course-meta span{background:#eee9de;border-radius:999px;padding:7px 11px;font-size:.85rem;font-weight:800}.course-meta.big span{font-size:1rem}.course-hero{padding:80px 0;background:linear-gradient(135deg,#f2eddf,#e2dac8)}.course-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:center}.course-hero h1{font-size:clamp(3rem,6vw,5.4rem);line-height:.98;letter-spacing:-.05em;color:#173f35}.enroll-card{background:#173f35;color:#fff;padding:28px;border-radius:20px}.enroll-card strong{font-size:2rem;display:block;margin-bottom:18px}.course-detail{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.curriculum details{border-bottom:1px solid #ddd6c8;padding:14px 0}.curriculum summary{font-weight:900;font-size:1.1rem;cursor:pointer}.lesson-row,.student-lesson-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid #eee9de}.student-lesson-row{text-decoration:none;color:inherit}.student-course-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.student-course{max-width:none}.student-curriculum{display:grid;gap:18px}.lesson-layout{min-height:100vh;display:grid;grid-template-columns:300px 1fr}.lesson-sidebar{background:#173f35;color:#fff;padding:34px;position:sticky;top:0;height:100vh}.lesson-sidebar a{color:#fff}.lesson-content{padding:50px;max-width:950px}.lesson-content h1{font-size:clamp(2.4rem,5vw,4rem)}.video-placeholder{padding:50px;border-radius:18px;background:#111;color:#fff;text-align:center;margin:24px 0}.video-placeholder a{color:#fff;font-weight:900}.module-admin{padding:18px 0;border-bottom:1px solid #ddd6c8}
@media(max-width:900px){.course-hero-grid,.course-detail,.lesson-layout{grid-template-columns:1fr}.lesson-sidebar{position:static;height:auto}.lesson-content{padding:28px}.course-hero{padding:55px 0}}

.campaign-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}.campaign-card{background:#fff;border:1px solid #ddd6c8;border-radius:20px;padding:24px}.campaign-card h3{font-size:1.6rem;color:#173f35}.needed-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.needed-card{background:#fff;border:1px solid #ddd6c8;border-radius:18px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;gap:18px}.priority-critical{border-color:#b42318}.priority-high{border-color:#b7791f}.pledge-dialog{border:0;border-radius:20px;padding:0;max-width:520px;width:calc(100% - 30px);box-shadow:0 30px 80px rgba(0,0,0,.25)}.pledge-dialog::backdrop{background:rgba(12,24,20,.62)}.pledge-dialog form{padding:26px}.campaign-detail{display:grid;grid-template-columns:1fr minmax(300px,.42fr);gap:50px;align-items:start}.donation-sidebar{position:sticky;top:100px}.campaign-update{padding:20px 0;border-top:1px solid #ddd6c8}.transparency-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.transparency-summary>div{padding:20px;border-radius:16px;background:#eee9de}.transparency-summary small{display:block;color:#68706c}.transparency-summary strong{display:block;font-size:1.45rem;color:#173f35;margin-top:7px}.transparency-summary.large strong{font-size:2rem}
@media(max-width:850px){.campaign-detail{grid-template-columns:1fr}.donation-sidebar{position:static}.transparency-summary{grid-template-columns:1fr}}

.account-auth{min-height:100vh;display:grid;place-items:center;padding:28px;background:linear-gradient(135deg,#f5f0e5,#e3dbc9)}.account-auth-card{width:min(480px,100%);max-width:none}.account-body{background:#f4f1e9}.account-shell{width:min(1180px,calc(100% - 34px));margin:auto}.account-header{background:#173f35;color:#fff}.account-header .account-shell{display:flex;align-items:center;gap:24px;min-height:72px}.account-header .site-logo,.account-header a{color:#fff}.account-header nav{display:flex;gap:18px;flex:1}.account-header nav a{text-decoration:none;font-weight:700}.account-main{padding-top:42px;padding-bottom:70px}.account-welcome{padding:28px 0}.account-welcome h1{font-size:clamp(2.7rem,6vw,5rem);margin:.2em 0;color:#173f35}.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.account-panel{max-width:none}.account-row{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #e3ded2;text-decoration:none;color:inherit}.account-row small{display:block;color:#68706c;margin-top:5px}.notification-row.unread{border-left:4px solid #315b4f;padding-left:12px}.badge{display:inline-grid;place-items:center;background:#b6975c;color:#fff;border-radius:999px;min-width:21px;height:21px;padding:0 6px;font-size:.72rem}.announcement-stack{display:grid;gap:10px;margin-bottom:18px}.announcement{padding:18px 20px;border-radius:16px;background:#fff;border:1px solid #ddd6c8;display:flex;justify-content:space-between;gap:20px;align-items:center}.announcement p{margin:.4rem 0 0}.announcement.priority-high{border-left:5px solid #b42318}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quick-links a{padding:13px;border-radius:12px;background:#eee9de;text-decoration:none;color:#173f35;font-weight:800}.notification-list{display:grid;gap:12px}.notification-card{max-width:none;display:flex;justify-content:space-between;gap:22px}.notification-card.unread{border-left:5px solid #315b4f}.notification-card form{margin-top:8px}
@media(max-width:850px){.account-grid{grid-template-columns:1fr}.account-header nav{display:none}.announcement,.notification-card{align-items:flex-start;flex-direction:column}.quick-links{grid-template-columns:1fr}}

.health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:20px 0}.health-grid .card{max-width:none}.health-ok{border-top:4px solid #2d6a4f}.health-warning{border-top:4px solid #b7791f}.health-error{border-top:4px solid #b42318}.certificate-ready{border-left:5px solid #b6975c}.cert-verify{text-align:left}.cert-verify h1{font-size:2.3rem}

.skip-link{position:absolute;left:-9999px;top:auto;z-index:9999;background:#fff;color:#173f35;padding:12px 16px;border-radius:8px;font-weight:900}.skip-link:focus{left:12px;top:12px}
:focus-visible{outline:3px solid #b6975c;outline-offset:3px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.audit-score{display:flex;justify-content:space-between;align-items:center;padding:24px;border-radius:18px;margin:18px 0;background:#fff;border:1px solid #ddd6c8}.audit-score strong{display:block;font-size:3rem;color:#173f35}.audit-score.status-error{border-left:6px solid #b42318}.audit-score.status-warning{border-left:6px solid #b7791f}.audit-score.status-ok{border-left:6px solid #2d6a4f}.audit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin:18px 0}.audit-check{max-width:none}.audit-ok{border-top:4px solid #2d6a4f}.audit-warning{border-top:4px solid #b7791f}.audit-error{border-top:4px solid #b42318}.homologation-list h3{margin-top:28px;color:#173f35}.homologation-row{display:grid;grid-template-columns:minmax(260px,1fr) 150px minmax(180px,1fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #e4dfd3}.homologation-row small{display:block;color:#777}.homologation-row.status-approved{border-left:4px solid #2d6a4f;padding-left:10px}.homologation-row.status-failed{border-left:4px solid #b42318;padding-left:10px}
@media(max-width:850px){.homologation-row{grid-template-columns:1fr}.audit-score{align-items:flex-start;flex-direction:column}}

.maintenance-body{margin:0;min-height:100vh;background:radial-gradient(circle at top,#f8f4e9,#e8e0cf);color:#1e2925;display:grid;place-items:center;padding:24px}.maintenance-shell{width:min(920px,100%)}.maintenance-card{background:rgba(255,255,255,.78);backdrop-filter:blur(10px);border:1px solid #ddd4c1;border-radius:28px;padding:clamp(32px,7vw,70px);box-shadow:0 28px 80px rgba(36,50,43,.12);text-align:center}.maintenance-mark{font-size:5rem;color:#b6975c;line-height:1}.maintenance-card h1{font-size:clamp(2.6rem,7vw,5.7rem);line-height:.96;letter-spacing:-.05em;color:#173f35;margin:.2em 0}.maintenance-lead{font-size:1.14rem;line-height:1.75;max-width:720px;margin:20px auto 36px}.maintenance-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;text-align:left}.maintenance-info>div{padding:20px;border-radius:16px;background:#f4f0e6}.maintenance-info strong,.maintenance-info span{display:block}.maintenance-info span{margin-top:7px;color:#626b66}.maintenance-footer{font-weight:900;color:#173f35;margin-top:34px}.portal-state-banner{background:#6f5208;color:#fff;padding:10px 18px;text-align:center;font-weight:800}.portal-state-banner a{color:#fff;text-decoration:underline;margin-left:10px}.state-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.state-card{background:#fff;border:2px solid transparent;border-radius:18px;padding:20px}.state-card.active{border-color:#b6975c;box-shadow:0 10px 30px rgba(31,51,43,.08)}.state-card span{font-size:2rem}.access-link-box{margin-top:18px;padding:16px;border-radius:12px;background:#eee9de;overflow-wrap:anywhere}.access-link-box code{display:block;margin-top:8px}
@media(max-width:800px){.state-cards{grid-template-columns:1fr}.maintenance-card{padding:34px 22px}}

:root{--admin-bg:#f4f1e9;--admin-surface:#fff;--admin-surface-2:#f8f6f0;--admin-border:#e2ddd2;--admin-text:#1f2b27;--admin-muted:#6d756f;--admin-green:#173f35;--admin-gold:#b6975c;--admin-radius:18px;--admin-shadow:0 10px 35px rgba(29,49,41,.07)}
.admin-premium-body{margin:0;background:var(--admin-bg);color:var(--admin-text)}.admin-app{min-height:100vh;display:grid;grid-template-columns:278px minmax(0,1fr)}.admin-sidebar{background:#102f27;color:#eaf2ee;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;overflow:auto;z-index:60}.admin-brand{padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.08)}.admin-brand a{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.admin-brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(182,151,92,.18);color:#d8bd83;font-size:1.5rem}.admin-brand strong,.admin-brand small{display:block}.admin-brand small{color:#9fb2aa;margin-top:3px}.admin-nav{padding:18px 12px;flex:1}.admin-nav-group{margin-bottom:20px}.admin-nav-group-label{display:block;padding:0 12px 8px;color:#7f998f;font-size:.72rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.admin-nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;margin:3px 0;border-radius:11px;color:#cfe0d9;text-decoration:none;font-weight:750;font-size:.92rem}.admin-nav-item:hover{background:rgba(255,255,255,.06);color:#fff}.admin-nav-item.active{background:#1f5143;color:#fff;box-shadow:inset 3px 0 0 #c2a46c}.admin-nav-icon{width:24px;text-align:center;color:#d3ba88}.admin-sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.08);display:flex;gap:11px;align-items:center}.admin-sidebar-footer strong,.admin-sidebar-footer small{display:block}.admin-sidebar-footer small{color:#94aaa1}.portal-state-dot{width:10px;height:10px;border-radius:50%;background:#999}.portal-state-dot.state-production{background:#59b980}.portal-state-dot.state-homologation{background:#e2ae42}.portal-state-dot.state-development{background:#e27c5d}.admin-main-shell{min-width:0}.admin-topbar{min-height:76px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--admin-border);display:flex;align-items:center;gap:18px;padding:0 28px;position:sticky;top:0;z-index:40}.admin-menu-toggle{display:none;background:transparent;border:0;color:var(--admin-green);font-size:1.4rem}.admin-top-title{flex:1;min-width:0}.admin-top-title span{display:block;color:var(--admin-muted);font-size:.75rem;font-weight:850;text-transform:uppercase}.admin-top-title strong{display:block;font-size:1.08rem}.admin-top-actions{display:flex;align-items:center;gap:18px}.admin-preview-link{color:var(--admin-green);font-weight:800;text-decoration:none;font-size:.88rem}.admin-user{display:flex;align-items:center;gap:9px}.admin-user>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e8e3d7;color:var(--admin-green);font-weight:900}.admin-user strong,.admin-user small{display:block}.admin-user small{color:var(--admin-muted);font-size:.72rem}.admin-state-strip{background:#fff4d2;border-bottom:1px solid #ead79d;padding:9px 28px;display:flex;gap:10px;align-items:center;font-size:.86rem}.admin-state-strip a{margin-left:auto;font-weight:800;color:#6a4a00}.admin-content{padding:30px;width:min(1500px,100%);margin:auto;box-sizing:border-box}.admin-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:24px}.admin-page-head h1{font-size:clamp(2rem,4vw,3.1rem);line-height:1.04;margin:.2em 0;color:var(--admin-green);letter-spacing:-.035em}.admin-page-head p{margin:0;color:var(--admin-muted);max-width:760px;line-height:1.6}.admin-card{background:#fff;border:1px solid var(--admin-border);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow);padding:22px;margin-bottom:18px}.admin-card-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:16px}.admin-card-head h2{margin:.15em 0;font-size:1.45rem;color:var(--admin-green)}.admin-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-bottom:18px}.admin-metric-grid article{background:#fff;border:1px solid var(--admin-border);border-radius:16px;padding:18px}.admin-metric-grid span{display:block;color:var(--admin-muted);font-size:.82rem}.admin-metric-grid strong{display:block;font-size:2rem;color:var(--admin-green);margin:7px 0}.admin-metric-grid a{font-size:.78rem;font-weight:850;color:var(--admin-green);text-decoration:none}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.admin-card-feature{grid-column:1/-1}.next-gira-info{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.next-gira-info>div{padding:14px;background:var(--admin-surface-2);border-radius:12px}.next-gira-info small,.next-gira-info strong{display:block}.admin-inline-actions{display:flex;gap:10px;flex-wrap:wrap}.admin-quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.admin-quick-grid a{padding:15px;border-radius:13px;background:var(--admin-surface-2);text-decoration:none;color:inherit}.admin-quick-grid strong,.admin-quick-grid span{display:block}.admin-quick-grid span{font-size:.82rem;color:var(--admin-muted);margin-top:4px}.admin-list-row{display:flex;justify-content:space-between;gap:15px;padding:12px 0;border-bottom:1px solid #ece8df}.admin-list-row strong,.admin-list-row small{display:block}.admin-list-row small{color:var(--admin-muted);margin-top:4px}.admin-cms-form{display:grid;gap:18px}.admin-form-grid{display:grid;gap:14px}.admin-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-cms-form label{display:block;font-weight:800;color:#33433d}.admin-cms-form input,.admin-cms-form textarea,.admin-content input,.admin-content textarea,.admin-content select{width:100%;box-sizing:border-box;border:1px solid #d8d2c5;border-radius:11px;background:#fff;padding:11px 12px;font:inherit}.admin-sticky-save{position:sticky;bottom:16px;display:flex;justify-content:flex-end;padding:14px;border:1px solid var(--admin-border);background:rgba(255,255,255,.94);border-radius:16px;z-index:15}.admin-content .card,.admin-content .wide-card{max-width:none}.admin-content table{width:100%;min-width:720px}.admin-content .wide-card{overflow-x:auto}
@media(max-width:1280px){.admin-metric-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1024px){.admin-app{grid-template-columns:1fr}.admin-sidebar{position:fixed;left:-290px;width:278px;transition:left .2s ease;box-shadow:18px 0 45px rgba(0,0,0,.18)}.admin-menu-open .admin-sidebar{left:0}.admin-menu-open:after{content:"";position:fixed;inset:0;background:rgba(10,30,24,.45);z-index:50}.admin-menu-toggle{display:block}.admin-user div,.admin-preview-link{display:none}.admin-content{padding:22px}.admin-dashboard-grid{grid-template-columns:1fr}.admin-card-feature{grid-column:auto}}
@media(max-width:760px){.admin-topbar{padding:0 14px;min-height:64px}.admin-state-strip{padding:8px 14px;flex-wrap:wrap}.admin-state-strip a{margin-left:0;width:100%}.admin-content{padding:16px}.admin-page-head{align-items:flex-start;flex-direction:column}.admin-page-head .button{width:100%;text-align:center}.admin-metric-grid{grid-template-columns:repeat(2,1fr);gap:10px}.admin-quick-grid,.admin-form-grid.two,.next-gira-info{grid-template-columns:1fr}.admin-card{padding:16px}.admin-inline-actions{flex-direction:column}.admin-inline-actions .button{width:100%;text-align:center}.admin-list-row{flex-direction:column}.admin-sticky-save{bottom:8px}.admin-sticky-save button{width:100%}}
@media(max-width:480px){.admin-metric-grid{grid-template-columns:1fr}.admin-page-head h1{font-size:2rem}}
img,video,iframe{max-width:100%;height:auto}@media(max-width:760px){.site-shell,.account-shell{width:min(100% - 24px,1160px)}.site-section{padding:54px 0}.gira-grid,.content-cards,.campaign-grid,.needed-grid,.course-grid{grid-template-columns:1fr!important}}


/* =========================================================
   TUCTB ADMIN HOTFIX v0.10.1
   Cache-busted layout fallback + responsive hardening
   ========================================================= */
html,body{max-width:100%;overflow-x:hidden}
body.admin-premium-body{margin:0!important;background:#f4f1e9!important;color:#1f2b27!important}
body.admin-premium-body .admin-app{
 display:grid!important;
 grid-template-columns:278px minmax(0,1fr)!important;
 width:100%!important;
 min-height:100vh!important;
}
body.admin-premium-body .admin-sidebar{
 display:flex!important;
 flex-direction:column!important;
 position:sticky!important;
 top:0!important;
 height:100vh!important;
 width:278px!important;
 background:#102f27!important;
 color:#eaf2ee!important;
 overflow-y:auto!important;
 overflow-x:hidden!important;
 z-index:60!important;
}
body.admin-premium-body .admin-main-shell{display:block!important;min-width:0!important;width:100%!important}
body.admin-premium-body .admin-topbar{
 display:flex!important;align-items:center!important;
 min-height:76px!important;padding:0 28px!important;
 background:#fff!important;border-bottom:1px solid #e2ddd2!important;
}
body.admin-premium-body .admin-content{
 display:block!important;
 width:100%!important;max-width:1500px!important;
 padding:30px!important;margin:0 auto!important;box-sizing:border-box!important;
}
body.admin-premium-body .admin-nav-group{display:block!important}
body.admin-premium-body .admin-nav-item{display:flex!important}
body.admin-premium-body .admin-brand a{display:flex!important}
body.admin-premium-body .admin-metric-grid{
 display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;
 gap:14px!important;
}
body.admin-premium-body .admin-dashboard-grid{
 display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
 gap:18px!important;
}
body.admin-premium-body .admin-card-feature{grid-column:1/-1!important}
body.admin-premium-body .admin-card,
body.admin-premium-body .admin-metric-grid article{
 background:#fff!important;border:1px solid #e2ddd2!important;
 border-radius:18px!important;box-shadow:0 10px 35px rgba(29,49,41,.07)!important;
}
body.admin-premium-body .admin-page-head h1{
 font-size:clamp(2rem,4vw,3.1rem)!important;
 line-height:1.04!important;letter-spacing:-.035em!important;
 margin:.2em 0!important;color:#173f35!important;
}
body.admin-premium-body .admin-sidebar a{color:#cfe0d9!important;text-decoration:none!important}
body.admin-premium-body .admin-sidebar .admin-nav-item.active{color:#fff!important;background:#1f5143!important}
body.admin-premium-body .admin-sidebar .admin-brand a{color:#fff!important}
body.admin-premium-body .admin-state-strip{
 display:flex!important;background:#fff4d2!important;
 padding:9px 28px!important;border-bottom:1px solid #ead79d!important
}

/* Make all legacy admin tables/forms live safely inside the new shell. */
body.admin-premium-body .admin-content .container{width:100%!important;max-width:none!important;padding:0!important;margin:0!important}
body.admin-premium-body .admin-content .wide-card{max-width:none!important;overflow-x:auto!important}
body.admin-premium-body .admin-content table{max-width:none!important}
body.admin-premium-body .admin-content input,
body.admin-premium-body .admin-content select,
body.admin-premium-body .admin-content textarea{max-width:100%!important}

/* Tablet */
@media(max-width:1280px){
 body.admin-premium-body .admin-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}

/* Mobile/tablet navigation */
@media(max-width:1024px){
 body.admin-premium-body .admin-app{display:block!important}
 body.admin-premium-body .admin-sidebar{
   position:fixed!important;left:-300px!important;top:0!important;
   width:278px!important;height:100dvh!important;
   transition:left .2s ease!important;
 }
 body.admin-menu-open .admin-sidebar{left:0!important}
 body.admin-premium-body .admin-menu-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important}
 body.admin-premium-body .admin-topbar{padding:0 18px!important}
 body.admin-premium-body .admin-content{padding:22px!important}
 body.admin-premium-body .admin-dashboard-grid{grid-template-columns:1fr!important}
 body.admin-premium-body .admin-card-feature{grid-column:auto!important}
}

/* Phones */
@media(max-width:760px){
 body.admin-premium-body .admin-topbar{min-height:64px!important;padding:0 12px!important}
 body.admin-premium-body .admin-top-title strong{font-size:.95rem!important}
 body.admin-premium-body .admin-user>div,
 body.admin-premium-body .admin-preview-link{display:none!important}
 body.admin-premium-body .admin-content{padding:14px!important}
 body.admin-premium-body .admin-state-strip{
   padding:8px 14px!important;flex-wrap:wrap!important;gap:4px 8px!important
 }
 body.admin-premium-body .admin-state-strip a{width:100%!important;margin-left:0!important}
 body.admin-premium-body .admin-page-head{
   display:flex!important;flex-direction:column!important;align-items:stretch!important;
   gap:14px!important
 }
 body.admin-premium-body .admin-page-head h1{font-size:2rem!important}
 body.admin-premium-body .admin-page-head>a,
 body.admin-premium-body .admin-page-head>.button{width:100%!important;box-sizing:border-box!important;text-align:center!important}
 body.admin-premium-body .admin-metric-grid{
   grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important
 }
 body.admin-premium-body .admin-metric-grid article{padding:14px!important}
 body.admin-premium-body .admin-quick-grid,
 body.admin-premium-body .admin-form-grid.two,
 body.admin-premium-body .next-gira-info{grid-template-columns:1fr!important}
 body.admin-premium-body .admin-card{padding:15px!important;border-radius:14px!important}
 body.admin-premium-body .admin-inline-actions{display:grid!important;grid-template-columns:1fr!important}
 body.admin-premium-body .admin-inline-actions>*{width:100%!important;box-sizing:border-box!important;text-align:center!important}
 body.admin-premium-body .admin-content .grid{grid-template-columns:1fr!important}
 body.admin-premium-body .admin-content table{min-width:680px!important}
 body.admin-premium-body .admin-content .wide-card{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
}

/* Narrow phones */
@media(max-width:480px){
 body.admin-premium-body .admin-metric-grid{grid-template-columns:1fr!important}
 body.admin-premium-body .admin-brand{padding:18px 16px!important}
}

/* Public layout overflow protection */
@media(max-width:760px){
 body:not(.admin-premium-body) main,
 body:not(.admin-premium-body) section,
 body:not(.admin-premium-body) .card{min-width:0}
 body:not(.admin-premium-body) input,
 body:not(.admin-premium-body) textarea,
 body:not(.admin-premium-body) select,
 body:not(.admin-premium-body) button{max-width:100%;box-sizing:border-box}
}

/* Portal TUCTB Admin v0.11.0 consolidation */
.admin-responsive-table{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.admin-table-sub{display:block;color:#6d756f;max-width:460px;margin-top:4px}
.admin-badge{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;background:#eee9de;font-size:.76rem;font-weight:850}
.admin-badge.status-published,.admin-badge.status-active{background:#e5f3e9;color:#28603e}
.admin-badge.status-draft,.admin-badge.status-pending{background:#fff2cd;color:#795600}
.admin-content hr{border:0;border-top:1px solid #e4dfd4;margin:24px 0}
.admin-content .admin-card form>label{display:block;margin-bottom:14px}
.admin-content .admin-card h2{color:#173f35}
.admin-content .legacy-admin-header{display:none!important}
@media(max-width:760px){
 .admin-responsive-table table{min-width:680px!important}
 .admin-content .admin-card{overflow:hidden}
 .admin-content .admin-responsive-table{margin-left:0;margin-right:0}
 .admin-content input,.admin-content textarea,.admin-content select{font-size:16px!important}
}

/* TUCTB v0.11.1 - Auditoria Funcional */
.audit-legend{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 18px}
.audit-legend>div{display:flex;align-items:flex-start;gap:9px;background:#fff;border:1px solid #e2ddd2;border-radius:13px;padding:13px}
.audit-legend strong,.audit-legend small{display:block}.audit-legend small{color:#6d756f;font-size:.76rem;margin-top:2px}
.audit-dot{width:10px;height:10px;border-radius:50%;margin-top:4px;flex:0 0 auto}
.audit-dot.ok{background:#2d6a4f}.audit-dot.warning{background:#b7791f}.audit-dot.error{background:#b42318}.audit-dot.not-installed{background:#7c8580}
.audit-check.audit-not_installed{border-top:4px solid #7c8580}
.audit-check.audit-not_installed .eyebrow{color:#606a65}
.audit-code{display:block;margin-top:12px;color:#8a928e;font-family:monospace}
@media(max-width:900px){.audit-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.audit-legend{grid-template-columns:1fr}}

/* =========================================================
   PORTAL TUCTB — PUBLIC EXPERIENCE v0.12.0
   ========================================================= */
.public-premium{background:#f7f4ec;color:#23312c}
.public-premium .site-shell{width:min(1180px,calc(100% - 40px));margin:auto}
.public-site-header{position:sticky;top:0;z-index:45;background:rgba(250,248,242,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(31,63,53,.1)}
.public-header-inner{min-height:82px;display:flex;align-items:center;gap:24px}
.public-brand{display:flex;align-items:center;gap:11px;color:#173f35;text-decoration:none;min-width:210px}
.public-brand-symbol{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#173f35;color:#d3b77c;font-size:1.35rem;flex:0 0 auto}
.public-brand-copy strong,.public-brand-copy small{display:block}.public-brand-copy strong{font-size:1.07rem}.public-brand-copy small{font-size:.62rem;color:#68746e;max-width:180px;line-height:1.25;margin-top:2px}
.public-main-nav{display:flex;align-items:center;gap:4px;flex:1;justify-content:center}.public-main-nav a{color:#3d4d47;text-decoration:none;font-weight:770;font-size:.82rem;padding:9px 8px;border-radius:9px;white-space:nowrap}.public-main-nav a:hover,.public-main-nav a.active{background:#ece7da;color:#173f35}
.public-header-actions{display:flex;align-items:center;gap:10px}.public-account-link{color:#173f35;text-decoration:none;font-size:.82rem;font-weight:850}.public-booking-cta{font-size:.8rem;white-space:nowrap}
.public-nav-toggle{display:none;width:42px;height:42px;padding:10px;background:#173f35;border:0;border-radius:11px}.public-nav-toggle span{display:block;height:2px;background:#fff;margin:4px 0;border-radius:2px}

.public-hero{overflow:hidden;padding:92px 0 82px;background:radial-gradient(circle at 80% 20%,rgba(182,151,92,.22),transparent 27%),linear-gradient(145deg,#eee8d9 0%,#faf8f2 56%,#e6ecdf 100%)}
.public-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.75fr);align-items:center;gap:70px}.public-hero-copy h1{font-size:clamp(3.5rem,7vw,6.8rem);line-height:.91;letter-spacing:-.065em;margin:.15em 0 .28em;color:#173f35;max-width:830px}.public-hero-copy>p{font-size:1.16rem;line-height:1.7;color:#5b6862;max-width:700px}.public-trust-row{display:flex;gap:20px;flex-wrap:wrap;margin-top:32px;padding-top:22px;border-top:1px solid rgba(23,63,53,.13);font-size:.82rem;color:#68746e}.public-trust-row b{color:#173f35}
.public-hero-art{position:relative;aspect-ratio:1;max-width:440px;margin:auto;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#173f35 0 12%,#245447 12% 29%,transparent 29%);isolation:isolate}.public-hero-art:before{content:"";position:absolute;inset:17%;border-radius:50%;background:#f5f1e5;z-index:-1}.hero-center-mark{width:104px;height:104px;display:grid;place-items:center;border-radius:50%;background:#173f35;color:#d9bf88;font-size:3.1rem;box-shadow:0 20px 50px rgba(23,63,53,.24)}.hero-orbit{position:absolute;border:1px solid rgba(23,63,53,.28);border-radius:50%}.orbit-one{inset:4%}.orbit-two{inset:27%;border-style:dashed}.hero-art-word{position:absolute;background:#f8f5ec;border:1px solid #ded5c0;border-radius:999px;padding:8px 12px;font-size:.67rem;font-weight:900;letter-spacing:.12em;color:#173f35}.word-one{top:12%;left:3%}.word-two{right:-4%;top:49%}.word-three{bottom:10%;left:18%}
.public-info-ribbon{background:#173f35;color:#fff}.public-info-ribbon-grid{display:grid;grid-template-columns:.8fr .8fr 1.4fr;gap:0}.public-info-ribbon-grid>div{padding:20px 28px;border-right:1px solid rgba(255,255,255,.12)}.public-info-ribbon small,.public-info-ribbon strong{display:block}.public-info-ribbon small{color:#a9bbb3;text-transform:uppercase;font-size:.65rem;letter-spacing:.11em;font-weight:850}.public-info-ribbon strong{font-size:.92rem;margin-top:5px}

.public-premium .site-section{padding:82px 0}.public-premium .site-section.alt,.public-house-section{background:#eee9dd}.section-title-row{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin:8px 0 26px}.section-title-row h2,.public-section-copy h2,.public-dark-cta h2{font-size:clamp(2.3rem,4vw,4.1rem);line-height:1;letter-spacing:-.045em;color:#173f35;margin:.15em 0}.section-title-row p,.public-section-copy p{color:#66716c;line-height:1.65;max-width:720px}.section-title-row>a{color:#173f35;text-decoration:none;font-weight:850;white-space:nowrap}
.premium-gira-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gira-premium-card{display:flex;background:#fff;border:1px solid #ddd7c9;border-radius:19px;overflow:hidden;box-shadow:0 10px 35px rgba(31,56,46,.06)}.gira-date-column{width:82px;background:#173f35;color:#fff;padding:19px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center}.gira-date-column strong{font-size:2.1rem;line-height:1}.gira-date-column span{font-size:.67rem;letter-spacing:.1em;color:#d9c28e;margin-top:5px}.gira-card-content{padding:22px;flex:1}.gira-card-content h3{font-size:1.35rem;color:#173f35;margin:.4em 0}.gira-card-content p{color:#68746e}.gira-card-content a{font-weight:850;color:#173f35;text-decoration:none;font-size:.82rem}

.public-split{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:70px;align-items:center}.public-values-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.public-values-grid article{background:#faf8f2;border:1px solid #dcd5c5;border-radius:17px;padding:23px}.public-values-grid article>span{font-size:.7rem;font-weight:900;color:#b08d4e}.public-values-grid strong{display:block;font-size:1.25rem;color:#173f35;margin:8px 0}.public-values-grid p{font-size:.88rem;color:#66716c;line-height:1.55;margin:0}
.spiritual-preview-grid,.spiritual-content-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.spiritual-preview-grid>a,.spiritual-content-card{background:#fff;border:1px solid #e0dacd;border-radius:17px;padding:24px;text-decoration:none;color:inherit;transition:transform .18s ease,border-color .18s ease}.spiritual-preview-grid>a:hover,.spiritual-content-card:hover{transform:translateY(-3px);border-color:#c3aa72}.spiritual-preview-grid>a>span,.spiritual-index{color:#b6975c;font-size:1.45rem}.spiritual-preview-grid strong,.spiritual-content-card h3{display:block;color:#173f35;font-size:1.2rem;margin:10px 0}.spiritual-preview-grid p,.spiritual-content-card p{color:#69756f;font-size:.86rem;line-height:1.55}.spiritual-content-card b{font-size:.79rem;color:#173f35}
.public-dark-cta{padding:72px 0;background:linear-gradient(135deg,#102f27,#1d5142);color:#fff}.public-dark-cta-grid{display:flex;align-items:center;justify-content:space-between;gap:40px}.public-dark-cta h2{color:#fff}.public-dark-cta p{color:#c4d3cd;max-width:750px;line-height:1.65}.public-dark-cta .eyebrow{color:#d4b97e}
.public-action-panel{display:grid;gap:10px}.public-action-panel>a{display:flex;align-items:center;gap:14px;padding:20px;border:1px solid #ddd6c8;background:#fff;border-radius:15px;text-decoration:none;color:inherit}.public-action-panel>a>span{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#173f35;color:#d6bb82}.public-action-panel strong,.public-action-panel small{display:block}.public-action-panel small{color:#6d7772;margin-top:3px}.public-action-panel b{margin-left:auto;color:#173f35}
.public-empty-state{grid-column:1/-1;text-align:center;padding:44px;border:1px dashed #cfc6b4;border-radius:18px;background:#faf8f2}.public-empty-state>span{font-size:2rem;color:#b6975c}.public-empty-state h3{color:#173f35}

.public-inner-hero{padding:72px 0;background:linear-gradient(145deg,#eee8d9,#f8f6ef);border-bottom:1px solid #dfd8ca}.public-inner-hero-grid{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px}.public-inner-hero h1{font-size:clamp(3rem,6vw,5.6rem);line-height:.94;letter-spacing:-.055em;color:#173f35;margin:.14em 0}.public-inner-hero p{font-size:1.08rem;color:#65716b;max-width:780px;line-height:1.65}.public-inner-mark{width:110px;height:110px;display:grid;place-items:center;border-radius:50%;border:1px solid #cdbf9e;color:#b6975c;font-size:2.7rem}
.public-prose-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:65px;align-items:start}.public-prose{font-size:1.03rem;line-height:1.82;color:#44514c}.public-prose h2,.public-content-block h2{font-size:2.2rem;color:#173f35}.public-side-card{position:sticky;top:110px;padding:25px;background:#eee9dd;border-radius:18px}.public-side-card strong{display:block;font-size:1.35rem;color:#173f35;margin:9px 0}.public-side-card p{font-size:.88rem;line-height:1.55;color:#626e68}
.public-content-block{max-width:850px;margin:auto}.public-content-block h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.035em}.public-back-link{display:block;color:#173f35;font-weight:800;text-decoration:none;margin-bottom:18px}

.public-schedule-note{display:grid;grid-template-columns:220px 220px 1fr;background:#173f35;color:#fff;border-radius:18px;overflow:hidden;margin-bottom:28px}.public-schedule-note>div,.public-schedule-note>p{padding:19px 22px;margin:0;border-right:1px solid rgba(255,255,255,.1)}.public-schedule-note strong,.public-schedule-note span{display:block}.public-schedule-note span{color:#bdcec7;margin-top:4px;font-size:.85rem}.public-schedule-note p{color:#bdcec7;font-size:.83rem;line-height:1.5}
.gira-list-premium{display:grid;gap:12px}.gira-list-item{display:grid;grid-template-columns:92px 1fr auto;align-items:center;gap:22px;padding:17px;background:#fff;border:1px solid #ded8cb;border-radius:18px}.gira-list-date{text-align:center;border-right:1px solid #e0dbd1;padding-right:17px}.gira-list-date strong,.gira-list-date span,.gira-list-date small{display:block}.gira-list-date strong{font-size:2rem;color:#173f35}.gira-list-date span{font-size:.68rem;font-weight:900;color:#a67e36}.gira-list-date small{color:#838a86}.gira-list-main h2{margin:.25em 0;color:#173f35}.gira-list-main p{margin:.3em 0;color:#67736d}.public-status-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eee9de;font-size:.71rem;font-weight:850;color:#65716b}.public-status-pill.open{background:#e1f1e6;color:#28603e}

.public-site-footer{padding:64px 0 24px;background:#102f27;color:#d9e5e0}.public-footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr;gap:46px}.public-footer-grid strong{display:block;color:#fff;margin-bottom:13px}.public-footer-grid p,.public-footer-grid small{color:#9eb2a9;line-height:1.55}.public-footer-grid a{display:block;color:#d9e5e0;text-decoration:none;margin:7px 0;font-size:.86rem}.public-footer-brand .public-brand-symbol{background:#d3b77c;color:#173f35}.public-footer-brand h2{color:#fff;font-size:1.8rem;margin:14px 0 5px}.public-footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:48px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);color:#829a90;font-size:.78rem}.public-footer-bottom a{color:#d9e5e0;text-decoration:none}

.public-premium form.card,.public-premium .wide-card{border-radius:20px!important;box-shadow:0 13px 40px rgba(26,49,40,.07)!important}.public-premium input,.public-premium textarea,.public-premium select{border-radius:11px!important;border-color:#d8d1c4!important}.public-premium .course-card,.public-premium .campaign-card,.public-premium .needed-card{border-radius:19px!important;box-shadow:0 10px 35px rgba(31,56,46,.05)}
.public-premium .course-hero{background:linear-gradient(145deg,#e9e2d2,#f8f6ef)!important}.public-premium .course-hero h1{color:#173f35!important}

@media(max-width:1100px){
 .public-main-nav{display:none}.public-nav-toggle{display:block;margin-left:auto}.public-header-actions{display:none}
 .public-menu-open .public-main-nav{display:flex;position:absolute;top:82px;left:0;right:0;background:#faf8f2;border-bottom:1px solid #dcd6ca;padding:14px 20px;flex-direction:column;align-items:stretch;box-shadow:0 18px 35px rgba(26,49,40,.12)}
 .public-menu-open .public-main-nav a{padding:12px}.public-menu-open .public-header-actions{display:flex;position:absolute;top:430px;left:0;right:0;background:#faf8f2;padding:15px 20px 20px;flex-direction:column;align-items:stretch;border-bottom:1px solid #dcd6ca}
 .public-menu-open .public-account-link{text-align:center;padding:10px}
 .public-hero-grid{grid-template-columns:1fr .65fr;gap:35px}
 .spiritual-preview-grid,.spiritual-content-grid{grid-template-columns:repeat(2,1fr)}
 .premium-gira-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:800px){
 .public-premium .site-shell{width:min(100% - 28px,1180px)}.public-header-inner{min-height:70px}.public-brand-copy small{display:none}.public-brand{min-width:0}.public-brand-symbol{width:38px;height:38px}
 .public-menu-open .public-main-nav{top:70px}.public-menu-open .public-header-actions{top:418px}
 .public-hero{padding:62px 0}.public-hero-grid{grid-template-columns:1fr}.public-hero-art{display:none}.public-hero-copy h1{font-size:clamp(3rem,14vw,5rem)}.public-trust-row{gap:10px 18px}
 .public-info-ribbon-grid{grid-template-columns:1fr}.public-info-ribbon-grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.1);padding:15px 18px}
 .public-premium .site-section{padding:58px 0}.section-title-row{flex-direction:column;align-items:flex-start;gap:8px}.section-title-row h2,.public-section-copy h2{font-size:2.5rem}
 .premium-gira-grid,.spiritual-preview-grid,.spiritual-content-grid,.public-values-grid{grid-template-columns:1fr}
 .public-split,.public-prose-layout{grid-template-columns:1fr;gap:34px}.public-side-card{position:static}.public-dark-cta-grid{align-items:flex-start;flex-direction:column}
 .public-inner-hero{padding:52px 0}.public-inner-hero-grid{grid-template-columns:1fr}.public-inner-mark{display:none}.public-inner-hero h1{font-size:3.2rem}
 .public-schedule-note{grid-template-columns:1fr}.public-schedule-note>div,.public-schedule-note>p{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
 .gira-list-item{grid-template-columns:72px 1fr}.gira-list-item>.button{grid-column:1/-1;width:100%;box-sizing:border-box;text-align:center}.gira-list-date{padding-right:12px}
 .public-footer-grid{grid-template-columns:1fr 1fr;gap:32px}.public-footer-bottom{flex-direction:column}
}
@media(max-width:500px){
 .public-footer-grid{grid-template-columns:1fr}.public-hero-copy h1{font-size:3.1rem}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .button{width:100%;box-sizing:border-box;text-align:center}
 .gira-premium-card{flex-direction:column}.gira-date-column{width:auto;flex-direction:row;gap:6px;padding:12px}.gira-date-column strong{font-size:1.4rem}
}

/* v0.12.1 — Identidade visual TUCTB */
.public-brand-logo{width:58px;height:58px;object-fit:contain;flex:0 0 auto}
.public-site-footer .public-brand-logo{width:74px;height:74px;object-fit:contain;filter:drop-shadow(0 5px 14px rgba(0,0,0,.18))}
.admin-brand-logo{width:42px;height:42px;object-fit:contain;flex:0 0 auto}
.brand-settings-grid{display:grid;grid-template-columns:230px 1fr;gap:28px;align-items:center}
.brand-preview{min-height:210px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#f2efe7,#fff);border:1px solid #ded8cc;padding:20px}
.brand-preview img{width:min(180px,100%);max-height:180px;object-fit:contain}
.brand-settings-grid form{display:grid;gap:13px;margin-top:16px}
.brand-settings-grid input[type=file]{padding:12px;background:#fff;border:1px solid #d8d1c4;border-radius:11px}
@media(max-width:800px){.public-brand-logo{width:46px;height:46px}.brand-settings-grid{grid-template-columns:1fr}.brand-preview{min-height:170px}}

/* v0.12.2 — Controle de Transparência */
.transparency-mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 20px}
.transparency-mode-option{display:flex!important;gap:12px;align-items:flex-start;padding:17px;border:1px solid #ded8cc;border-radius:15px;background:#faf9f5;cursor:pointer}
.transparency-mode-option input{width:auto!important;margin:4px 0 0!important}
.transparency-mode-option strong,.transparency-mode-option small{display:block}.transparency-mode-option strong{color:#173f35}.transparency-mode-option small{font-weight:500;color:#68746e;line-height:1.45;margin-top:5px}
.transparency-mode-option:has(input:checked){border-color:#b6975c;background:#fffaf0;box-shadow:0 0 0 2px rgba(182,151,92,.12)}
.public-access-card{max-width:720px;margin:auto;padding:42px;text-align:center;border-radius:20px;background:#fff;border:1px solid #ded8cc;box-shadow:0 13px 40px rgba(26,49,40,.07)}
.public-access-card>span{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;background:#173f35;color:#d6bb82;font-size:1.8rem}.public-access-card h2{color:#173f35;font-size:2rem}.public-access-card p{color:#64716b;line-height:1.65}
@media(max-width:850px){.transparency-mode-grid{grid-template-columns:1fr}}

/* v0.12.3 — Hotfix páginas institucionais */
.schema-notice{padding:20px;border:1px solid #e6cc91;background:#fff7df;border-radius:15px;margin:8px 0 18px}
.schema-notice strong{display:block;color:#624600;font-size:1.05rem}
.schema-notice p{color:#6e6040;line-height:1.55;margin:7px 0 14px}
.schema-notice code{background:rgba(255,255,255,.7);padding:2px 5px;border-radius:5px}

/* =========================================================
   v0.12.4 — Desenvolvimento Mediúnico + Admin de Giras
   ========================================================= */
.mediumship-premium-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,470px);gap:54px;align-items:start}
.mediumship-content-column{min-width:0}.mediumship-main-copy{background:#fff;border:1px solid #dfd8ca;border-radius:20px;padding:30px;box-shadow:0 12px 38px rgba(26,49,40,.06)}
.mediumship-main-copy ol{padding-left:1.35rem}.mediumship-main-copy li{margin:10px 0;padding-left:5px}
.mediumship-content-block{margin-top:18px;padding:26px;background:#fff;border:1px solid #dfd8ca;border-radius:18px}.mediumship-content-block.highlight{background:#eee9dd}.mediumship-content-block h2{color:#173f35;font-size:1.8rem}
.mediumship-interest-card{position:sticky;top:110px;padding:28px!important}.mediumship-interest-card h2{font-size:2rem;color:#173f35;margin:.25em 0}.mediumship-interest-card>p{line-height:1.55;margin-bottom:20px}.mediumship-interest-card label{display:block;margin:13px 0;font-weight:760}.mediumship-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.mediumship-interest-card .privacy-check{display:flex;gap:9px;align-items:flex-start}.mediumship-interest-card .privacy-check input{width:auto!important;flex:0 0 auto;margin-top:3px}

.gira-admin-head{align-items:flex-end}.gira-admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.gira-admin-stats article{background:#fff;border:1px solid #e0dbd0;border-radius:17px;padding:18px;box-shadow:0 8px 28px rgba(27,49,41,.05)}.gira-admin-stats span,.gira-admin-stats small{display:block;color:#69736e}.gira-admin-stats span{font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.gira-admin-stats strong{display:block;font-size:2rem;color:#173f35;margin:5px 0}.gira-admin-stats small{font-size:.78rem}
.gira-filter-card{padding:17px!important}.gira-filter-form{display:grid;grid-template-columns:minmax(230px,1.5fr) minmax(150px,.6fr) minmax(190px,.8fr) auto;gap:12px;align-items:end}.gira-filter-form label{margin:0!important}.gira-filter-actions{display:flex;gap:8px}.gira-filter-actions .button,.gira-filter-actions button{white-space:nowrap}
.gira-admin-list{display:grid;gap:14px}.gira-admin-card{display:grid;grid-template-columns:108px minmax(0,1fr);background:#fff;border:1px solid #dfd9ce;border-radius:20px;overflow:hidden;box-shadow:0 10px 34px rgba(27,49,41,.06)}.gira-admin-date{background:#173f35;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 10px}.gira-admin-date strong{font-size:2.5rem;line-height:1}.gira-admin-date span{font-size:.7rem;font-weight:900;letter-spacing:.12em;color:#d7bd83;margin-top:6px}.gira-admin-date small{font-size:.75rem;color:#a9bbb3;margin-top:4px}
.gira-admin-main{padding:21px}.gira-admin-title-row{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.gira-admin-title-row h2{font-size:1.55rem;margin:.35em 0;color:#173f35}.gira-admin-title-row p{margin:0;color:#68736e;line-height:1.5;max-width:850px}.gira-edit-link{white-space:nowrap;color:#173f35;font-weight:850;text-decoration:none;padding:8px 10px;border-radius:9px;background:#f0ece3}
.gira-admin-badges{display:flex;gap:6px;flex-wrap:wrap}.gira-status-badge,.gira-soft-badge{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.gira-status-badge{background:#e9e5dc;color:#5e6964}.gira-status-badge.status-booking_open{background:#dff2e5;color:#24623e}.gira-status-badge.status-published{background:#e7efe9;color:#315f49}.gira-status-badge.status-draft{background:#fff0c8;color:#7c5900}.gira-status-badge.status-completed{background:#e6e9ef;color:#4c5b73}.gira-status-badge.status-cancelled{background:#fae1dd;color:#982f25}.gira-soft-badge{background:#f2eee5;color:#58645e}.gira-soft-badge.muted{opacity:.68}
.gira-admin-meta{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:18px 0}.gira-admin-meta>div{padding:11px 12px;border-radius:11px;background:#f7f4ed}.gira-admin-meta small,.gira-admin-meta strong{display:block}.gira-admin-meta small{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:#7b8580;font-weight:800}.gira-admin-meta strong{font-size:.9rem;color:#26372f;margin-top:4px}
.gira-admin-actions{display:flex;gap:7px;flex-wrap:wrap;padding-top:15px;border-top:1px solid #e9e4da}.gira-admin-actions a{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:9px;background:#f1eee7;color:#173f35;text-decoration:none;font-size:.78rem;font-weight:850}.gira-admin-actions a:hover{background:#e4ede8}.gira-admin-actions span{color:#b08d4e}
.gira-admin-empty{text-align:center!important;padding:40px!important}.gira-admin-empty .button{display:inline-flex;margin-top:10px}

@media(max-width:1100px){
 .gira-admin-stats{grid-template-columns:repeat(2,1fr)}
 .gira-filter-form{grid-template-columns:1fr 1fr}.gira-filter-form>label:first-child{grid-column:1/-1}.gira-filter-actions{align-self:end}
 .gira-admin-meta{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:800px){
 .mediumship-premium-layout{grid-template-columns:1fr;gap:24px}.mediumship-interest-card{position:static}.mediumship-form-grid{grid-template-columns:1fr}
 .gira-admin-head{align-items:stretch}.gira-admin-head .button{width:100%;box-sizing:border-box;text-align:center}
 .gira-filter-form{grid-template-columns:1fr}.gira-filter-form>label:first-child{grid-column:auto}.gira-filter-actions{display:grid;grid-template-columns:1fr 1fr}.gira-filter-actions>*{width:100%;box-sizing:border-box;text-align:center}
 .gira-admin-card{grid-template-columns:1fr}.gira-admin-date{flex-direction:row;gap:7px;padding:12px}.gira-admin-date strong{font-size:1.5rem}.gira-admin-date span,.gira-admin-date small{margin:0}
 .gira-admin-title-row{flex-direction:column}.gira-edit-link{align-self:flex-start}.gira-admin-meta{grid-template-columns:repeat(2,1fr)}.gira-admin-actions{display:grid;grid-template-columns:repeat(2,1fr)}.gira-admin-actions a{justify-content:center}
}
@media(max-width:480px){
 .gira-admin-stats{grid-template-columns:1fr 1fr}.gira-admin-stats article{padding:14px}.gira-admin-meta{grid-template-columns:1fr 1fr}.gira-admin-actions{grid-template-columns:1fr}.gira-filter-actions{grid-template-columns:1fr}
}

/* =========================================================
   v0.13.0 — Central de Integrações
   ========================================================= */
.integration-provider-card{background:#fff;border:1px solid #ded8cd;border-radius:20px;padding:24px;box-shadow:0 12px 38px rgba(27,49,41,.06);margin-bottom:18px}
.integration-provider-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.integration-provider-brand{display:flex;gap:15px;align-items:flex-start}.integration-provider-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:#173f35;color:#d5ba82;font-size:1.5rem;flex:0 0 auto}.integration-provider-brand h2{font-size:1.55rem;color:#173f35;margin:.18em 0}.integration-provider-brand p{margin:0;color:#6b7670}
.integration-state{display:inline-flex;padding:7px 11px;border-radius:999px;font-size:.72rem;font-weight:900;text-transform:uppercase}.integration-state.state-connected,.integration-state.state-success{background:#dff2e5;color:#24623e}.integration-state.state-error{background:#fae1dd;color:#982f25}.integration-state.state-disabled{background:#ece9e2;color:#737a76}.integration-state.state-not_configured{background:#fff0c8;color:#745500}
.integration-principles{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0;padding:13px;background:#f5f2eb;border-radius:12px}.integration-principles span{font-size:.76rem;font-weight:800;color:#50605a}
.integration-config-form{margin-top:18px}.integration-checks{display:flex;gap:24px;flex-wrap:wrap;margin:10px 0 18px}.integration-last-test{margin-top:18px;padding-top:15px;border-top:1px solid #e8e3d9}.integration-last-test strong,.integration-last-test span{display:inline-block;margin-right:9px}.integration-last-test p{color:#69746f;margin:6px 0 0}
.integration-capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.integration-capability-grid article{padding:17px;border:1px solid #e1dcd2;border-radius:14px;background:#f8f6f1}.integration-capability-grid article.available{border-color:#b8d9c3;background:#f0f8f3}.integration-capability-grid article.future{opacity:.68}.integration-capability-grid article>span{font-size:.7rem;font-weight:900;color:#b08d4e}.integration-capability-grid strong,.integration-capability-grid small{display:block}.integration-capability-grid strong{color:#173f35;margin:7px 0}.integration-capability-grid small{color:#707a75;line-height:1.4}
.integration-gira-list{display:grid;gap:8px}.integration-gira-row{display:grid;grid-template-columns:72px minmax(180px,.8fr) minmax(330px,1.3fr) auto 120px;gap:12px;align-items:center;padding:12px;border:1px solid #e3ded4;border-radius:13px}.integration-gira-date strong,.integration-gira-date small,.integration-gira-name strong,.integration-gira-name small{display:block}.integration-gira-date small,.integration-gira-name small{color:#76807b;margin-top:3px}.integration-map-form{display:grid;grid-template-columns:1fr auto;gap:7px}.integration-map-form input{min-width:0}.integration-sync-state{text-align:right}.integration-sync-state strong,.integration-sync-state small{display:block;font-size:.75rem}.integration-sync-state small{color:#75807a;margin-top:3px}
.integration-run-status{display:inline-flex;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:900;text-transform:uppercase;background:#ece9e2}.integration-run-status.status-success{background:#dff2e5;color:#24623e}.integration-run-status.status-error{background:#fae1dd;color:#982f25}.integration-run-status.status-warning{background:#fff0c8;color:#745500}.gira-soft-badge.erp-linked{background:#e4edf7;color:#345a78}
@media(max-width:1150px){.integration-capability-grid{grid-template-columns:repeat(2,1fr)}.integration-gira-row{grid-template-columns:70px 1fr 1.3fr}.integration-gira-row>form:last-of-type,.integration-sync-state{grid-column:auto}.integration-sync-state{text-align:left}}
@media(max-width:800px){.integration-provider-header{flex-direction:column}.integration-capability-grid{grid-template-columns:1fr}.integration-gira-row{grid-template-columns:1fr}.integration-map-form{grid-template-columns:1fr}.integration-gira-row form button{width:100%}.integration-sync-state{text-align:left}.integration-principles{display:grid}.integration-checks{display:grid;gap:8px}}

/* v0.13.1 — Hotfix salvamento da integração ERP */
.integration-security-notice{border-left:4px solid #b7791f}

/* v0.13.2 — APP_KEY administrável */
.security-key-card{border-left:4px solid #b6975c}
.security-ready-pill{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:.72rem;font-weight:900;text-transform:uppercase}
.security-ready-pill.ready{background:#dff2e5;color:#24623e}
.security-ready-pill.pending{background:#fff0c8;color:#745500}
.security-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
.security-check-grid article{padding:14px;border-radius:12px;background:#f5f2eb}
.security-check-grid small,.security-check-grid strong{display:block}
.security-check-grid small{color:#707a75;font-size:.72rem;text-transform:uppercase;font-weight:850}
.security-check-grid strong{color:#173f35;margin-top:4px}
.security-key-explanation{margin:16px 0;padding:16px;border-radius:13px;background:#fff8e5;border:1px solid #ead7a6}
.security-key-explanation strong{color:#624600}
.security-key-explanation p{margin:6px 0 0;color:#6f6040;line-height:1.55}
.security-key-note{margin-top:10px}
@media(max-width:600px){.security-check-grid{grid-template-columns:1fr}}

/* =========================================================
   v0.13.3 — Homologação ERP por gira
   ========================================================= */
.gira-erp-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.gira-erp-summary-grid article{padding:17px;background:#fff;border:1px solid #ded9cf;border-radius:16px}.gira-erp-summary-grid span,.gira-erp-summary-grid small{display:block;color:#717b76}.gira-erp-summary-grid span{font-size:.69rem;text-transform:uppercase;font-weight:900;letter-spacing:.05em}.gira-erp-summary-grid strong{display:block;font-size:1.55rem;color:#173f35;margin:5px 0}.gira-erp-summary-grid small{font-size:.76rem}
.gira-erp-readiness{display:flex;justify-content:space-between;align-items:center;gap:24px;border-left:4px solid #b7791f}.gira-erp-readiness.ready{border-left-color:#2d6a4f}.gira-erp-readiness h2{margin:.25em 0}.gira-erp-readiness p{margin:0;color:#68736e}.gira-erp-ready-pill{display:inline-flex;padding:8px 11px;border-radius:999px;background:#fff0c8;color:#745500;font-size:.7rem;font-weight:900;white-space:nowrap}.gira-erp-readiness.ready .gira-erp-ready-pill{background:#dff2e5;color:#24623e}
.gira-erp-warning-list{display:grid;gap:8px}.gira-erp-warning-list>div{display:flex;gap:10px;align-items:flex-start;padding:12px;border-radius:11px;background:#fff7df}.gira-erp-warning-list span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#b7791f;color:#fff;font-weight:900;flex:0 0 auto}.gira-erp-warning-list p{margin:2px 0;color:#655735}
.gira-confirmed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gira-confirmed-grid article{display:grid;grid-template-columns:44px 1fr auto;gap:11px;align-items:center;padding:13px;border:1px solid #ded9cf;border-radius:13px;background:#faf9f5}.gira-confirmed-grid article.assigned{border-color:#bfdcc8;background:#f1f8f3}.gira-confirmed-avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#173f35;color:#d9c28e;font-weight:900}.gira-confirmed-grid strong,.gira-confirmed-grid small,.gira-confirmed-grid div>span{display:block}.gira-confirmed-grid small{color:#78817d;font-size:.72rem}.gira-confirmed-grid div>span{font-size:.71rem;font-weight:850;color:#7a5a17;margin-top:3px}.gira-confirmed-grid .assigned div>span{color:#2d6a4f}.gira-confirmed-grid a{font-size:.75rem;font-weight:850;color:#173f35;text-decoration:none;white-space:nowrap}
.gira-soft-badge.erp-ready{background:#dff2e5;color:#24623e}.gira-soft-badge.erp-pending{background:#fff0c8;color:#745500}
.operation-erp-strip{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:16px 18px;border-radius:14px;background:#fff7df;border:1px solid #ead29c;margin-bottom:14px}.operation-erp-strip.ready{background:#eff8f2;border-color:#bcdcc7}.operation-erp-strip strong,.operation-erp-strip small{display:block}.operation-erp-strip strong{color:#173f35;margin:4px 0}.operation-erp-strip small{color:#68736e}.operation-erp-strip a{font-weight:850;color:#173f35;text-decoration:none;white-space:nowrap}
@media(max-width:1000px){.gira-erp-summary-grid{grid-template-columns:repeat(2,1fr)}.gira-confirmed-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.gira-erp-summary-grid,.gira-confirmed-grid{grid-template-columns:1fr}.gira-erp-readiness,.operation-erp-strip{align-items:flex-start;flex-direction:column}.gira-confirmed-grid article{grid-template-columns:44px 1fr}.gira-confirmed-grid article>a{grid-column:2}}

/* v0.14.0 — Agenda ERP automática */
.integration-auto-sync-card{border-left:4px solid #2d6a4f}.integration-schedule-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.integration-schedule-grid>div{padding:13px;border-radius:12px;background:#f5f2eb}.integration-schedule-grid small,.integration-schedule-grid strong{display:block}.integration-schedule-grid small{font-size:.69rem;text-transform:uppercase;font-weight:850;color:#78817d}.integration-schedule-grid strong{color:#173f35;margin-top:4px}.integration-auto-note{padding:13px;border-radius:11px;background:#eef6f1;color:#50615a;line-height:1.5;font-size:.82rem}
@media(max-width:850px){.integration-schedule-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:500px){.integration-schedule-grid{grid-template-columns:1fr}}

/* v0.14.1 — Textos públicos das Giras */
.gira-text-info{border-left:4px solid #2d6a4f}.gira-text-info h2{margin:.25em 0}.gira-text-info p{color:#66726c;line-height:1.6;max-width:900px}
.gira-public-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gira-public-text-card{margin:0!important}.gira-public-text-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:15px}.gira-public-text-head h2{margin:.25em 0;color:#173f35}.gira-public-text-head small{color:#7b8580}.gira-template-switch{display:flex!important;align-items:center;gap:7px!important;margin:0!important;padding:7px 10px;border-radius:999px;background:#f0ede5}.gira-template-switch input{width:auto!important;margin:0!important}.gira-template-save{display:flex;align-items:flex-end;justify-content:flex-end}.gira-public-description{margin-top:22px;padding:20px 22px;border-left:3px solid #b6975c;background:#f3efe5;border-radius:0 14px 14px 0;color:#596761;line-height:1.75;max-width:900px}
@media(max-width:900px){.gira-public-text-grid{grid-template-columns:1fr}}

/* v0.14.1.1 — Texto de atendimento editável + vagas explícitas */
.gira-attendance-intro-editor{border-left:4px solid #b6975c;margin-bottom:16px}
.gira-attendance-intro-editor textarea{min-height:110px}
.public-attendance-intro{max-width:920px;color:#5f6d67;line-height:1.7;margin-bottom:22px}
.public-block-availability{align-items:center!important;gap:18px}
.public-block-name strong{font-size:1rem;color:#173f35}
.public-vacancy-count{display:flex;align-items:baseline;gap:6px;text-align:right}
.public-vacancy-count strong{font-size:1.35rem;color:#173f35}
.public-vacancy-count span{font-size:.82rem;font-weight:800;color:#55635d;white-space:nowrap}
@media(max-width:620px){
 .public-block-availability{display:flex!important;justify-content:space-between!important;align-items:center!important}
 .public-vacancy-count{flex-direction:column;align-items:flex-end;gap:1px}
 .public-vacancy-count span{white-space:normal}
}

/* v0.14.1.2 — Abertura automática do agendamento ERP */
.erp-booking-control-card{margin:16px 0;padding:18px;border-radius:15px;background:#eef6f1;border:1px solid #bfd9c8}
.erp-booking-control-card h2{margin:.25em 0;color:#173f35}.erp-booking-control-card p{line-height:1.55}
.gira-soft-badge.booking-open-badge{background:#dff2e5;color:#24623e}.gira-soft-badge.erp-auto-badge{background:#e4edf7;color:#345a78}

/* v0.14.1.3 — Remoção segura de giras */
.gira-delete-form{display:inline-flex;margin:0}.gira-delete-button{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid #ead1cc;border-radius:9px;background:#fff4f2;color:#8b342b;font-size:.78rem;font-weight:850;cursor:pointer}.gira-delete-button:hover{background:#f9e3df;border-color:#dfb8b1}.gira-delete-button span{color:#a33d32}.gira-admin-actions .gira-delete-form{margin-left:auto}
@media(max-width:800px){.gira-admin-actions .gira-delete-form{margin-left:0}.gira-delete-button{width:100%;justify-content:center}}

/* =========================================================
   v0.15.0 — Agendamento Inteligente v2 + Operação
   ========================================================= */
.smart-saturday-builder{border-left:4px solid #b6975c;background:linear-gradient(135deg,#fff,#fbf7ed)}
.block-config-badges{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.block-config-badges span{padding:5px 8px;border-radius:999px;background:#eee9df;color:#56625c;font-size:.69rem;font-weight:850}
.booking-option.required-block{border-left:4px solid #2d6a4f}.booking-option:not(.required-block){border-left:4px solid #b6975c}.availability-pill{white-space:nowrap}
.appointment-v2-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:15px}.appointment-v2-stats article{padding:15px;border:1px solid #dfdad0;background:#fff;border-radius:14px}.appointment-v2-stats small,.appointment-v2-stats strong{display:block}.appointment-v2-stats small{font-size:.7rem;text-transform:uppercase;font-weight:850;color:#73807a}.appointment-v2-stats strong{font-size:1.6rem;color:#173f35;margin-top:4px}
.appointment-v2-list{display:grid;gap:8px}.appointment-v2-row{display:grid;grid-template-columns:70px minmax(180px,1fr) minmax(260px,1.5fr) auto;gap:14px;align-items:center;padding:13px;border:1px solid #e3ded5;border-radius:13px;background:#faf9f5}.appointment-v2-number{font-size:1.08rem;font-weight:900;color:#173f35}.appointment-v2-person strong,.appointment-v2-person small,.appointment-v2-sessions small,.appointment-v2-sessions strong{display:block}.appointment-v2-person small,.appointment-v2-sessions small{color:#75807a;font-size:.73rem}.appointment-v2-sessions strong{font-size:.82rem;color:#35463e;margin-top:3px}
.appointment-status-v2{display:inline-flex;padding:6px 8px;border-radius:999px;background:#ece9e2;font-size:.68rem;font-weight:900;text-transform:uppercase;white-space:nowrap}.appointment-status-v2.status-completed{background:#dff2e5;color:#24623e}.appointment-status-v2.status-in_service,.appointment-status-v2.status-called{background:#e4edf7;color:#345a78}.appointment-status-v2.status-absent{background:#fae1dd;color:#982f25}
.gatekeeper-block-overview{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;margin-bottom:10px;border-radius:14px;background:#f4f1e9;border:1px solid #e1dacf}.gatekeeper-overview-title strong{display:block;color:#173f35}.gatekeeper-overview-items{display:flex;gap:7px;flex-wrap:wrap}.gatekeeper-overview-items a{display:block;padding:8px 11px;border-radius:10px;background:#fff;color:#173f35;text-decoration:none;border:1px solid #ded8cd}.gatekeeper-overview-items a.active{background:#173f35;color:#fff}.gatekeeper-overview-items span,.gatekeeper-overview-items small{display:block}.gatekeeper-overview-items small{font-size:.66rem;opacity:.7;margin-top:2px}
@media(max-width:1000px){.appointment-v2-stats{grid-template-columns:repeat(3,1fr)}.appointment-v2-row{grid-template-columns:60px 1fr}.appointment-v2-sessions{grid-column:2}.appointment-v2-row>div:last-child{grid-column:2}.gatekeeper-block-overview{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.appointment-v2-stats{grid-template-columns:repeat(2,1fr)}.appointment-v2-row{grid-template-columns:1fr}.appointment-v2-sessions,.appointment-v2-row>div:last-child{grid-column:auto}.gatekeeper-overview-items{display:grid;width:100%;grid-template-columns:1fr 1fr}}

/* =========================================================
   v0.15.1 — Perfis de Capacidade dos Médiuns
   ========================================================= */
.capacity-profile-explainer{display:flex;align-items:center;justify-content:space-between;gap:25px;border-left:4px solid #2d6a4f}.capacity-profile-explainer h2{margin:.25em 0}.capacity-profile-explainer p{margin:0;color:#65716b;line-height:1.6;max-width:850px}.capacity-formula{padding:16px 20px;border-radius:14px;background:#eef6f1;color:#173f35;font-size:1.05rem;white-space:nowrap}.capacity-formula strong{font-size:1.3rem}
.medium-profile-list{display:grid;gap:15px}.medium-profile-card{margin:0!important}.medium-profile-head{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:13px;align-items:center;margin-bottom:18px}.medium-profile-avatar{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#173f35;color:#d8c18c;font-weight:900;font-size:1.15rem}.medium-profile-head h2{margin:.2em 0;color:#173f35}.medium-profile-head small{color:#7a847f}.medium-profile-source{padding:6px 9px;border-radius:999px;background:#eef3ef;color:#426153;font-size:.7rem;font-weight:900;text-transform:uppercase}
.medium-profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.medium-profile-checks{display:flex;gap:15px;flex-wrap:wrap;margin:15px 0}.medium-profile-checks label{display:flex!important;gap:7px;align-items:flex-start;margin:0!important;font-size:.82rem}.medium-profile-checks input{width:auto!important;margin-top:2px}.medium-profile-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap}
.medium-line-overrides{margin-top:18px;border-top:1px solid #e5e0d6;padding-top:13px}.medium-line-overrides summary{cursor:pointer;font-weight:850;color:#173f35}.medium-line-overrides summary span{display:inline-flex;margin-left:7px;padding:3px 7px;border-radius:999px;background:#eee9df;font-size:.68rem}.medium-line-content{padding-top:16px}.medium-line-existing{display:grid;gap:7px;margin-bottom:14px}.medium-line-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:10px 12px;background:#f7f4ed;border-radius:11px}.medium-line-row strong,.medium-line-row small{display:block}.medium-line-row small{color:#77817c;margin-top:2px}.medium-line-row>span{font-size:.72rem;font-weight:800;color:#5c6963}.medium-line-form{padding:15px;border:1px solid #e2dcd1;border-radius:13px;background:#fbfaf7}
.capacity-profile-info{padding:13px 15px;margin:12px 0;border-radius:12px;background:#eef6f1;border:1px solid #c5dccd}.capacity-profile-info strong{color:#24553e}.capacity-profile-info p{margin:4px 0 0;color:#5d6b64;font-size:.82rem;line-height:1.5}.capacity-medium-table small{display:block;color:#77817c;margin-top:3px;font-size:.7rem}.capacity-auto-note{color:#2d6a4f!important;font-weight:800}.capacity-source-pill{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.68rem;font-weight:900;text-transform:uppercase}.capacity-source-pill.auto{background:#dff2e5;color:#24623e}.capacity-source-pill.manual{background:#fff0c8;color:#745500}
@media(max-width:1050px){.medium-profile-grid{grid-template-columns:repeat(2,1fr)}.capacity-profile-explainer{align-items:flex-start;flex-direction:column}.capacity-formula{white-space:normal}}
@media(max-width:650px){.medium-profile-grid{grid-template-columns:1fr}.medium-profile-head{grid-template-columns:46px 1fr}.medium-profile-source{grid-column:2;justify-self:start}.medium-line-row{grid-template-columns:1fr}.medium-line-row>form{justify-self:start}.medium-profile-actions{align-items:stretch;flex-direction:column}.medium-profile-actions button{width:100%}}

/* v0.15.2 — Motor Automático de Blocos */
.automatic-rule-explainer{border-left:4px solid #2d6a4f}
.automatic-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.automatic-rule-card{margin:0!important}.automatic-rule-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:16px}
.automatic-rule-preview{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0;padding:13px;border-radius:12px;background:#eef6f1}
.automatic-rule-preview strong{width:100%;color:#24553e}.automatic-rule-preview span{padding:6px 9px;border-radius:999px;background:#fff;font-size:.75rem;font-weight:800}
.block-automation-status{display:flex;justify-content:space-between;gap:20px;align-items:center;border-left:4px solid #2d6a4f}
@media(max-width:1000px){.automatic-rule-grid{grid-template-columns:1fr}.block-automation-status{align-items:flex-start;flex-direction:column}}

/* v0.15.2.1 — Privacidade da capacidade individual */
.medium-choice select option:disabled{color:#8a8f8c}

/* =========================================================
   v0.16.0 — Operação da Gira / Porteira / Fila
   ========================================================= */
.gatekeeper-call-next{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;margin-bottom:12px;border-radius:14px;background:#173f35;color:#fff}.gatekeeper-call-next strong,.gatekeeper-call-next small{display:block}.gatekeeper-call-next strong{font-size:1.05rem;margin:3px 0}.gatekeeper-call-next small{opacity:.75}.gatekeeper-call-next .eyebrow{color:#d8c18c}.gatekeeper-call-next button:disabled{opacity:.45;cursor:not-allowed}
.gatekeeper-settings{border-left:4px solid #b6975c}.gatekeeper-settings .checks{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0}.gatekeeper-settings .checks label{display:flex;align-items:flex-start;gap:7px}.gatekeeper-settings input{width:auto!important}
.queue-person.status-called{border-left:4px solid #4275a1}.queue-person.status-in_service{border-left:4px solid #b6975c}.queue-person.status-completed{opacity:.68}.queue-person.status-absent{opacity:.65}
@media(max-width:700px){.gatekeeper-call-next{align-items:stretch;flex-direction:column}.gatekeeper-call-next button{width:100%}}

/* v0.16.1 — Central de Impressão Operacional */
.featured-report{border-top:4px solid #2d6a4f;background:linear-gradient(180deg,#f8fcfa 0%,#fff 100%)}
.cambone-print-section{border-left:4px solid #b6975c}
.medium-report-item{gap:12px}.medium-report-item .button{white-space:nowrap}
@media(max-width:700px){.medium-report-item{align-items:flex-start;flex-direction:column}.medium-report-item .button{width:100%;text-align:center}}

/* =========================================================
   v0.16.2 — Redesign Minha TUCTB
   ========================================================= */
.account-dashboard-body{min-height:100vh;background:#f3f1eb;color:#253a32}
.account-modern-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid #e2ded4;box-shadow:0 3px 18px rgba(31,55,45,.05)}
.account-modern-header-inner{min-height:76px;display:flex;align-items:center;gap:28px}
.account-modern-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#173f35;min-width:max-content}
.account-brand-mark{width:42px;height:42px;border-radius:13px;background:#173f35;color:#d7bd83;display:grid;place-items:center;font-family:Georgia,serif;font-size:1.25rem;font-weight:900;box-shadow:0 7px 18px rgba(23,63,53,.16)}
.account-modern-brand strong,.account-modern-brand small{display:block}.account-modern-brand strong{letter-spacing:.08em;font-size:.92rem}.account-modern-brand small{font-size:.66rem;color:#76827c;margin-top:1px}
.account-modern-nav{display:flex;gap:4px;align-items:center;flex:1}.account-modern-nav a{display:flex;align-items:center;gap:5px;padding:10px 12px;border-radius:9px;text-decoration:none;color:#5c6862;font-size:.82rem;font-weight:800}.account-modern-nav a:hover,.account-modern-nav a.active{background:#edf4ef;color:#173f35}
.account-nav-badge{min-width:19px;height:19px;border-radius:999px;display:grid;place-items:center;padding:0 5px;background:#b6975c;color:#fff;font-size:.62rem}
.account-header-actions{display:flex;align-items:center;gap:9px}.account-home-link{font-size:.76rem;font-weight:800;color:#56645d;text-decoration:none}.account-logout-button{padding:8px 12px!important;border-radius:9px!important;background:#fff!important;color:#7a3a32!important;border:1px solid #e7d1cd!important;font-size:.75rem!important}
.account-dashboard-main{padding-top:32px;padding-bottom:38px}
.account-dashboard-alert{margin-bottom:18px}
.account-dashboard-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.65fr);gap:28px;align-items:center;padding:38px 42px;border-radius:24px;background:linear-gradient(135deg,#153f34 0%,#285e4d 65%,#355f50 100%);box-shadow:0 18px 45px rgba(21,63,52,.16);color:#fff}
.account-dashboard-hero:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-90px;top:-120px;border:1px solid rgba(216,193,140,.22);box-shadow:0 0 0 36px rgba(216,193,140,.04),0 0 0 76px rgba(216,193,140,.03)}
.account-dashboard-hero-copy{position:relative;z-index:2}.account-dashboard-hero .eyebrow{color:#d8c18c}.account-dashboard-hero h1{font-size:clamp(2rem,4vw,3.2rem);line-height:1.04;margin:.18em 0 .22em;color:#fff}.account-dashboard-hero p{max-width:720px;margin:0;color:rgba(255,255,255,.78);font-size:1rem;line-height:1.65}
.account-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:23px}.account-dashboard-hero .button{background:#d5bd87;color:#173f35;border-color:#d5bd87}.account-dashboard-hero .button.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.32)}
.account-dashboard-symbol{position:relative;z-index:2;display:flex;min-height:180px;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid rgba(255,255,255,.13)}.account-dashboard-symbol span{font-size:4.5rem;color:#d8c18c;line-height:1}.account-dashboard-symbol small{margin-top:12px;text-transform:uppercase;letter-spacing:.13em;font-size:.63rem;color:rgba(255,255,255,.58)}
.account-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:18px 0 28px}.account-overview-card{display:flex;align-items:center;gap:14px;padding:17px 18px;border-radius:16px;background:#fff;border:1px solid #e0dcd2;box-shadow:0 7px 20px rgba(36,52,45,.035)}.account-overview-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#edf4ef;color:#245642;font-size:1.2rem}.account-overview-card small,.account-overview-card strong,.account-overview-card div>span{display:block}.account-overview-card small{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;font-weight:900;color:#7a847f}.account-overview-card strong{font-size:1.45rem;color:#173f35;margin:1px 0}.account-overview-card div>span{font-size:.7rem;color:#7a847f}
.account-dashboard-section{margin:0 0 24px}.account-dashboard-section-head,.account-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px}.account-dashboard-section-head h2,.account-panel-head h2{margin:.18em 0 0;color:#173f35}.account-panel-head a{font-size:.74rem;font-weight:850;text-decoration:none;color:#315e4d}
.account-announcement-grid{display:grid;gap:9px;margin-top:12px}.account-modern-announcement{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:13px;align-items:center;padding:15px 16px;background:#fff;border:1px solid #e0dcd2;border-radius:14px}.account-announcement-marker{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff0c8;color:#765500;font-weight:900}.account-announcement-copy strong{color:#173f35}.account-announcement-copy p{margin:3px 0 0;color:#68736e;font-size:.82rem;line-height:1.45}
.account-dashboard-content-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,.75fr);gap:16px;align-items:start}.account-dashboard-side{display:grid;gap:16px}
.account-modern-panel{background:#fff;border:1px solid #dfdbd1;border-radius:19px;padding:20px;box-shadow:0 8px 24px rgba(42,55,49,.035)}.account-appointments-panel{min-height:360px}
.account-modern-list{display:grid;gap:7px;margin-top:15px}.account-modern-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto 16px;gap:12px;align-items:center;padding:11px 10px;border-radius:12px;text-decoration:none;color:inherit;border:1px solid transparent;transition:.18s ease}.account-modern-row:hover{background:#f7f5ef;border-color:#e7e1d6;transform:translateY(-1px)}
.account-row-date{width:50px;height:50px;border-radius:12px;background:#edf4ef;display:grid;place-items:center;align-content:center;color:#173f35}.account-row-date strong,.account-row-date small{display:block;line-height:1}.account-row-date strong{font-size:1.1rem}.account-row-date small{font-size:.55rem;margin-top:4px;color:#668076}
.account-row-main strong,.account-row-main small,.account-row-status small,.account-row-status strong{display:block}.account-row-main strong{color:#263c33;font-size:.86rem}.account-row-main small{color:#7c8580;font-size:.7rem;margin-top:3px}.account-row-status{text-align:right}.account-row-status small{font-size:.62rem;color:#8b938f}.account-row-status strong{font-size:.62rem;text-transform:uppercase;color:#36634e;margin-top:2px}.account-row-arrow{font-size:1.25rem;color:#b0b6b2}
.account-empty-modern{display:flex;align-items:center;gap:14px;padding:25px 5px}.account-empty-modern>span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#f0eee8;color:#658073}.account-empty-modern div{flex:1}.account-empty-modern strong{display:block;color:#173f35}.account-empty-modern p{margin:4px 0 0;color:#7a837e;font-size:.8rem}
.account-course-stack{display:grid;gap:9px;margin-top:14px}.account-course-card{display:block;padding:12px;border-radius:11px;background:#f8f7f3;text-decoration:none;color:#263d33}.account-course-card strong,.account-course-card small{display:block}.account-course-card strong{font-size:.8rem}.account-course-card small{font-size:.67rem;color:#7b8580;margin-top:3px}.account-course-progress{display:block;height:5px;border-radius:99px;background:#e5e3dc;margin-top:9px;overflow:hidden}.account-course-progress i{display:block;height:100%;border-radius:inherit;background:#2d6a4f}
.account-modern-quick-links{display:grid;gap:7px;margin-top:13px}.account-modern-quick-links a{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px;border-radius:11px;text-decoration:none;color:#34473e}.account-modern-quick-links a:hover{background:#f6f4ee}.account-modern-quick-links>a>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#edf4ef;color:#2b6049}.account-modern-quick-links strong,.account-modern-quick-links small{display:block}.account-modern-quick-links strong{font-size:.77rem}.account-modern-quick-links small{font-size:.64rem;color:#828a86;margin-top:2px}.account-modern-quick-links b{color:#adb4b0}
.account-notifications-panel{margin-top:16px}.account-notification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.account-notification-card{display:grid;grid-template-columns:8px 1fr;gap:10px;padding:13px;border-radius:12px;background:#f8f7f3}.account-notification-card.unread{background:#eef6f1}.account-notification-dot{width:7px;height:7px;border-radius:50%;background:#b8bdb9;margin-top:5px}.account-notification-card.unread .account-notification-dot{background:#2d6a4f}.account-notification-card strong{display:block;font-size:.78rem;color:#294037}.account-notification-card p{margin:4px 0 0;color:#707a75;font-size:.72rem;line-height:1.42}
.account-empty-small{display:flex;align-items:center;gap:10px;padding:17px 2px;color:#7b8580}.account-empty-small span{font-size:1.3rem}.account-empty-small p{margin:0;font-size:.78rem}
.account-dashboard-footer{display:flex;justify-content:space-between;gap:20px;margin-top:22px;padding:15px 3px;border-top:1px solid #ddd9d0;color:#858d89;font-size:.7rem}.account-dashboard-footer a{color:#52645b;text-decoration:none;font-weight:800}
@media(max-width:1050px){.account-modern-header-inner{gap:15px}.account-modern-nav{overflow:auto}.account-home-link{display:none}.account-dashboard-content-grid{grid-template-columns:1fr}.account-dashboard-side{grid-template-columns:1fr 1fr}.account-dashboard-hero{grid-template-columns:1fr .45fr}}
@media(max-width:760px){.account-modern-header{position:static}.account-modern-header-inner{min-height:auto;align-items:flex-start;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.account-modern-brand{flex:1}.account-modern-nav{order:3;width:100%;flex-basis:100%;padding-top:4px;border-top:1px solid #eeeae2}.account-modern-nav a{white-space:nowrap}.account-dashboard-main{padding-top:16px}.account-dashboard-hero{grid-template-columns:1fr;padding:27px 22px;border-radius:18px}.account-dashboard-symbol{display:none}.account-overview-grid{grid-template-columns:1fr}.account-dashboard-side{grid-template-columns:1fr}.account-notification-grid{grid-template-columns:1fr}.account-modern-announcement{grid-template-columns:32px 1fr}.account-modern-announcement .button{grid-column:2;justify-self:start}.account-modern-row{grid-template-columns:48px 1fr 16px}.account-row-status{grid-column:2;text-align:left;display:flex;gap:6px}.account-row-arrow{grid-column:3;grid-row:1/3}.account-dashboard-footer{flex-direction:column;gap:7px}}
@media(max-width:480px){.account-header-actions{margin-left:auto}.account-modern-brand small{display:none}.account-modern-nav a{padding:8px 9px;font-size:.74rem}.account-dashboard-hero h1{font-size:1.85rem}.account-hero-actions{display:grid}.account-hero-actions .button{text-align:center}.account-modern-panel{padding:16px}.account-panel-head{align-items:flex-start}.account-empty-modern{align-items:flex-start;flex-wrap:wrap}.account-empty-modern .button{width:100%;text-align:center}}

/* =========================================================
   v0.16.2.1 — Logomarca institucional na Minha TUCTB
   ========================================================= */
.account-brand-logo-wrap{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px}
.account-brand-logo{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 5px 10px rgba(23,63,53,.12))}
.account-hero-logo-wrap{width:min(190px,80%);aspect-ratio:1/1;display:grid;place-items:center;padding:8px}
.account-hero-logo{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 12px 24px rgba(0,0,0,.18))}
.account-dashboard-symbol>small{margin-top:10px}
@media(max-width:760px){
 .account-brand-logo-wrap{width:44px;height:44px;flex-basis:44px}
}

/* =========================================================
   v0.16.2.2 — Visibilidade da marca institucional
   ========================================================= */

/* Cabeçalho público: a regra final evita que estilos legados reduzam a marca. */
.public-site-header .public-brand-logo{
 width:64px!important;height:64px!important;object-fit:contain!important;
 flex:0 0 64px!important;filter:drop-shadow(0 5px 12px rgba(23,63,53,.10))
}
.public-site-header .public-brand{min-width:235px}

/* Rodapé: presença institucional maior, sem deformar a imagem. */
.public-site-footer .public-brand-logo{
 width:112px!important;height:112px!important;object-fit:contain!important;
 display:block!important;margin-bottom:10px!important;
 filter:drop-shadow(0 7px 18px rgba(0,0,0,.20))
}
.public-footer-brand h2{margin-top:8px!important}

/* Painel administrativo. */
body.admin-premium-body .admin-brand-logo{
 width:56px!important;height:56px!important;object-fit:contain!important;
 flex:0 0 56px!important;filter:drop-shadow(0 5px 12px rgba(0,0,0,.15))
}
body.admin-premium-body .admin-brand{padding-top:20px!important;padding-bottom:20px!important}

/* Minha TUCTB. */
.account-brand-logo-wrap{width:58px!important;height:58px!important;flex:0 0 58px!important}
.account-hero-logo-wrap{width:min(220px,84%)!important}

/* Login e cadastro da Minha TUCTB. */
.auth-logo-link{display:flex!important;justify-content:center!important;align-items:center!important;margin:0 auto 16px!important;width:max-content!important}
.auth-brand-logo{
 display:block;width:104px;height:104px;object-fit:contain;
 filter:drop-shadow(0 7px 15px rgba(23,63,53,.12))
}

/* Mantém boa proporção em telas menores sem voltar a ficar ilegível. */
@media(max-width:760px){
 .public-site-header .public-brand-logo{width:54px!important;height:54px!important;flex-basis:54px!important}
 .public-site-footer .public-brand-logo{width:96px!important;height:96px!important}
 .account-brand-logo-wrap{width:50px!important;height:50px!important;flex-basis:50px!important}
 .auth-brand-logo{width:88px;height:88px}
}
/* v0.17.0 — Auditoria visual do fluxo de agendamento */
.booking-readiness{margin:14px 0;padding:13px 15px;border-radius:13px;border:1px solid #ddd9cf;background:#faf9f5}.booking-readiness.is-ready{background:#f0f7f2;border-color:#cfe0d5}.booking-readiness.has-pending{background:#fff9ec;border-color:#eadcb8}.booking-readiness-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.booking-readiness-head small,.booking-readiness-head strong{display:block}.booking-readiness-head small{font-size:.61rem;letter-spacing:.08em;font-weight:900;color:#77827c}.booking-readiness-head strong{font-size:.82rem;color:#28463a;margin-top:2px}.booking-readiness-head>span{font-size:.8rem;font-weight:900;color:#315f4c}.booking-readiness-checks{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.booking-readiness-checks span{padding:5px 8px;border-radius:999px;font-size:.63rem;font-weight:800}.booking-readiness-checks .ok{background:#dfeee4;color:#28543f}.booking-readiness-checks .pending{background:#f5e5bd;color:#775b17}@media(max-width:700px){.booking-readiness-checks{display:grid;grid-template-columns:1fr 1fr}.booking-readiness-checks span{text-align:center}}

/* =========================================================
   v0.17.1 — Autogestão de Agendamentos
   ========================================================= */
.account-booking-list{gap:10px}.account-booking-card{border:1px solid #e4dfd5;border-radius:14px;overflow:hidden;background:#fff}.account-booking-card .account-modern-row{border:0;border-radius:0}.account-booking-card.is-cancelled{opacity:.68;background:#f7f5f1}.account-row-main em{display:block;margin-top:5px;font-style:normal;font-size:.67rem;color:#577064;line-height:1.35}
.account-cancel-booking{border-top:1px solid #eee9df;background:#fcfaf6}.account-cancel-booking summary{cursor:pointer;padding:9px 12px;color:#8c463b;font-size:.7rem;font-weight:850}.account-cancel-booking form{padding:3px 12px 13px;display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:9px 12px;align-items:end}.account-cancel-booking label{margin:0!important;font-size:.72rem}.account-cancel-booking label span{font-weight:500;color:#858c88}.account-cancel-booking input{margin-top:4px}.account-cancel-booking p{grid-column:1/-1;margin:0;color:#7a827e;font-size:.65rem}.account-cancel-confirm{background:#8c3f35!important;border-color:#8c3f35!important;white-space:nowrap}.account-cancellation-closed{border-top:1px solid #eee9df;padding:9px 12px;background:#f7f5f1;color:#7c837f;font-size:.67rem}
.booking-policy-card{border-left:4px solid #2d6a4f}
@media(max-width:650px){.account-cancel-booking form{grid-template-columns:1fr}.account-cancel-confirm{width:100%}}

/* =========================================================
   v0.18.0 — Central Operacional da Gira
   ========================================================= */
.operation-page-head{align-items:center}.operation-command-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding:12px 15px;border:1px solid #d9e3dc;border-radius:14px;background:#f7fbf8}.operation-live{display:flex;align-items:center;gap:10px}.operation-live-dot{width:10px;height:10px;border-radius:50%;background:#2d6a4f;box-shadow:0 0 0 5px rgba(45,106,79,.12)}.operation-live small,.operation-live strong{display:block}.operation-live small{font-size:.58rem;letter-spacing:.1em;color:#718078}.operation-live strong{font-size:.8rem;color:#244638}.operation-command-actions{display:flex;gap:12px;flex-wrap:wrap}.operation-command-actions a{font-size:.7rem;font-weight:850;color:#315e4d;text-decoration:none}
.operation-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}.operation-metric-grid article{padding:15px;border:1px solid #dfddd5;border-radius:14px;background:#fff}.operation-metric-grid small,.operation-metric-grid strong,.operation-metric-grid span{display:block}.operation-metric-grid small{font-size:.59rem;text-transform:uppercase;letter-spacing:.05em;color:#7b8580;font-weight:850}.operation-metric-grid strong{font-size:1.6rem;color:#173f35;margin:2px 0}.operation-metric-grid span{font-size:.62rem;color:#858d89}
.operation-now-card{margin:14px 0}.operation-now-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.operation-now-item{display:grid;grid-template-columns:44px 1fr auto;gap:10px;align-items:center;padding:11px;border-radius:11px;background:#f7f5ef}.operation-now-item.status-in_service{background:#edf6f0}.operation-now-item strong,.operation-now-item small{display:block}.operation-now-item small{font-size:.65rem;color:#76827c;margin-top:2px}.operation-now-item>b{font-size:.63rem;text-transform:uppercase;color:#315e4d}
.operation-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,.55fr);gap:15px;align-items:start;margin-top:18px}.operation-section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}.operation-section-title h2{margin:.15em 0 0;color:#173f35}.operation-section-title>a{font-size:.72rem;font-weight:850;color:#315e4d;text-decoration:none}.operation-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.operation-card-head>strong{font-size:1.25rem;color:#315e4d}.operation-contingency p{font-size:.78rem;line-height:1.55;color:#6f7974}.operation-print-links{display:grid;gap:7px;margin:14px 0}.operation-print-links a{padding:10px;border-radius:9px;background:#f4f5f1;color:#315e4d;text-decoration:none;font-size:.72rem;font-weight:800}
.operation-medium-section{margin-top:24px}.operation-medium-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.operation-medium-card{display:grid;gap:12px;padding:16px;border:1px solid #dfddd5;border-radius:15px;background:#fff}.operation-medium-card small{font-size:.62rem;color:#7b8580}.operation-medium-card h3{margin:2px 0 0;color:#173f35}.operation-medium-counts{display:flex;gap:9px;flex-wrap:wrap}.operation-medium-counts span{font-size:.63rem;color:#78817c}.operation-medium-counts b{color:#315e4d}
.cambone-focus-banner{display:grid;gap:3px;padding:18px 20px;margin-bottom:14px;border-radius:15px;background:#173f35;color:#fff}.cambone-focus-banner span{font-size:.59rem;letter-spacing:.12em;color:#d7bd83}.cambone-focus-banner strong{font-size:1rem}.cambone-focus-banner small{color:rgba(255,255,255,.7)}
.cambone-queue{display:grid;gap:9px}.cambone-person{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:13px;align-items:center;padding:14px 15px;border:1px solid #dfddd5;border-radius:14px;background:#fff}.cambone-person.status-in_service{border-color:#bcd7c7;background:#f0f7f2}.cambone-person.status-completed{opacity:.68}.cambone-person-number{width:54px;height:54px;border-radius:12px;display:grid;place-items:center;background:#edf4ef;color:#173f35;font-weight:900}.cambone-person-main span,.cambone-person-main strong,.cambone-person-main small{display:block}.cambone-person-main span{font-size:.6rem;text-transform:uppercase;color:#708079}.cambone-person-main strong{font-size:.9rem;color:#253e34;margin:2px 0}.cambone-person-main small{font-size:.68rem;color:#7c8580}.cambone-person-actions{display:flex;gap:6px;align-items:center}.cambone-person-actions form{margin:0}.cambone-person-actions button{padding:8px 11px!important;font-size:.7rem!important}.cambone-done{font-size:.72rem;color:#2d6a4f}
@media(max-width:1100px){.operation-metric-grid{grid-template-columns:repeat(3,1fr)}.operation-medium-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){.operation-layout{grid-template-columns:1fr}.operation-now-grid{grid-template-columns:1fr}.operation-command-strip{align-items:flex-start;flex-direction:column}}
@media(max-width:650px){.operation-metric-grid{grid-template-columns:repeat(2,1fr)}.operation-medium-grid{grid-template-columns:1fr}.cambone-person{grid-template-columns:48px 1fr}.cambone-person-number{width:46px;height:46px}.cambone-person-actions{grid-column:1/-1;justify-content:flex-end;border-top:1px solid #eeeae2;padding-top:9px}.cambone-person-actions form{flex:1}.cambone-person-actions button{width:100%}}

/* =========================================================
   v0.19.0 — Comunicação e Lembretes Automáticos
   ========================================================= */
.communication-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.communication-status-grid article{padding:15px;border:1px solid #dfddd5;border-radius:14px;background:#fff}.communication-status-grid small,.communication-status-grid strong,.communication-status-grid span{display:block}.communication-status-grid small{font-size:.62rem;text-transform:uppercase;color:#7b8580;font-weight:850}.communication-status-grid strong{font-size:1.55rem;color:#173f35}.communication-status-grid span{font-size:.65rem;color:#828a86}
.communication-automation-card{border-left:4px solid #2d6a4f}.communication-scheduler-state{padding:6px 9px;border-radius:999px;font-size:.66rem;font-weight:900;text-transform:uppercase}.communication-scheduler-state.active{background:#e1f1e7;color:#286044}.communication-scheduler-state.inactive{background:#eeeae3;color:#777}.communication-scheduler-meta{display:flex;gap:18px;flex-wrap:wrap;margin:12px 0}.communication-scheduler-meta span{font-size:.7rem;color:#78817d}.communication-scheduler-meta strong{display:block;color:#315e4d;margin-top:2px}
.communication-admin-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:14px;margin-bottom:14px}.communication-channel-list{display:grid;gap:8px;margin-top:12px}.communication-channel-list>div{padding:12px;border:1px solid #e5e1d8;border-radius:11px;background:#f9f8f4}.communication-channel-list>div.ready{background:#eef6f1;border-color:#cfe2d6}.communication-channel-list strong,.communication-channel-list span{display:inline-block}.communication-channel-list span{float:right;font-size:.62rem;font-weight:850;color:#65736c}.communication-channel-list p{clear:both;margin:6px 0 0;font-size:.7rem;color:#76807b;line-height:1.45}.queue-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:.62rem;font-weight:900}.queue-status.status-sent{background:#e1f1e7;color:#286044}.queue-status.status-pending{background:#fff1c9;color:#785a09}.queue-status.status-failed{background:#f8ded9;color:#963c32}.queue-status.status-cancelled{background:#ece9e3;color:#6d716f}.communication-settings-card{border-left:4px solid #b6975c}
.account-notifications-main{padding-top:30px;padding-bottom:35px}.account-notifications-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:18px}.account-notifications-head h1{margin:.15em 0;color:#173f35}.account-notifications-head p{margin:0;color:#74807a}.account-notifications-stream{display:grid;gap:9px}.account-notification-full{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid #dfddd5;border-radius:15px;background:#fff}.account-notification-full.unread{border-color:#bfd6c7;background:#f3faf5}.account-notification-full-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:#edf4ef;color:#2d6a4f;font-weight:900}.account-notification-full-copy h2{margin:.15em 0;color:#294037;font-size:1rem}.account-notification-full-copy p{margin:3px 0;color:#697570;font-size:.78rem;line-height:1.5}.account-notification-full-copy small{font-size:.65rem;color:#8a918e}.account-notification-full-actions{display:flex;gap:7px;align-items:center}.account-notification-full-actions form{margin:0}.notification-read-label{font-size:.67rem;color:#7c8580}
@media(max-width:900px){.communication-status-grid{grid-template-columns:repeat(2,1fr)}.communication-admin-layout{grid-template-columns:1fr}}
@media(max-width:650px){.account-notifications-head{align-items:flex-start;flex-direction:column}.account-notification-full{grid-template-columns:40px 1fr}.account-notification-full-actions{grid-column:1/-1;justify-content:flex-end}.communication-status-grid{grid-template-columns:1fr 1fr}.communication-queue-table{overflow-x:auto}}

/* =========================================================
   v0.20.0 — Escola TUCTB 2.0 Complete
   ========================================================= */
.school-streaming{background:#f5f4ef}.school-hero{min-height:430px;display:flex;align-items:center;background:radial-gradient(circle at 75% 35%,rgba(91,137,108,.28),transparent 32%),linear-gradient(115deg,#102f27,#244f40 58%,#18382f);color:#fff}.school-hero-inner{padding-top:70px;padding-bottom:70px}.school-hero h1{max-width:720px;margin:.12em 0;font-size:clamp(2.2rem,5vw,4.6rem);line-height:.98;letter-spacing:-.045em}.school-hero p{max-width:620px;font-size:1rem;line-height:1.7;color:rgba(255,255,255,.75)}.school-hero-actions{display:flex;gap:9px;margin-top:24px}.school-nav-strip{position:sticky;top:0;z-index:20;background:rgba(246,245,240,.93);backdrop-filter:blur(14px);border-bottom:1px solid #e3dfd5}.school-nav-strip .site-shell{display:flex;gap:20px;align-items:center;overflow:auto;padding-top:13px;padding-bottom:13px}.school-nav-strip a,.school-nav-strip span{white-space:nowrap;text-decoration:none;font-size:.72rem;font-weight:850;color:#486257}.school-nav-strip span{color:#173f35}.school-catalog{padding-top:35px;padding-bottom:60px}.school-shelf{margin-bottom:40px}.school-shelf-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:13px}.school-shelf-head h2{margin:.12em 0;color:#173f35;font-size:1.45rem}.school-shelf-head>span{font-size:.68rem;color:#7c8580}.school-card-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.school-stream-card{display:block;overflow:hidden;border:1px solid #e0ddd4;border-radius:15px;background:#fff;color:inherit;text-decoration:none;transition:.18s ease}.school-stream-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(22,52,43,.09)}.school-card-art{height:145px;padding:12px;background:linear-gradient(135deg,#234e40,#789a82);background-size:cover;background-position:center;display:flex;align-items:flex-start}.school-card-art span{padding:5px 7px;border-radius:999px;background:rgba(10,28,23,.72);color:#fff;font-size:.55rem;font-weight:900;letter-spacing:.07em}.school-stream-card>div:last-child{padding:13px}.school-stream-card h3{margin:0 0 5px;color:#243e34;font-size:.92rem}.school-stream-card p{height:2.7em;overflow:hidden;margin:0 0 9px;color:#727d78;font-size:.69rem;line-height:1.4}.school-stream-card small{color:#7e8782;font-size:.62rem}.school-course-hero{position:relative;background:linear-gradient(110deg,#102e26 0%,#1c4537 60%,#315e4d);color:#fff}.school-course-hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,#102e26 25%,rgba(16,46,38,.86) 58%,rgba(16,46,38,.32)),var(--school-cover);background-size:cover;background-position:center;opacity:.65}.school-course-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.5fr) 310px;gap:50px;align-items:end;padding-top:80px;padding-bottom:65px}.school-course-hero h1{font-size:clamp(2.2rem,4.5vw,4rem);line-height:1;margin:.18em 0}.school-course-hero p{max-width:650px;color:rgba(255,255,255,.75);line-height:1.6}.school-back{display:inline-block;color:rgba(255,255,255,.65);text-decoration:none;font-size:.72rem;margin-bottom:35px}.school-course-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}.school-course-meta span{font-size:.67rem;font-weight:800;color:#dce9e0}.school-enroll-card{padding:20px;border:1px solid rgba(255,255,255,.15);border-radius:16px;background:rgba(12,33,27,.78);backdrop-filter:blur(12px)}.school-enroll-card>strong{display:block;font-size:1.05rem;margin-bottom:12px}.school-enroll-card button,.school-enroll-card .button{width:100%;text-align:center}.school-enroll-card small{display:block;margin-top:11px;color:rgba(255,255,255,.6);font-size:.63rem}.school-course-detail{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:45px}.school-curriculum details{border-bottom:1px solid #e2dfd6}.school-curriculum summary{display:grid;grid-template-columns:80px 1fr auto;gap:10px;align-items:center;padding:16px 0;cursor:pointer}.school-curriculum summary span,.school-curriculum summary small{font-size:.62rem;color:#7a8580}.school-lesson-preview{display:grid;grid-template-columns:25px 1fr auto;gap:8px;padding:10px 12px;margin-bottom:5px;border-radius:9px;background:#f3f4ef}.school-lesson-preview strong{font-size:.72rem;color:#3d5149}.school-lesson-preview small{font-size:.62rem;color:#7d8581}
.school-student-body{margin:0;background:#f3f3ef;color:#263c33}.school-student-shell{max-width:1280px;margin:auto;padding:34px 28px 60px}.school-student-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.school-student-head h1{margin:.1em 0;font-size:2.3rem}.school-student-head p{margin:0;color:#758079}.school-student-head>div:last-child{display:flex;gap:8px}.student-shelf{margin:28px 0 38px}.student-continue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.student-continue-card{display:grid;grid-template-columns:180px 1fr;overflow:hidden;border:1px solid #dedbd2;border-radius:16px;background:#fff}.student-course-art{min-height:190px;background:linear-gradient(135deg,#244d40,#7e9c86);background-size:cover;background-position:center}.student-continue-card>div:last-child{padding:18px}.student-continue-card h3{margin:4px 0 14px;font-size:1.15rem}.student-continue-card p{font-size:.68rem;color:#7c8580}.student-course-head{display:grid;gap:22px;margin-bottom:24px}.student-course-head>a{color:#526b60;text-decoration:none;font-size:.72rem}.student-course-head h1{font-size:2.2rem;margin:.15em 0}.student-course-progress{display:grid;grid-template-columns:minmax(200px,420px) auto;gap:10px;align-items:center}.certificate-celebration{display:grid;grid-template-columns:55px 1fr auto;gap:16px;align-items:center;padding:20px;margin-bottom:22px;border-radius:16px;background:#173f35;color:#fff}.certificate-celebration>span{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:#d7bd83;color:#173f35;font-weight:900}.certificate-celebration h2{margin:2px 0}.certificate-celebration p{margin:0;color:rgba(255,255,255,.68)}.student-module-list{display:grid;gap:14px}.student-module{overflow:hidden;border:1px solid #dfdcd4;border-radius:16px;background:#fff}.student-module>header{display:grid;grid-template-columns:55px 1fr;gap:14px;padding:18px;background:#f8f7f3}.student-module>header>span{font-size:1.5rem;font-weight:900;color:#c3a96f}.student-module h2{margin:1px 0}.student-module p{margin:4px 0;color:#7a837f;font-size:.72rem}.student-lesson-row{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:13px 17px;border-top:1px solid #eeebe4;text-decoration:none;color:#30463d}.student-lesson-row:hover{background:#f5f8f5}.student-lesson-row.done{background:#f2f8f4}.student-lesson-row strong,.student-lesson-row small{display:block}.student-lesson-row small{font-size:.63rem;color:#7e8782;margin-top:2px}.student-lesson-state{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#edf3ef;color:#2d6a4f;font-weight:900}
.school-player-body{margin:0;background:#f4f3ef;color:#293e35}.school-player-layout{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.school-player-sidebar{position:sticky;top:0;height:100vh;box-sizing:border-box;padding:28px 22px;background:#14372d;color:#fff}.school-player-sidebar>a{display:block;margin-bottom:50px;color:rgba(255,255,255,.7);text-decoration:none;font-size:.72rem}.school-player-sidebar h2{font-size:1rem;line-height:1.35}.school-player-progress{position:absolute;left:22px;right:22px;bottom:30px}.school-player-progress span,.school-player-progress strong{display:block;font-size:.65rem}.school-player-progress strong{font-size:1.25rem;margin:3px 0 8px}.school-player-main{max-width:950px;width:100%;box-sizing:border-box;margin:0 auto;padding:48px 45px}.school-player-main>header h1{font-size:2.25rem;margin:.15em 0}.school-player-main>header p{color:#7b8580}.school-video-frame{aspect-ratio:16/9;margin:25px 0;border-radius:16px;overflow:hidden;background:#0d1713}.school-video-frame iframe{width:100%;height:100%;border:0}.school-lesson-prose{padding:25px 0;font-size:.94rem;line-height:1.85}.school-materials{margin:25px 0}.school-materials>a{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:12px;margin:7px 0;border:1px solid #dedbd2;border-radius:11px;background:#fff;text-decoration:none;color:#30463d}.school-materials>a small{font-size:.63rem;color:#7d8581}.school-lesson-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-top:35px;padding-top:20px;border-top:1px solid #dedbd2}.school-lesson-footer>a:last-child{justify-self:end}
.school-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.school-admin-course{display:grid;grid-template-columns:170px 1fr;overflow:hidden;border:1px solid #dedbd2;border-radius:15px;background:#fff}.school-admin-cover{min-height:200px;padding:12px;background:linear-gradient(135deg,#21483c,#7d9d85);background-size:cover;background-position:center}.school-admin-cover span{padding:5px 7px;border-radius:999px;background:rgba(10,28,23,.72);color:#fff;font-size:.55rem;font-weight:900}.school-admin-course>div:last-child{padding:16px}.school-admin-course h2{margin:3px 0}.school-admin-course p{font-size:.7rem;color:#758079}.school-admin-stats{display:flex;gap:13px;margin:12px 0}.school-admin-stats span{font-size:.62rem;color:#7b8580}.school-admin-stats b{display:block;font-size:.85rem;color:#315e4d}.school-course-builder{margin-bottom:20px}.school-builder-modules{display:grid;gap:12px}.school-builder-module{border-left:4px solid #b99d62}.school-builder-lessons{display:grid;gap:6px;margin:14px 0}.school-builder-lessons details{border:1px solid #e2ded5;border-radius:10px;background:#faf9f5}.school-builder-lessons summary{display:grid;grid-template-columns:75px 1fr auto;gap:10px;padding:11px;cursor:pointer}.school-builder-lessons summary span,.school-builder-lessons summary small{font-size:.62rem;color:#77817c}.school-builder-lessons form{padding:12px;border-top:1px solid #e5e1d8}.school-material-form{background:#f5f6f2}.school-new-lesson{padding:13px;border-radius:11px;background:#f2f5f1}.school-table-progress{display:grid;grid-template-columns:110px auto;gap:7px;align-items:center}
@media(max-width:1050px){.school-card-row{grid-template-columns:repeat(3,1fr)}.school-admin-grid{grid-template-columns:1fr}.school-course-hero-grid{grid-template-columns:1fr 280px}.school-player-layout{grid-template-columns:230px 1fr}}
@media(max-width:800px){.school-card-row{grid-template-columns:repeat(2,1fr)}.school-course-hero-grid,.school-course-detail{grid-template-columns:1fr}.school-course-hero-grid{gap:25px}.student-continue-grid{grid-template-columns:1fr}.school-player-layout{display:block}.school-player-sidebar{position:relative;height:auto}.school-player-progress{position:static;margin-top:20px}.school-player-main{padding:30px 22px}}
@media(max-width:600px){.school-card-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.school-stream-card{min-width:78vw;scroll-snap-align:start}.school-student-shell{padding:24px 15px 45px}.school-student-head{align-items:flex-start;flex-direction:column}.student-continue-card{grid-template-columns:1fr}.student-course-art{min-height:150px}.certificate-celebration{grid-template-columns:45px 1fr}.certificate-celebration form{grid-column:1/-1}.certificate-celebration button{width:100%}.school-player-main>header h1{font-size:1.7rem}.school-lesson-footer{grid-template-columns:1fr}.school-lesson-footer>*{width:100%;justify-self:stretch!important;text-align:center}.school-admin-course{grid-template-columns:1fr}.school-admin-cover{min-height:140px}}

/* =========================================================
   v0.20.0.1 — Redesign Minha Escola / aluno/cursos
   ========================================================= */
.school-library-page{background:#f1f0eb;min-height:100vh}
.school-library-topbar{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid #dfdcd3;box-shadow:0 3px 16px rgba(25,48,39,.045)}
.school-library-topbar-inner{padding-top:0!important;padding-bottom:0!important;min-height:72px;display:flex;align-items:center;gap:30px}
.school-library-brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#173f35}
.school-library-mark{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;background:#173f35;color:#d7bd83;font-family:Georgia,serif;font-size:1.2rem;font-weight:900;box-shadow:0 7px 18px rgba(23,63,53,.15)}
.school-library-brand strong,.school-library-brand small{display:block}.school-library-brand strong{font-size:.88rem;letter-spacing:.04em}.school-library-brand small{font-size:.62rem;color:#78827d;margin-top:2px}
.school-library-nav{display:flex;gap:4px;margin-left:auto}.school-library-nav a{padding:9px 12px;border-radius:9px;text-decoration:none;color:#5e6b65;font-size:.73rem;font-weight:850}.school-library-nav a:hover,.school-library-nav a.active{background:#edf4ef;color:#173f35}
.school-library-main{padding-top:28px!important}
.school-library-alert{margin-bottom:14px}
.school-library-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(330px,.65fr);gap:30px;align-items:center;padding:34px 38px;border-radius:22px;background:linear-gradient(135deg,#143a30 0%,#265847 65%,#396552 100%);color:#fff;box-shadow:0 17px 40px rgba(21,58,48,.14)}
.school-library-hero:after{content:"";position:absolute;right:-80px;top:-130px;width:330px;height:330px;border-radius:50%;border:1px solid rgba(215,189,131,.18);box-shadow:0 0 0 44px rgba(215,189,131,.035),0 0 0 88px rgba(215,189,131,.025)}
.school-library-hero>div{position:relative;z-index:2}.school-library-hero .eyebrow{color:#d7bd83}.school-library-hero h1{margin:.12em 0 .18em;font-size:clamp(2rem,4vw,3.45rem);line-height:1;color:#fff;letter-spacing:-.03em}.school-library-hero p{max-width:670px;margin:0;color:rgba(255,255,255,.74);line-height:1.6}
.school-library-hero-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:21px}.school-library-hero .button{background:#d7bd83;color:#173f35;border-color:#d7bd83}.school-library-hero .button.secondary{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.school-library-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.school-library-hero-stats article{padding:17px 12px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(8,27,22,.22);backdrop-filter:blur(8px);text-align:center}.school-library-hero-stats small,.school-library-hero-stats strong{display:block}.school-library-hero-stats small{font-size:.58rem;text-transform:uppercase;letter-spacing:.07em;color:rgba(255,255,255,.63)}.school-library-hero-stats strong{font-size:1.65rem;color:#fff;margin-top:3px}
.school-library-featured{margin-top:32px}.school-library-featured .school-shelf-head p{margin:3px 0 0;color:#7a837f;font-size:.74rem}
.school-library-continue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.school-library-continue-card{display:grid;grid-template-columns:190px minmax(0,1fr);overflow:hidden;border:1px solid #dedbd2;border-radius:17px;background:#fff;box-shadow:0 7px 22px rgba(40,54,48,.035);transition:.18s ease}.school-library-continue-card:hover{transform:translateY(-2px);box-shadow:0 13px 30px rgba(40,54,48,.07)}
.school-library-cover{position:relative;min-height:230px;padding:13px;background:linear-gradient(145deg,#224b3e,#789a82);background-size:cover;background-position:center;text-decoration:none}.school-library-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,28,23,.05),rgba(10,28,23,.48))}.school-library-cover span{position:relative;z-index:2;display:inline-flex;padding:5px 7px;border-radius:999px;background:rgba(10,28,23,.72);color:#fff;font-size:.55rem;font-weight:900;letter-spacing:.07em}
.school-library-continue-copy{padding:18px}.school-library-continue-copy>small{font-size:.62rem;text-transform:uppercase;color:#73817a;font-weight:850}.school-library-continue-copy h3{margin:4px 0 7px;color:#213d32;font-size:1.08rem}.school-library-continue-copy>p{height:2.8em;overflow:hidden;margin:0 0 14px;color:#727d78;font-size:.7rem;line-height:1.4}
.school-library-progress-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:6px}.school-library-progress-head span{font-size:.64rem;color:#79837e}.school-library-progress-head strong{font-size:.7rem;color:#315e4d}.school-library-progress{height:6px!important}
.school-library-course-meta{display:flex;gap:10px;flex-wrap:wrap;margin:10px 0 13px}.school-library-course-meta span{font-size:.61rem;color:#7c8580}.school-library-card-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.school-library-card-actions .button{font-size:.7rem}.school-library-text-link{font-size:.65rem;font-weight:850;color:#466456;text-decoration:none}
.school-library-all{margin-top:38px}.school-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.school-library-course-card{overflow:hidden;border:1px solid #dedbd2;border-radius:15px;background:#fff;transition:.18s ease}.school-library-course-card:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(40,54,48,.065)}.school-library-course-card.completed{background:#fbfbf7}
.school-library-course-cover{position:relative;display:block;height:155px;padding:12px;background:linear-gradient(145deg,#234c3f,#7d9d85);background-size:cover;background-position:center;text-decoration:none}.school-library-course-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,27,22,.03),rgba(9,27,22,.42))}.school-library-course-cover span{position:relative;z-index:2;display:inline-flex;padding:5px 7px;border-radius:999px;background:rgba(10,28,23,.72);color:#fff;font-size:.53rem;font-weight:900}.school-library-course-cover b{position:absolute;z-index:2;right:12px;bottom:12px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#d7bd83;color:#173f35}
.school-library-course-card>div:last-child{padding:14px}.school-library-course-card>div:last-child>small{font-size:.59rem;text-transform:uppercase;color:#75827b;font-weight:850}.school-library-course-card h3{margin:4px 0 12px;color:#243e34;font-size:.92rem}.school-library-open-course{display:block;margin-top:12px;text-align:center;width:100%;box-sizing:border-box;font-size:.68rem!important}
.school-library-empty{display:grid;grid-template-columns:60px 1fr;gap:17px;align-items:start;padding:30px;border:1px dashed #cfcac0;border-radius:17px;background:#faf9f5}.school-library-empty-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#edf4ef;color:#315e4d;font-size:1.45rem}.school-library-empty h2{margin:.15em 0}.school-library-empty p{max-width:650px;color:#76817b;line-height:1.55}.school-library-empty .button{display:inline-block;margin-top:5px}
.school-library-completed-strip{display:grid;grid-template-columns:minmax(240px,.5fr) minmax(0,1.5fr);gap:25px;align-items:center;margin-top:35px;padding:23px;border-radius:17px;background:#173f35;color:#fff}.school-library-completed-strip h2{margin:.15em 0}.school-library-completed-strip p{margin:0;color:rgba(255,255,255,.68);font-size:.75rem}.school-library-completed-strip .eyebrow{color:#d7bd83}
.school-library-completed-badges{display:flex;gap:8px;flex-wrap:wrap}.school-library-completed-badges a{display:flex;align-items:center;gap:8px;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;font-size:.68rem}.school-library-completed-badges span{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#d7bd83;color:#173f35;font-weight:900}
.school-library-footer{display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding:17px 2px;border-top:1px solid #dcd8cf;color:#838b87;font-size:.66rem}.school-library-footer a{color:#4c6358;text-decoration:none;font-weight:850}
@media(max-width:1050px){.school-library-hero{grid-template-columns:1fr}.school-library-hero-stats{max-width:520px}.school-library-grid{grid-template-columns:repeat(2,1fr)}.school-library-continue-grid{grid-template-columns:1fr}}
@media(max-width:700px){.school-library-topbar{position:static}.school-library-topbar-inner{min-height:auto;flex-wrap:wrap;padding-top:11px!important;padding-bottom:11px!important}.school-library-nav{order:3;width:100%;margin:0;padding-top:7px;border-top:1px solid #eeeae2;overflow:auto}.school-library-nav a{white-space:nowrap}.school-library-main{padding-top:16px!important}.school-library-hero{padding:26px 21px;border-radius:18px}.school-library-hero-stats{grid-template-columns:repeat(3,1fr)}.school-library-grid{grid-template-columns:1fr}.school-library-continue-card{grid-template-columns:1fr}.school-library-cover{min-height:170px}.school-library-completed-strip{grid-template-columns:1fr}.school-library-footer{flex-direction:column;gap:6px}}
@media(max-width:460px){.school-library-brand small{display:none}.school-library-hero h1{font-size:1.95rem}.school-library-hero-actions{display:grid}.school-library-hero-actions .button{text-align:center}.school-library-hero-stats article{padding:13px 7px}.school-library-hero-stats strong{font-size:1.35rem}.school-library-card-actions{display:grid}.school-library-card-actions .button,.school-library-card-actions .school-library-text-link{text-align:center}.school-library-empty{grid-template-columns:1fr}.school-library-empty-icon{width:48px;height:48px}}

/* =========================================================
   v0.21.0 — Admin Professional Foundation
   Revisão transversal do painel administrativo
   ========================================================= */
.admin-premium-body{
 --admin-bg:#f2f1ec;--admin-panel:#fff;--admin-line:#dfdcd3;
 --admin-text:#263b32;--admin-muted:#758079;--admin-green:#173f35;
 --admin-green-2:#285b49;--admin-gold:#b89b60;
 background:var(--admin-bg)!important;color:var(--admin-text)!important
}
.admin-app{min-height:100vh}
.admin-sidebar{width:268px!important;background:linear-gradient(180deg,#122f27,#173c31 72%,#102b23)!important;border-right:0!important;box-shadow:8px 0 30px rgba(15,42,34,.08)}
.admin-brand{padding:22px 18px!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
.admin-brand>a{display:flex!important;align-items:center!important;gap:13px!important;text-decoration:none!important;color:#fff!important}
.admin-brand span strong{display:block!important;color:#fff!important;letter-spacing:.08em!important}.admin-brand span small{display:block!important;margin-top:3px!important;color:rgba(255,255,255,.52)!important;font-size:.63rem!important}
.admin-nav{padding:15px 11px 30px!important}.admin-nav-group{margin-bottom:19px!important}.admin-nav-group-label{display:block!important;padding:0 10px 7px!important;color:rgba(255,255,255,.38)!important;font-size:.56rem!important;font-weight:900!important;letter-spacing:.12em!important;text-transform:uppercase!important}
.admin-nav-item{min-height:39px!important;display:flex!important;align-items:center!important;gap:10px!important;margin:2px 0!important;padding:8px 10px!important;border-radius:10px!important;color:rgba(255,255,255,.72)!important;text-decoration:none!important;font-size:.72rem!important;font-weight:760!important;transition:.15s ease!important}
.admin-nav-item:hover{background:rgba(255,255,255,.07)!important;color:#fff!important}.admin-nav-item.active{background:linear-gradient(90deg,rgba(214,190,137,.20),rgba(255,255,255,.07))!important;color:#fff!important;box-shadow:inset 3px 0 0 #d5bd87!important}
.admin-nav-icon{width:27px!important;height:27px!important;display:grid!important;place-items:center!important;border-radius:8px!important;background:rgba(255,255,255,.06)!important;color:#d5bd87!important;font-size:.73rem!important}
.admin-sidebar-footer{margin:0 12px 14px!important;padding:12px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:11px!important;background:rgba(255,255,255,.04)!important;color:#fff!important}
.admin-main-shell{margin-left:268px!important;min-width:0!important}.admin-topbar{height:72px!important;padding:0 24px!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--admin-line)!important;box-shadow:0 2px 14px rgba(37,53,46,.035)!important}
.admin-top-title span{color:#8a928e!important;font-size:.59rem!important;text-transform:uppercase!important;letter-spacing:.08em!important}.admin-top-title strong{color:var(--admin-green)!important;font-size:.84rem!important}
.admin-global-shortcuts{display:flex!important;gap:3px!important;padding:3px!important;border-radius:9px!important;background:#f1f3ee!important}.admin-global-shortcuts a{padding:6px 8px!important;border-radius:7px!important;text-decoration:none!important;color:#586b62!important;font-size:.62rem!important;font-weight:850!important}.admin-global-shortcuts a:hover{background:#fff!important;color:#214c3d!important}
.admin-preview-link{padding:7px 10px!important;border-radius:8px!important;background:#edf4ef!important;color:#315e4d!important;text-decoration:none!important;font-size:.65rem!important;font-weight:850!important}
.admin-user{display:flex!important;align-items:center!important;gap:9px!important}.admin-user>span{width:34px!important;height:34px!important;border-radius:10px!important;background:#173f35!important;color:#d7bd83!important;display:grid!important;place-items:center!important;font-weight:900!important}.admin-user div strong,.admin-user div small{display:block!important}.admin-user div strong{font-size:.68rem!important}.admin-user div small{font-size:.57rem!important;color:#8b938f!important}
.admin-content{max-width:1500px!important;margin:0 auto!important;padding:27px 27px 50px!important}.admin-page-head,.top{display:flex!important;justify-content:space-between!important;align-items:flex-end!important;gap:20px!important;margin:0 0 20px!important;padding:0!important;background:transparent!important;border:0!important}.admin-page-head h1,.top h1{margin:.12em 0!important;color:#173f35!important;font-size:clamp(1.7rem,3vw,2.35rem)!important;letter-spacing:-.025em!important}.admin-page-head p,.top p{max-width:800px!important;margin:4px 0 0!important;color:#758079!important;line-height:1.5!important}
.admin-card,.card.wide-card,.admin-premium-body .card{border:1px solid var(--admin-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:0 7px 22px rgba(35,52,45,.035)!important;padding:20px!important;margin-bottom:14px!important}
.admin-card-head,.block-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;margin-bottom:14px!important}.admin-card-head h2,.block-head h2,.admin-card h2,.card.wide-card h2{margin:.12em 0!important;color:#254136!important;font-size:1.08rem!important}.admin-card-head p,.block-head p{margin:4px 0 0!important}
.admin-premium-body .eyebrow{font-size:.57rem!important;letter-spacing:.11em!important;font-weight:900!important;color:#937a48!important}
.admin-premium-body label{display:block!important;margin-bottom:11px!important;color:#526259!important;font-size:.68rem!important;font-weight:820!important}.admin-premium-body label small{display:block!important;margin-top:4px!important;color:#8a918d!important;font-weight:500!important;line-height:1.4!important}
.admin-premium-body input:not([type=checkbox]):not([type=radio]),.admin-premium-body select,.admin-premium-body textarea{width:100%!important;box-sizing:border-box!important;margin-top:5px!important;padding:10px 11px!important;border:1px solid #d8d5cd!important;border-radius:9px!important;background:#fbfbf8!important;color:#2b4037!important;font:inherit!important;font-size:.74rem!important;outline:none!important;transition:.15s ease!important}.admin-premium-body input:focus,.admin-premium-body select:focus,.admin-premium-body textarea:focus{border-color:#6e9683!important;box-shadow:0 0 0 3px rgba(55,110,85,.08)!important;background:#fff!important}
.admin-premium-body .grid,.admin-form-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;gap:11px 14px!important}
.admin-premium-body button,.admin-premium-body .button{border-radius:9px!important;padding:9px 13px!important;font-size:.68rem!important;font-weight:850!important;box-shadow:none!important;transition:.15s ease!important}.admin-premium-body button:hover,.admin-premium-body .button:hover{transform:translateY(-1px)!important}.admin-premium-body button.secondary,.admin-premium-body .button.secondary{background:#fff!important;color:#315e4d!important;border:1px solid #cfd9d2!important}
.admin-premium-body table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;font-size:.7rem!important}.admin-premium-body thead th{padding:10px 11px!important;background:#f4f4f0!important;color:#68756f!important;border-top:1px solid #e2dfd7!important;border-bottom:1px solid #dedbd2!important;text-align:left!important;font-size:.58rem!important;text-transform:uppercase!important;letter-spacing:.06em!important}.admin-premium-body thead th:first-child{border-left:1px solid #e2dfd7!important;border-radius:9px 0 0 9px!important}.admin-premium-body thead th:last-child{border-right:1px solid #e2dfd7!important;border-radius:0 9px 9px 0!important}.admin-premium-body tbody td{padding:11px!important;border-bottom:1px solid #ece9e2!important;vertical-align:middle!important}.admin-premium-body tbody tr:hover td{background:#fafbf8!important}
.admin-premium-body td strong,.admin-premium-body td small{display:block!important}.admin-premium-body td small{color:#858d89!important;margin-top:2px!important}
.admin-responsive-table{overflow-x:auto!important}.admin-count-pill{padding:5px 8px!important;border-radius:999px!important;background:#eef3ef!important;color:#426152!important;font-size:.6rem!important;font-weight:850!important}
.admin-state-strip{margin-left:0!important;padding:7px 25px!important;background:#fff5d8!important;border-bottom:1px solid #ead8a8!important;color:#71561d!important;font-size:.65rem!important}
.admin-sidebar-overlay{display:none}

/* Escola administrativa */
.school-admin-head{padding:5px 0!important}.school-admin-metrics,.payment-admin-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.school-admin-metrics article,.payment-admin-metrics article{padding:15px;border:1px solid var(--admin-line);border-radius:14px;background:#fff}.school-admin-metrics article.attention{border-color:#dcc78c;background:#fffaf0}.school-admin-metrics span,.school-admin-metrics strong,.school-admin-metrics small,.payment-admin-metrics small,.payment-admin-metrics strong,.payment-admin-metrics span{display:block}.school-admin-metrics span,.payment-admin-metrics small{font-size:.58rem;text-transform:uppercase;letter-spacing:.06em;color:#7d8782;font-weight:900}.school-admin-metrics strong,.payment-admin-metrics strong{font-size:1.35rem;color:#173f35;margin:2px 0}.school-admin-metrics small,.payment-admin-metrics span{font-size:.61rem;color:#89908c}
.school-admin-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.school-admin-action-grid>a{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;padding:14px;border:1px solid var(--admin-line);border-radius:14px;background:#fff;color:#30483e;text-decoration:none;transition:.15s ease}.school-admin-action-grid>a:hover{transform:translateY(-2px);border-color:#bdcfc5;box-shadow:0 9px 22px rgba(31,62,49,.06)}.school-admin-action-grid>a>span{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#edf4ef;color:#2e604b;font-weight:900}.school-admin-action-grid strong,.school-admin-action-grid small{display:block}.school-admin-action-grid strong{font-size:.74rem}.school-admin-action-grid small{font-size:.61rem;color:#7c8580;margin-top:3px;line-height:1.35}.school-admin-action-grid b{color:#a8b1ac}
.school-admin-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:14px}.school-admin-mini-course-list{display:grid;gap:6px}.school-admin-mini-course-list>a{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;padding:8px;border-radius:10px;color:#30463d;text-decoration:none}.school-admin-mini-course-list>a:hover{background:#f6f6f2}.school-admin-mini-art{width:54px;height:40px;border-radius:8px;background:linear-gradient(135deg,#21483c,#789884);background-size:cover;background-position:center}.school-admin-mini-course-list strong,.school-admin-mini-course-list small{display:block}.school-admin-mini-course-list strong{font-size:.7rem}.school-admin-mini-course-list small{font-size:.59rem;color:#7d8782;margin-top:2px}.school-admin-readiness{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:25px;align-items:center;border-left:4px solid #b89b60!important}.school-admin-readiness p{font-size:.72rem;color:#707b75;line-height:1.5}.school-admin-readiness-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.school-admin-readiness-steps span{padding:9px;border-radius:9px;background:#f3f5f1;color:#496157;font-size:.61rem;font-weight:800;text-align:center}
.school-builder-nav{position:sticky;top:72px;z-index:12;display:flex;gap:5px;margin:-5px 0 15px;padding:6px;border:1px solid #dfdcd3;border-radius:12px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}.school-builder-nav a{padding:8px 10px;border-radius:8px;text-decoration:none;color:#68766f;font-size:.64rem;font-weight:850}.school-builder-nav a.active,.school-builder-nav a:hover{background:#edf4ef;color:#295641}.school-course-builder{border-top:4px solid #2c624c!important}.school-builder-module{border-left:4px solid #b99d62!important}.school-builder-lessons details{overflow:hidden!important;background:#fbfbf8!important}.school-builder-lessons summary{background:#f5f5f1!important}.school-material-form{border-radius:9px!important;margin:7px!important}
.payment-flow-card{border-left:4px solid #2d6a4f!important}.payment-flow-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.payment-flow-steps span{padding:10px 7px;border-radius:9px;background:#f2f5f1;color:#51665c;font-size:.6rem;text-align:center;font-weight:800}.payment-flow-steps b{display:grid;place-items:center;width:22px;height:22px;margin:0 auto 5px;border-radius:50%;background:#173f35;color:#d7bd83}.payment-test-banner{margin-top:12px;padding:11px;border-radius:10px;background:#fff5d8;border:1px solid #ead8a8}.payment-test-banner strong{font-size:.69rem;color:#74591d}.payment-test-banner p{margin:3px 0 0;font-size:.65rem;color:#7c682f}.school-payment-settings-card{border-left:4px solid #b89b60!important}.payment-order-table tr.is-pending td{background:#fffdf6}.payment-proof,.payment-order-status{display:inline-flex!important;padding:5px 7px!important;border-radius:999px!important;font-size:.56rem!important;font-weight:900!important}.payment-proof.submitted,.payment-order-status.status-pending{background:#fff0c7!important;color:#795b0b!important}.payment-proof.approved,.payment-order-status.status-paid{background:#e2f1e7!important;color:#2e6246!important}.payment-order-status.status-cancelled{background:#eeeae5!important;color:#767a78!important}.payment-order-actions{display:flex;gap:5px;flex-wrap:wrap}.payment-order-actions form{margin:0}.payment-order-actions button{padding:6px 8px!important;font-size:.58rem!important}.payment-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.payment-provider-card{padding:14px;border:1px solid #e0ddd5;border-radius:12px;background:#fbfbf8}.payment-provider-card>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.payment-provider-card>div:first-child>span{font-size:.58rem;font-weight:900;text-transform:uppercase}.payment-provider-card>div:first-child>span.enabled{color:#2e694b}.payment-provider-card>div:first-child>span.disabled{color:#9a675e}

/* Checkout e vídeo protegido */
.school-checkout-body{margin:0;background:#f1f0eb;color:#293f35}.school-checkout-shell{max-width:1050px;margin:auto;padding:30px 20px 55px}.school-checkout-head{display:flex;justify-content:space-between;gap:20px;padding:10px 0 25px}.school-checkout-head a{color:#526a60;text-decoration:none;font-size:.7rem}.school-checkout-head span{font-size:.62rem;font-weight:900;letter-spacing:.08em;color:#7c8681}.school-checkout-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:14px}.school-checkout-card,.school-payment-card{padding:24px;border:1px solid #dedbd2;border-radius:17px;background:#fff;box-shadow:0 10px 28px rgba(34,52,44,.045)}.school-checkout-card h1{font-size:1.65rem;line-height:1.1;color:#173f35}.school-checkout-course{display:grid;grid-template-columns:110px 1fr;gap:13px;align-items:center;padding:14px 0;border-top:1px solid #ece9e2;border-bottom:1px solid #ece9e2}.school-checkout-cover{height:75px;border-radius:10px;background:linear-gradient(135deg,#21483c,#7e9d86);background-size:cover;background-position:center}.school-checkout-course small,.school-checkout-course strong,.school-checkout-course span{display:block}.school-checkout-course small{font-size:.61rem;color:#818a85}.school-checkout-course strong{font-size:.8rem;margin:2px 0}.school-checkout-course span{font-size:.63rem;color:#7c8580}.school-checkout-total{display:flex;justify-content:space-between;align-items:center;padding:18px 0}.school-checkout-total span{color:#6f7b75}.school-checkout-total strong{font-size:1.4rem;color:#173f35}.school-checkout-status{padding:10px;border-radius:9px;text-align:center;font-size:.67rem;font-weight:900}.school-checkout-status.status-pending{background:#fff2cb;color:#755909}.school-checkout-status.status-paid{background:#e2f1e7;color:#2d6245}.school-checkout-access{display:block;margin-top:12px;text-align:center}.school-payment-card h2{font-size:1.5rem;color:#173f35}.school-pix-key{padding:14px;margin:12px 0;border-radius:11px;background:#173f35;color:#fff}.school-pix-key small,.school-pix-key strong,.school-pix-key span{display:block}.school-pix-key small{font-size:.57rem;color:#d7bd83}.school-pix-key strong{font-size:.9rem;margin:4px 0;word-break:break-all}.school-pix-key span{font-size:.62rem;color:rgba(255,255,255,.65)}.school-payment-card p{font-size:.71rem;color:#707b75;line-height:1.5}.school-payment-card label{display:block;margin:11px 0;font-size:.67rem;font-weight:800;color:#526259}.school-payment-card input,.school-payment-card textarea{width:100%;box-sizing:border-box;margin-top:5px;padding:10px;border:1px solid #d8d5cc;border-radius:9px;background:#fbfbf8}.school-payment-card button{width:100%}.school-test-mode,.school-proof-wait{padding:11px;margin:10px 0;border-radius:9px}.school-test-mode{background:#fff5d8;border:1px solid #ead8a8}.school-test-mode strong{font-size:.62rem;color:#785c11}.school-proof-wait{background:#eef6f1;border:1px solid #cfe2d6}.school-proof-wait strong{font-size:.7rem;color:#315e4d}.school-checkout-security{display:flex;gap:11px;align-items:flex-start;margin-top:14px;padding:14px;border-radius:12px;background:#eaf2ed;color:#365a49}.school-checkout-security>span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#315e4d;color:#fff}.school-checkout-security strong{font-size:.7rem}.school-checkout-security p{margin:3px 0 0;font-size:.65rem;color:#60756b}
.school-video-frame.protected-video{position:relative;background:#07100c}.school-video-frame.protected-video video{display:block;width:100%;height:100%;object-fit:contain}.school-video-watermark{position:absolute;right:12px;top:10px;padding:5px 7px;border-radius:6px;background:rgba(0,0,0,.42);color:rgba(255,255,255,.68);font-size:.52rem;pointer-events:none;user-select:none}

@media(max-width:1150px){.admin-sidebar{width:240px!important}.admin-main-shell{margin-left:240px!important}.school-admin-metrics,.payment-admin-metrics{grid-template-columns:repeat(3,1fr)}.school-admin-action-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.admin-sidebar{position:fixed!important;left:-280px!important;top:0!important;bottom:0!important;z-index:100!important;width:268px!important;transition:left .2s ease!important}.admin-main-shell{margin-left:0!important}.admin-menu-open .admin-sidebar{left:0!important}.admin-menu-open .admin-sidebar-overlay{display:block;position:fixed;inset:0;z-index:90;background:rgba(9,25,20,.45);backdrop-filter:blur(2px)}.admin-content{padding:20px 17px 40px!important}.admin-global-shortcuts{display:none!important}.school-admin-dashboard-grid,.school-admin-readiness,.school-checkout-grid{grid-template-columns:1fr}.payment-flow-steps{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.admin-topbar{padding:0 13px!important}.admin-user div{display:none!important}.admin-preview-link{display:none!important}.admin-page-head,.top{align-items:flex-start!important;flex-direction:column!important}.admin-page-head>.button,.top>.button{width:100%;text-align:center;box-sizing:border-box}.admin-card,.card.wide-card,.admin-premium-body .card{padding:15px!important;border-radius:13px!important}.school-admin-metrics,.payment-admin-metrics{grid-template-columns:repeat(2,1fr)}.school-admin-action-grid{grid-template-columns:1fr}.school-admin-readiness-steps{grid-template-columns:repeat(2,1fr)}.payment-provider-grid{grid-template-columns:1fr}.payment-flow-steps{grid-template-columns:repeat(2,1fr)}.school-builder-nav{top:0;overflow:auto}.school-builder-nav a{white-space:nowrap}.school-checkout-shell{padding:17px 12px 40px}.school-checkout-head{align-items:flex-start;flex-direction:column}.school-checkout-course{grid-template-columns:80px 1fr}}

/* =========================================================
   v0.21.0.1 — Admin UI Professional Refinement
   Corrige overflow, legibilidade e sofisticação visual
   ========================================================= */

/* Correções estruturais */
html,body{max-width:100%;overflow-x:hidden}
.admin-premium-body{font-size:16px!important}
.admin-app{width:100%;max-width:100%;overflow-x:hidden}
.admin-main-shell{width:auto!important;max-width:calc(100vw - 268px)!important;overflow-x:hidden!important}
.admin-content{width:auto!important;max-width:1560px!important;box-sizing:border-box!important;overflow-x:hidden!important}
.admin-content>*{max-width:100%;box-sizing:border-box}
.admin-sidebar{font-size:15px!important}
.admin-sidebar .admin-nav-item{font-size:.81rem!important;line-height:1.25!important;min-height:43px!important}
.admin-nav-group-label{font-size:.62rem!important}
.admin-brand span strong{font-size:.92rem!important}.admin-brand span small{font-size:.67rem!important}
.admin-top-title span{font-size:.65rem!important}.admin-top-title strong{font-size:.92rem!important}
.admin-user div strong{font-size:.76rem!important}.admin-user div small{font-size:.63rem!important}
.admin-preview-link,.admin-global-shortcuts a{font-size:.7rem!important}

/* Tipografia administrativa legível */
.admin-page-head h1,.top h1,.admin-dashboard-hero h1{font-size:clamp(2rem,3.2vw,3rem)!important;line-height:1.02!important}
.admin-page-head p,.top p,.admin-dashboard-hero p{font-size:.92rem!important;line-height:1.6!important}
.admin-card h2,.admin-card-head h2,.block-head h2,.card.wide-card h2{font-size:1.2rem!important;line-height:1.25!important}
.admin-card p,.admin-card .muted,.admin-content .muted{font-size:.82rem!important;line-height:1.55!important}
.admin-premium-body .eyebrow{font-size:.64rem!important}
.admin-premium-body label{font-size:.76rem!important}
.admin-premium-body label small{font-size:.68rem!important}
.admin-premium-body input:not([type=checkbox]):not([type=radio]),
.admin-premium-body select,.admin-premium-body textarea{font-size:.82rem!important;min-height:42px!important}
.admin-premium-body textarea{min-height:110px!important}
.admin-premium-body button,.admin-premium-body .button{font-size:.75rem!important;min-height:39px!important}
.admin-premium-body table{font-size:.78rem!important}
.admin-premium-body thead th{font-size:.64rem!important}
.admin-premium-body td small{font-size:.67rem!important}
.admin-card-head>a,.block-head>a{font-size:.72rem!important}

/* Elimina grids que provocavam overflow */
.admin-metric-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}
.admin-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.admin-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.admin-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.school-admin-metrics,.payment-admin-metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important}
.operation-metric-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important}

/* Novo dashboard tecnológico */
.admin-dashboard-hero{
 position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);
 gap:28px;align-items:center;margin-bottom:18px;padding:34px 36px;border-radius:22px;
 background:
 radial-gradient(circle at 88% 18%,rgba(212,188,133,.18),transparent 27%),
 linear-gradient(135deg,#12372d 0%,#1d4a3a 58%,#285846 100%);
 color:#fff;box-shadow:0 18px 45px rgba(19,55,45,.16)
}
.admin-dashboard-hero:before{content:"";position:absolute;right:-120px;bottom:-170px;width:430px;height:430px;border-radius:50%;border:1px solid rgba(255,255,255,.07);box-shadow:0 0 0 55px rgba(255,255,255,.018),0 0 0 110px rgba(255,255,255,.012)}
.admin-dashboard-hero-copy,.admin-dashboard-system-card{position:relative;z-index:2}
.admin-dashboard-hero .eyebrow{color:#d8bd83!important}
.admin-dashboard-hero h1{margin:.1em 0 .2em!important;color:#fff!important;letter-spacing:-.035em!important}
.admin-dashboard-hero p{max-width:720px;margin:0!important;color:rgba(255,255,255,.72)!important}
.admin-dashboard-hero-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:22px}
.admin-dashboard-hero .button{background:#d8bd83!important;color:#173f35!important;border-color:#d8bd83!important}
.admin-dashboard-hero .button.secondary{background:rgba(255,255,255,.06)!important;color:#fff!important;border-color:rgba(255,255,255,.2)!important}
.admin-dashboard-text-link{padding:9px 5px;color:rgba(255,255,255,.74);text-decoration:none;font-size:.75rem;font-weight:800}
.admin-dashboard-system-card{padding:18px;border:1px solid rgba(255,255,255,.13);border-radius:16px;background:rgba(8,27,22,.28);backdrop-filter:blur(12px)}
.admin-dashboard-system-top{display:flex;align-items:center;gap:11px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1)}
.admin-dashboard-system-pulse{width:11px;height:11px;border-radius:50%;background:#73d099;box-shadow:0 0 0 6px rgba(115,208,153,.12)}
.admin-dashboard-system-top small,.admin-dashboard-system-top strong{display:block}.admin-dashboard-system-top small{font-size:.6rem;letter-spacing:.08em;color:rgba(255,255,255,.55)}.admin-dashboard-system-top strong{margin-top:2px;font-size:.9rem;color:#fff}
.admin-dashboard-system-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin-top:12px}
.admin-dashboard-system-grid>span{padding:10px;border-radius:10px;background:rgba(255,255,255,.055)}
.admin-dashboard-system-grid small,.admin-dashboard-system-grid strong{display:block}.admin-dashboard-system-grid small{font-size:.58rem;color:rgba(255,255,255,.5)}.admin-dashboard-system-grid strong{margin-top:2px;font-size:.82rem;color:#fff}

/* Métricas */
.admin-dashboard-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:16px}
.admin-dashboard-metrics article{position:relative;display:grid;grid-template-columns:48px 1fr;gap:13px;padding:17px 18px;border:1px solid #dedbd2;border-radius:16px;background:#fff;box-shadow:0 7px 20px rgba(32,49,42,.035)}
.admin-dashboard-metrics article.metric-primary{border-color:#c9dacf;background:linear-gradient(180deg,#fff,#f7fbf8)}
.admin-dashboard-metrics article>a{grid-column:2;text-decoration:none;color:#39614f;font-size:.69rem;font-weight:850}
.admin-metric-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#edf4ef;color:#315f4c;font-size:1rem;font-weight:900}
.admin-dashboard-metrics small,.admin-dashboard-metrics strong,.admin-dashboard-metrics span{display:block}
.admin-dashboard-metrics small{font-size:.66rem;color:#77827c;font-weight:850}
.admin-dashboard-metrics strong{margin:1px 0;font-size:1.65rem;color:#173f35}
.admin-dashboard-metrics span{font-size:.67rem;color:#8a918d;line-height:1.35}

/* Conteúdo principal */
.admin-dashboard-main-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(360px,.72fr);gap:14px;margin-bottom:14px}
.admin-dashboard-next-gira{border-top:4px solid #2e654f!important}
.admin-live-badge{padding:5px 8px;border-radius:999px;background:#e4f2e9;color:#2d684a;font-size:.59rem;font-weight:900;letter-spacing:.04em}
.admin-next-gira-timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0}
.admin-next-gira-timeline>div{padding:13px;border:1px solid #e5e1d8;border-radius:11px;background:#f7f6f2}
.admin-next-gira-timeline span,.admin-next-gira-timeline strong{display:block}.admin-next-gira-timeline span{font-size:.6rem;color:#7b8580;font-weight:900}.admin-next-gira-timeline strong{margin-top:4px;color:#243f34;font-size:.88rem}
.admin-dashboard-gira-actions{display:flex;gap:7px;flex-wrap:wrap}
.admin-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.admin-command-grid>a{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;padding:11px;border:1px solid #e3e0d8;border-radius:11px;background:#fafaf7;color:#30463d;text-decoration:none;transition:.15s ease}
.admin-command-grid>a:hover{background:#f1f6f2;border-color:#c9d9cf;transform:translateY(-1px)}
.admin-command-grid>a>span{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#edf4ef;color:#315f4c;font-weight:900}
.admin-command-grid strong,.admin-command-grid small{display:block}.admin-command-grid strong{font-size:.74rem}.admin-command-grid small{margin-top:2px;font-size:.63rem;color:#7f8883;line-height:1.3}

.admin-dashboard-secondary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}
.admin-modern-list-row{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #ece9e2}
.admin-modern-list-row:last-child{border-bottom:0}.admin-list-avatar{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#edf4ef;color:#315f4c;font-size:.72rem;font-weight:900}
.admin-modern-list-row strong,.admin-modern-list-row small{display:block}.admin-modern-list-row strong{font-size:.75rem}.admin-modern-list-row small{margin-top:2px;font-size:.65rem;color:#828b86}.admin-modern-list-row>span{font-size:.64rem;color:#909793}
.admin-activity-stream{display:grid}.admin-activity-stream article{display:grid;grid-template-columns:14px 1fr auto;gap:10px;align-items:start;padding:10px 0;border-bottom:1px solid #ece9e2}.admin-activity-stream article:last-child{border-bottom:0}.admin-activity-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#5c8a72;box-shadow:0 0 0 4px #edf4ef}.admin-activity-stream strong,.admin-activity-stream small{display:block}.admin-activity-stream strong{font-size:.74rem}.admin-activity-stream small{margin-top:2px;font-size:.64rem;color:#818a85}.admin-activity-stream time{font-size:.62rem;color:#909793}
.admin-empty-state{display:flex;align-items:center;gap:12px;padding:18px;border:1px dashed #d6d1c8;border-radius:12px;background:#faf9f5}.admin-empty-state>span{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#edf4ef;color:#315f4c}.admin-empty-state strong,.admin-empty-state p{display:block}.admin-empty-state strong{font-size:.76rem}.admin-empty-state p{margin:2px 0 0!important;font-size:.67rem!important;color:#87908b!important}.admin-empty-state.compact{padding:12px}

/* Cards mais sofisticados em todo o Admin */
.admin-card,.card.wide-card,.admin-premium-body .card{box-shadow:0 9px 28px rgba(33,50,42,.045)!important}
.admin-card:hover{border-color:#d4d0c7!important}
.admin-card-head{padding-bottom:3px!important}
.admin-inline-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important}

/* Desktop intermediário */
@media(max-width:1280px){
 .admin-main-shell{max-width:calc(100vw - 240px)!important}
 .admin-dashboard-hero{grid-template-columns:1fr 330px;padding:30px}
 .admin-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .admin-dashboard-main-grid{grid-template-columns:1fr}
}

/* Tablet */
@media(max-width:900px){
 .admin-main-shell{max-width:100vw!important}
 .admin-dashboard-hero{grid-template-columns:1fr}
 .admin-dashboard-system-card{max-width:none}
 .admin-dashboard-secondary-grid{grid-template-columns:1fr}
}

/* Mobile */
@media(max-width:650px){
 .admin-content{padding:18px 13px 36px!important}
 .admin-dashboard-hero{padding:23px 19px;border-radius:17px}
 .admin-dashboard-hero-actions{display:grid}
 .admin-dashboard-hero-actions .button,.admin-dashboard-text-link{text-align:center;width:100%;box-sizing:border-box}
 .admin-dashboard-metrics{grid-template-columns:1fr}
 .admin-dashboard-metrics article{grid-template-columns:44px 1fr}
 .admin-next-gira-timeline{grid-template-columns:1fr}
 .admin-command-grid{grid-template-columns:1fr}
 .admin-form-grid.two{grid-template-columns:1fr!important}
 .admin-premium-body table{min-width:680px!important}
 .admin-responsive-table{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
 .admin-page-head h1,.top h1,.admin-dashboard-hero h1{font-size:2rem!important}
}

/* =========================================================
   v0.21.0.2 — Admin Layout Definitive + Content Studio
   ========================================================= */

/* FIX DEFINITIVO: o Admin usa grid OU margin, nunca os dois.
   O conflito anterior duplicava os ~240px da sidebar. */
@media(min-width:901px){
 body.admin-premium-body .admin-app{
   display:grid!important;
   grid-template-columns:250px minmax(0,1fr)!important;
   width:100vw!important;
   max-width:100vw!important;
   min-height:100vh!important;
 }
 body.admin-premium-body .admin-sidebar{
   position:sticky!important;
   left:auto!important;
   top:0!important;
   width:250px!important;
   min-width:250px!important;
   height:100vh!important;
   grid-column:1!important;
 }
 body.admin-premium-body .admin-main-shell{
   grid-column:2!important;
   margin-left:0!important;
   width:100%!important;
   max-width:none!important;
   min-width:0!important;
 }
 body.admin-premium-body .admin-content{
   width:100%!important;
   max-width:1540px!important;
   margin:0 auto!important;
   padding:30px clamp(24px,3vw,46px) 54px!important;
 }
 body.admin-premium-body .admin-state-strip{
   margin-left:0!important;
 }
}

/* Studio de conteúdo */
.content-studio-head{padding-top:2px!important}
.content-studio-head-status{min-width:190px;padding:11px 14px;border:1px solid #d9dfd9;border-radius:12px;background:#f8faf7}
.content-studio-head-status span,.content-studio-head-status strong{display:block}.content-studio-head-status span{font-size:.6rem;color:#7a8580;font-weight:900;letter-spacing:.07em}.content-studio-head-status strong{margin-top:3px;color:#315e4d;font-size:.78rem}
.content-studio-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:16px;align-items:start}
.content-studio-sidebar{position:sticky;top:92px;overflow:hidden;border:1px solid #dbd8cf;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(31,49,41,.04)}
.content-studio-sidebar-head{padding:14px 15px;border-bottom:1px solid #ece9e2;background:#f7f7f3}.content-studio-sidebar-head span,.content-studio-sidebar-head strong{display:block}.content-studio-sidebar-head span{font-size:.58rem;font-weight:900;letter-spacing:.08em;color:#8c7446}.content-studio-sidebar-head strong{margin-top:3px;color:#30483d;font-size:.75rem}
.content-studio-sidebar nav{display:grid;padding:7px}.content-studio-sidebar nav a{display:grid;grid-template-columns:31px 1fr;gap:9px;align-items:center;padding:9px;border-radius:9px;color:#40564c;text-decoration:none}.content-studio-sidebar nav a:hover{background:#edf4ef}.content-studio-sidebar nav b{width:29px;height:29px;border-radius:8px;display:grid;place-items:center;background:#f0f2ee;color:#947d4e;font-size:.58rem}.content-studio-sidebar nav strong,.content-studio-sidebar nav small{display:block}.content-studio-sidebar nav strong{font-size:.7rem}.content-studio-sidebar nav small{margin-top:1px;font-size:.59rem;color:#87908b}
.content-studio-tip{display:flex;gap:9px;padding:12px 14px;border-top:1px solid #ece9e2;background:#faf9f5}.content-studio-tip>span{color:#b2945c}.content-studio-tip p{margin:0!important;font-size:.62rem!important;line-height:1.45!important;color:#7d8681!important}
.content-studio-form{min-width:0}
.content-editor-card{scroll-margin-top:95px!important;position:relative!important;padding:23px!important}
.content-editor-card-head{display:grid;grid-template-columns:45px 1fr auto;gap:13px;align-items:start;margin-bottom:18px}.content-step{width:43px;height:43px;border-radius:11px;display:grid;place-items:center;background:#173f35;color:#d7bd83;font-size:.7rem;font-weight:900}.content-editor-card-head h2{margin:1px 0!important}.content-editor-card-head p{margin:3px 0 0!important}.content-editor-badge{padding:5px 8px;border-radius:999px;background:#edf4ef;color:#315e4d;font-size:.59rem;font-weight:900}
.content-editor-preview{margin-bottom:17px;padding:14px 16px;border-left:3px solid #b89b60;border-radius:0 10px 10px 0;background:#f7f6f1}.content-editor-preview small,.content-editor-preview strong,.content-editor-preview p{display:block}.content-editor-preview small{font-size:.56rem;color:#8e7648;font-weight:900;letter-spacing:.08em}.content-editor-preview strong{margin:4px 0;color:#29483b;font-size:1rem}.content-editor-preview p{margin:0!important;font-size:.7rem!important;color:#77817c!important}
.content-action-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.content-action-fields>div{padding:12px;border:1px solid #e5e1d8;border-radius:10px;background:#fafaf7}.content-action-fields>div>span,.content-editor-subsection>span{display:block;margin-bottom:8px;font-size:.57rem;color:#897144;font-weight:900;letter-spacing:.08em}
.content-seo-card{border-left:4px solid #627c9b!important}
.content-studio-save{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:15px!important;padding:12px 14px!important;border:1px solid #cad8cf!important;border-radius:12px!important;background:rgba(245,250,246,.96)!important;box-shadow:0 10px 25px rgba(32,57,46,.08)!important}.content-studio-save span,.content-studio-save small{display:block}.content-studio-save span{font-size:.72rem;font-weight:900;color:#315e4d}.content-studio-save small{font-size:.61rem;color:#7b8580;margin-top:1px}
.content-policy-card{border-left:4px solid #b89b60!important;background:linear-gradient(180deg,#fff,#fffdf7)!important}
.content-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:13px!important}.content-template-card{position:relative!important;padding:18px!important}.content-template-card textarea{min-height:150px!important}.content-template-card .gira-public-text-head{padding-bottom:11px;border-bottom:1px solid #ece9e2}

/* Biblioteca Umbanda */
.spiritual-admin-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:15px;align-items:start}.spiritual-editor-card{border-top:4px solid #2d654f!important}.spiritual-library-card{position:sticky;top:90px}.spiritual-content-grid{display:grid;gap:7px}.spiritual-content-item{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:10px;border:1px solid #e6e2da;border-radius:10px;background:#fafaf7}.spiritual-content-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#edf4ef;color:#315e4d}.spiritual-content-item span,.spiritual-content-item strong,.spiritual-content-item small{display:block}.spiritual-content-item span{font-size:.56rem;color:#8b7449;font-weight:900;text-transform:uppercase}.spiritual-content-item strong{margin:2px 0;font-size:.75rem;color:#30463d}.spiritual-content-item small{font-size:.61rem;color:#8b928e}

/* Formulários / relacionamento */
.relationship-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:14px}.relationship-metrics article{display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;padding:16px;border:1px solid #dedbd2;border-radius:14px;background:#fff}.relationship-icon{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#edf4ef;color:#315e4d;font-size:1rem}.relationship-metrics small,.relationship-metrics strong,.relationship-metrics p{display:block}.relationship-metrics small{font-size:.62rem;font-weight:900;color:#77817c}.relationship-metrics strong{font-size:1.45rem;color:#173f35}.relationship-metrics p{margin:0!important;font-size:.62rem!important;color:#8a918d!important}
.relationship-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.relationship-panel{min-width:0}.relationship-list{display:grid}.relationship-list article{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #ece9e2}.relationship-list article:last-child{border-bottom:0}.relationship-avatar{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#edf4ef;color:#315e4d;font-size:.72rem;font-weight:900}.relationship-avatar.spiritual{background:#f5efe2;color:#8a7142}.relationship-copy strong,.relationship-copy span,.relationship-copy small{display:block}.relationship-copy strong{font-size:.75rem;color:#31473d}.relationship-copy span{margin-top:2px;font-size:.65rem;color:#6f7b75}.relationship-copy small{margin-top:1px;font-size:.61rem;color:#959b98}.relationship-list time{font-size:.62rem;color:#89918d;text-align:right}.relationship-list time small{display:block;margin-top:2px}.relationship-status{text-align:right}.relationship-status b,.relationship-status time{display:block}.relationship-status b{font-size:.61rem;color:#315e4d}.relationship-status time{margin-top:3px}

/* Giras: status em PT-BR e cards mais legíveis */
.gira-status-badge{font-size:.62rem!important;text-transform:none!important;letter-spacing:0!important}
.gira-soft-badge{font-size:.59rem!important}
.gira-admin-card h2{font-size:1.15rem!important}
.gira-admin-card p{font-size:.75rem!important}
.gira-admin-meta small{font-size:.61rem!important}.gira-admin-meta strong{font-size:.78rem!important}

/* Responsividade */
@media(max-width:1150px){
 .content-studio-layout{grid-template-columns:1fr}
 .content-studio-sidebar{position:static}
 .content-studio-sidebar nav{grid-template-columns:repeat(3,1fr)}
 .content-studio-tip{display:none}
 .spiritual-admin-layout{grid-template-columns:1fr}
 .spiritual-library-card{position:static}
 .content-template-grid{grid-template-columns:1fr!important}
}
@media(max-width:900px){
 body.admin-premium-body .admin-app{display:block!important;width:100%!important}
 body.admin-premium-body .admin-main-shell{margin-left:0!important;width:100%!important;max-width:100%!important}
}
@media(max-width:700px){
 .content-studio-sidebar nav{grid-template-columns:1fr 1fr}
 .content-editor-card-head{grid-template-columns:40px 1fr}.content-editor-badge{grid-column:2}
 .content-action-fields{grid-template-columns:1fr}
 .relationship-admin-grid,.relationship-metrics{grid-template-columns:1fr}
 .content-studio-save{align-items:stretch!important;flex-direction:column!important}.content-studio-save button{width:100%}
}

/* =========================================================
   v0.21.0.3 — Course Lifecycle & Admin-only Demo
   ========================================================= */
.course-lifecycle-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:15px}.course-lifecycle-guide article{display:grid;grid-template-columns:35px 1fr;gap:9px;align-items:center;padding:11px 13px;border:1px solid #dfdcd3;border-radius:12px;background:#fff}.course-lifecycle-guide article>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#edf4ef;color:#315e4d;font-weight:900}.course-lifecycle-guide strong,.course-lifecycle-guide small{display:block}.course-lifecycle-guide strong{font-size:.72rem;color:#30463d}.course-lifecycle-guide small{margin-top:2px;font-size:.61rem;color:#818a85;line-height:1.35}
.course-management-card{position:relative}.course-management-card.is-demo{border-color:#d6bf88!important;background:linear-gradient(180deg,#fff,#fffdf7)!important}.course-management-card.is-archived{opacity:.78}.course-card-badges{position:relative;z-index:2;display:flex;gap:5px;flex-wrap:wrap}.course-card-badges>span{display:inline-flex!important;width:auto!important;padding:5px 7px!important;border-radius:999px!important;background:rgba(10,28,23,.74)!important;color:#fff!important;font-size:.53rem!important;font-weight:900!important}.course-card-badges .course-demo-badge{background:#b28d43!important}.course-management-copy{min-width:0}.course-admin-stats{display:grid!important;grid-template-columns:repeat(4,1fr)!important}.course-demo-note,.course-history-note{margin:11px 0;padding:10px 11px;border-radius:9px}.course-demo-note{border:1px solid #e2ce9d;background:#fff7df}.course-history-note{border:1px solid #d6e0da;background:#f2f7f4}.course-demo-note strong,.course-demo-note span,.course-history-note strong,.course-history-note span{display:block}.course-demo-note strong,.course-history-note strong{font-size:.66rem;color:#5f4d26}.course-history-note strong{color:#315e4d}.course-demo-note span,.course-history-note span{margin-top:2px;font-size:.6rem;color:#7b7464;line-height:1.4}.course-primary-actions{display:flex;gap:6px;flex-wrap:wrap}.course-lifecycle-menu{margin-top:10px;border-top:1px solid #ece9e2}.course-lifecycle-menu summary{padding:10px 0 3px;cursor:pointer;color:#68766f;font-size:.63rem;font-weight:850}.course-lifecycle-menu>div{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding-top:7px}.course-lifecycle-menu form{margin:0}.course-danger-button{background:#a94235!important;border-color:#a94235!important;color:#fff!important}.course-delete-locked{padding:7px 9px;border-radius:8px;background:#f1efea;color:#817c73;font-size:.59rem;font-weight:750}.course-demo-admin-banner{display:grid;grid-template-columns:45px 1fr;gap:11px;align-items:center;margin-bottom:14px;padding:12px 14px;border:1px solid #dfca96;border-radius:12px;background:#fff7df}.course-demo-admin-banner>span{width:43px;height:43px;border-radius:10px;display:grid;place-items:center;background:#b28d43;color:#fff;font-size:.62rem;font-weight:900;letter-spacing:.05em}.course-demo-admin-banner strong,.course-demo-admin-banner p{display:block}.course-demo-admin-banner strong{font-size:.75rem;color:#5c4b27}.course-demo-admin-banner p{margin:2px 0 0!important;font-size:.65rem!important;color:#817458!important}.course-demo-toggle{padding:7px 9px!important;border-radius:8px!important;background:#fff8e6!important;border:1px solid #ead7aa!important}.course-lifecycle-editor{border-top:4px solid #687b72!important}.course-lifecycle-editor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.course-lifecycle-editor-grid>div{padding:13px;border:1px solid #e2dfd7;border-radius:10px;background:#fafaf7}.course-lifecycle-editor-grid>div.danger{border-color:#e4c2bc;background:#fff8f7}.course-lifecycle-editor-grid strong{font-size:.73rem;color:#31483d}.course-lifecycle-editor-grid p{min-height:3.5em;margin:5px 0 12px!important;font-size:.65rem!important;color:#7c8580!important;line-height:1.45!important}
.school-stream-card .course-demo-public-label{background:#b28d43!important}
@media(max-width:900px){.course-lifecycle-guide,.course-lifecycle-editor-grid{grid-template-columns:1fr}.course-admin-stats{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:600px){.course-lifecycle-guide{grid-template-columns:1fr}.course-primary-actions{display:grid}.course-primary-actions .button{width:100%;box-sizing:border-box;text-align:center}.course-lifecycle-menu>div{display:grid}.course-lifecycle-menu button{width:100%}}

.course-demo-public-warning{display:flex;gap:10px;align-items:center;margin:14px 0;padding:11px 13px;border:1px solid #dfca96;border-radius:11px;background:#fff7df;color:#645128}.course-demo-public-warning strong{font-size:.72rem}.course-demo-public-warning span{font-size:.66rem;color:#806f4d}

/* =========================================================
   v0.22.0 — Escola TUCTB 3.0 Complete
   Chat, Professor, Avaliações, Minha Lista e Player 3.0
   ========================================================= */

/* Navegação aluno */
.school-nav-counter{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 4px;border-radius:999px;background:#b28d43;color:#fff;font-size:.55rem}
.school-library-list-shelf,.school-library-recommendations{margin-top:36px}
.school-saved-card{position:relative}.school-saved-card>a{display:block;text-decoration:none;color:inherit}.school-save-remove{width:100%;border:0;border-top:1px solid #ece8df;background:#faf9f5;color:#7c6951;padding:9px;font-size:.62rem;font-weight:850;cursor:pointer}.school-save-remove:hover{background:#fff5e7}

/* Página do curso do aluno */
.student-course-shell{padding-top:28px!important}.student-course-head-modern{margin-bottom:24px;padding:28px 30px;border-radius:20px;background:linear-gradient(135deg,#153a30,#285a47);color:#fff;box-shadow:0 15px 36px rgba(24,57,46,.12)}
.student-course-back{display:inline-block;margin-bottom:23px;color:rgba(255,255,255,.72);text-decoration:none;font-size:.7rem}.student-course-head-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;align-items:end}.student-course-head-modern h1{margin:.12em 0 .18em;font-size:clamp(2rem,4vw,3.3rem);line-height:1;color:#fff}.student-course-head-modern p{max-width:700px;margin:0;color:rgba(255,255,255,.72);line-height:1.55}.student-course-meta-modern{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.student-course-meta-modern span{font-size:.64rem;color:#dfe9e3}.student-course-head-grid aside{padding:15px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(8,27,22,.25)}.student-course-percent{display:flex;align-items:end;justify-content:space-between;margin-bottom:8px}.student-course-percent strong{font-size:1.7rem}.student-course-percent span{font-size:.62rem;color:rgba(255,255,255,.6)}.student-ask-teacher{display:block;margin-top:12px!important;text-align:center!important;background:rgba(255,255,255,.05)!important;color:#fff!important;border-color:rgba(255,255,255,.2)!important}.student-course-learning-path{margin-top:20px}.student-learning-path-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:11px}.student-learning-path-head h2{margin:.12em 0;color:#173f35}.student-learning-path-head>span{font-size:.64rem;color:#7d8681}

/* Player 3.0 */
.school-player-v3 .school-player-sidebar{width:auto}.school-player-lesson-context{margin-top:28px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.04)}.school-player-lesson-context small,.school-player-lesson-context strong,.school-player-lesson-context span{display:block}.school-player-lesson-context small{font-size:.56rem;color:#d7bd83;letter-spacing:.07em}.school-player-lesson-context strong{margin:4px 0;font-size:.76rem}.school-player-lesson-context span{font-size:.6rem;color:rgba(255,255,255,.55)}.school-player-help{display:grid;grid-template-columns:36px 1fr;gap:9px;align-items:center;margin-top:11px;padding:10px;border-radius:10px;background:rgba(215,189,131,.1);color:#fff;text-decoration:none}.school-player-help>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#d7bd83;color:#173f35;font-weight:900}.school-player-help strong,.school-player-help small{display:block}.school-player-help strong{font-size:.67rem}.school-player-help small{margin-top:2px;font-size:.55rem;color:rgba(255,255,255,.55)}.school-player-lesson-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.school-player-chat-mobile{display:none;padding:7px 9px;border-radius:8px;background:#edf4ef;color:#315e4d;text-decoration:none;font-size:.62rem;font-weight:850}.school-video-watermark{max-width:70%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Avaliações */
.school-quiz-panel{margin-top:22px}.school-quiz-intro{padding:20px;border-radius:15px;background:#173f35;color:#fff}.school-quiz-intro h2{margin:.15em 0;color:#fff}.school-quiz-intro p{margin:0;color:rgba(255,255,255,.7);line-height:1.55}.school-quiz-last{margin-top:12px;padding:10px 12px;border-radius:9px}.school-quiz-last.passed{background:rgba(104,190,137,.15)}.school-quiz-last.failed{background:rgba(215,159,104,.15)}.school-quiz-last strong,.school-quiz-last span{display:block}.school-quiz-last strong{font-size:.7rem}.school-quiz-last span{margin-top:2px;font-size:.62rem;color:rgba(255,255,255,.68)}
.school-quiz-question{margin:13px 0;padding:18px;border:1px solid #dfdcd3;border-radius:14px;background:#fff}.school-quiz-question legend{display:flex;gap:10px;align-items:center;padding:0 4px;color:#2d4439;font-weight:850;font-size:.82rem}.school-quiz-question legend>span{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:#edf4ef;color:#315e4d;font-size:.64rem}.school-quiz-question label{display:block;margin:8px 0!important;cursor:pointer}.school-quiz-question label>span{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;padding:10px;border:1px solid #e5e1d9;border-radius:9px;background:#fafaf7;color:#526259;font-size:.73rem}.school-quiz-question label input{position:absolute;opacity:0}.school-quiz-question label input:checked+span{border-color:#7ea08e;background:#edf5f0;color:#264d3c}.school-quiz-question label b{width:26px;height:26px;border-radius:7px;display:grid;place-items:center;background:#fff;border:1px solid #ddd8cf;color:#315e4d}.school-quiz-submit{display:block;margin:15px auto 0;min-width:220px}

/* Chat do aluno */
.school-chat-page,.school-chat-thread-page{background:#f1f0eb;min-height:100vh}.school-chat-shell{padding-top:26px!important}.school-chat-hero{display:flex;justify-content:space-between;gap:25px;align-items:end;padding:27px 30px;margin-bottom:16px;border-radius:18px;background:linear-gradient(135deg,#173f35,#2b604c);color:#fff}.school-chat-hero h1{margin:.12em 0;font-size:2.1rem;color:#fff}.school-chat-hero p{max-width:680px;margin:0;color:rgba(255,255,255,.7);line-height:1.55}.school-chat-list{display:grid;gap:8px}.school-chat-list-item{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 16px;border:1px solid #dfdcd3;border-radius:14px;background:#fff;color:#30463d;text-decoration:none;transition:.15s ease}.school-chat-list-item:hover{transform:translateY(-1px);border-color:#cad8cf}.school-chat-list-item.unread{border-left:4px solid #2f6850;background:#f7fbf8}.school-chat-list-icon{width:44px;height:44px;border-radius:11px;display:grid;place-items:center;background:#edf4ef;color:#315e4d;font-weight:900}.school-chat-list-copy>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.school-chat-list-copy>div small{font-size:.59rem;color:#7e8882}.school-chat-list-copy>div span{padding:3px 6px;border-radius:999px;background:#dfeee4;color:#2e684a;font-size:.53rem;font-weight:900}.school-chat-list-copy>strong{display:block;margin:3px 0;font-size:.82rem}.school-chat-list-copy p{margin:0;font-size:.64rem;color:#7f8883}.school-chat-list-meta{text-align:right}.school-chat-list-meta strong,.school-chat-list-meta small{display:block}.school-chat-list-meta strong{font-size:.64rem}.school-chat-list-meta small{margin-top:3px;font-size:.58rem;color:#8b928e}
.school-chat-compose-shell{max-width:780px;margin:0 auto;padding:35px 18px}.school-chat-back{display:inline-block;margin-bottom:15px;color:#50675c;text-decoration:none;font-size:.7rem}.school-chat-compose-card{padding:25px;border:1px solid #ddd9d0;border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(35,52,45,.055)}.school-chat-compose-context{margin-bottom:17px;padding-bottom:15px;border-bottom:1px solid #ece9e2}.school-chat-compose-context h1{margin:.12em 0;color:#173f35}.school-chat-compose-context p{margin:0;color:#758079;font-size:.72rem}.school-chat-compose-card label{display:block;margin:12px 0;color:#526259;font-size:.7rem;font-weight:850}.school-chat-compose-card input,.school-chat-compose-card textarea{width:100%;box-sizing:border-box;margin-top:5px;padding:11px;border:1px solid #d8d5cd;border-radius:9px;background:#fbfbf8}.school-chat-compose-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.school-chat-thread-shell{max-width:1000px;margin:0 auto;padding:26px 18px 45px}.school-chat-thread-head{display:grid;grid-template-columns:130px 1fr auto;gap:18px;align-items:start;margin-bottom:15px}.school-chat-thread-head>a{color:#53695f;text-decoration:none;font-size:.7rem}.school-chat-thread-head h1{margin:.12em 0;color:#173f35}.school-chat-thread-head p{margin:0;color:#7b8580;font-size:.7rem}.school-chat-thread-teacher{padding:10px 12px;border-radius:10px;background:#edf4ef}.school-chat-thread-teacher span,.school-chat-thread-teacher strong{display:block}.school-chat-thread-teacher span{font-size:.56rem;color:#748079}.school-chat-thread-teacher strong{margin-top:2px;font-size:.68rem;color:#315e4d}.school-chat-thread{display:grid;gap:10px;padding:20px;border:1px solid #ddd9d0;border-radius:16px;background:#fff;min-height:320px}.school-chat-message{max-width:78%}.school-chat-message.mine{justify-self:end}.school-chat-message.teacher{justify-self:start}.school-chat-message-meta{display:flex;justify-content:space-between;gap:14px;margin:0 5px 4px}.school-chat-message-meta strong{font-size:.61rem;color:#52675d}.school-chat-message-meta time{font-size:.55rem;color:#939a96}.school-chat-bubble{padding:11px 13px;border-radius:13px;background:#f0f3ef;color:#344a40;font-size:.73rem;line-height:1.55}.school-chat-message.mine .school-chat-bubble{background:#173f35;color:#fff;border-bottom-right-radius:4px}.school-chat-message.teacher .school-chat-bubble{border-bottom-left-radius:4px}.school-chat-attachment{display:flex;gap:7px;align-items:center;margin-top:9px;padding:8px;border-radius:8px;background:rgba(255,255,255,.12);color:inherit;text-decoration:none;font-size:.62rem}.school-chat-reply{margin-top:10px;padding:15px;border:1px solid #ddd9d0;border-radius:14px;background:#fff}.school-chat-reply label{display:block;font-size:.66rem;font-weight:850;color:#53665d}.school-chat-reply textarea{width:100%;box-sizing:border-box;margin-top:5px;padding:10px;border:1px solid #d8d5cd;border-radius:9px}.school-chat-reply-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:9px}.school-chat-file{font-size:.61rem!important;font-weight:700!important;color:#738079!important}.school-chat-file input{display:block;margin-top:5px}.school-chat-closed{margin-top:10px;padding:12px;border-radius:10px;background:#eceae5;color:#777;font-size:.68rem}

/* Professor standalone */
.school-teacher-body{margin:0;background:#eef0ec;color:#293f35}.teacher-portal-shell{max-width:1240px;margin:0 auto;padding-left:20px;padding-right:20px}.teacher-portal-top{background:#153a30;color:#fff;box-shadow:0 4px 18px rgba(20,48,39,.12)}.teacher-portal-top .teacher-portal-shell{min-height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px}.teacher-portal-top a{color:#fff;text-decoration:none}.teacher-portal-top>a,.teacher-portal-top .teacher-portal-shell>a{display:flex;align-items:center;gap:10px}.teacher-portal-mark{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:#d7bd83;color:#173f35;font-weight:900}.teacher-portal-top strong,.teacher-portal-top small{display:block}.teacher-portal-top strong{font-size:.78rem}.teacher-portal-top small{font-size:.58rem;color:rgba(255,255,255,.55)}.teacher-portal-top nav{display:flex;gap:3px}.teacher-portal-top nav a{padding:8px 10px;border-radius:8px;font-size:.66rem;font-weight:850;color:rgba(255,255,255,.72)}.teacher-portal-top nav a.active,.teacher-portal-top nav a:hover{background:rgba(255,255,255,.08);color:#fff}.teacher-portal-main{padding-top:28px;padding-bottom:45px}.teacher-portal-hero{display:grid;grid-template-columns:1fr 180px;gap:25px;align-items:center;padding:26px 29px;margin-bottom:15px;border-radius:18px;background:#fff;border:1px solid #dcd9d0}.teacher-portal-hero h1{margin:.12em 0;color:#173f35;font-size:2.1rem}.teacher-portal-hero p{max-width:720px;margin:0;color:#738079}.teacher-portal-stat{padding:14px;border-radius:12px;background:#edf4ef;text-align:center}.teacher-portal-stat small,.teacher-portal-stat strong,.teacher-portal-stat span{display:block}.teacher-portal-stat small{font-size:.56rem;color:#748079}.teacher-portal-stat strong{font-size:1.7rem;color:#315e4d}.teacher-portal-stat span{font-size:.58rem;color:#858d89}.teacher-inbox-list.standalone{display:grid;gap:8px}.teacher-inbox-item{display:grid;grid-template-columns:43px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 15px;border:1px solid #dedbd2;border-radius:13px;background:#fff;color:#31483d;text-decoration:none}.teacher-inbox-item.unread{border-left:4px solid #2e684f;background:#f7fbf8}.teacher-inbox-avatar{width:41px;height:41px;border-radius:10px;display:grid;place-items:center;background:#edf4ef;color:#315e4d;font-weight:900}.teacher-inbox-copy>div{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.teacher-inbox-copy>div strong{font-size:.69rem}.teacher-inbox-copy>div span{font-size:.58rem;color:#7d8681}.teacher-inbox-copy h3{margin:3px 0;font-size:.78rem}.teacher-inbox-copy small{font-size:.59rem;color:#7f8883}.teacher-inbox-meta{text-align:right}.teacher-inbox-meta b{display:grid;place-items:center;width:21px;height:21px;margin-left:auto;border-radius:50%;background:#2f684f;color:#fff;font-size:.55rem}.teacher-inbox-meta time{display:block;margin-top:4px;font-size:.57rem;color:#8d9490}.teacher-empty-inbox{display:flex;gap:13px;align-items:center;padding:25px;border:1px dashed #d2cec5;border-radius:14px;background:#faf9f5}.teacher-empty-inbox>span{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#e4f1e8;color:#2d6849}.teacher-empty-inbox h2{margin:0}.teacher-empty-inbox p{margin:3px 0 0;color:#7d8681}.teacher-thread-main{padding-top:26px;padding-bottom:45px}.teacher-standalone-thread-head{margin-bottom:15px}.teacher-standalone-thread-head>a{color:#50675c;text-decoration:none;font-size:.68rem}.teacher-standalone-thread-head h1{margin:.12em 0;color:#173f35}.teacher-standalone-thread-head p{margin:0;color:#7b8580}.teacher-standalone-thread-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:13px}.teacher-standalone-messages,.teacher-standalone-reply{padding:17px;border:1px solid #ddd9d0;border-radius:15px;background:#fff}.teacher-standalone-messages{display:grid;gap:9px;align-content:start}.teacher-standalone-reply{position:sticky;top:15px;height:max-content}.teacher-standalone-reply textarea{width:100%;box-sizing:border-box;margin:7px 0;padding:10px;border:1px solid #d8d5cd;border-radius:9px}.teacher-file-label{display:block;margin:8px 0;font-size:.64rem;color:#66736d}.teacher-file-label input{display:block;margin-top:5px}.teacher-standalone-reply button{width:100%}.teacher-status-form{margin-top:12px;padding-top:12px;border-top:1px solid #ece9e2}.teacher-status-form label{font-size:.62rem;color:#69766f}.teacher-status-form select{width:100%;margin-top:5px;padding:9px;border:1px solid #d8d5cd;border-radius:8px}

/* Chat dentro do Admin */
.teacher-inbox-filters{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;padding:9px 12px;border-radius:10px;background:#edf4ef;color:#315e4d;font-size:.68rem}.teacher-thread-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:13px}.teacher-thread-messages{display:grid;gap:9px;align-content:start}.teacher-chat-message{padding:11px 13px;border-radius:11px;background:#f5f5f1}.teacher-chat-message.student{border-left:3px solid #b99d62}.teacher-chat-message.teacher{border-left:3px solid #3c735a;background:#edf5f0}.teacher-chat-message>div{display:flex;justify-content:space-between;gap:10px}.teacher-chat-message strong{font-size:.67rem}.teacher-chat-message time{font-size:.57rem;color:#8b928e}.teacher-chat-message p{margin:5px 0!important;font-size:.72rem!important;line-height:1.55!important}.teacher-chat-message>a{font-size:.61rem;color:#315e4d}.teacher-thread-reply{position:sticky;top:88px;height:max-content}.teacher-thread-context{display:grid;gap:4px;margin-top:13px;padding-top:12px;border-top:1px solid #ece9e2}.teacher-thread-context strong{font-size:.62rem}.teacher-thread-context span{font-size:.6rem;color:#7d8681}.admin-back-link{display:inline-block;margin-bottom:7px;color:#5e6e66;text-decoration:none;font-size:.64rem}

/* Admin quiz/professor */
.school-quiz-admin-editor{margin:8px;padding:12px;border:1px solid #e0ddd4;border-radius:10px;background:#f8faf7}.school-quiz-admin-editor h3{margin:.12em 0;color:#315e4d}.school-quiz-admin-question{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px;border-radius:8px;background:#fff;border:1px solid #e6e2d9;margin:5px 0}.school-quiz-admin-question strong,.school-quiz-admin-question small{display:block}.school-quiz-admin-question strong{font-size:.66rem}.school-quiz-admin-question small{margin-top:2px;font-size:.57rem;color:#7d8681}.school-quiz-new-question{margin-top:9px;padding:11px;border-radius:9px;background:#eef4ef}.school-teacher-admin{border-left:4px solid #6b859e!important}.school-teacher-list{display:grid;gap:6px}.school-teacher-list article{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:9px;border:1px solid #e4e0d8;border-radius:9px;background:#fafaf7}.school-teacher-avatar{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;background:#e9eff5;color:#4d6479;font-weight:900}.school-teacher-list strong,.school-teacher-list small{display:block}.school-teacher-list strong{font-size:.69rem}.school-teacher-list small{font-size:.59rem;color:#7c8580}.school-teacher-add{margin-top:12px;padding-top:12px;border-top:1px solid #ece9e2}

/* Pesquisa de catálogo */
.school-catalog-nav{gap:14px!important}.school-search-form{display:flex;min-width:280px;margin-right:8px}.school-search-form input{width:100%;padding:8px 10px;border:1px solid #d9d6ce;border-radius:9px 0 0 9px;background:#fff;color:#35483f}.school-search-form button{width:38px;border:1px solid #d9d6ce;border-left:0;border-radius:0 9px 9px 0;background:#173f35;color:#fff;cursor:pointer}
.school-favorite-form{margin-top:8px}.school-favorite-form button{width:100%}

/* Pedidos do aluno */
.school-orders-page{background:#f1f0eb;min-height:100vh}.school-orders-shell{padding-top:27px!important}.school-orders-hero{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:24px 27px;margin-bottom:14px;border-radius:17px;background:#fff;border:1px solid #ddd9d0}.school-orders-hero h1{margin:.12em 0;color:#173f35}.school-orders-hero p{margin:0;color:#758079}.school-orders-list{display:grid;gap:9px}.school-order-card{display:grid;grid-template-columns:180px minmax(0,1fr) 190px;gap:15px;align-items:center;padding:15px 17px;border:1px solid #dedbd2;border-radius:13px;background:#fff}.school-order-card.status-paid{border-left:4px solid #3c765a}.school-order-card.status-pending{border-left:4px solid #b99752}.school-order-code small,.school-order-code strong,.school-order-code span,.school-order-course small,.school-order-course strong,.school-order-course span,.school-order-value small,.school-order-value strong,.school-order-value a{display:block}.school-order-card small{font-size:.56rem;color:#7d8681;font-weight:900}.school-order-card strong{margin:2px 0;font-size:.72rem;color:#30463d}.school-order-card span{font-size:.61rem;color:#848c88}.school-order-value{text-align:right}.school-order-value strong{font-size:.88rem}.school-order-value a{margin-top:4px;color:#315e4d;text-decoration:none;font-size:.61rem;font-weight:850}

@media(max-width:980px){
 .student-course-head-grid,.teacher-standalone-thread-grid,.teacher-thread-layout{grid-template-columns:1fr}
 .teacher-standalone-reply,.teacher-thread-reply{position:static}
 .school-chat-thread-head{grid-template-columns:1fr}.school-chat-thread-teacher{width:max-content}
 .school-order-card{grid-template-columns:150px 1fr}.school-order-value{grid-column:1/-1;text-align:left}
}
@media(max-width:700px){
 .school-chat-hero,.school-orders-hero{align-items:flex-start;flex-direction:column}
 .school-chat-list-item,.teacher-inbox-item{grid-template-columns:40px 1fr}.school-chat-list-meta,.teacher-inbox-meta{grid-column:2;text-align:left}.teacher-inbox-meta b{margin-left:0}
 .school-chat-message{max-width:92%}.school-chat-reply-actions{align-items:flex-start;flex-direction:column}.school-chat-reply-actions button{width:100%}
 .teacher-portal-top .teacher-portal-shell{align-items:flex-start;flex-direction:column;padding-top:11px;padding-bottom:11px}.teacher-portal-top nav{width:100%;overflow:auto}
 .teacher-portal-hero{grid-template-columns:1fr}.teacher-portal-stat{text-align:left}
 .school-player-chat-mobile{display:inline-flex}.school-player-help{display:none}
 .school-order-card{grid-template-columns:1fr}.school-order-value{grid-column:auto}
 .school-search-form{min-width:220px}
}

.certificate-validation-page{background:#f1f0eb}.certificate-validation-shell{max-width:900px;margin:0 auto;padding:55px 20px 70px}.certificate-validation-card{position:relative;padding:32px;border:1px solid #ddd9d0;border-radius:20px;background:#fff;box-shadow:0 15px 42px rgba(33,50,42,.07)}.certificate-validation-card.valid{border-top:5px solid #376f55}.certificate-validation-card.invalid{border-top:5px solid #9c5146}.certificate-validation-seal{position:absolute;right:30px;top:30px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#e4f1e8;color:#2d6849;font-size:1.35rem;font-weight:900}.certificate-validation-card.invalid .certificate-validation-seal{background:#f5e5e2;color:#91473d}.certificate-validation-head{padding-right:80px}.certificate-validation-head h1{margin:.12em 0;color:#173f35;font-size:2.3rem}.certificate-validation-head p{max-width:650px;color:#738079;line-height:1.6}.certificate-validation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:22px 0}.certificate-validation-grid>div{padding:13px;border-radius:10px;background:#f5f6f2}.certificate-validation-grid small,.certificate-validation-grid strong{display:block}.certificate-validation-grid small{font-size:.57rem;color:#7b8580}.certificate-validation-grid strong{margin-top:3px;color:#30463d;font-size:.77rem}.certificate-validation-code{padding:15px;margin-bottom:17px;border-radius:11px;background:#173f35;color:#fff}.certificate-validation-code span,.certificate-validation-code strong,.certificate-validation-code small{display:block}.certificate-validation-code span{font-size:.55rem;color:#d7bd83;letter-spacing:.08em}.certificate-validation-code strong{margin:5px 0;font-size:1rem;letter-spacing:.04em}.certificate-validation-code small{font-size:.59rem;color:rgba(255,255,255,.58)}
@media(max-width:600px){.certificate-validation-card{padding:23px}.certificate-validation-seal{position:static;margin-bottom:15px}.certificate-validation-head{padding-right:0}.certificate-validation-head h1{font-size:1.8rem}.certificate-validation-grid{grid-template-columns:1fr}}

/* v0.22.1 — Provas e Avaliações Profissionais */
.assessment-admin-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.assessment-admin-metrics article{padding:15px;border:1px solid #dedbd2;border-radius:13px;background:#fff}.assessment-admin-metrics small,.assessment-admin-metrics strong,.assessment-admin-metrics span{display:block}.assessment-admin-metrics small{font-size:.6rem;color:#7d8681;font-weight:900}.assessment-admin-metrics strong{font-size:1.5rem;color:#173f35}.assessment-admin-metrics span{font-size:.62rem;color:#89908c}.assessment-review-queue>a{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px;border-bottom:1px solid #ece9e2;color:#31483d;text-decoration:none}.assessment-review-queue strong,.assessment-review-queue small{display:block}.assessment-review-queue strong{font-size:.72rem}.assessment-review-queue small{font-size:.61rem;color:#7f8883}.assessment-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.assessment-admin-card-head{display:flex;justify-content:space-between;gap:10px}.assessment-admin-card-head span,.assessment-admin-card-head b{font-size:.57rem;font-weight:900}.assessment-admin-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin:12px 0}.assessment-admin-stats span{padding:8px;border-radius:8px;background:#f5f6f2;font-size:.61rem;color:#748079}.assessment-admin-stats b{display:block;color:#315e4d;font-size:.74rem}.assessment-question-bank{border-left:4px solid #6c859e!important}.assessment-question-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px;border-bottom:1px solid #ece9e2}.assessment-question-row span,.assessment-question-row strong,.assessment-question-row small{display:block}.assessment-question-row span{font-size:.55rem;color:#8a7449;font-weight:900}.assessment-question-row strong{margin:2px 0;font-size:.7rem}.assessment-question-row small{font-size:.59rem;color:#7e8882}.assessment-question-create{margin-top:14px;padding:14px;border-radius:10px;background:#f3f6f2}.assessment-review-sheet article{display:grid;grid-template-columns:1fr auto;gap:16px;padding:15px;border-bottom:1px solid #ece9e2}.assessment-review-sheet article.needs-review{background:#fffaf0}.assessment-review-sheet h2{font-size:.86rem!important}.assessment-review-sheet p{font-size:.72rem!important}.assessment-review-sheet form{min-width:230px}
.school-assessments-page,.school-assessment-detail,.school-result-page{background:#f1f0eb;min-height:100vh}.school-assessments-shell{padding-top:27px!important}.school-assessment-hero{padding:27px 30px;margin-bottom:15px;border-radius:18px;background:linear-gradient(135deg,#173f35,#315f4c);color:#fff}.school-assessment-hero h1{margin:.12em 0;color:#fff}.school-assessment-hero p{margin:0;color:rgba(255,255,255,.7)}.student-assessment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.student-assessment-card{padding:18px;border:1px solid #dedbd2;border-radius:15px;background:#fff}.student-assessment-type{display:inline-flex;padding:4px 7px;border-radius:999px;background:#edf4ef;color:#315e4d;font-size:.55rem;font-weight:900}.student-assessment-card>small{display:block;margin-top:10px;color:#7d8681;font-size:.6rem}.student-assessment-card h2{font-size:1rem;color:#28463a}.student-assessment-card p{min-height:3em;color:#78827d;font-size:.68rem}.student-assessment-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:5px;margin:12px 0}.student-assessment-stats span{padding:7px;background:#f5f6f2;border-radius:8px;font-size:.58rem;color:#7b8580}.student-assessment-stats b{display:block;color:#315e4d}.school-assessment-detail-shell,.school-result-shell{max-width:900px;margin:0 auto;padding:35px 18px 55px}.school-assessment-detail-card,.school-result-card{padding:28px;border:1px solid #dedbd2;border-radius:18px;background:#fff}.school-assessment-detail-card h1,.school-result-card h1{color:#173f35}.school-assessment-rules{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:18px 0}.school-assessment-rules>span{padding:11px;border-radius:9px;background:#f4f6f2}.school-assessment-rules small,.school-assessment-rules strong{display:block}.school-assessment-rules small{font-size:.54rem;color:#7b8580}.school-assessment-rules strong{font-size:.72rem;color:#315e4d}.school-assessment-instructions{padding:13px;margin:13px 0;border-left:3px solid #b89b60;background:#faf7ef}.school-assessment-history{margin-top:15px}.school-assessment-history article{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #ddd9d0;font-size:.67rem}.school-exam-body{margin:0;background:#eef0ec;color:#293f35}.school-exam-shell{max-width:900px;margin:0 auto;padding:28px 18px 60px}.school-exam-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:14px}.school-exam-head h1{margin:.12em 0;color:#173f35}.school-exam-time{padding:10px 13px;border-radius:10px;background:#173f35;color:#fff}.school-exam-time small,.school-exam-time strong{display:block}.school-exam-time small{font-size:.53rem;color:#d7bd83}.school-exam-questions{display:grid;gap:12px}.school-exam-questions fieldset{padding:18px;border:1px solid #ddd9d0;border-radius:14px;background:#fff}.school-exam-questions legend{display:flex;gap:9px;align-items:center;color:#2e463b;font-weight:850;font-size:.8rem}.school-exam-questions legend>span{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:#edf4ef;color:#315e4d}.school-exam-questions legend small{margin-left:auto;color:#8b928e;font-size:.55rem}.school-exam-questions label{display:block;margin:8px 0}.school-exam-questions label input{position:absolute;opacity:0}.school-exam-questions label>span{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;padding:10px;border:1px solid #e2dfd7;border-radius:9px;background:#fafaf7;font-size:.7rem}.school-exam-questions label input:checked+span{border-color:#719580;background:#edf5f0}.school-exam-questions textarea{width:100%;box-sizing:border-box;padding:11px;border:1px solid #d8d5cd;border-radius:9px}.school-exam-submit{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-top:15px;padding:14px;border-radius:11px;background:#173f35;color:#fff}.school-exam-submit p{margin:0;color:rgba(255,255,255,.7);font-size:.66rem}.school-result-card.passed{border-top:5px solid #3b7658}.school-result-card.failed{border-top:5px solid #9f5549}.school-result-card.pending{border-top:5px solid #b39250}.school-result-score{margin:17px 0}.school-result-score strong,.school-result-score span{display:block}.school-result-score strong{font-size:2.5rem;color:#173f35}.school-result-score span{font-size:.7rem;color:#77817c}.school-result-review{margin-top:14px}.school-result-review article{padding:12px;border-bottom:1px solid #dedbd2}.school-result-review span,.school-result-review strong,.school-result-review small{display:block}.school-result-review span{font-size:.72rem}.school-result-review strong{margin:3px 0;color:#315e4d}.student-course-assessments{margin-top:30px}.student-assessment-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.student-assessment-mini-grid>a{position:relative;padding:13px;border:1px solid #dedbd2;border-radius:12px;background:#fff;color:#30463d;text-decoration:none}.student-assessment-mini-grid span,.student-assessment-mini-grid strong,.student-assessment-mini-grid small{display:block}.student-assessment-mini-grid span{font-size:.54rem;color:#8a7449;font-weight:900}.student-assessment-mini-grid strong{margin:3px 0;font-size:.72rem}.student-assessment-mini-grid small{font-size:.59rem;color:#7f8883}.student-assessment-mini-grid b{position:absolute;right:10px;top:10px;color:#315e4d}
@media(max-width:1000px){.assessment-admin-grid,.student-assessment-grid,.student-assessment-mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.assessment-admin-grid,.student-assessment-grid,.student-assessment-mini-grid,.assessment-admin-metrics{grid-template-columns:1fr}.school-assessment-rules{grid-template-columns:repeat(2,1fr)}.school-assessment-history article{grid-template-columns:1fr auto}.school-exam-head,.school-exam-submit{align-items:flex-start;flex-direction:column}.assessment-review-sheet article{grid-template-columns:1fr}.assessment-review-sheet form{min-width:0}}

/* =========================================================
   v0.22.2 — Provas Seguras + Histórico Completo
   ========================================================= */
.assessment-rule-panel,.assessment-security-config{margin:16px 0;padding:16px;border:1px solid #e1ddd4;border-radius:12px;background:#fafbf8}.assessment-security-config{border-left:4px solid #9b7d45;background:#fffdf7}.assessment-study-wait{margin:14px 0;padding:14px;border:1px solid #e2cf9d;border-radius:11px;background:#fff8e4}.assessment-study-wait strong,.assessment-study-wait p{display:block}.assessment-study-wait strong{color:#705a27;font-size:.78rem}.assessment-study-wait p{margin:4px 0 10px!important;color:#806f50;font-size:.69rem!important;line-height:1.5}.school-assessment-security-notice{margin:12px 0;padding:11px 13px;border-radius:10px;background:#f0f4f1;border-left:3px solid #436f5a}.school-assessment-security-notice strong{font-size:.69rem;color:#315e4d}.school-assessment-security-notice p{margin:3px 0 0!important;font-size:.63rem!important;color:#748079!important}
.exam-security-gate{position:fixed;inset:0;z-index:999;display:grid;place-items:center;padding:20px;background:rgba(7,24,19,.92);backdrop-filter:blur(10px)}.exam-security-gate[hidden]{display:none}.exam-security-gate>div{max-width:590px;padding:30px;border:1px solid rgba(255,255,255,.15);border-radius:18px;background:#173f35;color:#fff;box-shadow:0 24px 70px rgba(0,0,0,.3)}.exam-security-gate h1{margin:.15em 0;color:#fff;font-size:2rem}.exam-security-gate p{color:rgba(255,255,255,.72);line-height:1.6}.exam-security-gate button{margin-top:10px;background:#d7bd83;color:#173f35}.exam-head-tools{display:flex;gap:8px}.exam-security-counter{padding:10px 13px;border:1px solid #d8d5cd;border-radius:10px;background:#fff}.exam-security-counter small,.exam-security-counter strong{display:block}.exam-security-counter small{font-size:.52rem;color:#7c8580}.exam-security-counter strong{font-size:.64rem;color:#315e4d}.exam-security-warning{margin-bottom:12px;padding:11px 13px;border:1px solid #dfc486;border-radius:10px;background:#fff6dc;color:#6f5720;font-size:.68rem}.exam-security-warning strong,.exam-security-warning span{display:block}.secure-question-nav{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid #ece9e2}.secure-question-nav button{min-width:150px}.secure-exam-mode .school-exam-questions{-webkit-user-select:none;user-select:none}
.assessment-history-table .assessment-attempt-status{display:inline-flex;padding:5px 7px;border-radius:999px;font-size:.58rem;font-weight:900}.assessment-attempt-status.status-graded{background:#e3f0e7;color:#326148}.assessment-attempt-status.status-invalidated{background:#f4e4e0;color:#8a443a}.assessment-attempt-status.status-in_progress{background:#e9eff5;color:#4e6478}.assessment-attempt-status.status-awaiting_review{background:#fff0ca;color:#75590e}.assessment-attempt-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:13px}.assessment-attempt-summary article{padding:13px;border:1px solid #dedbd2;border-radius:11px;background:#fff}.assessment-attempt-summary small,.assessment-attempt-summary strong{display:block}.assessment-attempt-summary small{font-size:.55rem;color:#7b8580;font-weight:900}.assessment-attempt-summary strong{margin-top:3px;font-size:.76rem;color:#315e4d}.assessment-review-sheet article.wrong-answer{border-left:4px solid #a5574b;background:#fff8f7}.assessment-review-sheet article.correct-answer{border-left:4px solid #3e7559;background:#f6fbf7}.assessment-security-log>div{display:grid;grid-template-columns:145px 200px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid #ece9e2}.assessment-security-log time{font-size:.61rem;color:#7f8883}.assessment-security-log strong{font-size:.65rem;color:#344b40}.assessment-security-log span{font-size:.61rem;color:#848c88}.assessment-admin-override{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:12px 0;padding:11px 13px;border:1px solid #dcc890;border-radius:10px;background:#fff9e9}.assessment-admin-override strong,.assessment-admin-override small{display:block}.assessment-admin-override strong{font-size:.68rem;color:#705a27}.assessment-admin-override small{font-size:.58rem;color:#877653}
.teacher-assessment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.teacher-assessment-grid article{padding:16px;border:1px solid #dedbd2;border-radius:13px;background:#fff}.teacher-assessment-grid article>span,.teacher-assessment-grid article>small,.teacher-assessment-grid article>h2,.teacher-assessment-grid article>div,.teacher-assessment-grid article>a{display:block}.teacher-assessment-grid article>span{font-size:.55rem;font-weight:900;color:#8c7447}.teacher-assessment-grid article>small{margin-top:6px;font-size:.59rem;color:#7c8580}.teacher-assessment-grid h2{margin:4px 0;font-size:.88rem;color:#30463d}.teacher-assessment-grid article>div{font-size:.62rem;color:#77817c}.teacher-assessment-grid article>a{margin-top:12px;color:#315e4d;text-decoration:none;font-size:.64rem;font-weight:850}.teacher-assessment-history{display:grid;gap:7px}.teacher-assessment-history>a{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 14px;border:1px solid #dedbd2;border-radius:11px;background:#fff;color:#31483d;text-decoration:none}.teacher-assessment-history strong,.teacher-assessment-history small{display:block}.teacher-assessment-history strong{font-size:.72rem}.teacher-assessment-history small{font-size:.59rem;color:#808984}.teacher-assessment-history> a>span{font-size:.64rem}.teacher-assessment-history> a>b{font-size:.61rem;color:#315e4d}.teacher-attempt-answers{display:grid;gap:7px}.teacher-attempt-answers article{position:relative;padding:12px 42px 12px 14px;border:1px solid #dedbd2;border-radius:10px;background:#fff}.teacher-attempt-answers article.wrong{border-left:4px solid #a5574b}.teacher-attempt-answers article.correct{border-left:4px solid #3e7559}.teacher-attempt-answers span,.teacher-attempt-answers strong{display:block}.teacher-attempt-answers span{font-size:.7rem}.teacher-attempt-answers strong{margin-top:3px;font-size:.62rem;color:#76817b}.teacher-attempt-answers b{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:1rem}.teacher-security-log{margin-top:15px;padding:15px;border-radius:12px;background:#fff;border:1px solid #dedbd2}.teacher-security-log h2{font-size:.9rem;color:#30463d}.teacher-security-log>div{display:flex;gap:14px;padding:7px 0;border-bottom:1px solid #ece9e2;font-size:.61rem}.teacher-security-log time{color:#7e8882}
@media(max-width:900px){.assessment-attempt-summary,.teacher-assessment-grid{grid-template-columns:repeat(2,1fr)}.assessment-security-log>div{grid-template-columns:120px 1fr}.assessment-security-log span{grid-column:2}.teacher-assessment-history>a{grid-template-columns:1fr auto}}
@media(max-width:650px){.assessment-attempt-summary,.teacher-assessment-grid{grid-template-columns:1fr}.exam-head-tools{width:100%}.school-exam-head{align-items:stretch!important}.exam-security-counter,.school-exam-time{flex:1}.secure-question-nav button{min-width:0}.assessment-security-log>div{grid-template-columns:1fr}.assessment-security-log span{grid-column:auto}.assessment-admin-override{align-items:stretch;flex-direction:column}.teacher-assessment-history>a{grid-template-columns:1fr}.teacher-assessment-history> a>span,.teacher-assessment-history> a>b{text-align:left}}

/* =========================================================
   v0.22.2.1 — Cronômetro Profissional da Prova
   ========================================================= */
.professional-exam-timer{
 min-width:265px;padding:11px 13px;border:1px solid #cfd9d2;border-radius:12px;
 background:linear-gradient(180deg,#fff,#f7faf8);box-shadow:0 7px 20px rgba(31,54,44,.06);
 transition:.2s ease
}
.professional-timer-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-end}
.professional-timer-top span small,.professional-timer-top span strong{display:block}
.professional-timer-top small{font-size:.53rem;letter-spacing:.08em;color:#708078;font-weight:900}
.professional-timer-top strong{margin-top:2px;font-size:1.35rem;line-height:1;color:#173f35;font-variant-numeric:tabular-nums;letter-spacing:.03em}
.professional-timer-top>b{font-size:.61rem;color:#65756d}
.professional-timer-track{height:5px;margin:9px 0 7px;overflow:hidden;border-radius:999px;background:#e2e8e3}
.professional-timer-track>span{display:block;height:100%;width:100%;border-radius:inherit;background:#477961;transition:width .9s linear}
.professional-timer-caption{font-size:.57rem;color:#818b86}
.professional-exam-timer.warning{border-color:#d9c38e;background:#fffdf6}
.professional-exam-timer.warning .professional-timer-track>span{background:#a78947}
.professional-exam-timer.warning .professional-timer-top strong{color:#806528}
.professional-exam-timer.danger{border-color:#deb1a9;background:#fff8f7;box-shadow:0 7px 22px rgba(143,68,57,.08)}
.professional-exam-timer.danger .professional-timer-track>span{background:#a44f43}
.professional-exam-timer.danger .professional-timer-top strong{color:#8e4339}
.exam-time-alert{display:flex;gap:10px;align-items:center;margin-bottom:12px;padding:11px 13px;border:1px solid #dcc68c;border-radius:10px;background:#fff8df;color:#6e5720}
.exam-time-alert strong,.exam-time-alert span{display:block}.exam-time-alert strong{font-size:.7rem}.exam-time-alert span{font-size:.62rem;color:#806d42}
.exam-time-alert.expired{border-color:#d8aaa2;background:#fff4f2;color:#873f35}
.result-time-expired{margin:12px 0;padding:11px 13px;border:1px solid #ddc38a;border-radius:10px;background:#fff8df}
.result-time-expired strong,.result-time-expired span{display:block}.result-time-expired strong{font-size:.69rem;color:#705821}.result-time-expired span{margin-top:2px;font-size:.62rem;color:#82704c}
.assessment-time-expired-admin{display:flex;gap:11px;align-items:center;margin:-2px 0 13px;padding:11px 13px;border:1px solid #ddc38a;border-radius:10px;background:#fff9e8}
.assessment-time-expired-admin strong,.assessment-time-expired-admin span{display:block}.assessment-time-expired-admin strong{font-size:.67rem;color:#705821}.assessment-time-expired-admin span{font-size:.61rem;color:#81724f}
@media(max-width:760px){
 .exam-head-tools{display:grid!important;grid-template-columns:1fr!important}
 .professional-exam-timer{min-width:0;width:100%;box-sizing:border-box}
 .professional-timer-top strong{font-size:1.55rem}
}

/* =========================================================
   v0.26.0 — Escola TUCTB Academic Experience 2.0
   ========================================================= */
.academic-next-actions{margin:18px 0 22px}.academic-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.academic-action-card{min-height:132px;padding:15px;border:1px solid #d9ded9;border-radius:14px;background:linear-gradient(145deg,#fff,#f6f9f7);text-decoration:none;box-shadow:0 8px 24px rgba(25,56,43,.05)}.academic-action-card>span,.academic-action-card>strong,.academic-action-card>small,.academic-action-card>b{display:block}.academic-action-card>span{font-size:.52rem;font-weight:950;letter-spacing:.09em;color:#917443}.academic-action-card>strong{margin-top:9px;font-size:.8rem;color:#25493a}.academic-action-card>small{margin-top:4px;min-height:30px;font-size:.6rem;line-height:1.45;color:#77837d}.academic-action-card>b{margin-top:12px;font-size:.6rem;color:#37634f}.academic-action-card.type-assessment{border-top:3px solid #8d7444}.academic-action-card.type-certificate{border-top:3px solid #3e7258}.academic-action-card.type-wait{border-top:3px solid #a68545}
.academic-overview-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 0 25px}.academic-overview-strip article{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #e0e2de;border-radius:11px;background:#fff}.academic-overview-strip article>span{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#edf4ef;color:#3d6b55;font-weight:900}.academic-overview-strip small,.academic-overview-strip strong{display:block}.academic-overview-strip small{font-size:.48rem;letter-spacing:.05em;color:#7e8983;font-weight:900}.academic-overview-strip strong{font-size:.88rem;color:#284b3c}
.academic-certificates-shelf{margin:24px 0}.academic-certificate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.academic-certificate-grid article{position:relative;padding:18px;border:1px solid #d8d3c6;border-radius:14px;background:linear-gradient(145deg,#fffefb,#f8f4e9);overflow:hidden}.academic-certificate-grid article:after{content:"◇";position:absolute;right:12px;top:5px;font-size:3.2rem;color:rgba(143,116,67,.1)}.academic-certificate-grid article>span{font-size:.5rem;font-weight:950;letter-spacing:.11em;color:#8c7346}.academic-certificate-grid h3{margin:8px 0 4px;font-size:.8rem;color:#33493f}.academic-certificate-grid small{font-size:.56rem;color:#83765c}.academic-certificate-grid article>div{display:flex;gap:10px;margin-top:14px}.academic-certificate-grid a{font-size:.59rem;font-weight:850;color:#315e4d}
.certificate-celebration.certificate-pending{border-color:#dbc995;background:#fff9e8}.certificate-celebration.certificate-pending>span{background:#f1e2b9;color:#755c22}
.academic-teacher-hero{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;margin-bottom:14px;padding:25px;border-radius:18px;background:linear-gradient(125deg,#173f35,#275b49);color:#fff;overflow:hidden}.academic-teacher-hero .eyebrow{color:#d6bd82}.academic-teacher-hero h1{margin:.15em 0;font-size:2rem;color:#fff}.academic-teacher-hero p{max-width:620px;margin:0;color:rgba(255,255,255,.7);font-size:.72rem}.academic-teacher-hero-mark{display:flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:120px;border:1px solid rgba(255,255,255,.15);border-radius:50%;background:rgba(255,255,255,.06)}.academic-teacher-hero-mark span,.academic-teacher-hero-mark small{font-size:.48rem;letter-spacing:.12em}.academic-teacher-hero-mark strong{font-size:1rem;color:#d9c28d}
.academic-teacher-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:18px}.academic-teacher-stats article{padding:13px;border:1px solid #dedfd9;border-radius:11px;background:#fff}.academic-teacher-stats small,.academic-teacher-stats strong,.academic-teacher-stats span{display:block}.academic-teacher-stats small{font-size:.49rem;font-weight:900;color:#808a84}.academic-teacher-stats strong{margin:3px 0;font-size:1.15rem;color:#2c5543}.academic-teacher-stats span{font-size:.55rem;color:#8a928e}
.academic-teacher-columns{display:grid;grid-template-columns:1fr 1.2fr;gap:14px}.teacher-course-stack,.teacher-student-stack{display:grid;gap:7px}.teacher-course-stack article,.teacher-student-stack>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border:1px solid #dfe1dc;border-radius:10px;background:#fff}.teacher-course-stack small,.teacher-course-stack h3,.teacher-student-stack strong,.teacher-student-stack small{display:block}.teacher-course-stack small{font-size:.51rem;color:#927746}.teacher-course-stack h3{margin:2px 0;font-size:.72rem;color:#334c40}.teacher-course-stack>article>strong{font-size:.59rem;color:#718078}.teacher-student-stack>a{text-decoration:none;color:#334c40}.teacher-student-stack strong{font-size:.68rem}.teacher-student-stack small{font-size:.55rem;color:#7d8782}.teacher-student-stack span{font-size:.7rem;font-weight:900;color:#3e6a55}
.academic-student-directory{display:grid;gap:7px}.academic-student-directory>a{display:grid;grid-template-columns:38px 1fr auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dee0db;border-radius:11px;background:#fff;text-decoration:none;color:#324a3f}.academic-student-avatar,.academic-profile-avatar{display:grid;place-items:center;border-radius:50%;background:#e7f0ea;color:#346049;font-weight:900}.academic-student-avatar{width:38px;height:38px}.academic-student-directory strong,.academic-student-directory small{display:block}.academic-student-directory strong{font-size:.69rem}.academic-student-directory small{font-size:.55rem;color:#808a85}.academic-student-directory> a>span{text-align:right}.academic-student-directory> a>span b{display:block;font-size:.72rem;color:#3e6a55}.academic-student-directory em{padding:5px 8px;border-radius:999px;background:#edf4ef;font-size:.53rem;font-style:normal;color:#416a56}
.academic-profile-hero{display:grid;grid-template-columns:70px 1fr auto;align-items:center;gap:16px;margin:12px 0;padding:20px;border-radius:15px;background:linear-gradient(125deg,#f8faf8,#eef4f0);border:1px solid #dbe2dc}.academic-profile-avatar{width:70px;height:70px;font-size:1.5rem}.academic-profile-hero h1{margin:2px 0;font-size:1.35rem;color:#2c4c3e}.academic-profile-hero p{margin:0;font-size:.65rem;color:#78847d}.academic-profile-hero aside{text-align:right}.academic-profile-hero aside strong,.academic-profile-hero aside span{display:block}.academic-profile-hero aside strong{font-size:1.5rem;color:#39664f}.academic-profile-hero aside span{font-size:.55rem;color:#7e8883}.academic-profile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.academic-profile-grid article{padding:12px;border:1px solid #dedfd9;border-radius:10px;background:#fff}.academic-profile-grid small,.academic-profile-grid strong{display:block}.academic-profile-grid small{font-size:.48rem;font-weight:900;color:#7f8984}.academic-profile-grid strong{margin-top:3px;font-size:.8rem;color:#315846}.academic-profile-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.academic-profile-row{display:grid;grid-template-columns:24px 1fr auto;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #ecece7}.academic-profile-row>span{font-weight:900;color:#48735e}.academic-profile-row strong,.academic-profile-row small{display:block}.academic-profile-row strong{font-size:.64rem;color:#334c40}.academic-profile-row small{font-size:.53rem;color:#818a85}.academic-profile-row em{font-size:.55rem;font-style:normal;color:#65756d}.academic-certificate-requirements{margin-top:12px;padding:14px;border:1px solid #dcc993;border-radius:11px;background:#fff9e7}.academic-certificate-requirements strong{font-size:.7rem;color:#735b24}.academic-certificate-requirements ul{margin:6px 0 0;padding-left:18px;font-size:.61rem;color:#806f49}
@media(max-width:900px){.academic-action-grid,.academic-overview-strip,.academic-teacher-stats{grid-template-columns:repeat(2,1fr)}.academic-teacher-columns,.academic-profile-columns{grid-template-columns:1fr}.academic-certificate-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.academic-action-grid,.academic-overview-strip,.academic-teacher-stats,.academic-certificate-grid,.academic-profile-grid{grid-template-columns:1fr}.academic-teacher-hero{grid-template-columns:1fr}.academic-teacher-hero-mark{display:none}.academic-student-directory>a{grid-template-columns:38px 1fr}.academic-student-directory> a>span,.academic-student-directory> a>em{grid-column:2;text-align:left;justify-self:start}.academic-profile-hero{grid-template-columns:55px 1fr}.academic-profile-avatar{width:55px;height:55px}.academic-profile-hero aside{grid-column:1/-1;text-align:left}}

/* =========================================================
   v0.27.0 — Analytics Educacional
   ========================================================= */
.edu-analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.edu-analytics-kpis article{padding:14px 15px;border:1px solid #dddeda;border-radius:12px;background:linear-gradient(145deg,#fff,#f8faf8)}.edu-analytics-kpis article.attention{border-color:#dbc78e;background:#fff9e9}.edu-analytics-kpis small,.edu-analytics-kpis strong,.edu-analytics-kpis span{display:block}.edu-analytics-kpis small{font-size:.49rem;letter-spacing:.07em;font-weight:950;color:#7b8780}.edu-analytics-kpis strong{margin:3px 0;font-size:1.28rem;color:#2e5946}.edu-analytics-kpis span{font-size:.56rem;color:#89918d}
.edu-analytics-main-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.7fr);gap:12px;margin-bottom:12px}.edu-evolution-panel,.edu-insights-panel{min-height:315px}.edu-month-chart{display:flex;align-items:flex-end;gap:10px;height:205px;padding:18px 7px 2px}.edu-month-col{display:flex;flex:1;min-width:0;height:100%;flex-direction:column;justify-content:flex-end;text-align:center}.edu-bars{display:flex;align-items:flex-end;justify-content:center;gap:3px;height:155px;border-bottom:1px solid #d9dcd8}.edu-bars i{display:block;width:min(19%,14px);min-height:4px;border-radius:5px 5px 1px 1px}.edu-bars i.enroll,.edu-chart-legend i.enroll{background:#3f7059}.edu-bars i.complete,.edu-chart-legend i.complete{background:#b39150}.edu-bars i.exam,.edu-chart-legend i.exam{background:#6c8297}.edu-month-col>strong{margin-top:7px;font-size:.59rem;color:#51645a}.edu-month-col>small{margin-top:2px;font-size:.49rem;color:#8a928e}.edu-chart-legend{display:flex;justify-content:center;gap:16px;margin-top:12px}.edu-chart-legend span{display:flex;align-items:center;gap:5px;font-size:.55rem;color:#76817b}.edu-chart-legend i{width:8px;height:8px;border-radius:2px}
.edu-insight-list{display:grid;gap:8px}.edu-insight-list article{display:grid;grid-template-columns:32px 1fr;gap:9px;padding:10px;border-radius:10px;background:#f5f7f4}.edu-insight-list article>span{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#e7eee9;color:#3d6a54;font-weight:950}.edu-insight-list article.attention>span{background:#f5e8c7;color:#7d6126}.edu-insight-list article.security>span{background:#f1e1df;color:#8b4940}.edu-insight-list strong{display:block;font-size:.65rem;color:#344b40}.edu-insight-list p{margin:2px 0 0!important;font-size:.57rem!important;line-height:1.45!important;color:#7c8681!important}
.edu-course-performance{margin-bottom:12px}.edu-inline-progress{display:flex;align-items:center;gap:8px;min-width:130px}.edu-inline-progress>span{display:block;width:86px;height:5px;overflow:hidden;border-radius:99px;background:#e2e7e3}.edu-inline-progress>span>i{display:block;height:100%;border-radius:inherit;background:#46745d}.edu-inline-progress>b{font-size:.57rem;color:#51675c}
.edu-analytics-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}.edu-risk-list{display:grid;gap:6px}.edu-risk-list article,.edu-risk-list>a{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:9px;border:1px solid #e3e3de;border-radius:9px;background:#fff;color:#354b40;text-decoration:none}.edu-risk-list>article>span,.edu-risk-list>a>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;font-size:.64rem;font-weight:950}.edu-risk-list .risk-high{background:#f5dfdc;color:#944b41}.edu-risk-list .risk-medium{background:#f6ebcd;color:#806529}.edu-risk-list .risk-low{background:#e5f0e9;color:#3b674f}.edu-risk-list strong,.edu-risk-list small{display:block}.edu-risk-list strong{font-size:.65rem}.edu-risk-list small{font-size:.54rem;color:#7e8882}.edu-risk-list b{font-size:.53rem;color:#7b8580}
.edu-hard-question-list{display:grid;gap:7px}.edu-hard-question-list article{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center;padding:9px;border-bottom:1px solid #ecece7}.edu-error-ring{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;border:4px solid #ead8d4;background:#fff}.edu-error-ring strong,.edu-error-ring small{display:block;text-align:center}.edu-error-ring strong{font-size:.64rem;color:#914c42}.edu-error-ring small{font-size:.43rem;color:#8a7772}.edu-hard-question-list>article>div:last-child>strong,.edu-hard-question-list>article>div:last-child>small{display:block}.edu-hard-question-list>article>div:last-child>strong{font-size:.62rem;line-height:1.35;color:#344b40}.edu-hard-question-list>article>div:last-child>small{margin-top:3px;font-size:.51rem;color:#828b86}
.teacher-analytics-card{padding:16px;border:1px solid #dcddd8;border-radius:13px;background:#fff}.teacher-version{margin-top:0}.teacher-course-analytics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.teacher-course-analytics-grid article{padding:12px;border:1px solid #e1e2dd;border-radius:10px;background:#fafbf8}.teacher-course-analytics-grid article>span,.teacher-course-analytics-grid article>h3,.teacher-course-analytics-grid article>small{display:block}.teacher-course-analytics-grid article>span{font-size:.5rem;color:#907546;font-weight:900}.teacher-course-analytics-grid h3{min-height:34px;margin:4px 0;font-size:.68rem;color:#334b40}.teacher-course-analytics-grid article>small{margin-top:7px;font-size:.52rem;color:#7e8882}.teacher-analytics-cta{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;margin:0 0 18px;padding:11px 13px;border:1px solid #d6e0d9;border-radius:11px;background:#f5faf6;color:#315745;text-decoration:none}.teacher-analytics-cta>span{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#deece3;color:#35624b}.teacher-analytics-cta strong,.teacher-analytics-cta small{display:block}.teacher-analytics-cta strong{font-size:.66rem}.teacher-analytics-cta small{font-size:.54rem;color:#7a867f}
@media(max-width:1050px){.edu-analytics-kpis{grid-template-columns:repeat(2,1fr)}.edu-analytics-main-grid,.edu-analytics-two-cols{grid-template-columns:1fr}.teacher-course-analytics-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.edu-analytics-kpis,.teacher-course-analytics-grid{grid-template-columns:1fr}.edu-month-chart{gap:4px;height:185px}.edu-bars{height:135px}.edu-chart-legend{flex-wrap:wrap}.edu-risk-list article,.edu-risk-list>a{grid-template-columns:38px 1fr}.edu-risk-list b{grid-column:2}.edu-inline-progress{min-width:105px}}

/* =========================================================
   v0.28.0 — Segurança de Conteúdo 2.0
   ========================================================= */
.secure-content-player{position:relative;overflow:hidden;background:#080b0a}
.secure-content-player video{display:block;width:100%;background:#080b0a}
.dynamic-watermark{position:absolute!important;z-index:5!important;max-width:46%;padding:6px 9px!important;border-radius:7px!important;background:rgba(12,26,21,.42)!important;border:1px solid rgba(255,255,255,.18)!important;color:rgba(255,255,255,.72)!important;font-size:.56rem!important;font-weight:850!important;letter-spacing:.03em!important;pointer-events:none!important;text-shadow:0 1px 3px rgba(0,0,0,.65)!important;transition:left .8s ease,top .8s ease,opacity .3s ease}
.school-content-security-badge{position:absolute;left:12px;bottom:12px;z-index:5;display:grid;grid-template-columns:28px 1fr;gap:7px;align-items:center;padding:7px 9px;border-radius:9px;background:rgba(12,27,22,.76);backdrop-filter:blur(6px);color:#fff;pointer-events:none}
.school-content-security-badge>span{display:grid;place-items:center;width:27px;height:27px;border-radius:8px;background:rgba(215,189,131,.18);color:#d7bd83}
.school-content-security-badge strong,.school-content-security-badge small{display:block}.school-content-security-badge strong{font-size:.57rem}.school-content-security-badge small{margin-top:1px;font-size:.47rem;color:rgba(255,255,255,.55)}
.school-secure-content-blocked{padding:22px;border:1px solid #dfc9a0;border-radius:13px;background:#fff8e9}.school-secure-content-blocked strong{display:block;color:#755b23}.school-secure-content-blocked p{margin:5px 0 0;color:#867350;font-size:.68rem}
.secure-materials a.private-material{border-left:3px solid #8b7243;background:#fffdf7}.secure-materials a.private-material>span{background:#f2e9d5;color:#80662c}
.content-security-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:13px}.content-security-kpis article{padding:14px;border:1px solid #dedfd9;border-radius:12px;background:#fff}.content-security-kpis article.attention{border-color:#dcc88f;background:#fff9ea}.content-security-kpis article.critical{border-color:#d8aaa3;background:#fff5f3}.content-security-kpis small,.content-security-kpis strong,.content-security-kpis span{display:block}.content-security-kpis small{font-size:.49rem;font-weight:950;letter-spacing:.07em;color:#7e8883}.content-security-kpis strong{margin:3px 0;font-size:1.2rem;color:#315b47}.content-security-kpis span{font-size:.55rem;color:#89918d}
.content-security-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:12px;margin-bottom:12px}.content-security-form label small{display:block;margin-top:3px;color:#858e89;font-size:.55rem}.content-active-sessions{display:grid;gap:6px}.content-active-sessions article{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:9px;border:1px solid #e2e3de;border-radius:9px;background:#fafbf8}.content-active-sessions strong,.content-active-sessions small{display:block}.content-active-sessions strong{font-size:.65rem;color:#344b40}.content-active-sessions small{font-size:.52rem;color:#818a85}
.content-security-events{margin-top:12px}.content-severity{display:inline-flex;padding:4px 6px;border-radius:999px;font-size:.48rem;font-weight:950}.content-severity.info{background:#e7f0ea;color:#3c6851}.content-severity.warning{background:#f6e9c9;color:#7b6027}.content-severity.critical{background:#f2dfdc;color:#91483e}
@media(max-width:900px){.content-security-kpis{grid-template-columns:repeat(2,1fr)}.content-security-grid{grid-template-columns:1fr}}
@media(max-width:620px){.content-security-kpis{grid-template-columns:1fr}.dynamic-watermark{max-width:70%;font-size:.48rem!important}.school-content-security-badge{display:none}}

/* =========================================================
   v0.29.0 — Comercial & Financeiro da Escola 2.0
   ========================================================= */
.commerce-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:13px}.commerce-kpis article{padding:14px;border:1px solid #dedfd9;border-radius:12px;background:#fff}.commerce-kpis small,.commerce-kpis strong,.commerce-kpis span{display:block}.commerce-kpis small{font-size:.49rem;font-weight:950;letter-spacing:.07em;color:#7f8984}.commerce-kpis strong{margin:3px 0;font-size:1.05rem;color:#315b47}.commerce-kpis span{font-size:.55rem;color:#89918d}
.commerce-main-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:12px;margin-bottom:12px}
.school-checkout-coupon{margin-bottom:12px;padding:12px;border:1px dashed #d7c28e;border-radius:10px;background:#fffaf0}.school-checkout-coupon>strong{display:block;margin-bottom:7px;font-size:.68rem;color:#705924}.school-checkout-coupon form{display:grid;grid-template-columns:1fr auto;gap:7px}.school-checkout-coupon input{min-width:0}
.school-checkout-pricing>div{display:flex;justify-content:space-between;gap:10px;padding:6px 0;font-size:.65rem}.school-checkout-pricing>div.discount{color:#3c6b53}.school-checkout-pricing>div.discount strong{color:#3c6b53}.school-checkout-pricing .school-checkout-total{margin-top:4px;padding-top:10px;border-top:1px solid #e2e1db}
.payment-refund-action summary{cursor:pointer;font-size:.58rem;font-weight:850;color:#8a554a}.payment-refund-action form{display:grid;gap:6px;margin-top:7px;min-width:190px}.payment-refund-action textarea{width:100%;box-sizing:border-box}.payment-refund-action label{font-size:.55rem;color:#6f7974}
@media(max-width:900px){.commerce-kpis{grid-template-columns:repeat(2,1fr)}.commerce-main-grid{grid-template-columns:1fr}}
@media(max-width:620px){.commerce-kpis{grid-template-columns:1fr}.school-checkout-coupon form{grid-template-columns:1fr}}

/* v0.30.0 — Gestão Acadêmica & Comercial Avançada */
.school-consumer-policy{display:grid;grid-template-columns:38px 1fr;gap:10px;margin:14px 0;padding:14px;border:1px solid #ddd2b7;border-radius:12px;background:#fffaf0}.school-consumer-policy>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#f0e5c8;color:#765f2c;font-weight:950}.school-consumer-policy strong,.school-consumer-policy small{display:block}.school-consumer-policy p{margin:4px 0;font-size:.62rem;line-height:1.55;color:#69746e}.school-consumer-policy small{font-size:.52rem;color:#8a8170}.school-withdrawal-window{margin-top:10px;padding:11px;border:1px solid #d5dfd7;border-radius:10px;background:#f5faf6}.school-withdrawal-window strong{font-size:.64rem;color:#37604c}.school-withdrawal-window p{font-size:.56rem;color:#78847d}.teacher-lesson-release-action{display:flex;align-items:center;gap:7px}.teacher-lesson-release-action form{margin:0}.teacher-lesson-release-action button{padding:5px 7px;font-size:.5rem}.student-subscription-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.student-subscription-grid article{padding:16px;border:1px solid #dcddd8;border-radius:13px;background:#fff}.student-subscription-grid h2{margin:8px 0 4px;font-size:.82rem;color:#314b3f}.student-subscription-grid strong{font-size:.72rem;color:#37624d}.student-subscription-grid p,.student-subscription-grid small{font-size:.57rem;color:#7c8781}.subscription-status{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:.48rem;font-weight:900;background:#e6f0e9;color:#3d6952}.subscription-status.overdue{background:#f5e4d9;color:#8b523d}
@media(max-width:800px){.student-subscription-grid{grid-template-columns:1fr}}

/* v0.31.0 — Auditoria Integral & Release Candidate */
.release-score{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:18px;border:1px solid #dcded8;border-radius:14px;background:#fff}.release-score span,.release-score strong,.release-score small{display:block}.release-score span{font-size:.5rem;font-weight:950;letter-spacing:.09em;color:#7d8982}.release-score strong{font-size:2rem;line-height:1;color:#315c47}.release-score small{margin-top:5px;font-size:.56rem;color:#7f8984}.release-score aside{padding:9px 12px;border-radius:999px;font-size:.58rem;font-weight:900}.release-score.ready aside{background:#e7f2ea;color:#37664e}.release-score.attention aside{background:#f7eadf;color:#8c5b43}.release-audit-group{margin-bottom:12px}.release-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.release-check-list article{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:center;padding:9px;border:1px solid #e1e2dd;border-radius:9px}.release-check-list article>span{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;font-weight:950}.release-check-list article.ok>span{background:#e8f2eb;color:#37634d}.release-check-list article.fail>span{background:#f6e6df;color:#8d5141}.release-check-list strong,.release-check-list small{display:block}.release-check-list strong{font-size:.6rem}.release-check-list small{margin-top:2px;font-size:.5rem;color:#818a85}.release-rc-note{padding:14px;border:1px solid #ddd3ba;border-radius:12px;background:#fffaf0}.release-rc-note strong{font-size:.68rem;color:#67542d}.release-rc-note p{margin:4px 0 0;font-size:.56rem;line-height:1.55;color:#75776f}.update-hero{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:13px;padding:17px;border-radius:13px;border:1px solid #dcddd8;background:#fff}.update-hero span,.update-hero strong{display:block}.update-hero span{font-size:.49rem;font-weight:950;letter-spacing:.08em;color:#829087}.update-hero strong{margin:3px 0;font-size:1rem;color:#345c49}.update-hero p{margin:0;font-size:.57rem;color:#7a8580}.update-hero>b{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#e7f2ea;color:#37664e}.migration-list{display:grid;gap:6px}.migration-list article{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #e4e4df;border-radius:8px}.migration-list article>span{font-size:.5rem;font-weight:950;color:#4d735f}.migration-list strong{font-size:.56rem}.migration-list small{display:block;font-size:.48rem;color:#8a928e}
@media(max-width:800px){.release-check-list{grid-template-columns:1fr}.release-score,.update-hero{align-items:flex-start;flex-direction:column}}
/* v0.31.1-RC2.1 — Experiência Institucional & Responsividade */
.public-hero-slider{padding:0;background:#efeade}
.home-slider-stage{position:relative;width:100%;height:clamp(560px,58vw,900px);min-height:0;overflow:hidden;background:#efeade}
.home-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .9s ease;pointer-events:none;isolation:isolate}
.home-slide:before{content:"";position:absolute;inset:-42px;z-index:-2;background-image:linear-gradient(rgba(247,244,236,.18),rgba(247,244,236,.18)),var(--home-slide-image);background-size:cover;background-position:center;filter:blur(26px);transform:scale(1.08);opacity:.48}
.home-slide:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(247,244,236,.18),rgba(247,244,236,.02) 42%,rgba(247,244,236,.16))}
.home-slide.is-active{opacity:1;pointer-events:auto}
.home-slide-media{position:relative;height:100%;width:auto;max-width:100%;aspect-ratio:3/2;overflow:hidden;box-shadow:0 0 0 1px rgba(23,63,53,.05),0 22px 70px rgba(25,45,37,.08)}
.home-slide-media>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.home-slide-quote{position:absolute;z-index:4;right:5.5%;bottom:17%;width:min(520px,44%);padding:24px 28px;border-radius:18px;background:rgba(247,244,236,.91);backdrop-filter:blur(12px);box-shadow:0 20px 60px rgba(20,45,36,.15);color:#173f35}
.home-slide-quote blockquote{margin:0;font-family:Georgia,serif;font-size:clamp(1.35rem,2.2vw,2.25rem);line-height:1.25}.home-slide-quote cite{display:block;margin-top:12px;font-style:normal;font-size:.78rem;font-weight:850;color:#806a3c}
.home-slider-actions{position:absolute;z-index:6;left:5.8%;bottom:24%;display:flex;align-items:center;gap:18px}
.home-hero-button{min-height:62px;padding:0 28px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;gap:12px;text-decoration:none;font-size:clamp(.78rem,1vw,1rem);font-weight:820;letter-spacing:.005em;box-sizing:border-box;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.home-hero-button:hover{transform:translateY(-2px)}
.home-hero-button-primary{background:#244b28;color:#fff;border:1px solid #244b28;box-shadow:0 12px 30px rgba(29,72,39,.14)}
.home-hero-button-primary:hover{background:#193d20;box-shadow:0 15px 34px rgba(29,72,39,.2)}
.home-hero-button-primary svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.home-hero-button-secondary{background:rgba(250,248,242,.92);color:#23442e;border:1.4px solid rgba(35,68,46,.72);backdrop-filter:blur(7px)}
.home-hero-button-secondary:hover{background:#fff}
.home-slider-controls{position:absolute;z-index:8;left:50%;bottom:2.5%;transform:translateX(-50%);display:flex;gap:9px;padding:8px 10px;border-radius:999px;background:rgba(16,47,39,.38);backdrop-filter:blur(8px)}
.home-slider-controls button{width:11px;height:11px;padding:0;border:1px solid #fff;border-radius:50%;background:transparent}.home-slider-controls button.is-active{background:#fff}
.first-visit-home{background:#faf8f2}.first-visit-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.first-visit-steps article{padding:24px;border:1px solid #ddd7ca;border-radius:17px;background:#fff}.first-visit-steps span{font-size:.67rem;font-weight:950;color:#aa8646}.first-visit-steps strong{display:block;margin:8px 0;font-size:1.1rem;color:#173f35}.first-visit-steps p{margin:0;font-size:.91rem;line-height:1.6;color:#65716b}.home-slide-admin-grid{display:grid;gap:8px;margin-bottom:16px}.home-slide-admin-grid article{display:grid;grid-template-columns:110px 1fr auto;gap:12px;align-items:center;padding:9px;border:1px solid #dedfd9;border-radius:11px}.home-slide-admin-grid img{width:110px;height:70px;object-fit:cover;border-radius:8px}.home-slide-admin-grid strong,.home-slide-admin-grid small{display:block}.home-slide-admin-grid small{margin-top:3px;color:#7e8983}.home-slide-editor{display:grid;gap:12px;padding-top:15px;border-top:1px solid #e2e2dc}
@media(max-width:800px){.public-menu-open .public-main-nav{top:70px;max-height:calc(100vh - 70px);padding-bottom:140px}.public-menu-open .public-header-actions{top:70px;bottom:auto;margin-top:392px}.home-slider-stage{height:calc(66.666vw + 4px);min-height:0;max-height:none}.home-slide-media{width:100%;height:auto;aspect-ratio:3/2;box-shadow:none}.home-slider-actions{left:5.5%;right:5.5%;bottom:23.2%;gap:9px}.home-hero-button{flex:1;min-width:0;min-height:44px;padding:0 12px;border-radius:9px;font-size:clamp(.58rem,2.5vw,.78rem);gap:7px}.home-hero-button-primary svg{width:17px;height:17px}.home-slide-quote{left:14px;right:14px;bottom:24%;width:auto;padding:18px}.first-visit-steps{grid-template-columns:1fr}.public-premium p,.gira-card-content p,.public-action-panel small{font-size:max(.92rem,15px)}.section-title-row>a,.text-link{min-height:44px;display:inline-flex;align-items:center}.home-slide-admin-grid article{grid-template-columns:82px 1fr}.home-slide-admin-grid img{width:82px;height:58px}.home-slide-admin-grid form{grid-column:1/-1}.home-slide-admin-grid button{width:100%}}
@media(max-width:500px){.public-brand-logo{width:44px;height:44px}.home-slider-actions{left:4.5%;right:4.5%;gap:6px}.home-hero-button{min-height:40px;padding:0 8px;font-size:clamp(.52rem,2.55vw,.68rem)}.home-hero-button-primary svg{width:15px;height:15px}.home-slider-controls{bottom:1.5%;padding:6px 8px}.home-slider-controls button{width:9px;height:9px}}
@media(prefers-reduced-motion:reduce){.home-slide{transition:none}}
@media(max-width:1100px){.public-menu-open .public-main-nav{padding-bottom:14px}.public-main-nav .public-header-actions{position:static!important;margin:8px 0 0!important;padding:14px 0 0!important;border-top:1px solid #ddd6ca;border-bottom:0!important;box-shadow:none!important;background:transparent!important}.public-menu-open .public-main-nav .public-header-actions{display:flex!important}}


/* v0.31.1-RC2.2 — Hotfix: remove resíduo visual ao lado dos botões do Hero */
.home-institutional-slide .hero-actions,
.home-institutional-slide .home-hero-actions,
.institutional-slide .hero-actions,
.institutional-slide .home-hero-actions {
    width: max-content;
    max-width: calc(100% - 32px);
    overflow: visible;
}

.home-institutional-slide .hero-actions > a:empty,
.home-institutional-slide .home-hero-actions > a:empty,
.institutional-slide .hero-actions > a:empty,
.institutional-slide .home-hero-actions > a:empty {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Garante que somente os dois CTAs oficiais componham a faixa do primeiro slide. */
.home-institutional-slide .hero-actions > *:nth-child(n+3),
.home-institutional-slide .home-hero-actions > *:nth-child(n+3),
.institutional-slide .hero-actions > *:nth-child(n+3),
.institutional-slide .home-hero-actions > *:nth-child(n+3) {
    display: none !important;
}


/* =========================================================
   v0.31.1-RC2.3 — Hotfix estrutural do CMS da Página Inicial
   Corrige o formulário principal que estava sendo renderizado
   como um terceiro item do grid e comprimido na coluna lateral.
   ========================================================= */
.content-studio-main{
    min-width:0 !important;
    width:100% !important;
    display:grid !important;
    gap:16px !important;
}
.content-studio-main > .content-editor-card,
.content-studio-main > .admin-cms-form,
.content-studio-main > .admin-cms-form > .content-editor-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
}
.content-studio-main > .admin-cms-form{
    display:grid !important;
    gap:16px !important;
    margin:0 !important;
}
.content-studio-main .admin-form-grid.two{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
.content-studio-main input,
.content-studio-main select,
.content-studio-main textarea{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    box-sizing:border-box !important;
}
.content-studio-main .content-editor-preview{
    width:100% !important;
    box-sizing:border-box !important;
}
.content-studio-main .home-slide-admin-grid{
    width:100% !important;
}
@media(max-width:1100px){
    .content-studio-layout{
        grid-template-columns:200px minmax(0,1fr) !important;
    }
}
@media(max-width:900px){
    .content-studio-layout{
        display:block !important;
    }
    .content-studio-sidebar{
        position:relative !important;
        top:auto !important;
        margin-bottom:14px !important;
    }
    .content-studio-sidebar nav{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .content-studio-main .admin-form-grid.two,
    .content-studio-main .content-action-fields{
        grid-template-columns:1fr !important;
    }
}
@media(max-width:560px){
    .content-studio-sidebar nav{
        grid-template-columns:1fr !important;
    }
    .content-editor-card{
        padding:16px !important;
    }
    .content-editor-card-head{
        grid-template-columns:38px minmax(0,1fr) !important;
    }
    .content-editor-card-head .content-editor-badge{
        grid-column:2 !important;
        justify-self:start !important;
    }
}


/* =========================================================
   v0.31.1-RC2.5 — Reserva na Minha TUCTB + QR Code único
   ========================================================= */
.qr-card{
    text-align:center !important;
}
.qr-frame{
    display:flex;
    justify-content:center;
    align-items:center;
    width:100%;
    margin:18px auto 12px;
}
.qr-box{
    display:flex !important;
    align-items:center;
    justify-content:center;
    width:242px !important;
    height:242px !important;
    min-width:242px !important;
    min-height:242px !important;
    padding:15px !important;
    margin:0 !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    background:#fff !important;
    border:1px solid #ddd9cc !important;
    border-radius:18px !important;
    box-shadow:0 8px 26px rgba(28,58,45,.08);
}
.qr-box canvas{
    display:block !important;
    width:210px !important;
    height:210px !important;
    max-width:210px !important;
    max-height:210px !important;
    margin:0 !important;
}
.qr-box img{
    display:none !important;
}
@media(max-width:420px){
    .qr-box{
        width:224px !important;
        height:224px !important;
        min-width:224px !important;
        min-height:224px !important;
        padding:12px !important;
    }
    .qr-box canvas{
        width:200px !important;
        height:200px !important;
    }
}


/* =========================================================
   v0.31.1-RC2.7 — Institucional Premium + Editor Visual
   ========================================================= */
.institutional-v2{
    --inst-ink:#123d32;
    --inst-gold:#a88745;
    --inst-paper:#fbfaf5;
    --inst-soft:#f0ede4;
}
.institutional-v2 .institutional-hero-v2{
    position:relative;
    overflow:hidden;
    padding:72px 0 66px;
    border-bottom:1px solid rgba(18,61,50,.10);
    background:
      radial-gradient(circle at 82% 18%,rgba(168,135,69,.12),transparent 28%),
      linear-gradient(135deg,#f8f5ec 0%,#f4f1e8 62%,#ece8dc 100%);
}
.institutional-v2 .institutional-hero-v2:before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background-image:linear-gradient(rgba(18,61,50,.025) 1px,transparent 1px),
                     linear-gradient(90deg,rgba(18,61,50,.025) 1px,transparent 1px);
    background-size:42px 42px;
    mask-image:linear-gradient(to bottom,black,transparent 80%);
}
.institutional-hero-grid-v2{
    position:relative;
    z-index:1;
    align-items:center!important;
    grid-template-columns:minmax(0,1.25fr) minmax(180px,.45fr)!important;
    min-height:280px;
}
.institutional-hero-copy{
    max-width:900px;
}
.institutional-hero-copy .eyebrow{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-bottom:14px;
    padding:7px 10px;
    border:1px solid rgba(168,135,69,.24);
    border-radius:999px;
    background:rgba(255,255,255,.55);
    font-size:.68rem;
    letter-spacing:.16em;
}
.institutional-hero-copy h1{
    max-width:980px;
    margin:0;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
    font-size:clamp(2.75rem,5.4vw,5.9rem);
    font-weight:820;
    letter-spacing:-.055em;
    line-height:.95;
    text-wrap:balance;
    color:var(--inst-ink);
}
.institutional-hero-copy>p{
    max-width:760px;
    margin:20px 0 0;
    font-size:clamp(1rem,1.3vw,1.2rem);
    line-height:1.75;
    color:#63766f;
}
.institutional-orbit{
    justify-self:end;
    width:138px!important;
    height:138px!important;
    border:1px solid rgba(168,135,69,.40)!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    background:radial-gradient(circle,#fffaf0 0 28%,transparent 29% 100%);
    box-shadow:0 22px 55px rgba(58,70,62,.08);
}
.institutional-orbit span{
    display:grid;
    place-items:center;
    width:68px;
    height:68px;
    border-radius:50%;
    color:var(--inst-gold);
    font-size:1.65rem;
    background:rgba(255,255,255,.78);
}
.institutional-reading-section{
    padding-top:56px!important;
    padding-bottom:76px!important;
}
.institutional-reading-layout{
    align-items:start!important;
    gap:42px!important;
    grid-template-columns:minmax(0,1fr) 300px!important;
}
.institutional-prose-card{
    position:relative;
    max-width:none!important;
    padding:clamp(28px,4vw,54px);
    border:1px solid rgba(18,61,50,.10);
    border-radius:28px;
    background:rgba(255,255,255,.72);
    box-shadow:0 24px 70px rgba(27,54,45,.07);
}
.institutional-prose-card:before{
    content:"";
    position:absolute;
    top:34px;
    left:0;
    width:4px;
    height:74px;
    border-radius:0 4px 4px 0;
    background:linear-gradient(var(--inst-gold),rgba(168,135,69,.2));
}
.institutional-v2 .public-prose,
.institutional-v2 .prose{
    color:#435c54;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
    font-size:1.03rem;
    line-height:1.92;
}
.institutional-v2 .public-prose p,
.institutional-v2 .prose p{margin:0 0 1.45em}
.institutional-v2 .public-prose h2,
.institutional-v2 .prose h2{
    margin:2.1em 0 .65em;
    font-size:clamp(1.65rem,2.4vw,2.45rem);
    line-height:1.1;
    letter-spacing:-.035em;
    color:var(--inst-ink);
}
.institutional-v2 .public-prose h2:first-child,
.institutional-v2 .prose h2:first-child{margin-top:0}
.institutional-v2 .public-prose h3,
.institutional-v2 .prose h3{
    margin:1.8em 0 .55em;
    font-size:1.26rem;
    line-height:1.25;
    color:#234f42;
}
.institutional-v2 .public-prose strong,
.institutional-v2 .prose strong{color:#173f35;font-weight:820}
.institutional-v2 .public-prose em,
.institutional-v2 .prose em{color:#5f6f68}
.institutional-v2 .public-prose ul,
.institutional-v2 .public-prose ol,
.institutional-v2 .prose ul,
.institutional-v2 .prose ol{
    margin:1.3em 0 1.6em;
    padding-left:1.35em;
}
.institutional-v2 .public-prose li,
.institutional-v2 .prose li{
    margin:.55em 0;
    padding-left:.35em;
}
.institutional-v2 .public-prose li::marker,
.institutional-v2 .prose li::marker{color:var(--inst-gold);font-weight:900}
.institutional-v2 .public-prose blockquote,
.institutional-v2 .prose blockquote{
    margin:2em 0;
    padding:22px 24px 22px 28px;
    border-left:3px solid var(--inst-gold);
    border-radius:0 18px 18px 0;
    background:linear-gradient(90deg,#f6f0e2,#fbfaf5);
    color:#36554a;
    font-family:Georgia,"Times New Roman",serif;
    font-size:1.2rem;
    line-height:1.7;
}
.institutional-v2 .public-prose a,
.institutional-v2 .prose a{
    color:#27654f;
    text-decoration-thickness:1px;
    text-underline-offset:3px;
    font-weight:750;
}
.institutional-v2 .public-prose hr,
.institutional-v2 .prose hr{
    width:90px;
    height:1px;
    margin:2.5em 0;
    border:0;
    background:linear-gradient(90deg,var(--inst-gold),transparent);
}
.institutional-side-card{
    position:sticky;
    top:104px;
    padding:26px!important;
    border:1px solid rgba(18,61,50,.10)!important;
    border-radius:22px!important;
    background:linear-gradient(160deg,#f3efe5,#ebe7dc)!important;
    box-shadow:0 18px 50px rgba(27,54,45,.06);
}
.institutional-side-card strong{font-size:1.18rem!important;letter-spacing:-.02em}
.umbanda-library-section .section-title-row h2{
    font-size:clamp(2rem,3.5vw,3.5rem);
    letter-spacing:-.045em;
}
.institutional-v2 .spiritual-content-grid{
    gap:16px!important;
}
.institutional-v2 .spiritual-content-card{
    position:relative;
    overflow:hidden;
    min-height:210px;
    padding:25px!important;
    border-radius:22px!important;
    border:1px solid rgba(18,61,50,.10)!important;
    background:linear-gradient(145deg,#fffdf8,#f4f1e9)!important;
    box-shadow:0 16px 44px rgba(25,58,47,.055);
    transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.institutional-v2 .spiritual-content-card:after{
    content:"";
    position:absolute;
    right:-42px;
    bottom:-52px;
    width:135px;
    height:135px;
    border:1px solid rgba(168,135,69,.20);
    border-radius:50%;
}
.institutional-v2 .spiritual-content-card:hover{
    transform:translateY(-4px);
    border-color:rgba(168,135,69,.35)!important;
    box-shadow:0 24px 58px rgba(25,58,47,.10);
}
.institutional-v2 .spiritual-content-card h3{
    font-size:1.32rem!important;
    letter-spacing:-.025em;
}
.institutional-v2 .spiritual-content-card p{
    font-size:.92rem!important;
    line-height:1.65!important;
}
.institutional-v2 .spiritual-index{
    display:grid!important;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:12px;
    background:#173f35;
    color:#d7bd83!important;
}

/* Editor visual administrativo */
.tuctb-rich-field{margin:18px 0}
.tuctb-rich-label{display:block;margin-bottom:8px;font-weight:850;color:#183e33}
.tuctb-rich-editor-shell{
    overflow:hidden;
    border:1px solid #d9ddd8;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 26px rgba(26,55,45,.045);
}
.tuctb-rich-toolbar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:5px;
    padding:8px;
    border-bottom:1px solid #e3e5e1;
    background:#f7f7f3;
}
.tuctb-rich-toolbar>span{
    width:1px;
    height:22px;
    margin:0 3px;
    background:#d9ddd8;
}
.tuctb-rich-toolbar button{
    width:auto!important;
    min-width:34px;
    min-height:34px;
    margin:0!important;
    padding:7px 9px!important;
    border:1px solid transparent!important;
    border-radius:8px!important;
    background:transparent!important;
    color:#27483d!important;
    box-shadow:none!important;
    font-size:.72rem!important;
    font-weight:800!important;
}
.tuctb-rich-toolbar button:hover{
    border-color:#d8ded9!important;
    background:#fff!important;
}
.tuctb-rich-editor{
    min-height:320px;
    max-height:620px;
    overflow:auto;
    padding:24px;
    outline:none;
    color:#40564f;
    font-size:.95rem;
    line-height:1.75;
}
.tuctb-rich-editor:focus{
    box-shadow:inset 0 0 0 2px rgba(40,99,77,.12);
}
.tuctb-rich-editor h2{font-size:1.55rem;color:#173f35}
.tuctb-rich-editor h3{font-size:1.15rem;color:#295244}
.tuctb-rich-editor blockquote{
    margin:18px 0;
    padding:14px 18px;
    border-left:3px solid #a88745;
    background:#fbf7ed;
}
.tuctb-rich-source{
    position:absolute!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
    pointer-events:none!important;
}
.tuctb-rich-help{
    display:block;
    margin-top:7px;
    color:#7c8882;
    font-size:.56rem;
    line-height:1.5;
}
.content-editor-page-link{align-self:center}

/* Responsividade institucional */
@media(max-width:900px){
    .institutional-hero-grid-v2{
        grid-template-columns:1fr!important;
        min-height:auto;
    }
    .institutional-orbit{
        display:none!important;
    }
    .institutional-reading-layout{
        grid-template-columns:1fr!important;
        gap:22px!important;
    }
    .institutional-side-card{
        position:relative;
        top:auto;
    }
    .institutional-v2 .institutional-hero-v2{
        padding:52px 0 48px;
    }
}
@media(max-width:620px){
    .institutional-hero-copy h1{
        font-size:clamp(2.35rem,12vw,3.7rem);
        line-height:1;
    }
    .institutional-prose-card{
        padding:24px 20px;
        border-radius:20px;
    }
    .institutional-v2 .public-prose,
    .institutional-v2 .prose{
        font-size:.98rem;
        line-height:1.82;
    }
    .tuctb-rich-toolbar{gap:3px}
    .tuctb-rich-toolbar>span{display:none}
    .tuctb-rich-editor{min-height:280px;padding:18px}
}

/* =========================================================
   v0.31.1-RC2.8 — Instagram + Google Maps
   ========================================================= */
.public-footer-contact-links{display:grid;gap:6px;margin-top:9px}.public-footer-contact-links a{display:flex;align-items:center;gap:7px;width:max-content;max-width:100%;font-size:.58rem}.public-footer-contact-links a span{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:rgba(255,255,255,.08)}
.home-location-ribbon a{display:inline-block;margin-top:5px;font-size:.55rem;font-weight:850;color:inherit;text-decoration:none;opacity:.84}.home-location-ribbon a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
.contact-premium-section{padding-top:46px!important}.contact-channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.contact-channel-card{position:relative;overflow:hidden;padding:24px;border:1px solid rgba(18,61,50,.10);border-radius:22px;background:linear-gradient(145deg,#fffdf8,#f2eee4);box-shadow:0 16px 44px rgba(25,58,47,.055)}.contact-channel-card:after{content:"";position:absolute;right:-40px;bottom:-46px;width:128px;height:128px;border:1px solid rgba(168,135,69,.18);border-radius:50%}.contact-channel-icon{display:grid;place-items:center;width:42px;height:42px;margin-bottom:15px;border-radius:13px;background:#173f35;color:#d7bd83;font-size:1rem}.contact-channel-card>small{font-size:.52rem;font-weight:950;letter-spacing:.12em;color:#997a3f}.contact-channel-card h2{margin:5px 0 8px;font-size:1.35rem;letter-spacing:-.025em;color:#173f35}.contact-channel-card p{max-width:520px;margin:0 0 15px;font-size:.72rem;line-height:1.65;color:#66746e}.contact-form-panel{display:grid;grid-template-columns:minmax(240px,.48fr) minmax(0,1.52fr);gap:18px;align-items:start;margin-top:18px;padding:20px;border:1px solid rgba(18,61,50,.09);border-radius:24px;background:#f7f5ee}.contact-form-intro{padding:16px 10px}.contact-form-intro h2{margin:7px 0;font-size:1.7rem;color:#173f35}.contact-form-intro p{font-size:.7rem;line-height:1.6;color:#718079}.contact-modern-form{margin:0!important;background:#fff!important}
@media(max-width:800px){.contact-channel-grid,.contact-form-panel{grid-template-columns:1fr}.contact-form-panel{padding:14px}.public-footer-contact-links a{width:auto}}

/* v0.31.1-RC2.9 — ícones reconhecíveis Instagram / localização */
.contact-service-svg{display:block;width:21px;height:21px}
.contact-channel-icon .contact-service-svg{width:22px;height:22px}
.footer-service-icon{display:grid!important;place-items:center;width:24px!important;height:24px!important;flex:0 0 24px}
.footer-service-icon .contact-service-svg{width:15px;height:15px}

/* =========================================================
   v0.31.1-RC2.10 — Colagem formatada no CMS
   ========================================================= */
.rich-paste-status{
    display:inline-flex;
    align-items:center;
    margin-left:8px;
    padding:3px 7px;
    border-radius:999px;
    background:#e9f3ec;
    color:#37644e;
    font-weight:850;
    white-space:nowrap;
}
.content-studio-main .tuctb-rich-editor{
    min-height:150px;
    max-height:340px;
}
.content-studio-main #hero .tuctb-rich-editor{
    min-height:130px;
}
.home-rich-copy{
    color:inherit;
    font:inherit;
    line-height:inherit;
}
.home-rich-copy p{
    margin:0 0 .8em;
}
.home-rich-copy p:last-child{
    margin-bottom:0;
}
.home-rich-copy strong{
    font-weight:850;
    color:inherit;
}
.home-rich-copy em{
    color:inherit;
}
.home-rich-copy ul,
.home-rich-copy ol{
    margin:.65em 0 .85em;
    padding-left:1.25em;
}
.home-rich-copy blockquote{
    margin:.8em 0;
    padding-left:14px;
    border-left:2px solid currentColor;
    opacity:.9;
}
.home-rich-copy h2,
.home-rich-copy h3{
    margin:.7em 0 .35em;
    color:inherit;
    line-height:1.2;
}
.home-rich-copy h2{font-size:1.2em}
.home-rich-copy h3{font-size:1.06em}
.home-rich-copy-dark,
.home-rich-copy-dark a{
    color:inherit;
}
@media(max-width:620px){
    .rich-paste-status{
        display:flex;
        width:max-content;
        margin:5px 0 0;
    }
}

/* =========================================================
   v0.31.1-RC2.11 — Frequência configurável ERP → Portal
   ========================================================= */
.integration-sync-head{align-items:flex-start!important}
.integration-sync-config-panel{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:end;
    margin:16px 0;
    padding:16px;
    border:1px solid #dde2dd;
    border-radius:14px;
    background:linear-gradient(145deg,#f8faf7,#f1f5f1);
}
.integration-sync-config-panel>div>span,
.integration-sync-config-panel>div>strong,
.integration-sync-config-panel>div>small{display:block}
.integration-sync-config-panel>div>span{
    margin-bottom:5px;
    font-size:.5rem;
    font-weight:950;
    letter-spacing:.09em;
    color:#7a887f;
}
.integration-sync-config-panel>div>strong{
    font-size:.72rem;
    color:#2f5142;
}
.integration-sync-config-panel>div>small{
    margin-top:4px;
    max-width:720px;
    font-size:.55rem;
    line-height:1.45;
    color:#7d8982;
}
.integration-interval-form{
    display:flex;
    gap:8px;
    align-items:end;
}
.integration-interval-form label{
    min-width:210px;
    margin:0;
    font-size:.56rem;
}
.integration-interval-form select{
    margin-top:5px;
}
.integration-schedule-grid-v2{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.integration-sync-status-box{
    position:relative;
}
.integration-sync-status-box.status-success strong{color:#35654d}
.integration-sync-status-box.status-warning strong{color:#8c6a2d}
.integration-sync-status-box.status-error strong{color:#914b42}
.integration-sync-status-box.status-running strong{color:#466783}
.integration-last-result{
    margin-top:12px;
    padding:11px 13px;
    border:1px solid #e1e4df;
    border-radius:10px;
    background:#fbfcfa;
}
.integration-last-result span{
    display:block;
    margin-bottom:3px;
    font-size:.48rem;
    font-weight:950;
    letter-spacing:.08em;
    color:#839087;
}
.integration-last-result p{
    margin:0!important;
    font-size:.57rem!important;
    line-height:1.45!important;
    color:#65736c!important;
}
@media(max-width:900px){
    .integration-sync-config-panel{
        grid-template-columns:1fr;
        align-items:start;
    }
    .integration-interval-form{
        align-items:stretch;
        flex-direction:column;
    }
    .integration-interval-form label{min-width:0}
    .integration-schedule-grid-v2{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}
@media(max-width:560px){
    .integration-schedule-grid-v2{
        grid-template-columns:1fr!important;
    }
}

/* v0.31.1-RC2.14 — Central de Giras focada nas atividades atuais */
.gira-active-view-note{
    display:flex;
    align-items:center;
    gap:10px;
    margin:0 0 12px;
    padding:10px 12px;
    border:1px solid #dce6df;
    border-radius:11px;
    background:#f5faf6;
}
.gira-active-view-note>span{
    display:grid;
    place-items:center;
    width:27px;
    height:27px;
    flex:0 0 27px;
    border-radius:8px;
    background:#e1efe5;
    color:#35644c;
    font-weight:950;
}
.gira-active-view-note strong,
.gira-active-view-note small{display:block}
.gira-active-view-note strong{font-size:.6rem;color:#365748}
.gira-active-view-note small{margin-top:2px;font-size:.51rem;line-height:1.4;color:#7b8781}

/* v0.31.1-RC2.15 — cancelamento administrativo de agendamento */
.appointment-v2-status-actions{
    display:grid;
    gap:7px;
    justify-items:start;
    min-width:145px;
}
.appointment-admin-cancel{
    width:100%;
}
.appointment-admin-cancel summary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:32px;
    padding:6px 10px;
    border:1px solid #e1c9c4;
    border-radius:8px;
    background:#fff8f6;
    color:#8a4d43;
    font-size:.55rem;
    font-weight:900;
    cursor:pointer;
    list-style:none;
}
.appointment-admin-cancel summary::-webkit-details-marker{display:none}
.appointment-admin-cancel[open] summary{margin-bottom:7px}
.appointment-admin-cancel form{
    width:min(300px,72vw);
    padding:12px;
    border:1px solid #ead8d3;
    border-radius:11px;
    background:#fffaf8;
    box-shadow:0 14px 34px rgba(80,48,40,.08);
}
.appointment-admin-cancel label{
    margin:0;
    font-size:.56rem;
    font-weight:850;
}
.appointment-admin-cancel label span{
    font-weight:500;
    color:#8a908d;
}
.appointment-admin-cancel input{
    width:100%;
    margin-top:5px;
}
.appointment-admin-cancel small{
    display:block;
    margin:7px 0 9px;
    font-size:.5rem;
    line-height:1.4;
    color:#7d8782;
}
.appointment-admin-cancel button{
    width:100%;
}
@media(max-width:760px){
    .appointment-v2-status-actions{min-width:0}
    .appointment-admin-cancel form{width:100%}
}


/* =========================================================
   v0.31.1-RC2.17 — Página de Gira com identidade institucional
   ========================================================= */
.gira-public-v2{
    --inst-ink:#123d32;
    --inst-gold:#a88745;
    --inst-paper:#fbfaf5;
    --inst-soft:#f0ede4;
}
.gira-public-main{
    min-height:60vh;
}
.gira-hero-v2{
    padding-top:64px!important;
    padding-bottom:58px!important;
}
.gira-hero-copy{
    max-width:980px;
}
.gira-back-link{
    display:inline-flex;
    align-items:center;
    margin-bottom:18px;
    color:#557168;
    font-size:.78rem;
    font-weight:750;
    text-decoration:none;
}
.gira-back-link:hover{
    color:#1c5644;
}
.gira-hero-copy .eyebrow{
    margin-bottom:16px!important;
}
.gira-hero-meta{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:22px;
}
.gira-hero-meta>span{
    display:grid;
    gap:3px;
    min-width:150px;
    padding:12px 15px;
    border:1px solid rgba(18,61,50,.10);
    border-radius:14px;
    background:rgba(255,255,255,.60);
    box-shadow:0 10px 28px rgba(27,54,45,.045);
}
.gira-hero-meta b{
    font-size:.92rem;
    letter-spacing:-.01em;
    color:#173f35;
}
.gira-hero-meta small{
    font-size:.62rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.09em;
    color:#87928d;
}
.gira-hero-v2 .gira-public-description{
    max-width:820px;
    margin-top:24px;
    color:#536a62;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
    font-size:1.02rem;
    line-height:1.82;
}
.gira-hero-v2 .gira-public-description p{
    margin:0 0 1em;
}
.gira-hero-v2 .gira-public-description p:last-child{
    margin-bottom:0;
}
.gira-hero-v2 .gira-public-description strong{
    color:#173f35;
    font-weight:820;
}
.gira-content-section{
    padding:52px 0 76px;
    background:
        radial-gradient(circle at 8% 16%,rgba(168,135,69,.055),transparent 28%),
        #fbfaf6;
}
.gira-content-shell{
    display:grid;
    gap:22px;
    max-width:1160px;
}
.gira-premium-card{
    position:relative;
    overflow:hidden;
    margin:0!important;
    padding:clamp(24px,3vw,38px)!important;
    border:1px solid rgba(18,61,50,.10)!important;
    border-radius:24px!important;
    background:rgba(255,255,255,.82)!important;
    box-shadow:0 22px 60px rgba(27,54,45,.065)!important;
}
.gira-premium-card:before{
    content:"";
    position:absolute;
    top:28px;
    left:0;
    width:4px;
    height:58px;
    border-radius:0 4px 4px 0;
    background:linear-gradient(var(--inst-gold),rgba(168,135,69,.18));
}
.gira-premium-card>h2{
    margin:0 0 12px!important;
    color:#173f35!important;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
    font-size:clamp(1.7rem,2.8vw,2.45rem)!important;
    font-weight:820!important;
    letter-spacing:-.04em!important;
    line-height:1.08!important;
}
.gira-premium-card>h3,
.gira-premium-card h3{
    color:#234f42!important;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
    letter-spacing:-.025em;
}
.gira-premium-card p,
.gira-premium-card label,
.gira-premium-card input,
.gira-premium-card select,
.gira-premium-card button{
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.public-attendance-intro.rich-public-text{
    max-width:900px;
    margin:0 0 24px;
    color:#516860;
    font-size:1rem;
    line-height:1.82;
}
.public-attendance-intro.rich-public-text p{
    margin:0 0 1em;
}
.public-attendance-intro.rich-public-text strong{
    color:#173f35;
}
.public-blocks{
    gap:12px!important;
}
.public-block-availability{
    padding:17px 18px!important;
    border:1px solid rgba(18,61,50,.09)!important;
    border-radius:16px!important;
    background:linear-gradient(145deg,#fbfaf6,#f3f0e8)!important;
}
.public-block-name strong{
    color:#234f42!important;
    font-size:1rem!important;
    letter-spacing:-.015em;
}
.public-vacancy-count{
    display:flex!important;
    align-items:baseline!important;
    gap:6px!important;
}
.public-vacancy-count strong{
    color:#173f35!important;
    font-size:1.55rem!important;
    letter-spacing:-.035em;
}
.public-vacancy-count span{
    color:#738078!important;
    font-size:.76rem!important;
}
.booking-card>p.muted{
    max-width:850px;
    margin-bottom:22px!important;
    color:#6d7d76!important;
    font-size:.9rem!important;
    line-height:1.7!important;
}
.booking-card .grid{
    gap:13px!important;
}
.booking-card label{
    color:#365449!important;
    font-size:.8rem!important;
    font-weight:760!important;
}
.booking-card input,
.booking-card select{
    min-height:48px!important;
    border:1px solid #d9dfda!important;
    border-radius:11px!important;
    background:#fff!important;
    font-size:.92rem!important;
}
.booking-block-selection{
    margin-top:24px!important;
    display:grid!important;
    gap:13px!important;
}
.booking-option{
    border:1px solid rgba(18,61,50,.10)!important;
    border-radius:18px!important;
    background:#f8f7f2!important;
    padding:20px!important;
}
.booking-option.required-block{
    background:linear-gradient(145deg,#f4f7f2,#eef3ed)!important;
    border-color:rgba(39,101,79,.16)!important;
}
.booking-option .eyebrow{
    color:#8e7139!important;
    letter-spacing:.11em!important;
}
.booking-option h3{
    margin-top:4px!important;
    font-size:1.18rem!important;
}
.availability-pill{
    border-radius:999px!important;
    padding:7px 10px!important;
    background:#e8f2eb!important;
    color:#35644c!important;
    font-size:.72rem!important;
    font-weight:850!important;
}
.medium-choice{
    margin-top:14px!important;
}
.privacy-check{
    margin-top:20px!important;
    padding:14px 16px!important;
    border:1px solid #e0e4df;
    border-radius:12px;
    background:#fbfbf8;
    line-height:1.5;
}
.booking-submit{
    min-height:50px!important;
    margin-top:16px!important;
    padding:0 22px!important;
    border-radius:11px!important;
    background:#173f35!important;
    font-size:.82rem!important;
    font-weight:900!important;
    letter-spacing:.04em!important;
}
.booking-submit:hover{
    background:#214f40!important;
}
.gira-state-card{
    min-height:170px;
}
.gira-state-card>p{
    max-width:850px;
    color:#60736b!important;
    font-size:1rem!important;
    line-height:1.75!important;
}
.gira-state-card hr{
    margin:24px 0!important;
    border:0!important;
    border-top:1px solid #e2e4de!important;
}
.gira-public-v2 .rich-public-text h2{
    margin:1.5em 0 .5em;
    color:#173f35;
    font-size:1.55rem;
    letter-spacing:-.03em;
}
.gira-public-v2 .rich-public-text h3{
    margin:1.35em 0 .45em;
    color:#234f42;
    font-size:1.2rem;
}
.gira-public-v2 .rich-public-text ul,
.gira-public-v2 .rich-public-text ol{
    padding-left:1.35em;
}
.gira-public-v2 .rich-public-text li{
    margin:.45em 0;
}
.gira-public-v2 .rich-public-text blockquote{
    margin:1.5em 0;
    padding:18px 20px;
    border-left:3px solid var(--inst-gold);
    border-radius:0 14px 14px 0;
    background:#f7f2e7;
    color:#3f5c51;
}
@media(max-width:900px){
    .gira-hero-v2{
        padding-top:48px!important;
        padding-bottom:44px!important;
    }
    .gira-content-section{
        padding:34px 0 58px;
    }
}
@media(max-width:620px){
    .gira-hero-meta{
        display:grid;
        grid-template-columns:1fr 1fr;
    }
    .gira-hero-meta>span{
        min-width:0;
        padding:11px 12px;
    }
    .gira-premium-card{
        padding:22px 18px!important;
        border-radius:19px!important;
    }
    .public-block-availability{
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        gap:12px!important;
    }
    .booking-option{
        padding:16px!important;
    }
    .option-head{
        align-items:flex-start!important;
        gap:10px!important;
    }
}


/* =========================================================
   v0.31.1-RC2.18 — Formulário de agendamento refinado
   Corrige o layout em colunas herdado e elimina áreas vazias.
   ========================================================= */
.gira-public-v2 .booking-card-v2{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    overflow:visible!important;
    padding:0!important;
    background:#fff!important;
}
.gira-public-v2 .booking-card-v2:before{
    display:none!important;
}
.booking-card-head-v2{
    position:relative;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:28px!important;
    width:100%!important;
    padding:30px 34px 27px!important;
    border-bottom:1px solid rgba(18,61,50,.09);
    background:
        radial-gradient(circle at 92% 10%,rgba(168,135,69,.10),transparent 26%),
        linear-gradient(135deg,#fbfaf6,#f5f3eb);
    box-sizing:border-box;
}
.booking-card-head-v2>div:first-child{
    min-width:0;
    max-width:800px;
}
.booking-card-head-v2 .eyebrow{
    display:block;
    margin-bottom:7px;
    color:#997a3f!important;
    font-size:.68rem!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
}
.booking-card-head-v2 h2{
    margin:0!important;
    color:#173f35!important;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
    font-size:clamp(1.8rem,3vw,2.55rem)!important;
    font-weight:830!important;
    letter-spacing:-.045em!important;
    line-height:1.05!important;
}
.booking-card-head-v2 p{
    max-width:720px;
    margin:10px 0 0!important;
    color:#687a72!important;
    font-size:.91rem!important;
    line-height:1.7!important;
}
.booking-card-head-mark{
    display:grid;
    place-items:center;
    width:62px;
    height:62px;
    flex:0 0 62px;
    border:1px solid rgba(168,135,69,.28);
    border-radius:50%;
    background:rgba(255,255,255,.72);
    color:#a88745;
    font-size:1.25rem;
}
.gira-public-v2 .booking-form-v2{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:20px!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:28px 34px 34px!important;
    box-sizing:border-box!important;
}
.booking-form-v2 fieldset{
    display:block!important;
    min-width:0!important;
    width:100%!important;
    margin:0!important;
    padding:22px!important;
    border:1px solid rgba(18,61,50,.09)!important;
    border-radius:18px!important;
    background:#fbfbf8!important;
    box-sizing:border-box!important;
}
.booking-form-v2 fieldset legend{
    display:flex!important;
    align-items:center!important;
    gap:11px!important;
    width:auto!important;
    margin:0 0 18px!important;
    padding:0 8px 0 0!important;
    color:#173f35!important;
    background:#fbfbf8!important;
}
.booking-form-v2 fieldset legend>span{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    flex:0 0 34px;
    border-radius:10px;
    background:#173f35;
    color:#d9c18a;
    font-size:.68rem;
    font-weight:900;
}
.booking-form-v2 fieldset legend div{
    display:grid;
    gap:1px;
}
.booking-form-v2 fieldset legend strong{
    font-size:.92rem;
    letter-spacing:-.015em;
}
.booking-form-v2 fieldset legend small{
    color:#809089;
    font-size:.67rem;
    font-weight:500;
}
.booking-personal-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
}
.booking-personal-grid label{
    display:block!important;
    min-width:0!important;
    margin:0!important;
}
.booking-personal-grid input{
    width:100%!important;
    box-sizing:border-box!important;
}
.field-optional{
    color:#87938d;
    font-size:.72em;
    font-weight:600;
}
.booking-service-section .booking-block-selection{
    margin:0!important;
}
.booking-service-section .booking-option{
    box-shadow:0 8px 24px rgba(29,58,48,.035);
}
.booking-confirmation-panel{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(230px,320px)!important;
    gap:18px!important;
    align-items:center!important;
    width:100%!important;
    padding:20px 22px!important;
    border:1px solid rgba(18,61,50,.09);
    border-radius:18px;
    background:linear-gradient(135deg,#f7f8f4,#f0f4ef);
    box-sizing:border-box!important;
}
.gira-public-v2 .booking-confirmation-panel .privacy-check{
    display:flex!important;
    align-items:flex-start!important;
    gap:11px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    color:#3d574d!important;
    font-size:.79rem!important;
    line-height:1.5!important;
}
.booking-confirmation-panel .privacy-check input{
    width:17px!important;
    min-width:17px!important;
    height:17px!important;
    min-height:17px!important;
    margin:2px 0 0!important;
    accent-color:#1c5945;
}
.gira-public-v2 .booking-confirmation-panel .booking-submit{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
    width:100%!important;
    min-height:52px!important;
    margin:0!important;
    padding:0 18px 0 20px!important;
    border-radius:12px!important;
    border:0!important;
    box-shadow:0 10px 24px rgba(23,63,53,.14);
    text-transform:none!important;
    letter-spacing:0!important;
    font-size:.86rem!important;
}
.booking-confirmation-panel .booking-submit b{
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:8px;
    background:rgba(255,255,255,.12);
    font-size:1rem;
}
@media(max-width:900px){
    .booking-personal-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .booking-personal-grid label:last-child{
        grid-column:1/-1;
    }
}
@media(max-width:700px){
    .booking-card-head-v2{
        padding:24px 20px 22px!important;
    }
    .booking-card-head-mark{
        display:none;
    }
    .gira-public-v2 .booking-form-v2{
        padding:20px!important;
    }
    .booking-form-v2 fieldset{
        padding:18px 15px!important;
    }
    .booking-personal-grid{
        grid-template-columns:1fr!important;
    }
    .booking-personal-grid label:last-child{
        grid-column:auto;
    }
    .booking-confirmation-panel{
        grid-template-columns:1fr!important;
        padding:17px!important;
    }
}


/* =========================================================
   v0.31.1-RC2.19 — edição de capacidade por médium no bloco
   ========================================================= */
.capacity-value-cell{
    display:grid;
    gap:2px;
}
.capacity-value-cell strong{
    color:#2e4e40;
}
.capacity-value-cell small{
    color:#849089;
    font-size:.52rem;
}
.capacity-medium-actions{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    gap:6px;
}
.capacity-medium-actions>form{
    margin:0;
}
.capacity-edit-details{
    position:relative;
}
.capacity-edit-details summary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:6px 9px;
    border:1px solid #cad8cf;
    border-radius:8px;
    background:#f5faf6;
    color:#35614d;
    font-size:.54rem;
    font-weight:900;
    cursor:pointer;
    list-style:none;
    white-space:nowrap;
}
.capacity-edit-details summary::-webkit-details-marker{
    display:none;
}
.capacity-edit-details[open] summary{
    margin-bottom:6px;
}
.capacity-edit-details form{
    position:absolute;
    right:0;
    z-index:20;
    width:260px;
    padding:12px;
    border:1px solid #d8ddd8;
    border-radius:11px;
    background:#fff;
    box-shadow:0 16px 36px rgba(27,54,45,.13);
}
.capacity-edit-details label{
    margin:0!important;
    font-size:.57rem!important;
}
.capacity-edit-details input{
    width:100%!important;
    box-sizing:border-box;
}
.capacity-edit-details small{
    display:block;
    margin:7px 0 9px;
    color:#7c8781;
    font-size:.5rem;
    line-height:1.45;
}
.capacity-edit-details button{
    width:100%;
}
@media(max-width:760px){
    .capacity-medium-table{
        min-width:860px!important;
    }
    .capacity-edit-details form{
        left:0;
        right:auto;
    }
}


/* =========================================================
   v0.31.1-RC2.21 — remoção segura de médium nos Perfis
   ========================================================= */
.medium-profile-head-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:8px;
    margin-left:auto;
}
.medium-profile-head-actions form{margin:0}
.medium-profile-delete-btn{
    min-height:32px!important;
    padding:6px 10px!important;
    font-size:.54rem!important;
    white-space:nowrap;
}
@media(max-width:720px){
    .medium-profile-head{
        flex-wrap:wrap;
    }
    .medium-profile-head-actions{
        width:100%;
        justify-content:flex-start;
        margin:8px 0 0;
    }
}


/* =========================================================
   v0.31.1-RC2.22 — leitura de mensagens dos formulários
   ========================================================= */
.relationship-message-row{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto auto;
    align-items:center;
    gap:12px;
    padding:12px 0;
    border-bottom:1px solid #eceeea;
    color:inherit;
    text-decoration:none;
    transition:background .18s ease,transform .18s ease;
}
.relationship-message-row:last-child{border-bottom:0}
.relationship-message-row:hover{
    margin-left:-8px;
    margin-right:-8px;
    padding-left:8px;
    padding-right:8px;
    border-radius:10px;
    background:#f7f9f6;
}
.relationship-message-row.is-unread{
    position:relative;
}
.relationship-message-row.is-unread:before{
    content:"";
    position:absolute;
    left:-8px;
    width:3px;
    height:38px;
    border-radius:3px;
    background:#b18c45;
}
.relationship-message-title{
    display:flex;
    align-items:center;
    gap:7px;
}
.relationship-unread-badge,
.relationship-read-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:19px;
    padding:3px 6px;
    border-radius:999px;
    font-size:.44rem;
    font-weight:950;
    letter-spacing:.08em;
}
.relationship-unread-badge{
    background:#f6ead2;
    color:#8b692d;
}
.relationship-read-badge{
    background:#e8f1eb;
    color:#426854;
}
.relationship-read-badge.large{
    min-height:28px;
    padding:6px 10px;
    font-size:.53rem;
}
.relationship-message-row.is-read{
    opacity:.82;
}
.relationship-open-arrow{
    color:#779087;
    font-size:.85rem;
    font-weight:900;
}
.relationship-back-link{
    display:inline-flex;
    margin-bottom:12px;
    color:#507166;
    font-size:.61rem;
    font-weight:850;
    text-decoration:none;
}
.relationship-back-link:hover{text-decoration:underline}
.relationship-message-status{
    display:grid;
    justify-items:end;
    gap:5px;
}
.relationship-message-status small{
    color:#819087;
    font-size:.52rem;
}
.relationship-message-layout{
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(280px,.55fr);
    gap:18px;
    align-items:start;
}
.relationship-message-card{
    padding:0!important;
    overflow:hidden;
}
.relationship-message-card-head{
    display:flex;
    align-items:center;
    gap:14px;
    padding:22px 24px;
    border-bottom:1px solid #e5e8e3;
    background:linear-gradient(145deg,#fafbf8,#f2f5f1);
}
.relationship-avatar.large{
    width:50px!important;
    height:50px!important;
    flex:0 0 50px;
    border-radius:14px!important;
    font-size:1rem!important;
}
.relationship-message-card-head h2{
    margin:4px 0 2px;
    color:#183f34;
    font-size:1.25rem;
}
.relationship-message-card-head p{
    margin:0;
    color:#74827c;
    font-size:.66rem;
}
.relationship-message-body{
    min-height:240px;
    padding:26px 28px 34px;
    color:#385248;
    font-size:.83rem;
    line-height:1.85;
    white-space:normal;
}
.relationship-message-sidebar{
    display:grid;
    gap:14px;
}
.relationship-contact-card h3{
    margin:6px 0 18px;
    color:#183f34;
    font-size:1.1rem;
}
.relationship-contact-detail{
    display:grid;
    gap:3px;
    padding:11px 0;
    border-bottom:1px solid #eceeea;
}
.relationship-contact-detail:last-of-type{border-bottom:0}
.relationship-contact-detail small{
    color:#8b948f;
    font-size:.48rem;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
}
.relationship-contact-detail a,
.relationship-contact-detail span{
    color:#365a4b;
    font-size:.66rem;
    font-weight:700;
    overflow-wrap:anywhere;
}
.relationship-contact-actions{
    display:grid;
    gap:7px;
    margin-top:15px;
}
.relationship-contact-actions .button{
    width:100%;
    justify-content:center;
    box-sizing:border-box;
}
.relationship-read-info{
    display:flex!important;
    align-items:flex-start;
    gap:10px;
    padding:14px!important;
    background:#f4f8f5!important;
}
.relationship-read-info>span{
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    flex:0 0 30px;
    border-radius:9px;
    background:#e0eee4;
    color:#3d6c54;
    font-weight:950;
}
.relationship-read-info strong{
    display:block;
    color:#36584a;
    font-size:.62rem;
}
.relationship-read-info p{
    margin:2px 0 0;
    color:#77847d;
    font-size:.52rem;
    line-height:1.45;
}
@media(max-width:900px){
    .relationship-message-layout{
        grid-template-columns:1fr;
    }
    .relationship-message-status{
        justify-items:start;
    }
}
@media(max-width:620px){
    .relationship-message-row{
        grid-template-columns:auto minmax(0,1fr) auto;
    }
    .relationship-message-row time{
        display:none;
    }
    .relationship-message-title{
        align-items:flex-start;
        flex-direction:column;
        gap:3px;
    }
    .relationship-message-card-head{
        padding:18px;
    }
    .relationship-message-body{
        padding:20px 18px 28px;
    }
}


/* =========================================================
   v0.31.1-RC2.23 — Mail Foundation & SMTP
   ========================================================= */
.mail-foundation-card{
    position:relative;
    overflow:hidden;
}
.mail-foundation-head{
    align-items:flex-start!important;
}
.mail-foundation-install{
    margin-top:14px;
    padding:16px 18px;
    border:1px dashed #d5c9ad;
    border-radius:12px;
    background:#fbf7ed;
}
.mail-foundation-install strong{
    color:#6f5629;
    font-size:.68rem;
}
.mail-foundation-install p{
    margin:5px 0 0;
    color:#7b7466;
    font-size:.58rem;
    line-height:1.55;
}
.mail-settings-grid{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
    gap:18px;
    margin-top:16px;
}
.mail-settings-form,
.mail-diagnostic-panel{
    padding:18px;
    border:1px solid #e0e4df;
    border-radius:15px;
    background:#fafbf8;
}
.mail-settings-title{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:14px;
}
.mail-settings-title h3,
.mail-diagnostic-panel h3,
.mail-queue-summary h3{
    margin:4px 0 0;
    color:#234c3e;
    font-size:1.02rem;
}
.mail-enable-toggle{
    display:flex!important;
    align-items:center;
    gap:7px;
    min-height:32px;
    margin:0!important;
    padding:6px 10px;
    border-radius:999px;
    background:#edf4ef;
    color:#3f6553;
    font-size:.56rem!important;
    font-weight:900!important;
    white-space:nowrap;
}
.mail-enable-toggle input{
    width:15px!important;
    min-width:15px!important;
    height:15px!important;
    min-height:15px!important;
    margin:0!important;
}
.mail-settings-form .grid{
    gap:10px!important;
    margin-bottom:10px;
}
.mail-settings-form label,
.mail-test-send-form label{
    font-size:.56rem!important;
}
.mail-settings-form label small{
    display:block;
    margin-top:4px;
    color:#89928d;
    font-size:.49rem;
    line-height:1.35;
}
.mail-settings-actions{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:14px;
}
.mail-settings-actions span{
    color:#7e8983;
    font-size:.5rem;
}
.mail-diagnostic-panel{
    display:grid;
    align-content:start;
    gap:12px;
}
.mail-diagnostic-panel>div:first-child p{
    margin:5px 0 0;
    color:#74817b;
    font-size:.56rem;
    line-height:1.5;
}
.mail-test-status{
    padding:12px;
    border:1px solid #e0e4df;
    border-radius:11px;
    background:#fff;
}
.mail-test-status small,
.mail-test-status strong,
.mail-test-status span,
.mail-test-status p{
    display:block;
}
.mail-test-status small{
    color:#8b938f;
    font-size:.46rem;
    font-weight:950;
    letter-spacing:.08em;
}
.mail-test-status strong{
    margin-top:3px;
    color:#485e54;
    font-size:.66rem;
}
.mail-test-status span{
    margin-top:2px;
    color:#89938e;
    font-size:.49rem;
}
.mail-test-status p{
    margin:6px 0 0;
    color:#727f79;
    font-size:.5rem;
    line-height:1.4;
}
.mail-test-status.status-success{
    border-color:#cee0d3;
    background:#f4faf6;
}
.mail-test-status.status-success strong{color:#36634c}
.mail-test-status.status-error{
    border-color:#ead4ce;
    background:#fff7f5;
}
.mail-test-status.status-error strong{color:#8a4d43}
.mail-diagnostic-panel form{
    margin:0;
}
.mail-diagnostic-panel form>button{
    width:100%;
}
.mail-test-send-form{
    display:grid;
    gap:7px;
}
.mail-locaweb-preset{
    display:grid;
    gap:3px;
    padding:12px;
    border-radius:10px;
    background:#f4f0e6;
}
.mail-locaweb-preset strong{
    color:#6d572d;
    font-size:.58rem;
}
.mail-locaweb-preset span{
    color:#36594b;
    font-size:.57rem;
    font-weight:850;
}
.mail-locaweb-preset small{
    color:#817a6d;
    font-size:.48rem;
    line-height:1.4;
}
.mail-queue-summary{
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid #e4e6e1;
}
.mail-queue-summary-head{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:14px;
}
.mail-queue-summary-head p{
    margin:5px 0 0;
    color:#7b8781;
    font-size:.54rem;
}
.mail-stat-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin:14px 0;
}
.mail-stat-grid article{
    padding:11px 12px;
    border:1px solid #e2e5e0;
    border-radius:11px;
    background:#fafbf9;
}
.mail-stat-grid small{
    display:block;
    color:#87918c;
    font-size:.47rem;
    font-weight:850;
}
.mail-stat-grid strong{
    display:block;
    margin-top:3px;
    color:#2d5444;
    font-size:.85rem;
}
.mail-error-detail{
    display:block;
    max-width:420px;
    margin-top:3px;
    color:#9a5b50;
    font-size:.47rem;
    line-height:1.35;
}
@media(max-width:980px){
    .mail-settings-grid{
        grid-template-columns:1fr;
    }
}
@media(max-width:720px){
    .mail-settings-title,
    .mail-queue-summary-head,
    .mail-settings-actions{
        align-items:stretch;
        flex-direction:column;
    }
    .mail-stat-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:520px){
    .mail-stat-grid{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   v0.31.1-RC2.24 — Central de Atendimento por E-mail
   ========================================================= */
.relationship-metrics-v2{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.relationship-filter-card{
    margin-bottom:16px;
}
.relationship-filter-form{
    display:grid;
    grid-template-columns:minmax(0,1.6fr) minmax(180px,.5fr) auto;
    gap:10px;
    align-items:end;
}
.relationship-filter-form label{
    margin:0!important;
}
.relationship-filter-actions{
    display:flex;
    gap:7px;
    align-items:center;
}
.relationship-filter-actions .button{
    min-height:40px;
}
.relationship-message-row.status-new{
    position:relative;
    background:linear-gradient(90deg,rgba(248,240,220,.38),transparent 42%);
}
.relationship-message-row.status-new:before{
    content:"";
    position:absolute;
    left:-8px;
    width:3px;
    height:38px;
    border-radius:3px;
    background:#b28b43;
}
.relationship-message-row.status-read{
    opacity:.86;
}
.relationship-message-row.status-answered{
    background:linear-gradient(90deg,rgba(229,242,233,.42),transparent 42%);
}
.relationship-message-row.status-archived{
    opacity:.58;
}
.relationship-row-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:19px;
    padding:3px 6px;
    border-radius:999px;
    font-size:.43rem;
    font-weight:950;
    letter-spacing:.07em;
}
.relationship-row-status.status-new{
    background:#f4e8cf;
    color:#896629;
}
.relationship-row-status.status-read{
    background:#edf0ed;
    color:#69766f;
}
.relationship-row-status.status-answered{
    background:#e2f0e6;
    color:#36634d;
}
.relationship-row-status.status-archived{
    background:#ecebe7;
    color:#7b7b73;
}
.relationship-status-badge{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:30px;
    padding:6px 11px;
    border-radius:999px;
    font-size:.52rem;
    font-weight:950;
    letter-spacing:.08em;
}
.relationship-status-badge.status-new{
    background:#f4e8cf;
    color:#896629;
}
.relationship-status-badge.status-read{
    background:#e8f1eb;
    color:#426854;
}
.relationship-status-badge.status-answered{
    background:#dceee1;
    color:#2d6148;
}
.relationship-status-badge.status-archived{
    background:#ecebe7;
    color:#6d716d;
}
.relationship-thread-layout{
    grid-template-columns:minmax(0,1.6fr) minmax(280px,.5fr)!important;
}
.relationship-thread-column{
    display:grid;
    gap:14px;
}
.conversation-message{
    position:relative;
}
.conversation-message.visitor-message{
    border-left:3px solid #b39458!important;
}
.conversation-message.admin-reply-message{
    border-left:3px solid #3f7159!important;
}
.conversation-message.admin-reply-message.status-failed{
    border-left-color:#a45e52!important;
}
.relationship-message-card-head{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
}
.relationship-message-card-head>time{
    align-self:start;
    color:#89928d;
    font-size:.5rem;
}
.relationship-avatar.admin{
    background:#dfeee4!important;
    color:#315d48!important;
}
.reply-delivery-meta{
    display:grid;
    justify-items:end;
    gap:4px;
}
.reply-delivery-meta time{
    color:#89928d;
    font-size:.48rem;
}
.reply-status{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:4px 7px;
    border-radius:999px;
    font-size:.45rem;
    font-weight:900;
}
.reply-status.status-queued{
    background:#f2ebda;
    color:#82662f;
}
.reply-status.status-sent{
    background:#e2efe6;
    color:#37624c;
}
.reply-status.status-failed{
    background:#f7e5e1;
    color:#8e5045;
}
.reply-failure-note{
    display:grid;
    gap:3px;
    margin:0 22px 20px;
    padding:10px 12px;
    border:1px solid #efd8d3;
    border-radius:9px;
    background:#fff7f5;
}
.reply-failure-note strong{
    color:#8b4e43;
    font-size:.57rem;
}
.reply-failure-note span{
    color:#8d625a;
    font-size:.53rem;
    overflow-wrap:anywhere;
}
.reply-failure-note small{
    color:#9a837d;
    font-size:.46rem;
}
.relationship-reply-card{
    padding:22px!important;
}
.relationship-reply-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:16px;
}
.relationship-reply-head h2{
    margin:4px 0 3px;
    color:#1e4a3b;
    font-size:1.15rem;
}
.relationship-reply-head p{
    margin:0;
    color:#74817b;
    font-size:.58rem;
}
.mail-ready-pill{
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:5px 8px;
    border-radius:999px;
    background:#e2efe6;
    color:#356049;
    font-size:.46rem;
    font-weight:950;
    white-space:nowrap;
}
.mail-ready-pill.inactive{
    background:#f2e6e3;
    color:#8b5147;
}
.relationship-reply-form{
    display:grid;
    gap:12px;
}
.relationship-reply-form>label{
    margin:0!important;
}
.relationship-reply-form label small{
    display:block;
    margin-top:4px;
    color:#87918c;
    font-size:.49rem;
}
.reply-recipient-bar{
    display:flex;
    align-items:center;
    padding:11px 13px;
    border:1px solid #e2e5e0;
    border-radius:11px;
    background:#f8faf7;
}
.reply-recipient-bar>div{
    display:flex;
    align-items:baseline;
    gap:8px;
    flex-wrap:wrap;
}
.reply-recipient-bar small{
    color:#9a7b40;
    font-size:.46rem;
    font-weight:950;
    letter-spacing:.08em;
}
.reply-recipient-bar strong{
    color:#315547;
    font-size:.64rem;
}
.reply-recipient-bar span{
    color:#7a8781;
    font-size:.55rem;
}
.relationship-reply-actions{
    display:flex;
    align-items:center;
    gap:12px;
}
.relationship-reply-actions small{
    max-width:520px;
    color:#7c8982;
    font-size:.49rem;
    line-height:1.45;
}
.relationship-thread-summary{
    display:grid!important;
    gap:11px;
}
.relationship-thread-summary>div{
    display:flex;
    align-items:baseline;
    gap:7px;
    padding-top:8px;
    border-top:1px solid #eceee9;
}
.relationship-thread-summary strong{
    color:#2d5746;
    font-size:1rem;
}
.relationship-thread-summary small{
    color:#7f8a84;
    font-size:.52rem;
}
.relationship-archive-button{
    width:100%;
}
.relationship-template-manager{
    margin-top:16px;
}
.relationship-template-grid{
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);
    gap:18px;
}
.relationship-template-list{
    display:grid;
    gap:9px;
    align-content:start;
}
.relationship-template-list>article{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    padding:13px;
    border:1px solid #e3e5e0;
    border-radius:11px;
    background:#fafbf9;
}
.relationship-template-list article>div{
    min-width:0;
}
.relationship-template-list strong{
    display:block;
    color:#305446;
    font-size:.63rem;
}
.relationship-template-list small{
    display:block;
    margin-top:2px;
    color:#87918c;
    font-size:.49rem;
}
.relationship-template-preview{
    max-height:64px;
    overflow:hidden;
    margin-top:7px;
    color:#65746d;
    font-size:.52rem;
    line-height:1.45;
}
.relationship-template-preview p{
    margin:0 0 4px;
}
.relationship-template-form{
    display:grid;
    gap:10px;
    padding:15px;
    border:1px solid #dde2dd;
    border-radius:13px;
    background:#f8faf7;
}
.relationship-template-form label{
    margin:0!important;
}
.relationship-template-form label small{
    display:block;
    margin-top:3px;
    color:#87918c;
    font-size:.47rem;
}
@media(max-width:1100px){
    .relationship-metrics-v2{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
    .relationship-template-grid{
        grid-template-columns:1fr;
    }
}
@media(max-width:900px){
    .relationship-thread-layout{
        grid-template-columns:1fr!important;
    }
    .relationship-filter-form{
        grid-template-columns:1fr 1fr;
    }
    .relationship-filter-actions{
        grid-column:1/-1;
    }
}
@media(max-width:620px){
    .relationship-metrics-v2{
        grid-template-columns:1fr!important;
    }
    .relationship-filter-form{
        grid-template-columns:1fr;
    }
    .relationship-filter-actions{
        grid-column:auto;
        align-items:stretch;
        flex-direction:column;
    }
    .relationship-message-card-head{
        grid-template-columns:auto minmax(0,1fr)!important;
    }
    .relationship-message-card-head>time,
    .reply-delivery-meta{
        grid-column:1/-1;
        justify-items:start;
        padding-left:64px;
    }
    .relationship-reply-head,
    .relationship-reply-actions{
        align-items:stretch;
        flex-direction:column;
    }
    .relationship-template-list>article{
        flex-direction:column;
    }
}


/* =========================================================
   v0.31.1-RC2.25 — Automação de Reservas & Comunicação 2.0
   ========================================================= */
.booking-mail-automation-card{margin-top:16px}
.booking-mail-settings-form{margin-top:16px}
.booking-mail-toggle-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.booking-mail-toggle-grid label{
    display:flex!important;
    align-items:flex-start;
    gap:10px;
    margin:0!important;
    padding:14px;
    border:1px solid #dfe4df;
    border-radius:13px;
    background:#f8faf7;
}
.booking-mail-toggle-grid input{
    width:17px!important;
    min-width:17px!important;
    height:17px!important;
    min-height:17px!important;
    margin:2px 0 0!important;
    accent-color:#245d47;
}
.booking-mail-toggle-grid span,
.booking-mail-toggle-grid strong,
.booking-mail-toggle-grid small{display:block}
.booking-mail-toggle-grid strong{
    color:#315546;
    font-size:.62rem;
}
.booking-mail-toggle-grid small{
    margin-top:3px;
    color:#7f8c85;
    font-size:.49rem;
    line-height:1.4;
}
.booking-mail-reminder-row{
    display:flex;
    align-items:end;
    gap:12px;
    margin-top:12px;
}
.booking-mail-reminder-row label{
    min-width:220px;
    margin:0!important;
}
.booking-mail-template-section{
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid #e3e6e1;
}
.booking-mail-template-section .admin-card-head p{
    max-width:850px;
}
.booking-mail-template-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.booking-mail-template-card{
    display:grid;
    align-content:start;
    gap:10px;
    padding:14px;
    border:1px solid #dde2dd;
    border-radius:13px;
    background:#fafbf9;
}
.booking-mail-template-card label{margin:0!important}
.booking-mail-template-card .tuctb-rich-editor{
    min-height:200px!important;
}
.booking-mail-template-card button{width:100%}
.appointment-v2-row{
    grid-template-columns:60px minmax(170px,.9fr) minmax(220px,1.1fr) minmax(210px,.9fr) auto!important;
}
.appointment-v2-communication{
    display:grid;
    gap:6px;
    min-width:0;
}
.appointment-v2-communication>small{
    color:#75807a;
    font-size:.7rem;
}
.booking-mail-mini-status{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}
.booking-mail-mini-status span{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:4px 7px;
    border-radius:999px;
    background:#eeeee9;
    color:#6d766f;
    font-size:.48rem;
    font-weight:850;
    white-space:nowrap;
}
.booking-mail-mini-status .status-sent{
    background:#e2efe6;
    color:#38624d;
}
.booking-mail-mini-status .status-pending,
.booking-mail-mini-status .status-processing,
.booking-mail-mini-status .status-queued{
    background:#f3ebd9;
    color:#82662f;
}
.booking-mail-mini-status .status-failed{
    background:#f7e4df;
    color:#8e4f44;
}
.booking-mail-mini-status .status-cancelled{
    background:#ecebe7;
    color:#757873;
}
.appointment-no-email{
    color:#8b938f;
    font-size:.5rem;
}
.appointment-email-details{position:relative}
.appointment-email-details summary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:5px 8px;
    border:1px solid #cad9cf;
    border-radius:8px;
    background:#f4faf6;
    color:#35614d;
    font-size:.5rem;
    font-weight:900;
    cursor:pointer;
    list-style:none;
}
.appointment-email-details summary::-webkit-details-marker{display:none}
.appointment-email-details[open] summary{margin-bottom:6px}
.appointment-email-details form{
    position:absolute;
    right:0;
    z-index:30;
    width:min(340px,78vw);
    padding:12px;
    border:1px solid #d8ddd8;
    border-radius:11px;
    background:#fff;
    box-shadow:0 18px 42px rgba(29,55,47,.14);
}
.appointment-email-details label{
    margin:0 0 8px!important;
    font-size:.55rem!important;
}
.appointment-email-details textarea{
    min-height:110px;
}
.appointment-email-details small{
    display:block;
    margin:4px 0 9px;
    color:#7f8a84;
    font-size:.48rem;
    line-height:1.4;
}
.appointment-email-details button{width:100%}
@media(max-width:1180px){
    .booking-mail-toggle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .booking-mail-template-grid{grid-template-columns:1fr}
    .appointment-v2-row{grid-template-columns:60px 1fr 1fr!important}
    .appointment-v2-communication{grid-column:2/-1}
    .appointment-v2-status-actions{grid-column:2/-1}
}
@media(max-width:700px){
    .booking-mail-toggle-grid{grid-template-columns:1fr}
    .booking-mail-reminder-row{
        align-items:stretch;
        flex-direction:column;
    }
    .booking-mail-reminder-row label{min-width:0}
    .appointment-v2-row{grid-template-columns:1fr!important}
    .appointment-v2-communication,
    .appointment-v2-status-actions{grid-column:auto}
    .appointment-email-details form{
        position:static;
        width:100%;
        box-sizing:border-box;
    }
}

.appointment-email-history summary{
    color:#5e746a;
    font-size:.49rem;
    font-weight:850;
    cursor:pointer;
}
.appointment-email-history-list{
    display:grid;
    gap:6px;
    margin-top:6px;
    padding:8px;
    border:1px solid #e2e5e0;
    border-radius:9px;
    background:#fff;
}
.appointment-email-history-list>div{
    display:grid;
    gap:2px;
    padding-bottom:5px;
    border-bottom:1px solid #eef0ec;
}
.appointment-email-history-list>div:last-child{
    padding-bottom:0;
    border-bottom:0;
}
.appointment-email-history-list strong{
    color:#3a5d4e;
    font-size:.5rem;
}
.appointment-email-history-list span{
    color:#66766f;
    font-size:.48rem;
}
.appointment-email-history-list small{
    color:#89928d;
    font-size:.44rem;
}
.appointment-email-history-list em{
    color:#9a5b50;
    font-size:.43rem;
    font-style:normal;
    overflow-wrap:anywhere;
}


/* =========================================================
   v0.31.1-RC2.25.1 — Mail Queue Scheduler Hotfix
   ========================================================= */
.mail-stat-grid-v2{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.mail-cron-panel{
    display:grid;
    gap:14px;
    margin:16px 0;
    padding:16px;
    border:1px solid #dfe5df;
    border-radius:15px;
    background:
        radial-gradient(circle at 95% 5%,rgba(168,135,69,.08),transparent 25%),
        #f8faf7;
}
.mail-cron-status{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
}
.mail-cron-icon{
    display:grid;
    place-items:center;
    width:40px;
    height:40px;
    border-radius:12px;
    background:#e2efe6;
    color:#35634d;
    font-size:1rem;
    font-weight:950;
}
.mail-cron-status h4{
    margin:3px 0 2px;
    color:#2d5444;
    font-size:.78rem;
}
.mail-cron-status p{
    margin:0;
    color:#7b8781;
    font-size:.53rem;
    line-height:1.45;
}
.mail-cron-state{
    display:inline-flex;
    align-items:center;
    min-height:27px;
    padding:5px 9px;
    border-radius:999px;
    font-size:.46rem;
    font-weight:950;
    letter-spacing:.07em;
}
.mail-cron-state.active{
    background:#dcefe2;
    color:#315f48;
}
.mail-cron-state.inactive{
    background:#f2ead8;
    color:#82672f;
}
.mail-cron-runtime{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
}
.mail-cron-runtime>div{
    padding:10px 11px;
    border:1px solid #e1e5e0;
    border-radius:10px;
    background:#fff;
}
.mail-cron-runtime small,
.mail-cron-runtime strong{
    display:block;
}
.mail-cron-runtime small{
    color:#87918c;
    font-size:.45rem;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.mail-cron-runtime strong{
    margin-top:3px;
    color:#3b5a4d;
    font-size:.58rem;
}
.mail-cron-token-once{
    padding:13px;
    border:1px solid #d6c89f;
    border-radius:11px;
    background:#fff9e9;
}
.mail-cron-token-once>strong{
    display:block;
    color:#745b28;
    font-size:.62rem;
}
.mail-cron-token-once>p{
    margin:4px 0 9px;
    color:#80765e;
    font-size:.5rem;
    line-height:1.45;
}
.mail-cron-url-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:7px;
}
.mail-cron-url-row input{
    min-width:0;
    font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
    font-size:.52rem!important;
}
.mail-cron-actions{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.mail-cron-actions form{margin:0}
.mail-cron-help{
    display:grid;
    gap:3px;
    padding-top:11px;
    border-top:1px solid #e1e5e0;
}
.mail-cron-help strong{
    color:#385c4d;
    font-size:.57rem;
}
.mail-cron-help span{
    color:#66766f;
    font-size:.52rem;
    line-height:1.45;
}
.mail-cron-help small{
    color:#839089;
    font-size:.48rem;
    line-height:1.4;
}
.queue-status.status-scheduled{
    background:#e9eef6!important;
    color:#4d617b!important;
}
.queue-status.status-ready{
    background:#f7e7bc!important;
    color:#775817!important;
}
@media(max-width:850px){
    .mail-cron-runtime{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .mail-cron-status{
        grid-template-columns:auto minmax(0,1fr);
    }
    .mail-cron-state{
        grid-column:1/-1;
        justify-self:start;
    }
}
@media(max-width:560px){
    .mail-stat-grid-v2,
    .mail-cron-runtime{
        grid-template-columns:1fr!important;
    }
    .mail-cron-url-row{
        grid-template-columns:1fr;
    }
    .mail-cron-actions{
        display:grid;
    }
    .mail-cron-actions button{
        width:100%;
    }
}


/* =========================================================
   v0.31.1-RC2.25.2 — Immediate Transactional Mail + Welcome
   ========================================================= */
.mail-queue-head-actions{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    align-items:center;
}
.mail-queue-head-actions form{margin:0}
.mail-detail-link{
    display:inline-flex;
    align-items:center;
    white-space:nowrap;
    color:#35614d;
    font-size:.5rem;
    font-weight:900;
    text-decoration:none;
}
.mail-detail-link:hover{text-decoration:underline}
.welcome-mail-template-card{
    max-width:980px;
    margin-top:16px;
}
.welcome-mail-template-card .tuctb-rich-editor{
    min-height:220px!important;
}
.mail-detail-head{
    align-items:flex-end!important;
}
.mail-detail-status{
    display:inline-flex;
    align-items:center;
    min-height:30px;
    padding:6px 11px;
    border-radius:999px;
    font-size:.52rem;
    font-weight:950;
    letter-spacing:.07em;
}
.mail-detail-status.status-sent{
    background:#dfeee4;
    color:#35604a;
}
.mail-detail-status.status-pending,
.mail-detail-status.status-processing{
    background:#f4ead2;
    color:#80632d;
}
.mail-detail-status.status-failed{
    background:#f7e3df;
    color:#8d5045;
}
.mail-detail-status.status-cancelled{
    background:#ecebe7;
    color:#72766f;
}
.mail-detail-layout{
    display:grid;
    grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);
    gap:18px;
    align-items:start;
}
.mail-detail-main{
    padding:0!important;
    overflow:hidden;
}
.mail-detail-message-head{
    display:flex;
    justify-content:space-between;
    gap:20px;
    align-items:flex-start;
    padding:22px 24px;
    border-bottom:1px solid #e5e8e3;
    background:linear-gradient(145deg,#fafbf8,#f2f5f1);
}
.mail-detail-message-head h2{
    margin:4px 0 0;
    color:#244c3d;
    font-size:1.18rem;
}
.mail-detail-recipient{
    display:grid;
    justify-items:end;
    gap:2px;
    min-width:220px;
}
.mail-detail-recipient small{
    color:#9b7b40;
    font-size:.44rem;
    font-weight:950;
    letter-spacing:.08em;
}
.mail-detail-recipient strong{
    color:#35584a;
    font-size:.61rem;
}
.mail-detail-recipient span{
    color:#7f8a84;
    font-size:.52rem;
    overflow-wrap:anywhere;
}
.mail-detail-meta-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:18px 24px 0;
}
.mail-detail-meta-grid>div{
    padding:10px 11px;
    border:1px solid #e3e6e1;
    border-radius:10px;
    background:#fafbf9;
}
.mail-detail-meta-grid small,
.mail-detail-meta-grid strong{
    display:block;
}
.mail-detail-meta-grid small{
    color:#87918b;
    font-size:.44rem;
    font-weight:900;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.mail-detail-meta-grid strong{
    margin-top:3px;
    color:#3d5b4e;
    font-size:.56rem;
    overflow-wrap:anywhere;
}
.mail-detail-main>.alert{
    margin:16px 24px 0;
}
.mail-detail-preview-section{
    padding:18px 24px 24px;
}
.mail-detail-preview-section h3{
    margin:4px 0 0;
    color:#2c5545;
    font-size:.9rem;
}
.mail-detail-preview-section .admin-card-head p{
    margin:3px 0 0;
    font-size:.52rem;
}
.mail-detail-preview{
    display:block;
    width:100%;
    min-height:520px;
    margin-top:12px;
    border:1px solid #dde2dd;
    border-radius:12px;
    background:#fff;
}
.mail-detail-source{
    margin:0 24px 24px;
    border:1px solid #e1e4df;
    border-radius:10px;
    background:#fafbf9;
}
.mail-detail-source summary{
    padding:11px 13px;
    color:#4e695d;
    font-size:.54rem;
    font-weight:850;
    cursor:pointer;
}
.mail-detail-source pre{
    margin:0;
    padding:0 13px 14px;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    color:#607168;
    font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
    font-size:.5rem;
    line-height:1.6;
}
.mail-detail-sidebar{
    display:grid;
    gap:14px;
}
.mail-detail-sidebar h3{
    margin:5px 0 14px;
    color:#2d5545;
    font-size:.88rem;
}
.mail-delivery-timeline{
    display:grid;
    gap:0;
}
.mail-delivery-timeline article{
    position:relative;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:9px;
    padding:0 0 15px;
}
.mail-delivery-timeline article:not(:last-child):before{
    content:"";
    position:absolute;
    left:5px;
    top:12px;
    bottom:0;
    width:1px;
    background:#dde3de;
}
.mail-timeline-dot{
    position:relative;
    z-index:1;
    width:11px;
    height:11px;
    margin-top:3px;
    border-radius:50%;
    background:#b7c4bd;
}
.mail-timeline-dot.event-sent{background:#4f8067}
.mail-timeline-dot.event-failed{background:#b46b60}
.mail-timeline-dot.event-attempt{background:#b49455}
.mail-delivery-timeline strong{
    display:block;
    color:#3d5d4f;
    font-size:.56rem;
}
.mail-delivery-timeline p{
    margin:2px 0;
    color:#718078;
    font-size:.49rem;
    line-height:1.4;
}
.mail-delivery-timeline small{
    color:#919a95;
    font-size:.44rem;
}
.mail-detail-reference{
    display:grid!important;
    gap:8px;
}
.mail-detail-reference>div{
    display:grid;
    gap:2px;
    padding-top:8px;
    border-top:1px solid #eceeea;
}
.mail-detail-reference small{
    color:#87918c;
    font-size:.44rem;
    font-weight:850;
}
.mail-detail-reference strong{
    color:#456257;
    font-size:.53rem;
    overflow-wrap:anywhere;
}
.mail-archive-filter{
    grid-template-columns:minmax(0,1.4fr) minmax(150px,.35fr) minmax(150px,.35fr) auto!important;
}
.mail-archive-table td strong,
.mail-archive-table td small{
    display:block;
}
.mail-archive-table td small{
    margin-top:2px;
    color:#87918c;
    font-size:.46rem;
}
.mail-type-pill{
    display:inline-flex;
    align-items:center;
    min-height:22px;
    padding:4px 7px;
    border-radius:999px;
    background:#edf3ef;
    color:#416452;
    font-size:.46rem;
    font-weight:850;
    white-space:nowrap;
}
.mail-archive-pagination{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin:14px 0 0;
}
.mail-archive-pagination span{
    color:#68776f;
    font-size:.55rem;
    font-weight:800;
}
@media(max-width:1050px){
    .mail-detail-layout{grid-template-columns:1fr}
    .mail-archive-filter{grid-template-columns:1fr 1fr!important}
    .mail-archive-filter .relationship-filter-actions{grid-column:1/-1}
}
@media(max-width:700px){
    .mail-detail-message-head{
        align-items:stretch;
        flex-direction:column;
    }
    .mail-detail-recipient{
        min-width:0;
        justify-items:start;
    }
    .mail-detail-meta-grid{grid-template-columns:1fr}
    .mail-detail-preview{min-height:420px}
    .mail-archive-filter{grid-template-columns:1fr!important}
    .mail-archive-filter .relationship-filter-actions{grid-column:auto}
    .mail-queue-head-actions{
        align-items:stretch;
        flex-direction:column;
    }
    .mail-queue-head-actions .button,
    .mail-queue-head-actions button{width:100%;box-sizing:border-box;justify-content:center}
}


/* =========================================================
   v0.31.1-RC2.25.3 — ERP Sync Scheduler Hotfix
   ========================================================= */
.integration-sync-overdue{
    border-color:#e3c983!important;
    background:#fff9e9!important;
}
.integration-sync-overdue small{
    color:#8b6727!important;
}
.integration-sync-overdue strong{
    color:#75531d!important;
}
.integration-sync-overdue span{
    display:block;
    margin-top:3px;
    color:#9a793a;
    font-size:.47rem;
    font-weight:850;
    line-height:1.35;
}


/* =========================================================
   v0.31.1-RC2.26 — Indicadores Reais + Umbanda CMS 2.0
   ========================================================= */
.spiritual-studio-head{
    margin-bottom:18px;
}
.spiritual-studio-layout{
    display:grid;
    grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr);
    gap:18px;
    align-items:start;
}
.spiritual-studio-editor{
    padding:0!important;
    overflow:hidden;
}
.spiritual-editor-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    padding:22px 24px;
    border-bottom:1px solid #e4e7e2;
    background:
        radial-gradient(circle at 92% 15%,rgba(171,138,70,.08),transparent 25%),
        linear-gradient(145deg,#fbfcf9,#f2f5f1);
}
.spiritual-editor-head h2{
    margin:4px 0 3px;
    color:#204b3c;
    font-size:1.18rem;
}
.spiritual-editor-head p{
    max-width:700px;
    margin:0;
    color:#718079;
    font-size:.57rem;
    line-height:1.5;
}
.spiritual-studio-form{
    display:grid;
    gap:0;
}
.spiritual-form-section{
    display:grid;
    gap:12px;
    padding:20px 24px;
    border-bottom:1px solid #eceeea;
}
.spiritual-form-kicker{
    color:#9c7735;
    font-size:.48rem;
    font-weight:950;
    letter-spacing:.12em;
}
.spiritual-image-editor{
    display:grid;
    grid-template-columns:minmax(230px,.42fr) minmax(0,.58fr);
    gap:16px;
}
.spiritual-image-preview{
    min-height:210px;
    overflow:hidden;
    border:1px solid #dfe4df;
    border-radius:14px;
    background:#f3f6f2;
}
.spiritual-image-preview img{
    display:block;
    width:100%;
    height:100%;
    min-height:210px;
    object-fit:cover;
}
.spiritual-image-preview>div{
    display:grid;
    place-items:center;
    align-content:center;
    gap:4px;
    min-height:210px;
    color:#799086;
    text-align:center;
}
.spiritual-image-preview>div span{
    font-size:1.6rem;
    color:#b28d46;
}
.spiritual-image-preview>div strong{
    color:#3d5d4f;
    font-size:.67rem;
}
.spiritual-image-preview>div small{
    color:#89948e;
    font-size:.49rem;
}
.spiritual-image-controls{
    display:grid;
    gap:11px;
    align-content:start;
}
.spiritual-image-controls label{
    margin:0!important;
}
.spiritual-image-controls small{
    display:block;
    margin-top:4px;
    color:#87918c;
    font-size:.48rem;
    line-height:1.45;
}
.spiritual-remove-image{
    display:flex!important;
    align-items:center;
    gap:8px;
    padding:9px 10px;
    border:1px solid #ead8d2;
    border-radius:9px;
    background:#fff7f5;
    color:#8a5148!important;
    font-size:.55rem!important;
}
.spiritual-remove-image input{
    width:auto!important;
    min-height:0!important;
}
.spiritual-editor-actions{
    display:flex;
    align-items:center;
    gap:9px;
    padding:18px 24px 22px;
    background:#fafbf9;
}
.spiritual-library-panel{
    position:sticky;
    top:88px;
    display:grid;
    gap:12px;
    max-height:calc(100vh - 110px);
    overflow:auto;
    padding-right:3px;
}
.spiritual-library-head{
    padding:2px 3px 6px;
}
.spiritual-library-head h2{
    margin:4px 0 3px;
    color:#214b3c;
    font-size:1rem;
}
.spiritual-library-head p{
    margin:0;
    color:#7b8781;
    font-size:.53rem;
}
.spiritual-library-modern-grid{
    display:grid;
    gap:10px;
}
.spiritual-library-modern-card{
    overflow:hidden;
    border:1px solid #dfe4df;
    border-radius:14px;
    background:#fff;
    box-shadow:0 8px 22px rgba(32,66,54,.05);
}
.spiritual-library-modern-card.is-editing{
    border-color:#b59a63;
    box-shadow:0 0 0 2px rgba(181,154,99,.12);
}
.spiritual-library-cover{
    position:relative;
    height:125px;
    overflow:hidden;
    background:linear-gradient(145deg,#eaf1ec,#f7f4eb);
}
.spiritual-library-cover img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.spiritual-library-placeholder{
    display:grid;
    place-items:center;
    height:100%;
    color:#b18d49;
    font-size:1.8rem;
}
.spiritual-library-cover>.admin-badge{
    position:absolute;
    left:10px;
    bottom:9px;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(6px);
}
.spiritual-library-copy{
    display:grid;
    gap:7px;
    padding:13px;
}
.spiritual-library-title-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
}
.spiritual-library-title-row strong{
    color:#285141;
    font-size:.72rem;
}
.spiritual-library-copy p{
    display:-webkit-box;
    overflow:hidden;
    margin:0;
    color:#718079;
    font-size:.52rem;
    line-height:1.5;
    -webkit-line-clamp:3;
    -webkit-box-orient:vertical;
}
.spiritual-library-copy>small{
    color:#929a96;
    font-size:.46rem;
}
.spiritual-library-actions{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:2px;
}
.spiritual-library-actions .button{
    min-height:30px;
    padding:6px 9px;
    font-size:.49rem;
}
.spiritual-content-card-v2{
    overflow:hidden;
}
.spiritual-card-image{
    display:block;
    height:170px;
    margin:-1px -1px 14px;
    overflow:hidden;
    border-radius:14px 14px 10px 10px;
}
.spiritual-card-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .35s ease;
}
.spiritual-content-card-v2:hover .spiritual-card-image img{
    transform:scale(1.035);
}
.spiritual-content-card-v2>.eyebrow{
    display:block;
    margin-bottom:6px;
}
.spiritual-hero-image{
    width:min(430px,100%);
    height:300px;
    overflow:hidden;
    justify-self:end;
    border:1px solid rgba(172,142,78,.22);
    border-radius:26px;
    box-shadow:0 20px 50px rgba(38,67,55,.12);
}
.spiritual-hero-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

/* =========================================================
   v0.31.1-RC2.26 — WhatsApp Foundation
   ========================================================= */
.whatsapp-foundation-card{
    margin-top:16px;
    background:
        radial-gradient(circle at 97% 4%,rgba(62,138,93,.07),transparent 22%),
        #fff;
}
.whatsapp-foundation-grid{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:14px;
    margin-top:16px;
}
.whatsapp-settings-panel,
.whatsapp-compose-panel{
    padding:16px;
    border:1px solid #dfe5df;
    border-radius:14px;
    background:#fafbf9;
}
.whatsapp-panel-title h3{
    margin:4px 0 13px;
    color:#2b5544;
    font-size:.88rem;
}
.whatsapp-enable-toggle{
    display:flex!important;
    align-items:flex-start;
    gap:9px;
    margin:0 0 12px!important;
    padding:11px;
    border:1px solid #dbe6de;
    border-radius:10px;
    background:#f3f8f4;
}
.whatsapp-enable-toggle input{
    width:17px!important;
    height:17px!important;
    min-height:17px!important;
    margin:2px 0 0!important;
    accent-color:#256448;
}
.whatsapp-enable-toggle strong,
.whatsapp-enable-toggle small{
    display:block;
}
.whatsapp-enable-toggle strong{
    color:#315c49;
    font-size:.59rem;
}
.whatsapp-enable-toggle small{
    margin-top:2px;
    color:#7c8a83;
    font-size:.47rem;
}
.whatsapp-foundation-note{
    margin-top:13px;
    padding:11px 12px;
    border-left:3px solid #5e8c70;
    border-radius:0 9px 9px 0;
    background:#eef6f0;
}
.whatsapp-foundation-note strong{
    color:#315c49;
    font-size:.56rem;
}
.whatsapp-foundation-note p{
    margin:4px 0 0;
    color:#6d7c74;
    font-size:.5rem;
    line-height:1.5;
}
.whatsapp-compose-form{
    display:grid;
    gap:10px;
}
.whatsapp-compose-form label{
    margin:0!important;
}
.whatsapp-compose-form small{
    display:block;
    margin-top:4px;
    color:#829088;
    font-size:.48rem;
}
.whatsapp-compose-form button[disabled]{
    opacity:.5;
    cursor:not-allowed;
}
.whatsapp-template-manager,
.whatsapp-history{
    margin-top:18px;
    padding-top:17px;
    border-top:1px solid #e4e7e2;
}
.whatsapp-template-layout{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
    gap:14px;
}
.whatsapp-template-list{
    display:grid;
    gap:9px;
}
.whatsapp-template-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:8px;
    padding:13px;
    border:1px solid #e0e4df;
    border-radius:12px;
    background:#fafbf9;
}
.whatsapp-template-card>form:first-child{
    display:grid;
    gap:8px;
}
.whatsapp-template-card label{
    margin:0!important;
}
.whatsapp-template-actions{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:9px;
}
.whatsapp-template-actions label{
    max-width:110px;
}
.whatsapp-new-template{
    display:grid;
    align-content:start;
    gap:9px;
    padding:14px;
    border:1px solid #dce4de;
    border-radius:12px;
    background:#f5f9f6;
}
.whatsapp-new-template label{
    margin:0!important;
}
.whatsapp-history td strong,
.whatsapp-history td small{
    display:block;
}
.whatsapp-history td small{
    margin-top:2px;
    color:#87918c;
    font-size:.45rem;
}
.whatsapp-log-message{
    max-width:420px;
    white-space:normal!important;
    line-height:1.4;
}
@media(max-width:1150px){
    .spiritual-studio-layout{grid-template-columns:1fr}
    .spiritual-library-panel{
        position:static;
        max-height:none;
        overflow:visible;
    }
    .spiritual-library-modern-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:950px){
    .whatsapp-foundation-grid,
    .whatsapp-template-layout{
        grid-template-columns:1fr;
    }
}
@media(max-width:720px){
    .spiritual-editor-head{
        align-items:stretch;
        flex-direction:column;
    }
    .spiritual-image-editor{
        grid-template-columns:1fr;
    }
    .spiritual-library-modern-grid{
        grid-template-columns:1fr;
    }
    .spiritual-hero-image{
        justify-self:start;
        height:230px;
    }
    .whatsapp-template-card{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   v0.31.1-RC2.27 — Admin Mobile Sidebar Crisp Fix
   ========================================================= */
@media(max-width:900px){
    body.admin-premium-body .admin-sidebar{
        left:0!important;
        transform:translate3d(-105%,0,0)!important;
        transition:transform .22s cubic-bezier(.2,.7,.2,1)!important;
        background:#12342a!important;
        background-image:linear-gradient(180deg,#12342a,#173c31 72%,#102b23)!important;
        filter:none!important;
        backdrop-filter:none!important;
        -webkit-backdrop-filter:none!important;
        opacity:1!important;
        isolation:isolate!important;
        contain:paint!important;
        will-change:transform!important;
        box-shadow:12px 0 34px rgba(8,28,22,.20)!important;
    }
    body.admin-premium-body.admin-menu-open .admin-sidebar{
        transform:translate3d(0,0,0)!important;
    }
    body.admin-premium-body .admin-sidebar,
    body.admin-premium-body .admin-sidebar *{
        -webkit-font-smoothing:antialiased;
        text-rendering:geometricPrecision;
    }
    body.admin-premium-body .admin-sidebar-overlay{
        display:block!important;
        position:fixed!important;
        inset:0!important;
        z-index:90!important;
        width:100%!important;
        height:100%!important;
        padding:0!important;
        margin:0!important;
        border:0!important;
        border-radius:0!important;
        background:rgba(5,18,14,.58)!important;
        opacity:0!important;
        visibility:hidden!important;
        pointer-events:none!important;
        backdrop-filter:none!important;
        -webkit-backdrop-filter:none!important;
        filter:none!important;
        transition:opacity .18s ease,visibility .18s ease!important;
    }
    body.admin-premium-body.admin-menu-open .admin-sidebar-overlay{
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
    }
    body.admin-premium-body.admin-menu-open{
        overflow:hidden!important;
    }
    body.admin-premium-body.admin-menu-open .admin-sidebar{
        overflow-y:auto!important;
        -webkit-overflow-scrolling:touch;
        overscroll-behavior:contain;
    }
    body.admin-premium-body .admin-topbar{
        backdrop-filter:none!important;
        -webkit-backdrop-filter:none!important;
        background:#fff!important;
    }
}

/* Gestão de Acessos */
.access-create-card{margin-bottom:16px}
.access-create-form{display:grid;gap:12px}
.access-create-form small{display:block;margin-top:4px;color:#7d8a84;font-size:.5rem}
.access-user-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.access-user-card{
    display:grid;
    grid-template-columns:46px minmax(0,1fr);
    gap:12px;
    padding:15px;
    border:1px solid #dfe4df;
    border-radius:14px;
    background:#fafbf9;
}
.access-user-card.is-protected{background:#f6f4ec;border-color:#e2d8bd}
.access-user-avatar{
    display:grid;place-items:center;width:46px;height:46px;border-radius:13px;
    background:#dfece4;color:#23543f;font-size:1rem;font-weight:950
}
.access-user-card.is-protected .access-user-avatar{background:#eee5cf;color:#735927}
.access-user-main{min-width:0;display:grid;gap:10px}
.access-user-heading{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.access-user-heading strong,.access-user-heading span{display:block}
.access-user-heading strong{color:#2c5444;font-size:.68rem}
.access-user-heading>div>span{margin-top:2px;color:#7d8983;font-size:.49rem;overflow-wrap:anywhere}
.access-role-badge{
    display:inline-flex;padding:5px 8px;border-radius:999px;white-space:nowrap;
    background:#e7efe9;color:#37614e;font-size:.46rem;font-weight:900
}
.access-role-badge.gatekeeper{background:#e8edf5;color:#4e6178}
.access-user-meta{display:flex;flex-wrap:wrap;gap:10px;color:#7c8982;font-size:.47rem}
.access-user-meta b{color:#465f54}
.access-protected-note{padding:9px 10px;border-radius:9px;background:#fff9ea;color:#806631;font-size:.49rem;line-height:1.45}
.access-user-edit summary{color:#35604c;font-size:.52rem;font-weight:900;cursor:pointer}
.access-user-edit form{display:grid;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid #e5e8e3}
.access-user-edit label{margin:0!important}

/* Porteira — home restrita */
.gatekeeper-home-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.gatekeeper-home-card{
    display:grid;grid-template-columns:88px minmax(0,1fr);gap:15px;align-items:center;
    padding:14px;border:1px solid #dce3de;border-radius:15px;background:#fff;
    text-decoration:none;color:inherit;box-shadow:0 8px 26px rgba(32,63,52,.05)
}
.gatekeeper-home-card:hover{border-color:#b9cdbf;transform:translateY(-1px)}
.gatekeeper-home-date{
    display:grid;place-items:center;align-content:center;min-height:108px;border-radius:12px;
    background:#173f34;color:#fff
}
.gatekeeper-home-date strong{font-size:1.75rem;line-height:1}
.gatekeeper-home-date span{margin-top:4px;color:#d8bc7e;font-size:.55rem;font-weight:900}
.gatekeeper-home-date small{margin-top:3px;color:rgba(255,255,255,.65);font-size:.48rem}
.gatekeeper-home-card h2{margin:4px 0 5px;color:#244f3f;font-size:.92rem}
.gatekeeper-home-card p{margin:0;color:#75827b;font-size:.55rem}
.gatekeeper-open-action{display:block;margin-top:12px;color:#286047;font-size:.55rem}

/* Política de encerramento */
.booking-cutoff-settings{
    display:grid;grid-template-columns:minmax(220px,.8fr) minmax(340px,1.1fr) minmax(260px,.7fr);
    gap:14px;align-items:end;padding:14px;border:1px solid #dbe5dd;border-radius:13px;background:#f4f8f5
}
.booking-cutoff-settings>div:first-child strong{color:#2d5a47;font-size:.67rem}
.booking-cutoff-settings>div:first-child p{margin:4px 0 0;color:#748179;font-size:.51rem;line-height:1.5}
.booking-cutoff-example{padding:10px 11px;border-radius:10px;background:#fff;border:1px solid #e0e4df}
.booking-cutoff-example span,.booking-cutoff-example strong,.booking-cutoff-example small{display:block}
.booking-cutoff-example span{color:#9b793b;font-size:.44rem;font-weight:950;letter-spacing:.08em}
.booking-cutoff-example strong{margin-top:3px;color:#3b5b4e;font-size:.53rem}
.booking-cutoff-example small{margin-top:4px;color:#87918c;font-size:.46rem;line-height:1.4}
.booking-cancellation-setting{margin-top:13px}

@media(max-width:1100px){
    .booking-cutoff-settings{grid-template-columns:1fr 1fr}
    .booking-cutoff-example{grid-column:1/-1}
}
@media(max-width:780px){
    .access-user-grid,.gatekeeper-home-grid{grid-template-columns:1fr}
    .booking-cutoff-settings{grid-template-columns:1fr}
    .booking-cutoff-example{grid-column:auto}
}

@media(min-width:901px){
    .gira-admin-meta{grid-template-columns:repeat(6,minmax(0,1fr))!important}
}

.booking-deadline-note{
    display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:7px 10px;
    border:1px solid #d9e4dc;border-radius:999px;background:#f3f8f4;color:#426052
}
.booking-deadline-note span{font-size:.58rem}
.booking-deadline-note strong{font-size:.6rem;color:#24533f}


/* =========================================================
   v0.31.1-RC2.27.1 — Mobile Admin Menu Layer + Scroll Fix
   Causa corrigida: overlay estava acima da sidebar.
   ========================================================= */
@media(max-width:900px){
    /* A sidebar precisa ficar ACIMA do overlay. */
    body.admin-premium-body .admin-sidebar{
        z-index:120!important;
        top:0!important;
        bottom:auto!important;
        height:100vh!important;
        height:100dvh!important;
        max-height:100vh!important;
        max-height:100dvh!important;
        overflow:hidden!important;
        display:flex!important;
        flex-direction:column!important;

        /* Fundo sólido, sem qualquer efeito que reduza nitidez. */
        background:#174437!important;
        background-image:none!important;
        color:#ffffff!important;
        filter:none!important;
        opacity:1!important;
        backdrop-filter:none!important;
        -webkit-backdrop-filter:none!important;
        contain:layout paint!important;
    }

    /* O overlay escurece SOMENTE o conteúdo atrás do menu. */
    body.admin-premium-body .admin-sidebar-overlay{
        z-index:110!important;
        background:rgba(8,23,18,.48)!important;
        backdrop-filter:none!important;
        -webkit-backdrop-filter:none!important;
    }

    /* Desativa o overlay legado criado por body:after para não haver duas camadas. */
    body.admin-premium-body.admin-menu-open:after{
        display:none!important;
        content:none!important;
        pointer-events:none!important;
    }

    /*
     * Cabeçalho e rodapé ficam fixos dentro da sidebar.
     * SOMENTE a navegação central rola.
     * min-height:0 é essencial em containers flex no Chrome Android.
     */
    body.admin-premium-body .admin-brand{
        flex:0 0 auto!important;
        padding:18px 18px!important;
        border-bottom:1px solid rgba(255,255,255,.13)!important;
        background:#174437!important;
    }

    body.admin-premium-body .admin-nav{
        flex:1 1 auto!important;
        min-height:0!important;
        overflow-y:auto!important;
        overflow-x:hidden!important;
        padding:16px 12px 28px!important;
        -webkit-overflow-scrolling:touch!important;
        overscroll-behavior-y:contain!important;
        touch-action:pan-y!important;
        scrollbar-width:thin;
        scrollbar-color:rgba(255,255,255,.35) transparent;
    }

    body.admin-premium-body .admin-nav::-webkit-scrollbar{
        width:5px;
    }
    body.admin-premium-body .admin-nav::-webkit-scrollbar-track{
        background:transparent;
    }
    body.admin-premium-body .admin-nav::-webkit-scrollbar-thumb{
        background:rgba(255,255,255,.28);
        border-radius:999px;
    }

    body.admin-premium-body .admin-sidebar-footer{
        flex:0 0 auto!important;
        background:#133b30!important;
        border-top:1px solid rgba(255,255,255,.13)!important;
    }

    /* Legibilidade mobile — contraste AA/AAA mais confortável. */
    body.admin-premium-body .admin-brand strong{
        color:#ffffff!important;
        font-size:1rem!important;
        font-weight:900!important;
    }
    body.admin-premium-body .admin-brand small{
        color:#c6d8d0!important;
        font-size:.72rem!important;
    }

    body.admin-premium-body .admin-nav-group{
        margin-bottom:18px!important;
    }
    body.admin-premium-body .admin-nav-group-label{
        color:#b9cfc5!important;
        font-size:.67rem!important;
        font-weight:950!important;
        letter-spacing:.12em!important;
        padding:0 12px 7px!important;
    }

    body.admin-premium-body .admin-nav-item{
        min-height:46px!important;
        box-sizing:border-box!important;
        margin:3px 0!important;
        padding:10px 12px!important;
        color:#f1f7f4!important;
        font-size:.91rem!important;
        font-weight:800!important;
        line-height:1.25!important;
        border:1px solid transparent!important;
    }

    body.admin-premium-body .admin-nav-icon{
        color:#e1c782!important;
        opacity:1!important;
        font-size:.88rem!important;
    }

    body.admin-premium-body .admin-nav-item:hover,
    body.admin-premium-body .admin-nav-item:focus-visible{
        background:#205747!important;
        color:#ffffff!important;
    }

    body.admin-premium-body .admin-nav-item.active{
        background:#286653!important;
        color:#ffffff!important;
        border-color:rgba(255,255,255,.08)!important;
        box-shadow:inset 4px 0 0 #e1be6f!important;
    }

    /* Mantém o conteúdo atrás bloqueado, mas não a sidebar. */
    body.admin-premium-body.admin-menu-open{
        overflow:hidden!important;
    }

    body.admin-premium-body.admin-menu-open .admin-sidebar{
        pointer-events:auto!important;
    }
}


/* =========================================================
   v0.31.1-RC2.27.2 — Origem da Escolha do Médium
   ========================================================= */
.appointment-v2-choice-origin{
    min-width:190px;
    display:grid;
    gap:6px;
}
.appointment-v2-choice-origin>small{
    color:#7c8781;
    font-size:.48rem;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.appointment-choice-summary{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}
.choice-origin-badge{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 8px;
    border-radius:999px;
    font-size:.47rem;
    font-weight:900;
    line-height:1.2;
    white-space:nowrap;
}
.choice-origin-badge.visitor-choice{
    background:#e0efe5;
    color:#2f6649;
}
.choice-origin-badge.automatic{
    background:#eaf0f7;
    color:#49657c;
}
.choice-origin-badge.manual{
    background:#f5ead3;
    color:#7c6030;
}
.choice-origin-badge.unknown{
    background:#ecece8;
    color:#717873;
}
.appointment-choice-details summary{
    width:max-content;
    color:#456657;
    font-size:.48rem;
    font-weight:850;
    cursor:pointer;
}
.appointment-choice-detail-list{
    display:grid;
    gap:6px;
    margin-top:7px;
}
.appointment-choice-detail-item{
    display:grid;
    gap:2px;
    padding:7px 8px;
    border:1px solid #e0e5e1;
    border-radius:8px;
    background:#fafbf9;
}
.appointment-choice-detail-item strong{
    color:#35594a;
    font-size:.51rem;
}
.appointment-choice-detail-item span{
    color:#62736a;
    font-size:.47rem;
}
.appointment-choice-detail-item small{
    color:#8a938e;
    font-size:.45rem;
}
.appointment-choice-detail-item.mode-visitor_choice{
    border-left:3px solid #5a8b6c;
}
.appointment-choice-detail-item.mode-automatic{
    border-left:3px solid #7391aa;
}
.appointment-choice-detail-item.mode-manual{
    border-left:3px solid #b79a5e;
}
@media(max-width:980px){
    .appointment-v2-choice-origin{
        min-width:0;
    }
}

/* v0.31.1-RC2.28.0 — Operational Reliability Foundation */
.operational-health-head{align-items:center}.health-overall{display:flex;align-items:center;gap:12px;padding:14px 18px;border:1px solid #dfe4df;border-radius:14px;background:#fff}.health-overall>span,.health-light{width:11px;height:11px;border-radius:50%;display:inline-block;background:#7d8b84;box-shadow:0 0 0 5px rgba(125,139,132,.1)}.health-overall small{display:block;font-size:.55rem;letter-spacing:.08em;color:#7b857f}.health-overall strong{display:block;color:#163f34}.health-ok>span,.health-ok .health-light{background:#4aaa78;box-shadow:0 0 0 5px rgba(74,170,120,.12)}.health-warning>span,.health-warning .health-light{background:#c59b42;box-shadow:0 0 0 5px rgba(197,155,66,.12)}.health-error>span,.health-error .health-light{background:#bf5b52;box-shadow:0 0 0 5px rgba(191,91,82,.12)}.health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.health-card{position:relative;overflow:hidden;min-height:170px}.health-card:after{content:"";position:absolute;right:-45px;bottom:-55px;width:140px;height:140px;border:1px solid #e7e3d8;border-radius:50%}.health-card-top{display:flex;align-items:center;gap:9px}.health-card-top small{font-weight:900;letter-spacing:.08em;color:#718078}.health-card h2{margin:15px 0 6px}.health-card p{min-height:42px;color:#68766f}.health-card a{font-weight:850;color:#235d49}.health-action-buttons{display:flex;gap:10px;flex-wrap:wrap}.health-action-buttons form{margin:0}.health-integrity-list{display:grid;gap:8px}.health-integrity-list>a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:11px;border:1px solid #e2e5df;border-radius:12px;text-decoration:none;color:#244a3d}.health-count{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f2e4c7;font-weight:900}.health-count.ok{background:#e4f2e9;color:#2c6c4b}.health-count.unknown{background:#ecece8;color:#6d7771}@media(max-width:800px){.health-grid{grid-template-columns:1fr}.operational-health-head{align-items:flex-start}.health-overall{width:100%}.health-integrity-list>a{grid-template-columns:38px 1fr}.health-integrity-list>a>span:last-child{display:none}}


/* =========================================================
   v0.31.1-RC2.29.0 — Auditoria Administrativa Avançada 2.0
   ========================================================= */
.administrative-audit-head{
    align-items:flex-end;
}
.administrative-audit-head>div{
    max-width:850px;
}
.administrative-audit-metrics{
    margin-bottom:16px;
}
.administrative-audit-filter-card{
    margin-bottom:16px;
}
.administrative-audit-filter{
    display:grid;
    grid-template-columns:minmax(230px,1.4fr) minmax(150px,.55fr) minmax(180px,.7fr) minmax(190px,.75fr) 145px 145px auto;
    gap:10px;
    align-items:end;
}
.administrative-audit-filter label{
    margin:0!important;
}
.administrative-audit-filter-actions{
    display:flex;
    gap:7px;
    align-items:end;
}
.administrative-audit-list-card{
    padding:0!important;
    overflow:hidden;
}
.administrative-audit-list-card>.admin-card-head{
    padding:18px 20px;
    margin:0!important;
    border-bottom:1px solid #e5e8e3;
}
.administrative-audit-list{
    display:grid;
}
.administrative-audit-row{
    display:grid;
    grid-template-columns:76px minmax(190px,.7fr) minmax(0,1.6fr) auto;
    gap:14px;
    align-items:center;
    padding:13px 18px;
    border-bottom:1px solid #eceeea;
    color:inherit;
    text-decoration:none;
    transition:background .16s ease;
}
.administrative-audit-row:last-child{
    border-bottom:0;
}
.administrative-audit-row:hover{
    background:#f8faf7;
}
.administrative-audit-time{
    display:grid;
    justify-items:start;
}
.administrative-audit-time strong{
    color:#294f40;
    font-size:.72rem;
}
.administrative-audit-time small{
    margin-top:2px;
    color:#8b958f;
    font-size:.45rem;
}
.administrative-audit-user{
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:8px;
    align-items:center;
    min-width:0;
}
.audit-user-avatar{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border-radius:10px;
    background:#e0ebe4;
    color:#2e6049;
    font-size:.62rem;
    font-weight:950;
}
.administrative-audit-user strong,
.administrative-audit-user small{
    display:block;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.administrative-audit-user strong{
    color:#3c5e50;
    font-size:.55rem;
}
.administrative-audit-user small{
    margin-top:2px;
    color:#8a948f;
    font-size:.44rem;
}
.administrative-audit-main{
    display:grid;
    gap:4px;
    min-width:0;
}
.administrative-audit-tags{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
    align-items:center;
}
.administrative-audit-tags span,
.administrative-audit-tags b,
.administrative-audit-tags em{
    display:inline-flex;
    align-items:center;
    min-height:21px;
    padding:3px 7px;
    border-radius:999px;
    font-size:.43rem;
    font-style:normal;
    font-weight:900;
    line-height:1.1;
}
.administrative-audit-tags span{
    background:#e7efe9;
    color:#39624f;
}
.administrative-audit-tags b{
    background:#eef0ed;
    color:#66736c;
    text-transform:capitalize;
}
.administrative-audit-tags em{
    background:#f4e8ce;
    color:#806129;
}
.administrative-audit-main>strong{
    display:block;
    overflow:hidden;
    color:#3f5c50;
    font-size:.55rem;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.administrative-audit-main>small{
    color:#939b97;
    font-size:.44rem;
}
.administrative-audit-open{
    color:#426454;
    font-size:.48rem;
    font-weight:900;
    white-space:nowrap;
}
.administrative-audit-detail-layout{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
    gap:16px;
    align-items:start;
}
.administrative-audit-detail-layout>main{
    overflow:hidden;
}
.audit-detail-summary-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:8px;
    margin-bottom:18px;
}
.audit-detail-summary-grid>div{
    display:grid;
    gap:2px;
    padding:11px;
    border:1px solid #e1e6e1;
    border-radius:10px;
    background:#fafbf9;
}
.audit-detail-summary-grid small{
    color:#8a948f;
    font-size:.43rem;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.audit-detail-summary-grid strong{
    color:#365749;
    font-size:.58rem;
    overflow-wrap:anywhere;
}
.audit-detail-summary-grid span{
    color:#7e8a84;
    font-size:.46rem;
    overflow-wrap:anywhere;
}
.audit-change-section{
    padding-top:4px;
}
.audit-change-section .admin-card-head{
    margin-bottom:10px;
}
.audit-change-list{
    display:grid;
    gap:8px;
}
.audit-change-list article{
    display:grid;
    grid-template-columns:minmax(120px,.32fr) minmax(0,1fr) 26px minmax(0,1fr);
    gap:8px;
    align-items:stretch;
    padding:9px;
    border:1px solid #e0e5e0;
    border-radius:11px;
    background:#fbfcfa;
}
.audit-change-field{
    display:flex;
    align-items:center;
    color:#335647;
    font-size:.51rem;
    font-weight:900;
    text-transform:capitalize;
}
.audit-change-before,
.audit-change-after{
    min-width:0;
    padding:8px;
    border-radius:8px;
}
.audit-change-before{
    background:#f6eded;
}
.audit-change-after{
    background:#edf6ef;
}
.audit-change-before small,
.audit-change-after small{
    display:block;
    margin-bottom:4px;
    font-size:.4rem;
    font-weight:950;
    letter-spacing:.07em;
}
.audit-change-before small{color:#945e5b}
.audit-change-after small{color:#4b755b}
.audit-change-before pre,
.audit-change-after pre{
    margin:0;
    max-height:160px;
    overflow:auto;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    color:#5f6b65;
    font:500 .47rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;
}
.audit-change-arrow{
    display:grid;
    place-items:center;
    color:#9aa39f;
    font-weight:950;
}
.administrative-audit-detail-sidebar{
    display:grid;
    gap:12px;
}
.audit-context-list{
    display:grid;
    gap:8px;
    margin-top:10px;
}
.audit-context-list>div{
    display:grid;
    gap:2px;
    padding-top:8px;
    border-top:1px solid #eceeea;
}
.audit-context-list small{
    color:#8a948e;
    font-size:.43rem;
    font-weight:900;
    text-transform:uppercase;
}
.audit-context-list strong{
    color:#425f53;
    font-size:.5rem;
    overflow-wrap:anywhere;
}
.audit-json-details summary{
    color:#456357;
    font-size:.5rem;
    font-weight:850;
    cursor:pointer;
}
.audit-json-details pre{
    margin:9px 0 0;
    max-height:420px;
    overflow:auto;
    padding:9px;
    border-radius:8px;
    background:#f5f7f4;
    color:#5e6d66;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    font:500 .43rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;
}
@media(max-width:1200px){
    .administrative-audit-filter{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }
    .administrative-audit-filter-actions{
        grid-column:1/-1;
    }
    .administrative-audit-row{
        grid-template-columns:72px minmax(170px,.7fr) minmax(0,1.3fr);
    }
    .administrative-audit-open{
        grid-column:2/-1;
    }
}
@media(max-width:900px){
    .administrative-audit-detail-layout{
        grid-template-columns:1fr;
    }
    .audit-detail-summary-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .audit-change-list article{
        grid-template-columns:1fr;
    }
    .audit-change-arrow{
        transform:rotate(90deg);
        min-height:18px;
    }
}
@media(max-width:700px){
    .administrative-audit-head{
        align-items:stretch;
        flex-direction:column;
    }
    .administrative-audit-filter{
        grid-template-columns:1fr;
    }
    .administrative-audit-filter-actions{
        grid-column:auto;
        display:grid;
        grid-template-columns:1fr 1fr;
    }
    .administrative-audit-row{
        grid-template-columns:58px minmax(0,1fr);
        gap:9px;
        padding:12px;
    }
    .administrative-audit-user{
        grid-column:2;
    }
    .administrative-audit-main{
        grid-column:1/-1;
    }
    .administrative-audit-open{
        grid-column:1/-1;
    }
    .audit-detail-summary-grid{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   v0.31.1-RC2.29.1 — Alteração Administrativa de Médium
   ========================================================= */
.appointment-medium-admin-edit{
    margin-top:7px;
}
.appointment-medium-admin-edit>summary{
    width:max-content;
    color:#2f624a;
    font-size:.49rem;
    font-weight:950;
    cursor:pointer;
}
.appointment-medium-admin-list{
    display:grid;
    gap:8px;
    margin-top:8px;
}
.appointment-medium-admin-card{
    display:grid;
    gap:9px;
    padding:10px;
    border:1px solid #dce5df;
    border-radius:10px;
    background:#f8faf8;
}
.appointment-medium-admin-card.is-locked{
    background:#f4f3ef;
}
.appointment-medium-admin-current{
    display:grid;
    gap:2px;
}
.appointment-medium-admin-current strong{
    color:#315745;
    font-size:.53rem;
}
.appointment-medium-admin-current small{
    color:#78857e;
    font-size:.46rem;
    line-height:1.4;
}
.appointment-medium-admin-card form{
    display:grid;
    gap:8px;
}
.appointment-medium-admin-card label{
    margin:0!important;
    color:#486257;
    font-size:.48rem;
}
.appointment-medium-admin-card label span{
    color:#8d9691;
    font-weight:500;
}
.appointment-medium-admin-card select,
.appointment-medium-admin-card input{
    margin-top:4px;
}
.appointment-medium-admin-help,
.appointment-medium-locked-note{
    display:block;
    color:#7e8b84;
    font-size:.45rem;
    line-height:1.5;
}
.appointment-medium-locked-note{
    padding:8px;
    border-radius:8px;
    background:#eceae4;
}
.appointment-medium-admin-card button{
    justify-self:start;
}
@media(max-width:780px){
    .appointment-medium-admin-edit>summary{
        min-height:34px;
        display:flex;
        align-items:center;
    }
    .appointment-medium-admin-card button{
        width:100%;
    }
}


/* =========================================================
   v0.31.1-RC2.29.2 — Desenvolvimento Mediúnico Inbox
   ========================================================= */
.mediumship-interest-row{
    text-decoration:none;
    color:inherit;
}
.mediumship-interest-row .relationship-copy em{
    display:block;
    margin-top:4px;
    max-width:420px;
    color:#7e8a83;
    font-size:.46rem;
    font-style:normal;
    line-height:1.45;
}
.mediumship-thread-layout .mediumship-received-card{
    border-left:4px solid #b39455;
}
.mediumship-empty-message{
    color:#87928d;
    font-style:italic;
}
.mediumship-interest-sidebar{
    align-content:start;
}
.mediumship-whatsapp-card{
    display:grid;
    gap:9px;
}
.mediumship-whatsapp-card h3{
    margin:0;
    color:#33594a;
    font-size:.82rem;
}
.mediumship-whatsapp-card>p{
    margin:0;
    color:#7a8780;
    font-size:.51rem;
    line-height:1.5;
}
.mediumship-whatsapp-card form{
    display:grid;
    gap:9px;
}
.mediumship-whatsapp-card label{
    margin:0!important;
}
.mediumship-whatsapp-card textarea{
    min-height:140px;
    resize:vertical;
}
.mediumship-whatsapp-card form>small{
    color:#89938e;
    font-size:.45rem;
    line-height:1.45;
}
.mediumship-whatsapp-disclaimer{
    margin:0 16px 14px;
    padding:8px 10px;
    border-radius:8px;
    background:#f1f4f2;
    color:#78857e;
    font-size:.45rem;
    line-height:1.45;
}
.relationship-status-badge.status-contacted{
    background:#e2eee6;
    color:#3c6b50;
}
.relationship-status-badge.status-interview{
    background:#e8eef6;
    color:#506a83;
}
.relationship-status-badge.status-approved{
    background:#dcefe3;
    color:#2f7049;
}
.relationship-status-badge.status-declined{
    background:#f3e6e2;
    color:#8a5b50;
}
@media(max-width:780px){
    .mediumship-interest-row .relationship-copy em{
        max-width:none;
    }
    .mediumship-whatsapp-card button{
        width:100%;
    }
}


/* =========================================================
   v0.31.1-RC2.29.3 — Edição de Respostas Rápidas
   ========================================================= */
.relationship-template-list article.is-editing{
    border-color:#b99b5b!important;
    box-shadow:0 0 0 2px rgba(185,155,91,.12);
}
.relationship-template-title-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
}
.relationship-template-editing-pill{
    display:inline-flex;
    align-items:center;
    min-height:21px;
    padding:3px 7px;
    border-radius:999px;
    background:#f4e8cf;
    color:#7d602a;
    font-size:.42rem;
    font-weight:950;
    letter-spacing:.06em;
}
.relationship-template-card-actions{
    display:flex;
    align-items:flex-start;
    gap:7px;
    flex-wrap:wrap;
}
.relationship-template-card-actions form{
    margin:0;
}
.relationship-template-form.is-editing{
    border-color:#d9c89f;
    background:linear-gradient(180deg,#fbfaf5,#f6f4ea);
    box-shadow:0 12px 28px rgba(93,72,31,.07);
}
.relationship-template-form-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
}
.relationship-template-form-head>div{
    display:grid;
    gap:4px;
}
.relationship-template-form-head strong{
    color:#355848;
    font-size:.66rem;
}
.relationship-template-form-actions{
    display:flex;
    gap:8px;
    align-items:center;
    flex-wrap:wrap;
}
@media(max-width:720px){
    .relationship-template-card-actions,
    .relationship-template-form-actions{
        display:grid;
        grid-template-columns:1fr 1fr;
    }
    .relationship-template-card-actions .button,
    .relationship-template-card-actions button,
    .relationship-template-form-actions .button,
    .relationship-template-form-actions button{
        width:100%;
    }
    .relationship-template-form-head{
        flex-direction:column;
    }
}


/* v0.31.1-RC2.30.0 - Central de impressão dos Cambones */
.cambone-batch-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.cambone-batch-option{padding:18px;border:1px solid #dfe8e2;border-radius:14px;background:#f8faf8}
.cambone-batch-option.economical{background:#faf8f1;border-color:#e8dfc9}
.cambone-batch-option h3{margin:5px 0;color:#315747;font-size:.86rem}
.cambone-batch-option p{margin:0 0 14px;color:#77857e;font-size:.53rem;line-height:1.55}
.cambone-print-note{margin:0 0 16px;padding:12px 14px;border-radius:10px;background:#edf4ef;color:#52695e;font-size:.53rem;line-height:1.55}
@media(max-width:760px){.cambone-batch-actions{grid-template-columns:1fr}.cambone-batch-option .button{width:100%}}

/* v0.31.1-RC2.30.1 - QR local + confirmação manual WhatsApp */
.appointment-whatsapp-confirmation{margin-top:8px}
.appointment-whatsapp-confirmation>summary{color:#35654e;font-size:.49rem;font-weight:950;cursor:pointer}
.appointment-whatsapp-confirmation form{display:grid;gap:8px;margin-top:8px;padding:10px;border:1px solid #dce8e0;border-radius:10px;background:#f7faf8}
.appointment-whatsapp-confirmation textarea{resize:vertical;min-height:135px}
.appointment-whatsapp-confirmation form>small,.booking-mail-delivery-note{display:block;color:#7d8983;font-size:.44rem;line-height:1.45}
.booking-mail-delivery-note{margin-top:5px;max-width:560px}
.qr-local-fallback{display:grid;gap:7px;place-content:center;width:210px;min-height:210px;padding:18px;text-align:center;border:1px dashed #b8c7bf;border-radius:10px;background:#f7faf8;color:#53675e}
.qr-local-fallback strong{font-size:.72rem}.qr-local-fallback span{font-size:.56rem;line-height:1.5}
@media(max-width:760px){.appointment-whatsapp-confirmation button{width:100%}}


/* v0.31.1-RC2.30.3 - WhatsApp confirmation redirect hotfix */
.appointment-whatsapp-confirmation-form{
    display:grid;
    gap:8px;
    margin-top:8px;
    padding:10px;
    border:1px solid #dce8e0;
    border-radius:10px;
    background:#f7faf8;
}
.appointment-whatsapp-confirmation-form textarea{
    resize:vertical;
    min-height:135px;
}
.appointment-whatsapp-confirmation-form>small{
    display:block;
    color:#7d8983;
    font-size:.44rem;
    line-height:1.45;
}
@media(max-width:760px){
    .appointment-whatsapp-confirmation-form button{width:100%}
}

.appointment-whatsapp-link-actions{display:flex;gap:8px;flex-wrap:wrap}.appointment-whatsapp-copy-status{color:#47705c!important;font-weight:800}@media(max-width:760px){.appointment-whatsapp-link-actions{display:grid}.appointment-whatsapp-link-actions .button,.appointment-whatsapp-link-actions button{width:100%;text-align:center}}
/* RC2.31.0 - relatorios termicos Cambone */
.medium-report-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.medium-report-item{gap:12px}.cambone-batch-actions{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}@media(max-width:760px){.medium-report-actions{width:100%;display:grid;grid-template-columns:1fr}.medium-report-actions .button{width:100%;text-align:center}}
/* RC2.32.0 - Passkeys / WebAuthn */
.auth-passkey-separator{display:flex;align-items:center;gap:12px;margin:16px 0;color:#7a807d}.auth-passkey-separator:before,.auth-passkey-separator:after{content:"";height:1px;background:#dfe4e1;flex:1}.passkey-card{margin-top:18px}.passkey-list{margin-top:22px}.passkey-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid #e3e7e5}.passkey-item small{display:block;margin-top:4px;color:#68706c}@media(max-width:700px){.passkey-item{align-items:stretch;flex-direction:column}.passkey-item form,.passkey-item button{width:100%}}
