
:root{
  --bg:#ffffff;
  --panel:#ffffff;
  --text:#0b1220;
  --muted:#55657a;
  --border:rgba(8,50,88,.12);
  --shadow:0 12px 40px rgba(3,23,40,.08);
  --brand:#0299e0;
  --brand2:#083258;
  --chip:rgba(2,153,224,.10);
  --focus:0 0 0 3px rgba(2,153,224,.25);
  --danger:#e03b3b;
  --success:#1e9e62;
  --warn:#f4b400;
  --card:#ffffff;
}

/* Portfolio Health gauge */
.hhc-health-gauge{
  width: 170px;
  height: 170px;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: conic-gradient(#1e9e62 0deg, #1e9e62 0deg, rgba(255,255,255,0.06) 0deg 360deg);
  position: relative;
}
.hhc-health-gauge__inner{
  width: 132px;
  height: 132px;
  border-radius: 999px;
  background: var(--panel);
  border: 1px solid var(--border);
  display: grid;
  place-items: center;
  text-align: center;
}
.hhc-health-score{
  font-weight: 900;
  font-size: 34px;
  line-height: 1;
}
.hhc-health-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 10px;
  border-radius: 999px;
  border: 1px solid var(--border);
  background: rgba(255,255,255,0.03);
  font-size: 12px;
}
.hhc-health-bar{
  height: 8px;
  border-radius: 999px;
  background: rgba(255,255,255,0.08);
  overflow:hidden;
}
.hhc-health-bar > span{
  display:block;
  height:100%;
  width:0%;
  background: #2d9cdb;
}

/* --- Heatmap --- */
.hhc-heatmap-box{
  margin-top: 6px;
  border: 1px solid var(--border);
  background: var(--panel);
  border-radius: 14px;
  padding: 12px;
  max-height: 520px;
  overflow: auto;
}

.hhc-treemap{
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  grid-auto-rows: 74px;
  gap: 10px;
}

.hhc-heat-tile{
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 10px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-width: 0;
  overflow:hidden; /* prevent text from spilling outside tiles */
}

