:root{
  font-family:Arial,Helvetica,sans-serif;
  --bg:#101927;--bg2:#142031;--surface:#182536;--surface2:#1d2b3e;
  --line:#2a3b50;--line2:#223247;--text:#edf2f7;--soft:#c1ccd8;--muted:#94a5b7;
  --accent:#6e91bd;--accent2:#86a7cf;--accentSoft:rgba(110,145,189,.16);
  --good:#7fb49e;--warn:#c5a86d;--bad:#c9878e;
  color:var(--text);background:var(--bg)
}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;color:var(--text);background:linear-gradient(180deg,#101927 0%,#142031 44%,#eef2f6 44%,#eef2f6 100%);font:15px/1.55 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
button,input{font:inherit}.calc-topbar{position:sticky;top:0;z-index:100;background:rgba(14,23,36,.95);border-bottom:1px solid rgba(255,255,255,.07);backdrop-filter:blur(10px)}
.calc-topbar-inner{max-width:1180px;margin:auto;padding:14px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{color:#f6f8fb;text-decoration:none;font-weight:700;font-size:.95rem}.calc-topbar nav{display:flex;gap:18px;flex-wrap:wrap}.calc-topbar nav a{color:#adbac8;text-decoration:none;font-size:.88rem}.calc-topbar nav a:hover{color:#fff}
.calc-wrap{max-width:1180px;margin:auto;padding:34px 18px 60px}.calc-hero{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end;margin-bottom:24px}.eyebrow{font-size:.72rem;font-weight:700;letter-spacing:.05em;color:#9ab0ca}.calc-hero h1{font-family:"Times New Roman",Times,serif;color:#f5f7fa;font-size:clamp(2rem,3.7vw,3.45rem);line-height:1.08;margin:10px 0 13px;max-width:850px;font-weight:700}.calc-hero p{color:#acbac8;max-width:760px;line-height:1.68;margin:0;font-size:.95rem}.identity-box{background:rgba(24,37,55,.88);border:1px solid var(--line2);border-radius:14px;padding:14px;min-width:235px}.identity-status{font-size:.8rem;color:#aab7c5;margin-bottom:10px}.identity-box button{width:100%;border:1px solid #3b4f67;background:#1a293b;color:#e7edf4;border-radius:9px;padding:10px 12px;font-weight:600;cursor:pointer}.identity-box button:hover{background:#203248}
.terminal{position:relative;background:var(--bg2);border:1px solid var(--line2);border-radius:20px;overflow:hidden;box-shadow:0 20px 52px rgba(1,8,18,.17)}

/* COMPACT TOOL BOARD: A/B/C/D/E + tools on the same row */
.terminal-tabs{display:block!important;width:100%!important;overflow:hidden!important;padding:12px 16px 14px!important;background:#121e2d!important;border-bottom:1px solid rgba(255,255,255,.055)!important;border-radius:20px 20px 0 0!important}.terminal-tabs::before{content:none!important}
.tool-directory-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:0 0 8px!important;margin:0 0 2px!important;border-bottom:1px solid rgba(255,255,255,.055)!important}.tool-directory-head>div:first-child{display:flex!important;align-items:baseline!important;gap:9px!important;min-width:0!important}.tool-directory-head strong{font-family:"Times New Roman",Times,serif;font-size:1.05rem!important;color:#f2f5f8!important;white-space:nowrap!important}.tool-directory-head span{color:#8798aa!important;font-size:.76rem!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.tool-directory-actions{display:none!important}
.tool-group{display:grid!important;grid-template-columns:170px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;position:relative!important;border-bottom:1px solid rgba(255,255,255,.045)!important;padding:7px 0!important;min-width:0!important}.tool-group:last-child{border-bottom:0!important}
.tool-group-toggle{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;width:100%!important;height:auto!important;border:0!important;background:transparent!important;color:#c9d4df!important;text-align:left!important;padding:7px 8px!important;cursor:default!important;border-radius:7px!important;pointer-events:none!important}.tool-group-toggle::before{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 24px!important;width:24px!important;height:24px!important;border-radius:6px!important;background:#1b2a3d!important;border:1px solid #31465e!important;color:#a9bfd8!important;font-weight:700!important;font-size:.76rem!important}.tool-group:nth-of-type(1) .tool-group-toggle::before{content:"A"}.tool-group:nth-of-type(2) .tool-group-toggle::before{content:"B"}.tool-group:nth-of-type(3) .tool-group-toggle::before{content:"C"}.tool-group:nth-of-type(4) .tool-group-toggle::before{content:"D"}.tool-group:nth-of-type(5) .tool-group-toggle::before{content:"E"}.tool-group-toggle span{font-weight:700!important;font-size:.87rem!important;white-space:normal!important}.tool-group-toggle small,.tool-group-toggle i{display:none!important}
.tool-group-panel{display:grid!important;position:static!important;width:100%!important;min-width:0!important;max-width:none!important;grid-template-columns:repeat(4,minmax(120px,1fr))!important;gap:7px!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}.terminal-tabs .tab{display:flex!important;align-items:center!important;justify-content:center!important;min-height:40px!important;width:100%!important;min-width:0!important;white-space:normal!important;text-align:center!important;border:1px solid #2a3c52!important;background:#192638!important;color:#dce5ee!important;padding:8px 10px!important;border-radius:8px!important;font-weight:600!important;font-size:.84rem!important;line-height:1.2!important;box-shadow:none!important;cursor:pointer!important;transition:background .14s ease,border-color .14s ease!important}.terminal-tabs .tab::before,.terminal-tabs .tab::after{content:none!important;display:none!important}.terminal-tabs .tab:hover{background:#22344a!important;border-color:#49637f!important;color:#fff!important}.terminal-tabs .tab.active{background:var(--accentSoft)!important;border-color:#698db8!important;color:#fff!important;box-shadow:inset 0 -2px 0 var(--accent2)!important}

.calc-panel{display:none;padding:26px;border-top:1px solid rgba(255,255,255,.04)}.calc-panel.active{display:block}.panel-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}.step{display:inline-block;font-size:.69rem;font-weight:700;letter-spacing:.035em;color:#9cb0c9;margin-bottom:7px}.panel-head h2{font-family:"Times New Roman",Times,serif;margin:0;color:#f2f5f8;font-size:1.62rem;font-weight:700}.formula{font-size:.78rem;color:#a5b3c2;border:1px solid var(--line2);background:#162436;border-radius:999px;padding:8px 11px;white-space:nowrap}.why{margin:0 0 18px;background:#162231;border:1px solid rgba(255,255,255,.05);border-radius:13px;padding:13px 15px}.why strong{display:block;color:#e8edf2;font-size:.84rem;margin-bottom:5px}.why p{margin:0;color:#a2b0be;line-height:1.6;font-size:.84rem}.workbench{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);gap:18px}.input-panel,.result-panel{background:var(--surface);border:1px solid rgba(255,255,255,.06);border-radius:16px;padding:19px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.field-grid label{font-size:.79rem;color:#abb8c6;font-weight:600}.field-grid input,.risk-row input{margin-top:7px;width:100%;border:1px solid #34465c;background:#111c2a;color:#f0f4f8;border-radius:9px;padding:12px 13px;font:inherit;font-size:.96rem;outline:none}.field-grid input:focus,.risk-row input:focus{border-color:#6d8fb7;box-shadow:0 0 0 3px rgba(110,145,189,.11)}.calculate{margin-top:17px;width:100%;border:0;border-radius:10px;background:#668bb7;color:#f8fbff;padding:13px 16px;font-weight:700;cursor:pointer}.calculate:hover{background:#7498c1}.validation{min-height:20px;color:#dfa1a6;font-size:.8rem;margin:9px 0 0}.verdict{display:inline-block;border-radius:999px;padding:7px 10px;background:#1c2a3d;border:1px solid #34475d;color:#b7c4d2;font-size:.7rem;font-weight:700}.verdict.good{background:rgba(83,137,116,.15);border-color:rgba(127,180,158,.30);color:#afd3c3}.verdict.warn{background:rgba(151,119,60,.15);border-color:rgba(197,168,109,.30);color:#d6c08e}.verdict.bad{background:rgba(151,77,86,.15);border-color:rgba(201,135,142,.30);color:#dfadb2}.big-number{margin:19px 0 17px}.big-number span{display:block;color:#98a8b9;font-size:.8rem}.big-number strong{font-family:"Times New Roman",Times,serif;display:inline-block;color:#f5f8fb;font-size:clamp(2.05rem,4.6vw,3.65rem);line-height:1.08;margin-top:5px;overflow-wrap:anywhere;font-weight:700}.big-number small{color:#8fa1b3;margin-left:8px}.metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.metric-grid div{background:#121e2e;border:1px solid rgba(255,255,255,.05);border-radius:11px;padding:12px;min-width:0}.metric-grid span{display:block;color:#8799ac;font-size:.72rem}.metric-grid b{display:block;color:#e8edf3;margin-top:5px;font-size:1rem;font-weight:600;overflow-wrap:anywhere}.nba{margin-top:15px;background:#142133;border-left:3px solid #708fb5;border-radius:9px;padding:13px 14px}.nba span{color:#9fb2ca;font-size:.69rem;font-weight:700}.nba p{color:#ccd5df;margin:6px 0 0;line-height:1.58;font-size:.86rem}.scenario-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}.scenario-strip div{background:#142133;border-radius:9px;padding:10px;text-align:center}.scenario-strip span{display:block;color:#8597aa;font-size:.71rem}.scenario-strip b{color:#e7edf3}.risk-table{margin-top:16px;display:grid;gap:8px}.risk-head,.risk-row{display:grid;grid-template-columns:.8fr 1.25fr 1fr;gap:8px;align-items:center}.risk-head{color:#8395a8;font-size:.71rem;font-weight:600;padding:0 3px}.risk-row input{margin-top:0}.principle{margin-top:18px;background:#fff;border:1px solid #dfe5ec;color:#58677a;border-radius:14px;padding:14px 16px;line-height:1.58;font-size:.87rem}.principle strong{color:#263547}
@media(max-width:900px){.calc-hero{grid-template-columns:1fr}.identity-box{max-width:320px}.workbench{grid-template-columns:1fr}.tool-group{grid-template-columns:145px minmax(0,1fr)!important}.tool-group-panel{grid-template-columns:repeat(2,minmax(120px,1fr))!important}}
@media(max-width:640px){.calc-topbar-inner{align-items:flex-start;flex-direction:column}.calc-wrap{padding:24px 12px 44px}.calc-panel{padding:15px}.panel-head{flex-direction:column}.formula{white-space:normal}.field-grid,.metric-grid{grid-template-columns:1fr}.input-panel,.result-panel{padding:15px}.scenario-strip{grid-template-columns:repeat(3,1fr)}.calc-hero h1{font-size:2.15rem}.risk-head,.risk-row{grid-template-columns:.7fr 1.2fr .9fr}.risk-row input{padding:10px 8px;font-size:.92rem}.terminal-tabs{padding:10px 11px 12px!important}.tool-directory-head{display:block!important}.tool-directory-head span{display:none!important}.tool-group{grid-template-columns:1fr!important;gap:4px!important;padding:6px 0!important}.tool-group-toggle{padding:3px 2px!important}.tool-group-toggle::before{flex-basis:21px!important;width:21px!important;height:21px!important;font-size:.7rem!important}.tool-group-toggle span{font-size:.8rem!important}.tool-group-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.terminal-tabs .tab{min-height:38px!important;font-size:.8rem!important;padding:7px 7px!important}}

/* HOVER STABILITY: keep floating menus reachable while the pointer moves from trigger to panel */
@media (hover:hover) and (pointer:fine){
  .tool-group{z-index:1}
  .tool-group:hover,.tool-group:focus-within,.tool-group.open{z-index:500}
  .tool-group::after{content:"";position:absolute;left:0;right:0;top:100%;height:16px;background:transparent;pointer-events:auto}
  .tool-group-panel{pointer-events:auto!important}
  .tool-group:hover>.tool-group-panel,.tool-group:focus-within>.tool-group-panel,.tool-group.open>.tool-group-panel{pointer-events:auto!important}
}
