.degrees-container { max-width: 1000px; margin: 0 auto; }
.search-panel {
    background: rgba(0,0,0,0.6); border: 1px solid rgba(192,192,192,0.3);
    padding: 25px; margin: 20px 0;
}
.search-row { display: flex; gap: 15px; align-items: flex-end; flex-wrap: wrap; }
.search-field { flex: 1; min-width: 250px; position: relative; }
.search-field label { display: block; color: #FFD700; font-size: var(--text-base); margin-bottom: 5px; }
.search-field input {
    width: 100%; background: rgba(0,0,0,0.8); color: #C0C0C0;
    border: 1px solid rgba(192,192,192,0.4); padding: 12px; font-size: var(--text-xl);
    font: inherit;
}
.search-field input:focus { border-color: #FFD700; outline: none; }
.autocomplete-list {
    position: absolute; z-index: 100; background: #111; border: 1px solid rgba(192,192,192,0.4);
    max-height: 200px; overflow-y: auto; width: calc(100% - 2px);
}
.autocomplete-item {
    padding: 8px 12px; cursor: pointer; color: #C0C0C0;
    font-size: var(--text-lg); border-bottom: 1px solid rgba(192,192,192,0.1);
}
.autocomplete-item:hover, .autocomplete-item.selected { background: rgba(192,192,192,0.15); color: #FFD700; }
.autocomplete-item .cat-hint { color: #666; font-size: var(--text-xs); margin-left: 8px; }
.btn-find {
    background: linear-gradient(135deg, #FFD700, #FF6B35); color: #000; border: none;
    padding: 12px 30px; font-size: var(--text-xl); font-weight: bold; cursor: pointer;
    white-space: nowrap;
}
.btn-find:hover { opacity: 0.9; }
.btn-find:disabled { opacity: 0.4; cursor: not-allowed; }
.result-box {
    background: rgba(0,0,0,0.5); border: 1px solid rgba(192,192,192,0.2);
    padding: 25px; margin: 20px 0;
}
.result-header { font-size: var(--text-2xl); color: #FFD700; margin-bottom: 15px; }
.path-chain { display: flex; flex-wrap: wrap; align-items: center; gap: 0; margin: 20px 0; }
.path-node {
    background: rgba(192,192,192,0.1); border: 1px solid rgba(192,192,192,0.3);
    padding: 10px 15px; text-align: center; min-width: 120px;
}
.path-node a { color: #C0C0C0; text-decoration: none; font-size: var(--text-lg); }
.path-node a:hover { color: #FFD700; }
.path-node .node-cat { font-size: var(--text-xs); color: #888; margin-top: 3px; }
.path-node.start { border-color: #FFD700; }
.path-node.end { border-color: #FF6B35; }
.path-arrow {
    color: #FFD700; font-size: var(--text-2xl); padding: 0 4px;
    display: flex; flex-direction: column; align-items: center;
}
.path-arrow .conn-type { font-size: var(--text-2xs); color: #888; max-width: 80px; text-align: center; word-wrap: break-word; }
.no-path { color: #ff6b6b; font-size: var(--text-2xl); padding: 20px; text-align: center; }
.path-details { margin-top: 20px; }
.path-step {
    padding: 10px 15px; border-left: 2px solid rgba(192,192,192,0.2); margin-left: 15px;
    margin-bottom: 5px; font-size: var(--text-base);
}
.path-step .step-num { color: #FFD700; margin-right: 8px; }
.path-step a { color: #C0C0C0; }
.path-step a:hover { color: #FFD700; }
.path-step .conn-label { color: #888; }
.degree-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin: 15px 0; }
.degree-stat { background: rgba(0,0,0,0.4); border: 1px solid rgba(192,192,192,0.15); padding: 12px; text-align: center; }
.degree-stat .big { font-size: var(--text-3xl); color: #FFD700; }
.degree-stat .label { font-size: var(--text-xs); color: #888; }
.example-searches { margin: 15px 0; }
.example-btn {
    background: rgba(192,192,192,0.1); border: 1px solid rgba(192,192,192,0.2);
    color: #C0C0C0; padding: 6px 12px; margin: 3px; cursor: pointer; font-size: var(--text-sm);
    display: inline-block;
}
.example-btn:hover { border-color: #FFD700; color: #FFD700; }
#loading { text-align: center; padding: 40px; color: #888; }
@media (max-width: 768px) {
    .search-row { flex-direction: column; }
    .search-field { min-width: 100%; }
    .path-chain { flex-direction: column; }
    .path-arrow { transform: rotate(90deg); padding: 4px 0; }
}