.hhc-heat-tile .t1{font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hhc-heat-tile .t2{font-size:12px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hhc-heat-tile .t3{font-size:12px;opacity:.9;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.hhc-heat-table{width:100%;border-collapse:collapse;min-width:680px}
.hhc-heat-table th,.hhc-heat-table td{border-bottom:1px solid var(--border);padding:10px 8px;font-size:13px;text-align:left}
.hhc-heat-table th{position:sticky;top:0;background:var(--panel);z-index:2}
.hhc-heat-cell{border-radius:10px;padding:6px 8px;display:inline-block;min-width:72px;text-align:right;font-variant-numeric:tabular-nums}
.hhc-heat-coin{display:flex;align-items:center;gap:10px;min-width:0}
.hhc-heat-coin .nm{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hhc-heat-coin .sy{font-size:12px;opacity:.8}
[data-theme="dark"]{
  --bg:#031728;
  --panel:rgba(255,255,255,.04);
  --card:rgba(255,255,255,.05);
  --text:#ffffff;
  --muted:rgba(255,255,255,.72);
  --border:rgba(255,255,255,.10);
  --shadow:0 18px 60px rgba(0,0,0,.45);
  --chip:rgba(2,153,224,.16);
  --focus:0 0 0 3px rgba(2,153,224,.30);
}
*{box-sizing:border-box}
html,body{overflow-x:hidden;
  height:100%}
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: radial-gradient(1200px 600px at 20% -10%, rgba(2,153,224,.18), transparent 60%),
              radial-gradient(900px 500px at 110% 10%, rgba(8,50,88,.20), transparent 55%),
              var(--bg);
  color:var(--text);
}
a{color:inherit; text-decoration:none}
.container{max-width:1200px; margin:0 auto; padding:0 20px}
.btn{
  display:inline-flex; align-items:center; gap:10px;
  padding:12px 14px; border-radius:14px;
  border:1px solid var(--border); background:var(--card);
  color:var(--text); cursor:pointer; font-weight:600;
  box-shadow: 0 8px 24px rgba(0,0,0,.05);
}
.btn:hover{transform:translateY(-1px)}
.btn:focus{outline:none; box-shadow:var(--focus)}
.btn.primary{background:linear-gradient(90deg,var(--brand),var(--brand2)); border:0; color:white}
.btn.ghost{background:transparent; box-shadow:none}
.btn.small{padding:10px 12px; border-radius:12px; font-weight:600}
.pill{display:inline-flex; align-items:center; gap:8px; padding:8px 10px; border-radius:999px; background:var(--chip); border:1px solid var(--border); color:var(--text); font-weight:600; font-size:13px}
.pill.pill-plain{background:transparent !important; border-color:transparent !important; box-shadow:none !important;}


/* Pills: hover + active states */
.pill{transition:background .15s ease, border-color .15s ease, color .15s ease}
.pill:hover{background:rgba(2,153,224,.16)}
/* Analytics main tabs: active red */
[data-analytics-nav].pill.active{background:var(--danger); border-color:var(--danger); color:#fff}
[data-analytics-nav].pill.active:hover{background:var(--danger)}
/* Heatmap + Fees sub-tabs: active green */
[data-heatmap-nav].pill.active, [data-fees-nav].pill.active{background:var(--success); border-color:var(--success); color:#fff}
[data-heatmap-nav].pill.active:hover, [data-fees-nav].pill.active:hover{background:var(--success)}

.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:20px;
  box-shadow:var(--shadow);
}
.input, select, textarea{
  width:100%;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid var(--border);
  background:var(--panel);
  color:var(--text);
}
.input:focus, select:focus, textarea:focus{
  outline:none; box-shadow:var(--focus); border-color:rgba(2,153,224,.55)
}
.label{font-weight:700; font-size:13px; color:var(--muted); margin-bottom:6px}
.h1{font-size:44px; letter-spacing:-.03em; line-height:1.05}
.h2{font-size:26px; letter-spacing:-.02em}
.muted{color:var(--muted)}

/* Wallet type dropdown with icons (onboarding modal) */
.wallet-dd{ position:relative; }
.wallet-dd__btn{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:12px 12px;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--panel);
  color:var(--text);
  cursor:pointer;
}
.wallet-dd__btn:focus{ outline:none; box-shadow: var(--focus); }
.wallet-dd__btn_left{ display:flex; align-items:center; gap:10px; min-width:0; }
.wallet-dd__icon{ width:20px; height:20px; border-radius:6px; flex:0 0 auto; }
.wallet-dd__caret{ color: var(--muted); font-size:14px; }
.wallet-dd__menu{
  position:absolute;
  top: calc(100% + 8px);
  left:0;
  right:0;
  z-index: 50;
  background: var(--panel);
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow: var(--shadow);
  padding:6px;
  max-height: 280px;
  overflow:auto;
  display:none;
}
.wallet-dd.open .wallet-dd__menu{ display:block; }
.wallet-dd__item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 10px;
  border-radius:12px;
  cursor:pointer;
}
.wallet-dd__item:hover{ background: rgba(2,153,224,.08); }
.wallet-dd__item:focus{ outline:none; background: rgba(2,153,224,.10); }
.wallet-dd__name{ font-weight:700; font-size:14px; }

.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.charts-grid canvas, [id^="hhc_"]{display:block; width:100% !important; max-width:100% !important;}
@media(max-width:900px){.charts-grid{grid-template-columns:1fr}}
.grid{display:grid; gap:16px}
.row{display:flex; gap:16px; align-items:center}
.spread{display:flex; align-items:center; justify-content:space-between; gap:12px}
.hr{height:1px; background:var(--border); margin:18px 0}
.kbd{font-size:12px; padding:4px 8px; border-radius:10px; border:1px solid var(--border); background:var(--panel); color:var(--muted)}
.badge{font-size:12px; padding:6px 10px; border-radius:999px; border:1px solid var(--border); background:var(--panel); color:var(--muted); font-weight:700}

/* Modal */
.modal-backdrop{
  position:fixed; inset:0; background:rgba(0,0,0,.55);
  display:none; align-items:center; justify-content:center; padding:24px; z-index:50;
}
.modal{max-width:520px; width:100%; padding:18px; border-radius:22px; background:var(--bg); border:1px solid var(--border); box-shadow:var(--shadow)}
.modal.large{max-width:840px}
.modal.scroll-y{max-height:80vh; overflow:auto}
.modal .title{font-size:18px; font-weight:800}
.modal .subtitle{font-size:13px; color:var(--muted); margin-top:6px}
.modal .close{cursor:pointer; border:1px solid var(--border); background:var(--panel); border-radius:14px; padding:8px 10px}
.modal-open{display:flex}

/* Header / Sidebar / Layout */
.app{
  display:grid;
  grid-template-columns: 88px 1fr;
  min-height:100vh;
}
.sidebar{
  position:sticky; top:0; height:100vh;
  padding:14px 10px;
  border-right:1px solid var(--border);
  background:linear-gradient(180deg, rgba(255,255,255,.03), transparent);
}
.nav-item{
  width:100%;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:6px;
  padding:10px 6px;
  border-radius:18px;
  border:1px solid transparent;
  color:var(--muted);
  cursor:pointer;
  user-select:none;
}
.nav-item .icon{width:22px; height:22px; opacity:.9}
.nav-item .txt{font-size:11px; font-weight:700; letter-spacing:.01em}
.nav-item.active{
  background:var(--chip);
  border-color:rgba(2,153,224,.25);
  color:var(--text);
}
.nav-item.active .icon{filter:none}
.main{
  padding:16px 18px;
}
.header{
  position:sticky; top:0; z-index:20;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:22px;
  background:rgba(255,255,255,.65);
  backdrop-filter: blur(12px);
}
[data-theme="dark"] .header{background:rgba(3,23,40,.65)}
.header .left, .header .right{display:flex; align-items:center; gap:10px}
.logo-wrap{display:flex; align-items:center; gap:10px}
.logo{width:140px; height:auto}
.toplink{padding:7px 10px; border-radius:12px; border:1px solid transparent; color:var(--muted); font-weight:800; font-size:13px; line-height:1.1}
.toplink.active, .toplink:hover{border-color:var(--border); background:var(--panel); color:var(--text)}

/* Header quick-action links (Portfolio tracker / Calculator / Converter) */
.toplink.toplink-blue{background: rgba(2,153,224,.16); color: var(--text); border-color: rgba(2,153,224,.18);}
.toplink-darkblue{background: rgba(0,70,140,.22); color: var(--text); border-color: rgba(0,70,140,.24);}
.toplink.toplink-darkblue:hover{background: rgba(0,70,140,.32);}
.toplink.toplink-darkblue.active{background: rgba(0,70,140,.22); border-color: rgba(0,70,140,.24); color: var(--text);}
.toplink.toplink-green{background: rgba(30,158,98,.16); color: var(--text); border-color: rgba(30,158,98,.18);}
.toplink.toplink-blue.active{background: rgba(2,153,224,.16); border-color: rgba(2,153,224,.18); color: var(--text);}
.toplink.toplink-green.active{background: rgba(30,158,98,.16); border-color: rgba(30,158,98,.18); color: var(--text);}
.toplink.toplink-blue:hover{background: rgba(2,153,224,.26);}
.toplink.toplink-green:hover{background: rgba(30,158,98,.26);}
/* Active state for calculator/converter should be red */
.toplink.toplink-red-active.active{background: rgba(224,59,59,.18) !important; border-color: rgba(224,59,59,.28) !important; color: var(--text) !important;}
.iconbtn{
  width:42px; height:42px; border-radius:14px;
  border:1px solid var(--border);
  background:var(--panel);
  display:grid; place-items:center;
  cursor:pointer;
}
.iconbtn:focus{outline:none; box-shadow:var(--focus)}
.dropdown{
  position:absolute; top:56px; right:14px;
  width:320px;
  background:var(--bg);
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow:var(--shadow);
  display:none;
  overflow:hidden;
}
.dropdown.wide{width:420px}


/* Settings menu remains a normal header dropdown; Theme/Lang/Currency open in the left preference drawer. */
#dd_settings{width:320px;max-width:min(320px,calc(100vw - 24px));}


.portfolio-drawer{
  position:fixed;
  top:var(--hhc-portfolio-top, 84px);
  right:var(--hhc-portfolio-right, 0px);
  width:min(var(--hhc-portfolio-width, 500px), calc(100vw - var(--hhc-portfolio-right, 0px) - 12px));
  height:calc(100vh - var(--hhc-portfolio-top, 84px));
  max-height:calc(100vh - var(--hhc-portfolio-top, 84px));
  border-radius:0;
  display:none;
  z-index:1200;
  background:var(--bg);
  box-shadow:-18px 0 36px rgba(15,23,42,.14), -1px 0 0 rgba(148,163,184,.16);
}
.portfolio-drawer-top{
  padding:0 10px 0;
  border-bottom:1px solid var(--border);
}
.portfolio-drawer-summary{
  padding:10px 14px 10px;
  border-bottom:1px solid var(--border);
  display:grid;
  gap:10px;
  background:linear-gradient(180deg, rgba(59,130,246,.08), rgba(255,255,255,0));
}
.portfolio-summary-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:12px;
  color:var(--muted);
}
.portfolio-summary-item b{
  font-size:14px;
  color:var(--text);
  font-weight:900;
  white-space:nowrap;
}
.portfolio-drawer-list{
  flex:1;
  min-height:0;
  padding:4px 0 0;
}
.portfolio-drawer-actions{
  border-top:1px solid var(--border);
  padding:6px 10px 8px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:8px;
  background:var(--bg);
  margin-top:-2px;
}
.portfolio-action-btn{
  width:100%;
  display:flex;
  align-items:center;
  gap:8px;
  border:1px solid var(--border);
  background:var(--panel);
  color:var(--text);
  border-radius:12px;
  padding:8px 10px;
  cursor:pointer;
  text-align:left;
  min-width:0;
}
.portfolio-action-btn:hover{ filter:brightness(.98); }
.portfolio-action-icon{
  width:28px;
  height:28px;
  border-radius:11px;
  display:grid;
  place-items:center;
  border:1px solid var(--border);
  background:var(--chip);
  flex:0 0 auto;
}
.portfolio-action-text{ display:flex; flex-direction:column; min-width:0; }
.portfolio-action-text .t{ font-weight:900; font-size:12px; line-height:1.1; }
.portfolio-action-text .s{ font-size:10px; color:var(--muted); line-height:1.12; }
#dd_portfolios{ display:none; flex-direction:column; }
#dd_portfolios .dd-scroll{ max-height:none; }

.hhc-coin-picker{ position:relative; }
.hhc-coin-picker-trigger{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  text-align:left;
  cursor:pointer;
}
.hhc-coin-picker-trigger-main{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.hhc-coin-picker-trigger-main span:last-child{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hhc-coin-picker-chevron{ color:var(--muted); font-size:12px; }
.hhc-coin-picker-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:90;
  background:var(--bg);
  border:1px solid var(--border);
  border-radius:16px;
  box-shadow:var(--shadow);
  overflow:hidden;
  display:none;
}
.hhc-coin-picker.open .hhc-coin-picker-menu{ display:block; }
.hhc-coin-picker-search-wrap{ padding:10px; border-bottom:1px solid var(--border); }
.hhc-coin-picker-search{ width:100%; }
.hhc-coin-picker-list{ max-height:260px; overflow:auto; }
.hhc-coin-option{
  width:100%;
  border:0;
  background:transparent;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  cursor:pointer;
  text-align:left;
}
.hhc-coin-option:hover,
.hhc-coin-option.active{ background:var(--panel); }
.hhc-coin-option-main{ display:flex; align-items:center; gap:10px; min-width:0; }
.hhc-coin-option-main img{ width:22px; height:22px; border-radius:999px; flex:0 0 auto; }
.hhc-coin-option-meta{ min-width:0; display:flex; flex-direction:column; }
.hhc-coin-option-name{ font-weight:800; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.hhc-coin-option-symbol{ font-size:11px; color:var(--muted); text-transform:uppercase; }
.hhc-coin-option-price{ font-size:12px; font-weight:800; color:var(--muted); white-space:nowrap; }
.dropdown .dhead{padding:14px 14px 8px; font-weight:900}
.dropdown .ditem{
  display:flex; align-items:center; gap:12px;
  padding:12px 14px; cursor:pointer;
  transition: background .15s ease, filter .15s ease;
}
.dropdown .ditem:hover{background:var(--panel)}

/* Portfolios dropdown: slightly darker hover (applies to list + bottom actions) */
[data-theme="light"] #dd_portfolios .ditem:hover{ background: rgba(0,0,0,.06); }
[data-theme="dark"] #dd_portfolios .ditem:hover{ background: rgba(255,255,255,.04); }
.dropdown .ditem .dicon{
  width:32px; height:32px; border-radius:14px;
  background:var(--chip);
  border:1px solid var(--border);
  display:grid; place-items:center;
}
.dropdown .ditem .dmeta{display:flex; flex-direction:column}
.dropdown .ditem .dmeta .t{font-weight:900}
.dropdown .ditem .dmeta .s{font-size:12px; color:var(--muted)}

/* Dropdown header row + close */
.dropdown .dd-top{display:flex; align-items:center; justify-content:space-between}
.dropdown .dd-top .dhead{padding-right:8px}
.dropdown .dd-close{
  margin:10px 10px 0 0;
  width:34px; height:34px;
  border-radius:14px;
  border:1px solid var(--border);
  background:var(--panel);
  cursor:pointer;
  display:grid; place-items:center;
  font-weight:900;
  color:var(--muted);
}
.dropdown .dd-close:hover{color:var(--text)}

/* Make dropdown content scroll independently */
.dropdown .dd-scroll{
  max-height:70vh;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
}

/* Pages dropdown: 3-column grid, icon above text */
.dropdown.pages .dd-pages-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:10px;
  padding:10px 12px 14px;
}
.dropdown.pages .dd-pages-grid .ditem{
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--panel);
  padding:12px 10px;
  gap:8px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.dropdown.pages .dd-pages-grid .ditem:hover{background:rgba(2,153,224,.06)}
.dropdown.pages .dd-pages-grid .ditem .dicon{width:42px; height:42px; border-radius:16px}
.dropdown.pages .dd-pages-grid .ditem .dmeta{align-items:center}
.dropdown.pages .dd-pages-grid .ditem .dmeta .s{display:none}

/* Portfolio grouping labels */
.dropdown .dgroup{

  padding:10px 2px 6px;
  font-size:12px;
  color:var(--muted);
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}

/* Collapsible portfolio groups (dropdown + manage modal) */
.dgroup-btn{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px 6px;
  border:0;
  background:transparent;
  cursor:pointer;
  color:var(--danger);
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  font-size:12px;
}
.dgroup-btn:hover{filter:brightness(1.08)}
.dgroup-btn .chev{transition:transform .15s ease; opacity:.8}
.dgroup-btn[aria-expanded="false"] .chev{transform:rotate(-90deg)}
.dgroup-body{padding:0 0 6px}

/* Clean confirm / prompt modal (replaces browser confirm/prompt) */
.hhc-confirm-backdrop{
  position:fixed; inset:0; background:rgba(0,0,0,.55);
  display:none; align-items:center; justify-content:center;
  padding:24px; z-index:60;
}
.hhc-confirm{
  width:100%; max-width:520px;
  padding:18px;
  border-radius:22px;
  background:var(--bg);
  border:1px solid var(--border);
  box-shadow:var(--shadow);
}
.hhc-confirm .title{font-size:18px; font-weight:900}
.hhc-confirm .msg{margin-top:8px; color:var(--muted); font-size:13px; line-height:1.45}
.hhc-confirm .actions{display:flex; gap:10px; justify-content:flex-end; margin-top:16px; flex-wrap:wrap}
.hhc-confirm .input{margin-top:12px}
.tablewrap{overflow:auto; border-radius:18px; border:1px solid var(--border)}
.tablewrap{max-width:100%; overflow-x:auto;}
.card{max-width:100%; min-width:0;}

table{width:100%; border-collapse:separate; border-spacing:0; min-width:980px}
th,td{padding:12px 12px; border-bottom:1px solid var(--border); font-size:13px; text-align:left; white-space:nowrap}
th{position:sticky; top:0; background:var(--bg); z-index:1; font-size:12px; letter-spacing:.02em; text-transform:uppercase; color:var(--muted)}
tbody tr:hover td{background:rgba(2,153,224,.06)}
.section-title{font-size:18px; font-weight:900; margin:16px 0 10px}
.charts-section{grid-column:1 / -1}
.smallcards{display:grid; grid-template-columns: repeat(5, minmax(0,1fr)); gap:8px}
.smallcard{padding:8px 10px; border-radius:14px; border:1px solid var(--border); background:var(--card); display:flex; gap:10px; align-items:center; cursor:pointer; min-height:44px; transition: filter .15s ease, transform .15s ease}
.smallcard:hover{filter: brightness(0.94)}
.smallcard .ci{width:32px; height:32px; border-radius:12px; border:1px solid var(--border); background:var(--chip); display:grid; place-items:center; font-size:14px}
.smallcard .ct{font-weight:900; font-size:13px; line-height:1.1}
.smallcard .cs{font-size:11px; color:var(--muted); line-height:1.1}
@media (max-width: 1100px){
  .smallcards{grid-template-columns: 1fr 1fr}
  table{min-width:780px}
}
@media (max-width: 780px){
  .app{grid-template-columns: 1fr}
  .sidebar{position:fixed; bottom:10px; left:10px; right:10px; height:auto; display:flex; gap:8px; border:1px solid var(--border); border-radius:22px; background:rgba(255,255,255,.7); backdrop-filter: blur(12px); padding:10px}
  [data-theme="dark"] .sidebar{background:rgba(3,23,40,.7)}
  .nav-item{flex:1; padding:10px 4px}
  .main{padding:12px}
  .header{border-radius:18px}
}

.pos{color:#2ee59d;font-weight:900}
.neg{color:#ff4d4d;font-weight:900}

.badge-sell{background:#ff4d4d;color:#fff;border:1px solid rgba(0,0,0,.08)}
.badge-buy{background:#2ee59d;color:#fff;border:1px solid rgba(0,0,0,.08)}


/* Transaction badges */
.badge.sell{background:var(--danger); color:#fff; border-color:transparent}
.badge.receive{background:var(--success); color:#fff; border-color:transparent}

/* Manual transactions: BUY + TRANSFER_IN (green), SELL + TRANSFER_OUT (red) */
.badge.buy, .badge.tin{background:var(--success); color:#fff; border-color:transparent}
.badge.tout{background:var(--danger); color:#fff; border-color:transparent}

.money-blue{color:#2b6cff !important; font-weight:900}
.money-red{color:var(--danger) !important; font-weight:900}
.money-green{color:var(--success) !important; font-weight:900}

@media (min-width: 900px){
  .tw_spacer{display:block !important;}
}

/* Positive / negative values */
.pos{color:var(--success) !important}
.neg{color:var(--danger) !important}


.badge-transfer-in{background:var(--good);color:#fff !important;padding:4px 10px;border-radius:999px;font-weight:800;font-size:12px;display:inline-block;}
.badge-transfer-out{background:var(--bad);color:#fff !important;padding:4px 10px;border-radius:999px;font-weight:800;font-size:12px;display:inline-block;}


/* Transactions table */
.tx_table{width:100%;border-collapse:collapse}
.tx_table th,.tx_table td{padding:10px;border-bottom:1px solid var(--border);text-align:left}
.tablewrap{width:100%;overflow:auto}

.mcblue{color:var(--brand); font-weight:800}


/* Dashboard layout fixes */
html, body { overflow-x: hidden; }
.main { padding: 18px 24px; overflow-x: hidden; }
.main-inner { width: 100%; max-width: 1240px; margin: 0 auto; }
.card { max-width: 100%; min-width: 0; }
.tablewrap { max-width: 100%; overflow-x: auto; }


/* Preferences drawer (no layout impact) */
.hhc-pref-overlay{
  position:fixed; inset:0;
  background:rgba(0,0,0,.35);
  z-index:98;
}
.hhc-pref-drawer{
  position:fixed;
  top:0; left:0; height:100vh;
  width:min(280px, 78vw);
  background:var(--bg);
  border-right:1px solid var(--border);
  box-shadow:var(--shadow);
  z-index:99;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.hhc-pref-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 14px;
  border-bottom:1px solid var(--border);
}
.hhc-pref-title{ font-weight:900; }
.hhc-pref-close{
  border:1px solid var(--border);
  background:var(--card);
  border-radius:12px;
  padding:6px 10px;
  cursor:pointer;
}
.hhc-pref-body{
  padding:10px 12px;
  overflow:auto;
  overscroll-behavior:contain;
}
.hhc-pref-section-title{
  font-weight:900;
  margin:6px 0 10px;
}
.hhc-pref-option{
  width:100%;
  text-align:left;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--border);
  background:var(--card);
  margin-bottom:10px;
  cursor:pointer;
}
.hhc-pref-option:hover{ filter:brightness(0.98); }


/* Ensure flags render in preference menus */

.hhc-pref-option{ display:flex; align-items:center; gap:10px; }
.hhc-flag{ width:18px; height:12px; flex:0 0 auto; display:inline-flex; align-items:center; justify-content:center; }
.hhc-flag img{ width:18px; height:12px; display:block; border-radius:2px; box-shadow:0 0 0 1px rgba(0,0,0,.08) inset; }

.hhc-pref-option, .dropdown .dicon, .dropdown .ditem, .hhc-pref-section-title{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
}


/* Calculator Modal */

.calc-grid{display:grid;gap:12px}
.calc-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--border);background:var(--panel);border-radius:18px}
.calc-coin{display:flex;gap:12px;align-items:center;min-width:220px}
.calc-icon{width:44px;height:44px;border-radius:16px;border:1px solid var(--border);background:var(--bg);display:flex;align-items:center;justify-content:center;overflow:hidden;flex:0 0 auto}
.calc-icon img{width:24px;height:24px}
.calc-icon span{font-weight:900}
.calc-name{font-weight:900}
.calc-sub{font-size:12px;color:var(--muted);margin-top:2px}
.calc-input{flex:1;min-width:160px}
.calc-input{color:blue;}
.calc-remove{flex:0 0 auto;width:36px;height:36px;border-radius:12px;border:1px solid var(--border);background:var(--bg);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;user-select:none}
.calc-remove:hover{filter:brightness(1.05)}
@media(max-width:720px){
  .calc-row{flex-direction:column;align-items:stretch}
  .calc-coin{min-width:unset}
  .calc-input{width:100%}
}


/* Lightweight loading state for Total Worth during currency switch */
.hhc-value-loading{opacity:.65;}

/* Calculator & Converter color accents */
.conv-amount{color:blue;}
.conv-target{color:red;}
.conv-out{color:green;font-weight:800;}


/* Fees meter */
.hhc-fees-meter{
  border: 1px solid var(--border);
  background: var(--panel);
  border-radius: 14px;
  padding: 12px;
}
.hhc-fees-meter-title{
  font-weight: 800;
  margin-bottom: 8px;
}
.hhc-fees-meter-bar{
  position: relative;
  display: flex;
  height: 18px;
  border-radius: 999px;
  overflow: hidden;
  border: 1px solid var(--border);
}
.hhc-fees-meter-bar-wrap{
  position: relative;
  margin-bottom: 0px;
  padding-top: 28px;
}
.hhc-fees-meter-marker{
  position: absolute;
  top: 28px;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  pointer-events: none;
}
.hhc-fees-meter-marker-line{
  width: 2px;
  height: 18px;
  background: #111827;
  opacity: 0.9;
  border-radius: 2px;
}


.hhc-fees-meter-seg{ flex: 1; }
.hhc-fees-meter-seg.low{ background: #16a34a; }
.hhc-fees-meter-seg.med{ background: #86efac; }
.hhc-fees-meter-seg.high{ background: #facc15; }
.hhc-fees-meter-seg.super{ background: #ef4444; }
.hhc-fees-meter-indicator{
  position:absolute;
  top:-6px;
  width: 2px;
  height: 30px;
  background: #111827;
  opacity: 0.9;
}
.hhc-fees-meter-labels{
  display:flex;
  justify-content: space-between;
  gap: 8px;
  margin-top: 8px;
  font-size: 11px;
  color: var(--muted);
}
.hhc-fees-meter-readout{
  margin-top: 8px;
  font-weight: 800;
}

/* Portfolio dropdown enhancements */
#hhc_portfolio_list .ditem{
  border-bottom:1px solid rgba(255,255,255,.08);
}
#hhc_portfolio_list .ditem:last-child{ border-bottom:0; }
#hhc_portfolio_list .ditem{ display:flex; align-items:center; gap:10px; }
#hhc_portfolio_list .dmeta{ flex:1; min-width:0; }
#hhc_portfolio_list .dright{ font-weight:900; font-size:13px; white-space:nowrap; color:var(--success); }
.mode-label{ color:var(--brand); font-weight:900; }
.badge-active{
  background: rgba(30,158,98,.18);
  color: var(--success);
  border: 1px solid rgba(30,158,98,.35);
}



/* Multi-wallet onboarding rows */
.wallet-addr-list{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.wallet-addr-row{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center}
.wallet-addr-net{font-size:12px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--card);min-width:110px;text-align:center}
.wallet-addr-net[data-net="evm"]{ }
.wallet-addr-net[data-net="btc"]{ }
.wallet-addr-net[data-net="tron"]{ }
.wallet-addr-net[data-net="sol"]{ }
.wallet-addr-net[data-net="ltc"]{ }
.wallet-addr-net[data-net="unknown"]{opacity:.8}
.wallet-addr-remove{padding:6px 10px}

/* Subtle loading text used for "Calculating…" placeholders */
.hhc-calculating{
  font-size: 0.78em;
  font-weight: 400;
  opacity: 0.85;
}


/* Dark theme polish */
[data-theme="dark"] .modal .close,
[data-theme="dark"] .dropdown .dd-close,
[data-theme="dark"] .hhc-pref-close,
[data-theme="dark"] .iconbtn,
[data-theme="dark"] .dropdown .ditem .dicon,
[data-theme="dark"] .nav-item .icon,
[data-theme="dark"] .toplink,
[data-theme="dark"] .hhc-pref-option{
  color:#fff !important;
}
[data-theme="dark"] #mtx_coin,
[data-theme="dark"] #mtx_type,
[data-theme="dark"] #calc_add_select,
[data-theme="dark"] #conv1_coin,
[data-theme="dark"] select.input{
  background:#0f172a !important;
  color:#fff !important;
  border-color:rgba(148,163,184,.22) !important;
}
[data-theme="dark"] #mtx_coin option,
[data-theme="dark"] #mtx_type option,
[data-theme="dark"] #calc_add_select option,
[data-theme="dark"] #conv1_coin option,
[data-theme="dark"] select.input option{
  background:#0f172a !important;
  color:#fff !important;
}
[data-theme="dark"] .calc-input,
[data-theme="dark"] .calc-input input,
[data-theme="dark"] .conv-amount,
[data-theme="dark"] .conv-target,
[data-theme="dark"] input[type="number"]{
  color:#f59e0b !important;
}
[data-theme="dark"] .modal .close{background:#111827 !important;border-color:rgba(148,163,184,.22) !important;}
[data-theme="dark"] .dropdown .dd-close,
[data-theme="dark"] .hhc-pref-close,
[data-theme="dark"] .iconbtn{background:#111827 !important;border-color:rgba(148,163,184,.22) !important;}
[data-theme="dark"] .dropdown.pages .ditem,
[data-theme="dark"] .dropdown .ditem{
  color:#fff !important;
}

@media (max-width: 640px){
  .portfolio-drawer{ width:100vw; }
}


[data-theme="dark"] .hhc-coin-option-name{ color:#fff; }
#dd_portfolios .ditem{padding:8px 12px;gap:10px;}
#dd_portfolios .dicon{width:34px;height:34px;border-radius:12px;}
#dd_portfolios .dmeta .t{font-size:12px;line-height:1.1;}
#dd_portfolios .dmeta .s{font-size:10px;line-height:1.15;}
#dd_portfolios .dright{font-size:12px;font-weight:900;white-space:nowrap;}
#dd_portfolios .badge.badge-active{padding:5px 8px;font-size:10px;}
#dd_portfolios .dd-close{width:34px;height:34px;border-radius:12px;margin:8px 8px 0 0;}
@media (max-width: 900px){
  .portfolio-drawer{ right:0; width:min(430px, 100vw); }
}
@media (max-width: 640px){
  .portfolio-drawer{ top:0; right:0; width:100vw; height:100vh; max-height:100vh; }
  .portfolio-drawer-actions{grid-template-columns:1fr 1fr;}
}


/* Portfolio drawer final behavior */
.portfolio-drawer{
  top:var(--hhc-portfolio-top, 78px);
  right:var(--hhc-portfolio-right, 0px);
  width:min(var(--hhc-portfolio-width, 420px), calc(100vw - var(--hhc-portfolio-right, 0px)));
  height:calc(100vh - var(--hhc-portfolio-top, 78px));
  max-height:calc(100vh - var(--hhc-portfolio-top, 78px));
  display:none;
  flex-direction:column;
  border-left:1px solid var(--border);
  border-right:0;
  border-top:0;
  border-bottom:0;
  box-shadow:-14px 0 28px rgba(15,23,42,.12);
  overflow:hidden;
}
.portfolio-drawer-top{padding:0 10px 0;border-bottom:1px solid var(--border);}
.portfolio-drawer-summary{padding:10px 14px 8px;gap:8px;}
.portfolio-drawer-list{flex:1;min-height:0;padding:2px 0 0;overflow-y:auto;overflow-x:hidden;}
.portfolio-drawer-actions{
  margin-top:0;
  padding:6px 10px 14px;
  align-items:start;
}
.portfolio-action-btn{padding:8px 10px;border-radius:12px;}
body.portfolio-drawer-open .main{overflow:hidden !important;}
body.portfolio-drawer-open .portfolio-drawer{display:flex;}
body.portfolio-drawer-open .portfolio-drawer-list{overscroll-behavior:contain;}
@media (max-width: 900px){
  .portfolio-drawer{right:0;width:min(430px,100vw);}
}
@media (max-width: 640px){
  .portfolio-drawer{top:0;right:0;width:100vw;height:100vh;max-height:100vh;}
}


/* Portfolio drawer aligned to Theme drawer behavior on the right */
.hhc-portfolio-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.35);
  z-index:1198;
  display:none;
}
.portfolio-drawer{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  left:auto !important;
  width:min(var(--hhc-portfolio-width, 460px), 92vw) !important;
  height:100vh !important;
  max-height:100vh !important;
  border-left:1px solid var(--border) !important;
  border-right:0 !important;
  border-top:0 !important;
  border-bottom:0 !important;
  border-radius:0 !important;
  background:var(--bg) !important;
  box-shadow:var(--shadow) !important;
  z-index:1199 !important;
  display:none;
  flex-direction:column;
  overflow:hidden;
}
.portfolio-drawer-top{
  padding:12px 14px 0 !important;
  border-bottom:1px solid var(--border);
}
.portfolio-drawer-top .dhead{padding:0 0 12px !important; font-size:18px;}
.portfolio-drawer-top .dd-close{margin:0 0 10px 0 !important;}
.portfolio-drawer-summary{
  padding:12px 16px !important;
  gap:8px !important;
  background:rgba(59,130,246,.06);
}
.portfolio-drawer-list{
  flex:1;
  min-height:0;
  overflow-y:auto !important;
  overflow-x:hidden;
  padding:4px 0 0 !important;
}
.portfolio-drawer-actions{
  border-top:1px solid var(--border);
  padding:10px 12px 18px !important;
  background:var(--bg);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.portfolio-action-btn{align-items:flex-start; min-height:72px;}
body.portfolio-drawer-open{overflow:hidden !important;}
body.portfolio-drawer-open .main,
body.portfolio-drawer-open .main-inner{overflow:hidden !important;}
body.portfolio-drawer-open .hhc-portfolio-overlay{display:block;}
body.portfolio-drawer-open .portfolio-drawer{display:flex;}
@media (max-width: 640px){
  .portfolio-drawer{width:100vw !important;}
}


/* Final portfolio drawer: match Theme drawer behavior from the right */
.hhc-portfolio-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:98;display:none;}
.portfolio-drawer{position:fixed !important;top:0 !important;right:0 !important;left:auto !important;height:100vh !important;max-height:100vh !important;width:min(460px,92vw) !important;background:var(--bg) !important;border-left:1px solid var(--border) !important;border-right:0 !important;border-top:0 !important;border-bottom:0 !important;border-radius:0 !important;box-shadow:var(--shadow) !important;z-index:99 !important;display:none;flex-direction:column;overflow:hidden;}
.portfolio-drawer-top{padding:12px 14px !important;border-bottom:1px solid var(--border) !important;}
.portfolio-drawer-top .dhead{padding:0 !important;font-weight:900;}
.portfolio-drawer-top .dd-close{margin:0 !important;}
.portfolio-drawer-summary{padding:12px 16px !important;background:rgba(59,130,246,.06) !important;border-bottom:1px solid var(--border) !important;}
.portfolio-drawer-list{flex:1;min-height:0;overflow:auto !important;overscroll-behavior:contain;padding:4px 0 0 !important;}
.portfolio-drawer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 12px 24px !important;border-top:1px solid var(--border) !important;background:var(--bg) !important;margin-top:0 !important;}
.portfolio-action-btn{min-height:68px;}
body.portfolio-drawer-open{overflow:hidden !important;}
body.portfolio-drawer-open .hhc-portfolio-overlay{display:block !important;}
body.portfolio-drawer-open .portfolio-drawer{display:flex !important;}
@media (max-width:640px){.portfolio-drawer{width:100vw !important;}}


/* Final enforced portfolio drawer behavior: mirror Theme drawer on the right without shifting dashboard */
.hhc-portfolio-overlay{
  position:fixed !important;
  inset:0 !important;
  display:none;
  background:rgba(0,0,0,.35) !important;
  z-index:98 !important;
}
#dd_portfolios.portfolio-drawer,
.portfolio-drawer{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  left:auto !important;
  bottom:0 !important;
  width:min(var(--hhc-portfolio-width, 360px), 92vw) !important;
  height:100vh !important;
  max-height:100vh !important;
  margin:0 !important;
  border-radius:0 !important;
  border-left:1px solid var(--border) !important;
  border-right:0 !important;
  border-top:0 !important;
  border-bottom:0 !important;
  background:var(--bg) !important;
  box-shadow:var(--shadow) !important;
  z-index:99 !important;
  display:none;
  flex-direction:column;
  overflow:hidden !important;
  transform:none !important;
}
.portfolio-drawer-top{
  padding:12px 14px !important;
  border-bottom:1px solid var(--border) !important;
}
.portfolio-drawer-top .dhead{
  padding:0 !important;
  font-weight:900;
}
.portfolio-drawer-top .dd-close{
  margin:0 !important;
}
.portfolio-drawer-summary{
  padding:12px 16px !important;
  border-bottom:1px solid var(--border) !important;
}
.portfolio-drawer-list{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain;
}
.portfolio-drawer-actions{
  margin-top:0 !important;
  padding:10px 12px 18px !important;
  border-top:1px solid var(--border) !important;
  background:var(--bg) !important;
}
body.portfolio-drawer-open{
  overflow:hidden !important;
}
body.portfolio-drawer-open .hhc-portfolio-overlay{
  display:block !important;
}
body.portfolio-drawer-open #dd_portfolios.portfolio-drawer,
body.portfolio-drawer-open .portfolio-drawer{
  display:flex !important;
}
@media (max-width:640px){
  #dd_portfolios.portfolio-drawer,
  .portfolio-drawer{
    width:100vw !important;
  }
}


/* Final hard override: portfolio drawer must mirror Theme drawer from the right */
#hhc_portfolio_overlay.hhc-portfolio-overlay{
  position:fixed !important;
  inset:0 !important;
  background:rgba(0,0,0,.35) !important;
  z-index:1198 !important;
  display:none;
}
#dd_portfolios.portfolio-drawer{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:auto !important;
  width:min(var(--hhc-portfolio-width, 360px), 92vw) !important;
  height:100vh !important;
  max-height:100vh !important;
  margin:0 !important;
  padding:0 !important;
  display:none;
  flex-direction:column !important;
  overflow:hidden !important;
  background:var(--bg) !important;
  border-left:1px solid var(--border) !important;
  border-right:0 !important;
  border-top:0 !important;
  border-bottom:0 !important;
  border-radius:0 !important;
  box-shadow:var(--shadow) !important;
  transform:none !important;
  z-index:1199 !important;
}
#dd_portfolios .portfolio-drawer-top{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  padding:12px 14px !important;
  border-bottom:1px solid var(--border) !important;
  flex:0 0 auto !important;
}
#dd_portfolios .portfolio-drawer-top .dhead{
  padding:0 !important;
  margin:0 !important;
  font-size:18px !important;
  font-weight:900 !important;
}
#dd_portfolios .portfolio-drawer-top .dd-close{
  margin:0 !important;
  flex:0 0 auto !important;
}
#dd_portfolios .portfolio-drawer-summary{
  padding:12px 16px !important;
  display:grid !important;
  gap:10px !important;
  border-bottom:1px solid var(--border) !important;
  background:linear-gradient(180deg, rgba(59,130,246,.08), rgba(255,255,255,0)) !important;
  flex:0 0 auto !important;
}
#dd_portfolios .portfolio-drawer-list{
  flex:1 1 auto !important;
  min-height:0 !important;
  padding:4px 0 0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior:contain !important;
}
#dd_portfolios .portfolio-drawer-actions{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:10px !important;
  padding:12px 14px 18px !important;
  margin-top:auto !important;
  border-top:1px solid var(--border) !important;
  background:var(--bg) !important;
  align-items:stretch !important;
  flex:0 0 auto !important;
}
#dd_portfolios .portfolio-action-btn{
  width:100% !important;
  min-height:72px !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:10px 12px !important;
  border-radius:14px !important;
}
#dd_portfolios .portfolio-action-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
}
#dd_portfolios .portfolio-action-text .t,
#dd_portfolios .portfolio-action-text .s{
  display:block !important;
  margin:0 !important;
}
body.portfolio-drawer-open{
  overflow:hidden !important;
}
body.portfolio-drawer-open #hhc_portfolio_overlay.hhc-portfolio-overlay{
  display:block !important;
}
body.portfolio-drawer-open #dd_portfolios.portfolio-drawer{
  display:flex !important;
}
@media (max-width: 640px){
  #dd_portfolios.portfolio-drawer{
    width:100vw !important;
  }
}


