/* SILC ADMIN REAL FIX V7 */
/* Corrige o PHP warning no dashboard, reorganiza Theme real e padroniza o admin */

:root {
    --silc-navy: #061d36;
    --silc-gold: #d99a2b;
    --silc-panel: #fffdf8;
    --silc-border: #eadccd;
    --silc-text: #071f3b;
    --silc-muted: #66748a;
    --silc-shadow: 0 16px 38px rgba(7,31,59,.055);
}

/* Padronização forte de títulos */
html body:has(.admin-shell) .admin-content h1,
html body:has(.admin-shell) .admin-topbar h1,
html body:has(.admin-shell) .premium-topbar h1,
html body:has(.admin-shell) .silc-dashboard-head-v5 h1 {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: clamp(30px, 2.35vw, 42px) !important;
    line-height: 1.03 !important;
    font-weight: 750 !important;
    letter-spacing: -.045em !important;
    color: var(--silc-text) !important;
    margin: 0 0 8px !important;
}

html body:has(.admin-shell) .admin-content h2,
html body:has(.admin-shell) .panel h2,
html body:has(.admin-shell) .premium-panel h2,
html body:has(.admin-shell) .silc-card-v5 h2,
html body:has(.admin-shell) .theme-card-v7 h2 {
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
    font-size: 21px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    letter-spacing: -.035em !important;
    color: var(--silc-text) !important;
    margin: 0 !important;
}

/* Dashboard: donuts sem legenda quebrada vertical */
.silc-donut-card-v5 {
    min-width: 0 !important;
    overflow: hidden !important;
}

.silc-donut-card-v5 .silc-donut-wrap-v5 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    align-items: center !important;
    justify-items: center !important;
    min-height: 270px !important;
}

.silc-donut-card-v5 .silc-donut-v5 {
    width: 184px !important;
    height: 184px !important;
    margin: 0 auto !important;
}

.silc-donut-card-v5 .silc-donut-v5 i {
    inset: 52px !important;
}

.silc-donut-card-v5 .silc-legend-v5 {
    width: 100% !important;
    display: grid !important;
    gap: 9px !important;
}

.silc-donut-card-v5 .silc-legend-v5 div {
    display: grid !important;
    grid-template-columns: 12px minmax(0,1fr) auto !important;
    gap: 8px !important;
    align-items: start !important;
    min-width: 0 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
}

