:root{--bg: #F2F2F7;--surface: #FFFFFF;--text: #1C1C1E;--text-secondary: #8E8E93;--text-tertiary: #AEAEB2;--separator: #C6C6C8;--separator-light: #E5E5EA;--green: #34C759;--red: #FF3B30;--yellow: #FF9500;--blue: #007AFF;--teal: #5AC8FA;--bw-orange: #FF3900;--sp-xs: 4px;--sp-s: 8px;--sp-m: 12px;--sp-l: 16px;--sp-xl: 20px;--sp-2xl: 24px;--radius: 12px;--radius-s: 8px;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-lg: 0 4px 12px rgba(0,0,0,.08)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Inter,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text);min-height:100dvh;padding-bottom:80px;max-width:430px;margin:0 auto}.display{font-size:34px;font-weight:700;letter-spacing:-.4px;line-height:1.1}.title{font-size:20px;font-weight:600;letter-spacing:-.2px}.headline{font-size:17px;font-weight:600}.body{font-size:15px;font-weight:400;line-height:1.4}.caption{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.footnote{font-size:13px;color:var(--text-secondary)}.page-header{padding:var(--sp-xl) var(--sp-l) var(--sp-m);position:sticky;top:0;background:var(--bg);z-index:100;border-bottom:.5px solid var(--separator-light)}.header-row{display:flex;justify-content:space-between;align-items:center}.page-header h1{font-size:28px;font-weight:700;letter-spacing:-.3px}.header-logo{width:36px;height:36px;object-fit:contain}.page-header .date{font-size:15px;color:var(--text-secondary);margin-top:2px}.date-nav{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.nav-btns{display:flex;gap:6px}.nav-btn{padding:4px 10px;border:1px solid var(--separator-light);background:var(--surface);border-radius:6px;font-size:11px;font-weight:600;color:var(--blue);cursor:pointer;font-family:inherit;transition:all .2s}.nav-btn:active:not(.disabled){transform:scale(.95)}.nav-btn.disabled{color:var(--separator);border-color:var(--separator-light);cursor:default;background:transparent}.section{padding:0 var(--sp-l);margin-bottom:var(--sp-xl)}.section-label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:var(--sp-s) 0}.card{background:var(--surface);border-radius:var(--radius);padding:var(--sp-l);box-shadow:var(--shadow);margin-bottom:var(--sp-m)}.card-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-m)}.kpi-card{background:var(--surface);border-radius:var(--radius);padding:var(--sp-l);box-shadow:var(--shadow);position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.kpi-card.up:before{background:var(--green)}.kpi-card.down:before{background:var(--red)}.kpi-card.neutral:before{background:var(--yellow)}.kpi-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.kpi-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.kpi-compare{font-size:11px;color:var(--text-tertiary);margin-top:2px}.kpi-table-mini{width:100%;margin-top:var(--sp-s);border-collapse:collapse;font-size:11px}.kpi-table-mini th{font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;font-size:9px;padding:4px 0;text-align:right;border-bottom:1px solid var(--separator-light)}.kpi-table-mini th:first-child{text-align:left}.kpi-table-mini td{padding:4px 0;color:var(--text-secondary);text-align:right;border-bottom:1px solid var(--separator-light)}.kpi-table-mini td:first-child{text-align:left;font-weight:500;color:var(--text-secondary)}.kpi-table-mini td.val{font-weight:600;color:var(--text)}.kpi-table-mini tr:last-child td{border-bottom:none}.kpi-value{font-size:28px;font-weight:700;letter-spacing:-.5px;line-height:1.1;margin-bottom:var(--sp-xs)}.kpi-diff{font-size:13px;font-weight:600;display:inline-flex;align-items:center;gap:3px}.kpi-diff.up{color:var(--green)}.kpi-diff.down{color:var(--red)}.kpi-diff.neutral{color:var(--yellow)}.kpi-secondary{font-size:12px;color:var(--text-tertiary);margin-top:var(--sp-s);line-height:1.5}.kpi-split{display:flex;gap:var(--sp-s);margin-top:var(--sp-s);font-size:11px;color:var(--text-tertiary)}.kpi-split .dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:2px;position:relative;top:-1px}.dot-sb{background:var(--blue)}.dot-cs{background:var(--bw-orange)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-m);margin-top:var(--sp-l);margin-bottom:var(--sp-xl)}.hero-card{background:var(--surface);border-radius:var(--radius);padding:var(--sp-l);box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px}.hero-card.accent-green:before{background:var(--green)}.hero-card.accent-red:before{background:var(--red)}.hero-card.accent-blue:before{background:var(--blue)}.hero-card.accent-orange:before{background:var(--bw-orange)}.hero-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px}.hero-value{font-size:32px;font-weight:700;letter-spacing:-.5px;margin:4px 0;line-height:1}.hero-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.hero-diff{font-size:13px;font-weight:600}.hero-compare{font-size:11px;color:var(--text-tertiary);margin-top:2px}.hero-split{display:flex;gap:var(--sp-s);margin-top:var(--sp-s);font-size:11px;color:var(--text-tertiary)}.hero-split .dot{width:6px;height:6px;border-radius:50%;display:inline-block;margin-right:2px;position:relative;top:-1px}.hero-sub{font-size:11px;color:var(--text-tertiary);margin-top:var(--sp-s);line-height:1.5}.period-section{margin-top:8px;padding-top:8px;border-top:1px solid var(--separator-light);display:grid;grid-template-columns:1fr 1fr;gap:6px}.period-block{background:#f9f9fb;border:.5px solid #EDEDF0;border-radius:6px;padding:6px 8px}.period-label{font-weight:700;color:var(--text-tertiary);text-transform:uppercase;font-size:9px;letter-spacing:.5px;margin-bottom:3px}.period-value{font-size:12px;font-weight:700;color:var(--text);line-height:1.2}.period-prev{font-size:10px;color:var(--text-tertiary);margin-top:2px}.period-dif{font-size:10px;font-weight:700;margin-top:1px}.split-bar-wrap{margin-top:8px}.split-bar{display:flex;height:22px;border-radius:6px;overflow:hidden;gap:1px}.split-bar-sb{background:#007aff26;border-radius:6px 0 0 6px;display:flex;align-items:center;justify-content:flex-start;font-size:10px;font-weight:600;color:var(--blue);white-space:nowrap;overflow:hidden;padding:0 6px}.split-bar-cs{background:#ff39001f;border-radius:0 6px 6px 0;display:flex;align-items:center;justify-content:flex-end;font-size:10px;font-weight:600;color:var(--bw-orange);white-space:nowrap;overflow:hidden;padding:0 6px}.split-labels{display:none}.trend-icon{width:20px;height:20px}.trend-icon.up{color:var(--green)}.trend-icon.down{color:var(--red)}.trend-icon.neutral{color:var(--yellow)}.trend-icon-sm{width:16px;height:16px}.trend-icon-sm.up{color:var(--green)}.trend-icon-sm.down{color:var(--red)}.trend-icon-sm.neutral{color:var(--yellow)}.funnel-step{display:flex;align-items:center;gap:var(--sp-m);padding:var(--sp-m) 0;border-bottom:1px solid var(--separator-light)}.funnel-step:last-child{border-bottom:none}.funnel-num{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-shrink:0}.funnel-bar-wrap{flex:1;min-width:0}.funnel-bar-label{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.funnel-name{font-size:14px;font-weight:500}.funnel-value{font-size:14px;font-weight:700}.funnel-bar{height:8px;border-radius:4px;background:var(--separator-light);overflow:hidden}.funnel-bar-fill{height:100%;border-radius:4px;transition:width .6s ease}.funnel-desc{font-size:11px;color:var(--text-tertiary);margin-top:2px}.funnel-drop{display:flex;align-items:center;justify-content:center;padding:2px 0;font-size:11px;color:var(--text-tertiary)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:430px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:.5px solid var(--separator);display:flex;justify-content:space-around;padding:var(--sp-s) 0 calc(var(--sp-s) + env(safe-area-inset-bottom,0px));z-index:200}.nav-tab{display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;color:var(--text-tertiary);font-size:10px;font-weight:500;padding:6px 20px;transition:color .2s}.nav-tab.active{color:var(--blue)}.nav-tab-icon{width:22px;height:22px}.nav-tab.active .nav-tab-icon{stroke-width:2}.nav-item.active{color:var(--blue)}.nav-icon{width:24px;height:24px}.text-green{color:var(--green)}.text-red{color:var(--red)}.text-yellow{color:var(--yellow)}.text-blue{color:var(--blue)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.mt-s{margin-top:var(--sp-s)}.mt-m{margin-top:var(--sp-m)}.mt-l{margin-top:var(--sp-l)}.insight-good{border-left:3px solid var(--green);padding-left:14px}.insight-good .headline{color:#1b5e20}.insight-warn{border-left:3px solid var(--red);padding-left:14px}.insight-warn .headline{color:#b71c1c}.insight-trend{border-left:3px solid var(--blue);padding-left:14px}.insight-trend .headline{color:#0d47a1}.insight-good .body,.insight-warn .body,.insight-trend .body{color:var(--text-secondary);font-size:13px;line-height:1.8;margin-top:6px;list-style:none;padding:0}.insight-good li,.insight-warn li,.insight-trend li{padding-left:14px;position:relative}.insight-good li:before,.insight-warn li:before,.insight-trend li:before{content:"";position:absolute;left:0;top:8px;width:5px;height:5px;border-radius:50%}.insight-good li:before{background:var(--green)}.insight-warn li:before{background:var(--red)}.insight-trend li:before{background:var(--blue)}.funnel-summary{text-align:center;font-size:13px;font-weight:600;color:var(--text-secondary);padding-top:var(--sp-m);margin-top:0}.mkt-rank.gold{background:gold;color:#7a6100}.mkt-rank.silver{background:silver;color:#555}.mkt-rank.bronze{background:#cd7f32;color:#fff}.skeleton{background:linear-gradient(90deg,var(--separator-light) 25%,#f0f0f0 50%,var(--separator-light) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-s)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
