/*
Theme Name: MDB v3.306 DEV
Theme URI: https://example.com
Author: Your Name
Description: Custom MDB Theme
Version: 3.306
*/

#drop-area {
    width: 420px;
    margin-bottom: 20px;
}

.drop-box {
    border: 2px dashed #0073aa;
    padding: 40px;
    text-align: center;
    cursor: pointer;
    background: #f9f9f9;
    transition: 0.3s;
}

.drop-box:hover {
    background: #eef6ff;
}

.drop-box.dragover {
    background: #dff3ff;
    border-color: #0073aa;
}

#progress {
    margin-top: 10px;
    font-weight: bold;
}

.csv-popup-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9999;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: rgba(0, 0, 0, 0.55);
}

.csv-popup-overlay.is-visible {
    display: flex;
}

.csv-popup h3 {
    margin-top: 0;
}

.csv-popup ul {
    margin: 18px 0;
    padding: 0;
    list-style-position: inside;
    text-align: center;
}

.csv-popup li {
    margin: 6px 0;
}

.tbl-tag-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}

.tbl-tag-table th,
.tbl-tag-table td {
    padding: 10px 12px;
    text-align: left;
    border: 1px solid #ddd;
}

.tbl-tag-table th {
    background: #f4f6f8;
    font-weight: 700;
}

.tbl-tag-table tbody tr:nth-child(even) {
    background: #fafafa;
}

.invoice-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
}

.invoice-table th,
.invoice-table td {
    padding: 10px 12px;
    text-align: left;
    border: 1px solid #ddd;
}

.invoice-table th {
    background: #f4f6f8;
}

.invoice-table input {
    width: 100%;
    box-sizing: border-box;
    padding: 8px;
    border: 1px solid #c7c7c7;
    border-radius: 4px;
}

.invoice-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 16px;
    gap: 20px;
}

.invoice-notice p {
    margin: 0;
}

.invoice-notice ul {
    margin: 10px 0 0;
}

.invoice-summary {
    margin: 0 0 12px;
}

#send-invoices-progress {
    margin: 12px 0;
}

#send-invoices-fill {
    transition: width 0.3s ease;
}

#send-invoices-error-wrap {
    margin-top: 14px;
}

#send-invoices-error-list {
    margin-top: 6px;
    color: #b3261e;
    padding-left: 18px;
}

#send-invoices-btn:disabled {
    opacity: 0.6;
    cursor: default;
}

/* -------------------------------------------------------------------------
 * Member form access control
 * -------------------------------------------------------------------------
 * Standard Access users may view Member master data but cannot edit it. The
 * disabled fieldset provides a clear visual cue; PHP separately blocks writes.
 */
.mdb-member-readonly {
    opacity: 0.62;
}

.mdb-member-readonly input,
.mdb-member-readonly select,
.mdb-member-readonly textarea,
.mdb-member-readonly button {
    cursor: not-allowed;
}

.mdb-member-readonly-notice {
    margin-bottom: 16px;
}


/* Focused tasks within an expanded invoice date. */
.invoice-task-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;border-bottom:1px solid #d8dce2;padding-bottom:12px}
.invoice-task-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1px solid #d8dce2;border-radius:8px;text-decoration:none;color:#343a40;background:#fff;font-weight:600}
.invoice-task-tab.is-active{background:#343a40;border-color:#343a40;color:#fff}
.invoice-task-tab span{border-radius:12px;background:#eef0f3;color:#343a40;padding:1px 7px;font-size:12px}
.invoice-task-tab:focus-visible, .invoice-filter-drawer summary:focus-visible{outline:3px solid #2672b6;outline-offset:3px}
.invoice-task-panel[hidden]{display:none!important}
.invoice-filter-drawer{margin-bottom:12px}.invoice-filter-drawer summary{cursor:pointer;font-weight:600;width:fit-content;padding:6px 0}
.invoice-filter-drawer .invoice-workspace-filters{margin-top:10px}
.invoice-new-drafts>summary,.invoice-regenerate-drafts>summary{cursor:pointer;display:list-item;width:fit-content;background:#fff;border:1px solid #ced4da;border-radius:6px;padding:9px 14px;font-weight:600}

.invoice-date-report-footer th{background:#eef0f3;border-top:2px solid #d8dce2;padding-top:12px;padding-bottom:12px}

.invoice-template-edit-zone{position:relative;border:2px solid #9aa7b3;background:#fff;padding:22px 16px 14px;margin:15px 0 24px;border-radius:6px;box-shadow:0 0 0 4px rgba(154,167,179,.12)}
.invoice-template-edit-label{position:absolute;top:-11px;left:14px;background:#fff;padding:0 8px;font-size:11px;font-weight:700;color:#5a6670}
.invoice-template-rich-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;border-bottom:1px solid #d7dbe0;padding:0 0 8px;margin-bottom:10px}
.invoice-template-rich-button{min-width:34px;height:30px;border:1px solid #b9c1c9;border-radius:4px;background:#f7f8f9;cursor:pointer}
.invoice-template-rich-button:hover{background:#eceff2}.invoice-template-rich-help{margin-left:6px;font-size:11px;color:#6c757d}
.invoice-template-rich-editor{min-height:110px;line-height:1.55;font-size:13px;overflow-wrap:anywhere}
.invoice-template-rich-editor:focus{outline:2px solid #2672b6;outline-offset:4px}
.invoice-template-rich-editor:empty:before{content:attr(data-placeholder);color:#8a929a}
.invoice-template-rich-editor p{margin:0 0 .75em}.invoice-template-rich-editor p:last-child{margin-bottom:0}

.invoice-template-email-zone{border:1px solid #b9c1c9;border-radius:6px;background:#fff;padding:12px 16px}
.invoice-template-email-editor{min-height:220px}.invoice-template-email-editor ul,.invoice-template-email-editor ol{padding-left:24px}

/* v3.247: release details, scoped to the top-bar logo area. */
.topbar .logo { position: relative; }
.mdb-release-info { display: inline-block; margin-left: 8px; vertical-align: middle; }
.mdb-release-info > summary { cursor: pointer; display: inline-flex; align-items: center; gap: 5px; padding: 3px 6px; border: 1px solid #adb5bd; border-radius: 5px; background: #fff; color: #253246; font-size: 12px; list-style: none; }
.mdb-release-info > summary::-webkit-details-marker { display: none; }
.mdb-release-info > summary:focus-visible { outline: 2px solid #0d6efd; outline-offset: 2px; }
.mdb-release-popover { position: fixed; top: 72px; left: max(12px, calc(50% - 280px)); width: min(560px, calc(100vw - 24px)); max-height: calc(100vh - 90px); overflow-y: auto; z-index: 99999; background: #fff; color: #202830; padding: 18px; box-shadow: 0 6px 28px rgba(0,0,0,.24); border: 1px solid #cbd3db; border-radius: 10px; font-size: 13px; line-height: 1.4; }
.mdb-release-popover > strong { display: block; margin-bottom: 14px; font-size: 16px; }
.mdb-release-popover dl { margin: 0; display: grid; grid-template-columns: minmax(100px, 32%) 1fr; gap: 10px; }
.mdb-release-popover dt { font-weight: 600; }
.mdb-release-popover dd { margin: 0; overflow-wrap: anywhere; }
.mdb-release-popover small { display: block; margin-top: 14px; color: #596271; }
@media(max-width: 600px) { .mdb-release-popover dl { grid-template-columns: 1fr; gap: 4px; } .mdb-release-popover dd { margin-bottom: 8px; } }