/* Portfolio drawer polish: keep dashboard width stable and show modals above drawer */
html{scrollbar-gutter:stable;}
.modal-backdrop{
  z-index:1305 !important;
}
.modal-backdrop .modal{
  position:relative;
  z-index:1306 !important;
}
body.portfolio-drawer-open{
  padding-right:var(--hhc-scrollbar-comp,0px) !important;
}
#dd_portfolios .portfolio-drawer-actions{
  gap:8px !important;
  padding:10px 12px 14px !important;
}
#dd_portfolios .portfolio-action-btn{
  min-height:58px !important;
  padding:8px 10px !important;
  border-radius:12px !important;
}
#dd_portfolios .portfolio-action-icon{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  font-size:15px !important;
}
#dd_portfolios .portfolio-action-text .t{
  font-size:13px !important;
  line-height:1.15 !important;
}
#dd_portfolios .portfolio-action-text .s{
  font-size:11px !important;
  line-height:1.15 !important;
  margin-top:2px !important;
}
body.portfolio-drawer-open .main,
body.portfolio-drawer-open .main-inner{
  width:100% !important;
  max-width:100% !important;
}


/* Restore portfolio summary arrangement and chart interaction stability */
#dd_portfolios .portfolio-drawer-summary{
  padding:10px 14px 10px !important;
  gap:10px !important;
}
#dd_portfolios .portfolio-summary-item{
  display:block !important;
}
#dd_portfolios .portfolio-summary-item > span{
  display:block !important;
  margin:0 0 4px !important;
  font-size:12px !important;
  color:var(--muted) !important;
}
#dd_portfolios .portfolio-summary-item > b{
  display:block !important;
  font-size:18px !important;
  line-height:1.1 !important;
  color:var(--text) !important;
}
#hhc_history_chart,
#hhc_allocation_chart,
#hhc_history_chart_analytics,
#hhc_allocation_chart_analytics{
  display:block !important;
  width:100% !important;
  pointer-events:auto !important;
}


