*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0b0b0b;--surface:#131313;--surface-2:#1a1a1a;--border:rgba(255,255,255,0.07);--text:#f2efe9;--muted:rgba(242,239,233,0.42);--accent:#c8b490;--accent-dim:rgba(200,180,144,0.15);--font:var(--font-space-grotesk),"Space Grotesk",sans-serif;--radius:6px}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:var(--font);cursor:pointer;border:none;background:none}.container{width:100%;max-width:1160px;margin:0 auto;padding:0 32px}@media (max-width:600px){.container{padding:0 20px}}.label{display:inline-block;font-size:.7rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.tool-grid{display:grid;grid-template-columns:1fr 2fr;grid-gap:80px;gap:80px;align-items:start}.tool-sidebar{position:-webkit-sticky;position:sticky;top:100px}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}@media (max-width:860px){.tool-grid{grid-template-columns:1fr;gap:40px}.tool-sidebar{position:static}.steps-grid{grid-template-columns:1fr}}.divider{width:100%;height:1px;background:var(--border)}.map-marker{cursor:pointer;transition:transform .18s;will-change:transform}.map-marker:hover{transform:scale(1.12);z-index:10}.map-marker-inner{display:flex;align-items:center;gap:5px;background:rgba(11,11,11,.88);border:1px solid rgba(200,180,144,.45);color:#c8b490;font-family:var(--font);font-size:.7rem;font-weight:600;padding:5px 9px 5px 8px;border-radius:20px;white-space:nowrap;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 2px 12px rgba(0,0,0,.5);transition:background .15s,color .15s,border-color .15s}.map-marker.selected .map-marker-inner{background:#c8b490;color:#0b0b0b;border-color:#c8b490}.kom-marker{cursor:pointer;transition:transform .18s;will-change:transform}.kom-marker:hover{transform:scale(1.12);z-index:10}.kom-marker-inner{display:flex;align-items:center;gap:5px;background:rgba(11,11,11,.88);border:1px solid rgba(252,76,2,.5);color:#fc4c02;font-family:var(--font);font-size:.7rem;font-weight:600;padding:5px 9px 5px 8px;border-radius:20px;white-space:nowrap;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:0 2px 12px rgba(0,0,0,.5);transition:background .15s,color .15s,border-color .15s}.kom-marker.selected .kom-marker-inner{background:#fc4c02;color:#fff;border-color:#fc4c02}.panel-tab{flex:1 1;display:flex;align-items:center;justify-content:center;gap:6px;padding:11px 8px;font-size:.75rem;font-weight:500;letter-spacing:.04em;transition:color .15s;background:none;border:none;cursor:pointer;font-family:var(--font)}.panel-tab:hover{color:var(--text)!important}.kom-scroll::-webkit-scrollbar{width:4px}.kom-scroll::-webkit-scrollbar-track{background:transparent}.kom-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.kom-segment-row{width:100%;text-align:left;padding:12px 16px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .15s;font-family:var(--font);color:var(--text)}.kom-segment-row:hover{background:rgba(255,255,255,.03)!important}.kom-segment-name{font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kom-stat-chip{font-size:.68rem;font-weight:500;color:var(--muted);letter-spacing:.03em}.kom-detail{padding:16px 16px 20px;border-bottom:1px solid var(--border);background:rgba(252,76,2,.04)}.kom-avatar{width:44px;height:44px;border-radius:50%;object-fit:cover;border:2px solid rgba(252,76,2,.3);flex-shrink:0}.kom-avatar-placeholder{background:var(--surface-2)}.kom-link{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;color:#fc4c02;text-decoration:none;transition:opacity .15s}.kom-link:hover{opacity:.75}.kom-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:12px}.kom-stat-block{background:var(--surface-2);padding:10px 10px 8px;text-align:center}.kom-stat-value{font-size:.82rem;font-weight:700;color:var(--text);line-height:1.2;margin-bottom:3px}.kom-stat-label{font-size:.62rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.kom-segment-link{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:500;color:#fc4c02;text-decoration:none;border:1px solid rgba(252,76,2,.3);padding:6px 12px;border-radius:20px;transition:background .15s,border-color .15s}.kom-segment-link:hover{background:rgba(252,76,2,.1);border-color:rgba(252,76,2,.5)}@keyframes pulse-bar{0%,to{width:15%;opacity:.6}50%{width:60%;opacity:1}}.photo-panel{display:flex;flex-direction:column;height:100%;background:var(--surface);overflow:hidden}.panel-empty{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px 28px;text-align:center}.panel-empty-icon{opacity:.2}.panel-empty p{font-size:.85rem;color:var(--muted);line-height:1.7;max-width:22ch}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border);flex-shrink:0}.photo-grid{flex:1 1;overflow-y:auto;padding:12px;display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;align-content:start}.photo-grid::-webkit-scrollbar{width:4px}.photo-grid::-webkit-scrollbar-track{background:transparent}.photo-grid::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.photo-item{position:relative;display:block;border-radius:4px;overflow:hidden;background:var(--surface-2);aspect-ratio:4/3}.photo-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.photo-item:hover img{transform:scale(1.04)}.photo-caption{position:absolute;bottom:0;left:0;right:0;padding:20px 8px 6px;background:linear-gradient(transparent,rgba(0,0,0,.75));font-size:.62rem;color:rgba(255,255,255,.8);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .2s}.photo-item:hover .photo-caption{opacity:1}