* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Segoe UI', system-ui, -apple-system, sans-serif; background: #f5f7fa; color: #1e4b69; }
.container { max-width: 880px; margin: 0 auto; padding: 16px; }
h2 { text-align: center; font-size: 1.3rem; margin-bottom: 4px; }
.subtitle { text-align: center; font-size: 0.8rem; color: #94a3b8; margin-bottom: 16px; }
.tree { display: flex; flex-direction: column; align-items: center; gap: 0; }
.tier { display: flex; justify-content: center; gap: 16px; width: 100%; flex-wrap: wrap; }
.connectors { width: 100%; max-width: 800px; }
.connectors svg { width: 100%; height: 40px; display: block; }
.okr-node { border-radius: 10px; padding: 12px 16px; cursor: pointer; transition: transform 0.2s, box-shadow 0.2s, opacity 0.3s; position: relative; }
.okr-node:hover { transform: translateY(-3px); }
.okr-node.highlighted { box-shadow: 0 0 0 3px rgba(37,99,235,0.4), 0 6px 20px rgba(0,0,0,0.12); transform: translateY(-3px); }
.okr-node.dimmed { opacity: 0.3; }
.company { background: #1e3a5f; color: #fff; max-width: 400px; }
.company h3 { font-size: 0.95rem; }
.company .kr { color: #bfdbfe; }
.product { background: #2563eb; color: #fff; flex: 1; max-width: 340px; min-width: 220px; }
.product h3 { font-size: 0.88rem; }
.product .kr { color: #bfdbfe; }
.team { background: #dbeafe; color: #1e3a5f; flex: 1; max-width: 200px; min-width: 160px; }
.team h3 { font-size: 0.82rem; }
.team .kr { color: #475569; }
.node-badge { display: inline-block; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.5px; padding: 2px 8px; border-radius: 4px; margin-bottom: 6px; background: rgba(255,255,255,0.2); }
.team .node-badge { background: rgba(30,75,105,0.1); }
h3 { font-size: 0.9rem; margin-bottom: 8px; line-height: 1.3; }
.krs { display: flex; flex-direction: column; gap: 3px; }
.kr { font-size: 0.75rem; display: block; }
@media (max-width: 700px) {
    .tier-3 { flex-direction: column; align-items: center; }
    .okr-node { max-width: 100% !important; }
}