/* Clean portfolio drawer stability patch */
#dd_portfolios .portfolio-drawer-summary{
  display:grid !important;
  gap:8px !important;
}
#dd_portfolios .portfolio-summary-item{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}
#dd_portfolios .portfolio-summary-item > span{
  display:block !important;
  margin:0 !important;
  flex:1 1 auto !important;
}
#dd_portfolios .portfolio-summary-item > b{
  display:block !important;
  margin:0 !important;
  flex:0 0 auto !important;
  text-align:right !important;
}
body.portfolio-drawer-open .main,
body.portfolio-drawer-open .main-inner{
  overflow:visible !important;
}
#hhc_portfolio_overlay.hhc-portfolio-overlay{
  pointer-events:auto !important;
}
#hhc_history_chart,
#hhc_allocation_chart,
#hhc_history_chart_analytics,
#hhc_allocation_chart_analytics{
  position:relative !important;
  z-index:1 !important;
}
.chartjs-render-monitor,
canvas[id^="hhc_"]{
  max-width:100% !important;
}


/* Final portfolio drawer + chart stability fix */
#dd_portfolios .portfolio-drawer-summary{display:grid !important;gap:8px !important;padding:10px 14px !important;}
#dd_portfolios .portfolio-summary-item{display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;}
#dd_portfolios .portfolio-summary-item > span{display:block !important;flex:1 1 auto !important;margin:0 !important;font-size:12px !important;color:var(--muted) !important;}
#dd_portfolios .portfolio-summary-item > b{display:block !important;flex:0 0 auto !important;margin:0 !important;text-align:right !important;font-size:18px !important;line-height:1.1 !important;color:var(--text) !important;}
#hhc_portfolio_overlay.hhc-portfolio-overlay{pointer-events:none !important;}
body.portfolio-drawer-open .main,
body.portfolio-drawer-open .main-inner{overflow:visible !important;width:100% !important;max-width:100% !important;}
#hhc_history_chart,
#hhc_allocation_chart,
#hhc_history_chart_analytics,
#hhc_allocation_chart_analytics{display:block !important;width:100% !important;max-width:100% !important;height:220px !important;pointer-events:auto !important;}

/* Final portfolio drawer no-stretch + summary fit fix */
html{
  scrollbar-gutter: stable both-edges;
}
body.portfolio-drawer-open{
  padding-right:0 !important;
}
body.portfolio-drawer-open .app,
body.portfolio-drawer-open .main,
body.portfolio-drawer-open .main-inner,
body.portfolio-drawer-open .charts-section,
body.portfolio-drawer-open .charts-grid,
body.portfolio-drawer-open .charts-grid > .card,
body.portfolio-drawer-open #total_worth_card,
body.portfolio-drawer-open #badge_preview_card{
  width:auto !important;
  max-width:none !important;
  min-width:0 !important;
  transform:none !important;
}
body.portfolio-drawer-open .main-inner{
  width:100% !important;
  max-width:1240px !important;
  margin:0 auto !important;
  overflow:visible !important;
}
body.portfolio-drawer-open .main{
  overflow:visible !important;
}
.charts-grid,
.charts-grid > .card,
.charts-grid > .card > div,
#total_worth_card,
#badge_preview_card{
  min-width:0 !important;
}
#hhc_history_chart,
#hhc_allocation_chart,
#hhc_history_chart_analytics,
#hhc_allocation_chart_analytics{
  width:100% !important;
  max-width:100% !important;
}
#dd_portfolios .portfolio-drawer-summary{
  display:grid !important;
  gap:8px !important;
  padding:10px 14px !important;
}
#dd_portfolios .portfolio-summary-item{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}
#dd_portfolios .portfolio-summary-item > span{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  margin:0 !important;
  font-size:10.5px !important;
  line-height:1.2 !important;
  color:var(--muted) !important;
}
#dd_portfolios .portfolio-summary-item > b{
  display:block !important;
  flex:0 0 auto !important;
  margin:0 !important;
  text-align:right !important;
  white-space:nowrap !important;
  font-size:16px !important;
  line-height:1.1 !important;
  color:var(--text) !important;
}


