/* Smart Education Filament auth / panel brand accents */
:root {
    --se-orange: #e17807;
    --se-purple: #894e94;
}

.fi-simple-layout {
    position: relative;
    background:
        radial-gradient(circle at top left, rgba(225, 120, 7, 0.18), transparent 42%),
        radial-gradient(circle at bottom right, rgba(137, 78, 148, 0.2), transparent 45%),
        linear-gradient(160deg, #fffaf4 0%, #f7f1fb 55%, #fff 100%) !important;
    font-family: Poppins, ui-sans-serif, system-ui, sans-serif !important;
}

.fi-simple-layout::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background-image: radial-gradient(rgba(225, 120, 7, 0.08) 1px, transparent 1px);
    background-size: 22px 22px;
    opacity: 0.55;
}

.fi-simple-main-ctn {
    position: relative;
    z-index: 1;
}

.fi-simple-main {
    border: 1px solid rgba(225, 120, 7, 0.14) !important;
    box-shadow:
        0 18px 50px rgba(80, 40, 20, 0.1),
        0 2px 8px rgba(137, 78, 148, 0.08) !important;
    backdrop-filter: blur(6px);
}

.fi-simple-header .fi-logo,
.fi-logo {
    max-height: 3.75rem !important;
    width: auto !important;
    object-fit: contain;
}

.fi-simple-header-heading {
    color: #2b2118 !important;
    font-weight: 700 !important;
}

.fi-simple-header-subheading {
    color: #6b5b4d !important;
}

.fi-btn-primary,
.fi-ac-btn-action.fi-color-primary {
    background-image: linear-gradient(135deg, var(--se-orange), #c45f04) !important;
}

.fi-simple-page a {
    color: var(--se-orange);
}

.fi-simple-page a:hover {
    color: var(--se-purple);
}

/* Dashboard: keep cards and charts on one grid, with real padding */
.fi-page-content {
    gap: 1.4rem !important;
}

.fi-dashboard .fi-grid,
.fi-page .fi-grid {
    row-gap: 1.4rem !important;
    column-gap: 1.25rem !important;
}

.fi-page.fi-dashboard .fi-section,
.fi-dashboard .fi-sc-section,
.fi-wi-widget .fi-section,
.fi-wi-widget .fi-sc-section {
    border: 1px solid rgba(225, 120, 7, 0.1) !important;
    border-radius: 1.15rem !important;
    box-shadow: 0 10px 28px rgba(80, 40, 20, 0.05) !important;
    background: #fffefb !important;
    padding: 1.35rem 1.4rem 1.5rem !important;
}

.fi-wi-widget .fi-sc-section-header,
.fi-wi-widget .fi-section-header {
    padding: 0 0 0.85rem !important;
}

.fi-wi-widget .fi-sc-section-content,
.fi-wi-widget .fi-section-content {
    padding: 0.15rem 0 0 !important;
}

.fi-wi-stats-overview-stat,
.fi-stats-overview-stat,
.fi-sc-stats-overview .fi-stat,
.fi-stat {
    border-radius: 1rem !important;
    border: 1px solid rgba(137, 78, 148, 0.08);
    background: #ffffff;
    padding: 1.15rem 1.2rem 1.2rem !important;
}

.fi-wi-chart {
    min-height: 100%;
}

.fi-wi-chart .fi-sc-section-content,
.fi-wi-chart .fi-section-content {
    padding-top: 0.5rem !important;
    padding-bottom: 0.35rem !important;
}

/* Paid students verification list */
.se-paid-page {
    display: flex;
    flex-direction: column;
    gap: 1.15rem;
}

.se-paid-lead {
    margin: 0;
    max-width: 46rem;
    font-size: 0.92rem;
    line-height: 1.55;
    color: #5c4f43;
}

.se-paid-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
}

.se-paid-metric {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 1rem 1.05rem 1.05rem;
    border-radius: 1rem;
    border: 1px solid rgba(80, 40, 20, 0.08);
    background: #fff;
    box-shadow: 0 8px 22px rgba(80, 40, 20, 0.04);
}

