:root{--ink: #172033;--ink-soft: #5c6573;--navy: #1b3354;--navy-deep: #12243c;--paper: #f3f0ea;--surface: #fffcf8;--line: #e3dcd2;--line-strong: #d2c8ba;--bronze: #8d5e34;--bronze-soft: #f6efe6;--focus: #2d4d78;--shadow: 0 18px 40px rgba(23, 32, 51, .06);--radius: 18px;font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}*{margin:0;padding:0;box-sizing:border-box}body{min-height:100vh;background:radial-gradient(900px 420px at 50% -80px,rgba(255,252,248,.95),transparent 70%),var(--paper);color:var(--ink)}a{color:var(--navy)}h1,h2,h3{font-weight:600;letter-spacing:-.03em;color:var(--navy-deep)}.container{max-width:1120px;margin:0 auto;padding:20px 24px;width:100%}.page{padding-top:12px;padding-bottom:64px}.navbar{position:sticky;top:0;z-index:20;background:#f3f0eae6;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.navbar-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.navbar-header{display:flex;justify-content:space-between;align-items:center;flex:0 0 auto;gap:12px}.navbar-brand{display:inline-flex;align-items:center;gap:10px;color:var(--navy-deep);font-size:16px;font-weight:700;letter-spacing:-.03em;line-height:1}.navbar-brand-logo{width:32px;height:32px;object-fit:contain;border-radius:9px;background:var(--surface);box-shadow:inset 0 0 0 1px var(--line)}.navbar-brand-text{white-space:nowrap}.nav-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:2px}.nav-links a,.nav-text-btn{color:var(--ink-soft);text-decoration:none;padding:8px 11px;border-radius:999px;white-space:nowrap;font-size:13.5px;font-weight:500}.nav-text-btn{background:none;border:0;cursor:pointer;font-family:inherit}.nav-links a:hover,.nav-text-btn:hover,.nav-links a.active{color:var(--navy-deep);background:#fffcf8d9}.menu-toggle{display:none;flex-direction:column;justify-content:space-between;width:28px;height:18px;background:transparent;border:none;cursor:pointer;padding:0}.menu-toggle span{width:100%;height:1.5px;background:var(--navy);border-radius:10px;transition:.2s}.menu-toggle.active span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.card,.auth-card,.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.card{padding:28px;margin:16px 0}.card h1,.card h2,.card h3,.panel h1,.panel h2{margin-bottom:12px}.lead{color:var(--ink-soft);line-height:1.7;margin-bottom:16px}.btn{display:inline-block;padding:12px 22px;background:var(--navy);color:#f7f3ec;border:1px solid var(--navy);border-radius:12px;font-size:15px;font-weight:600;letter-spacing:-.02em;cursor:pointer;text-decoration:none;text-align:center;font-family:inherit}.btn:hover{background:var(--navy-deep)}.btn.secondary{background:transparent;color:var(--navy)}.btn.ghost{background:transparent;color:var(--navy);border-color:var(--line-strong)}.btn.ghost:hover{background:var(--bronze-soft);border-color:var(--line-strong)}.btn.full{width:100%}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:7px;font-size:13px;font-weight:600;color:var(--navy)}input,select,textarea{width:100%;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;font-size:15px;font-family:inherit;background:#fff;color:var(--ink)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--focus);box-shadow:0 0 0 3px #2d4d781f}.alert{padding:13px 14px;border-radius:12px;margin-bottom:16px;font-size:14px;line-height:1.5}.alert.info{background:var(--bronze-soft);color:#5d4630;border:1px solid #eadccb}.stack{width:100%;max-width:440px;margin:28px auto 40px}.auth-card{padding:36px 34px 32px}.auth-head{display:flex;align-items:center;gap:14px;margin-bottom:26px}.auth-head img{width:52px;height:52px;object-fit:contain;border-radius:14px;background:var(--paper);box-shadow:inset 0 0 0 1px var(--line)}.auth-head h1,.auth-title{color:var(--navy-deep);font-size:26px;margin:0 0 18px;letter-spacing:-.04em}.auth-head h1{margin:0}.auth-title{text-align:center}.balance-ticker{overflow:hidden;width:100%;margin-bottom:14px;padding:10px 0;border-radius:6px;background:var(--surface);border:1px solid var(--line)}.balance-ticker-track{display:flex;width:max-content;animation:ticker-scroll 20s linear infinite;will-change:transform}.balance-ticker:hover .balance-ticker-track{animation-play-state:paused}.balance-ticker-group{display:flex;align-items:center;flex-shrink:0;gap:28px;padding-right:28px;white-space:nowrap;font-size:14px;font-weight:700;color:#042e6f}.ticker-total{color:#dc2626}.ticker-user{color:#042e6f}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(var(--ticker-shift, -50%))}}@media(prefers-reduced-motion:reduce){.balance-ticker-track{animation:none}}.muted{color:var(--ink-soft);font-size:14px;line-height:1.65}.split{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px}.terms-box{border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-bottom:16px;background:#faf7f2}.terms-box h3{font-size:14px;margin-bottom:8px}.check{display:flex;gap:8px;align-items:flex-start;margin-bottom:16px;font-size:14px;line-height:1.5}.check input{width:auto;margin-top:3px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:8px 0 4px}.stat-card{padding:18px 18px 16px;text-align:left;box-shadow:none}.stat-label{font-size:12px;color:var(--ink-soft);letter-spacing:.01em;margin-bottom:10px}.stat-value{font-size:28px;font-weight:700;letter-spacing:-.04em;color:var(--navy-deep);font-variant-numeric:tabular-nums}.stat-value.nowrap{white-space:nowrap}.stat-time{margin-left:6px;font-size:14px;font-weight:600;letter-spacing:0;color:var(--ink-soft)}.stat-subtitle{margin-top:6px;color:var(--ink-soft);font-size:12.5px}.buy-stats .stat-value,.buy-stats .stat-subtitle{text-align:center}.buy-stats .stat-subtitle{font-weight:700}.table-wrap{overflow-x:auto;margin-top:8px;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;font-size:13.5px}th,td{border-bottom:1px solid var(--line);padding:12px 14px;text-align:left;white-space:nowrap}tr:last-child td{border-bottom:0}th{color:var(--ink-soft);background:#faf7f2;font-size:12px;font-weight:600}.holiday-toolbar{display:flex;align-items:center;gap:10px;margin:8px 0 16px}.holiday-toolbar .holiday-year,.holiday-toolbar input,.holiday-toolbar .btn{width:auto}.holiday-year{flex:0 0 118px;min-width:118px;padding:10px 12px}.holiday-toolbar input[type=date]{flex:0 0 168px}.holiday-toolbar input[type=text],.holiday-toolbar input:not([type]){flex:1 1 160px;min-width:0}.holiday-toolbar .btn{flex:0 0 auto;padding:10px 16px;white-space:nowrap}.holiday-table th{font-weight:700}.holiday-table th:last-child,.holiday-table td:last-child{text-align:right}.holiday-table tbody tr{cursor:pointer}.holiday-table tbody tr.selected td{background:#f6efe6}.day-limit th{font-weight:700}.day-limit th:first-child,.day-limit td:first-child{width:100%;text-align:right}.day-limit .limit-bundle{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin-left:48px}.day-limit .limit-head,.day-limit .limit-value{width:112px;text-align:right;font-variant-numeric:tabular-nums}.day-limit .adjust-head{width:110px;text-align:center}.day-limit th.num,.day-limit td.num{text-align:right}.day-limit th.center,.day-limit td.center{text-align:center}.day-limit .name{font-weight:700;color:var(--navy)}.day-limit .sub{display:block;margin-top:2px;color:var(--ink-soft);font-size:12px;font-weight:500}.day-limit .pair{display:flex;justify-content:flex-end;align-items:center;gap:4px;margin-left:48px;margin-right:28px}.day-limit .pair-head{display:inline-flex;align-items:center;justify-content:center;width:88px}.day-limit .pair-head:after{content:"";width:16px}.day-limit .adjust{display:inline-flex;align-items:center;justify-content:center;gap:6px}.day-limit .pair .adjust{gap:2px}.day-limit input{width:72px;padding:8px 10px;text-align:right}.day-limit input[readonly]{background:#f6f2eb;color:var(--ink-soft)}.day-limit .suffix{width:32px;font-size:12px;color:var(--ink-soft);text-align:left}.day-limit .pair .suffix{width:14px}.day-limit-actions{display:flex;justify-content:flex-end;margin-top:16px}.table-empty{text-align:center;color:var(--ink-soft);padding:32px 12px;white-space:normal}.sell-gap-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.sell-gap-tools{display:flex;align-items:center;gap:10px}.sell-gap-head .server-select{flex:0 0 180px;margin:0}.sell-gap-price{font-size:16px;font-weight:700;color:var(--navy-deep)}.sell-gap-price span{margin-right:8px;font-size:13px;font-weight:600;color:var(--ink-soft)}.sell-gap-wrap{margin-top:12px}.sell-gap{min-width:980px}.sell-gap th,.sell-gap td{text-align:right}.sell-gap th:first-child{text-align:center}.sell-gap td:first-child{text-align:right}.sell-gap th{background:var(--navy);color:#fff;padding-top:16px;padding-bottom:16px}.sell-gap th button{border:0;background:transparent;color:inherit;font:inherit;font-weight:700;cursor:pointer}.sell-gap th.active{background:#2563eb}.sell-gap td.name{color:#2f855a;font-weight:700}.sell-gap td.up{color:#dc2626;font-weight:700}.sell-gap td.down{color:#2563eb;font-weight:700}.empty-state{text-align:center;padding:32px 12px 12px;color:var(--ink-soft)}.empty-state strong{display:block;margin-bottom:6px;color:var(--navy-deep)}.empty-mark{display:inline-block;margin-bottom:10px;padding:4px 10px;border-radius:999px;background:var(--bronze-soft);color:var(--bronze);font-size:11px;font-weight:700;letter-spacing:.04em}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px;padding:4px;width:fit-content;max-width:100%;background:#f6f2eb;border-radius:999px}.tabs button{border:0;background:transparent;color:var(--ink-soft);border-radius:999px;padding:8px 14px;cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:600}.tabs button.active{background:var(--surface);color:var(--navy-deep);box-shadow:0 1px 2px #1720330f}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.section-title{margin:18px 0 12px;font-size:16px}.intro-note{background:#faf7f2;border:1px solid var(--line);border-radius:16px;padding:20px 22px;line-height:1.85;color:var(--navy-deep);font-size:17px;font-weight:600;letter-spacing:-.03em;word-break:keep-all;margin:8px 0 18px}.intro-accent{color:var(--bronze)}.toons{display:flex;flex-direction:column;gap:14px}.toons img{width:100%;height:auto;border-radius:16px;border:1px solid var(--line)}.manual h2{margin-top:1.2em;font-size:18px}.manual li{margin-left:18px;line-height:1.75;color:var(--ink)}.lotto-games{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.lotto-game{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.game-header{background:var(--navy);color:#f7f3ec;padding:8px 10px;font-weight:600;font-size:13px;letter-spacing:-.02em}.numbers-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;padding:8px}.number-cell{height:28px;border:1px solid #efe8de;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--ink-soft);background:#fff}.number-cell.on{background:var(--navy);color:#f7f3ec;border-color:var(--navy)}.center{text-align:center}.badge{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--bronze-soft);color:var(--bronze);font-size:12px;font-weight:700}.sub-wrap{width:min(440px,100%);margin:0 auto 32px}.sub-sheet{background:var(--surface);border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:22px 18px 18px}.sub-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.sub-head h1{display:flex;align-items:baseline;gap:6px;margin:0;font-size:24px;font-weight:700;letter-spacing:-.04em}.sub-server{font-size:18px;font-weight:500}.sub-days{color:#c4473a;font-size:14px;font-weight:700;white-space:nowrap}.form-group label.sub-label{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.help-dot{width:18px;height:18px;border-radius:50%;border:0;padding:0;background:#5f6b88;color:#fff;font-size:11px;font-weight:700;line-height:18px;cursor:pointer;font-family:inherit}.help-note{flex:1 0 100%;color:var(--ink-soft);font-size:12.5px;font-weight:500;line-height:1.5}.email-row{display:flex;align-items:center;gap:8px}.email-row input{flex:1;min-width:0;width:auto}.btn.withdraw{flex:0 0 auto;background:#8b1e1e;border-color:#8b1e1e;color:#fff;padding:12px 16px}.btn.withdraw:hover{background:#6e1616;border-color:#6e1616}.confirm-backdrop{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:24px;background:#12243c61}.confirm-card{width:min(360px,100%);background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:22px 20px 18px}.confirm-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px}.confirm-brand img{width:36px;height:36px;object-fit:contain;border-radius:10px}.confirm-brand strong{color:var(--navy-deep);font-size:18px;letter-spacing:-.03em}.confirm-card p{margin:0 0 18px;line-height:1.6}.confirm-actions{display:flex;justify-content:flex-end;gap:8px}.confirm-actions .btn.withdraw{flex:0 0 auto}.account-row,.suffix-row{display:flex;align-items:center;gap:8px}.account-suffix{width:72px;flex:0 0 72px;text-align:center}.suffix-row input{width:auto;flex:1 1 auto;min-width:0}.suffix-row span{flex:0 0 auto;min-width:42px;color:var(--ink-soft);font-size:14px}.limit-row input{flex:0 0 120px;width:120px}.limit-won{margin-left:20px;white-space:nowrap;color:var(--navy);font-weight:600;font-variant-numeric:tabular-nums}.sub-tabs{display:grid;grid-template-columns:1fr 1fr;margin:6px 0 14px;border-bottom:1px solid var(--line)}.sub-tabs button{border:0;background:transparent;padding:12px 8px;color:var(--ink-soft);font-family:inherit;font-size:15px;font-weight:600;cursor:pointer}.sub-tabs button.active{color:#3d6fd8;box-shadow:inset 0 -2px #3d6fd8}.sub-box{border:1px solid #d7e2f5;background:#f8fbff;border-radius:16px;padding:16px 14px 6px;margin-bottom:16px}.sub-box h3{margin:0 0 20px;font-size:16px;color:#24324a}.market-rule{border:0;border-top:1px solid #d3dcea;margin:6px 0 14px}.pair-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.pair-row>.form-group,.pair-row .suffix-row{min-width:0}.pair-row .suffix-row input{flex:1 1 0;width:0;min-width:0}.pair-row .suffix-row span{min-width:16px}input.locked{background:#e6e8ed;color:#8b93a1;border-color:#d5d8e0;cursor:not-allowed}input.locked:focus{border-color:#d5d8e0;box-shadow:none}.balance-line{display:flex;justify-content:space-between;padding:8px 0;color:var(--ink-soft)}.ratio-bar{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:999px;margin-bottom:16px;font-size:12px;color:#fff}.ratio-bar span{padding:7px 10px;background:#8aa0c4}.ratio-bar span:last-child{background:#d7e0ee;color:var(--navy);text-align:right}.sub-sheet .btn.full{margin-top:4px}.buy-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px}.buy-controls .form-group{margin:0;flex:0 1 220px}.market-toggle{display:flex;align-items:center;height:46px;padding:4px;background:#f6f2eb;border-radius:12px}.market-toggle button{height:100%;border:0;background:transparent;color:var(--ink-soft);border-radius:9px;padding:0 18px;cursor:pointer;font-family:inherit;font-size:15px;font-weight:600}.market-toggle button.active{background:var(--bronze);color:#f7f3ec}.market-toggle button:disabled{cursor:default;opacity:.45}.buy-controls .server-select{margin-left:auto;flex:0 0 180px}.buy-controls .btn{height:46px;min-width:88px;margin-left:16px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center}.chart-summary{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#6b72801a;color:#172033;font-size:15px;font-weight:700;line-height:1.5}.chart-summary.positive{background:#dc26261a;color:#9f1239}.chart-summary.negative{background:#2563eb14;color:#1e3a8a}.chart-box{position:relative;height:420px}.chart-box canvas{display:block;width:100%;height:100%}.chart-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink-soft);text-align:center}.chart-tip{position:absolute;z-index:2;max-width:220px;padding:8px 10px;border-radius:10px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);font-size:12px;line-height:1.45;white-space:pre-line;pointer-events:none}.signal-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.signal-head .lead{margin:0}.signal-empty{padding:18px;border:1px dashed var(--line-strong);border-radius:14px;color:var(--ink-soft);text-align:center}.signal-reason{white-space:pre-line;line-height:1.5;min-width:240px}.profit-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.profit-head h2{margin:0}.profit-head .server-select{margin:0 0 0 auto;flex:0 0 180px}.profit-head>span{color:var(--ink-soft);font-size:13px;font-weight:600;white-space:nowrap}.profit-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.profit-controls label{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;color:var(--navy)}.profit-controls select,.profit-controls input{width:auto;min-width:148px;padding:8px 12px}.profit-stats{min-width:980px}.profit-stats th,.profit-stats td{text-align:right;white-space:nowrap}.profit-stats th{background:var(--navy);color:#fff}.profit-stats th:first-child{text-align:center}.profit-stats td.name{text-align:right;color:#2f855a;font-weight:700}.profit-stats td.amount{color:#e53e3e;font-weight:700}.profit-stats td.navy{color:var(--navy);font-weight:800}.profit-stats tr.summary{background:#f8f9fa}.profit-stats tr.summary td{color:var(--ink);font-weight:700;border-top:2px solid #dee2e6}.profit-stats tr.summary td.center{text-align:center;font-weight:800}.profit-stats tr.summary td.hot{color:#e53e3e;font-weight:800}.profit-stats td.spark{width:112px}.chart-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin-bottom:8px}.chart-legend button,.chart-legend span{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.chart-legend span{cursor:default}.chart-legend i{width:10px;height:10px;border-radius:99px}.chart-legend button.off{opacity:.35}.profit-summary .stat-value,.profit-summary .stat-subtitle{text-align:center}.profit-ratio{display:flex;flex-direction:column;align-items:center;gap:6px}.profit-ratio-bar{display:flex;width:148px;height:8px;overflow:hidden;border-radius:99px;background:#edf1f7}.profit-ratio-bar i{display:block;height:100%}.profit-ratio-bar .kospi{background:#0f2a5fe0}.profit-ratio-bar .kosdaq{background:#dd6b20e0}.profit-ratio-legend{display:flex;justify-content:center;width:148px;gap:4px;font-size:13px;font-weight:700}.profit-ratio-legend .kospi{color:#0f2a5f}.profit-ratio-legend .kosdaq{color:#dd6b20}.stats.balance-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.balance-heading{text-align:center}.treemap{position:relative;width:100%}.treemap-tile{position:absolute;box-sizing:border-box;border:2px solid #fff;color:#fff;padding:8px;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center;text-align:center}.treemap-tile span{display:flex;flex-direction:column;gap:2px;max-width:100%;font-size:13px;line-height:1.3;text-shadow:0 1px 2px rgba(0,0,0,.35)}.treemap-tile b{font-weight:500}.treemap-tile b:first-child{font-weight:700}.modal-backdrop{position:fixed;inset:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:24px;background:#11182773}.modal-card{width:min(920px,100%);max-height:calc(100vh - 48px);overflow:auto;padding:24px;border-radius:18px;background:#fff}.balance-growth{margin:0 0 8px;text-align:center;font-weight:700}.balance-growth.up{color:#dc2626}.balance-growth.down{color:#2563eb}.stat-value.up{color:#dc2626}.stat-value.down{color:#2563eb}@media(max-width:900px){.stats,.grid-2,.lotto-games{grid-template-columns:1fr 1fr}.stats.balance-stats{grid-template-columns:1fr}}@media(max-width:768px){.menu-toggle{display:flex}.navbar-row{flex-direction:column;align-items:stretch}.navbar-header{width:100%}.nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;padding-bottom:8px}.nav-links.active{display:flex}.nav-links a,.nav-text-btn{border-radius:10px;text-align:left}.stats,.grid-2,.lotto-games{grid-template-columns:1fr}.buy-controls .form-group{flex-basis:100%}.auth-card{padding:26px 20px}}
