/**
 * MartCode Magic Terms Panel Styles
 * @version 1.0.0
 */

/* Modal sizing */
.magic-terms-modal .modal-dialog {
    width: 820px;
}

.magic-terms-modal .modal-body {
    padding: 15px 20px;
    max-height: 70vh;
    overflow-y: auto;
}

/* Info alert */
.magic-terms-info-alert {
    font-size: 12.5px;
    line-height: 1.6;
    border-left: 4px solid #e7505a;
    background: #fef7f7;
    padding: 12px 15px;
    margin-bottom: 15px;
    border-radius: 0 4px 4px 0;
}

.magic-terms-info-alert .info-title {
    font-weight: 600;
    color: #e7505a;
    margin-bottom: 4px;
    display: block;
}

.magic-terms-info-alert ul {
    margin: 6px 0 0 0;
    padding-left: 18px;
}

.magic-terms-info-alert ul li {
    margin-bottom: 3px;
}

/* Search box */
.magic-terms-search-wrap {
    margin-bottom: 12px;
}

.magic-terms-search-wrap .form-control {
    border-radius: 20px;
    padding-left: 35px;
    height: 36px;
    font-size: 13px;
}

.magic-terms-search-wrap .search-icon {
    position: absolute;
    left: 12px;
    top: 9px;
    color: #999;
    font-size: 14px;
}

/* Tabs */
.magic-terms-modal .nav-tabs > li > a {
    font-size: 12.5px;
    padding: 8px 14px;
    font-weight: 600;
}

.magic-terms-modal .nav-tabs > li.active > a {
    color: #36c6d3;
    border-bottom-color: transparent;
}

.magic-terms-modal .tab-content {
    padding-top: 10px;
}

/* Table */
.magic-terms-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12.5px;
}

.magic-terms-table thead th {
    background: #f5f6fa;
    padding: 8px 10px;
    font-weight: 600;
    color: #555;
    border-bottom: 2px solid #e1e5ec;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.magic-terms-table tbody td {
    padding: 6px 10px;
    border-bottom: 1px solid #f0f0f0;
    vertical-align: middle;
}

.magic-terms-table tbody tr:hover {
    background-color: #f8fafb;
}

/* Term tag button */
.magic-term-tag {
    display: inline-block;
    padding: 3px 10px;
    font-size: 12px;
    font-family: Consolas, Monaco, 'Courier New', monospace;
    background: #eef7f8;
    border: 1px solid #c5e8ec;
    border-radius: 3px;
    color: #1bbc9b;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
    font-weight: 600;
}

.magic-term-tag:hover,
.magic-term-tag:focus {
    background: #36c6d3;
    color: #fff;
    border-color: #36c6d3;
    text-decoration: none;
}

.magic-term-tag .fa {
    margin-right: 4px;
    font-size: 11px;
}

/* Copy button */
.magic-term-copy {
    display: inline-block;
    padding: 2px 7px;
    font-size: 12px;
    color: #999;
    cursor: pointer;
    border: 1px solid transparent;
    border-radius: 3px;
    background: transparent;
    transition: all 0.15s ease;
}

.magic-term-copy:hover {
    color: #36c6d3;
    border-color: #e1e5ec;
    background: #f5f6fa;
}

/* Person type group headers */
.magic-terms-group-header {
    background: #f9f9fb;
    padding: 8px 10px;
    font-weight: 700;
    color: #555;
    font-size: 13px;
    border-bottom: 1px solid #e1e5ec;
    border-top: 2px solid #e1e5ec;
}

.magic-terms-group-header .fa {
    margin-right: 6px;
    color: #36c6d3;
}

/* No result message */
.magic-terms-no-result {
    display: none;
    text-align: center;
    padding: 30px 20px;
    color: #999;
    font-size: 14px;
}

.magic-terms-no-result .fa {
    display: block;
    font-size: 28px;
    margin-bottom: 10px;
    color: #ccc;
}

/* Trigger button */
.btn-magic-terms-open {
    margin-left: 8px;
    font-size: 12px;
    vertical-align: middle;
}

/* Badge count */
.magic-terms-count {
    display: inline-block;
    background: #e1e5ec;
    color: #666;
    font-size: 10px;
    padding: 1px 6px;
    border-radius: 10px;
    margin-left: 4px;
    font-weight: 600;
}

/* Format examples */
.magic-terms-format-examples {
    display: flex;
    gap: 20px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.magic-terms-format-examples .format-item {
    background: #f5f6fa;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 12px;
    border: 1px solid #e1e5ec;
}

.magic-terms-format-examples .format-item code {
    font-weight: 600;
    color: #e7505a;
    background: transparent;
    padding: 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .magic-terms-modal .modal-dialog {
        width: 95%;
        margin: 10px auto;
    }

    .magic-terms-format-examples {
        flex-direction: column;
        gap: 8px;
    }
}
