/* Atlasant Energy — solar simulator. Builds on css/calculadora.css tokens. */
.card{background:#fff;border:1px solid var(--rule);padding:22px;margin-bottom:28px}
.geo{width:100%;display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;border:0;background:var(--navy);color:#fff;font-weight:800;font-size:15.5px;cursor:pointer}
.geo svg{width:22px;height:22px;fill:none;stroke:var(--amber);stroke-width:1.8;stroke-linecap:round}
.geo[disabled]{opacity:.6;cursor:wait}
.or{display:flex;align-items:center;gap:12px;margin:16px 0 10px;font-size:12.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.or::before,.or::after{content:"";flex:1;height:1px;background:var(--rule)}
.search{position:relative}
.search ul{position:absolute;left:0;right:0;top:100%;z-index:20;margin:0;padding:0;list-style:none;background:#fff;border:1.5px solid var(--royal);border-top:0;max-height:300px;overflow:auto;box-shadow:0 18px 30px -18px rgba(7,23,47,.45)}
.search li{padding:12px 14px;cursor:pointer;border-top:1px solid var(--rule);font-size:14.5px}
.search li:first-child{border-top:0}
.search li b{font-weight:800}
.search li span{color:var(--ink-3);font-size:13px}
.search li[aria-selected="true"],.search li:hover{background:var(--ice)}
.search li.none{cursor:default;color:var(--ink-3)}
.place{margin-top:16px;padding:14px 16px;background:var(--ice);border-left:4px solid var(--royal);font-size:14.5px}
.place b{font-weight:800}
.place small{display:block;color:var(--ink-3);margin-top:4px;font-size:12.5px}
.place.wait{border-left-color:var(--ink-3)}
.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:520px){.row2{grid-template-columns:minmax(0,1fr)}}
.tog{display:flex;border:1.5px solid var(--rule)}
.tog button{flex:1;padding:12px;border:0;background:#fff;cursor:pointer;font-weight:700;font-size:14px}
.tog button+button{border-left:1.5px solid var(--rule)}
.tog button[aria-pressed="true"]{background:var(--navy);color:#fff}
.segs button span{line-height:1.25}
.draw{background:linear-gradient(180deg,#F7FAFD,#EAF1F8);border:1px solid var(--rule);padding:18px;display:grid;place-items:center;min-height:220px}
.draw svg{width:100%;max-height:360px;height:auto;display:block}
.months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;align-items:end;height:200px;padding-top:24px}
.months div{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:6px;min-width:0}
.months i{display:block;width:100%;background:linear-gradient(180deg,var(--royal-2),var(--royal));transition:height .7s cubic-bezier(.2,.7,.2,1);position:relative}
.months i.lo{background:linear-gradient(180deg,#FFC24B,#E7A21A)}
.months em{font-style:normal;font-size:10.5px;font-weight:800;color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.months span{font-size:11px;font-weight:700;color:var(--ink-3);text-transform:uppercase}
@media (max-width:520px){.months{gap:3px;height:240px}.months em{writing-mode:vertical-rl;transform:rotate(180deg);font-size:10px}.months span{font-size:9.5px;letter-spacing:-.02em}}
.kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--rule-d);margin-top:18px;border:1px solid var(--rule-d)}
.kpis div{background:var(--navy);padding:14px 14px 12px}
.kpis div.big{grid-column:1/-1;background:#0B2244}
.kpis b{display:block;font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1.05;font-variant-numeric:tabular-nums;color:#fff}
.kpis .big b{font-size:44px;color:var(--teal)}
.kpis span{display:block;font-size:12.5px;color:var(--on-3);margin-top:4px}
.cov{margin-top:16px}
.cov .bar{height:10px;background:rgba(255,255,255,.08);overflow:hidden}
.cov .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),#FFC24B);transition:width .8s}
.cov p{font-size:13.5px;color:var(--on-2);margin-top:8px}
.srcline{margin-top:12px;font-size:12.5px;color:var(--on-3)}
.srcline b{color:var(--on-2)}
.copied{margin-top:10px;font-size:13px;color:var(--teal);text-align:center}
.math p+p{margin-top:6px}
.sizing{margin-top:12px;padding:10px 12px;background:rgba(255,194,75,.1);border-left:3px solid #FFC24B;font-size:13.5px;line-height:1.5;color:var(--on-2)}
.needbox{margin-top:14px;padding:14px 16px;border:1.5px solid #FFC24B;background:rgba(255,194,75,.08)}
.needbox b{display:block;color:#FFC24B;font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}
.needbox p{font-size:14px;line-height:1.55;color:#fff;margin:0}
.needbox p+p{margin-top:8px}
.needbox p:last-child{color:var(--on-2);font-size:13px}
.bom{list-style:none;margin:18px 0 0;padding:0;border-top:1px solid var(--rule)}
.bom li{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:6px 18px;padding:14px 0;border-bottom:1px solid var(--rule);font-size:14.5px;line-height:1.55}
.bom li b{font-weight:800;color:var(--navy)}
.bom li span{color:var(--ink-2)}
.bom li a{color:var(--royal);font-weight:700}
@media (max-width:620px){.bom li{grid-template-columns:minmax(0,1fr)}}
#bh{margin-top:4px}
.head .sub2{margin-top:14px;font-size:clamp(18px,1.7vw,23px);font-weight:700;color:#fff;max-width:56ch}
.draw2w{margin-top:22px;padding-top:18px;border-top:1px solid var(--rule)}
.draw2w .lbl{color:#B57C0E}
