@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+KR:wght@400;500;600;700&display=swap";:root{font-family:DM Sans,Noto Sans KR,system-ui,sans-serif;color:#24314b;background:#f5f7fb;font-synthesis:none;font-size:14px;font-weight:400;--muted: #8490a5;--border: #e6ebf2;--blue: #4468e8;--green: #07836c;--red: #d7515c}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #8badff;outline-offset:3px}select:focus-visible{outline:3px solid #8badff;outline-offset:3px}button{border:0}a{color:inherit}h1,h2,h3,p{margin:0}h1{font-size:30px;letter-spacing:-1px;font-weight:700}h2{font-size:20px;letter-spacing:-.5px}h3{font-size:15px;font-weight:600}small{font-size:12px}strong,b{font-weight:600}.muted{color:var(--muted);font-size:12px}.positive{color:var(--green)!important}.negative,.error-text{color:var(--red)!important}.error-text{font-size:13px}.app-shell{display:flex;min-height:100vh}.sidebar{width:224px;flex-shrink:0;background:#101a2e;color:#a0acc2;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:34px 20px;z-index:20}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;margin:0 7px 52px;color:#fff;font-weight:700;font-size:21px;letter-spacing:1px}.brand small{display:block;font-size:9px;letter-spacing:2.1px;margin-top:4px;color:#8693aa}.brand-mark{width:40px;height:42px;border-radius:12px;background:#4268ef;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-size:29px;font-weight:700;font-style:italic;position:relative}.brand-mark span{font-size:19px;margin-left:-5px;margin-top:-16px}.nav-label{font-size:10px;letter-spacing:1.8px;color:#60718e;margin:0 12px 15px}.sidebar nav{display:grid;gap:7px}.sidebar nav button{background:transparent;color:#95a3bd;text-align:left;border-radius:8px;padding:14px;display:flex;align-items:center;gap:12px;font-weight:500}.sidebar nav button:hover{background:#1a2942;color:#fff}.sidebar nav button.active{background:#24385f;color:#cfddff;box-shadow:inset 3px 0 #6b91ff}.sidebar-bottom{margin-top:auto;border-top:1px solid #263146;padding:25px 5px 0;font-size:12px;color:#c0cadd}.sidebar-bottom small{display:block;color:#5e708d;margin:10px 0 0 14px;font-size:11px}.workspace-dot{display:inline-block;width:5px;height:5px;background:#6f8fff;border-radius:50%;margin-right:8px}.main-shell{margin-left:224px;flex:1;min-width:0}.topbar{height:78px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 38px;background:#fff;gap:20px;position:sticky;top:0;z-index:15}.breadcrumb{font-size:13px;color:var(--muted)}.breadcrumb span{margin:0 13px;color:#cdd4df}.breadcrumb strong{color:#41506a}.topbar-actions{display:flex;align-items:center;gap:15px}.connection{font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:7px}.connection i{width:6px;height:6px;background:#c2933b;border-radius:50%}.connection.online i{background:#19a282}.connection.online{color:#588578}.connection.offline{color:#98734b}.icon-button{display:flex;align-items:center;justify-content:center;background:transparent;color:#8190a7;padding:7px;border-radius:6px}.icon-button:hover{background:#f0f3f9}.emergency-button{padding:10px 15px;display:flex;gap:8px;align-items:center;border:1px solid #efcbd0;background:#fff8f9;color:#c44353;border-radius:7px;font-size:13px;font-weight:600}.workspace{max-width:1620px;margin:auto;padding:36px 38px 24px}.page-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:36px}.eyebrow{font-size:10px;letter-spacing:1.7px;color:#8191ab;font-weight:600;display:block;margin-bottom:8px}.page-heading p{font-size:13px;color:var(--muted);margin-top:10px}.heading-date{text-align:right;color:#66748b;font-size:13px}.heading-date small{display:block;letter-spacing:1px;color:#a7b0c0;margin-top:6px;font-size:9px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:17px;flex-wrap:wrap;gap:8px}.section-heading .eyebrow{font-size:9px;margin-bottom:4px}section+section{margin-top:35px}.freshness{font-size:11px;color:#97a1b2;display:inline-flex;align-items:center;gap:5px}.freshness.stale{color:#b07c21}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metric{background:#fff;border:1px solid var(--border);border-radius:10px;padding:21px 23px 19px}.metric.primary{background:#edf2ff;border-color:#d9e3ff}.metric-label{color:#727f95;display:flex;align-items:center;justify-content:space-between;font-size:12px}.metric-label svg{color:#9ba9c1}.metric.primary .metric-label,.metric.primary .metric-label svg{color:#5c7bd0}.metric-value{font-size:29px;font-weight:600;letter-spacing:-.8px;font-variant-numeric:tabular-nums;margin:19px 0 12px;white-space:nowrap}.metric-value span{font-size:10px;color:#9ca6b5;margin-left:7px;letter-spacing:0;font-weight:400}.metric.primary .metric-value{color:#345bca}.metric-foot{font-size:10px;color:#99a4b5}.panel{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden}.panel-heading{padding:18px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eff2f7;gap:10px}.panel-heading h3{display:flex;align-items:center;gap:8px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}th{text-align:right;padding:12px 23px;background:#fcfdfe;font-size:11px;color:#8c99ad;font-weight:500;border-bottom:1px solid #eff2f7}th:first-child,td:first-child{text-align:left}td{text-align:right;padding:17px 23px;border-bottom:1px solid #f0f3f7;font-variant-numeric:tabular-nums}tr:last-child td{border:0}td:first-child{display:flex;align-items:center;gap:10px}td:first-child small{font-size:10px;color:#a1acbe}.coin-avatar{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:#edf1f9;color:#5b6f98;font-size:13px;font-weight:700;flex-shrink:0}.empty{padding:48px 25px;text-align:center;color:#97a3b5;font-size:13px;line-height:1.9}.notice{display:flex;align-items:flex-start;gap:8px;background:#fff8eb;color:#936e2b;border:1px solid #f1e4ca;padding:12px 14px;border-radius:7px;font-size:12px;line-height:1.7;margin:10px 0}.notice>svg{flex-shrink:0;margin-top:2px}.section-heading>.notice{width:100%}.badge{padding:4px 8px;display:inline-flex;align-items:center;border-radius:4px;font-size:10px;font-weight:500;white-space:nowrap;line-height:1.4}.badge.good{background:#eaf7f2;color:#198772}.badge.bad{background:#fcebee;color:#c95565}.badge.neutral{background:#f0f3f8;color:#8191aa}.badge.warn{background:#fff3df;color:#a1742c}.batch-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:22px;align-items:start}.batch-list .panel-heading{padding:18px}.batch-item{width:100%;display:flex;flex-direction:column;text-align:left;background:#fff;gap:10px;padding:18px;border-bottom:1px solid #eff2f7;border-left:3px solid transparent}.batch-item>div{display:flex;align-items:center;justify-content:space-between;width:100%;gap:5px}.batch-item strong{font-size:12px;color:#62728c;letter-spacing:.3px}.batch-item.chosen{background:#f1f5ff;border-left-color:#4b70df}.batch-item .muted{font-size:11px}.batch-date{font-size:10px;color:#97a4b7}.pagination{display:flex;align-items:center;justify-content:space-between;padding:13px 17px;font-size:11px;color:#95a1b4}.pagination button{border:1px solid var(--border);background:#fff;border-radius:5px;color:#78879f;padding:4px;display:flex}.detail-heading{display:flex;align-items:center;justify-content:space-between;padding:0 0 17px}.detail-heading h3{display:flex;gap:10px;align-items:center;margin-bottom:7px}.detail-heading .muted{font-size:10px;word-break:break-all}.position-card{background:#fff;border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-bottom:16px}.position-heading{padding:18px 21px;background:#fff;width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;color:#2d3b52}.position-heading>div{display:flex;align-items:center;gap:10px}.market-label{font-size:10px;color:#a2acbd}.price{font-size:17px;letter-spacing:-.4px;font-variant-numeric:tabular-nums}.position-facts{display:flex;flex-wrap:wrap;gap:18px;padding:11px 23px;background:#fcfdff;border-top:1px solid #f2f5fa;border-bottom:1px solid #f2f5fa;font-size:10px;color:#8f9bb0}.position-facts b{color:#687891;margin-left:6px;font-variant-numeric:tabular-nums}.chart-toolbar{display:flex;justify-content:space-between;padding:15px 20px 0;align-items:center}.segmented{display:flex;border:1px solid var(--border);border-radius:6px;padding:3px;background:#f7f9fc}.segmented button{padding:5px 12px;background:transparent;color:#8190a7;border-radius:4px;font-size:11px}.segmented button.selected{background:#fff;color:#416ada;box-shadow:0 1px 5px #1a336815}.chart{width:100%;min-width:0}.chart-footer{padding:0 20px 12px;display:flex;justify-content:space-between;align-items:center;gap:8px}.text-button{color:#6d88b9;background:transparent;font-size:11px;padding:4px}.order-strip{display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px;border-top:1px solid #f1f4f8}.order-strip span{background:#f6f8fc;border-radius:4px;padding:4px 8px;color:#8c9ab0;font-size:10px}.order-strip b{color:#6b7c96;margin-right:5px}.batch-detail{min-width:0}.batch-status-panel{margin:12px 0 20px}.batch-status-text{margin:0;padding:18px 22px;max-height:300px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#f8fafc;color:#455570;font:13px/1.85 DM Sans,Noto Sans KR,system-ui,sans-serif;font-variant-numeric:tabular-nums}.ticker-select{display:flex;align-items:center;gap:10px;color:#68778e;font-size:13px}.ticker-select select{padding:8px 10px;min-width:130px;max-width:100%;border:1px solid var(--border);border-radius:6px;color:#344a72;background:#f7f9ff}.target-prices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 22px 16px}.target-prices>div{display:flex;flex-direction:column;gap:6px;border-top:2px solid;padding-top:10px}.target-prices span{font-size:12px;font-weight:600}.target-prices strong{font-size:14px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.target-prices strong small,.target-prices small.muted{font-size:11px;font-weight:400}.ticker-chart>.muted{padding:0 20px 15px}.performance-controls{display:flex;padding:16px 20px;align-items:center;gap:20px;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap}.performance-basis{margin:0 0 16px}.performance-empty .empty strong{display:block;margin-bottom:8px;color:#455570}.date-range{display:flex;align-items:center;gap:8px}.date-range label{display:flex;align-items:center;gap:8px;font-size:10px;color:#8a97ab}.date-range input{border:1px solid var(--border);border-radius:5px;padding:7px;background:#fff;color:#61708a;font-size:12px}.date-range>span{color:#aeb9c9}.performance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.performance-chart.wide{grid-column:span 2}.chart-total{font-size:22px;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.chart-total small{font-size:10px;font-weight:400;letter-spacing:0}.footnote{font-size:11px;color:#96a2b5;margin-top:16px;line-height:1.8}.health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.health-card{padding:25px}.health-card>svg{color:#7892bb;width:21px;margin-bottom:20px}.health-card h3{margin-bottom:18px}.health-card>strong{font-size:16px}.health-card p{color:#99a4b5;font-size:12px;line-height:1.8;margin-top:17px}.event-panel{margin-top:23px}.events{list-style:none;padding:20px 25px;margin:0}.events li{display:flex;gap:18px;padding:14px 0}.events time{font-size:11px;color:#99a6b9;white-space:nowrap;min-width:100px}.event-line{width:5px;height:5px;border-radius:50%;background:#95a9ca;margin-top:5px;flex-shrink:0}.events strong{font-size:11px;color:#7285a3}.events p{font-size:12px;margin-top:7px;color:#8b99ae;word-break:break-word}.workspace-footer{display:flex;justify-content:space-between;border-top:1px solid var(--border);padding-top:21px;margin-top:45px;color:#a6afbf;gap:10px;font-size:10px}.workspace-footer>span:first-child{letter-spacing:1.5px;font-size:9px}.demo-banner{background:#e9efff;border-bottom:1px solid #d6e1ff;color:#5170aa;font-size:12px;padding:9px 25px;text-align:center}.demo-banner a{margin-left:14px}.button{background:#4569e8;color:#fff;padding:12px 18px;border-radius:7px;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:10px}.button.secondary{background:#f2f5fa;color:#7989a2}.button.danger{background:#cd4b5d}.emergency-modal{border:1px solid var(--border);border-radius:15px;max-width:550px;width:calc(100% - 30px);padding:27px;color:#3a485f;box-shadow:0 24px 100px #071b4840}.emergency-modal::backdrop{background:#07132488;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.danger-icon{background:#fff0f2;color:#ce5767;border-radius:11px;padding:12px;display:flex}.emergency-modal h2{font-size:23px}.emergency-modal p{margin:13px 0;font-size:13px;line-height:1.9;color:#8a96aa}.scope-box{display:grid;grid-template-columns:110px 1fr;gap:10px;background:#f5f7fb;padding:15px;border-radius:7px;font-size:12px;margin:18px 0}.scope-box span{color:#96a1b4}.scope-box code{word-break:break-all}.check-row{display:flex;gap:10px;align-items:flex-start;line-height:1.8;font-size:12px;margin:23px 0}.check-row input{margin-top:5px;accent-color:#ca4d61}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.control-state{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:20px 0}.control-state code{font-size:12px;word-break:break-all}.control-result{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;background:#f6f8fc;padding:15px;border-radius:7px;max-height:220px;overflow:auto}.login-page{min-height:100vh;background:linear-gradient(120deg,#edf2fc,#f8faff 60%,#eaf1ff);display:flex;align-items:center;justify-content:center;padding:100px 20px}.login-brand{position:absolute;top:35px;left:45px;display:flex;align-items:center;gap:14px;color:#304569;letter-spacing:1px;font-size:18px;font-weight:700}.login-brand b{font-size:10px;display:block;letter-spacing:2.7px;color:#a3afc2;font-weight:500;margin-top:4px}.login-card{padding:42px;background:#fff;border:1px solid #e1e8f5;border-radius:17px;width:440px;box-shadow:0 20px 65px #17377509}.login-card h1{font-size:35px;line-height:1.5;letter-spacing:-1.6px;margin:10px 0}.login-card>p{font-size:13px;line-height:1.9;color:#96a1b4}.login-card form{margin-top:30px}.login-card label{display:block;font-size:12px;font-weight:500;color:#7b89a0;margin-bottom:18px}.login-card input{display:block;margin-top:8px;width:100%;padding:12px 14px;border:1px solid #e0e6f0;background:#fcfdff;border-radius:7px;outline-offset:2px;color:#34415b}.login-card input::placeholder{color:#b8c1d0;font-size:12px}.login-submit{width:100%;margin-top:8px;justify-content:space-between;padding:14px 17px}.demo-link{font-size:12px;display:block;text-align:center;color:#8597b5;margin-top:23px;text-decoration:none}.login-footer{position:absolute;bottom:24px;display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:center;font-size:11px;color:#9caac0;padding:0 20px}.login-footer>span{font-size:10px;color:#afbacb;margin-left:15px}.session-notice{position:fixed;top:10px;left:50%;transform:translate(-50%);padding:10px 20px;background:#fff5df;border:1px solid #efddb8;border-radius:6px;z-index:50;font-size:12px}@media(min-width:1600px){:root{font-size:15px}.metric-value{font-size:34px}}@media(max-width:1250px){.sidebar{width:190px;padding:28px 14px}.main-shell{margin-left:190px}.workspace{padding:28px 25px}.topbar{padding:0 25px}.metrics{gap:12px}.metric{padding:18px}.metric-value{font-size:23px}.batch-layout{grid-template-columns:210px minmax(0,1fr);gap:16px}.market-label{display:none}.position-facts{gap:10px}.metric-foot{font-size:9px}}@media(max-width:1000px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-value{font-size:30px}.batch-layout{grid-template-columns:1fr}.batch-list{display:flex;flex-wrap:wrap}.batch-list .panel-heading{width:100%}.batch-item{width:50%}.batch-list .pagination{width:100%}.health-grid{grid-template-columns:1fr}.heading-date,.breadcrumb{display:none}.topbar{justify-content:flex-end}.performance-grid{grid-template-columns:1fr}.performance-chart.wide{grid-column:auto}.position-facts{font-size:11px}.date-range label{display:block}.date-range input{display:block;margin-top:5px}}@media(max-width:700px){.app-shell{display:block}.batch-chart-panel>.panel-heading{flex-wrap:wrap}.batch-status-text{padding:14px 16px;font-size:12px}.target-prices{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 14px 12px}.sidebar{position:sticky;top:0;width:100%;padding:12px 17px 0;z-index:25}.brand{font-size:16px;margin:0 0 9px;gap:8px}.brand-mark{width:27px;height:28px;font-size:20px;border-radius:7px}.brand-mark span{font-size:13px;margin-top:-12px}.brand small{display:none}.sidebar nav{display:flex;gap:4px;justify-content:space-between}.sidebar nav button{font-size:12px;padding:12px 10px;gap:7px;border-radius:6px 6px 0 0;justify-content:center;flex:1}.sidebar nav button svg{width:15px}.sidebar nav button.active{box-shadow:inset 0 -2px #7296ff}.nav-label,.sidebar-bottom{display:none}.main-shell{margin:0}.topbar{height:57px;padding:0 15px;position:static}.topbar-actions{gap:10px;width:100%;justify-content:flex-end}.connection{margin-right:auto;font-size:11px}.emergency-button{padding:8px 10px;font-size:12px}.workspace{padding:25px 16px}.page-heading{margin-bottom:27px}h1{font-size:25px}.page-heading p{font-size:12px}.eyebrow{font-size:9px}.section-heading h2{font-size:18px}.metric{padding:17px 14px}.metrics{gap:10px}.metric-value{font-size:25px;margin:16px 0 9px}.metric-label{font-size:11px}.metric-label svg{width:15px}.metric-foot{font-size:9px;line-height:1.6}.metric-value span{font-size:8px;margin-left:5px}.panel-heading{padding:16px}.panel-heading h3{font-size:14px}.panel-heading .muted{font-size:10px}td,th{padding:13px 16px}td:first-child small{display:none}.position-heading{padding:16px 14px}.position-heading>div{gap:6px}.position-heading .coin-avatar{width:24px;height:24px;font-size:11px}.position-heading strong{font-size:13px}.position-heading .badge{font-size:9px}.position-facts{padding:10px 14px;display:grid;grid-template-columns:repeat(2,1fr);gap:9px;font-size:10px}.position-facts b{margin-left:5px}.chart-toolbar{padding:13px 12px 0}.chart-toolbar .muted{font-size:9px}.chart-footer{padding:0 12px 12px;flex-wrap:wrap}.performance-controls{gap:12px;padding:14px}.performance-controls>.muted{width:100%;font-size:10px}.date-range{gap:5px}.date-range input{max-width:128px;font-size:11px;padding:6px}.chart-total{font-size:20px}.workspace-footer{flex-direction:column;font-size:9px;line-height:1.7}.events{padding:10px 16px}.events li{gap:10px}.events time{min-width:auto;font-size:9px}.demo-banner{font-size:10px;line-height:1.7;padding:8px 15px}.demo-banner a{display:block;margin:0}.login-brand{top:22px;left:25px}.login-card{padding:30px 24px}.login-card h1{font-size:30px}.login-footer{position:static;align-self:flex-end;margin-top:25px}.login-page{flex-direction:column;padding:95px 20px 25px}.login-card{width:100%;max-width:430px}.scope-box{grid-template-columns:80px 1fr;font-size:11px}.emergency-modal{padding:21px}.emergency-modal h2{font-size:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}:root{font-size:16px;--muted: #68778e}h3{font-size:16px}.muted,.page-heading p,.metric-label,.panel-heading .muted,.batch-item .muted,.segmented button,.text-button,.date-range label,.date-range input,.position-facts,.health-card p,.events p,.notice,.check-row,.scope-box,.login-card label,.login-card>p,.login-card input::placeholder,.demo-link,.emergency-modal p{font-size:14px}.metric-label,.position-facts,.health-card p,.events p,.empty,.login-card>p,.login-card label,.emergency-modal p{color:#68778e}.metric-foot,.batch-date,.batch-item strong,.batch-item .muted,.freshness,.chart-toolbar .muted,.order-strip span,.footnote,.demo-banner,.events time,.events strong,.connection,.badge{font-size:12px}.metric-foot,.footnote,.freshness,.batch-date,.order-strip span{color:#728198}table{font-size:14px}th{font-size:12px;color:#68778e}.sidebar nav button,.emergency-button{font-size:14px}.metric-value span{font-size:11px}.position-heading strong{font-size:14px}.position-heading .price{font-size:18px}.position-heading .badge{font-size:12px}.position-facts{line-height:1.7}.date-range input{max-width:none}@media(max-width:700px){.sidebar nav button{padding:12px 6px;gap:5px}.position-facts span{display:flex;flex-direction:column}.position-facts b{margin-left:0}.date-range{width:100%;justify-content:space-between}.date-range label{min-width:0}.date-range input{max-width:140px}.performance-controls>.muted{font-size:12px}.chart-total{font-size:19px}}
