/**\n * AI CALENDAR FEATURES - Styling\n * Phase 8: AI-Powered Features CSS\n * \n * Comprehensive styling for all AI-powered calendar features:\n * - AI Assistant Panel\n * - Smart Suggestions\n * - Conflict Detection Warnings\n * - Natural Language Input\n * - Schedule Optimization Display\n * - Mobile-responsive design\n */\n\n/* ===== AI ASSISTANT PANEL ===== */\n.ai-assistant-panel {\n    position: fixed;\n    top: 20px;\n    right: 20px;\n    width: 350px;\n    max-height: 80vh;\n    background: #ffffff;\n    border: 1px solid #e0e0e0;\n    border-radius: 12px;\n    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);\n    z-index: 1050;\n    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n    overflow: hidden;\n    transition: all 0.3s ease;\n}\n\n.ai-assistant-panel:hover {\n    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);\n}\n\n.ai-panel-header {\n    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n    color: white;\n    padding: 12px 16px;\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    border-radius: 12px 12px 0 0;\n}\n\n.ai-panel-header h5 {\n    margin: 0;\n    font-size: 14px;\n    font-weight: 600;\n    display: flex;\n    align-items: center;\n    gap: 8px;\n}\n\n.ai-panel-header h5 i {\n    font-size: 16px;\n    animation: subtle-pulse 2s infinite;\n}\n\n@keyframes subtle-pulse {\n    0%, 100% { opacity: 1; }\n    50% { opacity: 0.7; }\n}\n\n.ai-panel-content {\n    padding: 16px;\n    max-height: calc(80vh - 60px);\n    overflow-y: auto;\n    scrollbar-width: thin;\n    scrollbar-color: #e0e0e0 transparent;\n}\n\n.ai-panel-content::-webkit-scrollbar {\n    width: 6px;\n}\n\n.ai-panel-content::-webkit-scrollbar-track {\n    background: transparent;\n}\n\n.ai-panel-content::-webkit-scrollbar-thumb {\n    background: #e0e0e0;\n    border-radius: 3px;\n}\n\n.ai-panel-content::-webkit-scrollbar-thumb:hover {\n    background: #c0c0c0;\n}\n\n/* ===== AI SUGGESTIONS ===== */\n.ai-suggestions-container,\n.ai-natural-language-container,\n.ai-optimization-container {\n    margin-bottom: 20px;\n    padding-bottom: 16px;\n    border-bottom: 1px solid #f0f0f0;\n}\n\n.ai-suggestions-container:last-child,\n.ai-natural-language-container:last-child,\n.ai-optimization-container:last-child {\n    border-bottom: none;\n    margin-bottom: 0;\n}\n\n.ai-suggestions-container h6,\n.ai-natural-language-container h6,\n.ai-optimization-container h6 {\n    font-size: 13px;\n    font-weight: 600;\n    color: #495057;\n    margin-bottom: 12px;\n    text-transform: uppercase;\n    letter-spacing: 0.5px;\n}\n\n.suggestions-list {\n    display: flex;\n    flex-direction: column;\n    gap: 12px;\n}\n\n.ai-suggestion-card {\n    background: #f8f9fa;\n    border: 1px solid #e9ecef;\n    border-radius: 8px;\n    padding: 12px;\n    transition: all 0.2s ease;\n    position: relative;\n    overflow: hidden;\n}\n\n.ai-suggestion-card:hover {\n    background: #ffffff;\n    border-color: #667eea;\n    box-shadow: 0 2px 8px rgba(102, 126, 234, 0.1);\n    transform: translateY(-1px);\n}\n\n.suggestion-header {\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    margin-bottom: 8px;\n}\n\n.suggestion-type {\n    font-size: 11px;\n    font-weight: 600;\n    color: #6c757d;\n    text-transform: uppercase;\n    letter-spacing: 0.5px;\n}\n\n.confidence-badge {\n    font-size: 10px;\n    font-weight: 600;\n    color: white;\n    padding: 2px 6px;\n    border-radius: 10px;\n    min-width: 40px;\n    text-align: center;\n}\n\n.suggestion-content h6 {\n    font-size: 13px;\n    font-weight: 600;\n    margin-bottom: 4px;\n    color: #212529;\n    text-transform: none;\n    letter-spacing: normal;\n}\n\n.suggestion-content p {\n    font-size: 12px;\n    color: #6c757d;\n    margin-bottom: 8px;\n    line-height: 1.4;\n}\n\n.suggestion-content small {\n    display: block;\n    font-size: 11px;\n    color: #868e96;\n    margin-bottom: 4px;\n}\n\n.suggestion-actions {\n    display: flex;\n    gap: 8px;\n    justify-content: flex-end;\n    margin-top: 12px;\n}\n\n.suggestion-actions .btn {\n    font-size: 11px;\n    padding: 4px 8px;\n    border-radius: 4px;\n    display: flex;\n    align-items: center;\n    gap: 4px;\n}\n\n.loading-suggestions,\n.no-suggestions {\n    text-align: center;\n    color: #6c757d;\n    font-size: 12px;\n    padding: 20px;\n    font-style: italic;\n}\n\n.loading-suggestions i {\n    margin-right: 8px;\n    color: #667eea;\n}\n\n/* ===== SMART SUGGESTIONS BADGE ===== */\n.smart-suggestions-badge {\n    position: absolute;\n    top: 10px;\n    right: 10px;\n    z-index: 10;\n    animation: gentle-bounce 2s infinite;\n}\n\n@keyframes gentle-bounce {\n    0%, 20%, 50%, 80%, 100% {\n        transform: translateY(0);\n    }\n    40% {\n        transform: translateY(-3px);\n    }\n    60% {\n        transform: translateY(-2px);\n    }\n}\n\n.smart-suggestions-badge .badge {\n    font-size: 11px;\n    padding: 6px 10px;\n    border-radius: 20px;\n    display: flex;\n    align-items: center;\n    gap: 4px;\n    cursor: pointer;\n    transition: all 0.2s ease;\n}\n\n.smart-suggestions-badge .badge:hover {\n    transform: scale(1.05);\n    box-shadow: 0 2px 8px rgba(0, 123, 255, 0.3);\n}\n\n/* ===== CONFLICT WARNINGS ===== */\n.conflict-warnings {\n    margin-bottom: 16px;\n}\n\n.conflict-alert {\n    border-radius: 8px;\n    font-size: 13px;\n    padding: 12px 16px;\n    margin-bottom: 8px;\n    display: flex;\n    align-items: flex-start;\n    gap: 10px;\n    animation: slide-in-down 0.3s ease;\n}\n\n@keyframes slide-in-down {\n    from {\n        opacity: 0;\n        transform: translateY(-10px);\n    }\n    to {\n        opacity: 1;\n        transform: translateY(0);\n    }\n}\n\n.conflict-alert i {\n    margin-top: 2px;\n    flex-shrink: 0;\n}\n\n.conflict-alert strong {\n    font-weight: 600;\n}\n\n.conflict-alert small {\n    font-size: 11px;\n    opacity: 0.8;\n    margin-top: 4px;\n}\n\n.conflict-suggestion {\n    margin-top: 8px;\n    padding: 8px 12px;\n    background: rgba(255, 255, 255, 0.7);\n    border-radius: 6px;\n    border-left: 3px solid #17a2b8;\n}\n\n.conflict-suggestion ul {\n    margin-bottom: 0;\n    padding-left: 16px;\n}\n\n.conflict-suggestion li {\n    font-size: 12px;\n    color: #495057;\n    margin-bottom: 2px;\n}\n\n/* ===== NATURAL LANGUAGE INPUT ===== */\n.ai-natural-language-container .input-group {\n    margin-bottom: 8px;\n}\n\n.ai-natural-language-container input {\n    font-size: 12px;\n    border-radius: 6px 0 0 6px;\n    border-right: 0;\n}\n\n.ai-natural-language-container button {\n    font-size: 12px;\n    padding: 6px 12px;\n    border-radius: 0 6px 6px 0;\n    display: flex;\n    align-items: center;\n    gap: 4px;\n}\n\n.ai-feedback {\n    min-height: 0;\n    transition: all 0.3s ease;\n}\n\n.ai-feedback .alert {\n    font-size: 11px;\n    padding: 8px 12px;\n    margin-bottom: 0;\n    border-radius: 6px;\n}\n\n.ai-feedback ul {\n    margin-bottom: 0;\n    margin-top: 8px;\n    padding-left: 16px;\n}\n\n.ai-feedback li {\n    font-size: 11px;\n    margin-bottom: 2px;\n}\n\n/* ===== OPTIMIZATION RESULTS ===== */\n.optimization-results {\n    margin-top: 12px;\n}\n\n.optimization-summary {\n    text-align: center;\n    margin-bottom: 16px;\n}\n\n.score-display {\n    display: flex;\n    justify-content: center;\n    margin-top: 8px;\n}\n\n.score-circle {\n    width: 60px;\n    height: 60px;\n    border: 3px solid #e9ecef;\n    border-radius: 50%;\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    justify-content: center;\n    position: relative;\n    background: #ffffff;\n}\n\n.score-value {\n    font-size: 18px;\n    font-weight: 700;\n    line-height: 1;\n}\n\n.score-circle small {\n    font-size: 10px;\n    color: #6c757d;\n    line-height: 1;\n}\n\n.optimization-suggestions {\n    margin-top: 16px;\n}\n\n.optimization-suggestion {\n    display: flex;\n    gap: 8px;\n    margin-bottom: 12px;\n    padding: 8px;\n    background: #f8f9fa;\n    border-radius: 6px;\n    border-left: 4px solid transparent;\n    transition: all 0.2s ease;\n}\n\n.optimization-suggestion:hover {\n    background: #ffffff;\n    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);\n}\n\n.suggestion-priority {\n    font-size: 9px;\n    font-weight: 700;\n    padding: 2px 6px;\n    border-radius: 10px;\n    text-align: center;\n    min-width: 45px;\n    height: fit-content;\n    letter-spacing: 0.5px;\n}\n\n.priority-high {\n    background: #dc3545;\n    color: white;\n}\n\n.priority-medium {\n    background: #ffc107;\n    color: #000;\n}\n\n.priority-low {\n    background: #28a745;\n    color: white;\n}\n\n.suggestion-content {\n    flex: 1;\n}\n\n.suggestion-content strong {\n    font-size: 12px;\n    font-weight: 600;\n    color: #212529;\n    display: block;\n    margin-bottom: 4px;\n}\n\n.suggestion-content p {\n    font-size: 11px;\n    color: #6c757d;\n    margin-bottom: 4px;\n    line-height: 1.4;\n}\n\n.suggestion-content small {\n    font-size: 10px;\n    color: #28a745;\n    font-weight: 500;\n}\n\n/* ===== MOBILE RESPONSIVENESS ===== */\n@media (max-width: 768px) {\n    .ai-assistant-panel {\n        position: fixed;\n        top: 10px;\n        right: 10px;\n        left: 10px;\n        width: auto;\n        max-height: 70vh;\n    }\n    \n    .ai-panel-header h5 {\n        font-size: 13px;\n    }\n    \n    .ai-panel-content {\n        padding: 12px;\n    }\n    \n    .ai-suggestion-card {\n        padding: 10px;\n    }\n    \n    .suggestion-actions {\n        flex-direction: column;\n        gap: 6px;\n    }\n    \n    .suggestion-actions .btn {\n        justify-content: center;\n        width: 100%;\n    }\n    \n    .smart-suggestions-badge {\n        position: fixed;\n        top: 70px;\n        right: 10px;\n        left: auto;\n    }\n    \n    .conflict-alert {\n        font-size: 12px;\n        padding: 10px 12px;\n    }\n    \n    .optimization-suggestion {\n        flex-direction: column;\n        gap: 6px;\n    }\n    \n    .suggestion-priority {\n        align-self: flex-start;\n    }\n}\n\n@media (max-width: 480px) {\n    .ai-assistant-panel {\n        top: 5px;\n        right: 5px;\n        left: 5px;\n        max-height: 60vh;\n    }\n    \n    .ai-panel-header {\n        padding: 10px 12px;\n    }\n    \n    .ai-panel-header h5 {\n        font-size: 12px;\n    }\n    \n    .ai-panel-content {\n        padding: 10px;\n    }\n    \n    .ai-suggestion-card {\n        padding: 8px;\n    }\n    \n    .suggestion-content h6 {\n        font-size: 12px;\n    }\n    \n    .suggestion-content p {\n        font-size: 11px;\n    }\n    \n    .smart-suggestions-badge {\n        top: 60px;\n        right: 5px;\n    }\n    \n    .smart-suggestions-badge .badge {\n        font-size: 10px;\n        padding: 4px 8px;\n    }\n}\n\n/* ===== ACCESSIBILITY ENHANCEMENTS ===== */\n.ai-assistant-panel *:focus {\n    outline: 2px solid #667eea;\n    outline-offset: 2px;\n}\n\n.ai-suggestion-card:focus-within {\n    border-color: #667eea;\n    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);\n}\n\n.conflict-alert[role=\"alert\"] {\n    /* Ensure screen readers announce conflict alerts */\n    position: relative;\n}\n\n/* ===== DARK MODE SUPPORT ===== */\n@media (prefers-color-scheme: dark) and (prefers-color-scheme: light) {\n    .ai-assistant-panel {\n        background: #2d3748;\n        border-color: #4a5568;\n        color: #e2e8f0;\n    }\n    \n    .ai-panel-content {\n        scrollbar-color: #4a5568 transparent;\n    }\n    \n    .ai-suggestion-card {\n        background: #4a5568;\n        border-color: #718096;\n        color: #e2e8f0;\n    }\n    \n    .ai-suggestion-card:hover {\n        background: #2d3748;\n        border-color: #667eea;\n    }\n    \n    .suggestion-content h6 {\n        color: #f7fafc;\n    }\n    \n    .suggestion-content p,\n    .suggestion-content small {\n        color: #a0aec0;\n    }\n    \n    .optimization-suggestion {\n        background: #4a5568;\n        color: #e2e8f0;\n    }\n    \n    .optimization-suggestion:hover {\n        background: #2d3748;\n    }\n    \n    .score-circle {\n        background: #2d3748;\n        border-color: #4a5568;\n    }\n}\n\n/* ===== HIGH CONTRAST MODE ===== */\n@media (prefers-contrast: high) {\n    .ai-assistant-panel {\n        border: 2px solid #000000;\n    }\n    \n    .ai-suggestion-card {\n        border: 2px solid #666666;\n    }\n    \n    .ai-suggestion-card:hover {\n        border-color: #000000;\n    }\n    \n    .conflict-alert {\n        border: 2px solid currentColor;\n    }\n}\n\n/* ===== REDUCED MOTION ===== */\n@media (prefers-reduced-motion: reduce) {\n    .ai-assistant-panel,\n    .ai-suggestion-card,\n    .conflict-alert,\n    .smart-suggestions-badge {\n        animation: none;\n        transition: none;\n    }\n    \n    .ai-assistant-panel:hover,\n    .ai-suggestion-card:hover {\n        transform: none;\n    }\n    \n    .smart-suggestions-badge .badge:hover {\n        transform: none;\n    }\n}\n\n/* ===== PRINT STYLES ===== */\n@media print {\n    .ai-assistant-panel,\n    .smart-suggestions-badge,\n    .conflict-warnings {\n        display: none !important;\n    }\n}"