/* Caando light blue refresh: loaded last to prevent heavy dark surfaces. */
:root {
    --caando-light-bg: #edf5fb;
    --caando-light-bg-2: #f8fbfe;
    --caando-light-card: #ffffff;
    --caando-light-line: #ccdeec;
    --caando-light-text: #173550;
    --caando-light-muted: #637d95;
    --caando-light-blue: #2563eb;
    --caando-light-navy: #19466f;
    --caando-light-shadow: 0 16px 42px rgba(29, 72, 111, .10);
}

html,
body.caando-public-theme,
.caando-page-frame,
.caando-public-theme :where(.agency-dashboard,.agency-staff-page,.agency-subscriptions,.user-dashboard-page,.realtor-dashboard,.crm-shell,.property-create-page,.property-details-page,.search-page,.membership-page,.normal-register-page,.partnership-page,.support-page,.agency-profile-page,.android-download-page,.finance-shell) {
    background: linear-gradient(180deg, var(--caando-light-bg), var(--caando-light-bg-2)) !important;
    color: var(--caando-light-text) !important;
}

.caando-site-header,
.caando-role-header {
    background: rgba(255, 255, 255, .96) !important;
    border-color: #d2e1ed !important;
    box-shadow: 0 8px 26px rgba(29, 72, 111, .09) !important;
}

.caando-role-nav a,
.caando-login-btn,
.caando-role-user span {
    background: #eef6fc !important;
    border-color: #c5daea !important;
    color: #214d70 !important;
}

.caando-role-user,
.caando-role-user strong,
.caando-role-user button {
    color: #294e6b !important;
}

.caando-public-theme :where(.agency-panel,.agency-staff-shell,.agency-staff-head,.current-subscription,.plan-card,.dashboard-shell,.dashboard-card,.realtor-panel,.crm-card,.property-create-shell .form-card,.details-card,.property-summary,.search-card,.search-filter-card,.membership-shell,.membership-card,.normal-register-card,.partnership-card,.support-card,.agency-container,.finance-entry-card,.finance-report-card) {
    background: var(--caando-light-card) !important;
    color: var(--caando-light-text) !important;
    border-color: var(--caando-light-line) !important;
    box-shadow: var(--caando-light-shadow) !important;
}