/* Authoritative final patch: portfolio drawer must not shift dashboard */
html,
body{
  scrollbar-gutter:auto !important;
}
body.portfolio-drawer-open{
  overflow-y:auto !important;
  padding-right:0 !important;
}
body.portfolio-drawer-open .app,
body.portfolio-drawer-open .main,
body.portfolio-drawer-open .main-inner,
body.portfolio-drawer-open .charts-grid,
body.portfolio-drawer-open .charts-grid > .card,
body.portfolio-drawer-open #total_worth_card,
body.portfolio-drawer-open #badge_preview_card{
  width:unset !important;
  max-width:unset !important;
  min-width:0 !important;
  margin-left:unset !important;
  margin-right:unset !important;
  transform:none !important;
}
body.portfolio-drawer-open .main{
  overflow-x:hidden !important;
  overflow-y:auto !important;
}
body.portfolio-drawer-open .main-inner{
  width:100% !important;
  max-width:1240px !important;
  margin:0 auto !important;
  overflow:visible !important;
}
#hhc_portfolio_overlay.hhc-portfolio-overlay{
  position:fixed !important;
  inset:0 !important;
  display:none;
  background:rgba(0,0,0,.35) !important;
  z-index:1198 !important;
  pointer-events:auto !important;
}
body.portfolio-drawer-open #hhc_portfolio_overlay.hhc-portfolio-overlay{
  display:block !important;
}
#dd_portfolios.portfolio-drawer{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  bottom:0 !important;
  left:auto !important;
  width:min(360px,92vw) !important;
  height:100vh !important;
  max-height:100vh !important;
  margin:0 !important;
  transform:none !important;
  z-index:1199 !important;
}
#dd_portfolios .portfolio-drawer-summary{
  display:grid !important;
  gap:8px !important;
  padding:10px 14px !important;
}
#dd_portfolios .portfolio-summary-item{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}
#dd_portfolios .portfolio-summary-item > span{
  display:block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  margin:0 !important;
  font-size:10.5px !important;
  line-height:1.2 !important;
  color:var(--muted) !important;
}
#dd_portfolios .portfolio-summary-item > b{
  display:block !important;
  flex:0 0 auto !important;
  margin:0 !important;
  text-align:right !important;
  white-space:nowrap !important;
  font-size:15px !important;
  line-height:1.1 !important;
  color:var(--text) !important;
}
#hhc_history_chart,
#hhc_allocation_chart,
#hhc_history_chart_analytics,
#hhc_allocation_chart_analytics{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  pointer-events:auto !important;
}

/* Final portfolio summary fit fix */
#dd_portfolios .portfolio-drawer-summary{
  display:grid !important;
  gap:6px !important;
  padding:10px 14px !important;
}
#dd_portfolios .portfolio-summary-item{
  display:grid !important;
  grid-template-columns:minmax(175px,1fr) auto !important;
  align-items:center !important;
  column-gap:10px !important;
  row-gap:0 !important;
}
#dd_portfolios .portfolio-summary-item > span{
  display:block !important;
  min-width:175px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  margin:0 !important;
  font-size:10px !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
  color:var(--muted) !important;
}
#dd_portfolios .portfolio-summary-item > b{
  display:block !important;
  margin:0 !important;
  white-space:nowrap !important;
  text-align:right !important;
  font-size:15px !important;
  line-height:1.1 !important;
  color:var(--text) !important;
}


/* Final hard override: Theme / Lang / Currency must open as left drawer only */
#hhc_pref_overlay.hhc-pref-overlay{
  position:fixed !important;
  inset:0 !important;
  background:rgba(7, 15, 30, 0.38) !important;
  z-index:98 !important;
  display:none;
}
#hhc_pref_drawer.hhc-pref-drawer{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:auto !important;
  bottom:auto !important;
  width:min(280px, 78vw) !important;
  max-width:78vw !important;
  height:100vh !important;
  max-height:100vh !important;
  margin:0 !important;
  transform:translateX(-104%) !important;
  transition:transform .22s ease !important;
  background:var(--bg) !important;
  border-right:1px solid var(--border) !important;
  border-left:0 !important;
  border-top:0 !important;
  border-bottom:0 !important;
  border-radius:0 !important;
  box-shadow:var(--shadow) !important;
  z-index:99 !important;
  display:none;
  flex-direction:column !important;
  overflow:hidden !important;
}
body.pref-drawer-open #hhc_pref_overlay.hhc-pref-overlay{
  display:block !important;
}
body.pref-drawer-open #hhc_pref_drawer.hhc-pref-drawer{
  display:flex !important;
}
#hhc_pref_drawer.hhc-pref-drawer.is-open{
  transform:translateX(0) !important;
}
#hhc_pref_drawer .hhc-pref-head{
  padding:12px 14px !important;
  border-bottom:1px solid var(--border) !important;
}
#hhc_pref_drawer .hhc-pref-body{
  flex:1 1 auto !important;
  min-height:0 !important;
  padding:10px 12px !important;
  overflow:auto !important;
  overscroll-behavior:contain !important;
}
#hhc_pref_drawer .hhc-pref-option{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}
body.pref-drawer-open,
body.pref-drawer-open .app,
body.pref-drawer-open .main,
body.pref-drawer-open .main-inner,
body.pref-drawer-open .charts-grid,
body.pref-drawer-open .charts-grid > .card,
body.pref-drawer-open #total_worth_card,
body.pref-drawer-open #badge_preview_card{
  width:100% !important;
  max-width:100% !important;
  transform:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
@media (max-width:640px){
  #hhc_pref_drawer.hhc-pref-drawer{ width:100vw !important; max-width:100vw !important; }
}


/* Light theme visibility polish */
[data-theme="light"] .iconbtn,
[data-theme="light"] .toplink,
[data-theme="light"] .modal .close,
[data-theme="light"] .dropdown .dd-close,
[data-theme="light"] .hhc-pref-close,
[data-theme="light"] .dropdown .ditem .dicon,
[data-theme="light"] .nav-item .icon,
[data-theme="light"] .hhc-pref-option,
[data-theme="light"] .hhc-pref-title,
[data-theme="light"] .hhc-pref-section-title,
[data-theme="light"] #hhc_pref_drawer,
[data-theme="light"] #hhc_pref_drawer *{
  color:var(--text);
}
[data-theme="light"] .iconbtn,
[data-theme="light"] .modal .close,
[data-theme="light"] .dropdown .dd-close,
[data-theme="light"] .hhc-pref-close{
  background:var(--card) !important;
  border-color:var(--border) !important;
}
[data-theme="light"] .hhc-pref-close svg,
[data-theme="light"] .iconbtn svg,
[data-theme="light"] .nav-item .icon svg{
  stroke:currentColor;
  fill:none;
}
[data-theme="light"] .hhc-pref-option{
  background:var(--card);
}
[data-theme="light"] .hhc-pref-option:hover{
  background:rgba(2,153,224,.08);
}
[data-theme="light"] .hhc-coin-picker-trigger,
[data-theme="light"] .hhc-coin-picker-trigger-main,
[data-theme="light"] .hhc-coin-option,
[data-theme="light"] .hhc-coin-option-main,
[data-theme="light"] .hhc-coin-option-meta{
  color:var(--text);
}
[data-theme="light"] .hhc-coin-option{
  align-items:center;
}
[data-theme="light"] .hhc-coin-option-name{
  color:var(--text);
  font-weight:800;
}
[data-theme="light"] .hhc-coin-option-symbol,
[data-theme="light"] .hhc-coin-option-price,
[data-theme="light"] .hhc-coin-picker-chevron{
  color:var(--muted);
}
[data-theme="light"] .hhc-coin-option-price{
  flex:0 0 auto;
  text-align:right;
}
[data-theme="light"] .hhc-coin-picker-menu,
[data-theme="light"] .hhc-coin-picker-list{
  background:var(--bg);
}
[data-theme="light"] .hhc-coin-picker-search{
  color:var(--text);
  background:var(--card);
}
[data-theme="light"] select,
[data-theme="light"] option,
[data-theme="light"] input,
[data-theme="light"] textarea{
  color-scheme:light;
}
[data-theme="light"]{
  color-scheme:light;
}
[data-theme="light"] ::-webkit-scrollbar{
  width:10px;
  height:10px;
}
[data-theme="light"] ::-webkit-scrollbar-track{
  background:#edf3f8;
}
[data-theme="light"] ::-webkit-scrollbar-thumb{
  background:#c3d4e2;
  border-radius:999px;
  border:2px solid #edf3f8;
}
[data-theme="light"] ::-webkit-scrollbar-thumb:hover{
  background:#9fb8ca;
}


/* Financial Structure Lab */
.hhc-finlab{margin-top:18px}
.hhc-finlab-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hhc-finlab-stats{grid-template-columns:repeat(6,minmax(0,1fr))}
.hhc-finlab-card{padding:16px;border:1px solid rgba(37,99,235,.12);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.95));box-shadow:0 20px 50px rgba(15,23,42,.06)}
[data-theme="dark"] .hhc-finlab-card{background:linear-gradient(180deg,rgba(13,20,36,.96),rgba(10,16,31,.94));border-color:rgba(96,165,250,.16);box-shadow:0 20px 50px rgba(2,6,23,.42)}
.hhc-finlab-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.hhc-finlab-chip{display:inline-flex;align-items:center;justify-content:center;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.03em;background:rgba(37,99,235,.08);color:#1d4ed8;border:1px solid rgba(37,99,235,.16)}
[data-theme="dark"] .hhc-finlab-chip{background:rgba(96,165,250,.14);color:#c7d2fe;border-color:rgba(96,165,250,.22)}
.hhc-finlab-stat{padding:14px;border-radius:18px;border:1px solid rgba(37,99,235,.10);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(244,247,255,.95));min-height:108px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}
.hhc-finlab-stat span,.hhc-finlab-reco-box span,.hhc-finlab-field span{font-size:12px;color:var(--muted);font-weight:700}
.hhc-finlab-stat b{font-size:24px;line-height:1.1}
.hhc-finlab-stat small{font-size:11px;color:var(--muted)}
[data-theme="dark"] .hhc-finlab-stat{background:linear-gradient(180deg,rgba(17,24,39,.98),rgba(10,16,31,.95));border-color:rgba(96,165,250,.16)}
.hhc-finlab-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hhc-finlab-field{display:flex;flex-direction:column;gap:7px}
.hhc-finlab-field input[readonly]{font-weight:800;background:rgba(148,163,184,.08);cursor:not-allowed}
.hhc-finlab-metrics-grid{display:grid;grid-template-columns:1fr;gap:12px}
.hhc-finlab-metric-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:13px;font-weight:800}
.hhc-finlab-progress{height:10px;border-radius:999px;background:rgba(148,163,184,.16);overflow:hidden;border:1px solid rgba(148,163,184,.12)}
.hhc-finlab-progress i{display:block;height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#10b981);transition:width .25s ease}
.hhc-finlab-reco-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.hhc-finlab-reco-grid-tight{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
.hhc-finlab-reco-box{padding:13px 14px;border-radius:16px;border:1px solid rgba(37,99,235,.10);background:rgba(37,99,235,.04);display:flex;flex-direction:column;gap:6px;min-height:88px}
[data-theme="dark"] .hhc-finlab-reco-box{background:rgba(96,165,250,.08);border-color:rgba(96,165,250,.14)}
.hhc-finlab-reco-box b{font-size:18px;line-height:1.2}
.hhc-finlab-allocs{display:grid;grid-template-columns:1fr;gap:10px;margin-top:16px}
.hhc-finlab-alloc-row{display:grid;grid-template-columns:150px 1fr auto;gap:10px;align-items:center}
.hhc-finlab-alloc-bar{height:10px;border-radius:999px;background:rgba(148,163,184,.15);overflow:hidden;border:1px solid rgba(148,163,184,.12)}
.hhc-finlab-alloc-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8b5cf6,#06b6d4);transition:width .25s ease}
.hhc-finlab-list{display:grid;gap:10px}
.hhc-finlab-list-item{padding:12px 14px;border-radius:16px;border:1px solid rgba(37,99,235,.10);background:rgba(2,132,199,.04);font-size:13px;line-height:1.45}
.hhc-finlab-list-item.warn{background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.18)}
.hhc-finlab-list-item.good{background:rgba(16,185,129,.08);border-color:rgba(16,185,129,.18)}
.hhc-finlab-list-item.bad{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.18)}
.hhc-finlab-snapshot-table{width:100%;border-collapse:collapse;margin-top:10px}
.hhc-finlab-snapshot-table th,.hhc-finlab-snapshot-table td{padding:9px 10px;border-bottom:1px solid var(--border);text-align:left;font-size:12px}
.hhc-finlab-snapshot-table th{color:var(--muted);font-weight:800}
@media (max-width: 1200px){
  .hhc-finlab-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width: 980px){
  .hhc-finlab-grid,.hhc-finlab-stats,.hhc-finlab-reco-grid,.hhc-finlab-reco-grid-tight,.hhc-finlab-form-grid{grid-template-columns:1fr}
  .hhc-finlab-alloc-row{grid-template-columns:1fr}
}


