:root{--bg:#0b0f17;--surface:#131a26;--surface-2:#1e2838;--border:#ffffff14;--text:#e8edf5;--text-muted:#97a2b5;--accent:#4c8dff;--amber:#f5a623;--green:#34d399;--red:#f87171;--tier-high:#34d399;--tier-good:#60a5fa;--tier-mid:#fbbf24;--tier-low:#f87171;--header-rgb:11, 15, 23;--chrome-bg:#18203080;--chrome-grad-a:#ffffff1f;--chrome-grad-b:#ffffff05;--chrome-grad-c:#ffffff12;--chrome-border:#ffffff29;--chrome-inset-hi:#ffffff24;--chrome-inset-lo:#00000040;--pill-bg:#ffffff17;--pill-border:#ffffff14;--shimmer:#ffffff0d;--chart-grid:#ffffff0a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font:100%/1.55 system-ui,-apple-system,Segoe UI,Roboto,Noto Sans KR,sans-serif}:root[data-theme=light]{--bg:#f2f4f8;--surface:#fff;--surface-2:#e7ebf2;--border:#0f172a1a;--text:#16202e;--text-muted:#57637a;--accent:#2f6fe4;--amber:#d97706;--green:#059669;--red:#dc2626;--tier-high:#059669;--tier-good:#2f6fe4;--tier-mid:#d97706;--tier-low:#dc2626;--header-rgb:242, 244, 248;--chrome-bg:#ffffff9e;--chrome-grad-a:#ffffffe6;--chrome-grad-b:#ffffff59;--chrome-grad-c:#fff9;--chrome-border:#0f172a1a;--chrome-inset-hi:#ffffffd9;--chrome-inset-lo:#0f172a0f;--pill-bg:#0f172a12;--pill-border:#0f172a0f;--shimmer:#0f172a0d;--chart-grid:#0f172a0f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;margin:0}body{background:var(--bg);min-height:100dvh}.app-frame{max-width:480px;min-height:100dvh;margin:0 auto}.page{padding:20px 16px calc(104px + env(safe-area-inset-bottom));flex-direction:column;gap:14px;display:flex}.section-title{color:var(--text-muted);margin-bottom:10px;font-size:.85rem;font-weight:600}.wake-banner{z-index:60;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--text);text-align:center;background:#4c8dff29;border-bottom:1px solid #4c8dff66;padding:9px 12px;font-size:.8rem;position:sticky;top:0}.page-header,.detail-header{z-index:30;background:linear-gradient(to bottom, rgba(var(--header-rgb), .94), rgba(var(--header-rgb), .8) 65%, rgba(var(--header-rgb), 0));-webkit-backdrop-filter:blur(16px)saturate(160%);backdrop-filter:blur(16px)saturate(160%);margin:-20px -16px 0;padding:18px 16px 16px;position:sticky;top:0;-webkit-mask-image:linear-gradient(#000 calc(100% - 12px),#0000);mask-image:linear-gradient(#000 calc(100% - 12px),#0000)}.page-header h1{letter-spacing:-.025em;font-size:1.6rem;font-weight:700;line-height:1.15}.page-header .page-sub{margin-top:6px}.page-sub{color:var(--text-muted);font-size:.8rem}h2.card-title{color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.85rem;font-weight:600;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:16px}.hint{color:var(--text-muted);font-size:.8rem}.hint a{color:var(--accent)}.error-box{background:#f871711f;border:1px solid #f8717166;border-radius:12px;padding:12px 14px;font-size:.85rem}.disclaimer{color:var(--text-muted);padding:0 4px;font-size:.72rem;line-height:1.5}.list{flex-direction:column;gap:8px;display:flex}.ticker-row{background:var(--surface);border:1px solid var(--border);min-height:64px;color:inherit;cursor:pointer;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;transition:background-color .2s,border-color .2s;display:flex}.ticker-row:focus-visible{background:var(--surface-2);border-color:#ffffff29}@media (hover:hover){.ticker-row:hover{background:var(--surface-2);border-color:#ffffff29}}.ticker-id{flex-direction:column;min-width:0;display:flex}.ticker-symbol{font-variant-numeric:tabular-nums;font-weight:700}.ticker-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.ticker-right{flex-shrink:0;align-items:center;gap:12px;display:flex}.ticker-price{font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:.9rem}.score-badge{font-variant-numeric:tabular-nums;border:1.5px solid;border-radius:10px;justify-content:center;align-items:center;min-width:44px;height:32px;font-weight:700;display:inline-flex}.detail-header{align-items:center;gap:10px;padding-top:12px;padding-bottom:20px;display:flex}.edge-swipe-zone{z-index:45;touch-action:none;width:22px;position:fixed;top:0;bottom:0;left:0}.detail-title{flex:1;min-width:0}.detail-title h1{letter-spacing:-.02em;font-size:1.3rem;font-weight:700}.detail-title .page-sub{margin-top:3px}.icon-btn{border:1px solid var(--border);background:var(--surface);width:44px;height:44px;color:var(--text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;transition:background-color .2s;display:inline-flex}.icon-btn:focus-visible{background:var(--surface-2)}@media (hover:hover){.icon-btn:hover{background:var(--surface-2)}}.icon-btn.star.on{color:var(--amber);border-color:#f5a62380}.score-card{justify-content:space-between;align-items:center;gap:12px;display:flex}.price-block{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.detail-price{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.gauge{flex-direction:column;align-items:center;gap:2px;display:flex}.gauge-score{font-variant-numeric:tabular-nums;font-size:2.1rem;font-weight:800}.gauge-max{font-size:.7rem}.chip{border:1px solid;border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:600;display:inline-block}.chip.modifier{color:var(--amber);border-color:#f5a62380}.band-range{align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.band-price{font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:700}.band-dash{color:var(--text-muted)}.band-track{background:var(--surface-2);border-radius:999px;height:8px;margin:6px 4px 14px;position:relative}.band-zone{background:#f5a62359;border-radius:999px;position:absolute;top:0;bottom:0}.band-marker{background:var(--text);border:2.5px solid var(--bg);border-radius:50%;width:14px;height:14px;margin:-7px 0 0 -7px;position:absolute;top:50%}.subscore-row{grid-template-columns:76px 1fr 34px;align-items:center;gap:10px;padding:7px 0;display:grid}.subscore-name{color:var(--text-muted);font-size:.82rem}.subscore-track{background:var(--surface-2);border-radius:999px;height:8px;overflow:hidden}.subscore-fill{border-radius:999px;width:100%;height:100%}.subscore-value{font-variant-numeric:tabular-nums;text-align:right;font-size:.85rem;font-weight:600}.chart-mount{width:100%}.chart-fallback{min-height:320px}.legend{align-items:center;gap:6px;font-size:.7rem;font-weight:400;display:inline-flex}.legend i{border-radius:2px;width:14px;height:2px;display:inline-block}.index-strip{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.index-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:2px;min-height:84px;padding:12px;display:flex}.index-name{color:var(--text-muted);white-space:nowrap;font-size:.7rem}.index-price{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:.95rem;font-weight:700}.index-change{font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:600}.index-change.up{color:var(--green)}.index-change.down{color:var(--red)}.index-caption{color:var(--text-muted);text-align:right;margin-top:6px;font-size:.68rem}@property --brief-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.brief-frame{background:conic-gradient(from var(--brief-angle), #4c8dff, #8b5cf6 30%, #4c8dff 55%, #a78bfa 80%, #4c8dff);border-radius:17px;padding:1.5px;animation:4s linear infinite brief-rotate}@keyframes brief-rotate{to{--brief-angle:360deg}}.brief-card{border:none;border-radius:15.5px}.brief-body{grid-template-rows:0fr;transition:grid-template-rows .45s cubic-bezier(.2,.8,.2,1);display:grid}.brief-frame.expanded .brief-body{grid-template-rows:1fr}.brief-body-inner{min-height:0;overflow:hidden}.brief-text{margin-bottom:12px;font-size:.88rem;line-height:1.65}.brief-chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.chip.sector-up{color:var(--green);border-color:#34d39973}.chip.sector-down{color:var(--red);border-color:#f8717173}.source-badge{border:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);border-radius:6px;margin-right:6px;padding:0 6px;font-size:.65rem;display:inline-block}.news-list{flex-direction:column;padding:0;list-style:none;display:flex}.news-item{color:inherit;border-bottom:1px solid var(--border);cursor:pointer;gap:12px;padding:14px 4px;text-decoration:none;transition:background-color .2s;display:flex}.news-list li:last-child .news-item{border-bottom:none}.news-item:focus-visible .news-title{color:var(--accent)}@media (hover:hover){.news-item:hover .news-title{color:var(--accent)}}.news-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:7px}.news-body{flex-direction:column;gap:5px;display:flex}.news-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.95rem;line-height:1.5;transition:color .2s;display:-webkit-box;overflow:hidden}.news-time{color:var(--text-muted);font-size:.75rem}.feed-list{flex-direction:column;padding:0;list-style:none;display:flex}.feed-item{color:inherit;cursor:pointer;flex-direction:column;gap:7px;padding:17px 2px;text-decoration:none;display:flex}.feed-title{letter-spacing:-.012em;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1.06rem;font-weight:600;line-height:1.45;transition:color .2s;display:-webkit-box;overflow:hidden}.feed-item:focus-visible .feed-title{color:var(--accent)}@media (hover:hover){.feed-item:hover .feed-title{color:var(--accent)}}.feed-meta{color:var(--text-muted);font-size:.8rem}.settings-row{justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.settings-label{font-size:.92rem;font-weight:600}.segmented{background:var(--surface-2);border-radius:12px;gap:2px;padding:3px;display:flex}.segmented button{color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:10px;min-height:32px;padding:6px 14px;font-size:.82rem;font-weight:600;position:relative}.segmented button.on{color:var(--text)}.segmented .segment-pill{background:var(--surface);border:1px solid var(--border);border-radius:10px;position:absolute;inset:0;box-shadow:0 1px 4px #0000002e}.segmented button>span{position:relative}.watch-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:8px 0;display:flex}.watch-row:last-of-type{border-bottom:none}.watch-remove{border:1px solid var(--border);color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border-radius:9px;min-height:32px;padding:5px 11px;font-size:.78rem;transition:color .2s,border-color .2s}@media (hover:hover){.watch-remove:hover{color:var(--red);border-color:#f8717180}}.status-dot{border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.info-line{justify-content:space-between;gap:12px;padding:6px 0;font-size:.85rem;display:flex}.info-line dt{color:var(--text-muted)}.info-line dd{text-align:right}.search-input{border:1px solid var(--border);background:var(--surface);width:100%;height:48px;color:var(--text);border-radius:14px;padding:0 16px;font-size:1rem}.search-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.search-input::placeholder{color:var(--text-muted)}.tab-bar{bottom:calc(12px + env(safe-area-inset-bottom));background:linear-gradient(135deg, var(--chrome-grad-a), var(--chrome-grad-b) 45%, var(--chrome-grad-c)), var(--chrome-bg);-webkit-backdrop-filter:blur(24px)saturate(180%);backdrop-filter:blur(24px)saturate(180%);border:1px solid var(--chrome-border);width:calc(100% - 24px);max-width:456px;box-shadow:0 8px 32px #00000059, inset 0 1px 0 var(--chrome-inset-hi), inset 0 -1px 0 var(--chrome-inset-lo);z-index:50;border-radius:26px;display:flex;position:fixed;left:50%;overflow:hidden;transform:translate(-50%)}.tab-item{min-height:56px;color:var(--text-muted);cursor:pointer;flex:1;justify-content:center;align-items:center;padding:5px 0;font-size:.66rem;text-decoration:none;transition:color .2s;display:flex}.tab-item-inner{border-radius:15px;flex-direction:column;align-items:center;gap:3px;padding:6px 14px 5px;display:flex;position:relative}.tab-item-inner>:not(.tab-pill){position:relative}.tab-pill{background:var(--pill-bg);border:1px solid var(--pill-border);border-radius:15px;position:absolute;inset:0}.tab-item.active{color:var(--text)}.tab-item.active svg{color:var(--accent)}.install-banner{bottom:calc(92px + env(safe-area-inset-bottom));z-index:55;background:linear-gradient(135deg, var(--chrome-grad-a), var(--chrome-grad-b) 45%, var(--chrome-grad-c)), var(--chrome-bg);-webkit-backdrop-filter:blur(24px)saturate(180%);backdrop-filter:blur(24px)saturate(180%);border:1px solid var(--chrome-border);border-radius:18px;align-items:center;gap:12px;max-width:456px;margin:0 auto;padding:12px 14px;display:flex;position:fixed;left:12px;right:12px;box-shadow:0 8px 32px #00000059}.install-icon{border-radius:10px;flex-shrink:0}.install-text{flex-direction:column;gap:2px;min-width:0;font-size:.78rem;line-height:1.45;display:flex}.install-text strong{font-size:.88rem}.install-text span{color:var(--text-muted)}.install-cta{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:12px;flex-shrink:0;min-height:40px;padding:9px 16px;font-size:.85rem;font-weight:700}.install-close{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.skeleton{background:var(--surface);min-height:64px;position:relative;overflow:hidden}.detail-skeleton{min-height:180px}.detail-sections{flex-direction:column;gap:14px;display:flex}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, var(--shimmer), transparent);animation:1.4s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){*,:after{transition:none!important;animation:none!important}}@media (prefers-reduced-transparency:reduce){.tab-bar,.page-header,.detail-header,.wake-banner{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;-webkit-mask-image:none;mask-image:none}}@media (prefers-contrast:more){.card,.ticker-row,.index-card,.search-input,.icon-btn{border-color:#ffffff59}.tab-bar{background:var(--bg);border-color:#ffffff73}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
