:root{--bg:#f5f6f8;--surface:#fff;--surface-2:#ebedf1;--border:#e4e6ec;--text:#0d0f14;--dim:#71767f;--faint:#9aa0aa;--up:#e0364f;--down:#2563eb;--shadow:0 1px 2px #10141e0a, 0 6px 18px #10141e0d;--shadow-pop:0 8px 30px #10141e24;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Pretendard,Malgun Gothic,system-ui,sans-serif}[data-theme=dark]{--bg:#0a0c10;--surface:#14171d;--surface-2:#1c2029;--border:#252a34;--text:#eceff4;--dim:#8d94a1;--faint:#6c737f;--up:#ff5f75;--down:#5b9dff;--shadow:none;--shadow-pop:0 8px 30px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;transition:background-color .18s,color .18s}.app{max-width:520px;padding:22px 16px calc(48px + env(safe-area-inset-bottom));margin:0 auto}.head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.head h1{letter-spacing:-.035em;margin:0;font-size:20px;font-weight:700}.dot{color:var(--up)}.tools{gap:4px;display:flex}.icon{width:34px;height:34px;color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;padding:0;transition:background-color .15s,color .15s;display:grid}.icon:hover{background:var(--surface-2);color:var(--text)}.searchbox{margin-bottom:12px;position:relative}.search-icon{color:var(--faint);pointer-events:none;position:absolute;top:14px;left:13px}.searchbox input{width:100%;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:13px;outline:none;padding:12px 38px;font-family:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}.searchbox input::placeholder{color:var(--faint)}.searchbox input:focus{border-color:color-mix(in srgb, var(--text) 28%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--text) 7%, transparent)}.clear{background:var(--surface-2);width:26px;height:26px;color:var(--dim);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;font-size:16px;line-height:1;display:grid;position:absolute;top:10px;right:9px}.hits{z-index:20;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:14px;margin:0;padding:5px;list-style:none;position:absolute;top:calc(100% + 7px);left:0;right:0}.hits li button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;flex-direction:column;gap:2px;padding:10px 11px;font-family:inherit;display:flex}.hits li button:hover{background:var(--surface-2)}.hit-name{font-size:14.5px;font-weight:500}.hit-meta{color:var(--dim);font-size:11.5px}.hits .empty{color:var(--dim);padding:12px;font-size:13.5px}.segmented{background:var(--surface-2);border-radius:12px;gap:2px;margin-bottom:14px;padding:3px;display:flex}.seg{color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;padding:7px 0;font-family:inherit;font-size:13px;font-weight:500;transition:background-color .15s,color .15s}.seg.on{background:var(--surface);color:var(--text);box-shadow:var(--shadow);font-weight:600}.cards{flex-direction:column;gap:11px;display:flex}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px;padding:15px 16px 16px}.card.skeleton{opacity:.5}.card-top{align-items:center;gap:7px;margin-bottom:8px;display:flex}.card-open{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:baseline;gap:7px;padding:0;font-family:inherit;display:flex}.chev{color:var(--faint);flex-shrink:0;align-self:center;transition:transform .15s,color .15s}.card-open:hover .chev{color:var(--text);transform:translate(2px)}.name{letter-spacing:-.01em;font-size:15.5px;font-weight:600}.ticker{color:var(--faint);font-variant-numeric:tabular-nums;font-size:11px}.remove{width:24px;height:24px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;margin-left:auto;padding:0;font-size:16px;line-height:1;transition:background-color .15s,color .15s;display:grid}.remove:hover{background:var(--surface-2);color:var(--text)}.card-price{align-items:center;gap:8px;margin-bottom:12px;display:flex}.card-price strong{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:27px;font-weight:700}.chg{font-variant-numeric:tabular-nums;border-radius:999px;padding:3px 8px;font-size:12.5px;font-weight:600}.chg.up{color:var(--up);background:color-mix(in srgb, var(--up) 11%, transparent)}.chg.down{color:var(--down);background:color-mix(in srgb, var(--down) 11%, transparent)}.spark{width:100%;height:58px;display:block;overflow:visible}.spark.empty{background:var(--surface-2);border-radius:9px}.spark-wrap{touch-action:pan-y;cursor:crosshair}.spark-dates{color:var(--faint);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:6px;font-size:10.5px;display:flex}.scrub-date{background:var(--surface-2);color:var(--dim);font-variant-numeric:tabular-nums;border-radius:999px;padding:3px 8px;font-size:12.5px;font-weight:600}.band{border-top:1px solid var(--border);margin-top:15px;padding-top:13px}.band-head,.band-foot{color:var(--dim);font-variant-numeric:tabular-nums;justify-content:space-between;font-size:11.5px;display:flex}.band-head{margin-bottom:7px}.band-label{color:var(--text);font-weight:600}.track{background:linear-gradient(90deg, color-mix(in srgb, var(--down) 55%, transparent), var(--surface-2) 50%, color-mix(in srgb, var(--up) 55%, transparent));border-radius:2px;height:4px;margin-bottom:6px;position:relative}.marker{background:var(--text);border:2.5px solid var(--surface);width:12px;height:12px;box-shadow:0 0 0 1px var(--border);border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.verdict{color:var(--dim);margin:11px 0 0;font-size:12.5px;line-height:1.55}.sheet-backdrop{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#080a0e6b;justify-content:center;align-items:flex-end;animation:.16s fade;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:520px;max-height:85vh;padding:10px 20px calc(22px + env(safe-area-inset-bottom));background:var(--surface);border-radius:22px 22px 0 0;animation:.22s cubic-bezier(.32,.72,0,1) rise;overflow-y:auto}.sheet-grip{background:var(--surface-2);border-radius:2px;width:36px;height:4px;margin:0 auto 14px}.sheet h2{letter-spacing:-.02em;margin:0 0 16px;font-size:17px;font-weight:700}.sheet dl{margin:0}.sheet dt{color:var(--text);margin-bottom:5px;font-size:13.5px;font-weight:600}.sheet dd{color:var(--dim);margin:0 0 18px;font-size:13.5px;line-height:1.6}.sheet dd b{color:var(--text);font-weight:600}.sheet-note{background:var(--surface-2);color:var(--dim);border-radius:11px;margin:0 0 16px;padding:11px 13px;font-size:12.5px;line-height:1.5}.sheet-close{background:var(--text);width:100%;color:var(--surface);cursor:pointer;border:0;border-radius:13px;padding:13px;font-family:inherit;font-size:14.5px;font-weight:600}.sheet.detail{max-height:92vh}.detail-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.detail-head h2{margin:0 0 2px}.detail-head .ticker{font-size:11.5px}.detail-label{color:var(--dim);margin:22px 0 9px;font-size:12px;font-weight:600}.returns{background:var(--surface-2);border-radius:12px;grid-template-columns:repeat(5,1fr);gap:2px;padding:3px;display:grid}.ret{background:var(--surface);border-radius:9px;flex-direction:column;align-items:center;gap:3px;padding:10px 2px;display:flex}.ret-label{color:var(--dim);font-size:11px}.ret-val{color:var(--dim);font-variant-numeric:tabular-nums;font-size:12.5px;font-weight:600}.ret-val.up{color:var(--up)}.ret-val.down{color:var(--down)}.band.bare{border-top:0;margin-top:0;padding-top:0}.facts{flex-wrap:wrap;gap:8px;margin:22px 0 20px;display:flex}.facts>div{background:var(--surface-2);border-radius:12px;flex:1;min-width:96px;padding:11px 12px}.facts dt{color:var(--dim);margin-bottom:3px;font-size:11px;font-weight:500}.facts dd{font-variant-numeric:tabular-nums;margin:0;font-size:14px;font-weight:600}.detail .segmented{margin-bottom:12px}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{transform:translateY(100%)}}@media (prefers-reduced-motion:reduce){.sheet-backdrop,.sheet{animation:none}}.notice,.hint{color:var(--dim);text-align:center;margin:16px 0 0;font-size:13px}.err{color:var(--dim);margin:4px 0 0;font-size:13px}.foot{color:var(--faint);text-align:center;margin-top:28px;font-size:11.5px}