/* Financial Structure Lab redesign */
.hhc-finlab-page-v2{margin-top:6px}
.hhc-finlab-breadcrumb{font-size:12px;letter-spacing:.02em}
.hhc-finlab-hero-v2{padding:26px;border:1px solid rgba(37,99,235,.12);background:radial-gradient(circle at top left,rgba(37,99,235,.14),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.985),rgba(246,249,255,.96));display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:24px;align-items:start}
[data-theme="dark"] .hhc-finlab-hero-v2{background:radial-gradient(circle at top left,rgba(59,130,246,.18),transparent 28%),linear-gradient(180deg,rgba(10,16,30,.98),rgba(8,12,24,.96));border-color:rgba(96,165,250,.16)}
.hhc-finlab-hero-main{display:grid;gap:12px}
.hhc-finlab-hero-title{font-size:34px;line-height:1.02;font-weight:950;letter-spacing:-.04em}
.hhc-finlab-hero-subtitle{max-width:860px;color:var(--muted);line-height:1.7;font-size:14px}
.hhc-finlab-hero-notes{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.hhc-finlab-note{padding:8px 12px;border-radius:999px;background:rgba(37,99,235,.07);border:1px solid rgba(37,99,235,.10);font-size:12px;font-weight:800;color:#1d4ed8}
[data-theme="dark"] .hhc-finlab-note{background:rgba(59,130,246,.12);border-color:rgba(96,165,250,.18);color:#93c5fd}
.hhc-finlab-hero-side{display:grid;gap:12px;justify-items:stretch}
.hhc-finlab-status-card{padding:16px 18px;border-radius:22px;border:1px solid rgba(37,99,235,.12);background:rgba(255,255,255,.72);display:grid;gap:6px;box-shadow:0 10px 30px rgba(15,23,42,.05)}
[data-theme="dark"] .hhc-finlab-status-card{background:rgba(2,6,23,.36);border-color:rgba(96,165,250,.18)}
.hhc-finlab-status-card span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.hhc-finlab-status-card b{font-size:22px;line-height:1.1}
.hhc-finlab-status-card small{font-size:12px;color:var(--muted);line-height:1.5}
.hhc-finlab-action-wrap{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.hhc-finlab-exec-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:14px}
.hhc-finlab-exec-card{padding:18px;border-radius:20px;border:1px solid var(--border);background:var(--card);display:grid;gap:8px;box-shadow:0 12px 30px rgba(15,23,42,.04)}
.hhc-finlab-exec-card span{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.hhc-finlab-exec-card b{font-size:28px;line-height:1.05;letter-spacing:-.03em}
.hhc-finlab-exec-card small{font-size:12px;color:var(--muted);line-height:1.5}
.hhc-finlab-exec-card-primary{border-color:rgba(37,99,235,.16);background:linear-gradient(135deg,rgba(37,99,235,.12),rgba(16,185,129,.10))}
[data-theme="dark"] .hhc-finlab-exec-card-primary{background:linear-gradient(135deg,rgba(37,99,235,.18),rgba(16,185,129,.13))}
.hhc-finlab-layout-v2{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr);gap:16px;margin-top:16px;align-items:start}
.hhc-finlab-mainstack,.hhc-finlab-rail{display:grid;gap:16px}
.hhc-finlab-panel{padding:20px;border:1px solid var(--border);background:var(--card);box-shadow:0 14px 32px rgba(15,23,42,.04)}
.hhc-finlab-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}
.hhc-finlab-panel-grid{display:grid;gap:14px}
.hhc-finlab-panel-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.hhc-finlab-panel-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.hhc-finlab-field{display:grid;gap:8px}
.hhc-finlab-field span{font-weight:800;font-size:13px}
.hhc-finlab-field small{font-size:11px;color:var(--muted);line-height:1.45}
.hhc-finlab-chip{padding:8px 12px;border-radius:999px;background:rgba(15,23,42,.04);border:1px solid rgba(148,163,184,.18);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;white-space:nowrap}
[data-theme="dark"] .hhc-finlab-chip{background:rgba(255,255,255,.03);border-color:rgba(148,163,184,.14)}
.hhc-finlab-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hhc-finlab-focus-card{padding:16px;border-radius:18px;border:1px solid rgba(37,99,235,.10);background:rgba(248,250,252,.95);display:grid;gap:12px}
[data-theme="dark"] .hhc-finlab-focus-card{background:rgba(15,23,42,.55);border-color:rgba(96,165,250,.12)}
.hhc-finlab-metric-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:900}
.hhc-finlab-progress{height:10px;border-radius:999px;background:rgba(148,163,184,.16);overflow:hidden;border:1px solid rgba(148,163,184,.12)}
.hhc-finlab-progress i{display:block;height:100%;width:0%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#10b981);transition:width .25s ease}
.hhc-finlab-mini-pairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.hhc-finlab-mini-pairs div{padding:10px 12px;border-radius:14px;background:rgba(15,23,42,.03);display:grid;gap:4px}
[data-theme="dark"] .hhc-finlab-mini-pairs div{background:rgba(255,255,255,.03)}
.hhc-finlab-mini-pairs span{font-size:11px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.hhc-finlab-mini-pairs b{font-size:15px;line-height:1.2}
.hhc-finlab-outcomes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.hhc-finlab-outcomes-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.hhc-finlab-outcome-box,.hhc-finlab-decision-box{padding:14px 16px;border-radius:18px;border:1px solid rgba(37,99,235,.10);background:rgba(37,99,235,.04);display:grid;gap:6px}
[data-theme="dark"] .hhc-finlab-outcome-box,[data-theme="dark"] .hhc-finlab-decision-box{background:rgba(59,130,246,.08);border-color:rgba(96,165,250,.14)}
.hhc-finlab-outcome-box span,.hhc-finlab-decision-box span{font-size:11px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.hhc-finlab-outcome-box b,.hhc-finlab-decision-box b{font-size:20px;line-height:1.15}
.hhc-finlab-strategy-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.hhc-finlab-allocs{display:grid;gap:10px;margin-top:16px}
.hhc-finlab-alloc-row{display:grid;grid-template-columns:170px 1fr auto;gap:12px;align-items:center}
.hhc-finlab-alloc-bar{height:10px;border-radius:999px;background:rgba(148,163,184,.15);overflow:hidden;border:1px solid rgba(148,163,184,.12)}
.hhc-finlab-alloc-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8b5cf6,#06b6d4);transition:width .25s ease}
.hhc-finlab-bottom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.hhc-finlab-report-stack{display:grid;gap:16px}
.hhc-finlab-subhead{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}
.hhc-finlab-list{display:grid;gap:10px}
.hhc-finlab-list-item{padding:13px 15px;border-radius:16px;border:1px solid rgba(37,99,235,.10);background:rgba(2,132,199,.04);font-size:13px;line-height:1.55}
.hhc-finlab-list-item.warn{background:rgba(245,158,11,.08);border-color:rgba(245,158,11,.18)}
.hhc-finlab-list-item.good{background:rgba(16,185,129,.08);border-color:rgba(16,185,129,.18)}
.hhc-finlab-list-item.bad{background:rgba(239,68,68,.08);border-color:rgba(239,68,68,.18)}
.hhc-finlab-snapshot-table{width:100%;border-collapse:collapse;margin-top:10px}
.hhc-finlab-snapshot-table th,.hhc-finlab-snapshot-table td{padding:10px 10px;border-bottom:1px solid var(--border);text-align:left;font-size:12px}
.hhc-finlab-snapshot-table th{color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.hhc-finlab-rail-sticky{position:sticky;top:14px}
.hhc-finlab-rail-sticky-secondary{position:sticky;top:308px}
.hhc-finlab-sync-stack{display:grid;gap:12px}
.hhc-finlab-rail-note{font-size:12px;line-height:1.6;margin-top:12px}
.hhc-finlab-decision-grid{display:grid;gap:12px}
@media (max-width:1280px){.hhc-finlab-exec-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hhc-finlab-layout-v2,.hhc-finlab-hero-v2,.hhc-finlab-bottom-grid,.hhc-finlab-focus-grid,.hhc-finlab-panel-grid-3,.hhc-finlab-strategy-row{grid-template-columns:1fr}.hhc-finlab-rail-sticky,.hhc-finlab-rail-sticky-secondary{position:static}.hhc-finlab-action-wrap{justify-content:flex-start}}
@media (max-width:860px){.hhc-finlab-exec-grid,.hhc-finlab-outcomes-grid,.hhc-finlab-outcomes-grid-2,.hhc-finlab-panel-grid-2,.hhc-finlab-mini-pairs{grid-template-columns:1fr}.hhc-finlab-hero-title{font-size:28px}.hhc-finlab-alloc-row{grid-template-columns:1fr}.hhc-finlab-panel{padding:16px}}


/* Financial Structure Lab minimal redesign */
.hhc-finlab-page-minimal{margin-top:10px}
.hhc-finlab-shell{padding:24px;border:1px solid rgba(37,99,235,.10);background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(246,249,255,.96));box-shadow:0 18px 44px rgba(15,23,42,.05)}
[data-theme="dark"] .hhc-finlab-shell{background:linear-gradient(180deg,rgba(9,14,27,.98),rgba(8,12,24,.96));border-color:rgba(96,165,250,.14);box-shadow:0 18px 44px rgba(2,6,23,.40)}
.hhc-finlab-minimal-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.42fr);gap:16px;align-items:start;margin-bottom:18px}
.hhc-finlab-minimal-title{font-size:31px;line-height:1.02;font-weight:950;letter-spacing:-.04em;margin-top:6px}
.hhc-finlab-minimal-subtitle{max-width:760px;font-size:14px;line-height:1.7;color:var(--muted);margin-top:8px}
.hhc-finlab-minimal-badge{padding:16px 18px;border-radius:22px;border:1px solid rgba(37,99,235,.12);background:rgba(255,255,255,.76);display:grid;gap:6px;align-self:stretch}
[data-theme="dark"] .hhc-finlab-minimal-badge{background:rgba(2,6,23,.36);border-color:rgba(96,165,250,.18)}
.hhc-finlab-minimal-badge span{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}
.hhc-finlab-minimal-badge b{font-size:22px;line-height:1.1}
.hhc-finlab-minimal-badge small{font-size:12px;color:var(--muted);line-height:1.5}
.hhc-finlab-formstack,.hhc-finlab-results-stack{display:grid;gap:16px}
.hhc-finlab-panel-minimal{box-shadow:none}
.hhc-finlab-minimal-actions{display:flex;justify-content:flex-start;padding-top:4px}
.hhc-finlab-minimal-actions .btn{min-width:240px;justify-content:center;font-weight:800}
.hhc-finlab-results{margin-top:18px;padding-top:18px;border-top:1px solid var(--border)}
.hhc-finlab-results-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-bottom:16px}
.hhc-finlab-decision-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1280px){.hhc-finlab-minimal-head,.hhc-finlab-results-grid,.hhc-finlab-decision-grid-4{grid-template-columns:1fr}}
@media (max-width:860px){.hhc-finlab-shell{padding:16px}.hhc-finlab-minimal-title{font-size:26px}.hhc-finlab-minimal-actions .btn{width:100%;min-width:0}}


/* Financial Structure Lab premium stage layout */
.hhc-finlab-shell-v3{padding:30px;border-radius:28px;border:1px solid rgba(37,99,235,.12);background:
  radial-gradient(circle at top left, rgba(96,165,250,.12), transparent 34%),
  linear-gradient(180deg, rgba(255,255,255,.995), rgba(246,249,255,.97));
}
[data-theme="dark"] .hhc-finlab-shell-v3{background:
  radial-gradient(circle at top left, rgba(96,165,250,.10), transparent 34%),
  linear-gradient(180deg, rgba(10,15,28,.99), rgba(7,11,22,.98));}