.se-paid-metric--orange {
    border-color: rgba(225, 120, 7, 0.22);
    background: linear-gradient(180deg, #fff8f0 0%, #fff 70%);
}

.se-paid-metric--purple {
    border-color: rgba(137, 78, 148, 0.22);
    background: linear-gradient(180deg, #f8f1fb 0%, #fff 70%);
}

.se-paid-metric-label {
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #7a6a5c;
}

.se-paid-metric-value {
    font-size: 1.35rem;
    line-height: 1.2;
    color: #2b2118;
}

.se-paid-metric-hint {
    font-size: 0.75rem;
    color: #8a7b6d;
}

@media (max-width: 1100px) {
    .se-paid-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .se-paid-metrics {
        grid-template-columns: 1fr;
    }
}

/* Syllabus fill-content: lock the layout; only the table panes scroll sideways */
html:has(.se-syllabus-fill-page),
body:has(.se-syllabus-fill-page) {
    overflow-x: hidden !important;
}

body:has(.se-syllabus-fill-page) .fi-layout,
body:has(.se-syllabus-fill-page) .fi-main-ctn,
body:has(.se-syllabus-fill-page) .fi-main,
body:has(.se-syllabus-fill-page) .fi-page,
body:has(.se-syllabus-fill-page) .fi-page-header-main-ctn,
body:has(.se-syllabus-fill-page) .fi-page-main,
body:has(.se-syllabus-fill-page) .fi-page-content,
body:has(.se-syllabus-fill-page) .fi-sc-form,
body:has(.se-syllabus-fill-page) .fi-sc-section,
body:has(.se-syllabus-fill-page) .fi-sc-section-content,
body:has(.se-syllabus-fill-page) .se-syllabus-form-shell,
body:has(.se-syllabus-fill-page) .se-syllabus-existing {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: clip !important;
}

.se-syllabus-fill-page .fi-sc-section-content > *,
.se-syllabus-form-shell > * {
    min-width: 0;
    max-width: 100%;
}

.se-syllabus-fill-page .fi-fo-table-repeater.se-syllabus-grid,
.se-syllabus-existing-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding-bottom: 0.65rem;
}

.se-syllabus-fill-page .se-syllabus-grid > table {
    width: max-content !important;
    min-width: 104rem !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
    border: 1px solid rgba(80, 40, 20, 0.16);
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tbody, tfoot) > tr > :is(th, td) {
    vertical-align: top;
    padding: 0.65rem 0.7rem !important;
    border: 1px solid rgba(80, 40, 20, 0.14) !important;
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tbody, tfoot) > tr > :is(th, td):nth-child(1) {
    min-width: 18rem;
    width: 18rem;
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tbody, tfoot) > tr > :is(th, td):nth-child(2) {
    min-width: 16rem;
    width: 16rem;
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tbody, tfoot) > tr > :is(th, td):nth-child(3) {
    min-width: 28rem;
    width: 28rem;
    background: #fffaf3;
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tbody, tfoot) > tr > :is(th, td):nth-child(4) {
    min-width: 17rem;
    width: 17rem;
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tbody, tfoot) > tr > :is(th, td):nth-child(5) {
    min-width: 17rem;
    width: 17rem;
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tbody, tfoot) > tr > :is(th, td):last-child {
    min-width: 3.5rem;
    width: 3.5rem;
}

.se-syllabus-fill-page .se-syllabus-grid > table > :is(thead, tfoot) > tr > th {
    white-space: normal !important;
    line-height: 1.3;
    vertical-align: bottom;
    background: #fff8f0 !important;
    color: #5c4f43;
    font-size: 0.75rem;
    font-weight: 600;
}

.se-syllabus-fill-page .se-syllabus-grid > table > thead > tr > th {
    position: sticky;
    top: 0;
    z-index: 2;
}

.se-syllabus-fill-page .se-syllabus-grid > table > tfoot > tr > th {
    position: sticky;
    bottom: 0;
    z-index: 2;
    border-top: 1px solid rgba(80, 40, 20, 0.1);
}

.se-syllabus-fill-page .fi-fo-field-wrp,
.se-syllabus-fill-page .fi-input-wrp,
.se-syllabus-fill-page .fi-fo-textarea {
    max-width: none !important;
    width: 100% !important;
}

.se-syllabus-fill-page textarea.se-syllabus-cell,
.se-syllabus-fill-page .se-syllabus-cell textarea,
.se-syllabus-fill-page .fi-fo-textarea textarea {
    min-height: 8.5rem !important;
    max-height: 24rem;
    width: 100% !important;
    overflow-y: auto !important;
    white-space: pre-wrap !important;
    line-height: 1.5 !important;
    font-size: 0.9rem !important;
    resize: vertical;
}

/* Summary bar above the table */
.se-syllabus-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 0.6rem;
    align-items: center;
    padding: 0.6rem 0.85rem;
    margin-bottom: 0.75rem;
    border-radius: 0.65rem;
    background: #fff3e4;
    border: 1px solid rgba(225, 120, 7, 0.2);
    font-size: 0.82rem;
    color: #5c4020;
}

.se-syllabus-summary strong {
    font-weight: 700;
    color: #e17807;
    font-size: 0.92rem;
}

.se-syllabus-summary-sep {
    color: rgba(80, 40, 20, 0.3);
}

/* Objectives repeater */
.se-syllabus-fill-page .se-syllabus-objectives {
    width: 100%;
    min-width: 0;
}

.se-syllabus-fill-page .se-syllabus-objectives > .fi-fo-repeater-items {
    counter-reset: se-obj;
}

.se-syllabus-fill-page .se-syllabus-objectives > .fi-fo-repeater-items > .fi-fo-repeater-item {
    counter-increment: se-obj;
    border: 1px solid rgba(225, 120, 7, 0.25);
    border-radius: 0.65rem;
    background: #fff;
    margin-bottom: 0.5rem;
    overflow: hidden;
}

