:root{--bg:#081014;--panel:#101a20;--panel2:#142129;--line:#263740;--text:#edf5f4;--muted:#9db0b8;--green:#32d99b;--cyan:#55bde8;--red:#ff6b64;--amber:#f1bc56;--radius:6px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,"Noto Sans KR",sans-serif;font-size:15px;letter-spacing:0}.shell{width:min(1480px,calc(100% - 40px));margin:auto}.topbar{position:sticky;top:0;z-index:10;background:rgba(8,16,20,.96);border-bottom:1px solid var(--line)}.topbar-inner{height:64px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none}.brand span{display:grid;place-items:center;width:36px;height:36px;border-radius:5px;background:#123b30;color:var(--green);font-weight:800}.topbar nav{display:flex;gap:20px}.topbar nav a{color:var(--muted);text-decoration:none;font-weight:700}.hero{display:grid;grid-template-columns:1fr auto;align-items:end;gap:24px;padding:48px 0 30px}.hero p,.panel-head p{margin:0 0 8px;color:var(--green);font-size:12px;font-weight:800}.hero h1{margin:0 0 10px;font-size:34px}.hero span,.panel-head span{color:var(--muted)}.hero-status{text-align:right}.hero-status b,.hero-status span{display:block}.hero-status b{font-size:18px}.hero-status span{margin-top:6px;font-size:13px}.notice{margin-bottom:16px;padding:16px 18px;border-left:3px solid var(--amber);background:#191b19}.notice b{color:var(--amber)}.notice p{display:inline;margin-left:10px;color:#c8d2d3}.panel{margin-bottom:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.toolbar{display:flex;align-items:end;gap:32px;padding:16px 18px}.control>span{display:block;margin-bottom:8px;color:var(--muted);font-size:12px;font-weight:700}.segmented{display:flex}.segmented button,select{height:38px;border:1px solid var(--line);background:#0c151a;color:var(--text);padding:0 14px;font-weight:700}.segmented button:first-child{border-radius:5px 0 0 5px}.segmented button:last-child{border-radius:0 5px 5px 0}.segmented button.active{background:#17483b;border-color:#248c6d;color:#fff}.year-control{margin-left:auto;display:flex;align-items:center;gap:8px}.year-control span{position:absolute;transform:translateY(-31px)}.year-control i{font-style:normal;color:var(--muted);font-size:13px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.metric{min-height:116px;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.metric span{display:block;color:var(--muted);font-size:12px}.metric b{display:block;margin:10px 0 6px;font-size:24px}.metric small{color:var(--muted)}.positive{color:var(--green)!important}.negative{color:var(--red)!important}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:18px;border-bottom:1px solid var(--line)}.panel-head h2{margin:0 0 6px;font-size:19px}.panel-head>b{color:var(--green)}.table-scroll{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{padding:13px 15px;border-bottom:1px solid var(--line);text-align:right}th{position:sticky;top:0;background:#0c151a;color:var(--muted);font-size:12px}th:first-child,td:first-child,th:nth-child(2),td:nth-child(2){text-align:left}tr:last-child td{border-bottom:0}tbody tr:hover{background:#14242a}.rank{display:inline-grid;place-items:center;width:25px;height:25px;border:1px solid var(--line);border-radius:50%}.strategy-name b,.strategy-name small{display:block}.strategy-name small{margin-top:4px;color:var(--muted)}.score{font-size:18px;color:var(--green)}.badge{display:inline-block;padding:4px 7px;border:1px solid #316b59;border-radius:4px;color:var(--green);font-size:11px}.two-column{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}.chart{min-height:360px;padding:18px}.chart-row{display:grid;grid-template-columns:120px 1fr 65px;align-items:center;gap:12px;margin:11px 0}.chart-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.bar-track{position:relative;height:18px;background:#0a1216;border:1px solid #203039}.bar-zero{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#52636b}.bar{position:absolute;top:3px;height:10px;border-radius:2px}.bar.pos{left:50%;background:var(--green)}.bar.neg{right:50%;background:var(--red)}.scatter{position:relative;min-height:360px;margin:18px;background:linear-gradient(90deg,transparent 49.8%,#2a3b43 50%,transparent 50.2%),linear-gradient(transparent 49.8%,#2a3b43 50%,transparent 50.2%)}.dot{position:absolute;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;border:2px solid var(--bg);background:var(--cyan)}.dot.top{background:var(--green);width:18px;height:18px}.dot span{position:absolute;left:14px;top:-8px;white-space:nowrap;font-size:11px;color:var(--muted)}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.guide{padding:18px;background:var(--panel)}.guide h3{margin:0 0 8px}.guide p{margin:0 0 12px;color:var(--muted);line-height:1.55}.guide ul{margin:0;padding-left:18px;line-height:1.65}.guide.warn{border-top:3px solid var(--amber)}.assumptions dl{display:grid;grid-template-columns:repeat(2,1fr);margin:0}.assumptions div{padding:14px 18px;border-bottom:1px solid var(--line)}.assumptions dt{color:var(--muted);font-size:12px}.assumptions dd{margin:5px 0 0;line-height:1.5}.empty{display:grid;place-items:center;min-height:220px;color:var(--muted)}@media(max-width:900px){.shell{width:min(100% - 24px,1480px)}.hero{grid-template-columns:1fr;padding-top:30px}.hero-status{text-align:left}.toolbar{align-items:stretch;flex-wrap:wrap;gap:18px}.year-control{margin-left:0}.summary-grid{grid-template-columns:repeat(2,1fr)}.two-column{grid-template-columns:1fr}.guide-grid{grid-template-columns:1fr}.assumptions dl{grid-template-columns:1fr}.topbar nav a:first-child{display:none}}@media(max-width:520px){body{font-size:14px}.shell{width:calc(100% - 16px)}.topbar-inner{height:56px}.brand b{font-size:14px}.topbar nav{gap:10px}.hero h1{font-size:26px}.summary-grid{grid-template-columns:1fr 1fr;gap:8px}.metric{min-height:105px;padding:14px}.metric b{font-size:19px}.segmented{overflow:auto}.control{width:100%}.year-control{flex-wrap:wrap}.year-control span{position:static;transform:none;width:100%;margin-bottom:0}.chart-row{grid-template-columns:92px 1fr 55px;gap:7px}.scatter{margin:10px;min-height:300px}th,td{padding:11px 12px}}
