/* Shared presentation layer for the existing Bootstrap / AdminLTE components. */
.site-theme {
    --page:#d8d7d2;
    --surface:#e9e8e3;
    --surface-raised:#dfded8;
    --border:#c2c2b9;
    --ink:#343630;
    --muted:#54584f;
    --accent:#435f4d;
    --action:#526f5c;
    --action-hover:#445e4d;
    --action-ink:#ffffff;
    background:var(--page);
    color:var(--ink);
    font-family:Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
    font-size:14px;
    line-height:1.6;
    color-scheme:light;
}
.site-theme [x-cloak] { display:none!important; }
body.site-theme { background-color:var(--page)!important; color:var(--ink); }
.site-theme .card-body,.site-theme .justify-content-between,.site-theme .p-3 { background-color:transparent; }
.site-theme .card>.card-header { background:#dfded8; }
.site-theme .card>.card-footer { background:#dfded8; }
.site-theme .modal-header,.site-theme .modal-body,.site-theme .modal-footer { background:var(--surface); }
.site-theme .select2-search--dropdown { background:#e2e1db; }
.site-theme .select2-container--default .select2-results__option { background:transparent; }
.site-theme a { color:#44483f; }
.site-theme a:hover { color:#343630; }
.site-theme :focus-visible { outline:3px solid var(--accent)!important; outline-offset:3px; }
.site-theme .text-muted,.site-theme .text-secondary { color:var(--muted)!important; }
.site-theme .text-primary,.site-theme .text-info { color:var(--accent)!important; }
.site-theme .text-success { color:#2c6c50!important; }
.site-theme .text-warning { color:#855b22!important; }
.site-theme .text-danger { color:#a13f50!important; }
.site-theme hr { border-color:var(--border); }
.site-theme h1,.site-theme h2,.site-theme h3,.site-theme h4,.site-theme h5 { color:var(--ink); font-weight:700; }
.site-theme .card,.site-theme .info-box,.site-theme .small-box,.site-theme .callout {
    background:var(--surface);
    color:var(--ink);
    border:1px solid var(--border);
    border-radius:14px;
    box-shadow:none;
    min-width:0;
}
.site-theme .card-header {
    background:#dfded8;
    border-bottom:1px solid var(--border);
    padding:19px 22px;
    border-radius:13px 13px 0 0;
}
.site-theme .card-title { font-size:16px; font-weight:650; float:none; margin:0; }
.site-theme .card-header>.d-flex { align-items:center; gap:14px; flex-wrap:wrap; }
.site-theme .card-body { padding:22px; min-width:0; }
.site-theme .card-footer { background:#dfded8; border-top:1px solid var(--border); padding:17px 22px; border-radius:0 0 13px 13px; }
.site-theme .card-outline { border-top:1px solid var(--border)!important; }
.site-theme .card-primary:not(.card-outline)>.card-header,.site-theme .card-info:not(.card-outline)>.card-header { background:#dfded8; color:var(--ink); }
.site-theme .bg-primary,.site-theme .bg-info,.site-theme .bg-gradient-primary,.site-theme .bg-gradient-info { background:#ceddce!important; color:#343630!important; }
.site-theme .bg-success,.site-theme .bg-gradient-success { background:#e9f3ed!important; color:#2c6c50!important; }
.site-theme .bg-warning,.site-theme .bg-gradient-warning { background:#faf3e5!important; color:#855b22!important; }
.site-theme .bg-danger,.site-theme .bg-gradient-danger { background:#faedf0!important; color:#a13f50!important; }
.site-theme .bg-light,.site-theme .bg-white,.site-theme .bg-gray-light { background:#d8d7d2!important; color:var(--ink)!important; }
.site-theme .bg-dark,.site-theme .bg-secondary { background:#e2e1db!important; color:var(--ink)!important; }
.site-theme .btn {
    min-height:42px;
    padding:10px 17px;
    border-radius:8px;
    font-weight:650;
    font-size:13px;
    line-height:1.45;
    white-space:normal;
    box-shadow:none!important;
    transition:background .15s,border-color .15s;
}
.site-theme .btn-sm { min-height:36px; padding:7px 12px; font-size:12px; }
.site-theme .btn-lg { min-height:48px; padding:13px 22px; font-size:15px; }
.site-theme .btn-primary,.site-theme .btn-info { background:var(--action); border-color:var(--action); color:var(--action-ink); }
.site-theme .btn-primary:hover,.site-theme .btn-info:hover,.site-theme .btn-primary:not(:disabled):not(.disabled):active { background:var(--action-hover); border-color:var(--action-hover); color:var(--action-ink); }
.site-theme .btn-primary.disabled,.site-theme .btn-primary:disabled,.site-theme .btn-info:disabled { background:var(--action); border-color:var(--action); }
.site-theme .btn-secondary,.site-theme .btn-dark,.site-theme .btn-default,.site-theme .btn-light { background:#dfded8; color:#343630; border-color:#b6b8ae; }
.site-theme .btn-secondary:hover,.site-theme .btn-dark:hover,.site-theme .btn-default:hover,.site-theme .btn-light:hover { background:#dfded8; color:#343630; border-color:#899f8e; }
.site-theme .btn-outline-primary,.site-theme .btn-outline-info,.site-theme .btn-outline-light,.site-theme .btn-outline-secondary { color:#44483f; border-color:#b6b8ae; background:transparent; }
.site-theme .btn-outline-primary:hover,.site-theme .btn-outline-info:hover,.site-theme .btn-outline-light:hover,.site-theme .btn-outline-secondary:hover { background:#ceddce; color:#343630; }
.site-theme .btn-success { background:#3d6355; border-color:#b1cdbc; color:#ffffff; }
.site-theme .btn-success:hover { background:#487562; border-color:#b1cdbc; }
.site-theme .btn-danger { background:#8b4652; border-color:#deb5bd; color:#ffffff; }
.site-theme .btn-danger:hover { background:#9c4c5a; border-color:#deb5bd; }
.site-theme .btn-warning { background:#dec493; border-color:#dcc9a6; color:#343630; }
.site-theme .btn-outline-danger { color:#a13f50; border-color:#deb5bd; }
.site-theme .btn-outline-danger:hover { background:#63313c; color:#ffffff; }
.site-theme .btn-outline-success { color:#2c6c50; border-color:#b1cdbc; }
.site-theme .btn-outline-success:hover { background:#304e42; color:#ffffff; }
.site-theme .btn-outline-warning { color:#855b22; border-color:#dcc9a6; }
.site-theme .btn-outline-warning:hover { background:#51452f; color:#ffffff; }
.site-theme .btn-link { color:var(--accent); }
.site-theme .btn:disabled,.site-theme .btn.disabled { opacity:.55; cursor:not-allowed; }
.site-theme .rounded-pill.btn { border-radius:9px!important; }
.site-theme .form-control,.site-theme .custom-select,.site-theme .custom-file-label {
    background-color:#d8d7d2;
    color:var(--ink);
    border:1px solid #b6b8ae;
    border-radius:8px;
    min-height:44px;
    font-size:14px;
    height:auto;
    padding:10px 12px;
}
.site-theme select.form-control,.site-theme .custom-select { padding-right:30px; }
.site-theme .form-control::placeholder { color:#62665d; opacity:1; }
.site-theme .form-control:focus,.site-theme .custom-select:focus { border-color:var(--accent); box-shadow:0 0 0 3px #435f4d20; background-color:#e2e1db; color:var(--ink); }
.site-theme .form-control:focus-visible,.site-theme .custom-select:focus-visible { outline:none!important; box-shadow:0 0 0 3px #435f4d70; }
.site-theme .form-control:disabled,.site-theme .form-control[readonly] { background:#e2e1db; color:#44483f; opacity:1; }
.site-theme .form-control.is-invalid { border-color:#deb5bd; }
.site-theme .invalid-feedback { color:#a13f50; }
.site-theme .form-group { margin-bottom:22px; }
body.site-theme label { color:var(--ink); font-weight:600; margin-bottom:8px; }
.site-theme .form-text,.site-theme small.text-muted { line-height:1.6; }
.site-theme .input-group { min-width:0; }
.site-theme .input-group-text { background:#dfded8; color:#54584f; border-color:#b6b8ae; border-radius:8px; }
.site-theme .input-group>.form-control:not(:last-child) { border-top-right-radius:0; border-bottom-right-radius:0; }
.site-theme .input-group>.form-control:not(:first-child) { border-top-left-radius:0; border-bottom-left-radius:0; }
.site-theme .input-group-append>.btn,.site-theme .input-group-append>.input-group-text { border-top-left-radius:0; border-bottom-left-radius:0; }
.site-theme .input-group-prepend>.input-group-text { border-top-right-radius:0; border-bottom-right-radius:0; }
.site-theme input[type=checkbox],.site-theme input[type=radio] { accent-color:var(--action); }
.site-theme .custom-control-input:checked~.custom-control-label::before { background:var(--action); border-color:var(--action); }
.site-theme .custom-control-input:checked~.custom-control-label::after { filter:none; }
.site-theme .custom-control-label::before { background:#e2e1db; border-color:#899f8e; }
.site-theme .custom-file-label::after { height:auto; background:#dfded8; color:#343630; border-color:#b6b8ae; padding:10px 12px; }
.site-theme .alert,.site-theme .callout { border-radius:10px; padding:16px 20px; line-height:1.6; }
.site-theme .alert-info,.site-theme .alert-primary { background:#dfded8; border:1px solid #b6b8ae; color:#44483f; }
.site-theme .alert-success { background:#e9f3ed; border:1px solid #b1cdbc; color:#2c6c50; }
.site-theme .alert-warning { background:#faf3e5; border:1px solid #dcc9a6; color:#855b22; }
.site-theme .alert-danger { background:#faedf0; border:1px solid #deb5bd; color:#a13f50; }
.site-theme .alert a { color:inherit!important; text-decoration:underline; }
.site-theme .badge { font-size:11px; padding:5px 8px; border-radius:5px; line-height:1.3; }
.site-theme .badge-info,.site-theme .badge-primary { background:#dfded8; color:#343630; }
.site-theme .badge-success { background:#e9f3ed; color:#2c6c50; }
.site-theme .badge-danger { background:#faedf0; color:#a13f50; }
.site-theme .badge-warning { background:#faf3e5; color:#855b22; }
.site-theme .badge-secondary { background:#dfded8; color:#343630; }
.site-theme .progress { background:#e2e1db; border-radius:6px; }
.site-theme .progress-bar { background:#8fa994; }
.site-theme .modal-content,.site-theme .dropdown-menu,.site-theme .popover,.site-theme .swal2-popup {
    background:var(--surface)!important;
    color:var(--ink)!important;
    border:1px solid #b6b8ae;
    border-radius:12px;
    box-shadow:0 18px 55px #24232a15;
}
.site-theme .modal-header,.site-theme .modal-footer { border-color:var(--border); padding:18px 22px; }
.site-theme .modal-body { padding:22px; overflow-wrap:anywhere; }
.site-theme .modal-title { font-size:20px; }
.site-theme .close { color:#44483f; text-shadow:none; opacity:.85; }
.site-theme .dropdown-item { color:#44483f; padding:10px 16px; white-space:normal; }
.site-theme .dropdown-item:hover,.site-theme .dropdown-item:focus { background:#ceddce; color:#343630; }
.site-theme .dropdown-header { color:var(--muted); }
.site-theme .dropdown-divider { border-color:var(--border); }
.site-theme .popover-header { background:#dfded8; color:var(--ink); border-color:var(--border); border-radius:11px 11px 0 0; }
.site-theme .popover-body { color:#44483f; }
.site-theme .swal2-title,.site-theme .swal2-content,.site-theme .swal2-html-container { color:var(--ink)!important; }
.site-theme .swal2-styled.swal2-confirm { background:var(--action)!important; color:var(--action-ink)!important; border-radius:8px; }
.site-theme .swal2-styled:focus { box-shadow:none!important; }
.site-theme .swal2-styled.swal2-cancel { background:#dfded8!important; border-radius:8px; }
.site-theme .nav-tabs { border-color:var(--border); gap:4px; }
.site-theme .nav-tabs .nav-link { color:var(--muted); border-radius:7px 7px 0 0; padding:12px 17px; }
.site-theme .nav-tabs .nav-link:hover { background:#dfded8; border-color:transparent; color:#343630; }
.site-theme .nav-tabs .nav-link.active,.site-theme .nav-pills .nav-link.active { background:#c8d8c9; border-color:#b6b8ae; color:#343630; }
.site-theme .nav-pills .nav-link { border-radius:8px; }
.site-theme .tab-content { min-width:0; }
.site-theme .table { color:#343630; margin-bottom:0; font-size:13px; }
.site-theme .table td,.site-theme .table th { border-color:var(--border); padding:13px 15px; vertical-align:middle; }
.site-theme .table thead th { background:#dfded8; color:#54584f; font-weight:650; border-bottom:1px solid #b6b8ae; }
.site-theme table.dataTable thead th { white-space:nowrap; }
.site-theme table.dataTable td { max-width:330px; }
.site-theme table.dataTable td:last-child { white-space:nowrap; }
.site-theme table.dataTable td.dataTables_empty { text-align:left; white-space:normal; }
.site-theme .table-striped tbody tr:nth-of-type(odd) { background:#34363003; }
.site-theme .table-hover tbody tr:hover { background:#dfded8; color:#343630; }
.site-theme .ui-table-scroll { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; border-radius:8px; scrollbar-width:thin; scrollbar-color:#afb2a7 #dfded8; }
.site-theme .ui-table-scroll:focus-visible { outline-offset:1px; }
.site-theme .card-body.table-responsive { overflow:visible; }
.site-theme .dataTables_wrapper { width:100%; min-width:0; }
.site-theme .dataTables_wrapper>.row { align-items:center; row-gap:12px; margin-bottom:14px; }
.site-theme .dataTables_wrapper>.row:last-child { margin-top:16px; margin-bottom:0; }
.site-theme .dataTables_wrapper label { color:var(--muted); font-size:12px; }
.site-theme .dataTables_wrapper .form-control { min-height:38px; padding:7px 10px; }
.site-theme .dataTables_info { color:var(--muted); font-size:12px; white-space:normal; }
.site-theme .dataTables_processing { background:#dfded8; color:#343630; border:1px solid #b6b8ae; border-radius:8px; }
.site-theme .pagination { gap:4px; flex-wrap:wrap; }
.site-theme .page-link { border:1px solid #b6b8ae; border-radius:6px!important; background:#e2e1db; color:#44483f; min-width:35px; min-height:35px; text-align:center; }
.site-theme .page-item.active .page-link { background:var(--action); border-color:var(--action); color:var(--action-ink); }
.site-theme .page-item.disabled .page-link { background:#e2e1db; border-color:#c2c2b9; color:#62665d; }
.site-theme .list-group-item { background:transparent; border-color:var(--border); color:var(--ink); }
.site-theme .select2-container { max-width:100%; }
.site-theme .select2-container--default .select2-selection--single,.site-theme .select2-container--default .select2-selection--multiple { background:#d8d7d2; border:1px solid #b6b8ae; min-height:44px; border-radius:8px; padding:5px; }
.site-theme .select2-container--default .select2-selection--single .select2-selection__rendered { color:var(--ink); line-height:32px; }
.site-theme .select2-container--default .select2-selection--single .select2-selection__arrow { height:42px; }
.site-theme .select2-container--default .select2-selection--multiple .select2-selection__choice { background:#dfded8; border-color:#b6b8ae; color:#343630; }
.site-theme .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { color:#343630; }
.site-theme .select2-dropdown { background:#e2e1db; border-color:#b6b8ae; color:var(--ink); }
.site-theme .select2-search__field { background:#d8d7d2; color:var(--ink); border-color:#b6b8ae!important; min-height:32px; }
.site-theme .select2-container--default .select2-results__option[aria-selected=true] { background:#dfded8; color:#343630; }
.site-theme .select2-container--default .select2-results__option--highlighted[aria-selected] { background:var(--action); color:var(--action-ink); }
.site-theme .note-editor.note-frame,.site-theme .note-toolbar,.site-theme .note-statusbar { background:#e2e1db!important; border-color:var(--border)!important; color:var(--ink); }
.site-theme .note-editable { background:#e2e1db; color:var(--ink); }
.site-theme .note-btn { min-height:32px; padding:6px 10px; }
.site-theme .bootstrap-datetimepicker-widget { background:#e2e1db; color:var(--ink); }
.site-theme .bootstrap-datetimepicker-widget table td.active { background:var(--action); color:var(--action-ink); }
.site-theme .bootstrap-datetimepicker-widget table td:hover { background:#dfded8; }

/* Authenticated shell: the existing menu, routes and permissions stay in Blade. */
.panel-theme .content-wrapper { background:var(--page); min-height:calc(100vh - 116px)!important; height:auto!important; }
.panel-theme .content-wrapper,.panel-theme .main-header,.panel-theme .main-footer { transition:none!important; }
.panel-theme .main-header,.panel-theme .main-sidebar,.panel-theme .main-footer { background:#e9e8e3!important; border-color:var(--border); box-shadow:none!important; }
.panel-theme .main-header { min-height:62px; z-index:1034; }
.panel-theme .main-header .nav-link { color:#44483f; height:auto; min-height:44px; display:flex; align-items:center; }
.panel-theme .main-sidebar { border-right:1px solid var(--border); }
.panel-theme.layout-fixed .wrapper .sidebar,.panel-theme .main-sidebar .brand-link { background:#e9e8e3; }
.panel-theme .brand-link { display:flex; align-items:center; gap:9px; min-height:62px; border-bottom:1px solid var(--border); padding:14px; }
.panel-theme .brand-link .brand-image { float:none; margin:0; width:32px; height:32px; max-height:32px; }
.panel-theme .brand-text { font-size:15px; font-weight:650!important; letter-spacing:-.3px; overflow:hidden; text-overflow:ellipsis; }
.panel-theme .nav-sidebar .nav-link { color:#54584f; border-radius:8px; margin-bottom:5px; min-height:44px; padding:10px 12px; font-size:13px; }
.panel-theme .nav-sidebar .nav-link:hover { background:#dfded8; color:#343630; }
.panel-theme .nav-sidebar .nav-link.active { background:#c8d8c9!important; color:#343630!important; box-shadow:none!important; }
.panel-theme .nav-sidebar .nav-header { color:#62665d; font-size:10px; letter-spacing:1.2px; text-transform:uppercase; padding:24px 12px 10px; }
.panel-theme .content-header { padding:30px 28px 22px; }
.panel-theme .content-header h1 { font-size:29px; font-weight:750; letter-spacing:-.8px; overflow-wrap:anywhere; }
.panel-theme .content-header p { color:var(--muted); font-size:13px; margin-top:9px; }
.panel-theme .content { padding:0 28px 32px; }
.panel-theme .content>.container-fluid,.panel-theme .content-header>.container-fluid { max-width:1700px; }
.panel-theme .content .row>[class*=col-] { min-width:0; }
.panel-theme .breadcrumb { font-size:12px; background:transparent; flex-wrap:wrap; }
.panel-theme .breadcrumb-item.active { color:var(--muted); }
.panel-theme .info-box { padding:18px; align-items:center; gap:14px; min-height:110px; }
.panel-theme .info-box .info-box-icon { flex:0 0 44px; width:44px; height:44px; font-size:21px; border-radius:10px; box-shadow:none!important; }
.panel-theme .info-box-content { padding:0; min-width:0; }
.panel-theme .info-box-text { color:var(--muted); font-size:12px; white-space:normal; overflow:visible; }
.panel-theme .info-box-number { font-size:23px; line-height:1.4; overflow-wrap:anywhere; }
.panel-theme .info-box-number sup { display:block; position:static; font-size:11px; color:var(--muted); font-weight:400; }
.panel-theme .main-footer { padding:18px 28px; color:var(--muted); font-size:11px; }
.panel-theme .main-footer strong { font-weight:400; }
.panel-theme .balance-navigation { display:flex; align-items:center; gap:12px; padding:0 8px; }
.panel-theme .balance-trigger { background:none; border:0; color:var(--ink); min-height:44px; padding:5px 0; font-size:12px; white-space:nowrap; }
.panel-theme .balance-trigger:focus-visible { border-radius:5px; }
.panel-theme .discount-banner .card-body { background:#dfded8!important; color:#343630!important; }
.panel-theme .upgrade-current-specs span,.panel-theme .upgrade-tariff-card__specs span,.panel-theme .upgrade-payment-pill { background:#ceddce; color:#44483f!important; }
.panel-theme .upgrade-tariff-card { border-color:#b6b8ae; background:#e2e1db; color:var(--ink)!important; }
.panel-theme .upgrade-tariff-card h4,.panel-theme .upgrade-tariff-card__price strong { color:var(--ink)!important; }
.panel-theme .upgrade-tariff-card__header p,.panel-theme .upgrade-tariff-card__note,.panel-theme .upgrade-tariff-card__price span { color:var(--muted)!important; }
.panel-theme .upgrade-tariff-option input:checked+.upgrade-tariff-card,.panel-theme .upgrade-tariff-card.is-current { background:#ceddce; border-color:var(--accent); box-shadow:inset 0 0 0 1px var(--accent); }
.panel-theme .upgrade-tariff-option input:focus-visible+.upgrade-tariff-card { outline:3px solid var(--accent); outline-offset:3px; }
.panel-theme .upgrade-tariff-card.is-disabled { background:#e2e1db; }
.panel-theme .upgrade-modal-body .upgrade-alert { display:block; }
.panel-theme .coowners-page {
    --coowners-surface:#e9e8e3;
    --coowners-surface-soft:#d8d7d2;
    --coowners-border:#c2c2b9;
    --coowners-border-strong:#899f8e;
    --coowners-text-muted:#54584f;
    --coowners-primary:#435f4d;
    --coowners-primary-hover:#445e4d;
    --coowners-shadow:none;
}
.panel-theme .coowners-permission-item .custom-control-input:checked~.custom-control-label::before { background:var(--action); border-color:var(--action); }
.panel-theme .tab-content h1 { font-size:22px; letter-spacing:-.5px; }

/* Public pages share the landing navigation and footer. */
.public-theme { background:#d8d7d2; padding-top:80px; }
.public-theme .home-nav { background:#45574b!important; }
.public-theme section[id] { scroll-margin-top:96px; }
.public-theme .legal-page { padding-top:48px; padding-bottom:56px; min-height:65vh; }
.public-theme .legal-page .card { max-width:920px; margin:auto; }
.public-theme .legal-page .card-header { padding:24px 30px; font-size:28px; font-weight:700; }
.public-theme .legal-page .card-body { padding:30px; overflow-wrap:anywhere; }
.public-theme .legal-page .card-body { font-size:15px; line-height:1.85; }
.public-theme .legal-page .card-body * { font-family:inherit!important; }
.public-theme .legal-page .card-body p,.public-theme .legal-page .card-body span { font-size:inherit!important; line-height:inherit!important; }
.public-theme .legal-page p,.public-theme .legal-page li { color:#44483f; }
.public-theme .legal-page h2,.public-theme .legal-page h3 { margin-top:28px; font-size:21px; }
.public-theme .legal-page .card-body img { max-width:100%; height:auto; }

/* Authentication uses the same surfaces while keeping the existing forms. */
.auth-theme { min-height:100vh; display:flex; flex-direction:column; background:var(--page); }
.auth-brand { display:flex; align-items:center; gap:10px; align-self:center; padding:30px 20px 22px; font-size:22px; font-weight:750; color:#343630!important; letter-spacing:-.7px; }
.auth-brand img { width:34px; height:34px; }
.auth-shell { flex:1; width:100%; padding:16px 20px 36px; }
.auth-shell .login-box,.auth-shell .register-box { width:100%; max-width:480px; margin:0 auto; }
.auth-shell>.container { max-width:720px; }
.auth-shell .card { border-radius:18px; box-shadow:0 22px 70px #24232a15; }
.auth-shell .card-header { background:transparent; padding:26px 30px 0; border:0; border-radius:18px 18px 0 0; }
.auth-shell .card>.card-header { background:transparent; }
.auth-shell .card-header .h1 { font-size:21px; color:var(--ink); font-weight:650; }
.auth-shell .card-header img { max-height:85px; width:auto; }
.auth-shell .card-body { padding:24px 30px 30px; }
.auth-shell .login-box-msg { color:var(--muted); font-size:14px; padding:0 0 24px; }
.auth-shell .form-control { min-height:48px; }
.auth-shell .fixed-bottom { position:static; margin-top:24px; font-size:12px; }
.auth-shell .fixed-bottom:empty { display:none; }
.auth-shell .card-body>p { margin-top:16px; }
.auth-theme .auth-footer { text-align:center; color:var(--muted); padding:0 20px 26px; font-size:12px; }
.register-page-shell { min-height:70vh; padding:48px 20px; }
.register-page-card { max-width:480px; width:100%; margin:auto; }
.register-page-brand { color:var(--ink); font-size:25px; letter-spacing:-.7px; }
.register-page-subtitle { color:var(--muted); margin-bottom:24px; }
.register-page-submit { width:100%; }
.register-page-legal { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:18px; font-size:12px; }
.site-theme .password-toggle { min-width:44px; min-height:44px; border:1px solid #b6b8ae; color:#44483f; background:#dfded8; padding:8px; cursor:pointer; }
.site-theme .password-toggle:hover { background:#dfded8; color:#343630; }
.site-theme .ui-skip { position:fixed; top:-100px; left:16px; z-index:2000; background:var(--action); color:var(--action-ink); border-radius:8px; padding:10px 16px; }
.site-theme .ui-skip:focus { top:10px; }

@media(min-width:992px) and (max-width:1350px) {
    .panel-theme .content .info-box { flex-wrap:wrap; gap:10px; }
    .panel-theme .content .info-box-content { flex-basis:calc(100% - 55px); }
}
@media(max-width:991px) {
    .panel-theme .content { padding:0 18px 28px; }
    .panel-theme .content-header { padding:24px 18px 20px; }
    .panel-theme .main-header { padding-left:10px; padding-right:10px; }
    .panel-theme .main-sidebar { z-index:1038; }
    .panel-theme .main-header .dropdown-menu { max-width:calc(100vw - 24px); }
}
@media(max-width:575px) {
    .site-theme { font-size:13px; }
    .panel-theme .content { padding:0 10px 24px; }
    .panel-theme .content-header { padding:24px 12px 16px; }
    .panel-theme .content-header h1 { font-size:25px; }
    .panel-theme .content-header .breadcrumb { float:none!important; margin-top:8px; padding:0; }
    .panel-theme .main-header { padding:4px; min-height:60px; }
    .panel-theme .main-header .nav-link { padding:7px; }
    .panel-theme .balance-navigation { gap:10px; padding:0 3px; }
    .panel-theme .balance-trigger { display:flex; flex-direction:column; gap:1px; font-size:11px; }
    .panel-theme .balance-trigger .ml-1 { margin-left:0!important; }
    .panel-theme .main-footer { padding:18px 15px; }
    .site-theme .card-body { padding:17px; }
    .site-theme .card-header,.site-theme .card-footer { padding:16px 17px; }
    .site-theme .content .card-body.p-4 { padding:17px!important; }
    .site-theme .btn { min-height:44px; }
    .site-theme .btn-group { flex-wrap:wrap; gap:5px; }
    .site-theme .card-header .btn { max-width:100%; }
    .site-theme .table td,.site-theme .table th { padding:11px; }
    .site-theme .dataTables_filter label { display:flex; align-items:center; justify-content:flex-start; gap:8px; }
    .site-theme div.dataTables_wrapper div.dataTables_filter input { width:100%; min-width:0; margin:0; }
    .site-theme div.dataTables_wrapper div.dataTables_paginate ul.pagination { justify-content:flex-start; }
    .site-theme .dataTables_wrapper>.row>[class*=col-] { text-align:left; }
    .site-theme .nav-tabs { flex-wrap:nowrap; overflow-x:auto; overscroll-behavior-x:contain; padding-bottom:4px; }
    .site-theme .nav-tabs .nav-link { white-space:nowrap; font-size:12px; padding:11px; }
    .site-theme .modal-dialog { margin:8px; }
    .site-theme .modal-body { padding:17px; }
    .site-theme .modal-header,.site-theme .modal-footer { padding:15px 17px; }
    .site-theme .modal-footer { gap:8px; }
    .site-theme .modal-footer>.btn { flex:1; margin:0; }
    .auth-brand { padding-top:22px; }
    .auth-shell { padding:10px 14px 24px; }
    .auth-shell .card-header { padding:22px 20px 0; }
    .auth-shell .card-body { padding:20px; }
    .public-theme .legal-page { padding:26px 0; }
    .public-theme .legal-page .card-header { padding:20px; font-size:23px; }
    .public-theme .legal-page .card-body { padding:20px; }
}
@media(prefers-reduced-motion:reduce) {
    .site-theme * { transition:none!important; animation:none!important; scroll-behavior:auto!important; }
}

/* Neutral light surfaces and legible labels for inherited AdminLTE components. */
.site-theme .btn-secondary:hover,.site-theme .btn-dark:hover,.site-theme .btn-default:hover,.site-theme .btn-light:hover,
.site-theme .btn-outline-primary:hover,.site-theme .btn-outline-info:hover,.site-theme .btn-outline-light:hover,.site-theme .btn-outline-secondary:hover { color:var(--ink); }
.site-theme .brand-link,.site-theme .brand-link:hover,.site-theme .content-wrapper { color:var(--ink); }
.site-theme .swal2-styled.swal2-cancel { color:var(--ink)!important; }
.site-theme .form-control,.site-theme .custom-select,.site-theme .select2-selection { background-color:#e9e8e3; }
.site-theme .form-control:focus,.site-theme .custom-select:focus { background-color:#e9e8e3; }
.site-theme .custom-select { background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3e%3cpath fill='%2354584f' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e"); }
.panel-theme .coowners-actions .btn,.panel-theme .coowners-permission-item .custom-control-label,.panel-theme .coowners-permission-item .custom-control-label strong { color:var(--ink); }
.panel-theme .coowners-actions .btn:hover,.panel-theme .coowners-actions .btn:focus { color:var(--accent); background:#ceddce; }
.panel-theme .coowners-group-icon { background:#ceddce; color:var(--accent); }
.panel-theme .coowners-permission-item .custom-control-label::before { background:#e9e8e3; border-color:#b6b8ae; }
.panel-theme .coowners-permission-item .custom-control-input:checked~.custom-control-label::before { background:var(--action); border-color:var(--action); }

body.site-theme,.site-theme .sidebar { scrollbar-color:#afb2a7 #dfded8; }
body.site-theme::-webkit-scrollbar,.site-theme ::-webkit-scrollbar { width:8px; height:8px; }
body.site-theme::-webkit-scrollbar-track,.site-theme ::-webkit-scrollbar-track { background:#dfded8; }
body.site-theme::-webkit-scrollbar-thumb,.site-theme ::-webkit-scrollbar-thumb { background:#afb2a7; border-radius:8px; }
.site-theme .os-scrollbar>.os-scrollbar-track>.os-scrollbar-handle { background:#afb2a7!important; }
.site-theme .ui-skip,.site-theme .ui-skip:hover { color:var(--action-ink)!important; }

.panel-theme .brand-link .brand-text { color:var(--ink)!important; }

.site-theme label:not(.form-check-label):not(.custom-file-label) { color:var(--ink); }
.panel-theme .coowners-permission-key { color:var(--muted); }
.panel-theme .coowners-permission-label { color:var(--ink); }
.panel-theme .coowners-permission-item .custom-control-input:focus~.custom-control-label::before { box-shadow:0 0 0 3px rgba(82,111,92,.18); }

/* The app shares sage accents with the public pages. */
body.panel-theme .main-header { background:#45574b!important; color:#eef2ed; border-color:#667b6c; }
body.panel-theme .main-header .nav-link,body.panel-theme .main-header .balance-trigger,body.panel-theme .main-header #userDropdown { color:#eef2ed; }
body.panel-theme .main-header .nav-link:hover,body.panel-theme .main-header .balance-trigger:hover { color:#d5e2d1; }
body.panel-theme .main-header .balance-navigation i { color:#bdcebc!important; }
.site-theme .form-control,.site-theme .custom-select,.site-theme .select2-selection,
.site-theme .form-control:focus,.site-theme .custom-select:focus { background-color:#efeee9; }

/* Sage and stone: forest navigation around neutral warm gray work surfaces. */
body.panel-theme {
    --page:#d8d7d2;
    --surface:#e9e8e3;
    --surface-raised:#dfded8;
    --border:#c2c2b9;
    --ink:#343630;
    --muted:#54584f;
    --accent:#435f4d;
    --action:#526f5c;
    --action-hover:#445e4d;
    --action-ink:#ffffff;
    --chrome:#45574b;
    --sidebar:#506358;
    --chrome-border:#6d8072;
    --chrome-ink:#eef2ed;
    --chrome-muted:#d5dfd4;
    --chrome-hover:#5c7263;
    --chrome-selected:#627a69;
}
body.panel-theme .main-header,body.panel-theme .main-sidebar,
body.panel-theme.layout-fixed .wrapper .sidebar,body.panel-theme .main-sidebar .brand-link {
    background:var(--chrome)!important;
    border-color:var(--chrome-border);
}
body.panel-theme .main-sidebar,body.panel-theme.layout-fixed .wrapper .sidebar,
body.panel-theme .main-sidebar .brand-link { background:var(--sidebar)!important; }
body.panel-theme .main-header,body.panel-theme .main-header .nav-link,
body.panel-theme .main-header .balance-trigger,body.panel-theme .main-header #userDropdown,
body.panel-theme .main-sidebar .brand-link,body.panel-theme .main-sidebar .brand-text,
body.panel-theme .nav-sidebar .nav-link { color:var(--chrome-ink)!important; }
body.panel-theme .nav-sidebar .nav-header { color:var(--chrome-muted); }
body.panel-theme .nav-sidebar .nav-link:hover { background:var(--chrome-hover); }
body.panel-theme .nav-sidebar .nav-link.active { background:var(--chrome-selected)!important; color:#ffffff!important; }
body.panel-theme .nav-sidebar .badge.badge-info,body.panel-theme .nav-sidebar .badge.badge-primary {
    background:#5b7163; color:#ffffff;
}
body.panel-theme .main-header .nav-link:hover,body.panel-theme .main-header .balance-trigger:hover { color:#d5e2d1!important; }
body.panel-theme .main-header .balance-navigation i { color:#c2d4bd!important; }
body.panel-theme .main-sidebar :focus-visible,body.panel-theme .main-header .nav-link:focus-visible,
body.panel-theme .main-header .balance-trigger:focus-visible,body.panel-theme .main-header #userDropdown:focus-visible {
    outline-color:#d5e2d1!important;
}
body.panel-theme .main-sidebar,body.panel-theme .sidebar { scrollbar-color:#879b8b var(--sidebar); }
body.panel-theme .main-sidebar ::-webkit-scrollbar-track { background:var(--sidebar); }
body.panel-theme .main-sidebar ::-webkit-scrollbar-thumb { background:#879b8b; }
body.panel-theme .main-sidebar .os-scrollbar>.os-scrollbar-track>.os-scrollbar-handle { background:#879b8b!important; }
body.panel-theme .main-footer { background:#dfded8!important; }
body.panel-theme .card>.card-header,body.panel-theme .card>.card-footer,
body.panel-theme .table thead th,body.panel-theme .popover-header,
body.panel-theme .input-group-text,body.panel-theme .custom-file-label::after,
body.panel-theme .alert-info,body.panel-theme .alert-primary { background:#dfded8; }
body.panel-theme .btn-secondary,body.panel-theme .btn-dark,body.panel-theme .btn-default,body.panel-theme .btn-light,
body.panel-theme .badge-info,body.panel-theme .badge-primary,body.panel-theme .badge-secondary,
body.panel-theme .page-link,body.panel-theme .page-item.disabled .page-link,
body.panel-theme .select2-selection__choice,body.panel-theme .swal2-styled.swal2-cancel { background:#dfded8; }
body.panel-theme .page-item.active .page-link { background:var(--action); }
body.panel-theme .btn-secondary:hover,body.panel-theme .btn-dark:hover,body.panel-theme .btn-default:hover,body.panel-theme .btn-light:hover,
body.panel-theme .table-hover tbody tr:hover { background:#d2d2ca; }
body.panel-theme .nav-tabs .nav-link.active,body.panel-theme .nav-pills .nav-link.active,
body.panel-theme .dropdown-item:hover,body.panel-theme .dropdown-item:focus,
body.panel-theme .btn-outline-primary:hover,body.panel-theme .btn-outline-info:hover,
body.panel-theme .btn-outline-light:hover,body.panel-theme .btn-outline-secondary:hover { background:#ceddce; }
body.panel-theme .bg-primary,body.panel-theme .bg-info,
body.panel-theme .bg-gradient-primary,body.panel-theme .bg-gradient-info { background:#ceddce!important; }
body.panel-theme .bg-light,body.panel-theme .bg-white,body.panel-theme .bg-gray-light { background:var(--page)!important; }
body.panel-theme .bg-dark,body.panel-theme .bg-secondary { background:var(--surface-raised)!important; }
body.panel-theme .form-control,body.panel-theme .custom-select,body.panel-theme .custom-file-label,
body.panel-theme .select2-container--default .select2-selection--single,
body.panel-theme .select2-container--default .select2-selection--multiple,
body.panel-theme .select2-search__field { background-color:#efeee9; border-color:#a2a69a; }
body.panel-theme .form-control::placeholder { color:#62665d; }
body.panel-theme .form-control:focus,body.panel-theme .custom-select:focus { background-color:#efeee9; border-color:var(--accent); box-shadow:0 0 0 3px #526f5c25; }
body.panel-theme .form-control:focus-visible,body.panel-theme .custom-select:focus-visible { box-shadow:0 0 0 3px #526f5c60; }
body.panel-theme .form-control:disabled,body.panel-theme .form-control[readonly] { background:#dfded8; color:var(--muted); }
body.panel-theme .select2-dropdown,body.panel-theme .select2-search--dropdown,
body.panel-theme .select2-results__option[aria-selected=true] { background:var(--surface); }
body.panel-theme .select2-results__option--highlighted[aria-selected] { background:var(--action); }
body.panel-theme .discount-banner .card-body { background:#dfded8!important; }
body.panel-theme .upgrade-current-specs span,body.panel-theme .upgrade-tariff-card__specs span,
body.panel-theme .upgrade-payment-pill,body.panel-theme .coowners-group-icon { background:#ceddce; }
body.panel-theme .upgrade-tariff-card { background:var(--surface); }
body.panel-theme .upgrade-tariff-option input:checked+.upgrade-tariff-card,
body.panel-theme .upgrade-tariff-card.is-current { background:#ceddce; }
body.panel-theme .coowners-page {
    --coowners-surface:var(--surface);
    --coowners-surface-soft:var(--page);
    --coowners-border:var(--border);
    --coowners-border-strong:#899f8e;
    --coowners-text-muted:var(--muted);
    --coowners-primary:var(--action);
    --coowners-primary-hover:var(--action-hover);
}
body.panel-theme .coowners-permission-item .custom-control-label::before { background:#efeee9; }
body.panel-theme .coowners-actions .btn:hover,body.panel-theme .coowners-actions .btn:focus { background:#ceddce; }

/* Semantic text also stays legible directly on the stone canvas. */
body.panel-theme .text-danger { color:#923747!important; }
body.panel-theme .btn-outline-danger,body.panel-theme .invalid-feedback { color:#923747; }
body.panel-theme .btn-outline-danger:hover { color:#ffffff; }
body.panel-theme .text-success { color:#285f47!important; }
body.panel-theme .btn-outline-success { color:#285f47; }
body.panel-theme .btn-outline-success:hover { color:#ffffff; }
body.panel-theme .text-warning { color:#754f1d!important; }
body.panel-theme .btn-outline-warning { color:#754f1d; }
body.panel-theme .btn-outline-warning:hover { color:#ffffff; }
body.panel-theme .form-control.is-invalid { border-color:#b26473; }

/* Override AdminLTE dark-mode pagination for enabled, inactive pages too. */
body.panel-theme .pagination .page-item:not(.active) .page-link {
    background:#dfded8;
    color:var(--ink);
    border-color:var(--border);
}
body.panel-theme .pagination .page-item:not(.active):not(.disabled) .page-link:hover {
    background:#ceddce;
    color:var(--ink);
}
body.panel-theme .pagination .page-item.disabled .page-link { color:var(--muted); }
body.panel-theme .pagination .page-item.active .page-link,
body.panel-theme .pagination .page-item.active .page-link:hover,
body.panel-theme .pagination .page-item.active .page-link:focus {
    background:var(--action);
    color:var(--action-ink);
    border-color:var(--action);
}
