/* AF Plataforma · Arquitetura de Legado UI Refresh v2
   Camada visual aditiva: não substitui componentes, rotas ou lógica existentes. */
:root{
  color-scheme:dark;
  --bg:#0D0A14;
  --bg2:#15111F;
  --surface:rgba(255,255,255,.045);
  --gold:#D4AF37;
  --gold-light:#F1D879;
  --gold-dim:rgba(212,175,55,.30);
  --white:#F8F7FC;
  --muted:rgba(248,247,252,.68);
  --muted2:rgba(248,247,252,.42);
  --line:rgba(212,175,55,.19);
  --red:#FF6B75;
  --green:#72D6A1;
  --font-d:'Cormorant Garamond',serif;
  --font-b:'Josefin Sans',sans-serif;
  --nav-w:272px;
  --header-h:68px;
  --radius:14px;
}
html{scroll-behavior:smooth}
body{
  background:
    radial-gradient(ellipse 55% 36% at 72% -8%,rgba(109,40,217,.19),transparent 68%),
    radial-gradient(ellipse 36% 30% at 0% 100%,rgba(212,175,55,.055),transparent 72%),
    var(--bg);
  color:var(--white);
  font-family:var(--font-b);
  font-weight:400;
  letter-spacing:.01em;
}
body::before{
  background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,black,transparent 75%);
}
::selection{background:rgba(109,40,217,.55);color:#fff}
:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}
button,input,textarea,select{transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease}
button:active{transform:translateY(1px)}
#authShell{
  background:
    radial-gradient(ellipse 60% 55% at 50% 0%,rgba(109,40,217,.24),transparent 70%),
    var(--bg);
  padding:clamp(16px,4vw,32px);
}
.auth-card{
  max-width:440px;
  padding:clamp(26px,5vw,42px);
  border:1px solid rgba(212,175,55,.24);
  border-radius:24px;
  background:linear-gradient(150deg,rgba(30,23,45,.97),rgba(17,14,25,.98));
  box-shadow:0 28px 90px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.055);
}
.auth-logo{margin-bottom:24px}
.auth-logo img{width:48px;height:48px;object-fit:cover;border:1px solid rgba(212,175,55,.4);box-shadow:0 0 24px rgba(109,40,217,.22)}
.auth-logo span{font-family:var(--font-b);font-size:.92rem;font-weight:600;letter-spacing:.2em}
.auth-card h1{font-size:clamp(2rem,5vw,2.5rem);font-weight:500;line-height:1.05;margin-bottom:12px}
.auth-card .sub{font-size:13px;line-height:1.8;letter-spacing:.02em;margin:0 auto 26px;max-width:320px}
.field label{font-size:10px;letter-spacing:.16em;font-weight:600}
.field input{
  min-height:48px;padding:13px 15px;border-radius:12px;
  background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.12);
}
.field input:focus{border-color:var(--gold-light);box-shadow:0 0 0 3px rgba(212,175,55,.10)}
.btn{
  min-height:46px;border-radius:12px;border:1px solid rgba(212,175,55,.4);
  background:linear-gradient(120deg,#6D28D9,#3B176D 78%);
  box-shadow:0 8px 24px rgba(70,30,140,.22);
  color:#fff;font-weight:600;font-size:11px;letter-spacing:.14em;
}
.btn:hover{background:linear-gradient(120deg,#7C3AED,#4C1D95);box-shadow:0 10px 30px rgba(109,40,217,.32);transform:translateY(-1px)}
.btn-ghost,.btn-google{background:rgba(255,255,255,.035);box-shadow:none;color:var(--white);border-color:rgba(255,255,255,.13)}
.btn-google:hover,.btn-ghost:hover{background:rgba(255,255,255,.07);border-color:var(--gold-dim);color:var(--gold-light)}
.auth-divider::before,.auth-divider::after{background:rgba(255,255,255,.12)}
.auth-hint{border-color:rgba(255,255,255,.09)}
#accessDenied{background:var(--bg)}
#appShell{background:transparent}
.sidebar{
  width:var(--nav-w);padding:20px 14px 14px;
  background:linear-gradient(180deg,rgba(22,16,35,.98),rgba(13,10,20,.985));
  border-right:1px solid rgba(212,175,55,.16);
  box-shadow:12px 0 40px rgba(0,0,0,.10);
  scrollbar-width:thin;scrollbar-color:rgba(212,175,55,.25) transparent;
}
.side-logo{padding:8px 12px 22px;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.08)}
.side-logo img{width:38px;height:38px;border:1px solid rgba(212,175,55,.35);box-shadow:0 0 20px rgba(109,40,217,.18)}
.side-logo span{font-family:var(--font-b);font-size:.84rem;font-weight:600;letter-spacing:.2em}
.nav-item{
  min-height:44px;padding:12px 13px;border-radius:12px;font-size:12px;letter-spacing:.025em;
  color:rgba(248,247,252,.64);margin-bottom:4px;border:1px solid transparent;
}
.nav-item:hover{color:#fff;background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.055);transform:translateX(2px)}
.nav-item.active{
  color:#fff;
  background:linear-gradient(100deg,rgba(109,40,217,.28),rgba(109,40,217,.08));
  border-color:rgba(167,139,250,.30);
  box-shadow:inset 3px 0 0 var(--gold),0 8px 20px rgba(0,0,0,.10);
}
.nav-item .ico{font-size:15px;color:var(--gold-light)}
.side-foot{border-color:rgba(255,255,255,.08)}
.user-chip{border:1px solid rgba(255,255,255,.06);border-radius:13px;background:rgba(255,255,255,.035);padding:11px}
.user-chip .av{border:1px solid rgba(212,175,55,.25);background:linear-gradient(135deg,rgba(109,40,217,.55),rgba(212,175,55,.14))}
.user-chip .role{color:var(--gold-light)}
.btn-logout{border-radius:10px;min-height:38px}
.main{background:transparent}
.topbar{
  height:var(--header-h);padding:0 clamp(16px,3vw,34px);
  background:rgba(13,10,20,.72);border-bottom:1px solid rgba(255,255,255,.075);
  backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
}
.top-title{font-family:var(--font-b);font-weight:600;font-size:clamp(.94rem,2vw,1.08rem);letter-spacing:.01em}
.lang-sel{border-radius:10px;background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.13);color:var(--white);padding:8px 11px}
.lang-sel option{background:#15111F;color:#fff}
.badge-mode{border-radius:999px;border-color:rgba(212,175,55,.3);color:var(--gold-light);background:rgba(212,175,55,.06);font-weight:600}
.menu-toggle{border-radius:10px}
.content{padding:clamp(18px,3.2vw,38px) clamp(16px,3vw,34px) 56px;scrollbar-width:thin;scrollbar-color:rgba(212,175,55,.25) transparent}
.view{max-width:1120px;animation:afReveal .28s ease both}
@keyframes afReveal{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
.hero-line{color:var(--gold-light);font-size:10px;letter-spacing:.18em;font-weight:600;opacity:1}
.hero-title{font-size:clamp(2rem,4.4vw,3.25rem);font-weight:500;line-height:1.05;letter-spacing:-.025em}
.hero-sub{max-width:680px;font-size:14px;line-height:1.85;color:var(--muted);margin-bottom:30px}
.section-h{font-family:var(--font-b);font-size:1.02rem;font-weight:600;letter-spacing:.01em;margin:34px 0 16px}
.grid-3{gap:16px;margin-bottom:30px}
.stat-card,.mat-card,.mod-row,.card,.panel,.tool-card,.module-card,.phase-card,.dashboard-card{
  border-radius:16px;
  border-color:rgba(255,255,255,.09);
  box-shadow:0 10px 30px rgba(0,0,0,.10);
}
.stat-card{
  position:relative;overflow:hidden;padding:22px;
  background:linear-gradient(145deg,rgba(35,26,52,.78),rgba(22,18,31,.78));
  border:1px solid rgba(167,139,250,.17);
}
.stat-card::after{content:"";position:absolute;right:-34px;top:-44px;width:112px;height:112px;border-radius:50%;background:radial-gradient(circle,rgba(109,40,217,.20),transparent 70%);pointer-events:none}
.stat-card .lbl{font-size:10px;letter-spacing:.13em;color:var(--muted)}
.stat-card .val{font-family:var(--font-b);font-size:clamp(1.55rem,3vw,2rem);font-weight:600;color:var(--gold-light)}
.stat-card .hint{font-size:12px;color:var(--muted2);line-height:1.6}
.module-list{gap:10px}
.mod-row{
  padding:17px 18px;gap:16px;background:linear-gradient(115deg,rgba(255,255,255,.045),rgba(255,255,255,.02));
  border-color:rgba(255,255,255,.085);border-radius:14px;
}
.mod-row:hover{border-color:rgba(167,139,250,.45);background:rgba(109,40,217,.09);transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.16)}
.mod-row.locked:hover{transform:none}
.mod-num{color:var(--gold-light);font-family:var(--font-b);font-size:1rem;font-weight:600}
.mod-body h3{font-size:14px;font-weight:500;letter-spacing:0}
.mod-body p{font-size:12px;line-height:1.5}
.back-link{border:1px solid rgba(255,255,255,.10);border-radius:999px;padding:9px 13px;margin-bottom:22px;color:var(--muted);letter-spacing:.08em}
.back-link:hover{border-color:var(--gold-dim);background:rgba(212,175,55,.06)}
.mat-grid{gap:14px}
.mat-card{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.09);padding:20px}
.mat-card h4{color:var(--gold-light)}
/* Unifica superfícies comuns sem mexer em seus conteúdos ou handlers. */
button:not(.btn):not(.btn-logout):not(.menu-toggle):not(.modal-x):not(.tp-btn):not(.sf-eye){
  border-radius:10px;
}
input,textarea,select{accent-color:#8B5CF6}
textarea,select,input:not([type="checkbox"]):not([type="radio"]):not([type="range"]){
  border-radius:10px;
}
a{transition:color .18s ease,border-color .18s ease,background-color .18s ease}
img{max-width:100%}
@media(min-width:1200px){
  .content{padding-left:clamp(28px,4vw,52px);padding-right:clamp(28px,4vw,52px)}
}
@media(max-width:900px){
  :root{--nav-w:290px;--header-h:62px}
  .sidebar{box-shadow:24px 0 60px rgba(0,0,0,.35)}
}
@media(max-width:720px){
  .content{padding:20px 14px calc(36px + env(safe-area-inset-bottom))}
  .topbar{padding:0 14px}
  .top-actions{gap:7px}
  .badge-mode{font-size:8px;padding:5px 7px;letter-spacing:.08em}
  .hero-title{font-size:clamp(1.9rem,8vw,2.5rem)}
  .hero-sub{font-size:13px;margin-bottom:24px}
  .grid-3{grid-template-columns:1fr;gap:10px}
  .stat-card{padding:18px}
  .mod-row{padding:15px 14px;gap:12px}
  .auth-card{border-radius:20px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* CONTRASTE E LEGIBILIDADE · correção isolada pós-refresh
   Preserva rotas, componentes e lógica; harmoniza superfícies claras e escuras. */
:root{
  color-scheme:dark;
  --white:#F8F7FC;
  --muted:rgba(248,247,252,.76);
  --muted2:rgba(248,247,252,.58);
}
body{color:#F8F7FC}
input,textarea,select{color:#F8F7FC}
input::placeholder,textarea::placeholder{color:rgba(248,247,252,.58);opacity:1}
select option{background:#15111F;color:#F8F7FC}
.field input,.field textarea,.field select,
#tpPanel input,#tpPanel textarea,#tpPanel select,
#toolPanel input,#toolPanel textarea,#toolPanel select,
.modal input,.modal textarea,.modal select,
.net-form input,.media-edit input{
  color:#F8F7FC;
  background-color:#211A2D;
  border-color:rgba(248,247,252,.22);
}
.field input::placeholder,.field textarea::placeholder,
#tpPanel input::placeholder,#tpPanel textarea::placeholder,
#toolPanel input::placeholder,#toolPanel textarea::placeholder,
.modal input::placeholder,.modal textarea::placeholder{
  color:rgba(248,247,252,.62);
}
.field label,.modal label,#toolPanel label,#tpPanel label{color:#F1D879}

/* Componentes intencionalmente claros mantêm texto escuro legível. */
.mentor-hero,.net-card,.yoga-card,.q-feature,.q-next,.q-row,.q-card,
.q-form.card-like,.q-method,.q-plan,.q-hist,.q-card,.q-form,
.af-asc-card,.pnl-pillar,.pnl-script-card,.pnl-script-text,
.profile-av,.net-form input,.media-edit input,
.mat-viewer-stage,.mat-viewer-stage iframe{
  color:#18141F;
}
.mentor-hero :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.net-card :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.yoga-card :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-feature :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-next :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-row :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-card :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-form :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-method :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-plan :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.q-hist :is(h1,h2,h3,h4,p,span,small,strong,em,label),
.af-asc-card :is(h1,h2,h3,h4,p,span,small,strong,em,label,li),
.pnl-pillar :is(h1,h2,h3,h4,p,span,small,strong,em,label){
  color:#18141F;
}
.pnl-script-text{background:#FCFAF7;color:#18141F}
.net-form input,.media-edit input{background:#FFFFFF;color:#18141F}
.mat-viewer-acts button{background:#FFFFFF;color:#18141F}
.call-roster select{background:#FFFFFF;color:#18141F}


/* CONTRASTE FINAL · tema principal claro com exceção do hero escuro */
:root{color-scheme:light;--title-violet:#4C1D95}
.content .hero-title,
.content .section-h,
.content .view > h1,
.content .view > h2,
.content .view > h3,
.content .view > section > h1,
.content .view > section > h2,
.content .view > section > h3,
  .content .view .mod-body h3{
  color:var(--title-violet)!important;
}
/* O hero da jornada é deliberadamente escuro e mantém o violeta claro acessível. */
.content .alx-hero :is(.hero-title,.section-h){color:#C4A7FF!important}
/* Mantém títulos escuros nas superfícies claras para conservar o contraste. */
.mentor-hero :is(h1,h2,h3,h4),
.net-card :is(h1,h2,h3,h4),
.yoga-card :is(h1,h2,h3,h4),
.q-feature :is(h1,h2,h3,h4),
.q-next :is(h1,h2,h3,h4),
.q-row :is(h1,h2,h3,h4),
.q-card :is(h1,h2,h3,h4),
.q-form :is(h1,h2,h3,h4),
.q-method :is(h1,h2,h3,h4),
.q-plan :is(h1,h2,h3,h4),
.q-hist :is(h1,h2,h3,h4),
.af-asc-card :is(h1,h2,h3,h4),
.pnl-pillar :is(h1,h2,h3,h4),
.pnl-script-card :is(h1,h2,h3,h4){
  color:#18141F!important;
}

.phase-fold{margin:12px 0 4px;border:0;background:transparent}
.phase-fold>summary{display:inline-flex;align-items:center;list-style:none;cursor:pointer;width:auto;padding:10px 16px;border-radius:10px;background:#f0e8fa;border:1px solid #e1d2f1;color:#1a1024;font-weight:700;font-size:14px}
.phase-fold>summary::-webkit-details-marker{display:none}
.phase-fold>summary::before{content:"+";margin-right:8px;font-weight:700}
.phase-fold[open]>summary::before{content:"–"}
.phase-fold[open]>summary{margin-bottom:8px}
.phase-fold>.phase-briefing,.phase-fold>.phase-checklist{margin-top:8px}

/* Jornada expandida · briefings, checklists, mapas e orientação executiva. */
.phase-briefing,.phase-checklist,.mindmaps-view .mindmap-source,.mindmap-summary,.alx-practical-guide{
  margin:24px 0;padding:clamp(16px,2.4vw,24px);border:1px solid rgba(167,139,250,.22);border-radius:16px;background:linear-gradient(145deg,rgba(35,26,52,.72),rgba(22,18,31,.72));box-shadow:0 12px 32px rgba(0,0,0,.12)
}
.phase-briefing-lead h3,.phase-checklist-head h3,.alx-practical-guide h3{margin:5px 0 8px;color:#C4A7FF;font-size:1.28rem;font-weight:600}
.phase-briefing-lead p,.phase-checklist-head .notes-hint,.alx-practical-guide>p{max-width:780px;color:var(--muted);font-size:12px;line-height:1.75}
.phase-briefing-subtitle{color:var(--gold-light)!important;font-weight:600}
.phase-source-classification{max-width:780px;margin-top:12px;padding:10px 12px;border-left:2px solid var(--gold);background:rgba(212,175,55,.055);color:var(--muted);font-size:11px;line-height:1.7}
.phase-briefing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px}
.phase-briefing details,.alx-briefing-list details,.alx-guide{border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.035);padding:12px}
.phase-briefing summary,.alx-briefing-list summary,.alx-guide summary{cursor:pointer;color:var(--gold-light);font-size:11px;font-weight:600;letter-spacing:.03em}
.phase-briefing details p,.phase-briefing details li,.alx-briefing-list p,.alx-guide p{color:var(--muted);font-size:11px;line-height:1.7;margin:9px 0 0}
.phase-briefing details ul{margin:9px 0 0;padding-left:18px}
.phase-checklist-head{display:flex;justify-content:space-between;align-items:start;gap:18px}
.phase-progress{display:grid;justify-items:end;gap:2px;min-width:76px;color:var(--muted)}
.phase-progress strong{font-size:1.5rem;color:var(--gold-light)}
.phase-progress span{font-size:10px}
.phase-progress-bar{height:5px;margin:14px 0 16px;border-radius:999px;background:rgba(255,255,255,.09);overflow:hidden}
.phase-progress-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7C3AED,var(--gold-light));transition:width .2s ease}
.phase-checklist-items{display:grid;gap:10px}
.phase-check-item{padding:15px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.025)}
.phase-check-item.in_progress{border-color:rgba(212,175,55,.45);background:rgba(212,175,55,.055)}
.phase-check-item.done{border-color:rgba(114,214,161,.4);background:rgba(114,214,161,.045)}
.phase-check-item.needs-evidence{border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.055)}
.checklist-evidence-warning{margin:10px 0 0;padding:8px 10px;border-left:2px solid #F59E0B;color:#FCD34D;font-size:10px;line-height:1.55}
.phase-check-item-top{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px}
.phase-check-item h4{margin:0;color:var(--white);font-size:13px;font-weight:600}
.phase-check-item-top p,.phase-check-item details p{margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.6}
.phase-check-item details{margin:12px 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}
.phase-check-item summary{cursor:pointer;color:var(--gold-light);font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.phase-check-fields{display:grid;grid-template-columns:180px minmax(0,1fr);gap:10px;margin-top:13px}
.phase-check-fields label,.mindmap-node label,.alx-extra-executive label{display:grid;gap:6px;color:var(--gold-light);font-size:10px;letter-spacing:.05em}
.phase-check-fields input,.phase-check-fields select,.mindmap-node input,.mindmap-node textarea,.mindmap-node select,.alx-extra-executive textarea,.alx-extra-executive select{width:100%;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:#211A2D;color:var(--white);font:inherit;font-size:12px}
.phase-check-fields select,.mindmap-node select,.alx-extra-executive select{color-scheme:dark}
.phase-checklist-note{margin:14px 0 0;color:var(--muted);font-size:11px}
.mindmaps-hero{display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;gap:20px;margin-bottom:18px}
.mindmap-center{display:grid;gap:7px;min-height:150px;padding:24px;border:1px solid rgba(212,175,55,.35);border-radius:50%;background:radial-gradient(circle,rgba(109,40,217,.25),rgba(255,255,255,.035) 68%);text-align:center;align-content:center;justify-items:center;box-shadow:0 0 45px rgba(109,40,217,.16)}
.mindmap-center span,.mindmap-center small{font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:var(--gold-light)}
.mindmap-center strong{font-size:13px;line-height:1.45;color:var(--white)}
.mindmap-center small{letter-spacing:.03em;text-transform:none;color:var(--muted)}
.mindmap-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.mindmap-tabs .tool-btn.active{border-color:var(--gold-light);background:rgba(109,40,217,.24);color:#fff;box-shadow:inset 0 2px var(--gold)}
.mindmap-source{margin:14px 0!important;padding:14px 16px!important}
.mindmap-source strong{font-size:10px;letter-spacing:.12em;color:var(--gold-light);text-transform:uppercase}
.mindmap-source p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.7}
.mindmap-branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.mindmap-node{min-width:0;padding:16px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));transition:border-color .2s,transform .2s}
.mindmap-node:hover{border-color:rgba(167,139,250,.42);transform:translateY(-1px)}
.mindmap-node.in_progress{border-color:rgba(212,175,55,.45)}
.mindmap-node.done{border-color:rgba(114,214,161,.4)}
.mindmap-node-head{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px}
.mindmap-branch-number{color:var(--gold-light);font-size:11px;font-weight:600}
.mindmap-node h4{margin:0;color:var(--white);font-size:13px}
.mindmap-node-head p{margin:6px 0 0;color:var(--muted);font-size:11px;line-height:1.6}
.mindmap-node details{margin-top:13px;padding-top:11px;border-top:1px solid rgba(255,255,255,.07)}
.mindmap-node summary{cursor:pointer;color:var(--gold-light);font-size:10px;letter-spacing:.08em;text-transform:uppercase}
.mindmap-prompt{color:var(--muted);font-size:11px;line-height:1.6}
.mindmap-node textarea{resize:vertical;min-height:74px}
.mindmap-node label{margin-top:11px}
.mindmap-summary{padding:14px 16px}
.mindmap-summary summary{cursor:pointer;color:var(--gold-light);font-size:11px;font-weight:600}
.mindmap-summary pre{white-space:pre-wrap;margin:12px 0 0;color:var(--muted);font:12px/1.7 var(--font-b)}
.mindmap-actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}
.mindmap-link-note{padding:9px 10px;border-left:2px solid var(--gold);background:rgba(212,175,55,.05);color:var(--muted);font-size:10px;line-height:1.55}
.mindmap-add-vector,.mindmap-legacy-records,.mindmap-source-themes{margin:12px 0;padding:13px;border:1px solid rgba(212,175,55,.2);border-radius:11px;background:rgba(109,40,217,.045)}
.mindmap-add-vector>summary,.mindmap-legacy-records>summary,.mindmap-source-themes>summary{cursor:pointer;color:var(--gold-light);font-size:11px;font-weight:600}
.mindmap-add-vector p,.mindmap-legacy-records>p,.mindmap-source-themes li{color:var(--muted);font-size:11px;line-height:1.65}
.mindmap-add-vector-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;margin-top:10px}
.mindmap-add-vector select{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.16);border-radius:9px;background:#211A2D;color:var(--white);font:inherit;font-size:12px;color-scheme:dark}
.mindmap-empty{grid-column:1/-1;padding:18px;border:1px dashed rgba(212,175,55,.24);border-radius:12px;color:var(--muted);font-size:12px;line-height:1.6}
.mindmap-source-themes ul{padding-left:18px}
.alx-guide{margin-top:14px;background:rgba(109,40,217,.06)}
.alx-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 15px;margin-top:10px}
.alx-guide-grid p{margin:0}
.alx-guide-grid b,.alx-field-hint b{color:var(--gold-light)}
.alx-guide summary{margin:0}
.alx-briefing-list{display:grid;gap:8px;margin-top:15px}
.alx-briefing-list details{padding:13px}
.alx-guide-phase-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:15px}
.alx-guide-phase-grid article{display:flex;flex-direction:column;gap:7px;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:rgba(255,255,255,.025)}
.alx-guide-phase-grid h4{font-size:12px;margin:0;color:var(--white)}
.alx-guide-phase-grid p{font-size:10px;line-height:1.55;color:var(--muted);margin:0;flex:1}
.alx-guide-phase-grid .tool-btn{align-self:start;font-size:10px;padding:8px 10px}
.alx-field-hint{display:block;margin-top:2px;color:var(--muted);font-size:10px;line-height:1.55}
.alx-asset-intro{color:var(--muted);font-size:11px;line-height:1.65}
.alx-asset-types{display:grid;gap:8px;margin-top:12px}
.alx-asset-types>details{padding:11px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:rgba(255,255,255,.025)}
.alx-asset-types>details>summary{cursor:pointer;color:var(--gold-light);font-size:11px;font-weight:600}
.alx-asset-types .alx-guide-grid{margin-top:8px}
.alx-asset-types>p{color:var(--muted);font-size:10px;line-height:1.6}
.alx-extra-executive{grid-column:1/-1}
.alx-extra-executive textarea{min-height:80px;resize:vertical}
@media(max-width:950px){.phase-briefing-grid,.mindmap-branches{grid-template-columns:repeat(2,minmax(0,1fr))}.alx-guide-phase-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.phase-briefing-grid,.mindmap-branches,.alx-guide-grid,.alx-guide-phase-grid{grid-template-columns:1fr}.phase-checklist-head,.mindmaps-hero{display:block}.phase-progress{justify-items:start;margin-top:12px}.phase-check-fields{grid-template-columns:1fr}.mindmap-center{width:min(220px,100%);margin:16px auto 0;border-radius:18px;min-height:110px}.mindmap-add-vector-row{grid-template-columns:1fr}.alx-extra-executive{grid-column:auto}}

/* Império Digital · entrada do laboratório de anúncios; camada visual aditiva */
.id-ai-entry{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0;padding:clamp(18px,3vw,28px);border:1px solid rgba(212,175,55,.24);border-radius:16px;background:linear-gradient(115deg,rgba(109,40,217,.12),rgba(212,175,55,.055));}
.id-ai-entry-copy{max-width:650px}.id-ai-eyebrow{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-light);margin:0 0 8px}.id-ai-entry h3{font-size:clamp(20px,2.6vw,28px);margin:0 0 8px;color:var(--white)}.id-ai-entry p:not(.id-ai-eyebrow){color:var(--muted);line-height:1.65;margin:0}.id-ai-entry .tool-btn{flex-shrink:0;white-space:normal;text-align:center}
@media(max-width:680px){.id-ai-entry{align-items:flex-start;flex-direction:column}.id-ai-entry .tool-btn{width:100%}}

/* Scroll reveal progressivo · somente elementos da Fase 2; respeita redução de movimento */
.id-scroll-reveal{opacity:0;transform:translateY(14px);transition:opacity .55s ease var(--id-reveal-delay,0ms),transform .55s cubic-bezier(.2,.7,.2,1) var(--id-reveal-delay,0ms)}
.id-scroll-reveal.id-scroll-visible{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.id-scroll-reveal,.id-scroll-reveal.id-scroll-visible{opacity:1;transform:none;transition:none}}

.id-lib{margin:24px 0}
.id-lib-grid{display:grid;gap:10px;margin-top:12px}
@media(min-width:720px){.id-lib-grid{grid-template-columns:1fr 1fr}}
@media(min-width:1100px){.id-lib-grid{grid-template-columns:1fr 1fr 1fr}}
.id-lib-card{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:12px 14px;border:1px solid rgba(212,175,55,.24);border-radius:14px;text-decoration:none;background:rgba(255,255,255,.03);color:inherit}
.id-lib-card strong{font-size:14px;font-weight:600}
.id-lib-btns{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 8px}
