.smap-page{height:100vh;overflow:hidden;padding-top:4rem;box-sizing:border-box;position:relative;z-index:0;display:flex;flex-direction:column}.smap-header{padding:.875rem 1.5rem .75rem;background:#081020f2;border-bottom:1px solid rgba(77,184,212,.12);display:flex;align-items:center;gap:1rem;flex-wrap:wrap;flex-shrink:0}.smap-header-brand{display:flex;align-items:center;gap:.5rem;margin-right:auto}.smap-header-brand i.fab{color:#fc4c02;font-size:1.2rem}.smap-header-title{font-size:1rem;font-weight:800;color:var(--white, #fff);letter-spacing:-.02em;margin:0}[data-theme=light] .smap-header{background:#fffffff7;border-bottom-color:#1a65801f}[data-theme=light] .smap-header-title{color:var(--text-light, #0b1a2e)}.smap-kpis{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.smap-kpi{display:flex;align-items:baseline;gap:.25rem;font-size:.8rem;color:var(--text-muted, #8ba3bd)}.smap-kpi-val{font-size:1.1rem;font-weight:800;color:var(--white, #fff);letter-spacing:-.03em}[data-theme=light] .smap-kpi-val{color:var(--text-light, #0b1a2e)}.smap-kpi i{color:var(--accent-cyan, #4db8d4);font-size:.78rem;margin-right:2px}.smap-kpi-sep{color:#4db8d440;font-size:.9rem}.smap-progress-bar{display:flex;align-items:center;gap:.5rem;min-width:160px}.smap-progress-track{flex:1;height:5px;background:#4db8d41f;border-radius:10px;overflow:hidden}.smap-progress-fill{height:100%;background:linear-gradient(90deg,#fc4c02,#f59e0b);border-radius:10px;transition:width .6s ease;width:0%}.smap-progress-pct{font-size:.78rem;font-weight:700;color:#fc4c02;white-space:nowrap}.smap-header-controls{display:flex;align-items:center;gap:.5rem}.smap-btn{height:30px;padding:0 .75rem;border-radius:20px;font-size:.78rem;font-weight:600;border:1px solid rgba(77,184,212,.25);background:#4db8d412;color:var(--text-muted, #8ba3bd);cursor:pointer;display:flex;align-items:center;gap:.35rem;transition:background .15s,color .15s,border-color .15s}.smap-btn:hover,.smap-btn:focus-visible{background:#4db8d429;border-color:#4db8d466;color:var(--accent-cyan, #4db8d4)}.smap-btn.spinning i{animation:smap-spin .8s linear infinite}@keyframes smap-spin{to{transform:rotate(360deg)}}.smap-status{display:flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-muted, #8ba3bd);white-space:nowrap}.smap-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.smap-status-dot--loading{background:#f59e0b;animation:smap-blink 1.2s infinite}.smap-status-dot--ok{background:#22c55e}.smap-status-dot--error{background:#ef4444}@keyframes smap-blink{0%,to{opacity:1}50%{opacity:.3}}.smap-body{flex:1;display:flex;min-height:0;overflow:hidden}.smap-sidebar{width:300px;flex-shrink:0;display:flex;flex-direction:column;background:#081020f7;border-right:1px solid rgba(77,184,212,.1);overflow:hidden}[data-theme=light] .smap-sidebar{background:#f5f9fdfc;border-right-color:#1a65801a}.smap-sidebar-filters{padding:.75rem 1rem;border-bottom:1px solid rgba(77,184,212,.08);display:flex;flex-direction:column;gap:.5rem}[data-theme=light] .smap-sidebar-filters{border-bottom-color:#0a182c12}.smap-filter-title{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted, #8ba3bd);margin-bottom:.2rem}.smap-filter-row{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--text-muted, #8ba3bd);cursor:pointer;padding:.2rem 0}.smap-filter-row input[type=checkbox]{width:14px;height:14px;accent-color:var(--accent-cyan, #4db8d4);cursor:pointer;flex-shrink:0}.smap-filter-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.smap-filter-dot--tour{background:#fc4c02}.smap-filter-dot--train{background:#2d8dbb}.smap-filter-dot--other{background:#8b95a5}.smap-filter-dot--photo{background:#f59e0b}.smap-list-wrap{flex:1;overflow-y:auto;padding:0}.smap-list-wrap::-webkit-scrollbar{width:4px}.smap-list-wrap::-webkit-scrollbar-track{background:transparent}.smap-list-wrap::-webkit-scrollbar-thumb{background:#4db8d433;border-radius:4px}.smap-activity-list{list-style:none;margin:0;padding:0}.smap-list-item{display:flex;align-items:center;gap:.6rem;padding:.6rem 1rem;border-bottom:1px solid rgba(77,184,212,.05);cursor:pointer;transition:background .12s}.smap-list-item:hover{background:#4db8d412}.smap-list-item--active{background:#fc4c021a!important;border-left:3px solid #fc4c02}.smap-list-item--tour{background:#fc4c0208}[data-theme=light] .smap-list-item:hover{background:#4db8d40f}[data-theme=light] .smap-list-item--active{background:#fc4c0214!important}.smap-list-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.smap-list-body{flex:1;min-width:0}.smap-list-name{display:block;font-size:.8rem;font-weight:600;color:var(--white, #fff);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=light] .smap-list-name{color:var(--text-light, #0b1a2e)}.smap-list-meta{display:block;font-size:.72rem;color:var(--text-muted, #8ba3bd);margin-top:.1rem}.smap-list-meta i{color:#f59e0b;font-size:.7rem}.smap-list-notrack{font-size:.72rem;color:#8ba3bd66;flex-shrink:0}.smap-list-empty{padding:1.5rem 1rem;font-size:.8rem;color:var(--text-muted, #8ba3bd);text-align:center;font-style:italic}.smap-map-wrap{flex:1;position:relative;min-width:0;min-height:0;overflow:hidden}#smap-leaflet{position:absolute;inset:0;background:#0d1b2a;z-index:0}.smap-endpoint{background:none!important;border:none!important}.smap-dot{width:12px;height:12px;border-radius:50%;border:2.5px solid #fff;box-shadow:0 1px 4px #00000080}.smap-dot--start{background:#22c55e}.smap-dot--end{background:#ef4444}.smap-error-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#0c1424f2;border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:1.5rem 2rem;color:#fca5a5;font-size:.85rem;text-align:center;display:none;z-index:1000;max-width:320px;gap:.5rem}.smap-popup{font-family:Inter,system-ui,sans-serif;min-width:200px}.smap-popup-header{margin-bottom:6px}.smap-popup-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:20px;font-size:.72rem;font-weight:700;color:#fff}.smap-popup-title{display:block;font-size:13px;font-weight:700;color:#0b1a2e;margin-bottom:4px;line-height:1.3}.smap-popup-meta{font-size:11px;color:#888;margin-bottom:6px;display:flex;gap:6px;flex-wrap:wrap}.smap-popup-meta i{color:#4db8d4}.smap-popup-stats{display:flex;gap:10px;flex-wrap:wrap;font-size:12px;color:#555;padding:6px 0;border-top:1px solid #f0f0f0;border-bottom:1px solid #f0f0f0;margin-bottom:8px}.smap-popup-stats i{color:#4db8d4;margin-right:2px}.smap-popup-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#fc4c02;text-decoration:none;margin-top:4px}.smap-popup-link:hover{text-decoration:underline}.smap-popup-link i{font-size:12px}.smap-photo-icon{background:none!important;border:none!important}.smap-photo-thumb{width:44px;height:44px;border-radius:50%;background-size:cover;background-position:center;border:3px solid #fc4c02;box-shadow:0 2px 8px #00000080;position:relative;cursor:pointer;transition:transform .15s,border-color .15s}.smap-photo-thumb:hover{transform:scale(1.12);border-color:#f59e0b}.smap-photo-badge{position:absolute;bottom:-3px;right:-3px;width:16px;height:16px;background:#fc4c02;color:#fff;border-radius:50%;font-size:8px;display:flex;align-items:center;justify-content:center;border:1.5px solid #fff}@media (max-width: 768px){.smap-kpis,.smap-progress-bar{display:none}.smap-header{padding:.6rem 1rem;gap:.5rem}.smap-body{flex-direction:column}.smap-sidebar{width:100%;height:190px;flex-shrink:0;flex-direction:row;overflow:hidden;border-right:none;border-bottom:1px solid rgba(77,184,212,.1)}.smap-sidebar-filters{width:150px;flex-shrink:0;border-right:1px solid rgba(77,184,212,.08);border-bottom:none;overflow-y:auto}.smap-map-wrap{flex:1;min-height:0}.smap-btn{padding:0 .5rem;font-size:.72rem}.smap-btn span,.smap-btn>*:not(i){display:none}}
