#hpy-calculator{box-sizing:border-box;width:100%;font-family:inherit}
#hpy-calculator *{box-sizing:border-box}
#hpy-calculator .hpy-shell{width:920px;max-width:100%;margin:0 auto;padding:24px}
#hpy-calculator .hpy-title{text-align:center;margin:0 0 24px;font-size:32px;line-height:1.2}
#hpy-calculator .hpy-form{display:flex;align-items:flex-end;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:26px}
#hpy-calculator .hpy-control{display:flex;flex-direction:column;gap:6px;min-width:210px}
#hpy-calculator .hpy-control label{font-weight:600;font-size:14px}
#hpy-calculator .hpy-control input,#hpy-calculator .hpy-control select{width:100%;height:46px;padding:8px 12px;border:1px solid #d8d8d8;border-radius:10px;background:#fff;color:#222;font:inherit}
#hpy-calculator .hpy-control input[readonly],#hpy-calculator .hpy-control select:disabled{background:#f7f7f7;color:#555;opacity:1}
#hpy-calculator .hpy-year-control{min-width:150px}

/* Botões: cada etapa pode ter sua própria paleta no admin. */
#hpy-calculator .hpy-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 22px;border:0;border-radius:var(--hpy-button-radius);text-decoration:none!important;font:inherit;font-size:var(--hpy-button-font-size);font-weight:700;cursor:pointer;transition:transform .18s ease,background-color .18s ease,opacity .18s ease}
#hpy-calculator .hpy-button:hover{transform:translateY(-1px)}
#hpy-calculator .hpy-button[disabled]{opacity:.6;cursor:wait;transform:none}
#hpy-calculator .hpy-calc-button{background:var(--hpy-calc-bg);color:var(--hpy-calc-text)!important}
#hpy-calculator .hpy-calc-button:hover{background:var(--hpy-calc-hover);color:var(--hpy-calc-text)!important}
#hpy-calculator .hpy-buy-button{background:var(--hpy-buy-bg);color:var(--hpy-buy-text)!important}
#hpy-calculator .hpy-buy-button:hover{background:var(--hpy-buy-hover);color:var(--hpy-buy-text)!important}
#hpy-calculator .hpy-pdf-button{background:var(--hpy-pdf-bg);color:var(--hpy-pdf-text)!important}
#hpy-calculator .hpy-pdf-button:hover{background:var(--hpy-pdf-hover);color:var(--hpy-pdf-text)!important}

#hpy-calculator .hpy-result{margin-top:10px}

/* O fundo branco antigo foi removido. Pode ser transparente ou receber uma cor pelo admin. */
#hpy-calculator .hpy-chart-capture{width:610px;max-width:100%;margin:0 auto;padding:24px 18px 18px;background:var(--hpy-chart-bg);border-radius:var(--hpy-chart-radius)}
#hpy-calculator #hpy-matrix{position:relative;width:550px!important;max-width:100%;margin:0 auto}
#hpy-calculator #hpy-matrix .transimage{display:block;width:100%;height:auto;position:relative;z-index:0}
#hpy-calculator #hpy-matrix .matrix .trans{border:1px solid #262538}
#hpy-calculator #hpy-matrix .trans,#hpy-calculator #hpy-matrix .trans>div{border-radius:50%;display:flex;justify-content:center;align-items:center}
#hpy-calculator #hpy-matrix .trans{z-index:2;transition:transform .2s ease,background .2s ease;overflow:visible}
#hpy-calculator #hpy-matrix .trans span{font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-weight:500}
#hpy-calculator #hpy-matrix span#n1,#hpy-calculator #hpy-matrix span#n2,#hpy-calculator #hpy-matrix span#n3,#hpy-calculator #hpy-matrix span#n4,#hpy-calculator #hpy-matrix span#n5,#hpy-calculator #hpy-matrix span#n6,#hpy-calculator #hpy-matrix span#n7,#hpy-calculator #hpy-matrix span#n8,#hpy-calculator #hpy-matrix span#n30{font-size:24px;font-weight:700}

/*
 * Destaque do Ano Pessoal 1.0.2
 * Não usamos mais a borda + dois anéis que criavam as linhas ovais.
 * O próprio número vira um badge circular, limpo e sem atravessar o texto.
 */
