/* Theme catalog and shared screen palette. Documents keep their print styling. */
.theme-season-mark { display: none; }
.theme-ribbon { display: inline-block; width: 20px; height: 27px; flex: 0 0 auto; vertical-align: middle; }
.themes-page { max-width: 1320px; margin: 0 auto; }
.themes-page-icon { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 13px; background: var(--brand-50); border: 1px solid var(--brand-200); color: var(--brand-700); font-size: 1.3rem; }
.themes-scope { display: flex; align-items: center; gap: 14px; }
.themes-scope > .bi { font-size: 1.3rem; color: var(--brand-600); }
.themes-scope p { font-size: .9rem; }
.themes-current { margin-left: auto; flex-shrink: 0; font-size: .82rem; padding: 8px 12px; border: 1px solid var(--border); border-radius: 10px; background: white; }
.themes-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.theme-choice.is-current { border-color: var(--brand-400); }
.theme-choice-body { display: flex; flex-direction: column; flex: 1; }
.theme-choice-body form { margin-top: auto; }
.theme-choice-body p { font-size: .9rem; }
.theme-active-label { font-size: .76rem; border: 1px solid var(--brand-200); background: var(--brand-50); color: var(--brand-700); padding: 4px 8px; border-radius: 20px; white-space: nowrap; }
.theme-active-label[hidden] { display: none; }
.themes-applied { font-size: .9rem; color: #236448; }
.theme-preview { --preview-accent: #8451d8; --preview-soft: #f6f0ff; --preview-border: #e3d9f4; display: flex; height: 238px; padding: 23px 22px 47px; gap: 0; background: var(--preview-soft); position: relative; border-bottom: 1px solid var(--preview-border); }
.theme-preview--october-pink { --preview-accent: #ac3668; --preview-soft: #fdf0f5; --preview-border: #efd6e1; }
.theme-preview-sidebar { width: 23%; max-width: 95px; display: flex; align-items: center; flex-direction: column; gap: 10px; background: #fff; border: 1px solid var(--preview-border); border-radius: 10px 0 0 10px; padding: 14px 12px; }
.theme-preview-logo { color: var(--preview-accent); font-weight: 800; font-size: 1rem; line-height: 1; margin-bottom: 7px; }
.theme-preview-sidebar b { width: 100%; height: 6px; border-radius: 3px; background: var(--preview-border); }
.theme-preview-sidebar b:first-of-type { background: var(--preview-accent); }
.theme-preview-main { flex: 1; min-width: 0; border: 1px solid var(--preview-border); border-left: 0; border-radius: 0 10px 10px 0; overflow: hidden; background: #fff; }
.theme-preview-top { display: flex; justify-content: space-between; align-items: center; height: 35px; padding: 5px 12px; background: #fff; border-bottom: 1px solid var(--preview-border); color: var(--preview-accent); }
.theme-preview-top > span { width: 32%; height: 6px; background: var(--preview-border); border-radius: 3px; }
.theme-preview-top .theme-ribbon { height: 24px; width: 18px; }
.theme-preview-content { background: var(--preview-soft); padding: 12px; height: calc(100% - 35px); }
.theme-preview-kpis { display: flex; gap: 8px; margin-bottom: 10px; }
.theme-preview-kpis b { flex: 1; height: 31px; border: 1px solid var(--preview-border); border-left: 3px solid var(--preview-accent); background: #fff; border-radius: 5px; }
.theme-preview-table { border: 1px solid var(--preview-border); border-radius: 6px; background: #fff; padding: 3px 9px; }
.theme-preview-table span { display: block; height: 15px; border-bottom: 1px solid var(--preview-border); }
.theme-preview-table span:last-child { border-bottom: 0; }
.theme-preview-caption { position: absolute; bottom: 15px; left: 22px; color: var(--preview-accent); font-size: .78rem; letter-spacing: .01em; }
@media (max-width: 767.98px) {
    .themes-grid { grid-template-columns: 1fr; gap: 16px; }
    .themes-scope { flex-wrap: wrap; align-items: flex-start; }
    .themes-scope > div { flex: 1; min-width: 180px; }
    .themes-current { margin-left: 0; }
    .theme-preview { height: 217px; padding: 18px 17px 44px; }
    .theme-choice-body .btn { width: 100%; }
}
@media screen {
    html[data-system-theme="october-pink"] {
        --brand-50: #fff3f7; --brand-100: #fbe5ed; --brand-200: #efc6d7; --brand-300: #e7acc5;
        --brand-400: #d77da5; --brand-500: #c65186; --brand-600: #ac3668; --brand-700: #87274f;
        --ink-900: #352630; --ink-700: #5c4552; --ink-500: #816a76; --ink-300: #a58c98;
        --surface-0: #fff; --surface-1: #fffbfd; --surface-2: #faf1f5; --border: #eddae3;
        --card-border: #ecd5e0; --card-border-strong: #f1e0e8; --card-field-border: #ecd4df;
        --card-bg: linear-gradient(180deg, #fff 0%, #fff8fb 100%);
        --card-head-bg: linear-gradient(180deg, #fffcfd 0%, #fcf0f5 100%);
        --card-field-bg: linear-gradient(180deg, #fffcfd 0%, #fdf3f7 100%);
        --card-shadow: 0 12px 28px rgb(113 38 73 / 6%);
        --shadow-soft: 0 12px 30px rgb(113 38 73 / 7%); --shadow-strong: 0 18px 50px rgb(113 38 73 / 11%);
        --bs-primary: #ac3668; --bs-primary-rgb: 172, 54, 104; --bs-link-color: #92305b; --bs-link-hover-color: #722145;
        --bs-primary-bg-subtle: #fbe5ed; --bs-primary-border-subtle: #efc6d7; --bs-primary-text-emphasis: #87274f;
    }
    html[data-system-theme="october-pink"] body { background: radial-gradient(1200px 800px at 5% 0%, #fff9fb 0%, #f8f0f4 45%, #f2e9ee 100%); }
    html[data-system-theme="october-pink"] body.auth-body { background: radial-gradient(ellipse at 15% 10%, #f7dfe9 0%, #fdf2f7 40%, #fcfafb 100%); }
    html[data-system-theme="october-pink"] .app-sidebar { background: linear-gradient(180deg, #fffafd 0%, #f9edf3 100%); border-color: var(--border); }
    html[data-system-theme="october-pink"] :is(.brand-box, .user-card, .company-switch, .auth-card) { border-color: var(--border); background: linear-gradient(180deg, #fff 0%, #fff8fb 100%); box-shadow: var(--shadow-soft); }
    html[data-system-theme="october-pink"] :is(.topbar, .mobile-app-header) { background: #fff9fc; border-color: var(--border); box-shadow: 0 2px 12px rgb(113 38 73 / 3%); }
    html[data-system-theme="october-pink"] :is(.menu-link:hover, .menu-link.active) { background: linear-gradient(90deg, #f9e0eb, #fcf0f5); color: var(--brand-700); border-color: var(--brand-200); }
    html[data-system-theme="october-pink"] :is(.page-title, .auth-title, .modal-title, .app-dialog-title) { color: var(--ink-900); }
    html[data-system-theme="october-pink"] :is(.brand-subtitle, .menu-group-title, .auth-subtitle, .auth-note, .company-switch-label) { color: var(--ink-500); }
    html[data-system-theme="october-pink"] .auth-brand { border-color: var(--border); }
    html[data-system-theme="october-pink"] .form-contour-grid > [class*="col-"] .form-label { color: var(--ink-700); }
    html[data-system-theme="october-pink"] .theme-season-mark { display: inline-flex; align-items: center; gap: 7px; color: var(--brand-700); font-size: .75rem; line-height: 1.2; }
    html[data-system-theme="october-pink"] .theme-season-mark--header { padding-left: 12px; margin-left: 3px; border-left: 1px solid var(--border); }
    html[data-system-theme="october-pink"] .theme-season-mark--login { justify-content: center; width: 100%; margin: 0 0 15px; }
    html[data-system-theme="october-pink"] .theme-season-mark--mobile { margin-left: auto; }
    html[data-system-theme="october-pink"] .btn-primary { background: linear-gradient(110deg, #a83162, #b83d73); color: #fff; --bs-btn-focus-shadow-rgb: 172,54,104; --bs-btn-disabled-bg: #ac3668; }
    html[data-system-theme="october-pink"] .btn-primary:is(:hover, :focus-visible, :active) { background: linear-gradient(110deg, #8d2852, #a83162); color: #fff; }
    html[data-system-theme="october-pink"] .btn-outline-primary { --bs-btn-color: #92305b; --bs-btn-border-color: #d995b3; --bs-btn-hover-bg: #ac3668; --bs-btn-hover-border-color: #ac3668; --bs-btn-active-bg: #92305b; --bs-btn-active-border-color: #92305b; --bs-btn-disabled-color: #92305b; --bs-btn-disabled-border-color: #d995b3; --bs-btn-focus-shadow-rgb: 172,54,104; }
    html[data-system-theme="october-pink"] .btn-outline-secondary { color: var(--ink-700); border-color: var(--brand-200); }
    html[data-system-theme="october-pink"] .btn-outline-secondary:is(:hover, :focus-visible) { color: var(--brand-700); background: var(--brand-50); border-color: var(--brand-400); }
    html[data-system-theme="october-pink"] :is(.form-control, .form-select, .input-group-text, .company-switch-trigger, .system-listbox-trigger, .mobile-menu-toggle, .mobile-sidebar-close) { border-color: var(--card-field-border); color: var(--ink-900); }
    html[data-system-theme="october-pink"] :is(.form-control, .form-select, .system-listbox-trigger, .company-switch-trigger):focus { border-color: var(--brand-400); box-shadow: 0 0 0 .18rem rgb(172 54 104 / 13%); }
    html[data-system-theme="october-pink"] .form-check-input:checked { background-color: var(--brand-600); border-color: var(--brand-600); }
    html[data-system-theme="october-pink"] .form-check-input:focus { border-color: var(--brand-300); box-shadow: 0 0 0 .2rem rgb(172 54 104 / 13%); }
    html[data-system-theme="october-pink"] .form-contour-grid > [class*="col-"]::before { background: var(--card-field-bg); border-color: var(--card-field-border); }
    html[data-system-theme="october-pink"] :is(.input-group-text, .auth-input .input-group-text) { background: var(--brand-50); color: var(--brand-700); }
    html[data-system-theme="october-pink"] .table { --bs-table-striped-bg: #fdf5f9; --bs-table-border-color: #f0dfe7; }
    html[data-system-theme="october-pink"] .module-table-card > .table-responsive { border-color: var(--border); }
    html[data-system-theme="october-pink"] .module-table-card .table thead th { background: var(--card-head-bg); color: var(--ink-500); border-color: var(--border); }
    html[data-system-theme="october-pink"] .module-table-card .table tbody tr:hover { background: #fff7fa; }
    html[data-system-theme="october-pink"] :is(.system-listbox-menu, .company-switch-menu, .sales-operation-kind-menu) { border-color: var(--brand-200); box-shadow: var(--shadow-strong); }
    html[data-system-theme="october-pink"] :is(.system-listbox-menu, .sales-operation-kind-menu) .sales-operation-kind-option { border-color: var(--border); }
    html[data-system-theme="october-pink"] :is(.system-listbox-menu, .sales-operation-kind-menu) .sales-operation-kind-option:is(.is-active, .is-keyboard-active, :hover, :focus-visible) { background: var(--brand-50); color: var(--brand-700); border-color: var(--brand-300); box-shadow: none; }
    html[data-system-theme="october-pink"] :is(.nav-pills .nav-link.active, .page-item.active .page-link) { background: var(--brand-600); border-color: var(--brand-600); color: #fff; }
    html[data-system-theme="october-pink"] .nav-tabs .nav-link.active { color: var(--brand-700); border-color: var(--border); background: var(--brand-50); }
    html[data-system-theme="october-pink"] .app-body .modal-content { border-color: var(--border); color: var(--ink-900); }
    html[data-system-theme="october-pink"] .app-body .modal-content::before { background: linear-gradient(90deg, var(--brand-600), var(--brand-300)); }
    html[data-system-theme="october-pink"] :is(.app-body .modal-header, .app-dialog-head) { background: var(--card-head-bg); border-color: var(--border); }
    html[data-system-theme="october-pink"] :is(.app-body .modal-footer, .app-dialog-actions, .app-dialog-footer) { background: #fffbfd; border-color: var(--border); }
    html[data-system-theme="october-pink"] :is(.app-body .modal .btn-close, .app-dialog-close) { border-color: var(--brand-200); }
    html[data-system-theme="october-pink"] .app-dialog-confirm { --dialog-status-accent: #ac3668; --dialog-status-soft: #fff3f7; --dialog-status-border: #efc6d7; }
    html[data-system-theme="october-pink"] :is(.dc-notification-bell, .pwa-install-icon) { color: var(--brand-600); border-color: var(--brand-200); background: var(--brand-50); box-shadow: var(--shadow-soft); }
    html[data-system-theme="october-pink"] .dc-notification-count { background: var(--brand-600); }
    html[data-system-theme="october-pink"] :is(.pwa-install-card, .sales-entry-card, .sales-document-toolbar) { border-color: var(--border); background: var(--card-bg); }
    @media (max-width: 991.98px) {
        html[data-system-theme="october-pink"] .theme-season-mark--header { display: none; }
        html[data-system-theme="october-pink"] .theme-season-mark--mobile .theme-ribbon { height: 22px; width: 17px; }
    }
}
@media print { .theme-season-mark, .themes-page { display: none !important; } }
