/* ============================================
   MINDMAP CONTAINER
   ============================================ */
#mindmap-canvas,
#mindmap-canvas-inner {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
    width: 100%;
    height: 100%;
    position: relative;
}

/* ============================================
   DRAWFLOW NODES - GULD/MÖRKT TEMA
   ============================================ */
.drawflow-node {
    background: #2a2a4a !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4) !important;
    min-width: 120px !important;
    transition: all 0.2s ease !important;
}

.drawflow-node:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(212, 175, 55, 0.4) !important;
}

.drawflow-node.selected {
    border: 2px solid #d4af37 !important;
    box-shadow: 0 0 0 3px rgba(212, 175, 55, 0.3), 0 6px 16px rgba(0, 0, 0, 0.4) !important;
}

/* Node header */
.node-header {
    border-radius: 8px 8px 0 0 !important;
    font-family: 'Cinzel', serif !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Node content */
.node-content {
    padding: 12px !important;
    color: #e0e0e0 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
}

/* ============================================
   CONNECTION LINES - GULD
   ============================================ */
.drawflow .connection .main-path {
    stroke: #d4af37 !important;
    stroke-width: 2px !important;
    opacity: 0.7 !important;
}

.drawflow .connection .main-path:hover {
    stroke-width: 3px !important;
    opacity: 1 !important;
}

/* ============================================
   INPUT/OUTPUT POINTS - GULD
   ============================================ */
.drawflow .drawflow-node .input,
.drawflow .drawflow-node .output {
    background: #d4af37 !important;
    border: 2px solid #1a1a2e !important;
    width: 12px !important;
    height: 12px !important;
}

.drawflow .drawflow-node .input:hover,
.drawflow .drawflow-node .output:hover {
    background: #e8c040 !important;
    box-shadow: 0 0 8px rgba(212, 175, 55, 0.6) !important;
}

/* ============================================
   NODE TYPE SPECIFIC - FÄRGADE BORDERS
   ============================================ */
.drawflow-node[data-node-type="adventure"] { border-left: 4px solid #d4af37 !important; }
.drawflow-node[data-node-type="place"] { border-left: 4px solid #10B981 !important; }
.drawflow-node[data-node-type="npc"] { border-left: 4px solid #EC4899 !important; }
.drawflow-node[data-node-type="enemy"] { border-left: 4px solid #EF4444 !important; }
.drawflow-node[data-node-type="item"] { border-left: 4px solid #F97316 !important; }
.drawflow-node[data-node-type="event"] { border-left: 4px solid #8B5CF6 !important; }
.drawflow-node[data-node-type="handout"] { border-left: 4px solid #06B6D4 !important; }

/* ============================================
   TOOLBAR STYLING
   ============================================ */
.mindmap-toolbar {
    background: #1a1a2e;
    border-bottom: 1px solid #2a2a4a;
    padding: 12px;
    display: flex;
    gap: 8px;
    align-items: center;
}

.mindmap-toolbar button {
    background: #2a2a4a;
    color: #e0e0e0;
    border: 1px solid #3a3a5a;
    padding: 8px 16px;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.mindmap-toolbar button:hover {
    background: #d4af37;
    color: #1a1a2e;
    border-color: #d4af37;
}

/* ============================================
   LOADING STATE
   ============================================ */
.loading-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: #b0b0b0;
}

.spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #2a2a4a;
    border-top-color: #d4af37;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}