#hpy-calculator #hpy-matrix .trans.hpy-year-point{z-index:60!important;border-color:transparent!important;background:transparent!important;transform:none!important;box-shadow:none!important}
#hpy-calculator #hpy-matrix .trans.hpy-year-point>div{background:transparent!important}
#hpy-calculator #hpy-matrix .trans.hpy-year-point span{position:absolute!important;left:50%;top:50%;transform:translate(-50%,-50%);width:var(--hpy-highlight-size)!important;height:var(--hpy-highlight-size)!important;min-width:var(--hpy-highlight-size);min-height:var(--hpy-highlight-size);border-radius:999px!important;background:var(--hpy-highlight)!important;color:var(--hpy-highlight-text)!important;border:0!important;box-shadow:0 5px 16px rgba(0,0,0,.20);font-size:14px!important;font-weight:800!important;line-height:1!important;z-index:70}
#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n1,#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n2,#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n3,#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n4,#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n5,#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n6,#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n7,#hpy-calculator #hpy-matrix .trans.hpy-year-point span#n8{font-size:18px!important}

#hpy-calculator .hpy-year-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--hpy-summary-gap);margin:22px auto 0;width:550px;max-width:100%;align-items:stretch}
#hpy-calculator .hpy-year-summary.hpy-primary-only{grid-template-columns:minmax(0,1fr);width:280px}
#hpy-calculator .hpy-energy-card{min-height:var(--hpy-summary-card-height);border:1px solid var(--hpy-summary-border);border-radius:var(--hpy-summary-card-radius);padding:13px 12px;text-align:center;background:var(--hpy-summary-bg);color:var(--hpy-summary-text);display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:8px;overflow:visible!important}
#hpy-calculator .hpy-energy-label{display:block!important;visibility:visible!important;opacity:1!important;color:var(--hpy-summary-label)!important;font-size:var(--hpy-summary-label-size)!important;font-weight:600!important;line-height:1.25!important;white-space:normal!important;max-width:100%;min-height:1.25em;margin:0!important;padding:0!important;text-align:center!important}
#hpy-calculator .hpy-energy-card strong{display:block!important;width:var(--hpy-summary-value-size)!important;height:var(--hpy-summary-value-size)!important;min-width:var(--hpy-summary-value-size)!important;min-height:var(--hpy-summary-value-size)!important;border-radius:999px!important;background:var(--hpy-summary-value-bg)!important;color:var(--hpy-summary-value-text)!important;font-size:22px!important;font-weight:800!important;line-height:var(--hpy-summary-value-size)!important;text-align:center!important;vertical-align:middle!important;margin:0!important;padding:0!important;box-shadow:0 5px 16px rgba(0,0,0,.12);overflow:hidden!important}
#hpy-calculator .hpy-energy-total{border-color:var(--hpy-summary-total-border)!important}
#hpy-calculator .hpy-actions{text-align:center;margin-top:22px}
#hpy-calculator .hpy-primary{min-width:260px}
#hpy-calculator .hpy-error{max-width:600px;margin:10px auto 20px;padding:12px 15px;background:#fff0f0;border:1px solid #e5abab;border-radius:10px;color:#8d2020}
#hpy-calculator .hpy-config-warning{display:inline-block;padding:10px 14px;background:#fff8d9;border:1px solid #e3ca6d;border-radius:8px;color:#5d4d12}

@media(max-width:640px){
  #hpy-calculator .hpy-shell{padding:16px 8px}
  #hpy-calculator .hpy-title{font-size:26px}
  #hpy-calculator .hpy-control{width:100%;min-width:0}
  #hpy-calculator .hpy-form .hpy-button{width:100%}
  #hpy-calculator .hpy-chart-capture{padding:12px 4px}
  #hpy-calculator #hpy-matrix .trans span{font-size:10px}
  #hpy-calculator #hpy-matrix span#n1,#hpy-calculator #hpy-matrix span#n2,#hpy-calculator #hpy-matrix span#n3,#hpy-calculator #hpy-matrix span#n4,#hpy-calculator #hpy-matrix span#n5,#hpy-calculator #hpy-matrix span#n6,#hpy-calculator #hpy-matrix span#n7,#hpy-calculator #hpy-matrix span#n8,#hpy-calculator #hpy-matrix span#n30{font-size:18px}
  #hpy-calculator .hpy-year-summary{grid-template-columns:1fr;gap:8px}
  #hpy-calculator .hpy-energy-card{min-height:72px;flex-direction:row!important;justify-content:space-between;padding:10px 14px}
  #hpy-calculator .hpy-energy-label{text-align:left!important;min-height:0}
  #hpy-calculator .hpy-energy-card strong{margin:0!important;flex:0 0 auto}
}
