/* ===== EV calculator set into the felt (embossed, no gold) ===== */
.evf-root{position:fixed;inset:0;z-index:30;opacity:0;pointer-events:none;transition:opacity .4s ease}
.evf-root[hidden]{display:none}
.evf-root.ready{opacity:1;pointer-events:auto}
.evf{--ink:#eef5f0;--label:#a9cdbf;--line:rgba(176,228,208,.24);--hi:#4cc9a0;
  --noise:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' seed='5'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .2 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  position:absolute;inset:0;padding:78px clamp(18px,5vw,90px) 16px;display:flex;flex-direction:column;gap:14px;color:var(--ink)}
.evf .glass{background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.02)),rgba(4,36,27,.9);border:1px solid rgba(0,0,0,.45);color:#e8f2ec;border-radius:9px;padding:7px 14px;font:600 12px var(--font);
  box-shadow:0 2px 0 rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.16);transition:transform .08s,box-shadow .08s,background .15s}
.evf .glass:hover{border-color:rgba(176,228,208,.5);background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.04)),rgba(8,52,39,.95)}
.evf .glass:active{transform:translateY(2px);box-shadow:inset 0 3px 7px rgba(0,0,0,.65),0 1px 0 rgba(255,255,255,.08)}
.evf-head{display:flex;align-items:center;gap:14px}
.evf-head .grow{flex:1}
.evf-title b{display:block;font:700 12.5px var(--font);letter-spacing:.3em;color:var(--label);text-shadow:0 1px 0 rgba(0,0,0,.65),0 -1px 0 rgba(255,255,255,.1)}
.evf-title span{display:block;font-size:12px;color:#c4d6cc;margin-top:2px}
.evf-status{display:flex;gap:7px;align-items:center;font-size:11px;color:#b3c8bd}
.evf-status .dot{width:7px;height:7px;border-radius:50%;background:var(--hi);display:inline-block}
.evf-status.busy .dot{background:#e0b25f;animation:pulse 1s infinite}

/* carved panels */
.evf-h,.evf-card,.evf-dock,.evf-setup,.evf-drawer{
  background:var(--noise),linear-gradient(180deg,rgba(0,16,11,.5),rgba(3,40,30,.34));
  border:1px solid rgba(0,0,0,.35);
  box-shadow:inset 0 3px 9px rgba(0,0,0,.6),inset 0 -1px 0 rgba(255,255,255,.05),0 1px 0 rgba(255,255,255,.09),0 -1px 0 rgba(0,0,0,.35)}
.evf-h,.evf-card,.evf-dock,.evf-setup{position:relative;border-radius:16px}
.evf-h:after,.evf-card:after,.evf-dock:after,.evf-setup:after{content:"";position:absolute;inset:5px;border:1px dashed var(--line);border-radius:12px;pointer-events:none}

/* main: headline numbers (left) + chart (right) */
.evf-main{flex:1;min-height:0;display:grid;grid-template-columns:minmax(330px,.8fr) 1.7fr;gap:16px}
.evf-left{display:flex;flex-direction:column;gap:10px;min-height:0;overflow:auto}
.evf-hero{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.evf-h{padding:10px 16px 11px}
.evf-h.big{grid-column:1/-1;padding:12px 18px 13px}
.evf-h label{display:block;font:600 10.5px var(--font);letter-spacing:.22em;text-transform:uppercase;color:var(--label);text-shadow:0 1px 0 rgba(0,0,0,.65),0 -1px 0 rgba(255,255,255,.1)}
.evf-h b{display:block;font-size:32px;font-weight:700;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--ink);text-shadow:0 2px 1px rgba(0,0,0,.6),0 -1px 0 rgba(255,255,255,.14)}
.evf-h.big b{font-size:52px}
.evf-h.pos b{color:#a6f5d2}.evf-h.neg b{color:#ffadb4}
.evf-h small{display:block;font-size:11.5px;color:#b3c8bd;margin-top:1px}
.evf-sec{display:flex;flex-direction:column;gap:6px;padding:2px 6px}
.evf-sec>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(0,0,0,.35);box-shadow:0 1px 0 rgba(255,255,255,.06);padding-bottom:5px}
.evf-sec label{font-size:11.5px;color:#b3c8bd}.evf-sec b{font-size:14px;font-variant-numeric:tabular-nums}
.evf-setup{padding:12px 16px}
.evf-row{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:7px 0}
.evf-row label,.evf-setup .field label{font-size:12px;color:#cfe0d6;font-weight:600}
.evf-setup .field{margin:7px 0;grid-template-columns:1fr auto}.evf-setup .hint{display:none}
.evf-setup select{max-width:190px}
.evf-setup input[type=number]{width:96px}
.evf-note{font-size:11px;color:#a9bdb2;margin:4px 0}

/* chart */
.evf-card{padding:13px 17px;display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}
.evf-card h3{margin:0;font:600 11px var(--font);letter-spacing:.22em;text-transform:uppercase;color:var(--label);text-shadow:0 1px 0 rgba(0,0,0,.65),0 -1px 0 rgba(255,255,255,.1)}
.evf-card .row{flex-wrap:nowrap}.evf-card .range{width:130px}
.evf .legend{color:#b3c8bd}
.evf .range{accent-color:#7ad4b4}

/* bottom pop-up menu */
.evf-bottom{position:relative}
.evf-dock{display:flex;align-items:center;gap:14px;padding:9px 14px;flex-wrap:wrap}
.evf-docklabel{font:600 10.5px var(--font);letter-spacing:.2em;text-transform:uppercase;color:var(--label)}
.evf-tabs{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.evf-sep{width:1px;height:20px;background:var(--line);margin:0 4px}
.evf-tab,.evf .chip{background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.02)),rgba(4,36,27,.9);border:1px solid rgba(0,0,0,.45);box-shadow:0 2px 0 rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.16);color:#e3eee7;border-radius:9px;padding:7px 13px;font:600 12px var(--font);cursor:pointer;transition:transform .08s,box-shadow .08s,background .15s}
.evf .chip{padding:3px 10px;border-radius:7px;font-size:11.5px}
.evf-tab:hover,.evf .chip:hover{border-color:rgba(176,228,208,.5)}
.evf-tab:active,.evf-tab.on,.evf .chip.on{transform:translateY(2px);box-shadow:inset 0 3px 7px rgba(0,0,0,.65),0 1px 0 rgba(255,255,255,.08);background:rgba(2,20,15,.92);color:#fff;border-color:rgba(176,228,208,.45)}
.evf-drawer{position:absolute;left:0;right:0;bottom:calc(100% + 12px);border-radius:16px;padding:14px 20px 18px;max-height:calc(100vh - 170px);min-height:120px;overflow:hidden;display:flex;flex-direction:column;
  background:var(--noise),linear-gradient(180deg,#03221a,#02170f)!important;border:1px solid var(--line);
  opacity:0;transform:translateY(16px);pointer-events:none;transition:opacity .22s,transform .28s cubic-bezier(.2,.8,.3,1);box-shadow:0 -24px 70px rgba(0,0,0,.5),inset 0 3px 9px rgba(0,0,0,.5)}
.evf-drawer.open{opacity:1;transform:none;pointer-events:auto}
.evf-drawerhead{display:flex;align-items:center;gap:14px;margin-bottom:10px;flex:none}
.evf-drawerhead b{display:block;font-size:17px;color:var(--ink)}
.evf-drawerhead span{display:block;font-size:12px;color:#a9bdb2}
.evf-drawerbody{overflow:auto;flex:1;min-height:0;padding-right:4px}
.mini3{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:2px 26px}
.mini3 .field{margin:6px 0;grid-template-columns:1fr auto}.mini3 .field label{font-size:12.5px;color:#d6e4db;font-weight:500}.mini3 .hint{display:none}
.mini3 .sl .evf-note{margin:2px 0 4px}
.evf input[type=number],.evf select{background:rgba(0,10,7,.55);border:1px solid rgba(0,0,0,.5);box-shadow:inset 0 2px 5px rgba(0,0,0,.65),0 1px 0 rgba(255,255,255,.08);color:#eef5f0;border-radius:7px}
.mini3 input[type=number]{width:92px}.mini3 select{max-width:210px}
.evf .link{color:#9fd8f5;background:none;border:0;cursor:pointer;padding:8px 0 0;font:inherit;font-size:12.5px}
.evf .sessnote{color:#b6f5dc;background:rgba(76,201,160,.08);border:1px solid rgba(76,201,160,.3);border-radius:8px;padding:6px 10px;margin-bottom:8px;font-size:12px}
.spread10{display:grid;grid-template-columns:repeat(10,1fr);gap:6px}
.spread10 div{text-align:center;min-width:0}.spread10 label{display:block;font-size:10.5px;color:#a9bdb2}
.spread10 input{width:100%!important;text-align:center;padding:6px 0;font-size:14px}
.spread10 small{display:block;font-size:10.5px;color:#a9bdb2;margin-top:2px}
/* detailed tools rendered inside the pop-up share the felt palette */
.evf-drawer .card,.evf-drawer .kpi{background:var(--noise),rgba(0,14,10,.45);border:1px solid rgba(0,0,0,.4);box-shadow:inset 0 2px 7px rgba(0,0,0,.5),0 1px 0 rgba(255,255,255,.07)}
.evf-drawer .card h3{color:var(--label)}
.evf-drawer .btn{background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.02)),rgba(4,36,27,.9);border:1px solid rgba(0,0,0,.45);color:#e8f2ec}
.evf-drawer .btn.primary{background:linear-gradient(180deg,#63e3b9,#30b186);color:#03211a}
.evf-drawer table.t th{color:var(--label)}
.evf-drawer .preset{background:rgba(0,14,10,.5);border-color:rgba(176,228,208,.2)}
@media (max-width:1000px){.evf{overflow:auto}.evf-main{grid-template-columns:1fr}.evf-h b{font-size:28px}}