.se-syllabus-fill-page .se-syllabus-objectives .fi-fo-repeater-item-header {
    background: #fff3e4;
    border-bottom: 1px solid rgba(225, 120, 7, 0.15);
    padding: 0.35rem 0.6rem;
    font-size: 0.76rem;
    font-weight: 600;
    color: #7a4a12;
    cursor: pointer;
}

.se-syllabus-fill-page .se-syllabus-objectives .fi-fo-repeater-item-header-label {
    white-space: normal !important;
    line-height: 1.35;
}

.se-syllabus-fill-page .se-syllabus-objectives .fi-fo-repeater-item-header-label::before {
    content: counter(se-obj) '. ';
    font-weight: 700;
    color: #e17807;
}

.se-syllabus-fill-page .se-syllabus-objectives .fi-fo-repeater-item-content {
    padding: 0.55rem 0.6rem 0.65rem;
}

/* Collapse/Expand all buttons for every objectives repeater */
.se-syllabus-fill-page .se-syllabus-objectives > .fi-fo-repeater-actions {
    display: flex !important;
    gap: 0.35rem;
    margin-bottom: 0.35rem;
    visibility: visible !important;
    height: auto !important;
    overflow: visible !important;
}

.se-syllabus-fill-page .se-syllabus-objectives > .fi-fo-repeater-actions.fi-hidden {
    display: flex !important;
    visibility: visible !important;
}

.se-syllabus-fill-page .se-syllabus-nested {
    width: 100%;
    min-width: 0;
}

.se-syllabus-fill-page .se-syllabus-nested > .fi-fo-simple-repeater-items {
    counter-reset: se-act;
}

.se-syllabus-fill-page .se-syllabus-nested .fi-fo-simple-repeater-item {
    counter-increment: se-act;
    position: relative;
    border: 1px solid rgba(80, 40, 20, 0.12);
    border-radius: 0.55rem;
    background: #fffefb;
    margin-bottom: 0.4rem;
    padding-left: 1.85rem !important;
}

.se-syllabus-fill-page .se-syllabus-nested .fi-fo-simple-repeater-item::before {
    content: counter(se-act);
    position: absolute;
    left: 0.45rem;
    top: 0.55rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.15rem;
    height: 1.15rem;
    border-radius: 999px;
    background: rgba(225, 120, 7, 0.15);
    color: #b55e04;
    font-size: 0.65rem;
    font-weight: 700;
    line-height: 1;
}

.se-syllabus-fill-page .se-syllabus-nested .fi-fo-repeater-item {
    border: 1px solid rgba(80, 40, 20, 0.12);
    border-radius: 0.55rem;
    background: #fffefb;
    margin-bottom: 0.4rem;
}

.se-syllabus-fill-page .se-syllabus-nested .fi-fo-simple-repeater-add,
.se-syllabus-fill-page .se-syllabus-nested .fi-fo-repeater-add,
.se-syllabus-fill-page .se-syllabus-objectives .fi-fo-table-repeater-add {
    margin-top: 0.25rem;
}

.se-syllabus-fill-page textarea.se-syllabus-nested-cell,
.se-syllabus-fill-page .se-syllabus-nested-cell textarea,
.se-syllabus-fill-page .se-syllabus-nested .fi-fo-textarea textarea {
    min-height: 4.25rem !important;
    max-height: 14rem;
}

.se-syllabus-fill-page .fi-select,
.se-syllabus-fill-page .fi-fo-select,
.se-syllabus-fill-page .fi-input-wrp:has(.fi-select) {
    width: 100% !important;
    max-width: none !important;
}

.se-syllabus-fill-page--viewing textarea {
    background: #fffefb !important;
    color: #2b2118 !important;
    opacity: 1 !important;
    cursor: default;
    resize: none !important;
}

.se-syllabus-existing {
    margin-bottom: 1.25rem;
}

.se-syllabus-existing-title {
    margin: 0 0 0.35rem;
    font-size: 1rem;
    font-weight: 600;
    color: #2b2118;
}

.se-syllabus-existing-lead {
    margin: 0 0 0.75rem;
    max-width: 52rem;
    font-size: 0.88rem;
    line-height: 1.5;
    color: #5c4f43;
}

.se-syllabus-existing-wrap {
    border: 1px solid rgba(80, 40, 20, 0.1);
    border-radius: 1rem;
    background: #fffefb;
}

.se-syllabus-existing-table {
    width: max-content;
    min-width: 96rem;
    border-collapse: collapse;
    table-layout: fixed;
    font-size: 0.88rem;
}

.se-syllabus-existing-table th,
.se-syllabus-existing-table td {
    min-width: 16rem;
    width: 16rem;
}

.se-syllabus-existing-table th {
    padding: 0.7rem 0.75rem;
    text-align: left;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    color: #7a6a5c;
    background: #fff8f0;
    border-bottom: 1px solid rgba(80, 40, 20, 0.08);
}

.se-syllabus-existing-table td {
    padding: 0.7rem 0.75rem;
    vertical-align: top;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    line-height: 1.45;
    color: #2b2118;
    border-bottom: 1px solid rgba(80, 40, 20, 0.06);
}