.silc-donut-card-v5 .silc-legend-v5 span {
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

.silc-donut-card-v5 .silc-legend-v5 strong {
    white-space: nowrap !important;
    font-size: 12px !important;
}

/* Dashboard: inscrições recentes como lista limpa, sem warning, sem caminho, sem banco quebrado */
.silc-recent-card-v5 {
    overflow: hidden !important;
}

.silc-recent-list-v5 {
    display: grid !important;
    gap: 10px !important;
    min-width: 0 !important;
}

.silc-recent-item-v5,
.silc-recent-item-v5:visited {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) auto auto !important;
    gap: 10px !important;
    align-items: center !important;
    min-height: 62px !important;
    padding: 9px 0 !important;
    border-bottom: 1px solid rgba(234,220,205,.78) !important;
    text-decoration: none !important;
    color: var(--silc-text) !important;
    max-width: 100% !important;
    overflow: hidden !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

.silc-recent-item-v5 i {
    width: 32px !important;
    height: 32px !important;
    border-radius: 50% !important;
    display: grid !important;
    place-items: center !important;
    background: #eadcca !important;
    color: var(--silc-text) !important;
    font-style: normal !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.silc-recent-item-v5 > div {
    min-width: 0 !important;
    overflow: hidden !important;
}

.silc-recent-item-v5 strong,
.silc-recent-item-v5 span {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    text-decoration: none !important;
}

.silc-recent-item-v5 strong {
    color: var(--silc-text) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

.silc-recent-item-v5 span {
    margin-top: 3px !important;
    color: var(--silc-muted) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
}

.silc-recent-item-v5 em,
.silc-recent-item-v5 b {
    white-space: nowrap !important;
    text-decoration: none !important;
}

.silc-recent-item-v5 em {
    display: inline-grid !important;
    place-items: center !important;
    min-height: 26px !important;
    border-radius: 7px !important;
    padding: 4px 8px !important;
    background: #e7f7ed !important;
    color: #168345 !important;
    font-style: normal !important;
    font-size: 11px !important;
    font-weight: 800 !important;
}

.silc-recent-item-v5 em.partial,
.silc-recent-item-v5 em.pending,
.silc-recent-item-v5 em.awaiting_payment,
.silc-recent-item-v5 em.not_started {
    background: #fff0d2 !important;
    color: #9b650f !important;
}

.silc-recent-item-v5 em.linked {
    background: #eaf1fb !important;
    color: var(--silc-navy) !important;
}

.silc-recent-item-v5 b {
    color: var(--silc-text) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.silc-recent-item-v5.linked {
    background: #fff8ed !important;
    border-radius: 10px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
}

/* THEME V7 */
.admin-theme-v7 {
    overflow-x: hidden !important;
}

.theme-topbar-v7 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 20px !important;
    align-items: start !important;
    margin-bottom: 26px !important;
}

.theme-actions-v7 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 10px !important;
}

.theme-actions-v7 select {
    max-width: 260px !important;
}

.theme-form-v7 {
    max-width: 100% !important;
}

.theme-layout-v7 {
    display: grid !important;
    grid-template-columns: minmax(250px, .88fr) minmax(270px, .95fr) minmax(270px, .95fr) minmax(360px, 1.4fr) !important;
    gap: 20px !important;
    align-items: start !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.theme-card-v7 {
    background: rgba(255,253,248,.92) !important;
    border: 1px solid var(--silc-border) !important;
    border-radius: 16px !important;
    box-shadow: var(--silc-shadow) !important;
    padding: 22px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

.theme-card-head-v7 {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 14px !important;
    margin-bottom: 18px !important;
}

.theme-card-head-v7 p,
.theme-card-v7 small,
.helper-v7 {
    color: var(--silc-muted) !important;
    font-weight: 500 !important;
}

.edition-list-v7 {
    display: grid !important;
    gap: 12px !important;
}

.edition-mini-card-v7 {
    position: relative !important;
    display: grid !important;
    gap: 4px !important;
    padding: 16px 18px !important;
    border-radius: 14px !important;
    border: 1px solid var(--silc-border) !important;
    background: #fffaf4 !important;
    color: var(--silc-text) !important;
    text-decoration: none !important;
}

.edition-mini-card-v7.active {
    border-color: var(--silc-gold) !important;
    box-shadow: inset 0 0 0 1px var(--silc-gold) !important;
}

.edition-mini-card-v7 strong {
    font-size: 28px !important;
    line-height: 1 !important;
    letter-spacing: -.04em !important;
}

.edition-mini-card-v7 span,
.edition-mini-card-v7 small {
    font-weight: 500 !important;
}

.edition-mini-card-v7 em {
    position: absolute !important;
    right: 14px !important;
    top: 14px !important;
    background: #dcfce7 !important;
    color: #157347 !important;
    border-radius: 999px !important;
    padding: 4px 9px !important;
    font-size: 11px !important;
    font-style: normal !important;
    font-weight: 800 !important;
}

.theme-note-v7 {
    margin-top: 14px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    border: 1px solid var(--silc-border) !important;
    background: #fff5e4 !important;
    color: var(--silc-muted) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
}

.color-list-v7 {
    display: grid !important;
    gap: 12px !important;
}

.color-row-v7 {
    display: grid !important;
    grid-template-columns: minmax(88px, 1fr) 54px minmax(94px, 120px) 40px !important;
    gap: 10px !important;
    align-items: center !important;
}

.color-row-v7 span {
    font-weight: 700 !important;
    color: var(--silc-text) !important;
}

.color-row-v7 input[type="color"] {
    width: 54px !important;
    min-width: 54px !important;
    height: 42px !important;
    padding: 4px !important;
}

.color-row-v7 button,
.theme-card-v7 button:not(.btn),
.palette-card-v7 {
    min-height: 40px !important;
    border-radius: 10px !important;
    border: 1px solid var(--silc-border) !important;
    background: #fffaf4 !important;
    color: var(--silc-navy) !important;
    font-weight: 800 !important;
    cursor: pointer !important;
}

.typography-card-v7 label,
.controls-card-v7 label,
.logo-mode-select-v7,
.theme-copy-card-v7 label {
    display: grid !important;
    gap: 7px !important;
    margin-bottom: 14px !important;
}

.typography-card-v7 label span,
.controls-card-v7 label span,
.logo-mode-select-v7 span,
.theme-copy-card-v7 label span {
    font-weight: 700 !important;
}

.font-preview-v7 {
    font-size: 42px !important;
    line-height: 1 !important;
    letter-spacing: -.04em !important;
    margin: 10px 0 22px !important;
}

.font-preview-v7.serif {
    font-family: Georgia, serif !important;
}

.logo-list-v7 {
    display: grid !important;
    gap: 14px !important;
}

.logo-preview-card-v7 {
    display: grid !important;
    grid-template-columns: 160px minmax(0, 1fr) !important;
    gap: 14px !important;
    align-items: center !important;
}

.logo-box-v7 {
    min-height: 110px !important;
    border-radius: 12px !important;
    border: 1px dashed var(--silc-gold) !important;
    display: grid !important;
    place-items: center !important;
    text-align: center !important;
}

.logo-box-v7 strong {
    display: block !important;
    font-family: Georgia, serif !important;
    font-size: 34px !important;
    letter-spacing: .12em !important;
}

.logo-box-v7 span {
    display: block !important;
    margin-top: 4px !important;
    color: var(--silc-gold) !important;
    text-transform: uppercase !important;
    letter-spacing: .3em !important;
    font-size: 11px !important;
    font-weight: 800 !important;
}

.logo-box-v7.dark {
    background: var(--silc-navy) !important;
    color: #fff !important;
    border-color: transparent !important;
}

.segmented-v7,
.icon-options-v7,
.preview-toggle-v7 {
    display: flex !important;
    gap: 7px !important;
    flex-wrap: wrap !important;
    margin-bottom: 16px !important;
}

.segmented-v7 button.active,
.icon-options-v7 button.active,
.preview-toggle-v7 button.active {
    background: var(--silc-gold) !important;
    color: #fff !important;
    border-color: var(--silc-gold) !important;
}

.range-fake-v7 {
    height: 8px !important;
    border-radius: 999px !important;
    background: #eadfce !important;
    margin: 16px 0 !important;
}

.range-fake-v7 span {
    display: block !important;
    height: 100% !important;
    width: 42% !important;
    border-radius: inherit !important;
    background: var(--silc-gold) !important;
}

.toggle-row-v7 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.live-preview-card-v7 {
    grid-column: span 2 !important;
}

.live-preview-v7 {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 380px !important;
    border-radius: 16px !important;
    padding: 32px !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 72% 12%, color-mix(in srgb, var(--preview-accent) 28%, transparent), transparent 30%),
        linear-gradient(135deg, var(--preview-primary), var(--preview-dark)) !important;
    color: #fff !important;
}

.live-preview-v7 nav {
    display: flex !important;
    align-items: center !important;
    gap: 28px !important;
    margin-bottom: 48px !important;
}

.live-preview-v7 nav strong {
    font-family: Georgia, serif !important;
    font-size: 31px !important;
    letter-spacing: .12em !important;
}

.live-preview-v7 nav span {
    color: rgba(255,255,255,.78) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

.live-preview-v7 nav button {
    margin-left: auto !important;
    background: var(--preview-accent) !important;
    color: #fff !important;
    border: 0 !important;
    padding: 0 20px !important;
    min-height: 42px !important;
    border-radius: 10px !important;
}

.live-preview-v7 small {
    display: inline-block !important;
    background: rgba(255,255,255,.12) !important;
    color: var(--preview-soft) !important;
    border-radius: 999px !important;
    padding: 8px 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .12em !important;
}

.live-preview-v7 h3 {
    margin: 22px 0 14px !important;
    color: #fff !important;
    font-family: Georgia, serif !important;
    font-size: clamp(34px, 4vw, 58px) !important;
    line-height: .95 !important;
    max-width: 700px !important;
}

.live-preview-v7 p {
    max-width: 680px !important;
    color: rgba(255,255,255,.86) !important;
    font-size: 17px !important;
}

.preview-stats-v7 {
    margin-top: 34px !important;
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 10px !important;
    background: #fff !important;
    color: var(--preview-primary) !important;
    border-radius: 14px !important;
    padding: 18px !important;
}

.preview-stats-v7 span {
    font-weight: 700 !important;
}

.palettes-card-v7,
.theme-copy-card-v7 {
    grid-column: span 2 !important;
}

.palette-grid-v7 {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 16px !important;
}

.palette-card-v7 {
    display: grid !important;
    gap: 12px !important;
    align-content: start !important;
    text-align: left !important;
    padding: 16px !important;
    min-height: 128px !important;
}

.palette-card-v7.active {
    border-color: var(--silc-gold) !important;
    box-shadow: inset 0 0 0 1px var(--silc-gold), 0 12px 28px rgba(7,31,59,.055) !important;
}

.palette-card-v7 span {
    display: flex !important;
    gap: 7px !important;
}

.palette-card-v7 i {
    width: 22px !important;
    height: 22px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(7,31,59,.08) !important;
}

.palette-card-v7 em {
    min-height: 36px !important;
    border-radius: 10px !important;
    border: 1px solid var(--silc-border) !important;
    background: #fffdf8 !important;
    display: grid !important;
    place-items: center !important;
    color: var(--silc-navy) !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 800 !important;
}

.theme-copy-card-v7 {
    display: grid !important;
    gap: 14px !important;
}

.theme-copy-card-v7 textarea {
    min-height: 100px !important;
}

.theme-copy-card-v7 .code-area-v7 {
    min-height: 150px !important;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace !important;
}

.btn-full {
    width: 100% !important;
}

/* Cadastro manual continua rolando */
.registration-drawer,
.premium-registration-drawer,
aside.registration-drawer,
aside.premium-registration-drawer {
    position: sticky !important;
    top: 22px !important;
    max-height: calc(100vh - 44px) !important;
    height: calc(100vh - 44px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding-bottom: 24px !important;
}

.drawer-form,
.premium-drawer-form {
    padding-bottom: 80px !important;
}

@media (max-width: 1700px) {
    .theme-layout-v7 {
        grid-template-columns: repeat(2, minmax(280px, 1fr)) !important;
    }

    .logo-card-v7,
    .live-preview-card-v7,
    .palettes-card-v7,
    .theme-copy-card-v7 {
        grid-column: span 1 !important;
    }

    .palette-grid-v7 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1180px) {
    .theme-topbar-v7,
    .theme-layout-v7,
    .preview-stats-v7 {
        grid-template-columns: 1fr !important;
    }

    .theme-actions-v7 {
        justify-content: flex-start !important;
    }

    .palette-grid-v7 {
        grid-template-columns: 1fr !important;
    }

    .registration-drawer,
    .premium-registration-drawer,
    aside.registration-drawer,
    aside.premium-registration-drawer {
        position: relative !important;
        top: auto !important;
        max-height: none !important;
        height: auto !important;
    }
}

@media (max-width: 760px) {
    .color-row-v7,
    .logo-preview-card-v7,
    .silc-recent-item-v5 {
        grid-template-columns: 1fr !important;
    }

    .silc-recent-item-v5 em,
    .silc-recent-item-v5 b {
        justify-self: start !important;
    }

    .live-preview-v7 {
        padding: 22px !important;
    }

    .live-preview-v7 nav {
        flex-wrap: wrap !important;
        gap: 12px !important;
    }
}
