/* Free Light — системийн тооцоолуур.
 * freelight.mn-ийн анхны тооцоолуурын CSS-ийг өөрчлөлтгүй шилжүүлэв.
 * (Өнгөний хувьсагчдыг style.css-ийн :root-оос авна.) */
/* ================= CALCULATOR (dark tool embed) ================= */
.calc-shell{background:var(--dark);border-radius:24px;padding:2px;overflow:hidden;position:relative;}
.calc-shell::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--brand-grad);}
.calc-inner{padding:44px 40px 46px;color:var(--dark-text);}
@media (max-width:640px){.calc-inner{padding:30px 20px 32px;}}
.calc-head{text-align:center;max-width:560px;margin:0 auto 34px;}
.calc-head .eyebrow{color:var(--brand-1);}
.calc-head h2{color:var(--dark-text);margin:0 0 12px;}
.calc-head p{color:var(--dark-muted);font-size:14.5px;margin:0;}

.calc-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:26px;align-items:start;}
@media (max-width:920px){.calc-layout{grid-template-columns:1fr;}}

.ccard{background:linear-gradient(180deg,var(--dark-2),#122336);border:1px solid var(--dark-border);
  border-radius:16px;padding:22px 22px 24px;margin-bottom:20px;}
.ccard-title{font-family:'Golos Text';font-weight:700;font-size:15.5px;display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.cstep{font-family:'IBM Plex Mono';font-size:11.5px;color:#1a1103;background:var(--brand-1);width:21px;height:21px;
  border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;}
.chint{color:var(--dark-dim);font-size:12.5px;margin:0 0 16px;}

.pill-toggle{display:flex;gap:6px;background:var(--dark-field);padding:4px;border-radius:10px;border:1px solid var(--dark-border);width:fit-content;margin-bottom:16px;}
.pill-toggle button{border:none;background:transparent;color:var(--dark-muted);padding:8px 13px;border-radius:8px;
  font-family:'Inter';font-size:13px;font-weight:600;cursor:pointer;}
.pill-toggle button.active{background:var(--brand-1);color:#1a1103;}

.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
.chip{border:1px solid var(--dark-border-strong);background:var(--dark-field);color:var(--dark-text);
  padding:6px 11px;border-radius:999px;font-size:12.5px;cursor:pointer;display:flex;align-items:center;gap:6px;}
.chip:hover{border-color:var(--brand-1);color:var(--brand-1);}
.chip .w{color:var(--dark-dim);font-family:'IBM Plex Mono';font-size:11px;}

table.app-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:8px;}
table.app-table th{text-align:left;color:var(--dark-dim);font-weight:600;font-size:11px;text-transform:uppercase;
  letter-spacing:.05em;padding:0 6px 8px;border-bottom:1px solid var(--dark-border);}
table.app-table td{padding:6px 6px;border-bottom:1px solid var(--dark-border);}
table.app-table input{width:100%;background:var(--dark-field);border:1px solid var(--dark-border);border-radius:7px;
  color:var(--dark-text);padding:6px 7px;font-family:'Inter';font-size:13px;}
table.app-table input.num{font-family:'IBM Plex Mono';text-align:right;}
table.app-table .kwh-col{font-family:'IBM Plex Mono';color:var(--brand-1);white-space:nowrap;text-align:right;}
.row-del{background:none;border:none;color:var(--dark-dim);cursor:pointer;font-size:15px;}
.row-del:hover{color:var(--red);}
.add-row-btn{background:none;border:1px dashed var(--dark-border-strong);color:var(--dark-muted);padding:8px 13px;
  border-radius:9px;font-size:12.5px;cursor:pointer;width:100%;}
.add-row-btn:hover{border-color:var(--green);color:var(--green);}

.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
@media (max-width:520px){.field-grid{grid-template-columns:1fr;}}
.field{margin-bottom:12px;}
.field label{display:block;font-size:12px;color:var(--dark-muted);margin-bottom:6px;font-weight:600;}
.field .unit-note{color:var(--dark-dim);font-size:11px;font-weight:400;margin-left:4px;}
.field input[type=number],.field input[type=text],.field select{width:100%;background:var(--dark-field);
  border:1px solid var(--dark-border);border-radius:9px;color:var(--dark-text);padding:9px 11px;
  font-family:'IBM Plex Mono';font-size:13.5px;}
.field select{font-family:'Inter';font-weight:500;}
.field input:focus,.field select:focus{outline:none;border-color:var(--brand-1);}
.radio-row{display:flex;gap:9px;flex-wrap:wrap;}
.radio-card{flex:1;min-width:130px;border:1px solid var(--dark-border);background:var(--dark-field);border-radius:10px;
  padding:10px 11px;cursor:pointer;font-size:13px;}
.radio-card.active{border-color:var(--brand-1);background:rgba(247,172,33,0.10);}
.radio-card .rt{font-weight:700;display:block;margin-bottom:2px;}
.radio-card .rd{color:var(--dark-dim);font-size:11px;}

details.adv{margin-top:4px;}
details.adv summary{cursor:pointer;color:var(--dark-muted);font-size:12.5px;font-weight:600;list-style:none;display:flex;align-items:center;gap:6px;}
details.adv summary::-webkit-details-marker{display:none;}
details.adv summary::before{content:"▸";color:var(--brand-1);}
details.adv[open] summary::before{transform:rotate(90deg);display:inline-block;}
details.adv .field-grid{margin-top:12px;}

.warn-box{display:none;background:rgba(214,40,40,0.12);border:1px solid rgba(214,40,40,0.35);color:#f6c9c5;
  border-radius:10px;padding:9px 13px;font-size:12.5px;margin-top:10px;}
.warn-box.show{display:block;}

.readout{background:linear-gradient(165deg,#0d2135,#0a1723 70%);border:1px solid var(--dark-border-strong);
  border-radius:16px;padding:4px;position:sticky;top:100px;}
.readout-strip{height:4px;border-radius:3px 3px 0 0;margin:0 0 2px;background:linear-gradient(90deg,var(--green),var(--brand-1) 55%,#fbd08a);}
.readout-inner{padding:20px 20px 22px;}
.readout-label{font-family:'IBM Plex Mono';font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--dark-dim);margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;}
.live-dot{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 8px 2px rgba(28,138,67,0.35);animation:pulse 2s infinite;}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:.35;}}

.metric-block{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:9px;}
.metric{background:var(--dark-field);border:1px solid var(--dark-border);border-radius:12px;padding:13px 13px 11px;}
.metric.full{grid-column:1/-1;}
.metric .m-label{font-size:11px;color:var(--dark-muted);margin-bottom:6px;display:flex;align-items:center;gap:6px;font-weight:600;}
.metric .m-value{font-family:'IBM Plex Mono';font-weight:700;font-size:24px;color:var(--brand-1);line-height:1;}
.metric .m-value small{font-size:12px;color:var(--dark-muted);font-weight:500;margin-left:4px;}
.metric .m-sub{font-size:11px;color:var(--dark-dim);margin-top:6px;font-family:'IBM Plex Mono';}
.metric.accent-green .m-value{color:var(--green);}
.metric.dim .m-value{color:var(--dark-dim);font-size:17px;}

.divider-label{font-family:'IBM Plex Mono';font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--dark-dim);
  margin:16px 0 9px;padding-top:12px;border-top:1px solid var(--dark-border);}
.cost-line{display:flex;justify-content:space-between;font-size:13px;padding:5px 0;border-bottom:1px dashed var(--dark-border);color:var(--dark-muted);}
.cost-line span:last-child{color:var(--dark-text);font-family:'IBM Plex Mono';font-weight:600;}
.cost-total{display:flex;justify-content:space-between;padding-top:9px;margin-top:2px;font-size:14.5px;font-weight:700;}
.cost-total span:last-child{font-family:'IBM Plex Mono';color:var(--brand-1);font-size:18px;}
.eco-row{display:flex;gap:9px;margin-top:12px;}
.eco-chip{flex:1;background:var(--green-soft);border:1px solid rgba(28,138,67,0.35);border-radius:10px;padding:9px 10px;text-align:center;}
.eco-chip .ev{font-family:'IBM Plex Mono';font-weight:700;font-size:15px;color:var(--green);}
.eco-chip .el{font-size:10px;color:var(--dark-muted);margin-top:2px;}
.calc-foot{color:var(--dark-dim);font-size:11.5px;margin-top:20px;text-align:center;line-height:1.6;}
