:root{--adpc-blue:#243A53;--adpc-terra:#A8571F;--adpc-beige:#F4F1EC;--adpc-text:#2B2B2B;--adpc-light:#4A6FA5;--adpc-white:#fff;--adpc-line:#ddd8d0;--adpc-radius:18px}
.adpc-app{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:76vh;background:#f8f6f2;border:1px solid var(--adpc-line);font-family:Montserrat,Arial,sans-serif;color:var(--adpc-text);overflow:hidden}
.adpc-sidebar{background:var(--adpc-blue);color:#fff;padding:28px 18px;display:flex;flex-direction:column;gap:28px}.adpc-brand{font-family:"Playfair Display",serif;font-size:20px;color:#fff;text-decoration:none;padding:0 10px}.adpc-sidebar nav{display:grid;gap:6px}.adpc-sidebar nav a{color:#e8edf3;text-decoration:none;padding:11px 12px;border-radius:10px;font-size:14px}.adpc-sidebar nav a:hover,.adpc-sidebar nav a.is-active{background:rgba(255,255,255,.12);color:#fff}.adpc-sidebar-foot{margin-top:auto;border-top:1px solid rgba(255,255,255,.15);padding:18px 10px 0;display:flex;justify-content:space-between;gap:10px;font-size:12px}.adpc-sidebar-foot a{color:#fff}
.adpc-main{min-width:0}.adpc-topbar{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid var(--adpc-line);background:#fff}.adpc-topbar h1{font:700 28px/1.1 Montserrat,sans-serif;color:var(--adpc-blue);margin:0}.adpc-topbar p{margin:5px 0 0;color:#6c6a66;font-size:13px}.adpc-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--adpc-terra);color:#fff;text-decoration:none;font-weight:700}.adpc-content{padding:28px 32px 110px;max-width:1280px;width:100%;box-sizing:border-box}
.adpc-dashboard-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.adpc-hero-card{grid-column:1/-1;background:var(--adpc-blue);color:#fff;border-radius:24px;padding:28px 30px;display:flex;justify-content:space-between;gap:24px;align-items:center}.adpc-hero-card h2{font:700 34px/1.1 "Playfair Display",serif;margin:5px 0 10px;color:#fff}.adpc-hero-card p{max-width:690px;color:#e7ebef}.adpc-kicker{font-size:11px;letter-spacing:.16em;font-weight:700;color:var(--adpc-terra)}.adpc-quota{width:138px;height:138px;border:12px solid rgba(255,255,255,.16);border-top-color:var(--adpc-terra);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 auto}.adpc-quota strong{font-size:38px}.adpc-quota span{font-size:11px;text-align:center;max-width:80px}
.adpc-card,.adpc-object-card,.adpc-day{background:#fff;border:1px solid var(--adpc-line);border-radius:var(--adpc-radius);padding:20px}.adpc-card-head,.adpc-section-head,.adpc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.adpc-card h3,.adpc-card-head h2,.adpc-section-head h2{margin:0;color:var(--adpc-blue)}
.adpc-card-head>h2{font-size:1.2rem;font-weight:700}.adpc-card-head a,.adpc-link{font-size:12px;color:var(--adpc-light);background:none;border:0;text-decoration:none;cursor:pointer}.adpc-stat-row{display:flex;gap:30px;padding-top:16px}.adpc-stat-row div{display:grid}.adpc-stat-row strong{font-size:28px;color:var(--adpc-blue)}.adpc-stat-row span{font-size:12px;color:#777}
.adpc-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--adpc-blue);background:#fff;color:var(--adpc-blue);font:600 13px Montserrat,sans-serif;padding:10px 15px;border-radius:10px;text-decoration:none;cursor:pointer}.adpc-button-primary{background:var(--adpc-blue);color:#fff}.adpc-button-accent{background:var(--adpc-terra);border-color:var(--adpc-terra);color:#fff}.adpc-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.adpc-tabs button{border:1px solid var(--adpc-line);background:#fff;padding:9px 14px;border-radius:999px;cursor:pointer;color:#555}.adpc-tabs button.is-active{background:var(--adpc-blue);color:#fff;border-color:var(--adpc-blue)}.adpc-tab-panel{display:none}.adpc-tab-panel.is-active{display:block}.adpc-section-head{margin:8px 0 18px}.adpc-section-head p{margin:5px 0 0;color:#777;font-size:13px}
.adpc-object-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}.adpc-object-card{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:14px}.adpc-object-actions{display:flex;align-items:center;gap:10px}.adpc-object-card h3{margin:0 0 4px;color:var(--adpc-blue);font-size:1.05rem;line-height:1.28;overflow-wrap:anywhere}.adpc-object-card p{margin:0;color:#777;font-size:12px}.adpc-object-icon{width:54px;height:54px;border-radius:14px;background:var(--adpc-beige);display:grid;place-items:center;overflow:hidden;color:var(--adpc-blue);font-weight:700}.adpc-object-icon img{width:100%;height:100%;object-fit:contain}.adpc-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.adpc-tags span{font-size:10px;background:#eef2f6;color:var(--adpc-blue);padding:5px 7px;border-radius:999px}.adpc-empty{padding:24px;border:1px dashed #c9c3ba;border-radius:14px;color:#817d77;background:#fff}.adpc-toast{background:#edf7ef;border:1px solid #b8dfc1;color:#285d34;padding:10px 14px;border-radius:10px;margin-bottom:16px}
.adpc-inline-form{display:grid;grid-template-columns:1.3fr .8fr .8fr auto;gap:10px;margin-bottom:18px}.adpc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.adpc-drawer label,.adpc-narrow label,.adpc-card label{display:grid;gap:6px;margin:12px 0}.adpc-drawer label>span,.adpc-narrow label>span,.adpc-card label>span{font-size:12px;font-weight:600;color:var(--adpc-blue)}.adpc-drawer input,.adpc-drawer select,.adpc-drawer textarea,.adpc-narrow textarea,.adpc-inline-form input,.adpc-inline-form select,.adpc-toolbar select,.adpc-card input,.adpc-card select,.adpc-card textarea,.adpc-schedule select{width:100%;box-sizing:border-box;border:1px solid #d6d1ca;border-radius:9px;padding:10px 11px;background:#fff;font:13px Montserrat,sans-serif}.adpc-drawer small{font-size:11px;color:#777}.adpc-drawer fieldset{border:0;padding:0;margin:18px 0}.adpc-drawer legend{font-weight:700;color:var(--adpc-blue);margin-bottom:8px}.adpc-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.adpc-check-grid label{display:flex;align-items:center;gap:8px;border:1px solid var(--adpc-line);border-radius:10px;padding:9px;margin:0}.adpc-check-grid input{width:auto}.adpc-drawer{position:fixed;z-index:99999;top:0;right:0;height:100vh;width:min(540px,94vw);background:#fff;box-shadow:-20px 0 50px rgba(0,0,0,.18);padding:26px;box-sizing:border-box;overflow:auto;transform:translateX(105%);transition:.25s ease}.adpc-drawer.is-open{transform:translateX(0)}.adpc-drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--adpc-line);padding-bottom:12px}.adpc-drawer-head h3{margin:0}.adpc-drawer-head button{font-size:28px;border:0;background:none;cursor:pointer}.adpc-form-actions{display:flex;justify-content:flex-end;margin-top:20px}.adpc-narrow{max-width:760px}.adpc-narrow h2{color:var(--adpc-blue)}
.adpc-schedule-wrap{overflow:auto;margin:18px 0}.adpc-schedule{border-collapse:separate;border-spacing:0;width:100%;min-width:900px;background:#fff;border:1px solid var(--adpc-line);border-radius:14px;overflow:hidden}.adpc-schedule th,.adpc-schedule td{border-right:1px solid var(--adpc-line);border-bottom:1px solid var(--adpc-line);padding:10px;text-align:left}.adpc-schedule thead th{background:var(--adpc-blue);color:#fff}.adpc-week-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.adpc-day{padding:0;overflow:hidden}.adpc-day header{padding:12px 14px;background:var(--adpc-blue);color:#fff;display:flex;justify-content:space-between}.adpc-day .adpc-agenda-list{padding:10px}.adpc-agenda-list{display:grid;gap:9px}.adpc-agenda-item{display:grid;grid-template-columns:100px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid #eee}.adpc-agenda-item:last-child{border-bottom:0}.adpc-agenda-item time{font-size:11px;color:#777}.adpc-agenda-item div{display:grid}.adpc-agenda-item strong{font-size:13px;color:var(--adpc-blue)}.adpc-agenda-item span{font-size:11px;color:#777;margin-top:3px}
.adpc-public{background:var(--adpc-beige);padding:54px 0;font-family:Montserrat,sans-serif}.adpc-public-hero{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;padding:20px}.adpc-public h1{font:700 clamp(42px,6vw,72px)/.98 "Playfair Display",serif;color:var(--adpc-blue);margin:10px 0 20px}.adpc-public p{color:#5c5a56;line-height:1.65}.adpc-demo{background:#fff;border-radius:22px;border:1px solid var(--adpc-line);padding:20px;box-shadow:0 20px 60px rgba(36,58,83,.12);min-height:330px;position:relative}.adpc-demo-bar{display:flex;gap:6px;border-bottom:1px solid #eee;padding-bottom:14px}.adpc-demo-bar i{width:8px;height:8px;border-radius:50%;background:#ddd}.adpc-demo-step{position:absolute;inset:80px 28px 28px;opacity:0;transform:translateY(10px);transition:.35s;display:grid;align-content:center;gap:9px}.adpc-demo-step.is-active{opacity:1;transform:none}.adpc-demo-step span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--adpc-terra);color:#fff;font-weight:700}.adpc-demo-step strong{font-size:24px;color:var(--adpc-blue)}.adpc-demo-step small{color:#777}.adpc-public-actions{max-width:1180px;margin:36px auto 0;padding:0 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.adpc-public-actions article{background:#fff;border:1px solid var(--adpc-line);padding:22px;border-radius:18px}.adpc-public-actions strong{color:var(--adpc-blue);font-size:18px}.adpc-public-actions p{font-size:13px;margin-bottom:0}.adpc-plan-list .adp-planning-history{margin:0}
@media(max-width:960px){.adpc-app{grid-template-columns:1fr}.adpc-sidebar{position:relative;padding:16px}.adpc-sidebar nav{display:flex;overflow:auto}.adpc-sidebar-foot{display:none}.adpc-topbar,.adpc-content{padding-left:18px;padding-right:18px}.adpc-dashboard-grid,.adpc-object-grid,.adpc-public-hero,.adpc-public-actions{grid-template-columns:1fr}.adpc-week-grid{grid-template-columns:1fr}.adpc-inline-form{grid-template-columns:1fr 1fr}.adpc-public h1{font-size:46px}}
@media print{.site-header,.site-footer,.adpc-sidebar,.adpc-topbar,.adpc-toolbar,.adpc-button{display:none!important}.adpc-app{display:block;border:0}.adpc-content{padding:0}.adpc-schedule{min-width:0;font-size:10px}}
.adpc-planning-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.adpc-progress-labels{display:flex;gap:8px;flex-wrap:wrap}.adpc-progress-labels span{font-size:11px;padding:7px 9px;border-radius:999px;background:#fff;border:1px solid var(--adpc-line);color:#777}.adpc-progress-labels span.is-active{background:var(--adpc-blue);border-color:var(--adpc-blue);color:#fff}.adpc-mini-quota{font-size:12px;color:#777}.adpc-mini-quota strong{font-size:22px;color:var(--adpc-blue)}.adpc-plan-form{background:#fff;border:1px solid var(--adpc-line);border-radius:20px;padding:24px}.adpc-plan-step{display:none;min-height:420px}.adpc-plan-step.is-active{display:block}.adpc-step-title{display:flex;gap:14px;align-items:flex-start;margin-bottom:22px}.adpc-step-title>span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--adpc-terra);color:#fff;font-weight:700;font-size:12px}.adpc-step-title h2{margin:0;color:var(--adpc-blue);font-size:24px}.adpc-step-title p{margin:5px 0 0;color:#777;font-size:13px}.adpc-plan-form>section>label,.adpc-plan-form .adpc-conditional-card label{display:grid;gap:7px;margin:14px 0}.adpc-plan-form label>span,.adpc-field-label{font-size:12px;font-weight:600;color:var(--adpc-blue)}.adpc-plan-form input,.adpc-plan-form select,.adpc-plan-form textarea{width:100%;box-sizing:border-box;border:1px solid #d6d1ca;border-radius:10px;padding:11px 12px;background:#fff;font:13px Montserrat,sans-serif}.adpc-plan-form em{font-style:normal;font-weight:400;color:#999}.adpc-plan-form small{font-size:10px;color:#777}.adpc-class-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:8px}.adpc-class-options label,.adpc-general-year label,.adpc-radio-cards label{margin:0!important}.adpc-class-options input,.adpc-general-year input,.adpc-radio-cards input{position:absolute;opacity:0;pointer-events:none}.adpc-class-options label>span,.adpc-general-year label>span,.adpc-radio-cards label>span{display:grid;border:1px solid var(--adpc-line);border-radius:12px;padding:12px;background:#fff;cursor:pointer;color:var(--adpc-blue)}.adpc-class-options input:checked+span,.adpc-general-year input:checked+span,.adpc-radio-cards input:checked+span{border-color:var(--adpc-blue);box-shadow:inset 0 0 0 1px var(--adpc-blue);background:#f2f5f8}.adpc-class-options strong{font-size:13px}.adpc-class-options small{margin-top:4px}.adpc-general-year{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:14px 0}.adpc-general-year>span{font-size:11px;color:#777;margin-right:4px}.adpc-general-year label>span{padding:8px 11px}.adpc-resource-box,.adpc-conditional-card,.adpc-context-hint,.adpc-plan-summary{border:1px solid var(--adpc-line);border-radius:14px;padding:16px;margin:14px 0;background:#fbfaf8}.adpc-radio-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px}.adpc-switch-row{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px}.adpc-switch-row input{width:auto}.adpc-switch-row>span{display:grid}.adpc-muted{font-size:12px;color:#888}.adpc-plan-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.adpc-summary-item{display:grid;gap:4px;background:#fff;border:1px solid #eee;border-radius:10px;padding:12px}.adpc-summary-item span{font-size:10px;color:#888;text-transform:uppercase;letter-spacing:.08em}.adpc-summary-item strong{font-size:13px;color:var(--adpc-blue)}.adpc-context-hint{display:grid;gap:6px}.adpc-context-hint strong{color:var(--adpc-blue)}.adpc-context-hint span{font-size:12px;color:#666;line-height:1.5}.adpc-wizard-actions{display:flex;justify-content:space-between;border-top:1px solid #eee;padding-top:16px;margin-top:8px}.adpc-bncc-note{margin-top:14px}
@media(max-width:760px){.adpc-class-options,.adpc-radio-cards,.adpc-plan-summary{grid-template-columns:1fr}.adpc-planning-head{align-items:flex-start;flex-direction:column}}
.adpc-student-columns{display:grid;grid-template-columns:.8fr 1.2fr;gap:16px}.adpc-student-detail h2{margin:5px 0;color:var(--adpc-blue)}.adpc-student-detail .adpc-card p{font-size:12px;line-height:1.6}.adpc-timeline{display:grid;gap:0}.adpc-timeline article{display:grid;gap:5px;padding:12px 0;border-bottom:1px solid #eee}.adpc-timeline article:last-child{border-bottom:0}.adpc-timeline time{font-size:10px;color:#888}.adpc-timeline strong{font-size:13px;color:var(--adpc-blue)}.adpc-timeline p,.adpc-timeline small{margin:0;font-size:11px;color:#666;line-height:1.5}
@media(max-width:760px){.adpc-student-columns{grid-template-columns:1fr}}

/* 2.1 — navegação integrada e página pública adaptativa */
.adpc-sidebar{padding-top:22px}.adpc-brand{display:grid;gap:2px}.adpc-brand small{font:700 9px/1 Montserrat,sans-serif;letter-spacing:.18em;color:rgba(255,255,255,.56)}.adpc-brand strong{font:700 17px/1.2 "Playfair Display",serif;color:#fff}.adpc-side-nav{display:grid!important;gap:20px!important}.adpc-nav-group{display:grid;gap:4px}.adpc-nav-group>span{padding:0 12px 5px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.45);font-weight:700}.adpc-nav-group a{padding:9px 12px!important}
.adpc-public{padding:0;background:var(--adpc-beige);overflow:hidden}.adpc-public-hero{padding:72px 24px 68px}.adpc-public-copy{max-width:610px}.adpc-public h1{font-size:clamp(44px,5.8vw,72px);max-width:720px}.adpc-public-cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.adpc-member-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px;padding:11px 13px;border:1px solid rgba(36,58,83,.14);background:rgba(255,255,255,.54);width:max-content;max-width:100%;border-radius:12px}.adpc-member-strip span,.adpc-member-strip small{font-size:11px;color:#777}.adpc-member-strip strong{color:var(--adpc-blue);font-size:13px}.adpc-demo{min-height:360px}.adpc-demo-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:13px;color:var(--adpc-blue);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.adpc-demo-head small{font-weight:500;color:#999;text-transform:none;letter-spacing:0}.adpc-demo-progress{position:absolute;left:28px;right:28px;bottom:24px;height:4px;background:#eee;border-radius:99px;overflow:hidden}.adpc-demo-progress i{display:block;height:100%;width:25%;background:var(--adpc-terra);animation:adpc-demo-progress 8.8s linear infinite}@keyframes adpc-demo-progress{from{width:0}to{width:100%}}
.adpc-public-tools{max-width:1180px;margin:0 auto;padding:70px 24px}.adpc-public-tools>header{display:grid;grid-template-columns:.65fr 1.35fr;gap:24px;align-items:end;margin-bottom:26px}.adpc-public-tools h2,.adpc-public-plan h2{font:700 clamp(32px,4.5vw,50px)/1.05 "Playfair Display",serif;color:var(--adpc-blue);margin:0}.adpc-tool-mosaic{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.adpc-tool-mosaic article{background:#fff;border:1px solid var(--adpc-line);border-radius:18px;padding:24px;min-height:170px}.adpc-tool-mosaic article.is-wide{grid-row:span 2;display:flex;flex-direction:column;justify-content:flex-end;background:var(--adpc-blue);color:#fff}.adpc-tool-mosaic article>span{font-size:10px;letter-spacing:.15em;color:var(--adpc-terra);font-weight:700}.adpc-tool-mosaic h3{font:700 24px/1.1 "Playfair Display",serif;color:var(--adpc-blue);margin:10px 0}.adpc-tool-mosaic .is-wide h3{color:#fff;font-size:34px}.adpc-tool-mosaic p{font-size:13px;margin:0;line-height:1.6}.adpc-tool-mosaic .is-wide p{color:#dfe5eb}.adpc-mini-flow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:22px}.adpc-mini-flow b{font-size:11px;padding:7px 9px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:999px}.adpc-mini-flow i{font-style:normal;color:var(--adpc-terra)}
.adpc-public-plan{background:#fff;border-top:1px solid var(--adpc-line);border-bottom:1px solid var(--adpc-line);display:grid;grid-template-columns:1fr .82fr;gap:50px;align-items:center;padding:64px max(24px,calc((100vw - 1180px)/2))}.adpc-public-plan-copy p{max-width:650px}.adpc-plan-state{border:1px solid var(--adpc-line);background:var(--adpc-beige);border-radius:18px;padding:24px;display:grid;gap:8px}.adpc-plan-state small{font-size:9px;letter-spacing:.15em;color:var(--adpc-terra);font-weight:700}.adpc-plan-state strong{font:700 26px/1.1 "Playfair Display",serif;color:var(--adpc-blue)}.adpc-plan-state span{font-size:12px;color:#666;margin-bottom:10px}
@media(max-width:960px){.adpc-public-tools>header,.adpc-tool-mosaic,.adpc-public-plan{grid-template-columns:1fr}.adpc-tool-mosaic article.is-wide{grid-row:auto}.adpc-public-plan{padding-left:24px;padding-right:24px}.adpc-side-nav{display:flex!important;gap:8px!important}.adpc-nav-group{display:flex;gap:5px}.adpc-nav-group>span{display:none}}

/* 2.2 — vitrine pública compacta e comercial */
.adpc-sales{font-family:Montserrat,Arial,sans-serif;color:var(--adpc-text);background:var(--adpc-beige)}
.adpc-sales *{box-sizing:border-box}
.adpc-sales-hero{max-width:1180px;margin:0 auto;padding:48px 24px 42px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.72fr);gap:52px;align-items:center;min-height:490px}
.adpc-sales-copy{max-width:680px}
.adpc-sales h1{font:700 clamp(42px,5vw,64px)/.98 "Playfair Display",serif;color:var(--adpc-blue);margin:10px 0 16px;max-width:760px;letter-spacing:-.02em}
.adpc-sales-copy>p{font-size:15px;line-height:1.65;color:#5c5a56;max-width:610px;margin:0}
.adpc-sales-cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:22px}
.adpc-sales .adpc-button{border-radius:2px;padding:12px 17px}
.adpc-sales-link{font-size:12px;font-weight:700;color:var(--adpc-blue);text-decoration:none;border-bottom:1px solid rgba(36,58,83,.28);padding-bottom:3px}
.adpc-sales-proof{display:flex;gap:16px;flex-wrap:wrap;margin-top:20px;color:#6f6c67;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.adpc-sales-preview{width:100%;max-width:390px;justify-self:end;background:#fff;border:1px solid var(--adpc-line);box-shadow:0 22px 54px rgba(36,58,83,.11);transform:rotate(1.2deg)}
.adpc-sales-preview-bar{height:40px;background:var(--adpc-blue);color:#fff;padding:0 14px;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.adpc-sales-preview-bar small{font-size:9px;color:#cbd5df;text-transform:none;letter-spacing:0;font-weight:500}
.adpc-sales-preview-body{padding:17px;display:grid;gap:10px}
.adpc-sales-mini-field{border:1px solid #e6e1da;background:#fbfaf8;padding:10px 11px;display:grid;gap:3px}
.adpc-sales-mini-field small,.adpc-sales-result small{font-size:8px;letter-spacing:.11em;text-transform:uppercase;color:#8b8882;font-weight:700}
.adpc-sales-mini-field strong{font-size:12px;color:var(--adpc-blue)}
.adpc-sales-skill{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#edf2f6;padding:9px 11px;color:var(--adpc-blue);font-size:9px}
.adpc-sales-skill span{font-weight:800;letter-spacing:.1em}.adpc-sales-skill b{font-size:10px}
.adpc-sales-result{display:grid;grid-template-columns:8px 1fr;gap:10px;align-items:center;padding:10px 11px;background:var(--adpc-blue);color:#fff}
.adpc-sales-result i{display:block;width:8px;height:42px;background:var(--adpc-terra)}
.adpc-sales-result div{display:grid;gap:3px}.adpc-sales-result small{color:#bfcbd7}.adpc-sales-result strong{font:700 13px/1.25 "Playfair Display",serif;color:#fff}
.adpc-sales .adpc-member-strip{border-radius:2px;background:#fff}
.adpc-sales-strip{border-top:1px solid var(--adpc-line);border-bottom:1px solid var(--adpc-line);background:#fff;display:grid;grid-template-columns:repeat(3,1fr);padding:0 max(24px,calc((100vw - 1180px)/2))}
.adpc-sales-strip>div{padding:18px 24px;border-right:1px solid var(--adpc-line);display:grid;gap:3px}.adpc-sales-strip>div:first-child{padding-left:0}.adpc-sales-strip>div:last-child{border-right:0;padding-right:0}
.adpc-sales-strip strong{font:700 18px/1.15 "Playfair Display",serif;color:var(--adpc-blue)}.adpc-sales-strip span{font-size:11px;color:#74716d}
.adpc-sales-value,.adpc-sales-features{max-width:1180px;margin:0 auto;padding:58px 24px}
.adpc-sales-value>header,.adpc-sales-features>header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:26px}
.adpc-sales-value h2,.adpc-sales-features h2,.adpc-sales-plan h2{font:700 clamp(30px,3.5vw,44px)/1.04 "Playfair Display",serif;color:var(--adpc-blue);margin:0;max-width:700px}
.adpc-sales-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:12px;align-items:stretch}
.adpc-sales-flow>i{font-style:normal;color:var(--adpc-terra);font-size:22px;display:grid;place-items:center}
.adpc-sales-flow article{background:#fff;border:1px solid var(--adpc-line);padding:20px;min-height:155px;display:grid;align-content:start;gap:7px;position:relative}
.adpc-sales-flow article>span{position:absolute;right:14px;top:12px;font:700 30px/1 "Playfair Display",serif;color:#e5e0d9}
.adpc-sales-flow article>small{font-size:8px;letter-spacing:.14em;color:var(--adpc-terra);font-weight:800}.adpc-sales-flow article>strong{font:700 22px/1.1 "Playfair Display",serif;color:var(--adpc-blue);max-width:210px}
.adpc-sales-flow article.is-result{background:var(--adpc-blue);border-color:var(--adpc-blue)}.adpc-sales-flow article.is-result>strong{color:#fff}.adpc-sales-flow article.is-result>span{color:rgba(255,255,255,.15)}
.adpc-sales-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.adpc-sales-tags b{font-size:9px;font-weight:600;padding:5px 7px;border:1px solid #e3ded7;background:var(--adpc-beige);color:#696662}.adpc-sales-flow .is-result .adpc-sales-tags b{border-color:rgba(255,255,255,.15);background:rgba(255,255,255,.08);color:#e8edf2}
.adpc-sales-features{padding-top:24px}
.adpc-sales-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--adpc-line);background:#fff}
.adpc-sales-feature-grid article{padding:22px;border-right:1px solid var(--adpc-line);min-height:190px}.adpc-sales-feature-grid article:last-child{border-right:0}
.adpc-sales-icon{width:34px;height:34px;display:grid;place-items:center;background:var(--adpc-beige);color:var(--adpc-terra);font-size:10px;font-weight:800;margin-bottom:22px}
.adpc-sales-feature-grid h3{font:700 21px/1.08 "Playfair Display",serif;color:var(--adpc-blue);margin:0 0 9px}.adpc-sales-feature-grid p{font-size:11px;line-height:1.55;color:#706d68;margin:0}
.adpc-sales-plan{background:var(--adpc-blue);color:#fff;display:grid;grid-template-columns:1fr .72fr;gap:52px;align-items:center;padding:50px max(24px,calc((100vw - 1180px)/2));margin-top:10px}
.adpc-sales-plan h2{color:#fff;max-width:650px}.adpc-sales-plan-copy>p{font-size:13px;line-height:1.6;color:#d9e0e6;max-width:620px;margin:12px 0 0}.adpc-sales-plan .adpc-kicker{color:#e2925c}
.adpc-sales-plan-card{background:#fff;color:var(--adpc-text);border-top:4px solid var(--adpc-terra);padding:22px;display:grid;gap:8px}.adpc-sales-plan-card small{font-size:8px;letter-spacing:.14em;color:var(--adpc-terra);font-weight:800}.adpc-sales-plan-card strong{font:700 25px/1.1 "Playfair Display",serif;color:var(--adpc-blue)}.adpc-sales-plan-card span{font-size:11px;line-height:1.5;color:#6d6964;margin-bottom:7px}.adpc-sales-plan-card .adpc-button{justify-self:start}
@media(max-width:900px){.adpc-sales-hero{grid-template-columns:1fr;gap:28px;min-height:auto;padding-top:38px}.adpc-sales-preview{justify-self:start;max-width:470px;transform:none}.adpc-sales-strip{grid-template-columns:1fr;padding:0 24px}.adpc-sales-strip>div,.adpc-sales-strip>div:first-child,.adpc-sales-strip>div:last-child{padding:14px 0;border-right:0;border-bottom:1px solid var(--adpc-line)}.adpc-sales-strip>div:last-child{border-bottom:0}.adpc-sales-flow{grid-template-columns:1fr}.adpc-sales-flow>i{transform:rotate(90deg);height:15px}.adpc-sales-feature-grid{grid-template-columns:1fr 1fr}.adpc-sales-feature-grid article:nth-child(2){border-right:0}.adpc-sales-feature-grid article:nth-child(-n+2){border-bottom:1px solid var(--adpc-line)}.adpc-sales-plan{grid-template-columns:1fr;gap:26px}.adpc-sales-value>header,.adpc-sales-features>header{display:grid}}
@media(max-width:560px){.adpc-sales-hero{padding:30px 18px 30px}.adpc-sales h1{font-size:39px}.adpc-sales-copy>p{font-size:13px}.adpc-sales-proof{gap:8px 12px}.adpc-sales-value,.adpc-sales-features{padding:42px 18px}.adpc-sales-feature-grid{grid-template-columns:1fr}.adpc-sales-feature-grid article{border-right:0;border-bottom:1px solid var(--adpc-line)!important;min-height:auto}.adpc-sales-feature-grid article:last-child{border-bottom:0!important}.adpc-sales-plan{padding:42px 18px}.adpc-sales-preview{max-width:100%}}

/* ==================================================
   2.3 — Clube público: composição aprovada + ícone exclusivo
   ================================================== */
.adpc-club-v9{--v9-blue:#243A53;--v9-terra:#A8571F;--v9-beige:#F4F1EC;--v9-text:#2B2B2B;--v9-lightblue:#4A6FA5;--v9-white:#fff;--v9-line:#ded8d0;background:#fbfaf8;color:var(--v9-text);font-family:Montserrat,Arial,sans-serif;overflow:hidden}
.adpc-club-v9 *{box-sizing:border-box}
.adpc-club-v9 em{font-style:normal;color:var(--v9-terra)}
.adpc-v9-hero{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:58px 0 34px;display:grid;grid-template-columns:.88fr 1.32fr;gap:58px;align-items:center}
.adpc-v9-hero-copy{min-width:0}.adpc-v9-lockup{display:flex;align-items:center;gap:20px;margin-bottom:24px}.adpc-v9-club-icon{width:88px;height:88px;object-fit:contain;object-position:center}.adpc-v9-lockup>div{display:grid;gap:1px}.adpc-v9-lockup span{font-size:16px;line-height:1;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--v9-terra)}.adpc-v9-lockup strong{font:700 31px/1.02 "Playfair Display",Georgia,serif;color:var(--v9-blue)}
.adpc-v9-hero h1{max-width:510px;margin:0 0 17px;font:700 clamp(38px,4.25vw,57px)/1.06 "Playfair Display",Georgia,serif;letter-spacing:-.025em;color:var(--v9-blue)}
.adpc-v9-hero-copy>p{max-width:505px;margin:0;color:#4e5862;font-size:16px;line-height:1.7}.adpc-v9-hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:27px}.adpc-v9-primary,.adpc-v9-secondary{min-height:51px;display:inline-flex;align-items:center;justify-content:center;gap:13px;padding:0 23px;border:1px solid var(--v9-terra);border-radius:2px;font-size:13px;font-weight:700;text-decoration:none}.adpc-v9-primary{background:var(--v9-terra);color:#fff}.adpc-v9-primary span{font-size:18px;font-weight:400}.adpc-v9-secondary{background:transparent;color:var(--v9-blue);border-color:rgba(36,58,83,.28)}.adpc-v9-trust{display:flex;align-items:center;gap:8px;margin-top:15px;color:#6a7075;font-size:11px}.adpc-v9-trust>span{color:var(--v9-terra);font-size:13px}
.adpc-v9-product{position:relative;min-height:525px}.adpc-v9-blue-shape{position:absolute;inset:20px -150px 0 62px;background:var(--v9-blue);border-radius:210px 0 0 210px}.adpc-v9-dashboard{position:absolute;left:0;top:34px;width:77%;background:#fff;border:1px solid #e8e3dc;box-shadow:0 20px 52px rgba(36,58,83,.13)}.adpc-v9-window{height:37px;border-bottom:1px solid #ece7e0;display:flex;align-items:center;gap:6px;padding:0 13px}.adpc-v9-window i{width:6px;height:6px;border-radius:50%;background:#ddd6ce}.adpc-v9-dashboard-body{display:grid;grid-template-columns:53px 1fr;min-height:326px}.adpc-v9-mini-sidebar{border-right:1px solid #ece7e0;padding:18px 0;display:flex;flex-direction:column;align-items:center;gap:18px}.adpc-v9-mini-sidebar b{width:18px;height:18px;border:1.5px solid #7e8994;border-radius:3px}.adpc-v9-dashboard-main{padding:22px 27px}.adpc-v9-dashboard-main header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:13px;border-bottom:1px solid #ede8e2}.adpc-v9-dashboard-main header strong{font-size:14px;color:var(--v9-blue)}.adpc-v9-dashboard-main header span{font-size:10px;color:#5e6871;font-weight:600}.adpc-v9-dashboard-main small{display:block;margin:18px 0 8px;color:var(--v9-blue);font-size:10px;font-weight:700}.adpc-v9-dashboard-main>i,.adpc-v9-bncc i{display:block;height:6px;background:#ece9e5;margin:7px 0;border-radius:10px}.adpc-v9-dashboard-main .w70{width:70%}.adpc-v9-dashboard-main .w52{width:52%}.adpc-v9-dashboard-main .w84{width:84%}.adpc-v9-dashboard-main .w65{width:65%}
.adpc-v9-float{position:absolute;background:#fff;border:1px solid #eae5de;box-shadow:0 12px 30px rgba(36,58,83,.11);padding:17px}.adpc-v9-float>strong{display:block;color:var(--v9-blue);font-size:12px;margin-bottom:9px}.adpc-v9-bncc{left:12%;top:228px;width:212px}.adpc-v9-bncc span{font-size:10px;color:#59636d}.adpc-v9-bncc i:nth-of-type(1){width:82%}.adpc-v9-bncc i:nth-of-type(2){width:65%}.adpc-v9-bncc i:nth-of-type(3){width:48%}.adpc-v9-sequence{left:49%;top:214px;width:197px}.adpc-v9-sequence>span{height:33px;border-top:1px solid #eee9e3;display:flex;align-items:center;justify-content:space-between;color:#4d5862;font-size:10px}.adpc-v9-sequence b{font-size:16px;font-weight:400;color:#7d8790}.adpc-v9-class{left:8%;top:393px;width:160px}.adpc-v9-class span{display:flex;align-items:baseline;gap:5px;color:#68727c;font-size:10px}.adpc-v9-class span b{color:var(--v9-blue);font-size:18px}.adpc-v9-week{right:0;top:380px;width:305px}.adpc-v9-days{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.adpc-v9-days>span{text-align:center;font-size:8px;color:#68727c;font-weight:700}.adpc-v9-days i{display:block;height:10px;margin-top:6px;background:#e8ecef}.adpc-v9-days>span:nth-child(2) i:nth-child(2),.adpc-v9-days>span:nth-child(3) i:nth-child(3),.adpc-v9-days>span:nth-child(4) i:nth-child(2){background:#efd5c5}.adpc-v9-days>span:nth-child(1) i:nth-child(2),.adpc-v9-days>span:nth-child(2) i:nth-child(4){background:#cbd7df}
.adpc-v9-benefits{width:min(1180px,calc(100% - 48px));margin:22px auto 0;display:grid;grid-template-columns:repeat(4,1fr);background:#f2eee8;border:1px solid #e8e1d9}.adpc-v9-benefits>div{min-height:84px;padding:0 24px;display:flex;align-items:center;gap:14px;border-right:1px solid #ddd6ce}.adpc-v9-benefits>div:last-child{border-right:0}.adpc-v9-benefit-icon{width:34px;flex:0 0 34px;color:var(--v9-terra);font-size:28px;line-height:1;text-align:center}.adpc-v9-benefits p{margin:0;display:grid;gap:2px}.adpc-v9-benefits strong{font-size:12px;color:var(--v9-blue)}.adpc-v9-benefits small{font-size:10px;color:#677078}
.adpc-v9-features{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:60px 0 68px}.adpc-v9-features>header{max-width:760px;margin:0 auto 39px;text-align:center}.adpc-v9-features h2,.adpc-v9-plans>header h2{margin:0;font:700 clamp(30px,3.3vw,43px)/1.17 "Playfair Display",Georgia,serif;color:var(--v9-blue);letter-spacing:-.015em}.adpc-v9-feature-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #ded8d0;border-bottom:1px solid #ded8d0}.adpc-v9-feature-grid article{padding:31px 21px 28px;text-align:center;border-right:1px solid #ded8d0}.adpc-v9-feature-grid article:last-child{border-right:0}.adpc-v9-feature-grid article>span{width:50px;height:50px;margin:0 auto 16px;display:grid;place-items:center;border:1px solid #e7e0d8;border-radius:50%;background:#fff;color:var(--v9-blue);font-size:23px}.adpc-v9-feature-grid h3{margin:0 0 8px;color:var(--v9-blue);font-size:13px;line-height:1.35}.adpc-v9-feature-grid p{margin:0;color:#646c73;font-size:11px;line-height:1.55}
.adpc-v9-plans{background:var(--v9-beige);padding:55px max(24px,calc((100vw - 1180px)/2)) 66px}.adpc-v9-plans>header{max-width:760px;margin:0 auto 38px;text-align:center}.adpc-v9-plans-grid{display:grid;grid-template-columns:1fr 1fr .95fr;gap:22px;align-items:stretch}.adpc-v9-plan{position:relative;background:#fff;border:1px solid #e3dcd4;padding:27px 26px 25px}.adpc-v9-plan-featured{border-top:5px solid var(--v9-terra);padding-top:22px}.adpc-v9-plan-label{position:absolute;left:-1px;right:-1px;top:-29px;height:28px;display:grid;place-items:center;background:var(--v9-terra);color:#fff;font-size:9px;font-weight:700;letter-spacing:.07em}.adpc-v9-plan h3{margin:0 0 5px;font:700 23px/1.08 "Playfair Display",Georgia,serif;color:var(--v9-blue)}.adpc-v9-plan>p{min-height:38px;margin:0 0 20px;color:#5f6870;font-size:11px;line-height:1.5}.adpc-v9-price{display:flex;align-items:flex-end;gap:5px;margin:0 0 20px;color:var(--v9-blue)}.adpc-v9-price small{font-size:13px;font-weight:700;margin-bottom:5px}.adpc-v9-price strong{font-size:33px;line-height:1}.adpc-v9-price span{font-size:10px;color:#606970;margin-bottom:3px}.adpc-v9-plan ul{list-style:none;margin:0 0 23px;padding:0}.adpc-v9-plan li{position:relative;padding-left:25px;margin:9px 0;color:#424d56;font-size:11px}.adpc-v9-plan li:before{content:"✓";position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:var(--v9-blue);color:#fff;font-size:9px}.adpc-v9-plan-featured li:before{background:var(--v9-terra)}.adpc-v9-plan-btn{min-height:44px;width:100%;display:grid;place-items:center;background:var(--v9-blue);color:#fff!important;text-decoration:none;font-size:12px;font-weight:700;border-radius:2px}.adpc-v9-plan-featured .adpc-v9-plan-btn{background:var(--v9-terra)}.adpc-v9-current-quota{margin:10px 0 24px;display:flex;align-items:baseline;gap:8px;color:var(--v9-blue)}.adpc-v9-current-quota strong{font-size:34px}.adpc-v9-current-quota span{font-size:11px;color:#646c73}.adpc-v9-assurance{padding:6px 0 0 13px;display:flex;flex-direction:column;justify-content:center}.adpc-v9-assurance>div{display:grid;grid-template-columns:42px 1fr;gap:14px;padding:19px 0;border-bottom:1px solid #ddd5cc}.adpc-v9-assurance>div:last-child{border-bottom:0}.adpc-v9-assurance>div>span{color:var(--v9-blue);font-size:31px;line-height:1}.adpc-v9-assurance p{margin:0;display:grid;gap:3px}.adpc-v9-assurance strong{color:var(--v9-blue);font-size:12px}.adpc-v9-assurance small{color:#646c73;font-size:10px;line-height:1.5}
@media(max-width:980px){.adpc-v9-hero{grid-template-columns:1fr;gap:28px}.adpc-v9-product{min-height:510px}.adpc-v9-blue-shape{inset:20px -180px 0 12%}.adpc-v9-benefits{grid-template-columns:1fr 1fr}.adpc-v9-benefits>div:nth-child(2){border-right:0}.adpc-v9-benefits>div:nth-child(-n+2){border-bottom:1px solid #ddd6ce}.adpc-v9-feature-grid{grid-template-columns:1fr 1fr}.adpc-v9-feature-grid article{border-bottom:1px solid #ded8d0}.adpc-v9-feature-grid article:nth-child(2n){border-right:0}.adpc-v9-feature-grid article:last-child{grid-column:1/-1}.adpc-v9-plans-grid{grid-template-columns:1fr 1fr}.adpc-v9-assurance{grid-column:1/-1;padding-left:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.adpc-v9-assurance>div{padding:17px;background:#fff;border:1px solid #e3dcd4}}
@media(max-width:680px){.adpc-v9-hero,.adpc-v9-benefits,.adpc-v9-features{width:min(100% - 30px,1180px)}.adpc-v9-hero{padding:24px 0 20px;gap:20px}.adpc-v9-lockup{gap:14px;margin-bottom:16px}.adpc-v9-club-icon{width:84px;height:84px}.adpc-v9-lockup span{font-size:12px}.adpc-v9-lockup strong{font-size:23px}.adpc-v9-hero h1{font-size:clamp(28px,8vw,34px);margin-bottom:12px}.adpc-v9-hero-copy>p{font-size:13.5px;line-height:1.6}.adpc-v9-hero-actions{margin-top:18px}.adpc-v9-product{min-height:300px}.adpc-v9-dashboard{width:91%;top:16px}.adpc-v9-dashboard-body{min-height:210px}.adpc-v9-dashboard-main{padding:16px}.adpc-v9-bncc{left:4%;top:150px;width:150px}.adpc-v9-sequence{left:auto;right:0;top:144px;width:150px}.adpc-v9-class{left:3%;top:232px;width:130px}.adpc-v9-week{right:0;top:226px;width:200px}.adpc-v9-benefits{grid-template-columns:1fr}.adpc-v9-benefits>div{border-right:0;border-bottom:1px solid #ddd6ce;padding:17px 20px}.adpc-v9-benefits>div:last-child{border-bottom:0}.adpc-v9-feature-grid{grid-template-columns:1fr}.adpc-v9-feature-grid article{border-right:0}.adpc-v9-feature-grid article:last-child{grid-column:auto}.adpc-v9-plans{padding-left:15px;padding-right:15px}.adpc-v9-plans-grid{grid-template-columns:1fr}.adpc-v9-plan-featured{margin-top:30px}.adpc-v9-assurance{grid-template-columns:1fr}}

/* 2.3.1 */
.adpc-feriados{margin-top:10px;padding:10px 12px;background:#FBF3EA;border:1px solid #E7C9A9;border-radius:8px;font-size:.82rem;color:#7a4a1d}
.adpc-toast-warn{background:#FBF3EA;border:1px solid #E7C9A9;color:#7a4a1d}
.adp-bncc-sugestao-lista div,.adp-bncc-lista div{padding:4px 0;font-size:.86rem}
.adp-bncc-lista{display:none;margin-top:8px}
.adp-bncc-lista.is-open{display:block}

/* Passo de habilidades BNCC do "Novo planejamento" (arquiteto-de-planejamento-v2).
   Nome de classe PRÓPRIO de propósito: reaproveitar ".adp-bncc-lista" (acima, do
   wizard antigo) deixava a lista com display:none pra sempre, porque aqui a lista
   não tem alternância ".is-open" — auditoria 22/09/2026, achado "checkboxes existem
   no HTML mas ficam invisíveis". */
.adp-bncc-controles{margin:10px 0;display:grid;gap:8px}
.adp-bncc-controles input[type=search]{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--adp-linha,#d6d1ca);border-radius:8px;font:inherit;font-size:16px;background:#fff;color:var(--adp-azul,#243A53)}
.adp-bncc-controles label{display:flex;align-items:center;gap:8px;font-size:.86rem;color:var(--adp-muted,#5c6670)}
.adp-plan-bncc-lista{list-style:none;margin:8px 0 0;padding:0;max-height:420px;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--adp-linha,#d6d1ca);border-radius:8px}
.adp-plan-bncc-lista li{border-bottom:1px solid var(--adp-linha,#eee)}
.adp-plan-bncc-lista li:last-child{border-bottom:0}
.adp-plan-bncc-lista li[hidden]{display:none}
.adp-plan-bncc-lista label{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;cursor:pointer;font-size:.9rem;min-height:44px}
.adp-plan-bncc-lista input[type=checkbox]{width:20px;height:20px;min-width:20px;margin-top:2px}
.adp-plan-bncc-lista em{display:block;color:var(--adp-muted,#5c6670);font-style:normal;font-size:.8rem;margin-top:2px}

/* 2.4.1 — prévia / confirmação */
.adpc-preview-box{margin:0 0 22px;padding:20px;background:#fff;border:1px solid var(--adp-linha,#e5e0d6);border-radius:12px}
.adpc-preview-hint{margin:10px 0 0;font-size:.82rem;color:var(--adp-muted,#6b6b6b)}
.adpc-preview-box .adp-previa{margin-top:16px}
.adpc-preview-box .adp-previa h3{margin:0 0 10px;font:700 1.15rem/1.2 "Playfair Display",Georgia,serif;color:var(--adp-azul,#243A53)}
.adpc-preview-box .adp-previa h4{margin:16px 0 6px;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--adp-terracota,#C46A2D)}
.adpc-preview-box .adp-previa ul,.adpc-preview-box .adp-previa ol{margin:0 0 8px;padding-left:20px;font-size:.9rem;line-height:1.5}
.adp-previa-acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}
.adp-previa-acoes .adpc-button-accent{font-size:.95rem;padding:14px 22px}
.adp-consumo{margin:14px 0 0;padding:10px 12px;background:#FBF3EA;border-radius:8px;font-size:.85rem;color:#7a4a1d}
.adp-btn-ghost{background:transparent;border:1px solid var(--adp-linha-forte,#c9c2b6);color:var(--adp-azul,#243A53)}

/* 2.4.2 — perfil completo, cálculo de aulas e confirmação inequívoca */
.adpc-card-copy{margin:12px 0 0;color:#6f6c67;font-size:12px;line-height:1.55}.adpc-profile-edit{font-weight:700!important;color:var(--adpc-terra)!important}
.adpc-profile-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 20px;padding:17px 19px;background:#eef2f6;border-left:4px solid var(--adpc-terra);border-radius:10px}.adpc-profile-intro>div{display:grid;gap:4px}.adpc-profile-intro strong{color:var(--adpc-blue)}.adpc-profile-intro span{font-size:12px;color:#626c75}
.adpc-field-help{margin:4px 0 12px;color:#6f6c67;font-size:11px;line-height:1.55}.adpc-weekly-total{display:block;margin-top:12px;padding:10px 12px;background:var(--adpc-beige);color:var(--adpc-blue);font-size:12px}.adpc-weekly-total strong{font-size:17px}
.adpc-class-skills{margin-top:24px!important;padding-top:20px!important;border-top:1px solid var(--adpc-line)!important}.adpc-skills-list{display:grid;gap:16px;max-height:380px;overflow:auto;padding:12px;border:1px solid var(--adpc-line);background:#faf9f7}.adpc-skills-group{display:grid;gap:6px}.adpc-skills-group>strong{position:sticky;top:-12px;z-index:1;padding:7px 4px;background:#faf9f7;color:var(--adpc-terra);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.adpc-skills-group label{display:flex!important;align-items:flex-start;gap:9px;margin:0!important;padding:7px;background:#fff;border:1px solid #ece8e2;border-radius:7px;cursor:pointer}.adpc-skills-group input{width:auto!important;margin-top:3px}.adpc-skills-group label>span{display:block!important;color:#59636d!important;font-weight:400!important;line-height:1.45}.adpc-skills-group b{margin-right:7px;color:var(--adpc-blue)}
.adpc-lesson-count{grid-column:1/-1;margin:16px 0 0;padding:18px;border:1px solid var(--adpc-line);border-radius:12px}.adpc-lesson-count legend{padding:0 7px;color:var(--adpc-blue);font-weight:700}.adpc-lesson-count .adpc-radio-cards{grid-template-columns:1fr 1fr}.adpc-lesson-count .adpc-radio-cards label>span{display:grid;gap:5px}.adpc-lesson-count .adpc-radio-cards strong{font-size:13px}.adpc-auto-lessons{display:grid;gap:4px;margin:14px 0 4px;padding:13px 15px;background:#eef2f6;border-left:4px solid var(--adpc-light);border-radius:8px}.adpc-auto-lessons strong{color:var(--adpc-blue)}.adpc-auto-lessons span{color:#606a73;font-size:11px}.adpc-manual-lessons{max-width:420px}.adpc-manual-lessons[hidden],.adpc-auto-lessons[hidden]{display:none!important}
.adpc-confirm-callout{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:14px 0 22px;padding:18px;background:#edf7ef;border:2px solid #8fbe99;border-radius:10px}.adpc-confirm-callout>div{display:grid;gap:4px}.adpc-confirm-callout strong{color:#285d34;font-size:16px}.adpc-confirm-callout span{color:#4c6552;font-size:12px}.adpc-confirm-callout form{margin:0;flex:0 0 auto}.adpc-confirm-callout .adpc-button{min-height:48px;font-size:14px;box-shadow:0 8px 18px rgba(196,106,45,.2)}
@media(max-width:700px){.adpc-profile-intro,.adpc-confirm-callout{align-items:stretch;flex-direction:column}.adpc-confirm-callout form,.adpc-confirm-callout .adpc-button{width:100%}.adpc-lesson-count .adpc-radio-cards{grid-template-columns:1fr}}

/* 2.4.3 — periodicidade define datas e teto de aulas */
.adpc-period-choice{margin:20px 0 0;padding:18px;border:2px solid var(--adpc-blue);border-radius:13px;background:#f4f7f9}.adpc-period-choice label{display:grid;gap:7px;margin:0}.adpc-period-choice label>span{font-size:13px;font-weight:700;color:var(--adpc-blue)}.adpc-period-choice>p{margin:9px 0 0;color:#606a73;font-size:11px;line-height:1.55}.adpc-period-fields{margin-top:12px;padding:18px;border:1px solid var(--adpc-line);border-radius:13px;background:#fbfaf8}.adpc-period-fields[hidden]{display:none!important}.adpc-period-rule{margin:0 0 14px;padding:12px 14px;border-left:4px solid var(--adpc-terra);background:#fbf3ea;color:#6c4a2e;font-size:12px;line-height:1.5}.adpc-period-rule strong{color:var(--adpc-blue)}

/* 2.4.4 — onboarding + prévia */
.adpc-onboarding{max-width:640px}
/* ============================================================
   Painel "Início" 2.105.0 — painel diário (hoje / atenção / continuar),
   reaproveitando os tokens --adpc-navy/--adpc-orange/--adpc-cream/
   --adpc-border/--adpc-success/--adpc-warning/--adpc-danger definidos
   em .adpc-app (Fase 1, 2.14.0). ============================================================ */
.adpc-home{display:flex;flex-direction:column;gap:20px}
.adpc-eyebrow{margin:0 0 4px;color:var(--adpc-orange,#C46A2D);font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.adpc-home-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap}
.adpc-home-head h2{margin:0 0 4px;font:700 1.7rem/1.15 "Playfair Display",Georgia,serif;color:var(--adpc-navy,#243A53)}
.adpc-home-head__summary{margin:0;color:var(--adpc-text-muted,#5f6870);font-size:.92rem}

/* Cotas: cabeçalho mostra "X de Y" nos dois módulos, sem ambiguidade entre
   "restantes" e "usados" — os detalhes (abaixo) sempre citam os dois. */
.adpc-home-quota{border:1px solid var(--adpc-border,#e2ddd0);border-radius:var(--adpc-radius-md,14px);background:#fff;max-width:420px}
.adpc-home-quota>summary{display:flex;align-items:stretch;gap:14px;list-style:none;cursor:pointer;padding:10px 16px;min-height:44px}
.adpc-home-quota>summary::-webkit-details-marker{display:none}
.adpc-quota-chip{display:flex;flex-direction:column;text-align:left;font-size:.72rem;color:var(--adpc-text-muted,#5f6870)}
.adpc-quota-chip strong{font-size:1.05rem;line-height:1.2;color:var(--adpc-navy,#243A53)}
.adpc-quota-chip+.adpc-quota-chip{padding-left:14px;border-left:1px solid var(--adpc-border,#e2ddd0)}
.adpc-quota-body{padding:2px 16px 16px;display:grid;gap:14px}
.adpc-quota-row__head{display:flex;justify-content:space-between;gap:14px;margin-bottom:6px;font-size:.82rem}
.adpc-quota-row__head span{color:var(--adpc-text-muted,#5f6870)}
.adpc-progress{height:8px;overflow:hidden;border-radius:999px;background:#e8ebef}
.adpc-progress>span{display:block;width:var(--progress,0%);height:100%;border-radius:inherit;background:var(--adpc-orange,#C46A2D)}
.adpc-quota-renew{margin:0;color:var(--adpc-text-muted,#5f6870);font-size:.8rem}

/* Pendências: no máximo 3 visíveis + "Ver todas" em <details> nativo. */
.adpc-pending{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:flex-start;padding:16px 18px;border:1px solid #edc69f;border-left:5px solid var(--adpc-orange,#C46A2D);border-radius:var(--adpc-radius-md,14px);background:#fffaf5}
.adpc-pending__icon{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--adpc-orange-soft,#fdeada);color:var(--adpc-orange-dark,#A95222);font-weight:900}
.adpc-pending__content h2{margin:0;font:700 1.1rem/1.3 "Playfair Display",Georgia,serif;color:var(--adpc-navy,#243A53)}
.adpc-pending__list{margin:8px 0 0;padding-left:18px;display:grid;gap:5px;font-size:.9rem}
.adpc-pending__more{margin-top:8px}
.adpc-pending__more>summary{cursor:pointer;color:var(--adpc-navy,#243A53);font-weight:700;font-size:.82rem;min-height:44px;display:inline-flex;align-items:center}

/* Grade principal: reaproveita min-width:0 já garantido por .adpc-app. */
.adpc-dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:2px}
.adpc-dash-grid--main{grid-template-columns:1.35fr .85fr;align-items:start}
.adpc-panel{min-width:0;padding:20px;border:1px solid var(--adpc-border,#e2ddd0);border-radius:var(--adpc-radius-md,14px);background:#fff;box-shadow:0 4px 16px rgba(16,41,64,.05)}
.adpc-panel__head{margin-bottom:14px;display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.adpc-panel__head h2{margin:0;font:700 clamp(1.2rem,1.6vw,1.4rem)/1.25 "Playfair Display",Georgia,serif;color:var(--adpc-navy,#243A53)}
.adpc-text-link{min-height:44px;padding:9px 2px;display:inline-flex;align-items:center;color:var(--adpc-navy,#243A53);font-size:.82rem;font-weight:750;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}

/* Calendário real (mês corrente por padrão, troca via AJAX sem recarregar). */
.adpc-today-switch{display:none;gap:6px;padding:3px;width:fit-content;border:1px solid var(--adpc-border,#e2ddd0);border-radius:999px;background:var(--adpc-cream,#f6f2ec)}
.adpc-today-switch button{min-height:38px;padding:7px 14px;border:0;border-radius:999px;background:transparent;color:var(--adpc-navy,#243A53);font-size:.82rem;font-weight:700;cursor:pointer}
.adpc-today-switch button[aria-pressed="true"]{background:var(--adpc-navy,#243A53);color:#fff}
.adpc-calendar{margin-top:16px;border-top:1px solid var(--adpc-border,#e2ddd0);padding-top:14px}
.adpc-calendar__head{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:8px;margin-bottom:10px}
.adpc-calendar__head h3{margin:0;text-align:center;font-size:.92rem;color:var(--adpc-navy,#243A53)}
.adpc-calendar__head button{width:44px;height:44px;border:1px solid transparent;border-radius:50%;background:transparent;color:var(--adpc-navy,#243A53);font-size:1.4rem;cursor:pointer}
.adpc-calendar__head button:hover{border-color:var(--adpc-border,#e2ddd0);background:var(--adpc-cream,#f6f2ec)}
.adpc-calendar__dow,.adpc-calendar__days{display:grid;grid-template-columns:repeat(7,minmax(32px,1fr));gap:4px}
.adpc-calendar__dow{margin-bottom:5px}
.adpc-calendar__dow span{color:var(--adpc-text-muted,#5f6870);font-size:.7rem;font-weight:800;text-align:center;text-transform:uppercase}
.adpc-calendar-day{position:relative;min-height:40px;min-width:32px;border:0;border-radius:9px;background:transparent;color:var(--adpc-text,#24313b);font:inherit;font-size:.82rem;cursor:pointer}
.adpc-calendar-day:hover{background:var(--adpc-cream,#f6f2ec)}
.adpc-calendar-day.is-today{background:var(--adpc-navy,#243A53);color:#fff;font-weight:800}
.adpc-calendar-day.is-selected:not(.is-today){box-shadow:inset 0 0 0 2px var(--adpc-orange,#C46A2D)}
.adpc-calendar-day__markers{position:absolute;bottom:3px;left:50%;display:flex;gap:2px;transform:translateX(-50%)}
.adpc-calendar-day__markers span,.adpc-calendar__legend span{width:6px;height:6px;display:inline-block;border-radius:50%}
.is-school{background:#4279ac}
.is-private{background:#4f985f}
.is-holiday{background:#8a9099}
.adpc-calendar__selected{margin:12px 0 0;font-size:.85rem;color:var(--adpc-text-muted,#5f6870)}
.adpc-calendar__legend{margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:7px 14px;list-style:none}
.adpc-calendar__legend li{display:flex;align-items:center;gap:6px;color:var(--adpc-text-muted,#5f6870);font-size:.72rem}

/* Atalhos: cota já resolvida no servidor — sem card "cinza" mudo, sempre com o motivo escrito. */
.adpc-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.adpc-action-card{min-height:112px;padding:16px;display:flex;flex-direction:column;align-items:flex-start;gap:3px;border:1px solid var(--adpc-border,#e2ddd0);border-radius:var(--adpc-radius-md,14px);background:#fff;color:var(--adpc-navy,#243A53);text-decoration:none;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.adpc-action-card:hover{border-color:var(--adpc-orange,#C46A2D);box-shadow:0 6px 18px rgba(16,42,68,.08);transform:translateY(-1px)}
.adpc-action-card--primary{border-color:var(--adpc-navy,#243A53);background:var(--adpc-navy,#243A53);color:#fff}
.adpc-action-card__ic{font-size:1.35rem;line-height:1;margin-bottom:2px}
.adpc-action-card strong{font-size:.94rem}
.adpc-action-card>span:last-child{color:var(--adpc-text-muted,#5f6870);font-size:.76rem;line-height:1.4}
.adpc-action-card--primary>span:last-child{color:rgba(255,255,255,.82)}
.adpc-action-card--primary>span:last-child a{color:#fff;text-decoration:underline}
.adpc-action-card.is-disabled{opacity:.85;background:#f7f5f1;color:#7a828a;box-shadow:none;cursor:default}
.adpc-action-card.is-disabled span:last-child a{color:var(--adpc-orange-dark,#A95222);font-weight:700}
.adpc-limit-notice{margin-top:14px;padding:14px;border-radius:var(--adpc-radius-sm,8px);background:var(--adpc-warning-soft,#fff8e1);color:var(--adpc-warning,#9a6700)}
.adpc-limit-notice p{margin:3px 0 10px;font-size:.82rem}
.adpc-inline-actions{display:flex;flex-wrap:wrap;gap:8px 18px}
.adpc-inline-actions a{min-height:40px;display:inline-flex;align-items:center;color:var(--adpc-navy,#243A53);font-size:.78rem;font-weight:800}

/* Listas de compromissos e itens recentes. */
.adpc-event-list,.adpc-attention-list{margin:0;padding:0;list-style:none}
.adpc-event,.adpc-attention-list li{min-height:62px;padding:10px 0;display:grid;align-items:center;gap:12px;border-bottom:1px solid #edf0f3}
.adpc-event{grid-template-columns:56px 8px minmax(0,1fr) auto}
.adpc-event:last-child,.adpc-attention-list li:last-child{border-bottom:0}
.adpc-event time{display:flex;flex-direction:column}
.adpc-event time strong{font-size:.84rem}
.adpc-event time span,.adpc-event div span,.adpc-attention-list div span{display:block;color:var(--adpc-text-muted,#5f6870);font-size:.74rem}
.adpc-event__marker{width:8px;height:30px;border-radius:999px}
.adpc-event>a,.adpc-attention-list a{min-height:40px;display:inline-flex;align-items:center;color:var(--adpc-navy,#243A53);font-size:.78rem;font-weight:800}
.adpc-attention-list li{grid-template-columns:32px minmax(0,1fr) auto}
.adpc-attention-list__ic{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--adpc-warning-soft,#fff8e1);color:var(--adpc-warning,#9a6700);font-weight:900}
.adpc-success-state{min-height:80px;display:flex;align-items:center;justify-content:center;gap:9px;color:var(--adpc-success,#18794e);text-align:center;font-size:.88rem}

.adpc-recent-list{display:grid;gap:6px}
.adpc-recent-item{min-height:64px;padding:10px 0;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;border-bottom:1px solid #edf0f3}
.adpc-recent-item:last-child{border-bottom:0}
.adpc-recent-item div{min-width:0}
.adpc-recent-item div strong{display:block;overflow-wrap:anywhere}
.adpc-recent-item div span{display:block;margin-top:3px;color:var(--adpc-text-muted,#5f6870);font-size:.74rem}
.adpc-status--draft{background:var(--adpc-warning-soft,#fff8e1);color:var(--adpc-warning,#9a6700)}
.adpc-status--ready{background:var(--adpc-success-soft,#ecfdf3);color:var(--adpc-success,#18794e)}
.adpc-status--danger{background:var(--adpc-danger-soft,#fef3f2);color:var(--adpc-danger,#b42318)}
.adpc-button-small{min-height:38px;padding:7px 12px;font-size:.78rem}

.adpc-empty-state{min-height:84px;padding:14px;display:flex;align-items:center;gap:12px;border:1px dashed var(--adpc-border,#d9dee3);border-radius:var(--adpc-radius-sm,8px);background:#fffdfa}
.adpc-empty-state div{min-width:0;flex:1}
.adpc-empty-state strong{display:block;margin-bottom:2px}
.adpc-empty-state p{margin:0;color:var(--adpc-text-muted,#5f6870);font-size:.82rem}

/* 2.110.0 - biblioteca de planejamentos (prompt 04): busca, filtros, cartões
   reais (não tabela) e paginação, tudo filtrado no cliente. */
.adpc-library{display:grid;gap:16px}
.adpc-library__head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.adpc-library__count{margin:0;color:var(--adpc-text-muted,#5f6870);font-size:.88rem}
.adpc-library__filters{display:grid;grid-template-columns:minmax(200px,2fr) repeat(3,minmax(140px,1fr)) auto;gap:10px;align-items:end;padding:16px;border:1px solid var(--adpc-border,#e2ddd0);border-radius:var(--adpc-radius-md,14px);background:#fff}
.adpc-library__filters label{display:grid;gap:6px;font-size:.78rem;font-weight:750;color:var(--adpc-navy,#243A53)}
.adpc-library__filters input,.adpc-library__filters select{min-height:44px;padding:9px 11px;border:1px solid var(--adpc-border,#d6d1ca);border-radius:9px;background:#fff;font:inherit}
.adpc-library__records{display:grid;gap:10px}
.adpc-record{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px;border:1px solid var(--adpc-border,#e2ddd0);border-radius:var(--adpc-radius-md,14px);background:#fff}
.adpc-record.is-filtered-out{display:none}
.adpc-record__main{min-width:0;display:grid;gap:4px}
.adpc-record__main strong{overflow-wrap:anywhere}
.adpc-record__main>span:last-child{color:var(--adpc-text-muted,#5f6870);font-size:.82rem}
.adpc-record__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.adpc-record__menu{position:relative}
.adpc-icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--adpc-border,#e2ddd0);border-radius:10px;background:#fff;color:var(--adpc-navy,#243A53);font-size:1.1rem;cursor:pointer}
.adpc-record__menu-items{position:absolute;z-index:20;right:0;top:calc(100% + 6px);min-width:180px;padding:6px;border:1px solid var(--adpc-border,#e2ddd0);border-radius:12px;background:#fff;box-shadow:0 12px 32px rgba(16,41,64,.14)}
.adpc-record__menu-items form{margin:0}
.adpc-record__menu-items .adpc-linkbtn{display:block;width:100%;min-height:40px;padding:8px 10px;text-align:left;border-radius:8px}
.adpc-record__menu-items .adpc-linkbtn:hover{background:var(--adpc-cream,#f6f2ec)}
.adpc-pagination{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}
.adpc-pagination button{min-width:44px;min-height:44px;padding:8px 12px;border:1px solid var(--adpc-border,#e2ddd0);border-radius:9px;background:#fff;color:var(--adpc-navy,#243A53);font-weight:700;cursor:pointer}
.adpc-pagination button[aria-current="page"]{background:var(--adpc-navy,#243A53);color:#fff;border-color:var(--adpc-navy,#243A53)}

@media(max-width:900px){
  .adpc-dash-grid,.adpc-dash-grid--main{grid-template-columns:1fr}
  .adpc-action-grid{grid-template-columns:1fr 1fr}
  .adpc-library__filters{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .adpc-library__head{flex-direction:column;align-items:stretch}
  .adpc-library__filters{grid-template-columns:1fr}
  .adpc-record{grid-template-columns:1fr}
  .adpc-record__actions{justify-content:flex-start}
}
@media(max-width:600px){
  .adpc-home-quota{max-width:none;width:100%}
  .adpc-quota-chip{flex:1}
  .adpc-pending{grid-template-columns:auto minmax(0,1fr)}
  .adpc-panel{padding:16px}
  .adpc-recent-item{grid-template-columns:minmax(0,1fr) auto}
  .adpc-recent-item .adpc-status{grid-column:2;grid-row:1}
  .adpc-recent-item .adpc-button{grid-column:1/-1;width:100%}
  .adpc-event{grid-template-columns:50px 7px minmax(0,1fr)}
  .adpc-event>a{grid-column:3;justify-self:start}
  /* "Hoje": no celular alterna Agenda/Calendário em vez de empilhar os dois
     comprimidos; o JS decide qual [data-today-pane] fica visível. */
  .adpc-today-switch{display:flex;margin-bottom:14px}
  [data-today-pane].is-inactive{display:none}
}
@media(max-width:390px){
  .adpc-action-grid{grid-template-columns:1fr}
}

/* onboarding obrigatório 2.61: tela focada, sem menu */
.adpc-app--focus{min-height:100vh;background:var(--adpc-cream,#f6f2ec)}
.adpc-content--narrow{width:min(100% - 32px,640px);margin:0 auto;padding:24px 0 60px}
.adpc-onb-overlay{padding-top:8px}
.adpc-onboarding.adpc-card{padding:clamp(20px,4vw,32px)}
.adpc-onb-modelo{border:1px solid #e0dacd;border-radius:10px;padding:12px 14px;margin:12px 0}
.adpc-onb-modelo legend{font-size:.78rem;font-weight:700;color:#7a7468;padding:0 4px}
.adpc-radio-line{display:flex;gap:9px;align-items:flex-start;margin:8px 0;font-size:.92rem;line-height:1.45}
.adpc-radio-line input{width:20px;height:20px;margin-top:1px;flex:0 0 auto}
.adpc-chips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}
.adpc-chip-add{font:inherit;font-size:.78rem;padding:5px 10px;border:1px solid #d6cdbb;border-radius:999px;background:#faf7f2;color:#5f5644;cursor:pointer;line-height:1.2}
.adpc-chip-add:hover{border-color:var(--adpc-orange,#C46A2D);color:var(--adpc-navy,#243A53)}
.adpc-chip-add.is-used{background:#e7f0e9;border-color:#b9d9c2;color:#2f7d4a}
.adpc-cabecalho-preview{margin-top:10px;min-height:64px;border:1px dashed #c9c2b4;border-radius:6px;padding:10px 12px;background:#fff;font-size:.8rem;display:flex;gap:10px;align-items:center}
.adpc-cabecalho-preview.is-centro{flex-direction:column;text-align:center}
.adpc-cabecalho-preview .cab-logo img{max-height:44px;max-width:90px;object-fit:contain}
.adpc-cabecalho-preview .cab-texto div{line-height:1.3}
.adpc-onb-bar{height:6px;border-radius:999px;background:#e7e1d5;overflow:hidden;margin:0 0 12px}
.adpc-onb-bar>span{display:block;height:100%;background:var(--adpc-orange,#C46A2D);border-radius:999px;transition:width .25s ease}
.adpc-onb-progress{display:flex;gap:8px;margin:0 0 22px;flex-wrap:wrap}
.adpc-onb-progress span{flex:1;min-width:120px;padding:8px 10px;border-radius:8px;background:#efeae2;color:#8a8175;font-size:12px;font-weight:600;text-align:center}
.adpc-onb-progress span.is-active{background:var(--adpc-blue,#243A53);color:#fff}
.adpc-onb-step{display:none}
.adpc-onb-step.is-active{display:block}
.adpc-onb-step h2{margin:0 0 4px;font:700 22px/1.2 "Playfair Display",Georgia,serif;color:var(--adpc-blue,#243A53)}
.adpc-onb-step>p{margin:0 0 16px;color:#6b6b6b;font-size:.9rem}
.adpc-onb-note{margin-top:12px;font-size:.8rem;color:#888}
.adpc-inline-check{display:flex;align-items:center;gap:8px;margin:0 0 14px;font-size:.88rem}
.adpc-onb-actions{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}
.adpc-onb-actions [data-onb-finish]{font-size:.95rem;padding:13px 22px}
/* 2.38.2 (#5): controles do onboarding — antes herdavam layout inline e ficavam estreitos */
.adpc-onboarding label{display:grid;gap:6px;margin:14px 0}
.adpc-onboarding label>span{font-size:12px;font-weight:600;color:var(--adpc-blue,#243A53)}
.adpc-onboarding input,.adpc-onboarding select,.adpc-onboarding textarea{
  width:100%;box-sizing:border-box;min-width:0;min-height:48px;
  border:1px solid #d6d1ca;border-radius:9px;padding:12px;background:#fff;
  font:16px/1.4 Montserrat,sans-serif;color:var(--adpc-grafite,#2b2b2b)}
.adpc-onboarding textarea{min-height:120px;resize:vertical}
.adpc-onboarding small{font-size:12px;font-weight:400;color:#777}
.adpc-onboarding .adpc-form-grid{gap:14px 18px}
.adpc-onboarding input[type=file]{min-height:0;padding:10px;background:#faf8f5}
.adpc-onboarding .adpc-schedule{border:0;min-width:0;background:none}
.adpc-onboarding .adpc-schedule .adpc-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:768px){
  .adpc-onboarding .adpc-form-grid{grid-template-columns:1fr}
  .adpc-onboarding .adpc-schedule .adpc-form-grid{grid-template-columns:1fr 1fr}
}
/* prévia: barra de ações no rodapé */
.adpc-preview-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px;padding-top:16px;border-top:1px solid var(--adpc-line,#e5e0d6)}
.adpc-preview-actions .adpc-button-accent{font-size:.98rem;padding:14px 24px}
.adpc-preview-actions form{margin:0}
.adpc-preview-sub{margin:2px 0 14px;color:#6b6b6b;font-size:.88rem}
.adpc-button-ghost{background:transparent;border:1px solid #c9c2b6;color:var(--adpc-blue,#243A53)}
.adpc-button-ghost:hover{background:#f2ede5}
.adpc-linkbtn{background:none;border:0;padding:0;margin-left:8px;color:var(--adpc-terra,#C46A2D);font:inherit;font-size:.82rem;text-decoration:underline;cursor:pointer}
/* 2.4.5 — abas do perfil viraram links (funcionam sem JS) */
.adpc-tabs a,.adpc-tabs button{border:1px solid var(--adpc-line,#e5e0d6);background:#fff;padding:9px 14px;border-radius:999px;cursor:pointer;color:#555;text-decoration:none;font:600 13px Montserrat,sans-serif;display:inline-block}
.adpc-tabs a.is-active,.adpc-tabs button.is-active{background:var(--adpc-blue,#243A53);color:#fff;border-color:var(--adpc-blue,#243A53)}

.adpc-profile-intro-note{margin:0 0 18px;color:#6b6b6b;font-size:.9rem}
/* 2.4.7 */
.adpc-bncc-check{display:flex;gap:8px;align-items:flex-start;padding:7px 0;font-size:.86rem;line-height:1.4;border-bottom:1px solid #eee}
.adpc-bncc-check input{margin-top:3px;flex:0 0 auto}
.adpc-bncc-check span{color:#888}
.adpc-week-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.adpc-week-nav>div{text-align:center}
.adpc-week-nav strong{display:block;color:var(--adpc-blue,#243A53)}
.adpc-week-nav span{font-size:.8rem;color:#777}
.adpc-week-back{margin:-6px 0 14px;font-size:.82rem}
a.adpc-icon-button{text-decoration:none}
.adpc-notas-in.is-erro{border-color:#c0392b!important;background:#fdecea!important}
.adpc-notas-cell-erro{display:block;margin-top:3px;font-size:10px;line-height:1.3;color:#c0392b;white-space:normal;max-width:120px}
.adpc-notas-extra-row{margin-top:12px;padding-top:12px;border-top:1px dashed #ddd}
.adpc-notas-extra-row .adpc-switch-row{display:flex;align-items:center;gap:8px;margin:0}
.adpc-notas-extra-row .adpc-switch-row input{width:20px;height:20px;flex:0 0 auto}
.adpc-notas-extra-row small{display:block;margin-top:4px}
.adpc-modelo-reco{margin:10px 0;padding:14px 16px;border:1px solid #d9d2c4;border-radius:12px;background:#fbfaf8;font-size:12px}
.adpc-modelo-reco h4{margin:0 0 6px;color:var(--adpc-blue,#243A53);font-size:13px}
.adpc-modelo-reco--validado{border-left:4px solid #2f7d4f}
.adpc-modelo-reco--rejeitado{border-left:4px solid #b3623a}
.adpc-reco-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:8px 0}
.adpc-reco-grid ul{margin:4px 0 0;padding-left:16px}
.adpc-reco-grid li{margin:3px 0}
.adpc-reco-conf{display:inline-block;margin-left:6px;padding:0 6px;border-radius:999px;background:#e7efe7;color:#2f7d4f;font-size:10px;font-weight:700}
.adpc-reco-conf.is-low{background:#fbeee2;color:#a15a2b}
.adpc-reco-ambig{margin:8px 0;padding:10px 12px;background:#fbf3ea;border-radius:8px}
.adpc-reco-ambig ul{margin:4px 0;padding-left:16px}
.adpc-reco-previa{margin:8px 0}
.adpc-reco-previa>summary{cursor:pointer;color:var(--adpc-blue,#243A53);font-weight:600}
.adpc-reco-doc{margin-top:8px;max-height:340px;overflow:auto;padding:12px;background:#fff;border:1px solid #e6e0d6;border-radius:8px}
.adpc-reco-doc h5{margin:8px 0 4px;color:var(--adpc-blue,#243A53);font-size:12px}
.adpc-reco-doc p{margin:4px 0;font-size:11px}
.adpc-reco-tbl{border-collapse:collapse;width:100%;margin:6px 0;font-size:10px}
.adpc-reco-tbl th,.adpc-reco-tbl td{border:1px solid #ccc;padding:3px 5px;text-align:left;vertical-align:top}
.adpc-reco-tbl th{background:#eef2f6}
.adpc-reco-acoes{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
@media(max-width:640px){.adpc-reco-grid{grid-template-columns:1fr}}
.adpc-button-sm{padding:6px 12px;font-size:.8rem}
.adpc-notas-turmas li>.adpc-button-sm{flex:0 0 auto;align-self:center}
.adpc-mat-sec{border:1px solid var(--adpc-line,#e5e0d6);border-radius:14px;padding:16px 18px;margin:0 0 16px}
.adpc-mat-sec>legend,.adpc-mat-sec>summary{font-weight:700;color:var(--adpc-blue,#243A53);font-size:13px;padding:0 6px}
.adpc-mat-sec>summary{list-style:none;cursor:pointer;padding:2px 0}
.adpc-mat-sec>summary::-webkit-details-marker{display:none}
.adpc-mat-avancado[open]>summary{margin-bottom:10px}
.adpc-mat-sec small{display:block;margin-top:4px;font-size:11px;color:#7a7468;line-height:1.5}
.adpc-mat-sec .adpc-field-label{display:block;margin:12px 0 6px}
.adpc-plan-form .adpc-mat-sec label{display:grid;gap:6px;margin:12px 0}
.adpc-plan-form .adpc-mat-sec label:first-of-type{margin-top:0}
.adpc-plan-form .adpc-mat-sec label>span{font-size:12px;font-weight:600;color:var(--adpc-blue,#243A53)}
.adpc-plan-form .adpc-mat-sec .adpc-check-grid label,
.adpc-plan-form .adpc-mat-avancado>label{display:flex;align-items:flex-start;gap:8px}
.adpc-plan-form .adpc-mat-sec .adpc-check-grid label>span,
.adpc-plan-form .adpc-mat-avancado>label>span{font-weight:400;color:#4a4a4a}
.adpc-plan-form .adpc-mat-sec input[type=checkbox]{width:auto;margin-top:3px}
.adpc-plan-form .adpc-mat-sec .adpc-form-grid{margin:0 0 4px}
.adpc-doc-download{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 6px;padding:16px 18px;border:1px solid var(--adpc-line,#e5e0d6);border-left:4px solid var(--adpc-terra,#C46A2D);border-radius:12px;background:#fbfaf8}
.adpc-doc-download strong{display:block;color:var(--adpc-blue,#243A53)}
.adpc-doc-download span{display:block;font-size:12px;color:#777;margin-top:2px}
.adpc-doc-download-acoes{display:flex;gap:8px;flex-wrap:wrap}
.adpc-quick-turma{margin:12px 0 4px;border:1px dashed #cfc7b8;border-radius:12px;padding:0 14px;background:#fbfaf8}
.adpc-quick-turma>summary{padding:11px 0;cursor:pointer;font-size:12px;font-weight:600;color:var(--adpc-blue,#243A53);list-style:none}
.adpc-quick-turma>summary::-webkit-details-marker{display:none}
.adpc-quick-turma[open]{padding-bottom:14px}
.adpc-quick-turma .adpc-field__error{margin:6px 0 0}

/* 2.4.8 — reforço de responsividade (celular) */
.adpc-app,.adpc-app *{box-sizing:border-box}
.adpc-app{max-width:100%;overflow-x:hidden}
.adpc-app input,.adpc-app select,.adpc-app textarea{max-width:100%}
.adpc-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;flex-wrap:nowrap}
.adpc-tabs a,.adpc-tabs button{white-space:nowrap;flex:0 0 auto}
.adpc-schedule-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:760px){
  .adpc-app{display:block;border-left:0;border-right:0;border-radius:0}
  .adpc-sidebar{background:var(--adpc-blue,#243A53);padding:12px}
  .adpc-side-nav{display:flex!important;flex-wrap:wrap;gap:6px!important}
  .adpc-nav-group{display:flex;flex-wrap:wrap;gap:6px}
  .adpc-nav-group span{display:none}
  .adpc-side-nav a{padding:8px 12px;font-size:13px}
  .adpc-sidebar-foot{display:flex!important;margin-top:12px;padding-top:12px}
  .adpc-content{padding:16px 14px 32px!important}
  .adpc-topbar{padding:14px}
  .adpc-topbar h1{font-size:20px}
  .adpc-form-grid{grid-template-columns:1fr!important}
  .adpc-dashboard-grid{grid-template-columns:1fr!important}
  /* auditoria §6: hero do painel empilha no celular (texto, cota) — não deixa 93px pro texto */
  .adpc-hero-card{flex-direction:column;align-items:flex-start;gap:18px;padding:22px 20px}
  .adpc-hero-card>*{min-width:0;max-width:100%}
  .adpc-hero-card h2{font-size:clamp(1.5rem,7vw,2rem);line-height:1.12;overflow-wrap:normal;word-break:normal}
  .adpc-quota{width:112px;height:112px;border-width:9px;align-self:flex-start}
  .adpc-quota strong{font-size:30px}
  .adpc-object-grid{grid-template-columns:1fr!important}
  /* auditoria §7: card de escola/turma empilha; ações em linha própria */
  .adpc-object-card{grid-template-columns:44px minmax(0,1fr);grid-auto-rows:min-content;row-gap:8px}
  .adpc-object-card>form,.adpc-object-card>button,.adpc-object-card>.adpc-link,.adpc-object-card>a{grid-column:1/-1;justify-self:start}
  .adpc-object-icon{width:44px;height:44px}
  .adpc-radio-cards{grid-template-columns:1fr!important}
  .adpc-check-grid{grid-template-columns:1fr!important}
  .adpc-section-head{flex-direction:column;align-items:stretch;gap:10px}
  .adpc-section-head>button,.adpc-section-head .adpc-button{width:100%;justify-content:center}
  /* Auditoria (pacote de prompts, "Minha semana"): a versão anterior forçava
     arrastar os 7 dias na horizontal no celular (display:flex + scroll-snap).
     Agora herda o empilhamento em 1 coluna que já existia em telas médias —
     cada dia vira uma seção que rola na vertical, junto com o resto da página. */
  .adpc-week-nav{flex-wrap:nowrap;gap:6px}
  .adpc-week-nav>div{flex:1 1 auto;min-width:0}
  .adpc-week-nav strong,.adpc-week-nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .adpc-planning-head{flex-direction:column;align-items:stretch;gap:10px}
  .adpc-progress-labels{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}
  .adpc-progress-labels span{flex:0 0 auto}
  .adpc-drawer{position:fixed;inset:0;max-width:100%;border-radius:0;overflow-y:auto;z-index:9999}
  .adpc-onboarding{max-width:100%}
  .adpc-onb-progress span{min-width:0;font-size:11px}
  .adpc-preview-actions{flex-direction:column;align-items:stretch}
  .adpc-preview-actions form,.adpc-preview-actions .adpc-button{width:100%}
}

/* Auditoria 22/09/2026 §4: o drawer (Agenda, Minha semana, Turmas, Aulas
   particulares) ficava fixo em ~540px até em tablet, quase do tamanho da tela.
   min(360px,88vw) em vez de tela cheia — nunca aumenta o scrollWidth da
   página, porque continua position:fixed com largura dentro do viewport. */
@media(max-width:1099px){
  .adpc-drawer{position:fixed;inset:auto;top:0;right:0;height:100vh;width:min(360px,88vw);max-width:none;border-radius:0;overflow-y:auto}
}

/* 2.5.0 — aulas particulares (financeiro) */
.adpc-neg{color:#b3261e}.adpc-pos{color:#1e7a3c}
.adpc-mini-table{width:100%;border-collapse:collapse;margin:6px 0 12px;font-size:.85rem}
.adpc-mini-table td{padding:6px 8px;border-bottom:1px solid #eee;vertical-align:middle}
.adpc-mini-table form{margin:0;display:inline}
.adpc-lesson-list{display:grid;gap:6px}
.adpc-lesson-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--adpc-line,#e5e0d6);border-radius:8px;font-size:.85rem;background:#fff}
.adpc-lesson-row time{font-weight:700;color:var(--adpc-blue,#243A53);flex:0 0 auto}
.adpc-lesson-title{flex:1 1 120px;min-width:0}
.adpc-lesson-row.adpc-st-cancelada{opacity:.55;text-decoration:line-through}
.adpc-lesson-row.adpc-st-realizada{border-left:3px solid #1e7a3c}
.adpc-lesson-actions{display:flex;gap:5px;margin:0;flex-wrap:wrap}
.adpc-chip{border:1px solid #c9c2b6;background:#f6f2ec;border-radius:999px;padding:4px 10px;font-size:.75rem;cursor:pointer;color:#555}
.adpc-chip.is-on{background:var(--adpc-terra,#C46A2D);border-color:var(--adpc-terra,#C46A2D);color:#fff}
.adpc-chip.is-paid{background:#1e7a3c;border-color:#1e7a3c;color:#fff}
.adpc-drawer hr{border:0;border-top:1px solid #e5e0d6;margin:14px 0}
.adpc-escola-det{border:1px solid var(--adpc-line,#e5e0d6);border-radius:12px;margin:0 0 10px;background:#fff}
.adpc-escola-det>summary{list-style:none;cursor:pointer;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:700;color:var(--adpc-blue,#243A53)}
.adpc-escola-det>summary::-webkit-details-marker{display:none}
.adpc-escola-det>summary .adpc-det-chevron{transition:transform .15s;color:#999}
.adpc-escola-det[open]>summary .adpc-det-chevron{transform:rotate(180deg)}
.adpc-escola-det>summary em{font-style:normal;font-weight:400;font-size:12px;color:#8a8378}
.adpc-escola-det[open]>summary{border-bottom:1px solid var(--adpc-line,#e5e0d6)}
.adpc-escola-det>.adpc-object-card{border:0;margin:0}
/* Auditoria 5.4: os detalhes técnicos do arquivo (contagem de tabelas/linhas/parágrafos)
   ficam recolhidos por padrão — reduz a densidade do cartão aberto no celular. */
/* Auditoria 5.4: barra de progresso numerada (1-5) do card de modelo. */
.adpc-model-passos{list-style:none;display:flex;flex-wrap:wrap;gap:0;margin:6px 0 14px;padding:0;counter-reset:none}
.adpc-model-passos li{display:flex;align-items:center;gap:6px;font-size:11px;color:#b0a998;padding-right:10px}
.adpc-model-passos li:not(:last-child)::after{content:"";display:inline-block;width:16px;height:1px;background:#e3dcd4;margin-left:4px}
.adpc-passo-num{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;border:1px solid #d9d2c4;font-size:10px;font-weight:700;flex:0 0 auto}
.adpc-model-passos li.is-feito{color:#1f6f4a}
.adpc-model-passos li.is-feito .adpc-passo-num{background:#dcf1e5;border-color:#1f6f4a;color:#1f6f4a}
.adpc-model-passos li.is-atual{color:var(--adpc-blue,#243A53);font-weight:700}
.adpc-model-passos li.is-atual .adpc-passo-num{background:var(--adpc-orange,#C46A2D);border-color:var(--adpc-orange,#C46A2D);color:#fff}
.adpc-passo-eyebrow{margin:10px 0 2px;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#a99b7f}
@media(max-width:480px){.adpc-model-passos li{font-size:0}.adpc-model-passos li.is-atual{font-size:11px}}
/* Botão de destaque "falar sobre o modelo" (pedido da Caroline: visível e sério,
   não escondido no chat genérico, para quem pagou pelo modelo fiel). */
.adpc-cta-falar-modelo{margin:12px 0;padding:14px 16px;border:1px solid #e7c9a9;border-radius:10px;background:#FBF3EA}
.adpc-cta-falar-modelo p{margin:0 0 10px;font-size:.88rem;color:#7a4a1d}
.adpc-cta-falar-modelo .adpc-button{min-height:44px}
/* Miniabas Cabeçalho/Modelo/Avaliação dentro da aba "Modelo / cabeçalho" do perfil. */
.adpc-modelo-tabs{display:flex;gap:4px;flex-wrap:wrap;margin:0 0 18px;border-bottom:1px solid var(--adpc-line,#e5e0d6)}
.adpc-modelo-tabs button{background:none;border:none;padding:10px 8px;font:inherit;font-weight:700;font-size:.85rem;color:#8a8378;cursor:pointer;border-bottom:2px solid transparent;min-height:44px}
.adpc-modelo-tabs button.is-active{color:var(--adpc-blue,#243A53);border-bottom-color:var(--adpc-orange,#C46A2D)}
.adpc-modelo-tabs button:hover{color:var(--adpc-blue,#243A53)}
.adpc-model-tecnico{margin:6px 0}
.adpc-model-tecnico>summary{cursor:pointer;font-size:11px;color:#8a6d3b;text-decoration:underline}
.adpc-model-tecnico p{margin:4px 0 0}

/* Alvos de toque mínimos (WCAG 2.5.5 / auditoria): 44px em toque. */
@media(pointer:coarse){
  .adpc-app a,.adpc-app button,.adpc-app .adpc-button,.adpc-app .adpc-link,
  .adpc-app .adpc-linkbtn,.adpc-app .adpc-chip,.adpc-app summary,
  .adpc-app input[type=checkbox],.adpc-app input[type=radio],
  .adpc-app .adpc-tabs a,.adpc-app select,.adpc-app input[type=time],
  .adpc-app input[type=date]{min-height:44px}
  .adpc-app .adpc-linkbtn,.adpc-app .adpc-link{display:inline-flex;align-items:center;padding:6px 4px}
  .adpc-app .adpc-chip{padding:10px 14px}
  .adpc-app input[type=checkbox],.adpc-app input[type=radio]{min-width:22px;width:22px;height:22px}
  .adpc-app td .adpc-linkbtn,.adpc-app td .adpc-link{min-height:36px}
}

/* 2.5.0 — tela "gerando" + visualizador de planejamento */
.adpc-generating{max-width:520px;margin:40px auto;padding:40px 28px;text-align:center;background:#fff;border:1px solid var(--adpc-line,#e5e0d6);border-radius:16px;box-shadow:0 20px 50px rgba(36,58,83,.12)}
.adpc-generating .adp-spinner{width:38px;height:38px;margin:0 auto 18px;border-width:4px}
.adpc-generating h3{margin:0 0 6px;font:700 1.3rem/1.2 "Playfair Display",Georgia,serif;color:var(--adpc-blue,#243A53)}
.adpc-generating p{margin:0;color:#6b6b6b;font-size:.9rem}
.adpc-plan-view{max-width:820px;margin:0 auto;background:#fff;border:1px solid var(--adpc-line,#e5e0d6);border-radius:12px;padding:clamp(20px,4vw,44px)}
.adpc-plan-view h1{font:700 1.6rem/1.2 "Playfair Display",Georgia,serif;color:var(--adpc-blue,#243A53);margin:0 0 4px}
.adpc-plan-view h2{font:700 1.15rem/1.3 "Playfair Display",Georgia,serif;color:var(--adpc-blue,#243A53);margin:26px 0 8px;border-top:1px solid #eee;padding-top:18px}
.adpc-plan-view h3{margin:18px 0 6px;font-size:1rem;color:var(--adpc-terra,#C46A2D)}
.adpc-plan-view h4{margin:12px 0 4px;font-size:.9rem}
.adpc-plan-view p{margin:0 0 10px;line-height:1.6}
.adpc-plan-view ul{margin:0 0 12px;padding-left:20px;line-height:1.6}
.adpc-plan-view table{border-collapse:collapse;width:100%;margin:10px 0;font-size:.9rem}
.adpc-plan-view td,.adpc-plan-view th{border:1px solid #ccc;padding:6px 9px;text-align:left}
.adpc-plan-view .adpc-plan-cab{font-size:.9rem;color:#444;margin-bottom:2px}
.adpc-plan-aviso{background:#FBF3EA;border:1px solid #E7C9A9;border-radius:8px;padding:10px 14px;color:#7a4a1d;font-size:.9rem;line-height:1.5;max-width:820px;margin:0 auto 16px}
.adpc-plan-view .adpc-plan-aviso{margin:0 0 14px}
.adpc-plan-aviso-block{background:#FBEEE6;border-color:#E0A878;color:#7a3f16}
.adpc-plan-aviso-block strong{color:#7a3f16}
.adpc-plan-aviso-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:8px}
.adpc-plan-aviso-actions .adpc-linkbtn{color:#7a3f16;text-decoration:underline}
.adpc-plan-actions{max-width:820px;margin:0 auto 16px;display:flex;gap:10px;flex-wrap:wrap}
.adpc-amostra{max-width:820px;margin:0 auto}
.adpc-amostra h2{margin:.2rem 0 .6rem}
.adpc-amostra-check{list-style:none;margin:1rem 0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.adpc-amostra-check li{display:flex;gap:.55rem;align-items:flex-start;font-size:.94rem;line-height:1.45}
.adpc-amostra-check .adpc-amostra-ico{flex:0 0 auto;line-height:1.4}
.adpc-amostra-check li.is-ok .adpc-amostra-ico{color:#1f7a44}
.adpc-amostra-check li.is-atencao .adpc-amostra-ico{color:#b0640f}
.adpc-amostra-check li.is-falha .adpc-amostra-ico{color:#b32020}
.adpc-amostra-acoes{display:flex;flex-wrap:wrap;gap:10px;margin-top:1rem}
.adpc-amostra-detalhe{flex:1 1 100%;background:#F6F3EE;border:1px solid #E4DDD0;border-radius:8px;padding:12px 14px;margin-bottom:.4rem}
.adpc-amostra-detalhe label{display:block;font-size:.9rem;line-height:1.45;margin-bottom:.5rem}
.adpc-amostra-detalhe select{width:100%;max-width:460px;padding:.5rem .6rem;border:1px solid #cbb8a0;border-radius:6px;font-size:.95rem}
.adpc-amostra-detalhe .adpc-button{margin-top:.55rem}

/* 2.5.1 — status do modelo da escola */
.adpc-model-status{display:inline-flex;flex-direction:column;gap:2px;padding:4px 9px;border-radius:8px;font-size:.72rem;font-weight:700;line-height:1.3}
.adpc-model-status small{font-weight:500;opacity:.85}
.adpc-model-status.is-ready{background:#e7f5ec;color:#1e7a3c}
.adpc-model-status.is-review{background:#FBF3EA;color:#9a5b12}
.adpc-model-status.is-pending{background:#eef1f5;color:#4a5568}
.adpc-model-status.is-fail{background:var(--adpc-danger-soft,#fef3f2);color:var(--adpc-danger,#b42318)}
.adpc-model-help{margin:6px 0 4px;padding:10px 12px;background:#f4f1ec;border-radius:8px;font-size:.8rem;line-height:1.5;color:#555}

/* 2.6.0 — exclusões + agenda por cores + turnos */
.adpc-danger-inline,.adp-danger-inline{display:inline;margin:0}
.adpc-linkbtn,.adp-linkbtn{background:none;border:0;padding:0;font:inherit;color:#7a1f2b;cursor:pointer;text-decoration:underline;font-size:.8rem}
.adpc-linkbtn-danger,.adp-linkbtn-danger{color:#a3272f}
.adpc-linkbtn-danger:hover,.adp-linkbtn-danger:hover{color:#7a1f2b}
.adpc-head-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.adpc-object-card .adpc-danger-inline{margin-left:10px}
.adpc-agenda-legenda{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 14px;padding:10px 12px;background:#f7f5f1;border-radius:10px;font-size:.8rem}
.adpc-leg-item{display:inline-flex;align-items:center;gap:6px;color:#444}
.adpc-agenda-dot{width:10px;height:10px;border-radius:50%;flex:0 0 auto;display:inline-block}
.adpc-turno{margin:0 0 10px}
.adpc-turno-label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#8a8378;margin:0 0 4px}
.adpc-agenda-item{display:grid;grid-template-columns:12px minmax(0,1fr);align-items:start;gap:2px 8px;padding:8px 10px;margin:0 0 6px;width:100%;text-align:left;background:#fff;border:1px solid #ece7df;border-left:3px solid #999;border-radius:7px;font-size:.82rem}
.adpc-agenda-item>.adpc-agenda-dot{margin-top:5px}
.adpc-agenda-item>time{grid-column:2;font-variant-numeric:tabular-nums;color:#666;font-size:.74rem}
.adpc-agenda-item>div{grid-column:2;min-width:0}
.adpc-agenda-item>div>strong{display:block;font-size:.82rem;line-height:1.3;overflow-wrap:anywhere}
.adpc-agenda-item>div>span{display:block;font-size:.75rem;color:#777;overflow-wrap:anywhere}
.adpc-lesson-del{display:inline;margin-left:6px}

/* 2.7.0 — calendário, contagem de aulas, financeiro, BNCC, revisão */
.adpc-quicklinks{display:flex;flex-wrap:wrap;gap:6px 14px;margin:8px 0}
.adpc-quicklinks a{font-size:.82rem;color:#243A53;text-decoration:underline}
.adpc-skill-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:6px 0 10px}
.adpc-skill-tools input[type=search]{flex:1 1 200px;padding:6px 9px;border:1px solid #d8d2c6;border-radius:7px;font:inherit}
.adpc-skill-chips{display:flex;gap:6px;flex-wrap:wrap}
.adpc-skill-chips button{background:#f2efe9;border:1px solid #e0dacd;border-radius:999px;padding:4px 10px;font-size:.75rem;cursor:pointer;color:#555}
.adpc-skill-chips button.is-active{background:#243A53;border-color:#243A53;color:#fff}
.adpc-feriados-list{list-style:none;margin:6px 0 0;padding:0;columns:2;font-size:.82rem}
.adpc-feriados-list li{margin:0 0 3px}
.adpc-feriados-list time{font-variant-numeric:tabular-nums;color:#666;margin-right:6px}
/* Cards de referência de feriados (nacionais/observância/por estado): fecham por
   padrão (3.0.0) para a página não ficar enorme com várias escolas cadastradas. */
details.adpc-card{padding:0}
details.adpc-card>summary{list-style:none;cursor:pointer;padding:20px;display:flex;align-items:center}
details.adpc-card>summary::-webkit-details-marker{display:none}
details.adpc-card>summary::after{content:"▾";margin-left:auto;color:#999;transition:transform .15s}
details.adpc-card[open]>summary::after{transform:rotate(180deg)}
details.adpc-card>summary h3{margin:0}
details.adpc-card>*:not(summary){padding:0 20px}
details.adpc-card>:last-child{padding-bottom:20px}
/* Busca simples para listas longas de escolas/turmas (3.0.0). */
.adpc-grid-filter{margin:10px 0}
.adpc-grid-filter input[type=search]{width:100%;max-width:420px;padding:10px 14px;border:1px solid var(--adpc-line,#ddd6cc);border-radius:10px;font:14px Montserrat,system-ui,sans-serif}
.adpc-day-nl{background:#faf6ef}
.adpc-day-badge{margin:4px 0;padding:3px 6px;background:#FBF3EA;color:#9a5b12;border-radius:6px;font-size:.66rem;font-weight:700;letter-spacing:.03em}
.adpc-agenda-warn{display:block;color:#9a5b12;font-size:.7rem;font-weight:600;margin-top:2px}
.adpc-lesson-breakdown{display:block;margin-top:4px;font-size:.75rem;color:#6b6b6b}
.adpc-review-list{margin:10px 0;border:1px solid #ece7df;border-radius:10px;overflow:hidden}
.adpc-review-list>div{display:flex;gap:10px;padding:7px 12px;border-top:1px solid #f0ece3;font-size:.85rem}
.adpc-review-list>div:first-child{border-top:0}
.adpc-review-list dt{flex:0 0 130px;color:#7a7468;margin:0}
.adpc-review-list dd{margin:0;font-weight:600;color:#333}
.adpc-usage{margin:14px 0}
.adpc-usage label{display:block;font-size:.83rem;color:#555;margin-bottom:6px}
.adpc-usage progress{width:100%;height:10px;border-radius:999px;overflow:hidden;accent-color:var(--adpc-terracota,#C46A2D)}
.adpc-usage progress::-webkit-progress-bar{background:#e8ebef;border-radius:999px}
.adpc-usage progress::-webkit-progress-value{background:var(--adpc-terracota,#C46A2D);border-radius:999px}
.adpc-hab-done{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:#e7f5ec;color:#1e7a3c;font-size:.68rem;font-style:normal;font-weight:700}
.adpc-fin-filtros{display:flex;flex-wrap:wrap;gap:12px;margin:10px 0}
.adpc-fin-filtros label{display:flex;flex-direction:column;gap:3px;font-size:.72rem;color:#7a7468}
.adpc-fin-filtros select{padding:6px 9px;border:1px solid #d8d2c6;border-radius:7px;font:inherit}
.adpc-fin-resumo{margin:8px 0 14px}
.adpc-fin-badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.72rem;font-weight:700}
.adpc-fin-pago{background:#e7f5ec;color:#1e7a3c}
.adpc-fin-pendente{background:#eef1f6;color:#3a5a8c}
.adpc-fin-atrasado{background:#fbe9e9;color:#a3272f}
.adpc-fin-cancelado,.adpc-fin-isento{background:#efece6;color:#777}

/* 2.8.0 — matemática estruturada e figuras */
.adpc-plan-view .adpc-math{margin:12px 0;overflow-x:auto;text-align:center}
.adpc-plan-view .katex-display{margin:0}
.adpc-plan-view .katex{font-size:1.05em}
.adpc-figura{margin:14px auto;text-align:center;max-width:100%}
.adpc-figura svg{max-width:min(420px,100%);height:auto}
.adpc-figura figcaption{margin-top:4px;font-size:.82rem;color:#666}

/* 2.9.0 — construtor de horários + agenda editável */
.adpc-inline-label{display:flex;align-items:center;gap:8px}
.adpc-hb-modes{display:flex;gap:18px;margin:0 0 12px;font-size:.85rem}
.adpc-hb-int{border:1px solid #e0dacd;border-radius:8px;padding:10px 12px;margin:10px 0}
.adpc-hb-int legend{font-size:.75rem;font-weight:700;color:#7a7468;padding:0 4px}
.adpc-hb-int label{display:inline-flex;align-items:center;gap:6px;margin-right:14px;font-size:.82rem}
/* horários: os <label> do construtor não devem virar blocos grandes (regra .adpc-app .adpc-card label) */
.adpc-app [data-adpc-schedule-builder] .adpc-hb-modes label,
.adpc-app [data-adpc-schedule-builder] .adpc-hb-int label,
.adpc-app [data-adpc-schedule-builder] .adpc-hb-introw label,
.adpc-app [data-adpc-schedule-builder] .adpc-inline-label{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:.85rem}
.adpc-app [data-adpc-schedule-builder] .adpc-hb-turno{display:flex;align-items:center;gap:10px;margin:0 0 14px}
.adpc-app [data-adpc-schedule-builder] .adpc-hb-turno>span{font-size:12px;font-weight:600;color:var(--adpc-blue);flex:0 0 auto}
.adpc-app [data-adpc-schedule-builder] .adpc-hb-turno select{max-width:220px}
.adpc-app [data-adpc-schedule-builder] .adpc-hb-modes{gap:22px;margin:0 0 14px}
.adpc-app [data-adpc-schedule-builder] .adpc-hb-int{margin:12px 0;padding:12px 14px}
.adpc-app [data-adpc-schedule-builder] .adpc-hb-introw{margin:8px 0}
.adpc-app [data-adpc-schedule-builder] .adpc-hb-auto>.adpc-form-grid{margin:0 0 12px}
.adpc-app [data-adpc-schedule-builder] .adpc-field-help{margin:8px 0 10px}
.adpc-app [data-adpc-schedule-builder] [data-hb-gerar]{margin-top:2px}
.adpc-hb-introw{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0;font-size:.82rem}
.adpc-hb-introw input[type=time]{width:110px}.adpc-hb-introw input[type=number]{width:64px}
.adpc-hb-cols{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;overflow-x:auto;margin:10px 0}
.adpc-hb-col{min-width:150px;border:1px solid #ece7df;border-radius:8px;padding:6px}
.adpc-hb-col h4{margin:2px 0 6px;font-size:.78rem;color:#243A53;text-align:center}
.adpc-hb-cel{display:flex;flex-direction:column;gap:3px;padding:5px 4px;border-top:1px solid #f0ece3;font-size:.75rem}
.adpc-hb-cel:first-of-type{border-top:0}
.adpc-hb-cel span{color:#666;font-variant-numeric:tabular-nums}
.adpc-hb-cel select{width:100%;font-size:.78rem;padding:3px 4px}
.adpc-hb-cel.is-interval{background:#f2efe9;color:#999;font-style:italic}
.adpc-hb-acts{display:flex;gap:6px}
.adpc-hb-acts button{background:none;border:0;color:#7a1f2b;font-size:.68rem;cursor:pointer;text-decoration:underline;padding:0}
.adpc-hb-daynav{display:none}
@media(max-width:760px){
  /* §14: no celular, um dia por vez com navegacao ← [select] → */
  .adpc-hb-daynav{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}
  .adpc-hb-daynav select{flex:1;min-height:44px;font-size:16px;padding:8px 10px;border:1px solid #d6d1ca;border-radius:8px;background:#fff}
  .adpc-hb-daynav button{min-width:44px;min-height:44px;font-size:1.1rem}
  .adpc-hb-cols{display:block;overflow-x:visible}
  .adpc-hb-col{min-width:0;display:none}
  .adpc-hb-col.is-current{display:block}
}

/* auditoria §9 — grade de horários em matriz: horário à esquerda, dias em colunas */
.adpc-hb-grid-wrap{margin:10px 0}
.adpc-hb-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #e5e0d6;border-radius:8px}
.adpc-hb-table{border-collapse:collapse;width:100%;font-size:.82rem}
.adpc-hb-table caption{caption-side:top}
.adpc-hb-table th,.adpc-hb-table td{border:1px solid #e2ddd0;padding:5px 6px;text-align:center;vertical-align:middle}
.adpc-hb-table thead th{background:#f2efe9;color:#243A53;position:sticky;top:0}
.adpc-hb-table th[scope=row]{white-space:nowrap;background:#faf8f4;font-variant-numeric:tabular-nums;position:sticky;left:0;z-index:1}
.adpc-hb-table tr.is-interval td,.adpc-hb-table tr.is-interval th{background:#f2efe9;color:#8a857a;font-style:italic}
.adpc-hb-table td.is-empty{color:#c9c3b7}
.adpc-hb-table td.is-interval-cell{background:#f5f2ec;color:#a29c8f;font-style:italic}
.adpc-hb-table td select{width:100%;min-width:120px;font-size:.8rem;padding:4px 5px;border:1px solid #cfc8ba;border-radius:5px}
.adpc-hb-outro{width:100%;margin-top:4px;font-size:.78rem;padding:3px 5px;border:1px solid #cfc8ba;border-radius:5px}
.adpc-hb-cellact{font-size:.68rem;margin-top:3px}
.adpc-hb-manual-add{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;font-size:.8rem}
.adpc-hb-copiar-box{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:.85rem}
.adpc-hb-copiar-box select{min-height:38px;padding:4px 8px;border:1px solid #cfc8ba;border-radius:6px}
.adpc-hb-copy-dest{display:inline-flex;align-items:center;gap:4px}
.adpc-hb-copy-dest input{width:18px;height:18px}
button.adpc-agenda-item{width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:0;border-left:3px solid #999;border-radius:7px}
.adpc-agenda-item.is-editable:hover{background:#faf9f7}
.adpc-agenda-del-form{display:none}
.adpc-week-add{margin:6px 0 10px}
.adpc-agenda-fixo{background:repeating-linear-gradient(45deg,#fff,#fff 8px,#faf7f2 8px,#faf7f2 16px)}
.adpc-agenda-tag{font-size:.7rem;font-style:normal;color:#8a6d3b;background:#f5ead6;padding:1px 6px;border-radius:999px;vertical-align:middle}
.adpc-agenda-tag--cancelada{color:#8a2f2f;background:#f6dede}
.adpc-agenda-tag--realizada{color:#1f6f4a;background:#dcf1e5}
.adpc-agenda-item.is-cancelada{opacity:.6}
.adpc-agenda-item.is-cancelada strong{text-decoration:line-through}
.adpc-student-fixed{margin:2px 0 10px;font-size:.9rem;color:#4e5963}

/* 2.11.0 — status ao vivo */
td .adp-status.is-loading{display:inline;padding:0;background:none;border:0;box-shadow:none;color:inherit}
td .adp-status.is-loading .adp-status-label{font-weight:600}
.adpc-generating .adp-progress{max-width:320px;margin:16px auto 0}
.adp-status .adp-progress{margin-top:14px}

/* 2.12.0 — acessibilidade e mobile 320–430px */
.adp-skip-link{position:absolute;left:8px;top:-48px;z-index:100000;background:var(--adpc-blue,#243A53);color:#fff;padding:10px 16px;border-radius:0 0 8px 8px;text-decoration:none;font:600 14px Montserrat,sans-serif;transition:top .15s ease}
.adp-skip-link:focus{top:0}
.adpc-app :focus-visible,.adp-skip-link:focus-visible{outline:3px solid var(--adpc-terra,#c46a2d);outline-offset:2px;border-radius:4px}
.adpc-main:focus{outline:none}
/* gaveta fechada: fora da ordem de tabulação (era só translateX -> inputs ficavam focáveis) */
.adpc-drawer{visibility:hidden;transition:transform .25s ease,visibility 0s .25s}
.adpc-drawer.is-open{visibility:visible;transition:transform .25s ease}
/* tabela larga rola dentro do próprio contêiner, nunca empurra a página.
   Em ≤700px o adp.css já transforma .adp-tabela em cartões (sem rolagem). */
.adp-table-wrap{max-width:100%}
@media(min-width:701px){ .adp-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch} }
@media(max-width:480px){
  .adpc-app input,.adpc-app select,.adpc-app textarea,
  .adpc-drawer input,.adpc-drawer select,.adpc-drawer textarea{font-size:16px}
  .adpc-app .adpc-button,.adpc-app .adp-btn,.adpc-app button[type="submit"],
  .adpc-app .adpc-v9-primary,.adpc-app .adpc-v9-secondary{min-height:44px}
  .adpc-app .adp-btn-sm{min-height:40px;display:inline-flex;align-items:center;padding:6px 12px}
  .adpc-app .adpc-linkbtn,.adpc-app .adp-linkbtn{min-height:40px;display:inline-flex;align-items:center}
  .adpc-drawer-head button{min-width:44px;min-height:44px}
  .adpc-topbar h1{font-size:22px}
  .adpc-plan-actions,.adpc-preview-actions{flex-wrap:wrap;gap:10px}
  .adpc-plan-actions .adp-btn,.adpc-preview-actions .adpc-button{flex:1 1 auto;justify-content:center;text-align:center}
}
.adp-visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* 2.13.0 — aba Modelo de planejamento */
.adpc-model-card{display:grid;gap:14px}
.adpc-model-card h3{margin:0 0 2px}
.adpc-model-fields{margin:8px 0 0;font-size:12px;color:var(--adpc-text,#4a4a4a)}
.adpc-model-corrigido{color:var(--adpc-terra,#c46a2d);font-weight:600}
.adpc-model-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.adpc-model-actions form{margin:0}
.adpc-model-upload{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px dashed var(--adpc-line,#ddd6cc);border-radius:9px;padding:8px 10px}
.adpc-model-upload .adpc-file-inline{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--adpc-blue,#243A53)}
.adpc-model-map table{width:100%}
.adpc-model-map td select{width:100%;min-width:220px}
@media(max-width:480px){.adpc-model-actions .adpc-button,.adpc-model-actions form{width:100%}.adpc-model-upload{width:100%}}
.adpc-model-teste{margin-top:12px;padding:12px 14px;border:1px solid var(--adpc-line,#e5e0d6);border-radius:10px;background:#fbfaf7}
.adpc-model-teste>p{margin:6px 0 0;font-size:.86rem}
.adpc-model-checks{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px}
.adpc-model-checks li{font-size:.83rem;line-height:1.4;display:grid;grid-template-columns:16px minmax(0,1fr);gap:6px;align-items:start}
.adpc-model-check-ic{font-weight:800;text-align:center}
.adpc-model-check-txt{min-width:0;overflow-wrap:break-word}
.adpc-model-checks li.is-ok .adpc-model-check-ic{color:#1e7a3c}
.adpc-model-checks li.is-warn .adpc-model-check-ic{color:#9a5b12}
.adpc-model-checks li.is-fail .adpc-model-check-ic{color:#b03636}
.adpc-model-checks li em{display:block;color:#6b6b6b;font-style:normal;font-size:.8rem;overflow-wrap:break-word}
.adpc-model-checks-err{margin:6px 0 0;font-size:.83rem;color:#b03636}
.adpc-model-teste-actions{margin-top:10px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}

/* ===== Escolas e modelos (2.94.0, Fase 2): uma escola por vez + cartão de
   estado único + menu de ações secundárias, no lugar dos selos que podiam
   contradizer uns aos outros. ===== */
.adpc-school-selector{margin-bottom:16px;padding:14px 16px;background:#fff;border:1px solid var(--adpc-line,#ddd6cc);border-radius:12px}
.adpc-school-selector form{display:flex}
.adpc-school-selector label{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;margin:0}
.adpc-school-selector select{min-height:44px;width:100%;font:inherit}
.adpc-school-selector p{margin:8px 0 0;color:#6d7680;font-size:.85rem}
.adpc-model-summary{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px;border:1px solid var(--adpc-line,#ddd6cc);border-radius:12px;background:#fbfaf7;margin-bottom:12px}
.adpc-model-summary h3{margin:6px 0 4px;font-size:1rem;overflow-wrap:anywhere}
.adpc-model-summary p{margin:0;color:#6d7680;font-size:.88rem}
.adpc-model-menu{position:relative;display:inline-block}
.adpc-model-menu>summary{list-style:none;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--adpc-line,#ddd6cc);border-radius:8px;cursor:pointer;font-size:1.1rem;color:var(--adpc-blue,#243A53)}
.adpc-model-menu>summary::-webkit-details-marker{display:none}
.adpc-model-menu__items{position:absolute;left:0;right:auto;z-index:960;display:flex;flex-direction:column;gap:2px;width:max-content;min-width:220px;max-width:min(280px,calc(100vw - 24px));max-height:min(360px,calc(100vh - 32px));overflow-y:auto;margin-top:6px;padding:8px;background:#fff;border:1px solid var(--adpc-line,#ddd6cc);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12)}
.adpc-model-menu.adpc-menu-abre-esquerda .adpc-model-menu__items{left:auto;right:0}
.adpc-model-menu.adpc-menu-abre-cima .adpc-model-menu__items{top:auto;bottom:100%;margin-top:0;margin-bottom:6px}
.adpc-model-menu__items a,.adpc-model-menu__items .adpc-linkbtn,.adpc-model-menu__upload{min-height:40px;display:flex;align-items:center;padding:6px 10px;border-radius:8px;color:var(--adpc-blue,#243A53);text-decoration:none;font-size:.88rem;text-align:left;background:transparent;border:0;cursor:pointer;width:100%}
.adpc-model-menu__items a:hover,.adpc-model-menu__items .adpc-linkbtn:hover,.adpc-model-menu__upload:hover{background:#f4f1ec}
.adpc-model-menu__upload{cursor:pointer}
.adpc-model-menu__upload input[type=file]{font-size:.78rem}
.adpc-model-menu__historico{padding:6px 10px;font-size:.8rem;color:#8a8378}
.adpc-model-menu__items form{margin:0;width:100%}

/* 2.13.2 — correções da auditoria de usabilidade */
/* (1)(2) as variáveis --adp-* só existiam em .adp-shell; o Clube usa .adpc-app.
   Sem isto, .adp-btn ("Ver"/"Baixar .docx") e .adp-tabela th ficam sem cor. */
.adpc-app{
  --adp-azul:#243A53;--adp-terracota:#C46A2D;--adp-bege:#F4F1EC;--adp-grafite:#2B2B2B;
  --adp-azul-claro:#4A6FA5;--adp-linha:rgba(36,58,83,.14);--adp-linha-forte:rgba(36,58,83,.26);
  --adp-muted:#5c6670;--adp-ok:#2B6B3D;--adp-erro:#9A2F2F
}
/* (4) radios/checkboxes nunca ocupam 100% — os "cartões de opção" escondem o input
   com position:absolute e um width:100% herdado empurrava a página ~440px. */
.adpc-app input[type=radio],.adpc-app input[type=checkbox]{width:auto;max-width:none;flex:0 0 auto}
/* (5) [hidden] tem de vencer .adpc-card/.adpc-drawer/.adpc-narrow label{display:grid} */
.adpc-app [hidden]{display:none!important}
/* (3) aba "Modelo de planejamento": o card NÃO usa a grade de 3 colunas do .adpc-object-card */
.adpc-model-card{display:block}
.adpc-model-card>div{min-width:0}
.adpc-model-card h3{overflow-wrap:break-word}
.adpc-model-card .adpc-tags{margin:12px 0}
.adpc-model-card .adpc-model-status{display:flex;max-width:100%;border-radius:8px;padding:8px 12px}
.adpc-model-card .adpc-model-fields{margin:10px 0 14px}
.adpc-model-resumo{margin:10px 0 0;padding:12px 14px;background:#eef2f6;border-left:4px solid var(--adpc-light,#6f96b8);border-radius:8px;color:#3d4a57;font-size:13px;line-height:1.5}
.adpc-fixed-schedule{display:grid;gap:6px;margin:14px 0}
.adpc-fixed-schedule [data-fixed-rows]{display:grid;gap:8px;margin:4px 0}
.adpc-fixed-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.adpc-fixed-row select{flex:1 1 120px;min-width:110px}
.adpc-fixed-row input[type=time]{flex:0 0 auto;width:118px}
.adpc-fixed-row [data-fixed-del]{margin-left:auto}
.adpc-fixed-schedule [data-fixed-add]{justify-self:start;font-size:12px;padding:8px 12px}
.adpc-model-map .adpc-card{margin:16px 0}
.adpc-model-map .adpc-card h3{margin:0 0 6px;color:var(--adpc-blue)}

/* ============================================================
   2.14.0 - Fase 1: shell da aplicacao + fundacao responsiva
   (identidade preservada: azul #243A53, laranja #C46A2D, creme #F4F1EC)
   ============================================================ */
.adpc-app{
  --adpc-navy:#243A53;--adpc-navy-dark:#102940;
  --adpc-orange:#A8571F;--adpc-orange-dark:#874217;
  --adpc-cream:#F4F1EC;--adpc-surface:#fff;--adpc-surface-soft:#FBF8F3;
  --adpc-text:#24313b;--adpc-text-muted:#66727c;--adpc-border:#d9dee3;
  --adpc-danger:#b42318;--adpc-danger-soft:#fef3f2;
  --adpc-success:#18794e;--adpc-success-soft:#ecfdf3;
  --adpc-warning:#9a6700;--adpc-warning-soft:#fff8e1;--adpc-focus:#2563eb;
  --adpc-radius-sm:8px;--adpc-radius-md:14px;--adpc-radius-lg:22px;
  --adpc-shadow-sm:0 2px 8px rgba(16,41,64,.08);--adpc-shadow-md:0 12px 32px rgba(16,41,64,.12);
  --adpc-content-max:1200px;--adpc-form-max:760px;--adpc-touch-min:44px;
  --adpc-blue:#243A53;--adpc-terra:#C46A2D;--adpc-line:var(--adpc-border);
  --support-safe-area:0px
}
.adpc-app,.adpc-app *,.adpc-app *::before,.adpc-app *::after{box-sizing:border-box}
.adpc-app{display:block;width:100%;min-width:0;color:var(--adpc-text);background:var(--adpc-cream);line-height:1.5;overflow-x:clip}
.adpc-app img,.adpc-app svg,.adpc-app video{display:block;max-width:100%;height:auto}
.adpc-app main,.adpc-app section,.adpc-app article,.adpc-app form,.adpc-app fieldset,.adpc-app div{min-width:0}
.adpc-container{width:min(100% - 48px,var(--adpc-content-max));margin-inline:auto}

.adpc-skip-link{position:fixed;z-index:10000;top:8px;left:8px;padding:12px 16px;color:#fff;background:var(--adpc-navy);border-radius:var(--adpc-radius-sm);text-decoration:none;transform:translateY(-160%);transition:transform .2s ease}
.adpc-skip-link:focus{transform:translateY(0)}
.adpc-app-header{position:sticky;z-index:900;top:0;width:100%;background:var(--adpc-surface);border-bottom:1px solid var(--adpc-border)}
.adpc-app-header__inner{display:flex;align-items:center;gap:16px;width:min(100% - 48px,var(--adpc-content-max));min-height:76px;margin-inline:auto}
.adpc-app-brand{display:inline-flex;align-items:center;flex:0 0 auto;min-height:44px}
.adpc-app-brand img{width:auto;max-width:150px;max-height:48px}
.adpc-app-header__context{display:flex;flex-direction:column;min-width:0}
.adpc-app-header__eyebrow{color:var(--adpc-orange);font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.adpc-app-header__title{color:var(--adpc-navy);font-size:1rem;font-weight:700;font-family:inherit;margin:0;line-height:1.25;overflow-wrap:anywhere;white-space:normal}
.adpc-app .adpc-menu-toggle,.adpc-app .adpc-menu-close{display:none;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;padding:0;color:var(--adpc-navy);background:transparent;border:1px solid var(--adpc-border);border-radius:10px;cursor:pointer}
.adpc-app .adpc-menu-toggle{flex-direction:column;gap:5px;margin-left:auto}
.adpc-menu-toggle span{width:20px;height:2px;background:currentColor;border-radius:2px;display:block}

.adpc-app-layout{display:grid;grid-template-columns:250px minmax(0,1fr);width:min(100% - 48px,var(--adpc-content-max));margin:24px auto 48px;gap:24px}
.adpc-app-nav{position:sticky;top:100px;align-self:start;display:flex;flex-direction:column;gap:6px;padding:16px;background:var(--adpc-navy);border-radius:var(--adpc-radius-lg);box-shadow:var(--adpc-shadow-sm)}
.adpc-app-nav__header{display:none}
.adpc-app-nav a{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;color:rgba(255,255,255,.86);font-size:.9rem;font-weight:600;text-decoration:none;border-radius:10px}
.adpc-app-nav a:hover{color:#fff;background:rgba(255,255,255,.1)}
.adpc-app-nav a[aria-current="page"]{color:#fff;background:var(--adpc-orange)}
/* Menu agrupado (2.34): cabeçalho de grupo + itens indentados */
.adpc-app-nav .adpc-nav-group{display:flex;flex-direction:column;gap:2px;margin-top:8px}
.adpc-app-nav .adpc-nav-group:first-child{margin-top:0}
.adpc-app-nav .adpc-nav-group__label{padding:6px 14px 2px;font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.45)}
.adpc-app-nav .adpc-nav-group.is-current .adpc-nav-group__label{color:rgba(255,255,255,.72)}
.adpc-app-nav .adpc-nav-group__items{display:flex;flex-direction:column;gap:2px}
.adpc-app-nav .adpc-nav-group__items a{font-size:.86rem;padding-left:16px}
/* Menu 2.61: grupos que abrem por clique — <details>, sem hover */
.adpc-nav-home{font-weight:700}
.adpc-nav-home.is-current{color:#fff;background:var(--adpc-orange)}
.adpc-app-nav .adpc-nav-det{margin:2px 0;border-radius:10px}
.adpc-app-nav .adpc-nav-det>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 14px;color:rgba(255,255,255,.9);font-size:.88rem;font-weight:700;border-radius:10px}
.adpc-app-nav .adpc-nav-det>summary::-webkit-details-marker{display:none}
.adpc-app-nav .adpc-nav-det>summary .adpc-det-chevron{font-size:.7rem;opacity:.6;transition:transform .15s ease}
.adpc-app-nav .adpc-nav-det[open]>summary .adpc-det-chevron{transform:rotate(180deg)}
.adpc-app-nav .adpc-nav-det>summary:hover{background:rgba(255,255,255,.08)}
.adpc-app-nav .adpc-nav-det>summary:focus-visible{outline:2px solid #fff;outline-offset:-2px}
.adpc-app-nav .adpc-nav-det__items{display:flex;flex-direction:column;gap:2px;padding:2px 0 6px}
.adpc-app-nav .adpc-nav-det__items a{font-size:.85rem;padding-left:22px;min-height:40px}
.adpc-app-nav__account{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:16px 8px 0;border-top:1px solid rgba(255,255,255,.18)}
.adpc-app-nav__user{overflow:hidden;color:#fff;font-size:.85rem;text-overflow:ellipsis;white-space:nowrap}
.adpc-app-nav .adpc-app-nav__logout{min-height:44px;padding-inline:10px;color:#fff;display:inline-flex;align-items:center}
.adpc-app-main{width:100%;min-width:0}
.adpc-app-main:focus{outline:none}
.adpc-app .adpc-content{padding:0;max-width:none;width:100%}
.adpc-menu-backdrop[hidden]{display:none}

.adpc-app .adpc-button,.adpc-app button:not(.adpc-menu-toggle):not(.adpc-menu-close),.adpc-app input[type="submit"]{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:11px 18px;font:inherit;font-size:.9rem;font-weight:700;line-height:1.2;text-align:center;text-decoration:none;border:1px solid transparent;border-radius:10px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,transform .2s ease}
.adpc-app .adpc-button--primary,.adpc-app .adpc-button-primary,.adpc-app .adpc-button-accent{color:#fff;background:var(--adpc-orange)}
.adpc-app .adpc-button--primary:hover,.adpc-app .adpc-button-primary:hover,.adpc-app .adpc-button-accent:hover{color:#fff;background:var(--adpc-orange-dark)}
.adpc-app .adpc-button--secondary{color:var(--adpc-navy);background:var(--adpc-surface);border-color:var(--adpc-navy)}
.adpc-app .adpc-button--ghost,.adpc-app .adpc-button-ghost{color:var(--adpc-navy);background:transparent;border-color:var(--adpc-border)}
.adpc-app .adpc-button--danger{color:var(--adpc-danger);background:var(--adpc-danger-soft);border-color:#f4c7c3}
.adpc-app .adpc-button:disabled,.adpc-app button:disabled{cursor:not-allowed;opacity:.55}
.adpc-app .adpc-button:focus-visible,.adpc-app button:focus-visible,.adpc-app a:focus-visible,.adpc-app input:focus-visible,.adpc-app select:focus-visible,.adpc-app textarea:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:3px}

/* Auditoria 22/09/2026: entre 768 e 1100px (tablet) o menu virava um trilho só de
   ícones que continuava ocupando largura permanente e deixava o conteúdo espremido.
   Trocado pelo MESMO menu off-canvas do celular (gaveta com botão "Menu", fecha com
   Esc/clique fora) — o range deste bloco (que já tratava de header compacto + gaveta)
   passa a cobrir até 1100px; o "trilho de ícones" que existia só nessa faixa foi
   removido (ver adp-clube.js, listener de resize, também ajustado pra 1100px). */
@media(max-width:1100px){
  /* auditoria §5: header = conteúdo flexível + botão de 48px; título com largura real */
  .adpc-app-header__inner{display:grid;grid-template-columns:minmax(0,1fr) 48px;align-items:center;width:calc(100% - 24px);min-height:64px;gap:12px}
  .adpc-app-brand{grid-column:1;justify-self:start}
  .adpc-app-brand img{max-width:136px;max-height:46px}
  .adpc-app-header__context{grid-column:1;min-width:0}
  .adpc-app-header__eyebrow{font-size:.65rem}
  .adpc-home-head h2{font-size:1.24rem}
  .adpc-app-header__title{font-size:clamp(.92rem,4.4vw,1.05rem);overflow-wrap:normal;word-break:normal}
  .adpc-app .adpc-menu-toggle,.adpc-app .adpc-menu-close{display:inline-flex;grid-column:2;grid-row:1/span 2;width:48px;min-width:48px;height:48px;margin:0}
  .adpc-app-layout{display:block;width:calc(100% - 32px);margin:20px auto 40px}
  .adpc-app-nav{position:fixed;z-index:1001;inset:0 auto 0 0;display:flex;width:min(86vw,320px);max-height:100dvh;padding:20px 16px;overflow-y:auto;border-radius:0 22px 22px 0;box-shadow:var(--adpc-shadow-md);transform:translateX(-105%);transition:transform .25s ease}
  .adpc-app-nav.is-open{transform:translateX(0)}
  .adpc-app-nav__header{display:flex;align-items:center;justify-content:space-between;min-height:52px;margin-bottom:8px;color:#fff}
  .adpc-app-nav__header strong{color:#fff}
  .adpc-app .adpc-menu-close{color:#fff;border-color:rgba(255,255,255,.3);font-size:24px;line-height:1}
  .adpc-menu-backdrop{position:fixed;z-index:1000;inset:0;background:rgba(7,24,39,.55)}
  /* o botão "»" (expandir trilho) é só do modo tablet recolhido; no celular
     o menu já abre em painel cheio, então ele nunca deve aparecer aqui */
  .adpc-app .adpc-nav-rail-toggle{display:none!important}
  .adpc-menu-backdrop:not([hidden]){display:block}
  body.adpc-menu-is-open{overflow:hidden}
}
@media(prefers-reduced-motion:reduce){
  .adpc-app-nav,.adpc-skip-link,.adpc-app .adpc-button{transition:none}
}

/* CSS responsivo global (fim do arquivo) */
@media(max-width:767px){
  .adpc-app h1{font-size:clamp(1.75rem,8vw,2.5rem);line-height:1.08;overflow-wrap:anywhere}
  .adpc-app h2{font-size:clamp(1.35rem,6vw,1.9rem);line-height:1.15;overflow-wrap:anywhere}
  .adpc-app p,.adpc-app li,.adpc-app dd,.adpc-app dt{overflow-wrap:anywhere}
  .adpc-app table,.adpc-app pre,.adpc-app code,.adpc-app math,.adpc-app .katex-display{max-width:100%}
  .adpc-app input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),.adpc-app select,.adpc-app textarea{max-width:100%;font-size:16px;min-height:48px}
  .adpc-app button,.adpc-app .adpc-button,.adpc-app .adp-btn{min-height:44px}
  .adpc-mobile-stack{display:flex;flex-direction:column;gap:12px}
  .adpc-mobile-stack>*{width:100%}
}

/* ============================================================
   2.15.0 - Fase 2: formularios, abas do perfil, distribuicao semanal
   ============================================================ */

/* --- campos (aplica-se aos <label><span> ja existentes) --- */
.adpc-app .adpc-narrow,.adpc-app .adpc-tab-panel form{max-width:var(--adpc-form-max)}
.adpc-app .adpc-narrow label,.adpc-app .adpc-drawer label,.adpc-app .adpc-card label,.adpc-app .adpc-tab-panel form>label,.adpc-app .adpc-quick-class-form label{
  display:flex;flex-direction:column;gap:8px;width:100%;min-width:0;margin:0 0 18px
}
.adpc-app .adpc-narrow label>span:first-child,.adpc-app .adpc-drawer label>span:first-child,.adpc-app .adpc-card label>span:first-child,.adpc-app .adpc-quick-class-form label>span:first-child,.adpc-app .adpc-fieldset legend{
  color:var(--adpc-navy);font-size:.92rem;font-weight:700
}
.adpc-app .adpc-narrow label>span em,.adpc-app .adpc-drawer label>span em,.adpc-optional{
  margin-left:6px;color:var(--adpc-text-muted);font-size:.78rem;font-weight:500;font-style:normal
}
.adpc-required{color:var(--adpc-danger)}
.adpc-app .adpc-narrow label input:not([type=checkbox]):not([type=radio]):not([type=color]),
.adpc-app .adpc-narrow label select,.adpc-app .adpc-narrow label textarea,
.adpc-app .adpc-drawer label input:not([type=checkbox]):not([type=radio]):not([type=color]),
.adpc-app .adpc-drawer label select,.adpc-app .adpc-drawer label textarea,
.adpc-app .adpc-quick-class-form input,.adpc-app .adpc-quick-class-form select{
  display:block;width:100%;min-width:0;min-height:48px;padding:11px 13px;color:var(--adpc-text);
  background:var(--adpc-surface);border:1px solid var(--adpc-border);border-radius:10px;font-family:inherit;font-size:16px;line-height:1.35
}
.adpc-app .adpc-narrow label textarea,.adpc-app .adpc-drawer label textarea{min-height:120px;resize:vertical}
.adpc-app .adpc-narrow label input:focus,.adpc-app .adpc-narrow label select:focus,.adpc-app .adpc-narrow label textarea:focus,
.adpc-app .adpc-drawer label input:focus,.adpc-app .adpc-drawer label select:focus,.adpc-app .adpc-drawer label textarea:focus{
  border-color:var(--adpc-focus);outline:3px solid rgba(37,99,235,.15)
}
.adpc-app [aria-invalid="true"]{border-color:var(--adpc-danger)!important;background:#fffafa}
.adpc-field__error{margin:0;color:var(--adpc-danger);font-size:.82rem;font-weight:600}
.adpc-field__help,.adpc-field-help,.adpc-app .adpc-narrow label small,.adpc-app .adpc-drawer label small{margin:0;color:var(--adpc-text-muted);font-size:.82rem;font-weight:400}
.adpc-app .adpc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.adpc-form-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.adpc-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* --- abas do perfil: horizontais no desktop, seletor no celular --- */
.adpc-mobile-section-select{display:none}
.adpc-app .adpc-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.adpc-app .adpc-tabs a{display:inline-flex;align-items:center;min-height:44px;padding:10px 14px;color:var(--adpc-navy);font-size:.88rem;font-weight:700;text-decoration:none;background:var(--adpc-surface);border:1px solid var(--adpc-border);border-radius:999px}
.adpc-app .adpc-tabs a.is-active,.adpc-app .adpc-tabs a[aria-current="page"]{color:#fff;background:var(--adpc-navy);border-color:var(--adpc-navy)}

/* --- cadastro rapido de turma --- */
.adpc-quick-class-form{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(130px,.8fr) minmax(130px,.8fr) auto;align-items:end;gap:14px;margin-bottom:20px}
.adpc-quick-class-form label{margin:0}
.adpc-quick-class-form button{align-self:end}

/* --- distribuicao semanal --- */
.adpc-app .adpc-weekly-lessons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:16px}
.adpc-app .adpc-weekly-lessons label{margin:0}
.adpc-weekly-total{display:block;margin-top:16px;color:var(--adpc-navy);font-size:1rem;font-weight:800}
.adpc-weekly-total strong{color:var(--adpc-orange)}

/* --- avisos --- */
.adpc-alert{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;width:100%;margin:12px 0;padding:16px;border:1px solid transparent;border-radius:var(--adpc-radius-md)}
.adpc-alert p{margin:4px 0 0}
.adpc-alert--warning{color:#6f4d00;background:var(--adpc-warning-soft);border-color:#efd58a}
.adpc-alert--success{color:var(--adpc-success);background:var(--adpc-success-soft);border-color:#a7dfc4}
.adpc-alert--danger{color:var(--adpc-danger);background:var(--adpc-danger-soft);border-color:#f4c7c3}
.adpc-alert[hidden]{display:none}

/* --- modal --- */
.adpc-modal[hidden]{display:none}
.adpc-modal{position:fixed;inset:0;z-index:11000;display:flex;align-items:center;justify-content:center;padding:20px}
.adpc-modal__backdrop{position:absolute;inset:0;background:rgba(7,24,39,.55)}
.adpc-modal__content{position:relative;width:min(460px,100%);max-height:90dvh;overflow-y:auto;padding:26px;background:var(--adpc-surface);border-radius:var(--adpc-radius-lg);box-shadow:var(--adpc-shadow-md)}
.adpc-modal__content h2{margin:0 0 10px;color:var(--adpc-navy);font-size:1.25rem}
.adpc-modal__content p{margin:0;color:var(--adpc-text)}
.adpc-modal__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

@media(max-width:767px){
  .adpc-app .adpc-form-grid{grid-template-columns:minmax(0,1fr)}
  /* 2.106.0 - no wizard de planejamento, os cartões de escolha (turma, tipo de
     aulas, formato da BNCC etc.) ficavam espremidos em 3 colunas fixas no
     celular e cortavam o texto; agora empilham em 1 coluna. */
  .adpc-class-options,.adpc-radio-cards{grid-template-columns:minmax(0,1fr)}
  .adpc-form-actions{flex-direction:column}
  .adpc-form-actions>*{width:100%}
  /* No celular, só as abas do PERFIL viram <select> (são muitas). As abas soltas
     (Agenda/Alunos/Financeiro dos alunos particulares) continuam visíveis, rolando. */
  .adpc-app .adpc-section-navigation .adpc-tabs{display:none}
  .adpc-app .adpc-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-left:-4px;padding:0 4px 4px}
  .adpc-app .adpc-tabs a{flex:0 0 auto;white-space:nowrap}
  .adpc-mobile-section-select{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;color:var(--adpc-navy);font-size:.9rem;font-weight:700}
  .adpc-mobile-section-select select{width:100%;min-height:48px;padding:10px 40px 10px 12px;color:var(--adpc-text);background:var(--adpc-surface);border:1px solid var(--adpc-border);border-radius:10px;font-size:16px}
  .adpc-quick-class-form{grid-template-columns:minmax(0,1fr)}
  .adpc-quick-class-form button{width:100%}
  .adpc-app .adpc-weekly-lessons{grid-template-columns:minmax(0,1fr)}
  .adpc-app .adpc-weekly-lessons label{display:grid;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:10px}
  .adpc-alert{flex-direction:column}
  .adpc-alert .adpc-button{width:100%}
  .adpc-modal__actions>*{width:100%}
}

/* ============================================================
   2.16.0 - Fase 3: wizard (etapas, datas, divergencia)
   ============================================================ */
.adpc-app .adpc-progress-labels span.is-active,.adpc-app .adpc-progress-labels span[aria-current="step"]{background:var(--adpc-navy);border-color:var(--adpc-navy);color:#fff}

.adpc-mobile-progress{display:none;margin:0 0 20px}
.adpc-mobile-progress__header{display:flex;justify-content:space-between;gap:12px;color:var(--adpc-navy);font-size:.92rem}
.adpc-mobile-progress__header strong{font-weight:800}
.adpc-mobile-progress__track{height:8px;margin-top:10px;overflow:hidden;background:#e8edf1;border-radius:999px}
.adpc-mobile-progress__track span{display:block;height:100%;background:var(--adpc-orange);border-radius:inherit;transition:width .3s ease}

/* erro de data sempre visivel */
.adpc-app .adpc-period-fields .adpc-field__error{margin:6px 0 0}
.adpc-app .adpc-period-fields .adpc-field__help{margin:6px 0 0}

@media(max-width:767px){
  .adpc-app .adpc-progress-labels{display:none}
  .adpc-mobile-progress{display:block}
}
@media(prefers-reduced-motion:reduce){
  .adpc-mobile-progress__track span{transition:none}
}

/* ============================================================
   2.17.0 - Fase 4: listas em cartoes + IDs unicos
   ============================================================ */
/* Tabelas de leitura do planejamento nao estouram a pagina no celular. */
.adpc-plan-view table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse}
.adpc-plan-view h1{font-size:clamp(1.4rem,4vw,2rem)}

@media(max-width:700px){
  /* "Meus planejamentos": cada linha vira um cartao rotulado (o adp.css ja
     empilha .adp-tabela td; aqui adicionamos o nome do campo antes do valor). */
  .adp-tabela td[data-label]{display:flex;justify-content:space-between;gap:14px;padding:10px 13px;text-align:right}
  .adp-tabela td[data-label]::before{content:attr(data-label);font-weight:700;color:var(--adpc-navy,#243A53);text-align:left;flex:0 0 auto}
  .adp-tabela td.adp-cell-acoes{display:block;text-align:left;background:rgba(244,241,236,.5)}
  .adp-tabela td.adp-cell-acoes::before{display:block;margin-bottom:8px}
  .adp-tabela td.adp-cell-acoes .adp-btn{display:block;width:100%;margin:6px 0 0}
  .adp-tabela td.adp-cell-acoes form{margin-top:8px}
}

/* ============================================================
   2.18.0 - Fase 5: BNCC com busca, filtros e contador (§10)
   ============================================================ */
.adp-bncc-count{margin:12px 0 4px;font-size:.82rem;font-weight:700;color:var(--adpc-navy,#243A53)}
.adp-bncc-lista.is-open{max-height:none;overflow:visible;padding:14px}
.adp-bncc-controls{display:grid;gap:10px;margin:4px 0 12px}
.adp-bncc-controls input[type=search],.adp-bncc-controls select{width:100%;min-height:44px;padding:9px 12px;border:1px solid var(--adp-linha,#d6d1ca);border-radius:8px;font:inherit;font-size:16px;background:#fff;color:var(--adp-azul,#243A53)}
.adp-bncc-chips{display:flex;flex-wrap:wrap;gap:6px}
.adp-bncc-chips button{min-height:36px;padding:6px 12px;border:1px solid var(--adp-linha,#d6d1ca);border-radius:999px;background:#fff;color:var(--adp-muted,#5c6670);font:inherit;font-size:.8rem;cursor:pointer}
.adp-bncc-chips button.is-active{background:var(--adpc-navy,#243A53);border-color:var(--adpc-navy,#243A53);color:#fff}
.adp-bncc-onlysel{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--adp-muted,#5c6670)}
.adp-bncc-onlysel input{width:auto;min-height:0;flex:0 0 auto}
.adp-bncc-sub{margin:0 0 8px;font-size:.76rem;color:var(--adp-muted,#888)}
.adp-bncc-results{max-height:340px;overflow:auto;-webkit-overflow-scrolling:touch}
@media(min-width:620px){
  .adp-bncc-controls{grid-template-columns:2fr 1fr;align-items:start}
  .adp-bncc-chips,.adp-bncc-onlysel{grid-column:1/-1}
}

/* ============================================================
   2.19.0 - Fase 6: abas acessiveis (§18) + avisos da semana (§15)
   ============================================================ */
[data-adpc-tabs] [role="tab"]:focus-visible{outline:2px solid var(--adpc-navy,#243A53);outline-offset:2px;border-radius:6px}
.adpc-tab-panel:focus{outline:none}
.adpc-tab-panel:focus-visible{outline:2px solid var(--adpc-navy,#243A53);outline-offset:4px}
/* inert e um no-op visual; garante que nao capture clique enquanto anima */
.adpc-drawer[inert],.adpc-modal[inert]{pointer-events:none}
.adpc-day .adpc-empty{padding:8px 4px;background:none;border:0;color:var(--adp-muted,#8a8a8a);font-size:.78rem;font-style:italic}

/* ============================================================
   2.22.0 — Prioridades 7/8/10: títulos, toque, BNCC, acabamento
   ============================================================ */
/* §8/auditoria: título nunca é cortado, mas também nunca quebra no MEIO da palavra. */
.adpc-app h1,.adpc-app h2,.adpc-app h3,
.adpc-app-header__title,.adpc-page-title,.adpc-step-title h2{
  min-width:0;overflow-wrap:normal;word-break:normal;hyphens:none;white-space:normal;text-overflow:clip
}
/* 2.106.0 - o número da etapa (span 36px) fica dentro de um flex; sem min-width:0
   no DIV que envolve h2+p, esse texto não encolhia e cortava/estourava no celular
   e chegava a sobrepor o círculo numerado. */
.adpc-step-title{flex-wrap:nowrap}
.adpc-step-title>span{flex:0 0 36px}
.adpc-step-title>div{min-width:0;flex:1 1 auto}
/* só palavras realmente maiores que a caixa podem quebrar (URLs, códigos) */
.adpc-app p,.adpc-app li,.adpc-app dd,.adpc-app td{overflow-wrap:break-word}
.adpc-app-header__title{font-size:clamp(.95rem,3.4vw,1.1rem);line-height:1.15}
/* §8: seletor de periodicidade e campos <select> ocupam toda a largura */
.adpc-app select,.adpc-period-choice select,.adpc-select-wrapper select{
  width:100%;max-width:100%;text-overflow:clip
}
.adpc-period-choice label,.adpc-period-choice{min-width:0;width:100%}
/* §7: alvo de toque de 44px em links de ação e atalhos */
.adpc-quicklinks a,.adpc-app .adpc-link,.adpc-app .adpc-linkbtn,
.adpc-action-link,.adpc-app-nav a{
  min-height:44px;display:inline-flex;align-items:center;gap:6px
}
.adpc-quicklinks{gap:2px 16px}
.adpc-quicklinks a{padding:8px 2px}
.adpc-app .adpc-linkbtn{padding:8px 4px}
/* foco visível padrão da marca */
.adpc-app :is(a,button,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid rgba(184,103,54,.4);outline-offset:2px;border-radius:6px
}
/* §8 BNCC: motivo da sugestão */
.adpc-bncc-why{display:block;margin-top:3px;color:var(--adpc-navy,#243A53);font-size:.72rem;font-style:normal;opacity:.75}
/* cinto de segurança contra rolagem lateral em telas estreitas */
.adpc-app,.adpc-content{max-width:100%;overflow-x:clip}

/* 2.37.0 — Mercado Pago: link Pix no cartao de plano */
.adpc-v9-plan-pix{display:block;margin-top:8px;text-align:center;font-size:.8rem;color:var(--adpc-navy,#243A53);opacity:.8;text-decoration:underline}
.adpc-v9-plan-pix:hover{opacity:1}
.adpc-v9-plan-notice{margin:0 0 20px;padding:14px 18px;border-radius:10px;background:#FDECEA;color:#7A2E2E;font-size:.95rem;text-align:center}

/* 2.44 — editor do documento final (.docx) */
.adpc-doc-editor{max-width:900px}
.adpc-doc-editor-note{font-size:.82rem;line-height:1.5;margin:10px 0 0;padding:10px 12px;background:#f6f3ec;border:1px solid var(--adpc-line,#e5e0d6);border-radius:8px}
.adpc-doc-toolbar{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:4px;align-items:center;padding:8px;margin:12px 0;background:#fff;border:1px solid var(--adpc-line,#e5e0d6);border-radius:10px}
.adpc-doc-toolbar button{min-width:34px;height:32px;padding:0 8px;border:1px solid var(--adpc-line,#ddd6cc);border-radius:7px;background:#fff;font:13px Montserrat,system-ui,sans-serif;cursor:pointer;color:var(--adpc-blue,#243A53)}
.adpc-doc-toolbar button:hover{background:#f4f1ec}
.adpc-doc-toolbar button:active{background:#e9e3d8}
.adpc-doc-sep{width:1px;height:22px;background:var(--adpc-line,#e0dacb);margin:0 4px}
.adpc-doc-status{margin-left:auto;font-size:12px;color:#6b6b6b}
.adpc-doc-page{min-height:400px;padding:38px 44px;background:#fff;border:1px solid var(--adpc-line,#e5e0d6);border-radius:4px;box-shadow:0 2px 14px rgba(0,0,0,.06);font:15px/1.6 Georgia,"Times New Roman",serif;color:#222;outline:none}
.adpc-doc-page:focus-within{border-color:var(--adpc-terracota,#C46A2D)}
.adpc-doc-page h1{font-size:1.5rem;margin:.4em 0}
.adpc-doc-page h2{font-size:1.25rem;margin:.9em 0 .3em}
.adpc-doc-page h3{font-size:1.08rem;margin:.8em 0 .3em}
.adpc-doc-page p{margin:.35em 0}
.adpc-doc-page table{border-collapse:collapse;width:100%;margin:.7em 0;font-size:.95em}
.adpc-doc-page td,.adpc-doc-page th{border:1px solid #b9b2a4;padding:6px 8px;vertical-align:top}
.adpc-doc-page ul,.adpc-doc-page ol{margin:.4em 0 .4em 1.4em}
@media(max-width:760px){.adpc-doc-page{padding:20px 16px}.adpc-doc-toolbar{position:static}}

/* 2.47 — botão de ação destrutiva (cancelar assinatura) */
.adpc-button-danger{background:#fff;border:1px solid #c0392b;color:#c0392b}
.adpc-button-danger:hover{background:#c0392b;color:#fff}

/* ===== Diário de notas 2.0 (2.50.0) ===== */
.adpc-notas-intro{color:#5b5b5b;margin:0 0 14px}
.adpc-notas-crumb{font-size:.9rem;color:#6b6b6b;margin:0 0 12px}
.adpc-notas-crumb a{color:var(--adpc-terracota,#C46A2D)}
.adpc-notas-crumb span{opacity:.5;margin:0 4px}

.adpc-notas-escola{}
.adpc-notas-escola .adpc-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.adpc-notas-turmas{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.adpc-notas-turmas li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;padding:10px 12px;border:1px solid var(--adpc-line,#e5e0d6);border-radius:6px}
.adpc-notas-turma-nome{font-weight:600}
.adpc-notas-turmas form{margin:0}
.adpc-notas-vazio{display:block;color:#6b6b6b;border-style:dashed}
.adpc-notas-nova-turma,.adpc-notas-escola-add{margin-top:10px}
.adpc-notas-nova-turma summary,.adpc-notas-escola-add summary{cursor:pointer;color:var(--adpc-terracota,#C46A2D);font-size:.92rem}
.adpc-notas-nova{display:grid;gap:12px;max-width:440px;margin-top:10px}
.adpc-notas-nova label{display:block}
.adpc-notas-nova input,.adpc-notas-nova select,.adpc-notas-nova textarea{width:100%;padding:9px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px}

.adpc-notas-steps{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:0}
.adpc-notas-steps li{padding:6px 12px;border:1px solid var(--adpc-line,#e5e0d6);border-radius:999px;font-size:.9rem}
.adpc-notas-steps li a{color:#4a4a4a;text-decoration:none}
.adpc-notas-steps li.is-current{background:var(--adpc-terracota,#C46A2D);border-color:var(--adpc-terracota,#C46A2D)}
.adpc-notas-steps li.is-current a{color:#fff}

.adpc-notas-form{display:block}
.adpc-field{display:block;margin:14px 0}
.adpc-field input,.adpc-field select{display:block;width:100%;max-width:460px;padding:9px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px;margin-top:4px}
.adpc-notas-cfg-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:10px 0;max-width:460px}
.adpc-notas-cfg-grid input{width:100%;padding:8px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px}
.adpc-notas-periodos-geral{display:grid;gap:12px;margin:10px 0}
.adpc-notas-periodo-linha{border:1px solid var(--adpc-line,#e5e0d6);border-radius:6px;padding:10px 12px;display:grid;grid-template-columns:1.4fr .8fr 1.2fr;gap:12px}
.adpc-notas-periodo-linha legend{grid-column:1/-1;font-weight:600}
.adpc-notas-periodo-linha label{font-size:.88rem;color:#555}
.adpc-notas-periodo-linha input{width:100%;padding:7px 9px;font:inherit;border:1px solid #c9c2b4;border-radius:5px;margin-top:3px}
.adpc-notas-final{background:#faf7f2;border:1px solid var(--adpc-line,#e5e0d6);border-radius:6px;padding:12px;max-width:520px}
.adpc-notas-final label{font-weight:600}
.adpc-notas-final input{max-width:120px;display:block;margin-top:4px;padding:8px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px}
.adpc-notas-aviso{background:#fff4e0;border:1px solid #e6c78a;border-radius:6px;padding:8px 12px;font-size:.9rem}
.adpc-notas-form-actions{margin-top:18px}
.adpc-button-lg{font-size:1rem;padding:12px 22px}

.adpc-notas-periodos{display:grid;gap:14px;margin:8px 0}
.adpc-notas-periodo{border:1px solid var(--adpc-line,#e5e0d6);border-radius:6px;padding:12px}
.adpc-notas-periodo legend{font-weight:600;padding:0 4px}
.adpc-notas-periodo>summary{font-weight:600;padding:2px 4px;cursor:pointer;list-style:revert}
.adpc-notas-periodo>summary .adpc-muted{font-weight:400}
.adpc-notas-periodo[open]>summary{margin-bottom:8px}
.adpc-notas-instr{display:grid;gap:8px;margin:8px 0}
.adpc-notas-instr-row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.adpc-notas-instr-row input[type=text]{flex:1;min-width:120px;padding:7px 9px;font:inherit;border:1px solid #c9c2b4;border-radius:4px}
.adpc-notas-instr-row .adpc-notas-instr-max{flex:0 0 5em;min-width:0}
.adpc-notas-instr-row .adpc-notas-instr-modo{flex:0 0 auto;padding:7px 6px;font:inherit;border:1px solid #c9c2b4;border-radius:4px}
.adpc-notas-instr-row .adpc-notas-instr-ref{flex:1 1 100%}
.adpc-notas-somatorio{margin:4px 0 0;font-size:.85rem;color:#6b6b6b}
.adpc-notas-somatorio.is-off{color:#c0392b;font-weight:600}
.adpc-notas-extra-toggle{display:block;margin-top:10px;font-size:.9rem;color:#444}

.adpc-notas-import-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0}
.adpc-notas-import-choice{border:1px solid #d9d2c4;border-radius:8px;padding:12px 14px;margin:14px 0 6px}
.adpc-notas-import-choice legend{font-weight:600;font-size:.9rem;padding:0 4px}
[data-import-panel]{margin:6px 0 4px}
.adpc-notas-import,.adpc-notas-bulk,.adpc-notas-add-aluno{display:grid;gap:8px;align-content:start}
.adpc-notas-add-aluno input[type=text]{width:100%;max-width:22em;padding:8px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px}
.adpc-notas-import input[type=file]{font:inherit}
.adpc-notas-bulk textarea{width:100%;padding:8px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px}
.adpc-notas-rev{list-style:none;margin:8px 0;padding:0;display:grid;gap:5px;max-height:340px;overflow:auto}
.adpc-notas-rev li{display:flex;gap:8px;align-items:center}
.adpc-notas-rev input[type=text]{flex:1;padding:6px 8px;font:inherit;border:1px solid #c9c2b4;border-radius:4px}
.adpc-notas-alunos-lista{list-style:none;margin:12px 0;padding:0;display:grid;gap:3px}
.adpc-notas-alunos-lista li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:5px 8px;border-bottom:1px solid #eee}
.adpc-notas-alunos-lista form{margin:0;display:inline}
.adpc-notas-aluno-acoes{display:flex;gap:10px}
.adpc-notas-add-aluno{display:flex;gap:6px;margin-top:8px}
.adpc-notas-add-aluno input{flex:1;padding:8px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px}
.adpc-notas-inativos{margin-top:12px}
.adpc-notas-inativos summary{cursor:pointer;color:#6b6b6b}
.adpc-notas-danger{margin-top:18px}

.adpc-notas-topbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin:6px 0 12px}
.adpc-notas-abas{display:flex;flex-wrap:wrap;gap:4px}
.adpc-notas-abas a{padding:7px 14px;border:1px solid var(--adpc-line,#e5e0d6);border-radius:6px 6px 0 0;font-size:.9rem;color:#4a4a4a;text-decoration:none;background:#f5f2ec}
.adpc-notas-abas a.is-current{background:#fff;border-bottom-color:#fff;font-weight:600;color:#1f1f1f}
.adpc-notas-topbar-acoes{display:flex;gap:12px;font-size:.9rem}
.adpc-notas-legenda{background:#faf7f2;border:1px solid var(--adpc-line,#e5e0d6);border-radius:6px;padding:8px 12px;font-size:.9rem;margin:0 0 10px}
.adpc-notas-badge{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:#eee;color:#666;font-size:.72rem;font-weight:600;vertical-align:middle}
.adpc-notas-nf{text-align:center}

.adpc-notas-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--adpc-line,#e5e0d6);border-radius:6px}
.adpc-notas-scroll:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:2px}
.adpc-notas-swipe-hint{display:none;margin:0;padding:6px 10px;font-size:.78rem;color:#8a6d3b;background:#fbf3e6;border-bottom:1px solid #ecdcc0}
/* auditoria consolidada 2.60.0 */
.adpc-notas-in.is-locked{background:#efece6;color:#9a948a;cursor:not-allowed}
.adpc-notas-resumo{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 10px}
.adpc-notas-sit{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.78rem;font-weight:700;background:#eef2f6;color:#455}
.adpc-notas-sit.is-ok{background:#dff3e2;color:#1e6b34}
.adpc-notas-sit.is-low{background:#ffd9d9;color:#8a1c1c}
.adpc-notas-sit.is-review{background:#fbf0dd;color:#8a5a12}
.adpc-notas-grp-row th{background:#243A53;color:#fff;text-align:left;font-size:.82rem;letter-spacing:.02em}
.adpc-hb-copiar-det{margin:10px 0 0;border-top:1px solid #ece7df;padding-top:8px}
.adpc-hb-copiar-det summary{cursor:pointer;font-size:.85rem;color:#5f6870}
.adpc-mat-banco-opts{margin-top:8px;padding:8px 10px;background:#f6f3ee;border-radius:6px}
.adpc-mat-banco-opts select{margin-top:3px;padding:5px 8px;border:1px solid #cfc8ba;border-radius:5px}
.adpc-assinatura .adpc-card{margin-bottom:16px}
.adpc-assinatura .adpc-card h2{font-size:1.15rem;line-height:1.3}
.adpc-assinatura-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.adpc-assinatura dl{display:grid;gap:8px;margin:0}
.adpc-assinatura dl>div{display:grid;grid-template-columns:minmax(90px,auto) 1fr;gap:4px 12px;align-items:baseline}
.adpc-assinatura dt{font-size:12px;color:#7a7468;font-weight:600}
.adpc-assinatura dd{margin:0;overflow-wrap:anywhere;word-break:break-word}
@media(max-width:560px){.adpc-assinatura dl>div{grid-template-columns:1fr}}
.adp-btn.adp-btn-ghost,.adpc-button.adpc-button-ghost{background:transparent;border:1px solid #cfc8ba;color:#4e5963}
@media(max-width:767px){.adpc-notas-swipe-hint{display:block}}
.adpc-notas-tabela{border-collapse:collapse;font-size:.86rem;white-space:nowrap}
.adpc-notas-tabela th,.adpc-notas-tabela td{border:1px solid #d8d2c4;padding:4px 6px;text-align:center}
.adpc-notas-tabela thead th{background:#f2efe9;position:sticky;top:0}
.adpc-notas-tabela .adpc-notas-grp{background:#e7e1d4}
.adpc-notas-col-aluno{text-align:left;position:sticky;left:0;background:#fff;z-index:2;min-width:170px}
.adpc-notas-tabela thead .adpc-notas-col-aluno{z-index:3;background:#f2efe9}
.adpc-notas-in{width:3.6em;padding:4px;font:inherit;text-align:center;border:1px solid #cfc8ba;border-radius:3px}
.adpc-notas-in:focus{outline:2px solid var(--adpc-terracota,#C46A2D);outline-offset:0}
.adpc-notas-tot,.adpc-notas-acc{font-weight:600;background:#f6f4ef}
.adpc-notas-tot.is-low,.adpc-notas-col-aluno.is-low{background:#ffd6d6;color:#8a1c1c}
.adpc-notas-tot.is-ok{background:#dff3e2;color:#1e6b34}
.adpc-notas-grade-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:12px}
.adpc-notas-autosave{margin-top:10px;font-size:.82rem;color:#6b6b6b}
.adpc-notas-autosave.is-busy{color:#a86100}
.adpc-notas-autosave.is-ok{color:#1e6b34}
.adpc-notas-autosave.is-erro{color:#c0392b;font-weight:600}
.adpc-button-ghost{background:#fff;border:1px solid var(--adpc-terracota,#C46A2D);color:var(--adpc-terracota,#C46A2D)}

@media(max-width:760px){
  .adpc-notas-periodo-linha{grid-template-columns:1fr}
  .adpc-notas-import-grid,.adpc-notas-cfg-grid{grid-template-columns:1fr}
}

/* ===== Menu da conta: "Minha assinatura" visível (2.50.0) ===== */
.adpc-app-nav__account{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin-top:14px;padding:14px 4px 0;border-top:1px solid rgba(255,255,255,.18)}
.adpc-app-nav__user{color:rgba(255,255,255,.75);font-size:.8rem;padding:0 6px 2px}
.adpc-app-nav .adpc-app-nav__assinatura{display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid rgba(255,255,255,.35);border-radius:8px;color:#fff;font-weight:600;text-decoration:none}
.adpc-app-nav .adpc-app-nav__assinatura:hover{background:rgba(255,255,255,.12)}
.adpc-app-nav .adpc-app-nav__logout{min-height:40px;padding-inline:12px;color:rgba(255,255,255,.85);display:inline-flex;align-items:center;gap:8px}
.adpc-app-nav__account button.adpc-nav-ajuda{width:100%;background:transparent;border:0;font:inherit;text-align:left;cursor:pointer;border-radius:8px}
.adpc-app-nav__account button.adpc-nav-ajuda:hover{background:rgba(255,255,255,.1)}

/* ===== Redesign da Área do professor (2.94.0): menu principal, trilho no
   tablet, barra inferior no celular. Item ativo é sempre só um; "Configurações"
   é o único grupo que abre em <details>. ===== */
.adpc-app-nav .adpc-nav-link{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;color:rgba(255,255,255,.86);font-size:.9rem;font-weight:600;text-decoration:none;border-radius:10px}
.adpc-app-nav .adpc-nav-link:hover{color:#fff;background:rgba(255,255,255,.1)}
.adpc-app-nav .adpc-nav-link[aria-current="page"]{color:#fff;background:rgba(255,255,255,.14);box-shadow:inset 3px 0 0 var(--adpc-orange)}
.adpc-app-nav .adpc-nav-link--primary{background:var(--adpc-orange);margin:2px 0 8px}
.adpc-app-nav .adpc-nav-link--primary:hover{background:var(--adpc-orange-dark)}
.adpc-app-nav .adpc-nav-link--primary[aria-current="page"]{box-shadow:none}
.adpc-nav-ic{flex:0 0 20px;text-align:center;font-size:1.05rem;line-height:1}
.adpc-nav-rail-toggle{display:none;align-items:center;justify-content:center;flex:0 0 auto;width:30px;height:30px;margin-left:auto;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:8px;font-size:.85rem;cursor:pointer}

/* 2.105.0 - grupos do menu (Criar / Meu trabalho / Organização), pra parar de
   listar 9 itens soltos numa fileira só.
   2.107.0 - renomeado de "adpc-nav-group" para "adpc-menu-group": o nome
   antigo colidia com CSS morto de shells anteriores do plugin (um deles
   escondia todo <span> dentro do grupo no celular). */
.adpc-menu-group{margin-top:14px}
.adpc-menu-group:first-of-type{margin-top:10px}
.adpc-app-nav .adpc-menu-group__title{margin:0 14px 4px;color:rgba(255,255,255,.55);font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}

.adpc-bottombar{display:none}

/* O "trilho de ícones" de tablet que existia aqui (768-1100px, botão pra expandir
   pra 240px sem sair do lugar) foi removido na auditoria 22/09/2026 — essa faixa
   agora usa o mesmo menu off-canvas do celular (bloco @media(max-width:1100px)
   acima). Ver adp-clube.js: a 2ª IIFE que ligava o botão "»" (.adpc-nav-rail-toggle)
   ficou inofensiva (o botão nunca aparece mais — display:none por padrão). */

@media(max-width:767px){
  .adpc-bottombar{display:flex;position:fixed;z-index:950;left:0;right:0;bottom:0;align-items:stretch;background:var(--adpc-navy);border-top:1px solid rgba(255,255,255,.12);padding-bottom:env(safe-area-inset-bottom)}
  .adpc-bottombar a,.adpc-bottombar button{flex:1 1 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:6px 2px;color:rgba(255,255,255,.72);background:transparent;border:0;font:inherit;font-size:.68rem;font-weight:600;text-decoration:none}
  .adpc-bottombar a[aria-current="page"]{color:#fff}
  .adpc-bottombar a[aria-current="page"] span:first-child{color:var(--adpc-orange)}
  .adpc-bottombar span:first-child{font-size:1.15rem;line-height:1}
  .adpc-app{padding-bottom:calc(56px + env(safe-area-inset-bottom))}
  .adpc-app-header .adpc-menu-toggle{display:none}
}

/* ===== Hub "Minha organização" (2.94.0) — breadcrumb + 4 cartões no lugar da
   fileira de pílulas que repetia a navegação do menu. ===== */
.adpc-app .adpc-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;color:#8a8378;font-size:.85rem}
.adpc-app .adpc-breadcrumb a{color:#8a8378;text-decoration:underline}
.adpc-app .adpc-breadcrumb [aria-current]{color:var(--adpc-navy,#243A53);font-weight:700}
.adpc-app .adpc-page-header{margin-bottom:18px}
.adpc-app .adpc-page-header h2{margin:0 0 4px}
.adpc-app .adpc-page-header p{margin:0;color:#6d7680}

.adpc-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:8px}
.adpc-hub-card{display:grid;grid-template-columns:40px minmax(0,1fr);gap:14px;align-items:start;padding:18px;background:#fff;border:1px solid var(--adpc-line);border-radius:14px}
.adpc-hub-card--featured{border-color:rgba(196,106,45,.55)}
.adpc-hub-card__ic{font-size:1.4rem;line-height:1}
.adpc-hub-card__content{min-width:0}
.adpc-hub-card__content h3{margin:0 0 6px;font-size:1.05rem}
.adpc-hub-card__content p{margin:0 0 8px;color:#6d7680;font-size:.9rem}
.adpc-hub-card__actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.adpc-hub-card>a.adpc-button{grid-column:1/-1;justify-self:start;margin-top:4px}
.adpc-status{display:inline-flex;align-items:center;width:fit-content;padding:4px 9px;border-radius:999px;font-size:.75rem;font-weight:700}
.adpc-status--ok{background:#e7f5ec;color:#1e7a3c}
.adpc-status--warn{background:#FBF3EA;color:#9a5b12}
@media(max-width:767px){
  .adpc-hub-grid{grid-template-columns:1fr}
  .adpc-hub-card{grid-template-columns:32px minmax(0,1fr)}
}

/* ===== PDI e adaptações (2.51.0) ===== */
.adp-pdi-ler-status{font-size:.88rem;color:#6b6b6b}
.adpc-field textarea{width:100%;max-width:640px;padding:9px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px;margin-top:4px}
.adpc-field input[type=file]{margin-top:4px}

/* ===== Clube público — ajustes 2.52.0 (logo maior, sem buraco à direita, cards ricos) ===== */
.adpc-v9-club-icon{width:150px;height:150px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.12))}
/* auditoria 4.11: item que o plano NÃO inclui — contraste AA (texto e ícone) */
.adpc-v9-plan li.adpc-v9-plan-no{color:#5c6670}
.adpc-v9-plan li.adpc-v9-plan-no:before{content:"×";background:transparent;border:1.5px solid #8b93a0;color:#5c6670;box-sizing:border-box}
.adpc-v9-plan li small{color:#7a828a;font-size:9px;display:block;margin-top:1px}
.adpc-v9-plan-btn{font-size:11.5px;line-height:1.25;padding:0 12px;text-align:center}
.adpc-v9-plans-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.adpc-v9-assurance{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;gap:22px;padding:20px 0 0}
.adpc-v9-assurance>div{flex:1 1 220px;border-bottom:0;padding:0}
.adpc-v9-plan-para{min-height:0!important;margin:0 0 12px!important;font-size:11.5px!important;color:#3a444d!important}
.adpc-v9-plan-para strong{color:var(--v9-terra)}
.adpc-v9-plan-why{margin:4px 0 6px;font-size:11px;color:var(--v9-blue);font-weight:700}
.adpc-v9-plan-why-list{list-style:none;margin:0 0 22px;padding:0}
.adpc-v9-plan-why-list li{position:relative;padding-left:16px;margin:6px 0;font-size:11px;color:#5f6870;line-height:1.5}
.adpc-v9-plan-why-list li:before{content:"›";position:absolute;left:0;top:0;color:var(--v9-terra);font-weight:700}
@media(max-width:980px){.adpc-v9-plans-grid{grid-template-columns:1fr 1fr}.adpc-v9-assurance{flex-direction:column}}
@media(max-width:680px){.adpc-v9-plans-grid{grid-template-columns:1fr}.adpc-v9-club-icon{width:104px;height:104px}}

/* ===== Área do professor — Entrega B (2.53.0) ===== */
.adpc-nav-sep{border:0;border-top:1px solid rgba(255,255,255,.16);margin:14px 6px}
.adpc-nav-group__label--link{display:block;text-decoration:none}
.adpc-nav-group__label--link[aria-current]{color:#fff}
.adpc-welcome{border-left:3px solid var(--adpc-terracota,#C46A2D)}
.adpc-welcome-list{margin:10px 0 14px;padding-left:18px;display:grid;gap:6px}
.adpc-welcome-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0}
.adpc-model-plan-note{background:#f2f6fb;border:1px solid #cfe0f0;border-radius:8px;padding:12px 14px;margin-bottom:16px;font-size:.92rem;line-height:1.5}
.adpc-cabecalho-builder{display:block;width:100%}
.adpc-cabecalho-builder form{display:block}
.adpc-cabecalho-builder label{display:block}
.adpc-cabecalho-builder input,.adpc-cabecalho-builder select,.adpc-cabecalho-builder textarea{width:100%;padding:8px 10px;font:inherit;border:1px solid #c9c2b4;border-radius:5px}
.adpc-cabecalho-builder .adpc-inline-check{display:flex;align-items:flex-start;gap:8px;font-size:.88rem}
.adpc-cabecalho-builder .adpc-inline-check input{width:auto;margin-top:3px}

/* Fase 3 do redesign (2.96.0): controles à esquerda, prévia fixa à direita no
   computador; no tablet/celular os controles vêm primeiro e a prévia abaixo. */
.adpc-cabecalho-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,300px);gap:28px;align-items:start;max-width:960px;margin-inline:auto}
.adpc-cabecalho-controles{display:grid;gap:12px;min-width:0}
.adpc-cabecalho-preview-wrap{position:sticky;top:16px;min-width:0}
.adpc-cabecalho-preview-label{margin:0 0 8px;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#8a8378}
@media(max-width:900px){
  .adpc-cabecalho-layout{grid-template-columns:1fr;max-width:480px}
  .adpc-cabecalho-preview-wrap{position:static}
}

/* Miniatura de página A4 (proporção real 210x297mm) com margens aproximadas. */
.adpc-cabecalho-preview{position:relative;width:100%;aspect-ratio:210/297;border:1px solid #e5e0d6;border-radius:2px;padding:9% 11%;background:#fff;box-shadow:0 2px 14px rgba(36,58,83,.1);display:flex;flex-direction:column;overflow:hidden;font-size:.62rem;line-height:1.35}
.adpc-cabecalho-preview:has(.adpc-muted){align-items:center;justify-content:center;padding:16px;font-size:.85rem}
.adpc-cabecalho-preview.is-centro{align-items:center;text-align:center}
.adpc-cabecalho-preview.is-direita .cab-texto{text-align:right;align-self:flex-end}
.adpc-cabecalho-preview .cab-logo{margin-bottom:6px}
.adpc-cabecalho-preview .cab-logo img{max-height:13%;max-width:60%;width:auto;object-fit:contain}
.adpc-cabecalho-preview .cab-texto{font-weight:700;color:#243A53}
.adpc-cabecalho-preview .cab-nome{font-size:.78em}
.adpc-cabecalho-preview .cab-linha{font-size:.72em;font-weight:600;margin-top:2px}
.adpc-cabecalho-preview .cab-titulo{margin-top:10%;font-weight:700;text-align:center;letter-spacing:.02em}
.adpc-cabecalho-preview .cab-campo{margin-top:6%;font-size:.85em}
.adpc-cabecalho-preview .cab-campo b{font-weight:700}

/* ==================================================================
   PÁGINA PÚBLICA DO CLUBE (venda) — visitante não assinante
   Reaproveita os mesmos tokens --adpc-* já usados no resto deste
   arquivo (--adpc-blue, --adpc-terra, --adpc-beige, --adpc-line,
   --adpc-radius) em vez de duplicar cores próprias. A prévia da Área
   do Professor (.adpc-v9-product / .adpc-v9-dashboard / .adpc-v9-float)
   é a mesma já existente — não foi refeita, só reaproveitada aqui.
================================================================== */

.club-page, .club-page * { box-sizing: border-box; }
.club-page { overflow: clip; color: var(--adpc-text); background: var(--adpc-beige); }
.club-container { width: min(calc(100% - 48px), 1180px); margin-inline: auto; }

.club-sr-only {
    position: absolute !important; width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important; overflow: hidden !important;
    clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important;
}

.club-eyebrow { margin: 0 0 12px; color: var(--adpc-terra); font-family: Montserrat, sans-serif; font-size: .75rem; font-weight: 700; line-height: 1.4; letter-spacing: .16em; text-transform: uppercase; }
.club-eyebrow--light { color: #f1b181; }

/* Botões */
.club-button {
    display: inline-flex; min-height: 48px; align-items: center; justify-content: center;
    padding: 12px 20px; border: 1px solid transparent; border-radius: 10px;
    font-family: Montserrat, sans-serif; font-size: .9375rem; font-weight: 700; line-height: 1.35;
    text-align: center; text-decoration: none; cursor: pointer;
    transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}
.club-button:hover { transform: translateY(-2px); }
.club-button:focus-visible,
.club-demo__tab:focus-visible,
.club-payment-choice input:focus-visible + span,
.club-plan summary:focus-visible,
.club-comparison summary:focus-visible,
.club-faq summary:focus-visible {
    outline: 3px solid #56a8ed; outline-offset: 3px;
}
.club-button--primary { color: #fff; background: var(--adpc-terra); }
.club-button--primary:hover { color: #fff; background: #a9531f; box-shadow: 0 9px 22px rgba(169,83,31,.22); }
.club-button--light { color: var(--adpc-blue); background: #fff; }
.club-button--light:hover { color: var(--adpc-blue); background: #f8e8dc; }

/* Hero */
.club-hero { min-height: 660px; padding: clamp(58px,6vw,84px) 0; background: radial-gradient(circle at 82% 28%, rgba(196,106,45,.08), transparent 31%), #faf9f6; }
.club-hero__grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(420px,1.15fr); gap: 58px; align-items: center; }
.club-signature { display: flex; align-items: center; gap: 18px; margin-bottom: 34px; }
.club-signature__logo { width: 82px; height: auto; object-fit: contain; }
.club-signature .club-eyebrow { margin-bottom: 3px; }
.club-signature__name { margin: 0; color: var(--adpc-blue); font-family: "Playfair Display", serif; font-size: 2rem; font-weight: 700; line-height: .95; }
.club-hero h1 { max-width: 610px; margin: 0; color: var(--adpc-blue); font-family: "Playfair Display", serif; font-size: clamp(3.2rem,5vw,4.75rem); font-weight: 700; line-height: .98; letter-spacing: -.04em; text-wrap: balance; }
.club-hero h1 span { color: var(--adpc-terra); }
.club-hero__lead { max-width: 590px; margin: 24px 0 0; font-size: 1.0625rem; line-height: 1.7; }
.club-hero__actions { margin-top: 30px; }
.club-hero__payment-note { margin: 13px 0 0; color: #5c6670; font-size: .875rem; line-height: 1.5; }

.club-hero .adpc-v9-product { max-width: 100%; }

/* Faixa de benefícios */
.club-benefit-strip { border-block: 1px solid var(--adpc-line); background: #f2ede5; }
.club-benefit-strip__grid { display: grid; grid-template-columns: repeat(4,1fr); }
.club-benefit-strip article { display: flex; min-height: 106px; align-items: center; gap: 15px; padding: 22px; border-right: 1px solid var(--adpc-line); }
.club-benefit-strip article:last-child { border-right: 0; }
.club-benefit-strip__icon { color: var(--adpc-terra); font-size: 1.55rem; }
.club-benefit-strip strong { display: block; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: .9375rem; }
.club-benefit-strip article div > span { display: block; margin-top: 4px; color: #5c6670; font-family: Montserrat, sans-serif; font-size: .8125rem; }

/* Títulos de seção */
.club-section-heading { max-width: 820px; margin: 0 auto 44px; text-align: center; }
.club-section-heading h2, .club-model h2, .club-final-cta h2 {
    margin: 0; color: var(--adpc-blue); font-family: "Playfair Display", serif;
    font-size: clamp(2.3rem,4.2vw,3.8rem); font-weight: 700; line-height: 1.04; letter-spacing: -.03em; text-wrap: balance;
}
.club-section-heading > p:not(.club-eyebrow) { max-width: 700px; margin: 18px auto 0; color: #5c6670; font-family: Montserrat, sans-serif; font-size: 1rem; line-height: 1.65; }

/* Como funciona */
.club-workflow { padding: clamp(76px,8vw,112px) 0; background: #faf9f6; }
.club-workflow__steps { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; padding: 0; margin: 0; list-style: none; }
.club-workflow__steps li { padding: 28px; border: 1px solid var(--adpc-line); border-radius: var(--adpc-radius); background: #fff; }
.club-workflow__number { display: inline-flex; margin-bottom: 22px; color: var(--adpc-terra); font-family: Montserrat, sans-serif; font-size: .8125rem; font-weight: 700; letter-spacing: .12em; }
.club-workflow__steps h3 { margin: 0; color: var(--adpc-blue); font-family: "Playfair Display", serif; font-size: 1.45rem; line-height: 1.15; }
.club-workflow__steps p { margin: 13px 0 0; color: #5c6670; font-family: Montserrat, sans-serif; font-size: .9375rem; line-height: 1.6; }

/* Demonstração */
.club-demo { margin-top: 54px; overflow: hidden; border: 1px solid var(--adpc-line); border-radius: 24px; background: #fff; box-shadow: 0 16px 38px rgba(36,58,83,.09); }
.club-demo__tabs { display: flex; overflow-x: auto; border-bottom: 1px solid #d9dfe5; scrollbar-width: thin; }
.club-demo__tab { min-width: 160px; min-height: 54px; flex: 1; padding: 12px 18px; border: 0; border-right: 1px solid #d9dfe5; color: #5c6670; background: #f8f7f4; font-family: Montserrat, sans-serif; font-size: .875rem; font-weight: 700; cursor: pointer; }
.club-demo__tab:last-child { border-right: 0; }
.club-demo__tab[aria-selected="true"] { color: #fff; background: var(--adpc-blue); }
.club-demo__panel { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(280px,.8fr); gap: 44px; align-items: center; padding: 40px; }
.club-demo__panel[hidden] { display: none; }
.club-demo__visual { min-height: 260px; padding: 34px; border-radius: var(--adpc-radius); color: var(--adpc-blue); background: linear-gradient(135deg, rgba(36,58,83,.08), rgba(196,106,45,.1)), var(--adpc-beige); }
.club-demo__visual strong { display: block; max-width: 430px; margin-top: 22px; font-family: "Playfair Display", serif; font-size: 2rem; line-height: 1.12; }
.club-demo__label { font-family: Montserrat, sans-serif; font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.club-demo__fake-row { width: 78%; height: 14px; margin-top: 34px; border-radius: 999px; background: rgba(36,58,83,.13); }
.club-demo__fake-row--short { width: 52%; margin-top: 12px; }
.club-demo__week { display: grid; grid-template-columns: repeat(5,1fr); gap: 8px; margin-top: 34px; }
.club-demo__week span { height: 28px; border-radius: 5px; background: rgba(36,58,83,.12); }
.club-demo__week span:nth-child(3), .club-demo__week span:nth-child(7) { background: rgba(196,106,45,.25); }
.club-demo__copy h3 { margin: 0; color: var(--adpc-blue); font-family: "Playfair Display", serif; font-size: 2rem; line-height: 1.12; }
.club-demo__copy p { margin: 16px 0 0; color: #5c6670; font-family: Montserrat, sans-serif; font-size: 1rem; line-height: 1.65; }

/* Planos */
.club-pricing { padding: clamp(76px,8vw,112px) 0; }
.club-payment-choice { max-width: 720px; padding: 0; margin: 0 auto 38px; border: 0; }
.club-payment-choice legend { width: 100%; margin-bottom: 13px; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: .9375rem; font-weight: 700; text-align: center; }
.club-payment-choice__options { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; padding: 7px; border: 1px solid var(--adpc-line); border-radius: 16px; background: #fff; }
.club-payment-choice label { cursor: pointer; }
.club-payment-choice input { position: absolute; opacity: 0; pointer-events: none; }
.club-payment-choice label > span { display: flex; min-height: 72px; align-items: center; justify-content: center; flex-direction: column; padding: 12px; border-radius: 11px; color: #5c6670; font-family: Montserrat, sans-serif; text-align: center; }
.club-payment-choice input:checked + span { color: #fff; background: var(--adpc-blue); }
.club-payment-choice strong, .club-payment-choice small { display: block; }
.club-payment-choice strong { font-size: .9375rem; }
.club-payment-choice small { margin-top: 4px; font-size: .75rem; }

.club-plans { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 22px; align-items: stretch; }
.club-plan { position: relative; display: flex; min-width: 0; flex-direction: column; padding: 30px; border: 1px solid var(--adpc-line); border-radius: var(--adpc-radius); background: #fff; }
.club-plan--featured { border: 2px solid var(--adpc-terra); box-shadow: 0 16px 38px rgba(36,58,83,.09); }
.club-plan__badge { position: absolute; top: -16px; left: 50%; min-width: 150px; padding: 8px 14px; margin: 0; border-radius: 999px; color: #fff; background: var(--adpc-terra); font-family: Montserrat, sans-serif; font-size: .75rem; font-weight: 700; text-align: center; transform: translateX(-50%); }
.club-plan__audience { margin: 0 0 8px; color: var(--adpc-terra); font-family: Montserrat, sans-serif; font-size: .75rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.club-plan h3 { margin: 0; color: var(--adpc-blue); font-family: "Playfair Display", serif; font-size: 1.75rem; line-height: 1.1; }
.club-plan__description { min-height: 78px; margin: 15px 0 0; color: #5c6670; font-family: Montserrat, sans-serif; font-size: .875rem; line-height: 1.55; }
.club-plan__price { display: flex; align-items: baseline; gap: 5px; margin: 25px 0 0; color: var(--adpc-blue); font-family: Montserrat, sans-serif; }
.club-plan__price > span { font-size: .875rem; font-weight: 700; }
.club-plan__price strong { font-size: 2.7rem; line-height: 1; }
.club-plan__price small { color: #5c6670; font-size: .8125rem; }
.club-plan__highlights, .club-plan__details ul { padding: 0; list-style: none; }
.club-plan__highlights { margin: 26px 0 0; }
.club-plan__highlights li, .club-plan__details li { position: relative; padding-left: 27px; margin-bottom: 12px; color: #424d56; font-family: Montserrat, sans-serif; font-size: .9375rem; line-height: 1.5; }
.club-plan__highlights li::before, .club-plan__details li::before {
    position: absolute; top: 2px; left: 0; display: grid; width: 19px; height: 19px; place-items: center;
    border-radius: 50%; color: #fff; background: var(--adpc-blue); content: "✓"; font-size: .65rem; font-weight: 700;
}
.club-plan__not-included li { color: #5c6670; }
.club-plan__not-included li::before { color: #5c6670; border: 1px solid #aeb7bf; background: transparent; content: "×"; }
.club-plan__details { margin-top: 14px; border-top: 1px solid #d9dfe5; }
.club-plan__details summary { min-height: 46px; padding: 14px 30px 14px 0; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: .875rem; font-weight: 700; cursor: pointer; }
.club-plan__details h4 { margin: 10px 0 14px; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: .875rem; }
.club-plan__actions { margin-top: auto; padding-top: 24px; }
.club-plan__actions .club-button { width: 100%; }
.club-button--plan { color: #fff; background: var(--adpc-blue); }
.club-button--plan:hover { color: #fff; background: #182d43; }
.club-button--plan-featured { color: #fff; background: var(--adpc-terra); }
.club-button--plan-featured:hover { color: #fff; background: #a9531f; }

/* Comparação */
.club-comparison { margin-top: 34px; border: 1px solid var(--adpc-line); border-radius: var(--adpc-radius); background: #fff; }
.club-comparison summary { min-height: 58px; padding: 18px 24px; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: 1rem; font-weight: 700; cursor: pointer; }
.club-comparison__scroll { overflow-x: auto; padding: 0 24px 24px; }
.club-comparison table { width: 100%; min-width: 700px; border-collapse: collapse; font-family: Montserrat, sans-serif; font-size: .875rem; }
.club-comparison th, .club-comparison td { padding: 15px; border-bottom: 1px solid #d9dfe5; text-align: center; }
.club-comparison th:first-child { text-align: left; }
.club-comparison thead th { color: #fff; background: var(--adpc-blue); }

/* Modelo */
.club-model { padding: clamp(70px,8vw,104px) 0; background: #faf9f6; }
.club-model__grid { display: grid; grid-template-columns: minmax(0,.9fr) minmax(380px,1.1fr); gap: 60px; align-items: center; }
.club-model h2 { font-size: clamp(2.2rem,3.8vw,3.5rem); }
.club-model__grid > div > p:not(.club-eyebrow) { margin: 20px 0 0; color: #5c6670; font-family: Montserrat, sans-serif; font-size: 1rem; line-height: 1.7; }
.club-model__steps { padding: 0; margin: 0; list-style: none; }
.club-model__steps li { display: grid; grid-template-columns: 42px 1fr; gap: 15px; align-items: center; padding: 17px 0; border-bottom: 1px solid #d9dfe5; }
.club-model__steps span { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 50%; color: #fff; background: var(--adpc-terra); font-family: Montserrat, sans-serif; font-weight: 700; }
.club-model__steps p { margin: 0; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: .9375rem; font-weight: 600; line-height: 1.5; }

/* FAQ */
.club-faq { padding: clamp(70px,8vw,104px) 0; }
.club-faq__list { max-width: 860px; margin-inline: auto; }
.club-faq details { border-bottom: 1px solid var(--adpc-line); }
.club-faq summary { position: relative; min-height: 64px; padding: 20px 52px 20px 0; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: 1rem; font-weight: 700; line-height: 1.5; cursor: pointer; list-style: none; }
.club-faq summary::-webkit-details-marker { display: none; }
.club-faq summary::after { position: absolute; top: 50%; right: 8px; content: "+"; font-size: 1.4rem; transform: translateY(-50%); }
.club-faq details[open] summary::after { content: "\2212"; }
.club-faq details p { max-width: 760px; padding: 0 52px 20px 0; margin: 0; color: #5c6670; font-family: Montserrat, sans-serif; font-size: .9375rem; line-height: 1.7; }

/* Confiança */
.club-trust { padding: 30px 0; border-block: 1px solid var(--adpc-line); background: #f1ece4; }
.club-trust__grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.club-trust article { display: flex; gap: 14px; align-items: flex-start; }
.club-trust article > span { color: var(--adpc-terra); font-size: 1.35rem; }
.club-trust strong { display: block; color: var(--adpc-blue); font-family: Montserrat, sans-serif; font-size: .9375rem; }
.club-trust p { margin: 5px 0 0; color: #5c6670; font-family: Montserrat, sans-serif; font-size: .8125rem; line-height: 1.5; }

/* CTA final */
.club-final-cta { padding: clamp(58px,7vw,82px) 0; background: var(--adpc-blue); }
.club-final-cta__inner { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 46px; align-items: center; }
.club-final-cta h2 { max-width: 760px; color: #fff; }

/* Tablet */
@media (max-width: 980px) {
    .club-hero__grid, .club-model__grid { grid-template-columns: 1fr; }
    .club-hero { min-height: 0; }
    .club-hero .adpc-v9-product { max-width: 680px; width: 100%; margin-inline: auto; }
    .club-benefit-strip__grid { grid-template-columns: repeat(2,1fr); }
    .club-benefit-strip article:nth-child(2) { border-right: 0; }
    .club-benefit-strip article:nth-child(-n+2) { border-bottom: 1px solid var(--adpc-line); }
    .club-workflow__steps { grid-template-columns: 1fr; }
    .club-plans { grid-template-columns: 1fr; max-width: 680px; margin-inline: auto; }
    .club-plan__description { min-height: 0; }
    .club-model__grid { gap: 38px; }
    .club-final-cta__inner { grid-template-columns: 1fr; gap: 28px; }
}

/* Celular */
@media (max-width: 600px) {
    .club-container { width: min(calc(100% - 32px), 1180px); }
    .club-hero { padding: 44px 0 70px; }
    .club-signature { gap: 12px; margin-bottom: 28px; }
    .club-signature__logo { width: 68px; }
    .club-signature__name { font-size: 1.7rem; }
    .club-hero h1 { font-size: clamp(2.35rem, 10.8vw, 2.7rem); line-height: 1.01; }
    .club-hero__lead { margin-top: 18px; font-size: 1rem; line-height: 1.6; }
    .club-hero__actions .club-button { width: 100%; }

    .club-benefit-strip__grid { grid-template-columns: 1fr; }
    .club-benefit-strip article { min-height: 82px; border-right: 0; border-bottom: 1px solid var(--adpc-line); }
    .club-benefit-strip article:last-child { border-bottom: 0; }

    .club-section-heading { margin-bottom: 34px; text-align: left; }
    .club-section-heading h2, .club-model h2, .club-final-cta h2 { font-size: 2.3rem; }
    .club-workflow, .club-pricing, .club-model, .club-faq { padding-block: 64px; }
    .club-workflow__steps li { padding: 24px; }

    .club-demo__tab { min-width: 145px; }
    .club-demo__panel { grid-template-columns: 1fr; gap: 28px; padding: 22px; }
    .club-demo__visual { min-height: 210px; padding: 24px; }
    .club-demo__visual strong, .club-demo__copy h3 { font-size: 1.6rem; }

    .club-payment-choice__options { grid-template-columns: 1fr; }
    .club-plan { padding: 26px 22px; }
    .club-plan__description { font-size: .9375rem; }
    .club-plan__price strong { font-size: 2.5rem; }
    .club-plan__highlights li, .club-plan__details li { font-size: .9375rem; }
    .club-plan__actions .club-button { width: 100%; min-height: 50px; }

    .club-comparison__scroll { padding-inline: 16px; }
    .club-trust__grid { grid-template-columns: 1fr; }
    .club-final-cta__inner .club-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .club-page *, .club-page *::before, .club-page *::after {
        scroll-behavior: auto !important; transition: none !important; animation: none !important;
    }
}

/* ============================================================
   Redesign da tela "Confira como lemos o seu modelo" (Modelo de
   planejamento): 4 blocos — resumo fixo (sidebar), campos fixos,
   conteúdo pedagógico, estrutura+teste — em vez da lista única e
   das 2 colunas estreitas (.adpc-reco-grid) que a Caroline pediu
   pra substituir. Reaproveita os tokens já definidos em .adpc-app
   (--adpc-blue/--adpc-orange/--adpc-success/--adpc-warning/--adpc-danger)
   em vez de criar uma paleta nova.
   ============================================================ */
.adp-model-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start;margin-top:14px}
.adp-model-main{min-width:0;display:flex;flex-direction:column;gap:16px}
.adp-model-summary{position:sticky;top:24px;min-width:0}

/* Bloco 1 — resumo fixo, 1 vez só (cartao_estado_modelo + menu_acoes_modelo) */
.adp-model-summary .adpc-model-summary{display:flex;flex-direction:column;gap:8px;padding:18px;border:1px solid var(--adpc-line,#ddd6cc);border-radius:var(--adpc-radius-md,14px);background:var(--adpc-surface,#fff)}
.adp-model-summary__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.adp-model-summary__file{margin:2px 0 0;font-size:1rem;overflow-wrap:anywhere}
.adp-model-summary__escola{margin:0;font-size:.82rem;color:var(--adpc-text-muted,#66727c);font-weight:600}
.adp-model-summary__cta{margin-top:6px}
.adp-model-summary__cta .adp-button,.adp-model-summary__cta .adpc-button{width:100%;justify-content:center}
.adp-model-summary__menu{margin-top:4px;display:flex}
.adp-model-summary__menu .adpc-model-menu{width:100%}
.adp-model-summary__menu .adpc-model-menu>summary{width:100%}

/* Selo de confiança — 3 níveis, cores reaproveitadas de --adpc-success/warning/danger */
.adp-confidence{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.02em;white-space:nowrap}
.adp-confidence--high{background:var(--adpc-success-soft,#ecfdf3);color:var(--adpc-success,#18794e)}
.adp-confidence--medium{background:var(--adpc-warning-soft,#fff8e1);color:var(--adpc-warning,#9a6700)}
.adp-confidence--low{background:var(--adpc-danger-soft,#fef3f2);color:var(--adpc-danger,#b42318)}

/* Contador ao vivo "N confirmados / M pendentes" */
.adp-model-livecount{padding:8px 14px;border-radius:10px;background:var(--adpc-surface-soft,#FBF8F3);border:1px solid var(--adpc-line,#ddd6cc);font-size:.82rem;font-weight:600;color:var(--adpc-blue,#243A53)}

/* Seções recolhíveis (blocos 2/3/4) */
.adp-model-section{border:1px solid var(--adpc-line,#ddd6cc);border-radius:var(--adpc-radius-md,14px);background:var(--adpc-surface,#fff);overflow:hidden}
.adp-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;background:transparent;border:0;cursor:pointer;text-align:left;min-height:44px}
.adp-section-toggle h2{margin:0;font-size:1rem;color:var(--adpc-blue,#243A53)}
.adp-section-toggle__ic{transition:transform .18s ease;color:var(--adpc-text-muted,#66727c)}
.adp-section-toggle[aria-expanded="false"] .adp-section-toggle__ic{transform:rotate(-90deg)}
.adp-section-toggle[aria-expanded="false"]+.adp-section-body{display:none}
.adp-section-body{padding:0 18px 18px}

/* Bloco 2/3 — cartões de campo (nunca mais bullet <li> solto) */
.adp-field-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.adp-recognized-field{list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;align-items:start;background:var(--adpc-surface,#fff);border:1px solid var(--adpc-line,#ddd6cc);border-radius:14px;padding:14px 16px}
.adp-recognized-field.is-content{grid-template-columns:1fr}
.adp-recognized-field__headline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.adp-recognized-field__headline h3{margin:0;font-size:.95rem;color:var(--adpc-blue,#243A53)}
.adp-recognized-field__found{margin:6px 0 0;font-size:.82rem;overflow-wrap:anywhere}
.adp-recognized-field__aviso{margin:6px 0 0;font-size:.82rem;font-weight:600;color:var(--adpc-danger,#b42318)}
.adp-recognized-field__valorlabel{display:block;margin:10px 0 0}
.adp-recognized-field__valorlabel span{display:block;font-size:.78rem;color:var(--adpc-muted,#6b6b6b);margin:0 0 3px}
.adp-recognized-field__valorlabel input{width:100%;max-width:100%;padding:8px 10px;border:1px solid var(--adpc-line,#ddd6cc);border-radius:8px;font-size:.9rem}

/* Fase C — estado do campo (reconhecido / aguardando / confirmado pela professora / inválido) */
.adp-field-status{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap;background:var(--adpc-surface-soft,#FBF8F3);color:var(--adpc-muted,#6b6b6b);border:1px solid var(--adpc-line,#ddd6cc)}
.adp-field-status--confirmado_professor{background:var(--adpc-success-soft,#ecfdf3);color:var(--adpc-success,#18794e);border-color:transparent}
.adp-field-status--invalido{background:var(--adpc-danger-soft,#fef3f2);color:var(--adpc-danger,#b42318);border-color:transparent}
.adp-field-status--aguardando_confirmacao{background:var(--adpc-warning-soft,#fff8e1);color:var(--adpc-warning,#9a6700);border-color:transparent}

/* Toggle do campo fixo: checkbox alinhado ao texto, nunca solto */
.adp-field-toggle{min-width:0;max-width:280px}
.adp-field-toggle .adpc-inline-label{display:grid;grid-template-columns:20px minmax(0,1fr);gap:0 10px;align-items:start;cursor:pointer}
.adp-field-toggle .adpc-inline-label input[type="checkbox"]{width:20px;height:20px;margin:2px 0 0}
.adp-field-toggle .adpc-inline-label span{font-size:.8rem;line-height:1.4}

/* Orientação de campo de conteúdo: textarea larga, nunca cramped */
.adp-guidance-field{min-width:0}
.adp-guidance-field label{display:block}
.adp-guidance-field label>span{display:block;margin-bottom:6px;font-size:.8rem}
.adp-guidance-field textarea{width:100%;min-height:96px;resize:vertical;padding:10px 12px;border:1px solid var(--adpc-border,#d9dee3);border-radius:10px;font:inherit;font-size:.88rem}
.adp-guidance-field textarea:focus{outline:2px solid var(--adpc-focus,#2563eb);outline-offset:1px}

/* Pontos em dúvida: itens viram botões que pulam pro campo certo */
.adp-ambiguity-item{display:block;width:100%;text-align:left;background:none;border:0;padding:4px 0;font:inherit;font-size:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-decoration-color:var(--adpc-border,#d9dee3)}
.adp-ambiguity-item:hover{text-decoration-color:currentColor}
.adp-scroll-highlight{animation:adpModelHighlight 1.6s ease}
@keyframes adpModelHighlight{0%{box-shadow:0 0 0 3px var(--adpc-focus,#2563eb)}100%{box-shadow:none}}

/* item 1/14 (Modelo 2): quadro de diagnóstico técnico copiável — pra dar pro
   suporte sem precisar de acesso ao servidor. */
.adpc-diag-narrativo{margin-top:14px;border:1px dashed var(--adpc-border,#d9dee3);border-radius:var(--adpc-radius-sm,8px);padding:10px 14px;background:var(--adpc-surface-soft,#FBF8F3)}
.adpc-diag-narrativo summary{cursor:pointer;font-size:.85rem;font-weight:600;color:var(--adpc-text-muted,#66727c)}
.adpc-diag-narrativo__dump{margin:10px 0 0;padding:10px;max-height:320px;overflow:auto;font-size:.72rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;background:var(--adpc-surface,#fff);border:1px solid var(--adpc-border,#d9dee3);border-radius:6px;user-select:all}

/* item 5/6 (Modelo 2): "dúvidas do reconhecimento" como pergunta de rádio
   respondível — nunca uma lista de aviso passiva. */
.adp-model-duvidas{background:var(--adpc-warning-soft,#fff8e1);border:1px solid var(--adpc-warning,#9a6700)}
.adp-duvida-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:14px}
.adp-duvida{background:var(--adpc-surface,#fff);border:1px solid var(--adpc-border,#d9dee3);border-radius:var(--adpc-radius-sm,8px);padding:14px 16px}
.adp-duvida__pergunta{margin:0 0 6px;font-weight:700;color:var(--adpc-text,#24313b)}
.adp-duvida__recomendacao{margin:0 0 10px;font-size:.85rem;color:var(--adpc-text-muted,#66727c)}
.adp-duvida__opcoes{display:grid;gap:8px;margin:0;padding:0;border:0}
.adp-duvida__opcao{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;cursor:pointer;font-size:.9rem}
.adp-duvida__opcao input{width:18px;height:18px;margin:2px 0 0}
.adp-duvida__erro{margin:10px 0 0;color:var(--adpc-danger,#b42318);font-size:.85rem;font-weight:600}
.adp-duvida[data-adp-duvida] input:invalid{outline:none}

/* Bloco 4 — barra de ações fixa no rodapé da tela */
.adp-model-actions{position:sticky;bottom:0;display:flex;flex-wrap:wrap;gap:10px;margin-top:4px;padding:14px 18px calc(14px + var(--support-safe-area,0px));background:var(--adpc-surface,#fff);border-top:1px solid var(--adpc-line,#ddd6cc);border-radius:0 0 var(--adpc-radius-md,14px) var(--adpc-radius-md,14px);box-shadow:0 -8px 20px rgba(16,41,64,.06);z-index:5}
.adp-model-actions__form{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.adp-button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:11px 20px;font:inherit;font-size:.9rem;font-weight:700;text-align:center;text-decoration:none;border:1px solid transparent;border-radius:10px;cursor:pointer}
.adp-button--primary{color:#fff;background:var(--adpc-orange,#A8571F)}
.adp-button--primary:hover{background:var(--adpc-orange-dark,#874217)}
.adp-button--secondary{color:var(--adpc-blue,#243A53);background:var(--adpc-surface,#fff);border-color:var(--adpc-blue,#243A53)}
.adp-button--secondary:hover{background:var(--adpc-surface-soft,#FBF8F3)}
.adp-button--danger-ghost{color:var(--adpc-danger,#b42318);background:transparent;border-color:transparent;font-weight:600;text-decoration:underline;min-width:0;padding:11px 8px}
.adp-button--danger-ghost:hover{background:var(--adpc-danger-soft,#fef3f2);text-decoration:none}
.adp-button:disabled{cursor:not-allowed;opacity:.55}
.adp-button:focus-visible{outline:3px solid rgba(37,99,235,.35);outline-offset:3px}

@media(max-width:1023px){
  .adp-model-workspace{grid-template-columns:1fr}
  .adp-model-summary{order:-1;position:static}
  .adp-recognized-field{grid-template-columns:1fr}
  .adp-field-toggle{max-width:none}
}
@media(min-width:1024px){
  .adp-model-actions{padding-right:calc(18px + var(--support-safe-area,0px))}
}
@media(max-width:640px){
  .adp-model-section{border-radius:12px}
  .adp-section-toggle{padding:12px 14px}
  .adp-section-body{padding:0 14px 14px}
  .adp-recognized-field{padding:12px}
  .adp-recognized-field__headline{flex-direction:column;align-items:flex-start;gap:6px}
  .adp-guidance-field textarea{font-size:16px;min-height:120px}
  .adp-model-actions{flex-direction:column;align-items:stretch}
  .adp-model-actions__form{flex-direction:column;align-items:stretch}
  .adp-button{width:100%}
  .adp-button--danger-ghost{order:3}
}

/* Widget de chat flutuante encolhe pra ícone quando a barra de ações
   fixa está visível na tela, pra nunca cobrir os botões (IntersectionObserver
   em adp-clube.js alterna esta classe no <body>). */
body.adp-model-actionbar-visible .adp-chat-toggle-tx{display:none}
body.adp-model-actionbar-visible .adp-chat-toggle{padding:11px}
