:root{
  --bg:#FDFCFB;
  --surface:#fff;
  --surface-soft:#F5F5F4;
  --surface-blue:#F4F6FF;
  --text:#1C1B1B;
  --muted:#707282;
  --line:#E8E6E7;
  --line-strong:#D8D6DB;
  --primary:#0000FF;
  --primary-soft:#EEF0FF;
  --green:#159447;
  --green-soft:#EAF8EE;
  --orange:#B96300;
  --red:#BA1A1A;
  --shadow:0 14px 40px rgba(25,24,30,.06);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,"Noto Sans TC",system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
button,a{font:inherit;color:inherit}svg{display:block}
.app-shell{max-width:760px;margin:0 auto;min-height:100vh;padding:0 24px 48px}
.dashboard-hero{padding:34px 2px 22px}
.section-kicker{font-size:12px;color:var(--primary);font-weight:650;letter-spacing:.02em}
.dashboard-hero h1{margin:7px 0 0;font-size:34px;line-height:1.08;letter-spacing:-.035em;font-weight:650}
.dashboard-hero p{margin:12px 0 0;color:#667089;font-size:15px;line-height:1.6}
.summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:6px 0 26px}
.summary-item{background:#fff;padding:16px 14px}.summary-item span{display:block;color:#747A8C;font-size:11px}.summary-item strong{display:block;margin-top:7px;font-size:18px;font-weight:600;letter-spacing:-.02em}
.asset-panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);overflow:hidden}
.detail-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 22px 18px}
.detail-title-row h2{font-size:21px;margin:5px 0 0;letter-spacing:-.02em}
.freshness{font-size:12px;color:#6C7284;background:#F5F5F6;border-radius:999px;padding:7px 10px}
.asset-scroll{overflow-x:auto;overflow-y:hidden;border-top:1px solid var(--line);-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#D8D6DB transparent}
.asset-scroll::-webkit-scrollbar{height:6px}.asset-scroll::-webkit-scrollbar-thumb{background:#D8D6DB;border-radius:999px}.asset-scroll::-webkit-scrollbar-track{background:transparent}
.asset-table{min-width:1299px}.asset-header,.asset-row{display:grid;grid-template-columns:175px 95px 150px 175px 125px 225px 215px 24px;gap:14px;align-items:center;padding-left:18px;padding-right:18px}.asset-header{height:38px;background:#FAFAFB;border-bottom:1px solid var(--line);color:#747A8C;font-size:11px;font-weight:500;white-space:nowrap}.asset-row{position:relative;z-index:1;min-height:68px;padding-top:14px;padding-bottom:14px;text-decoration:none;background:#fff;cursor:pointer}
.asset-row:hover{background:#FCFCFD}.asset-row:focus-visible{outline:3px solid var(--primary-soft);outline-offset:-3px}
.asset-cell{display:flex;flex-direction:column;gap:7px;min-width:0}.asset-cell>strong{font-size:15px;font-weight:600;white-space:nowrap}
.asset-id-line{display:flex;align-items:center;min-width:0}.asset-id-line>span{display:flex;flex-direction:column;gap:3px;min-width:0}.asset-id-line strong{font-size:15px;font-weight:600}.asset-id-line em{font-style:normal;color:#747A8C;font-size:11px;white-space:nowrap}
.change-cell strong{font-size:13px}.change-cell strong.up{color:var(--red)}.change-cell strong.down{color:var(--green)}
.allocation-cell strong{font-size:13px}.next-trigger-cell strong,.recent-switch-cell strong{font-size:13px}
.chev{font-size:30px;line-height:1;color:#A5A8B2;text-align:right}
.error-box{margin-top:20px;border-radius:18px;padding:16px;background:#FFF0F0;color:#9F1E24;font-size:13px;line-height:1.6}
@media(max-width:680px){.app-shell{padding-left:18px;padding-right:18px}.dashboard-hero{padding-top:26px}.dashboard-hero h1{font-size:30px}.detail-title-row{padding:18px}.summary-item{padding:14px 11px}.asset-header,.asset-row{padding-left:14px;padding-right:14px}}
@media(max-width:460px){.app-shell{padding-left:14px;padding-right:14px}.summary-item strong{font-size:16px}}
.asset-row + .asset-row{border-top:1px solid var(--line)}
.asset-row-static{cursor:default}
.asset-row-static:hover{background:#fff}
.chev.muted{visibility:hidden}
