/* EclipseFan - Skyline Control Styles */

.skyline-control-v2 {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.2);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-size: 12px;
    width: 260px;
    transition: width 0.3s ease;
}

.skyline-control-v2.expanded {
    width: 460px;
}

.skyline-control-v2 .skyline-header {
    padding: 10px 12px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid #eee;
}

.skyline-control-v2 .skyline-header:hover { background: #f9f9f9; }
.skyline-control-v2 .skyline-icon { font-size: 16px; }
.skyline-control-v2 .skyline-title { flex: 1; font-weight: 600; font-size: 14px; color: #333; }
.skyline-control-v2 .skyline-toggle { color: #999; font-size: 10px; }
.skyline-control-v2 .skyline-content { padding: 12px; }

.skyline-control-v2 .skyline-info {
    font-size: 11px;
    color: #666;
    margin-bottom: 10px;
    padding: 8px;
    background: #f0f7ff;
    border-radius: 4px;
    border-left: 3px solid #4A90D9;
}

.skyline-control-v2 .skyline-canvas-container {
    background: #e8e8e8;
    border-radius: 6px;
    padding: 4px;
    margin-bottom: 10px;
}

.skyline-control-v2 #skyline-canvas-v2 {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 4px;
}

.skyline-control-v2 .skyline-progress {
    margin-bottom: 10px;
}

.skyline-control-v2 .progress-bar {
    height: 6px;
    background: #e0e0e0;
    border-radius: 3px;
    overflow: hidden;
}

.skyline-control-v2 .progress-fill {
    height: 100%;
    background: #4A90D9;
    width: 0%;
    transition: width 0.2s;
}

.skyline-control-v2 .progress-text {
    font-size: 11px;
    color: #666;
    margin-top: 4px;
    text-align: center;
}

.skyline-control-v2 .skyline-placeholder {
    text-align: center;
    color: #999;
    padding: 15px;
    font-style: italic;
}

.skyline-control-v2 .skyline-error {
    color: #dc3545;
    padding: 10px;
    background: #fff5f5;
    border-radius: 4px;
}

.skyline-control-v2 .elevation-info {
    font-size: 11px;
    color: #666;
    margin-bottom: 8px;
    padding: 6px 10px;
    background: #f8f9fa;
    border-radius: 4px;
}

.skyline-control-v2 .visibility-summary {
    padding: 10px;
    border-radius: 6px;
    margin-bottom: 8px;
    font-weight: 500;
}

.skyline-control-v2 .visibility-summary.good { background: #d4edda; color: #155724; }
.skyline-control-v2 .visibility-summary.medium { background: #fff3cd; color: #856404; }
.skyline-control-v2 .visibility-summary.bad { background: #f8d7da; color: #721c24; }

.skyline-control-v2 .visibility-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
    margin-bottom: 8px;
}

.skyline-control-v2 .visibility-table th {
    padding: 4px 6px;
    text-align: left;
    font-weight: 500;
    color: #666;
    border-bottom: 1px solid #ddd;
}

.skyline-control-v2 .visibility-table td {
    padding: 4px 6px;
}

.skyline-control-v2 .visibility-table tr.visible { background: #f0fff0; }
.skyline-control-v2 .visibility-table tr.blocked { background: #fff0f0; }

.skyline-control-v2 .skyline-info-bottom {
    font-size: 10px;
    color: #666;
    padding: 6px 8px;
    background: #f0f7ff;
    border-radius: 4px;
    border-left: 3px solid #4A90D9;
    margin-top: 8px;
}

.skyline-control-v2 .skyline-legend {
    display: flex;
    justify-content: center;
    gap: 15px;
    padding: 8px;
    background: #f8f9fa;
    border-radius: 4px;
    margin-bottom: 8px;
    font-size: 11px;
}

.skyline-control-v2 .legend-dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin-right: 4px;
}

.skyline-control-v2 .skyline-footer {
    font-size: 10px;
    color: #999;
    text-align: center;
}

.skyline-control-v2 .skyline-footer a { color: #666; }

@media (max-width: 767px) {
    .skyline-control-v2 { width: 260px; }
    .skyline-control-v2.expanded { width: 340px; max-width: calc(100vw - 20px); }
}