.caando-public-theme :where(.agency-dashboard-hero,.realtor-hero,.subscription-hero,.dashboard-header,.property-create-cover,.membership-cover,.search-topbar,.finance-hero) {
    background: linear-gradient(135deg, #dcecff 0%, #edf7ff 52%, #d9eff9 100%) !important;
    color: #173b5c !important;
    border: 1px solid #bdd7ea !important;
    box-shadow: 0 16px 42px rgba(29, 72, 111, .10) !important;
}

.caando-public-theme :where(.agency-dashboard-hero,.realtor-hero,.subscription-hero,.dashboard-header,.property-create-cover,.membership-cover,.search-topbar,.finance-hero) :where(h1,h2,h3,p,span,strong,small) {
    color: inherit !important;
}

.caando-public-theme :where(input,select,textarea) {
    background: #fff !important;
    color: #173550 !important;
    border-color: #bcd1e1 !important;
}

.caando-public-theme :where(input,select,textarea):focus {
    border-color: #4e8fc5 !important;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, .10) !important;
}

.caando-public-theme :where(.agency-table,.crm-table,.dashboard-table,.finance-table) th {
    background: #e5f1fa !important;
    color: #244f70 !important;
    border-color: #cfdeea !important;
}

.caando-public-theme :where(.agency-table,.crm-table,.dashboard-table,.finance-table) td {
    background: #fff !important;
    color: #284860 !important;
    border-color: #d8e5ee !important;
}

.caando-public-theme :where(.agency-table,.crm-table,.dashboard-table,.finance-table) tbody tr:hover td {
    background: #f2f8fc !important;
}

.caando-public-theme :where(p,small,.muted,.text-muted) {
    color: var(--caando-light-muted) !important;
}

.caando-public-theme .footer {
    background: #e4eff7 !important;
    color: #5f7890 !important;
    border-color: #ccdeeb !important;
}

/* Instagram-like profile layout, changed to comfortable light mode. */
.igp-page {
    --ig-text: #173550 !important;
    --ig-muted: #6a8195 !important;
    --ig-line: #d5e2ec !important;
    --ig-soft: #f1f6fa !important;
    background: linear-gradient(180deg, #eaf3fa, #f8fbfe) !important;
    color: #173550 !important;
}

.igp-shell,
.igp-about,
.igp-highlights,
.igp-tabs,
.igp-empty {
    background: #fff !important;
    color: #173550 !important;
    border-color: #d5e2ec !important;
    box-shadow: var(--caando-light-shadow) !important;
}

.igp-header,
.igp-main-info,
.igp-bio,
.igp-stats,
.igp-title-row,
.igp-meta {
    color: #173550 !important;
}

.igp-header :where(h1,h2,h3,strong,span,p,small),
.igp-about :where(h1,h2,h3,strong,span,p,small) {
    color: inherit !important;
}

.igp-tabs,
.igp-tabs button,
.igp-btn.ghost {
    color: #315979 !important;
}

.igp-btn.primary,
.igp-btn.blue {
    background: #2563eb !important;
    color: #fff !important;
}

/* Admin content stays light; only the compact sidebar remains navy. */
.caando-admin-body,
.caando-admin-main,
.caando-admin-content {
    background: linear-gradient(180deg, #eaf3fa, #f8fbfe) !important;
    color: #173550 !important;
}

.caando-admin-topbar {
    background: rgba(255, 255, 255, .97) !important;
    color: #173550 !important;
    border-color: #ccddea !important;
    box-shadow: 0 7px 24px rgba(29, 72, 111, .09) !important;
}

.caando-admin-content :where(.admin-fa-hero,.admin-header,.admin-users-hero,.report-hero,.finance-hero) {
    background: linear-gradient(135deg, #dcecff, #eff8ff 55%, #d8eef8) !important;
    color: #173b5c !important;
    border-color: #bdd7ea !important;
    box-shadow: var(--caando-light-shadow) !important;
}

.caando-admin-content :where(.admin-fa-hero,.admin-header,.admin-users-hero,.report-hero,.finance-hero) :where(h1,h2,h3,p,span,strong,small,a) {
    color: inherit !important;
}

.caando-admin-content :where(.admin-fa-module,.admin-start-card,.caando-future-card,.admin-fa-stats article,.stat-grid article,.admin-actions-grid a,.admin-users-card,.report-card,.finance-entry-card,.finance-report-card,.admin-card) {
    background: #fff !important;
    color: #173550 !important;
    border-color: #cedeea !important;
    box-shadow: var(--caando-light-shadow) !important;
}

.caando-admin-content :where(input,select,textarea) {
    background: #fff !important;
    color: #173550 !important;
    border-color: #bcd1e1 !important;
}

.caando-admin-content :where(table) th {
    background: #e4f0f9 !important;
    color: #285675 !important;
    border-color: #cfdeea !important;
}

.caando-admin-content :where(table) td {
    background: #fff !important;
    color: #284860 !important;
    border-color: #d8e5ee !important;
}

.caando-admin-content :where(table) tbody tr:hover td {
    background: #f2f8fc !important;
}

.persian-picker {
    background: #fff !important;
    color: #173550 !important;
    border-color: #b9d2e5 !important;
    box-shadow: 0 22px 60px rgba(29, 72, 111, .20) !important;
}

.persian-picker button {
    color: #214d70 !important;
}

.persian-picker-nav button,
.persian-picker-day.is-selected,
.persian-picker-day:hover {
    background: #dcecff !important;
    color: #174f7c !important;
}

@media (max-width: 760px) {
    .caando-public-theme :where(.agency-dashboard-hero,.realtor-hero,.subscription-hero,.dashboard-header,.property-create-cover,.membership-cover,.search-topbar,.finance-hero),
    .caando-admin-content :where(.admin-fa-hero,.admin-header,.admin-users-hero,.report-hero,.finance-hero) {
        border-radius: 18px !important;
    }
}

/* Shared Jalali picker repair: keep the calendar grid intact in public and admin pages. */
.persian-picker,
.persian-picker * {
    box-sizing: border-box !important;
}

.persian-picker {
    position: absolute !important;
    z-index: 10000 !important;
    width: min(330px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    padding: 14px !important;
    direction: rtl !important;
    overflow: hidden !important;
    background: #ffffff !important;
    color: #173550 !important;
    border: 1px solid #b9d2e5 !important;
    border-radius: 18px !important;
    box-shadow: 0 22px 60px rgba(29, 72, 111, .20) !important;
    font-family: inherit !important;
    line-height: 1.4 !important;
}

.persian-picker-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    min-height: 38px !important;
    margin: 0 0 12px !important;
}

.persian-picker-title {
    flex: 1 1 auto !important;
    color: #173b5c !important;
    font-size: 15px !important;
    font-weight: 950 !important;
    text-align: right !important;
    white-space: nowrap !important;
}

.persian-picker-nav {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 6px !important;
}

.persian-picker-nav button {
    display: inline-grid !important;
    place-items: center !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #b7cfe1 !important;
    border-radius: 10px !important;
    background: #eef6fc !important;
    color: #174f7c !important;
    font-size: 22px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    cursor: pointer !important;
    appearance: none !important;
}

.persian-picker-nav button:hover {
    background: #dcecff !important;
    border-color: #7fb1d5 !important;
}

.persian-picker-grid {
    display: grid !important;
    grid-template-columns: repeat(7, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    align-items: stretch !important;
    gap: 6px !important;
    width: 100% !important;
    direction: rtl !important;
}

.persian-picker-grid > div:empty {
    display: block !important;
    min-width: 0 !important;
    min-height: 38px !important;
}

.persian-picker-weekday,
.persian-picker-day {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
}

.persian-picker-weekday {
    color: #668099 !important;
    background: transparent !important;
    border: 0 !important;
}

.persian-picker-day {
    border: 1px solid #d4e2ed !important;
    background: #f8fbfe !important;
    color: #234e70 !important;
    cursor: pointer !important;
    appearance: none !important;
}

.persian-picker-day:hover,
.persian-picker-day.is-selected {
    border-color: #2563eb !important;
    background: #2563eb !important;
    color: #ffffff !important;
    box-shadow: 0 7px 18px rgba(37, 99, 235, .18) !important;
}

.persian-picker-time {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 12px 0 0 !important;
    padding-top: 12px !important;
    border-top: 1px solid #dce7f0 !important;
    direction: rtl !important;
}

.persian-picker-time label {
    display: grid !important;
    gap: 5px !important;
    margin: 0 !important;
    color: #55728b !important;
    font-size: 11px !important;
    font-weight: 800 !important;
}

.persian-picker-time input {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 39px !important;
    margin: 0 !important;
    padding: 6px 8px !important;
    border: 1px solid #bfd3e3 !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: #173550 !important;
    text-align: center !important;
    direction: ltr !important;
    font: inherit !important;
    outline: 0 !important;
}

.persian-picker-time input:focus {
    border-color: #4e8fc5 !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .10) !important;
}

/* Light hero buttons need dark text; the old dark theme left them white. */
.caando-public-theme .agency-dashboard-hero .agency-dashboard-actions a:not(.primary) {
    background: rgba(255, 255, 255, .92) !important;
    color: #174f7c !important;
    border-color: #a9c9df !important;
    box-shadow: 0 7px 18px rgba(29, 72, 111, .07) !important;
}

.caando-public-theme .agency-dashboard-hero .agency-dashboard-actions a:not(.primary):hover {
    background: #e7f3fc !important;
    color: #103d60 !important;
    border-color: #6fa5ca !important;
}

.caando-public-theme .agency-dashboard-hero .agency-dashboard-actions a.primary {
    background: linear-gradient(135deg, #2563eb, #087c9c) !important;
    color: #ffffff !important;
    border-color: transparent !important;
}

/* فوتر در صفحات بلند باید بعد از محتوا قرار بگیرد، نه روی جدول و فرم‌ها */
html,body.caando-public-theme{min-height:100%}
body.caando-public-theme{margin-bottom:0!important;display:flex;flex-direction:column}
.caando-public-theme .caando-site-header{flex:0 0 auto}
.caando-public-theme .caando-page-frame{flex:1 0 auto;min-height:calc(100vh - 150px)}
.caando-public-theme .footer{position:static!important;inset:auto!important;width:100%;line-height:normal!important;white-space:normal!important;flex:0 0 auto;padding:22px 0!important}