.hhc-finlab-hero-v3{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.42fr);gap:20px;align-items:stretch;margin-bottom:22px}
.hhc-finlab-kicker{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(37,99,235,.08);border:1px solid rgba(37,99,235,.12);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#2563eb}
[data-theme="dark"] .hhc-finlab-kicker{background:rgba(96,165,250,.12);border-color:rgba(96,165,250,.18);color:#93c5fd}
.hhc-finlab-hero-copy{display:grid;gap:10px}
.hhc-finlab-hero-status{padding:18px 20px;border-radius:24px;border:1px solid rgba(37,99,235,.12);background:rgba(255,255,255,.72);display:grid;gap:10px;align-content:start;backdrop-filter:blur(8px)}
[data-theme="dark"] .hhc-finlab-hero-status{background:rgba(2,6,23,.38);border-color:rgba(96,165,250,.18)}
.hhc-finlab-hero-status-top{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.hhc-finlab-status-dot{width:10px;height:10px;border-radius:999px;background:#22c55e;box-shadow:0 0 0 6px rgba(34,197,94,.12)}
.hhc-finlab-hero-status b{font-size:24px;line-height:1.05;letter-spacing:-.03em}
.hhc-finlab-hero-status small{font-size:13px;line-height:1.6;color:var(--muted)}
.hhc-finlab-workspace{display:grid;gap:18px}
.hhc-finlab-stagebar{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,420px);gap:18px;align-items:center;padding:18px 20px;border-radius:24px;border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.76);box-shadow:0 18px 45px rgba(15,23,42,.05)}
[data-theme="dark"] .hhc-finlab-stagebar{background:rgba(15,23,42,.44);border-color:rgba(148,163,184,.18)}
.hhc-finlab-stagebar-copy{display:grid;gap:4px}
.hhc-finlab-stagebar-title{font-size:16px;font-weight:900;letter-spacing:-.03em;color:#0f172a}
.hhc-finlab-stagebar-subtitle{font-size:12px;line-height:1.65;color:var(--muted);max-width:66ch}
.hhc-finlab-level-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;border-radius:18px;background:rgba(148,163,184,.10);border:1px solid rgba(148,163,184,.18);width:100%}
.hhc-finlab-level-btn{border:0;background:transparent;color:var(--muted);padding:13px 16px;border-radius:14px;font-weight:800;font-size:13px;cursor:pointer;transition:all .18s ease;width:100%;text-align:center}
.hhc-finlab-level-btn.is-active{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 12px 26px rgba(37,99,235,.24)}
.hhc-finlab-level-view{display:none;gap:16px}
.hhc-finlab-level-view.is-active{display:grid}
.hhc-finlab-panel-primary{border:1px solid rgba(37,99,235,.10);background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,250,255,.98))}
[data-theme="dark"] .hhc-finlab-panel-primary{background:linear-gradient(180deg,rgba(14,19,34,.95),rgba(9,14,27,.98));border-color:rgba(96,165,250,.16)}
.hhc-finlab-panel-sync{border-style:solid}
.hhc-finlab-minimal-actions-v3{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:4px 4px 0}
.hhc-finlab-helper-note{font-size:12px;line-height:1.6;color:var(--muted);font-weight:700}
.hhc-finlab-results{margin-top:2px;padding-top:18px;border-top:1px solid rgba(148,163,184,.20)}
#hhc_finlab:not(.is-generated) .hhc-finlab-results{display:none}
.hhc-finlab-shell-v3 .hhc-finlab-field>span{font-size:13px;font-weight:800;letter-spacing:-.01em;text-transform:none;color:#0f172a;margin-bottom:4px}
.hhc-finlab-shell-v3 .hhc-finlab-field .input{height:54px;border-radius:16px;border:1px solid rgba(148,163,184,.24);background:rgba(255,255,255,.96);box-shadow:0 1px 0 rgba(255,255,255,.85) inset;font-weight:700}
[data-theme="dark"] .hhc-finlab-shell-v3 .hhc-finlab-field .input{background:rgba(15,23,42,.58);border-color:rgba(148,163,184,.18)}
.hhc-finlab-shell-v3 .hhc-finlab-field .input:focus{border-color:rgba(37,99,235,.45);box-shadow:0 0 0 4px rgba(37,99,235,.08)}
.hhc-finlab-shell-v3 .hhc-finlab-panel{border-radius:24px;padding:24px;border:1px solid rgba(148,163,184,.16);box-shadow:0 16px 40px rgba(15,23,42,.04)}
.hhc-finlab-shell-v3 .hhc-finlab-panel-head{margin-bottom:16px}
.hhc-finlab-shell-v3 .hhc-finlab-chip{border-radius:999px;padding:8px 12px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
@media (max-width:1280px){.hhc-finlab-hero-v3,.hhc-finlab-stagebar,.hhc-finlab-minimal-actions-v3{grid-template-columns:1fr;display:grid}.hhc-finlab-minimal-actions-v3{justify-content:stretch}.hhc-finlab-minimal-actions-v3 .btn{width:100%}}
@media (max-width:860px){.hhc-finlab-shell-v3{padding:18px;border-radius:22px}.hhc-finlab-hero-status b{font-size:20px}.hhc-finlab-stagebar{grid-template-columns:1fr;padding:14px}.hhc-finlab-level-switch{width:100%}.hhc-finlab-level-btn{text-align:center}}

.hhc-finlab-panel-grid-1{grid-template-columns:minmax(0,1fr)}
.hhc-finlab-field small{font-size:11px;line-height:1.55;color:var(--muted);margin-top:2px;max-width:34ch}
.hhc-finlab-field-sync small{max-width:none}
[data-theme="dark"] .hhc-finlab-stagebar-title,[data-theme="dark"] .hhc-finlab-shell-v3 .hhc-finlab-field>span{color:#e5eefc}
[data-theme="dark"] .hhc-finlab-shell-v3 .hhc-finlab-panel{box-shadow:none;border-color:rgba(148,163,184,.14)}
.hhc-finlab-shell-v3 .hhc-finlab-panel-head .title{font-size:18px;letter-spacing:-.03em}
.hhc-finlab-shell-v3 .hhc-finlab-panel-head .subtitle{font-size:12px;line-height:1.65;max-width:62ch}
.hhc-finlab-shell-v3 .hhc-finlab-chip{font-weight:800;background:rgba(37,99,235,.08);color:#2563eb;border:1px solid rgba(37,99,235,.12)}
[data-theme="dark"] .hhc-finlab-shell-v3 .hhc-finlab-chip{background:rgba(96,165,250,.12);color:#bfdbfe;border-color:rgba(96,165,250,.16)}
.hhc-finlab-shell-v3 .hhc-finlab-field input[readonly]{background:linear-gradient(180deg,rgba(239,246,255,.9),rgba(248,250,252,.95));color:#0f172a}
[data-theme="dark"] .hhc-finlab-shell-v3 .hhc-finlab-field input[readonly]{background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(15,23,42,.68));color:#eff6ff}
.hhc-finlab-shell-v3 .hhc-finlab-field>span{display:block;margin-bottom:8px;font-size:12px;font-weight:900;letter-spacing:.01em;color:#111827}
.hhc-finlab-shell-v3 .hhc-finlab-field small{margin-top:8px;font-size:11px;line-height:1.6;color:var(--muted);max-width:none}
.hhc-finlab-input-shell{position:relative;display:flex;align-items:center}
.hhc-finlab-input-shell .input{width:100%}
.hhc-finlab-input-prefix,.hhc-finlab-input-suffix{position:absolute;top:50%;transform:translateY(-50%);font-size:12px;font-weight:900;color:var(--muted);pointer-events:none;z-index:2}
.hhc-finlab-input-prefix{left:16px}
.hhc-finlab-input-suffix{right:16px}
.hhc-finlab-input-shell.has-prefix .input{padding-left:38px}
.hhc-finlab-input-shell.has-suffix .input{padding-right:38px}
.hhc-finlab-results-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:18px;padding:20px 22px;border-radius:24px;border:1px solid rgba(148,163,184,.18);background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(248,250,255,.95))}
[data-theme="dark"] .hhc-finlab-results-head{background:linear-gradient(180deg,rgba(15,23,42,.58),rgba(10,15,28,.78));border-color:rgba(148,163,184,.14)}
.hhc-finlab-results-kicker{font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#2563eb;margin-bottom:6px}
.hhc-finlab-results-head h3{margin:0;font-size:28px;line-height:1.05;letter-spacing:-.04em}
.hhc-finlab-results-head p{margin:8px 0 0;font-size:13px;line-height:1.65;color:var(--muted);max-width:64ch}
.hhc-finlab-results-actions{display:flex;gap:10px;flex-wrap:wrap}
.hhc-finlab-trend-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.hhc-finlab-trend-card{padding:16px 18px;border-radius:20px;border:1px solid rgba(148,163,184,.18);background:rgba(248,250,252,.84);display:grid;gap:6px}
[data-theme="dark"] .hhc-finlab-trend-card{background:rgba(15,23,42,.58);border-color:rgba(148,163,184,.14)}
.hhc-finlab-trend-card span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hhc-finlab-trend-card b{font-size:20px;letter-spacing:-.03em}
.hhc-finlab-trend-card small{font-size:12px;line-height:1.55;color:var(--muted)}
.hhc-finlab-snapshot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.hhc-finlab-snapshot-card{border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.82);border-radius:20px;padding:16px;text-align:left;display:grid;gap:8px;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.hhc-finlab-snapshot-card:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.28);box-shadow:0 10px 22px rgba(15,23,42,.06)}
[data-theme="dark"] .hhc-finlab-snapshot-card{background:rgba(15,23,42,.58);border-color:rgba(148,163,184,.14)}
.hhc-finlab-snapshot-card span{font-size:12px;font-weight:800;color:var(--muted)}
.hhc-finlab-snapshot-card b{font-size:20px;letter-spacing:-.03em}
.hhc-finlab-snapshot-card small{font-size:12px;line-height:1.55;color:var(--muted)}
.hhc-finlab-snapshot-detail{margin-top:14px;padding:18px;border-radius:22px;border:1px solid rgba(148,163,184,.18);background:rgba(248,250,252,.8)}
[data-theme="dark"] .hhc-finlab-snapshot-detail{background:rgba(15,23,42,.56);border-color:rgba(148,163,184,.14)}
.hhc-finlab-snapshot-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.hhc-finlab-snapshot-detail-label{display:block;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}
.hhc-finlab-snapshot-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.hhc-finlab-snapshot-detail-grid div{padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.86);border:1px solid rgba(148,163,184,.15);display:grid;gap:6px}
[data-theme="dark"] .hhc-finlab-snapshot-detail-grid div{background:rgba(2,6,23,.28);border-color:rgba(148,163,184,.12)}
.hhc-finlab-snapshot-detail-grid span{font-size:11px;font-weight:800;color:var(--muted)}
.hhc-finlab-snapshot-detail-grid b{font-size:16px;letter-spacing:-.02em}
@media (max-width:1280px){.hhc-finlab-results-head,.hhc-finlab-trend-strip,.hhc-finlab-snapshot-grid,.hhc-finlab-snapshot-detail-grid{grid-template-columns:1fr}.hhc-finlab-results-head{display:grid}.hhc-finlab-results-actions .btn{width:100%}}
@media (max-width:860px){.hhc-finlab-results-head h3{font-size:23px}.hhc-finlab-results-actions{display:grid}.hhc-finlab-results-actions .btn{width:100%}}


/* Financial Structure Lab result experience refinement */
.hhc-finlab-summary-toggle-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid rgba(148,163,184,.16)}
.hhc-finlab-explained-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.hhc-finlab-explained-card{padding:16px 18px;border-radius:18px;border:1px solid rgba(148,163,184,.16);background:rgba(255,255,255,.82);display:grid;gap:6px}
[data-theme="dark"] .hhc-finlab-explained-card{background:rgba(15,23,42,.58);border-color:rgba(148,163,184,.14)}
.hhc-finlab-explained-card span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hhc-finlab-explained-card b{font-size:18px;letter-spacing:-.03em}
.hhc-finlab-explained-card p{margin:0;font-size:12px;line-height:1.65;color:var(--muted)}
.hhc-finlab-reco-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hhc-finlab-panel-snapshots{scroll-margin-top:100px}
.hhc-finlab-summary-footer{display:flex;align-items:end;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:12px}
.hhc-finlab-inline-field{display:grid;gap:8px;min-width:260px;max-width:380px;flex:1}
.hhc-finlab-inline-field span{font-size:12px;font-weight:900;letter-spacing:.03em;color:var(--muted)}
.hhc-finlab-results-actions-compact .btn{min-height:40px;padding:10px 14px}
#hhc_finlab_view_snapshots_btn{margin-top:6px;justify-self:start}
@media (max-width:1280px){.hhc-finlab-explained-grid,.hhc-finlab-reco-columns{grid-template-columns:1fr}.hhc-finlab-summary-footer{align-items:stretch}.hhc-finlab-results-actions-compact{width:100%}.hhc-finlab-results-actions-compact .btn{flex:1}}
@media (max-width:860px){.hhc-finlab-summary-toggle-row,.hhc-finlab-results-actions-compact{display:grid;grid-template-columns:1fr}.hhc-finlab-inline-field{max-width:none;min-width:0}}

/* Financial Structure Lab premium results refresh */
.hhc-finlab-results{display:grid;gap:18px}
.hhc-finlab-results-head{padding:26px 28px;border-radius:28px;background:
  radial-gradient(circle at top right, rgba(37,99,235,.14), transparent 28%),
  linear-gradient(180deg, rgba(255,255,255,.96), rgba(245,248,255,.98));
  box-shadow:0 24px 54px rgba(15,23,42,.06)}
[data-theme="dark"] .hhc-finlab-results-head{background:
  radial-gradient(circle at top right, rgba(59,130,246,.18), transparent 30%),
  linear-gradient(180deg, rgba(12,18,34,.96), rgba(8,13,25,.98));}
.hhc-finlab-results-head-main{display:grid;gap:16px}
.hhc-finlab-summary-statusband{display:flex;gap:10px;flex-wrap:wrap}
.hhc-finlab-summary-status-pill{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid rgba(37,99,235,.12);background:rgba(255,255,255,.78);font-size:12px;font-weight:800;color:var(--muted)}
[data-theme="dark"] .hhc-finlab-summary-status-pill{background:rgba(15,23,42,.62);border-color:rgba(96,165,250,.16)}
.hhc-finlab-summary-status-pill b{font-size:13px;color:#0f172a}
[data-theme="dark"] .hhc-finlab-summary-status-pill b{color:#eff6ff}
.hhc-finlab-summary-topgrid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.hhc-finlab-exec-card{padding:20px 18px;border-radius:22px;background:rgba(255,255,255,.9);border:1px solid rgba(148,163,184,.14);box-shadow:0 14px 32px rgba(15,23,42,.045)}
[data-theme="dark"] .hhc-finlab-exec-card{background:rgba(15,23,42,.62);border-color:rgba(148,163,184,.12)}
.hhc-finlab-exec-card span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.hhc-finlab-exec-card b{font-size:28px;line-height:1.02;letter-spacing:-.045em;margin-top:10px}
.hhc-finlab-exec-card small{font-size:12px;line-height:1.6;color:var(--muted);margin-top:8px}
.hhc-finlab-exec-card-primary{background:linear-gradient(135deg, rgba(37,99,235,.92), rgba(29,78,216,.88));border-color:transparent;color:#fff}
.hhc-finlab-exec-card-primary span,.hhc-finlab-exec-card-primary small{color:rgba(255,255,255,.82)}
.hhc-finlab-summary-panel{padding:26px 26px 20px;background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(249,251,255,.98));border-color:rgba(37,99,235,.10)}
[data-theme="dark"] .hhc-finlab-summary-panel{background:linear-gradient(180deg, rgba(11,17,31,.96), rgba(8,13,26,.98));border-color:rgba(96,165,250,.14)}
.hhc-finlab-focus-grid{gap:14px}
.hhc-finlab-focus-card,.hhc-finlab-outcome-box,.hhc-finlab-decision-box{border-radius:20px;background:rgba(248,250,252,.92);border:1px solid rgba(148,163,184,.14);box-shadow:0 10px 24px rgba(15,23,42,.035)}
[data-theme="dark"] .hhc-finlab-focus-card,[data-theme="dark"] .hhc-finlab-outcome-box,[data-theme="dark"] .hhc-finlab-decision-box{background:rgba(15,23,42,.56);border-color:rgba(148,163,184,.12)}
.hhc-finlab-focus-card b,.hhc-finlab-outcome-box b,.hhc-finlab-decision-box b{font-size:20px;letter-spacing:-.03em}
.hhc-finlab-mini-pairs div b{font-size:16px}
.hhc-finlab-progress{height:10px;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden}
.hhc-finlab-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#22c55e,#3b82f6)}
.hhc-finlab-summary-footerbar{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(148,163,184,.16)}
.hhc-finlab-inline-field-compact{max-width:300px;min-width:220px}
.hhc-finlab-summary-toggle-row-bottom{margin-top:0;padding-top:0;border-top:0;justify-content:flex-end;flex:1}
.hhc-finlab-summary-toggle-row-bottom .btn{min-height:40px;padding:10px 14px;border-radius:14px}
.hhc-finlab-summary-toggle-row-bottom .btn.is-open,.hhc-finlab-summary-toggle-row-bottom .btn:hover,#hhc_finlab_view_snapshots_btn.is-open{box-shadow:0 12px 28px rgba(37,99,235,.14);border-color:rgba(37,99,235,.24)}
.hhc-finlab-reveal-panel{padding:24px 24px 22px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(248,250,255,.98));border:1px solid rgba(148,163,184,.16);box-shadow:0 16px 34px rgba(15,23,42,.045)}
[data-theme="dark"] .hhc-finlab-reveal-panel{background:linear-gradient(180deg, rgba(12,18,34,.96), rgba(9,14,27,.98));border-color:rgba(148,163,184,.12)}
.hhc-finlab-explained-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.hhc-finlab-explained-card{padding:18px 18px 16px;border-radius:20px;background:rgba(248,250,252,.9);border:1px solid rgba(148,163,184,.14)}
[data-theme="dark"] .hhc-finlab-explained-card{background:rgba(15,23,42,.56);border-color:rgba(148,163,184,.12)}
.hhc-finlab-explained-card b{font-size:22px}
.hhc-finlab-reco-columns{gap:16px}
.hhc-finlab-list{display:grid;gap:10px}
.hhc-finlab-list-item{padding:14px 16px;border-radius:16px;border:1px solid rgba(148,163,184,.14);background:rgba(248,250,252,.88);font-size:13px;line-height:1.65}
[data-theme="dark"] .hhc-finlab-list-item{background:rgba(15,23,42,.54);border-color:rgba(148,163,184,.12)}
.hhc-finlab-list-item.good{border-color:rgba(34,197,94,.26);background:rgba(34,197,94,.08)}
.hhc-finlab-list-item.warn{border-color:rgba(245,158,11,.28);background:rgba(245,158,11,.08)}
.hhc-finlab-list-item.bad{border-color:rgba(239,68,68,.26);background:rgba(239,68,68,.08)}
.hhc-finlab-panel-snapshots .hhc-finlab-metric-row{padding:14px 16px;border-radius:18px;background:rgba(248,250,252,.88);border:1px solid rgba(148,163,184,.14);margin-bottom:10px}
[data-theme="dark"] .hhc-finlab-panel-snapshots .hhc-finlab-metric-row{background:rgba(15,23,42,.54);border-color:rgba(148,163,184,.12)}
.hhc-finlab-snapshot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hhc-finlab-snapshot-detail{margin-top:16px}
#fin_net_worth.is-good,#fin_net_cash_flow.is-good,#fin_savings_rate.is-good,#fin_emergency_progress_text.is-good,#fin_fi_progress_text.is-good,#fin_net_worth_goal_progress_text.is-good,#fin_emergency_allocation_amt.is-good,#fin_investment_allocation_amt.is-good,#fin_profit_loss.is-good,#fin_profit_loss_pct.is-good,#fin_proj_portfolio_12m.is-good,#fin_proj_networth_12m.is-good,#fin_results_health_badge.is-good,#fin_results_health_score.is-good,.hhc-finlab-summary-panel b.is-good{color:#16a34a}
#fin_debt_ratio.is-good,#fin_crypto_weight.is-good,#fin_months_to_emergency.is-good{color:#16a34a}
#fin_net_worth.is-bad,#fin_net_cash_flow.is-bad,#fin_savings_rate.is-bad,#fin_profit_loss.is-bad,#fin_profit_loss_pct.is-bad,#fin_results_health_badge.is-bad,#fin_results_health_score.is-bad,.hhc-finlab-summary-panel b.is-bad{color:#dc2626}
#fin_debt_ratio.is-bad,#fin_crypto_weight.is-bad,#fin_months_to_emergency.is-bad{color:#dc2626}
#fin_net_worth.is-neutral,#fin_net_cash_flow.is-neutral,#fin_savings_rate.is-neutral,#fin_months_to_emergency.is-neutral,#fin_results_health_badge.is-neutral,#fin_results_health_score.is-neutral{color:#0f172a}
[data-theme="dark"] #fin_net_worth.is-neutral,[data-theme="dark"] #fin_net_cash_flow.is-neutral,[data-theme="dark"] #fin_savings_rate.is-neutral,[data-theme="dark"] #fin_months_to_emergency.is-neutral,[data-theme="dark"] #fin_results_health_badge.is-neutral,[data-theme="dark"] #fin_results_health_score.is-neutral{color:#eff6ff}
@media (max-width:1280px){.hhc-finlab-summary-topgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.hhc-finlab-summary-footerbar{align-items:stretch;flex-direction:column}.hhc-finlab-summary-toggle-row-bottom{justify-content:stretch}.hhc-finlab-summary-toggle-row-bottom .btn{flex:1}.hhc-finlab-snapshot-grid,.hhc-finlab-explained-grid,.hhc-finlab-trend-strip,.hhc-finlab-reco-columns{grid-template-columns:1fr}}
@media (max-width:860px){.hhc-finlab-results-head{padding:20px 18px}.hhc-finlab-exec-card b{font-size:24px}.hhc-finlab-summary-topgrid{grid-template-columns:1fr}.hhc-finlab-summary-toggle-row-bottom{display:grid;grid-template-columns:1fr 1fr}.hhc-finlab-inline-field-compact{max-width:none;width:100%}}
@media (max-width:640px){.hhc-finlab-summary-toggle-row-bottom{grid-template-columns:1fr}.hhc-finlab-summary-statusband{display:grid}}

/* Financial Structure Lab dual-panel workspace refinement */
.hhc-finlab-dualstage{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
#hhc_finlab.is-generated .hhc-finlab-dualstage{grid-template-columns:minmax(340px,.4fr) minmax(420px,.6fr)}
.hhc-finlab-formstack,.hhc-finlab-results{min-width:0}
#hhc_finlab.is-generated .hhc-finlab-formstack,
#hhc_finlab.is-generated .hhc-finlab-results{max-height:min(78vh,980px);overflow:auto;padding-right:6px}
#hhc_finlab.is-generated .hhc-finlab-formstack{padding-bottom:12px}
#hhc_finlab.is-generated .hhc-finlab-results{margin-top:0;padding-top:0;border-top:0}
.hhc-finlab-results-topbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:22px;border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.82);position:sticky;top:0;z-index:4;backdrop-filter:blur(10px);margin-bottom:14px}
[data-theme="dark"] .hhc-finlab-results-topbar{background:rgba(9,14,27,.82);border-color:rgba(148,163,184,.14)}
.hhc-finlab-results-toplabel{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.hhc-finlab-results-toptitle{font-size:24px;font-weight:950;letter-spacing:-.04em;line-height:1.04}
.hhc-finlab-results-topactions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.hhc-finlab-result-page{display:none}
.hhc-finlab-result-page.is-active{display:grid;gap:16px}
.hhc-finlab-minimal-actions-v3{position:sticky;bottom:0;z-index:3;padding:12px 4px 4px;background:linear-gradient(180deg,rgba(246,249,255,0),rgba(246,249,255,.92) 32%,rgba(246,249,255,.98))}
[data-theme="dark"] .hhc-finlab-minimal-actions-v3{background:linear-gradient(180deg,rgba(7,11,22,0),rgba(7,11,22,.9) 32%,rgba(7,11,22,.98))}
.hhc-finlab-summary-toggle-row-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.hhc-finlab-summary-toggle-row-bottom .btn{width:100%;justify-content:center;font-weight:800}
.btn-explained{background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;border-color:transparent}
.btn-recommend{background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;border-color:transparent}
.btn-snapshot{background:linear-gradient(135deg,#7c3aed,#8b5cf6);color:#fff;border-color:transparent}
.hhc-finlab-summary-topgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hhc-finlab-results-head h3{margin:6px 0 0;font-size:30px;letter-spacing:-.045em}
.hhc-finlab-results-head p{margin:8px 0 0;max-width:62ch}
.hhc-finlab-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hhc-finlab-focus-card:first-child{grid-column:1/-1}
.hhc-finlab-outcomes-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hhc-finlab-decision-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.hhc-finlab-summary-panel,.hhc-finlab-reveal-panel{overflow:hidden}
.hhc-finlab-results::-webkit-scrollbar,.hhc-finlab-formstack::-webkit-scrollbar{width:8px;height:8px}
.hhc-finlab-results::-webkit-scrollbar-thumb,.hhc-finlab-formstack::-webkit-scrollbar-thumb{background:rgba(148,163,184,.42);border-radius:999px}
.hhc-finlab-results::-webkit-scrollbar-track,.hhc-finlab-formstack::-webkit-scrollbar-track{background:transparent}
@media (max-width:1180px){
  #hhc_finlab.is-generated .hhc-finlab-dualstage{grid-template-columns:1fr}
  #hhc_finlab.is-generated .hhc-finlab-formstack,#hhc_finlab.is-generated .hhc-finlab-results{max-height:none;overflow:visible;padding-right:0}
}
@media (max-width:860px){
  .hhc-finlab-results-topbar{padding:14px;position:static}
  .hhc-finlab-results-toptitle{font-size:22px}
  .hhc-finlab-summary-topgrid,.hhc-finlab-focus-grid,.hhc-finlab-outcomes-grid,.hhc-finlab-decision-grid-4,.hhc-finlab-summary-toggle-row-bottom{grid-template-columns:1fr}
}
