/* Organização do cronograma. Usa a paleta e os componentes existentes da Villa. */
.vtec .vp-plan{min-width:0}
.vtec .vp-plan-head{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}
.vtec .vp-plan-horiz{display:flex;gap:4px;flex-wrap:wrap}
.vtec .vp-plan-horiz .btn{min-height:44px;padding:8px 16px}
html .vtec .vp-plan-horiz .btn.on{background:linear-gradient(180deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,0) 48%),linear-gradient(180deg,#285A6F,#1A3F4F);color:#fff;border-color:#153543;box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 2px 0 #18495E,0 8px 14px -8px rgba(37,104,133,.85)}
.vtec .vp-plan-dates{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.vtec .vp-plan-dates input{min-height:44px;max-width:180px}
.vtec .vp-plan .vp-plan-nav{display:flex;align-items:center;gap:12px;justify-content:center;flex-wrap:wrap;margin:12px 0 20px}
.vtec .vp-plan-nav h3{margin:0;text-align:center}
.vtec .vp-plan-cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}
.vtec .vp-plan .card{margin-top:0;margin-bottom:18px;min-width:0}
.vtec .vp-plan-title{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.vtec .vp-plan-title h2,.vtec .vp-plan-title h3{margin:0;flex:1}
.vtec .vp-plan-objective{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;margin:0}
.vtec .vp-plan .btn{min-height:44px}
.vtec .vp-plan-stats{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid var(--linha,#E7E1D6);padding-bottom:12px;margin:12px 0}
.vtec .vp-plan-stat b{display:block;font-size:24px;color:var(--azul-esc,#15323F)}
.vtec .vp-plan-stat small{color:var(--muted,#505E64)}
.vtec .vp-plan-session{padding:14px 0;border-bottom:1px solid var(--linha,#E7E1D6)}
.vtec .vp-plan-session:last-child{border-bottom:0}
.vtec .vp-plan-session header{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.vtec .vp-plan-session h4{margin:6px 0;font-size:19px}
.vtec .vp-plan-session p{margin:4px 0 10px}
.vtec .vp-plan-session .rt-leg{margin:8px 0}
.vtec .vp-plan-months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.vtec .vp-plan-month-card{border:1px solid var(--linha,#E7E1D6);border-radius:16px;background:white;padding:16px;min-width:0;overflow-wrap:anywhere}
.vtec .vp-plan-month-card h3{margin:0 0 10px}
.vtec .vp-plan-month-card p{margin:8px 0}
.vtec .vp-plan-week{border:1px solid var(--linha,#E7E1D6);border-radius:16px;padding:15px;margin:12px 0}
.vtec .vp-plan-week header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.vtec .vp-plan-week h3{margin:0;flex:1}
.vtec .vp-plan-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:14px}
.vtec .vp-plan-calendar>div{min-width:0;border:1px solid var(--linha,#E7E1D6);border-radius:8px;padding:6px;background:white;font-size:13px;overflow-wrap:anywhere}
.vtec .vp-plan-calendar>div.out{opacity:.45;background:var(--fundo,#F1EEE7)}
.vtec .vp-plan-calendar button{min-height:44px;display:block;width:100%;font:inherit;background:var(--azul-suave,#EBEFF0);color:var(--azul-esc,#15323F);border:0;border-radius:8px;padding:5px;margin-top:5px;overflow-wrap:anywhere}
.vtec .vp-plan-event{padding:12px 0;border-bottom:1px solid var(--linha,#E7E1D6)}
.vtec .vp-plan-event strong{display:block;overflow-wrap:anywhere}
.vtec .vp-plan-event p{margin:5px 0;line-height:1.35}
.vtec .vp-plan-metagoal{display:flex;gap:8px;align-items:flex-start;margin:12px 0;overflow-wrap:anywhere}
.vtec .vp-plan-metagoal input{margin-top:3px;flex:0 0 auto;min-height:24px;min-width:24px}
.vtec .vp-plan-note{font-size:14px;color:var(--muted,#505E64);line-height:1.4;margin:10px 0}
.vtec .vp-plan-legacy{margin-top:12px;white-space:pre-wrap;font-size:14px}
@media(max-width:1100px){.vtec .vp-plan-cols{grid-template-columns:minmax(0,1fr)}.vtec .vp-plan-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.vtec .vp-plan-aside .card{margin-bottom:0}}
@media(max-width:620px){.vtec .vp-plan-head{display:block}.vtec .vp-plan-horiz{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;margin-bottom:12px}.vtec .vp-plan-horiz .btn{padding:8px 3px;font-size:14px}.vtec .vp-plan .vp-plan-nav{gap:8px}.vtec .vp-plan-nav h3{font-size:22px;flex:1;min-width:120px}.vtec .vp-plan-aside,.vtec .vp-plan-months{grid-template-columns:minmax(0,1fr)}.vtec .vp-plan-stats{gap:14px}.vtec .vp-plan .card{padding:16px}.vtec .vp-plan-calendar{gap:3px}.vtec .vp-plan-calendar>div{padding:3px;font-size:11px}.vtec .vp-plan-calendar button{font-size:10px}.vtec .vp-plan-session .linha-f>.btn{flex:1 1 160px}.vtec .vp-plan-week header .btn{width:100%}}
