:root{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Segoe UI,PingFang TC,Microsoft JhengHei,sans-serif;color:#1c1c1e;background:#f2f2f7;font-synthesis:none;--ios-system-background: #f2f2f7;--ios-secondary-background: #ffffff;--ios-label: #1c1c1e;--ios-secondary-label: #6e6e73;--ios-tertiary-label: #8e8e93;--ios-separator: rgba(60, 60, 67, .18);--ios-blue: #007aff;--ios-green: #34c759;--ios-orange: #ff9f0a;--ios-red: #ff3b30;--ios-material: rgba(255, 255, 255, .82);--ios-material-strong: rgba(255, 255, 255, .94);--ios-shadow: rgba(0, 0, 0, .09)}*{box-sizing:border-box}html,body,#app{width:100%;min-width:320px;min-height:100%;margin:0}body{min-height:100dvh;background:var(--ios-system-background);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,select,input{font:inherit}button{cursor:pointer}input[type=checkbox]{accent-color:var(--ios-blue)}.app-shell{height:100dvh;min-height:0;overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr);background:linear-gradient(180deg,#fafafa 0,var(--ios-system-background) 42%,#ececf1 100%);color:var(--ios-label)}.filter-toolbar{display:grid;grid-template-columns:140px minmax(230px,300px) minmax(360px,1fr) auto auto;align-items:end;gap:8px 14px;padding:10px 16px 8px;background:var(--ios-material);border-bottom:.5px solid var(--ios-separator);box-shadow:0 1px #ffffffb8;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);z-index:8}.company-search{position:relative;display:grid;gap:5px;align-self:end;min-width:0;color:var(--ios-secondary-label);font-size:12px}.company-search>label{font-size:12px;font-weight:500}.company-search-field{display:flex;align-items:center;gap:6px;min-width:0;padding:0 9px;border:.5px solid var(--ios-separator);border-radius:10px;background:#7676801f;color:var(--ios-tertiary-label)}.company-search-field:focus-within{border-color:color-mix(in srgb,var(--ios-blue) 55%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--ios-blue) 14%,transparent)}.company-search-field input{width:100%;min-width:0;padding:7px 0;border:0;outline:0;background:transparent;color:var(--ios-label)}.company-search-field input::placeholder{color:var(--ios-tertiary-label)}.company-search-field input::-webkit-search-cancel-button{opacity:.55}.search-results{position:absolute;top:calc(100% + 7px);left:0;z-index:30;width:min(420px,calc(100vw - 24px));max-height:min(420px,60dvh);overflow:auto;margin:0;padding:5px;border:.5px solid var(--ios-separator);border-radius:14px;background:var(--ios-material-strong);box-shadow:0 16px 38px var(--ios-shadow);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);list-style:none}.search-results li{margin:0}.search-results button{display:grid;grid-template-columns:minmax(96px,auto) minmax(150px,1fr);gap:12px;width:100%;padding:9px;border:0;border-radius:10px;background:transparent;color:var(--ios-label);text-align:left}.search-results li.is-active button,.search-results button:hover,.search-results button:focus-visible{background:color-mix(in srgb,var(--ios-blue) 11%,transparent);outline:none}.search-result-name,.search-result-meta{display:grid;gap:2px;min-width:0}.search-result-name small,.search-result-meta small{overflow:hidden;color:var(--ios-secondary-label);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.search-result-meta{justify-items:end;text-align:right}.search-result-meta em{color:var(--ios-blue);font-size:9px;font-style:normal}.tenure-control,.category-control{display:flex;gap:7px;align-items:center;border:0;padding:0;margin:0;font-size:12px;color:var(--ios-secondary-label)}.tenure-control{flex-direction:column;align-items:flex-start;font-weight:500}.tenure-control select{border:.5px solid var(--ios-separator);background:#ffffffb8;color:var(--ios-label);border-radius:10px;padding:7px 9px;outline:none}.tenure-control select:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--ios-blue) 14%,transparent)}.category-control{min-width:0;flex-wrap:wrap}.category-control legend{width:100%;margin-bottom:2px;font-weight:500}.category-control label{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.toolbar-meta{display:grid;gap:5px;align-self:stretch;align-content:end}.toolbar-status{font-size:12px;color:var(--ios-secondary-label)}.confidence-legend{display:flex;gap:10px;color:var(--ios-secondary-label);font-size:10px;white-space:nowrap}.confidence-legend span{display:inline-flex;align-items:center;gap:4px}.legend-dot{width:8px;height:8px;border-radius:50%;background:var(--ios-blue)}.legend-dot.is-c{opacity:.5}.toolbar-actions{display:flex;align-items:center;gap:7px}.interaction-hint{grid-column:1 / -1;color:var(--ios-tertiary-label);font-size:10px;text-align:right}.reset-button{border:.5px solid var(--ios-separator);border-radius:10px;color:var(--ios-blue);background:#ffffffc2;padding:7px 10px;font-size:12px;font-weight:500}.reset-button:hover,.reset-button:focus-visible{background:color-mix(in srgb,var(--ios-blue) 10%,white);outline:none}.methodology-trigger{display:grid;place-items:center;width:30px;height:30px;border:0;border-radius:50%;background:var(--ios-blue);color:#fff;font-weight:700;box-shadow:0 4px 12px color-mix(in srgb,var(--ios-blue) 34%,transparent)}.chart-area{min-height:0;position:relative;padding:10px}.quadrant-stage{position:relative;width:100%;height:100%;min-height:0;border:0;border-radius:22px;overflow:hidden;background:#ffffffbd;box-shadow:inset 0 0 0 .5px #ffffffe0,0 12px 38px var(--ios-shadow);backdrop-filter:saturate(150%) blur(18px);-webkit-backdrop-filter:saturate(150%) blur(18px)}.quadrant-svg{display:block;width:100%;height:100%;touch-action:none;-webkit-user-select:none;user-select:none}.quadrant-low-good{fill:color-mix(in srgb,var(--ios-green) 8%,white)}.quadrant-high-good{fill:color-mix(in srgb,var(--ios-blue) 8%,white)}.quadrant-low-hard{fill:color-mix(in srgb,var(--ios-orange) 8%,white)}.quadrant-high-hard{fill:color-mix(in srgb,var(--ios-red) 7%,white)}.plot-grid line{stroke:#3c3c431f;stroke-width:1}.plot-axis line,.plot-axis rect{fill:none;stroke:#3c3c439e;stroke-width:1.25}.axis-labels text{fill:var(--ios-label);font-size:14px;font-weight:600;letter-spacing:-.01em}.tick-labels text{fill:var(--ios-secondary-label);font-size:11px;font-variant-numeric:tabular-nums}.quadrant-annotations{pointer-events:none}.quadrant-corner-label rect{fill:#ffffffe6;stroke:var(--ios-separator);stroke-width:.75;filter:drop-shadow(0 2px 6px rgba(0,0,0,.08))}.quadrant-corner-label text{fill:var(--ios-secondary-label);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,PingFang TC,sans-serif;font-size:11px;font-weight:600;letter-spacing:-.01em}.logo-plate{fill:#fffffff0;stroke:var(--ios-separator);stroke-width:1;filter:drop-shadow(0 2px 5px rgba(0,0,0,.08))}.company-node[data-dark-logo=true] .logo-plate{fill:var(--ios-label)}.company-node{cursor:pointer;outline:none;transition:opacity .14s ease}.company-node.is-low-confidence{opacity:.5}.company-node:hover .logo-plate,.company-node:focus .logo-plate{stroke:var(--ios-blue);stroke-width:2.5}.company-short{pointer-events:none}.company-short-en{font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:10px;font-weight:600;fill:var(--ios-label)}.company-short-zh{font-size:9px;font-weight:500;fill:var(--ios-secondary-label)}.company-full-en{font-size:8px;font-weight:400;fill:var(--ios-tertiary-label)}.logo-label-primary,.logo-label-secondary,.logo-label-tertiary{paint-order:stroke;stroke:#ffffffe0;stroke-width:1.4px;stroke-linejoin:round}.logo-fallback{fill:var(--ios-label);font-size:11px;font-weight:700}.empty-state{position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%);padding:10px 14px;border:.5px solid var(--ios-separator);border-radius:12px;background:var(--ios-material-strong);color:var(--ios-secondary-label);font-size:13px;box-shadow:0 8px 24px var(--ios-shadow)}.company-popover{position:absolute;z-index:6;width:min(330px,42vw);max-height:min(520px,80%);overflow:auto;padding:13px;border:.5px solid var(--ios-separator);border-radius:16px;background:#fffc;box-shadow:0 14px 32px var(--ios-shadow);backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);pointer-events:auto;transform:translate(var(--popover-shift-x, 12px),-50%);color:var(--ios-label);font-size:12px}.company-popover header,.pinned-company-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.company-popover header span,.pinned-company-card header span{display:block;margin-top:2px;color:var(--ios-secondary-label)}.company-popover section{margin-top:8px}.company-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.company-detail-header strong,.company-detail-header span{display:block}.company-detail-header>div>span{margin-top:2px;color:var(--ios-secondary-label)}.confidence-badge{flex:0 0 auto;padding:3px 7px;border-radius:999px;background:#7676801f;color:var(--ios-secondary-label);font-size:10px;white-space:nowrap}.company-detail-body section{margin-top:11px;padding-top:10px;border-top:.5px solid var(--ios-separator)}.company-detail-body h3{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:7px}.company-detail-body h3 small{color:var(--ios-tertiary-label);font-size:9px;font-weight:500;text-align:right}.company-detail-body dl{margin-top:6px}.estimate-note{margin-top:8px;padding:7px 8px;border-radius:9px;background:#7676801a;color:var(--ios-secondary-label)}.pinned-card-toolbar{display:flex;justify-content:flex-end;height:0;position:relative;z-index:1}h3{margin:0 0 4px;font-size:12px}p{margin:0;line-height:1.45}.confidence,.insufficient{margin-top:8px;color:var(--ios-secondary-label)}.pinned-company-tray{position:absolute;z-index:4;right:22px;top:22px;display:grid;gap:10px;width:min(330px,30vw);max-height:calc(100% - 44px);overflow:auto;pointer-events:none}.pinned-company-card{pointer-events:auto;padding:13px;border:.5px solid var(--ios-separator);border-radius:18px;background:#fffc;box-shadow:0 14px 32px var(--ios-shadow);backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);color:var(--ios-label);font-size:12px}.pinned-card-toolbar button{border:0;background:#7676801f;color:var(--ios-secondary-label);width:24px;height:24px;border-radius:50%;font-size:17px;line-height:1}.pinned-company-card .company-detail-body{max-height:min(510px,calc(100dvh - 130px));overflow:auto;padding-right:3px}dl{display:grid;grid-template-columns:1fr auto;gap:5px 10px;margin:0}dt{color:var(--ios-secondary-label)}dd{margin:0;text-align:right}.salary-band{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.salary-band span{padding:6px;border-radius:9px;background:#7676801a}.salary-band b{display:block;margin-top:2px;color:var(--ios-blue)}.methodology-backdrop{position:fixed;inset:0;z-index:20;display:flex;justify-content:flex-end;background:#0000003d}.methodology-drawer{width:min(520px,100%);height:100%;overflow:auto;padding:22px;background:#fffffff5;box-shadow:-16px 0 40px #0000001f;color:var(--ios-label);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px)}.drawer-header{position:sticky;top:-22px;display:flex;justify-content:space-between;align-items:start;padding:22px 0 14px;background:#fffffff5;border-bottom:.5px solid var(--ios-separator)}.drawer-header h2{margin:0;font-size:24px;letter-spacing:-.02em}.eyebrow{font-size:10px;letter-spacing:.11em;color:var(--ios-secondary-label)}.drawer-header button{border:0;width:32px;height:32px;border-radius:50%;background:#7676801f;color:var(--ios-secondary-label);font-size:23px}.drawer-content section{padding:18px 0;border-bottom:.5px solid var(--ios-separator)}.drawer-content h3{font-size:15px}.drawer-content code{display:block;margin-top:9px;padding:9px;border-radius:9px;background:#7676801a;color:var(--ios-label);white-space:normal;font-family:inherit;line-height:1.45}.drawer-content ul{padding-left:20px;color:var(--ios-secondary-label);line-height:1.55}.hover-guide{stroke:var(--ios-blue);stroke-width:1;stroke-dasharray:4 4;pointer-events:none}.company-node,.plot-grid line,.quadrant-background rect{transition:transform .16s ease,opacity .14s ease,x .16s ease,y .16s ease,width .16s ease,height .16s ease}.quadrant-stage.has-spotlight .company-node:not(.is-active){opacity:.28}.quadrant-stage.has-spotlight .company-node.is-low-confidence:not(.is-active){opacity:.22}.company-node.is-active .logo-plate{stroke:var(--ios-blue);stroke-width:2.5;filter:drop-shadow(0 5px 10px color-mix(in srgb,var(--ios-blue) 28%,transparent))}.camera-controls{position:absolute;right:18px;bottom:72px;z-index:5;display:grid;justify-items:end;gap:7px;max-width:calc(100% - 36px);color:var(--ios-secondary-label);pointer-events:auto}.camera-control-group{display:flex;align-items:center;padding:5px;border:.5px solid var(--ios-separator);border-radius:14px;background:var(--ios-material);box-shadow:0 8px 24px var(--ios-shadow);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.camera-control-group button{display:grid;place-items:center;min-width:34px;height:32px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:var(--ios-blue);font-weight:600}.camera-control-group button:hover,.camera-control-group button:focus-visible{background:color-mix(in srgb,var(--ios-blue) 11%,transparent);outline:none}.camera-control-group output{min-width:54px;color:var(--ios-secondary-label);font-size:11px;font-variant-numeric:tabular-nums;text-align:center}.camera-range{overflow:hidden;max-width:100%;padding:5px 9px;border:.5px solid var(--ios-separator);border-radius:999px;background:var(--ios-material);box-shadow:0 5px 16px var(--ios-shadow);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);font-size:10px;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}@media(prefers-reduced-motion:reduce){.company-node,.plot-grid line,.quadrant-background rect{transition:none}}@media(max-width:1180px){.filter-toolbar{grid-template-columns:140px minmax(220px,1fr) auto}.company-search{grid-column:2;grid-row:1}.toolbar-actions{grid-column:3;grid-row:1}.category-control{grid-column:1 / -1;grid-row:2}.toolbar-meta{grid-column:1 / 3;grid-row:3}.interaction-hint{grid-column:3;grid-row:3}.pinned-company-tray{width:min(330px,46vw)}}@media(max-width:540px){.app-shell{height:auto;min-height:100dvh;overflow:visible;display:block}.filter-toolbar{position:sticky;top:0;grid-template-columns:1fr auto;align-items:end;padding:10px}.tenure-control{grid-column:1;grid-row:1}.company-search{grid-column:1 / -1;grid-row:2}.search-results{position:fixed;top:112px;left:12px;right:12px;width:auto}.toolbar-meta{grid-column:1;grid-row:3}.toolbar-actions{grid-column:2;grid-row:1;align-self:end;flex-wrap:wrap;justify-content:flex-end;max-width:150px}.category-control{grid-column:1 / -1;grid-row:4;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px}.interaction-hint{grid-column:1 / -1;grid-row:5;text-align:left}.chart-area{height:auto;padding:7px}.quadrant-stage{height:auto;aspect-ratio:100 / 74;border-radius:16px}.quadrant-svg{height:auto;aspect-ratio:100 / 74}.quadrant-corner-label text{font-size:10px}.camera-controls{right:auto;left:10px;bottom:54px;transform:scale(.78);transform-origin:bottom left}.camera-range{display:none}.pinned-company-tray{top:10px;right:10px;width:min(310px,calc(100vw - 34px));max-height:calc(100% - 20px)}.company-popover{display:none}.methodology-backdrop{align-items:flex-end}.methodology-drawer{width:100%;height:min(88dvh,760px);border-radius:22px 22px 0 0}.salary-band{grid-template-columns:1fr}}
