@font-face {
    font-family:CrmArabic;
    src:url('../../fonts/exports/NotoSansArabic-Regular.woff2') format('woff2'),
        url('../../fonts/exports/NotoSansArabic-Regular.ttf') format('truetype');
    font-weight:400;
    font-display:swap
}
:root {
    --crm-bg:#f3f6fa;
    --crm-surface:#fff;
    --crm-surface-soft:#f7f9f8;
    --crm-border:#dfe7e4;
    --crm-border-strong:#cad7d1;
    --crm-text:#1c334a;
    --crm-muted:#60758a;
    --crm-primary:#087f69;
    --crm-primary-hover:#066450;
    --crm-primary-soft:#eaf6f0;
    --crm-success:#087f69;
    --crm-success-soft:#eaf6f0;
    --crm-danger:#b33c39;
    --crm-danger-soft:#fff1ef;
    --crm-warning:#a46b19;
    --crm-warning-soft:#fff7e7;
    --crm-radius:16px;
    --crm-radius-sm:10px;
    --crm-shadow:0 3px 15px #183b2f05;
    --crm-shadow-lifted:0 12px 32px #183b2f0d
}
body.crm-app,body.crm-login {
    font-family:CrmArabic,Tahoma,'Segoe UI',sans-serif!important;
    background:var(--crm-bg);
    color:var(--crm-text);
    font-size:14px;
    line-height:1.8
}
.crm-app *, .crm-login * {
    box-sizing:border-box
}
.crm-app [hidden],.crm-login [hidden] {
    display:none!important
}
.crm-app a,.crm-app button,.crm-app input,.crm-app select,.crm-login a,.crm-login button {
    touch-action:manipulation
}
.crm-app a:focus-visible,.crm-app button:focus-visible,.crm-app summary:focus-visible,.crm-login button:focus-visible {
    outline:3px solid #44b394;
    outline-offset:4px
}
.crm-skip {
    position:fixed;
    top:-120px;
    right:16px;
    z-index:3000;
    background:#fff;
    color:#075b49;
    padding:12px 20px;
    border:2px solid #087f69;
    border-radius:10px
}
.crm-skip:focus {
    top:10px
}
.crm-app>.page-content,.crm-app .page-content {
    min-height:calc(100vh - 72px)
}
.crm-app .content-wrapper {
    min-width:0
}
.crm-app .content {
    padding:0 32px 36px!important;
    width:100%;
    max-width:1800px;
    margin:0 auto
}
.crm-app .crm-page {
    font-family:inherit;
    max-width:none;
    padding:0 0 28px;
    margin:0
}
.crm-app .navbar-static {
    height:72px;
    min-height:72px;
    border:0;
    border-bottom:1px solid var(--crm-border);
    box-shadow:none;
    background:#fff
}
.crm-app .navbar-header {
    width:256px;
    min-width:256px;
    height:72px;
    padding:0 24px;
    background:#122e2b
}
.crm-app .navbar-brand {
    padding:0;
    margin:0
}
.crm-app .navbar-brand a {
    text-decoration:none
}
.crm-wordmark {
    display:inline-flex;
    gap:12px;
    align-items:center;
    color:var(--crm-text);
    white-space:nowrap
}
.crm-wordmark>i {
    display:grid;
    place-items:center;
    font-size:20px;
    width:37px;
    height:37px;
    border-radius:11px;
    background:#e6f4ed;
    color:#087f69
}
.crm-wordmark>span {
    display:flex;
    flex-direction:column;
    line-height:1.5
}
.crm-wordmark strong {
    font-family:'Segoe UI',sans-serif;
    font-size:20px;
    letter-spacing:1px;
    line-height:1.3
}
.crm-wordmark small {
    font-size:10px;
    opacity:.68
}
.navbar-header .crm-wordmark {
    color:#fff
}
.navbar-header .crm-wordmark>i {
    color:#9de0c2;
    background:#ffffff12
}
.crm-app .navbar-brand-xs .crm-wordmark>span {
    display:none
}
.crm-shell-caption {
    margin-inline-end:auto;
    color:var(--crm-muted);
    font-size:12px
}
.crm-app .navbar-nav-link {
    border-radius:10px
}
.crm-app .navbar-collapse {
    padding-inline:18px;
    gap:12px
}
.crm-app .navbar-nav-link:hover {
    background:#f0f6f2
}
.crm-app .sidebar-dark {
    background:#122e2b;
    color:#c7d5cf;
    width:256px;
    min-width:256px
}
.crm-app .sidebar-content {
    padding:20px 12px 28px
}
.crm-app .sidebar-user-material-body {
    background:none!important;
    border:1px solid #ffffff12;
    border-radius:14px;
    margin:0 4px 20px
}
.crm-app .sidebar-user-material .card-body {
    padding:16px!important;
    text-align:right!important;
    position:relative;
    padding-inline-start:68px!important;
    min-height:83px
}
.crm-user-avatar {
    width:38px;
    height:38px;
    border-radius:12px;
    display:grid;
    place-items:center;
    background:#ffffff0e;
    color:#a4d7c0;
    position:absolute;
    inset-inline-start:16px;
    top:21px;
    font-size:18px
}
.crm-app .sidebar-user-material h6 {
    font-size:13px;
    overflow-wrap:anywhere;
    text-shadow:none!important;
    font-weight:700;
    margin-top:3px!important
}
.crm-app .sidebar-user-material .font-size-sm {
    font-size:10px;
    text-shadow:none!important;
    color:#a4bfb4!important
}
.crm-app .sidebar-user-material-footer,.crm-app #user-nav {
    display:none
}
.crm-app .sidebar .card {
    background:transparent;
    box-shadow:none;
    border:0
}
.crm-app .sidebar .nav-sidebar {
    padding:0
}
.crm-app .sidebar .nav-link {
    font-size:12px;
    min-height:44px;
    border-radius:10px;
    padding:11px 14px;
    gap:0;
    color:#c4d5cc;
    transition:background .15s,color .15s
}
.crm-app .sidebar .nav-link>i {
    font-size:17px;
    margin-inline-end:12px;
    opacity:.75
}
.crm-app .sidebar .nav-link:hover {
    background:#ffffff09;
    color:#fff
}
.crm-app .sidebar .nav-link.active,.crm-app .sidebar .nav-link[aria-current=page] {
    background:#235045;
    color:#c1f2d7;
    box-shadow:inset -3px 0 #8fd8b1
}
.crm-app .sidebar .nav-link.active>i {
    opacity:1
}
.crm-app .sidebar .nav-item-header {
    color:#7c9c8e;
    font-size:10px;
    padding:18px 14px 7px
}
.crm-app .sidebar .nav-group-sub {
    background:#0b24203d;
    border-radius:10px;
    margin:4px 7px;
    padding:5px 0
}
.crm-app .sidebar .nav-group-sub .nav-link {
    font-size:11px;
    padding-inline-start:24px
}
.crm-app .sidebar .nav-group-sub .nav-group-sub .nav-link {
    padding-inline-start:30px
}
.crm-context {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:69px;
    color:#7a8c81;
    font-size:11px;
    border-bottom:1px solid var(--crm-border);
    margin-bottom:26px
}
.crm-context-path {
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0
}
.crm-context-path a {
    color:#74897b;
    white-space:nowrap
}
.crm-context-path [data-crm-page-title] {
    color:#355849;
    font-weight:700;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap
}
.crm-context time {
    white-space:nowrap;
    font-variant-numeric:tabular-nums
}
.crm-bottom-nav {
    display:none
}
.crm-app .crm-hero,.crm-app .ops-heading,.crm-app .directory-heading,.crm-app .intake-heading {
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    border-radius:0!important;
    padding:0 0 24px!important;
    margin:0!important;
    min-height:0!important;
    align-items:center;
    gap:22px
}
.crm-app .crm-hero:before {
    display:none
}
.crm-app .crm-hero__eyebrow,.crm-app .ops-kicker,.crm-app .directory-kicker,.crm-app .intake-eyebrow {
    color:#638170;
    font-size:11px;
    letter-spacing:0;
    display:block;
    margin-bottom:8px
}
.crm-app .crm-hero__title,.crm-app .ops-heading h1,.crm-app .directory-heading h1,.crm-app .intake-heading h1 {
    font-family:inherit;
    font-size:27px;
    line-height:1.6;
    letter-spacing:-.6px;
    font-weight:800;
    color:#193d30
}
.crm-app .crm-hero__subtitle,.crm-app .directory-heading p,.crm-app .intake-heading p {
    color:var(--crm-muted);
    font-size:12px;
    line-height:1.9;
    max-width:760px;
    margin:6px 0 0
}
.crm-app .crm-hero__icon {
    width:52px;
    height:52px;
    background:#e8f0eb;
    color:#376a51;
    font-size:24px;
    border-radius:15px;
    flex:none
}
.crm-app .card,.crm-app .ops-card,.crm-app .intake-card,.crm-app .directory-surface,.crm-app .project-workspace-card,.crm-app .lead-card,.crm-app .sales-performance-card {
    border:1px solid var(--crm-border);
    border-radius:var(--crm-radius);
    box-shadow:var(--crm-shadow);
    background:#fff
}
.crm-app .card-header {
    background:transparent;
    border-bottom:1px solid #e8eee9;
    padding:18px 22px
}
.crm-app .card-header .card-title {
    font-weight:700;
    font-size:15px
}
.crm-app .card-body {
    padding:22px
}
.crm-app .form-control,.crm-app .intake-field input,.crm-app .intake-field select,.crm-app .directory-field input,.crm-app .directory-field select,.crm-app .crm-ops input,.crm-app .crm-ops select {
    font-family:inherit;
    border:1px solid var(--crm-border-strong);
    border-radius:10px;
    box-shadow:none;
    min-height:45px;
    background:#fff;
    color:#244d3b;
    font-size:13px
}
.crm-app .form-control:focus,.crm-app input:focus,.crm-app select:focus,.crm-app textarea:focus {
    border-color:#60a88b;
    outline:0;
    box-shadow:0 0 0 3px #16896512
}
.crm-app input[type=checkbox] {
    accent-color:#087f69;
    min-height:18px;
    cursor:pointer
}
.crm-app textarea.form-control {
    line-height:2
}
.crm-app ::placeholder,.crm-login ::placeholder {
    color:#98a99f;
    opacity:1
}
.crm-app .btn {
    border-radius:9px;
    min-height:41px;
    font-size:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    gap:6px
}
.crm-app .btn-primary,.crm-app .intake-primary,.crm-app .directory-primary,.crm-app .projects-client-search__button {
    background:#087f69!important;
    border-color:#087f69!important;
    color:#fff!important;
    box-shadow:none!important;
    border-radius:10px
}
.crm-app .btn-primary:hover,.crm-app .intake-primary:hover,.crm-app .directory-primary:hover {
    background:#066450!important;
    border-color:#066450!important
}
.crm-app .btn-light {
    background:#f8faf8;
    border-color:#d9e5dc;
    color:#3d5b49
}
.crm-app .table {
    font-size:12px;
    color:#284739
}
.crm-app .table thead th {
    font-size:11px;
    color:#728878;
    background:#f6f9f7;
    border-top:0;
    border-bottom:1px solid #dfe9e2;
    padding:15px;
    white-space:nowrap
}
.crm-app .table td {
    vertical-align:middle;
    padding:15px;
    border-color:#edf2ee
}
.crm-app .table tbody tr:hover {
    background:#fbfdfb
}
.crm-app .table-responsive {
    border-radius:12px;
    overflow:auto;
    overscroll-behavior-x:contain
}
.crm-app .dataTables_filter input {
    border-radius:9px!important;
    min-height:42px;
    max-width:100%
}
.crm-app .dataTables_paginate .paginate_button {
    border-radius:8px
}
.crm-app .dataTables_paginate .paginate_button.current {
    background:#087f69!important;
    border-color:#087f69!important
}
.crm-app .page-link {
    color:#087f69
}
.crm-app .page-item.active .page-link {
    background:#087f69;
    border-color:#087f69
}
.crm-app .myAlert-top,.crm-app .myAlert-Error {
    position:fixed!important;
    top:88px!important;
    bottom:auto!important;
    right:50%!important;
    left:auto!important;
    transform:translateX(50%)!important;
    width:max-content;
    min-width:260px;
    max-width:min(600px,calc(100vw - 32px))!important;
    padding:16px 22px!important;
    border-radius:12px!important;
    box-shadow:0 10px 30px #1a3f3025;
    z-index:1200;
    text-align:right;
    overflow-wrap:anywhere;
    line-height:1.9;
    font-size:12px
}
.crm-app .myAlert-top {
    background:#e9f7ee!important;
    border:1px solid #b8dbc5!important;
    color:#21633d!important
}
.crm-app .myAlert-Error {
    background:#fff1ee!important;
    border:1px solid #edc7c1!important;
    color:#9f4239!important
}
.crm-app .crm-async-error {
    max-width:calc(100vw - 32px);
    border-radius:12px
}
.crm-app .crm-ops {
    --ops-green:#087f69;
    --ops-ink:#193d30;
    --ops-line:#dfe7e4;
    font-size:13px;
    margin:0 0 24px
}
.crm-app .ops-card {
    padding:24px
}
.crm-app .ops-card h2 {
    font-size:17px
}
.crm-app .ops-card p {
    font-size:12px
}
.crm-app .ops-fields {
    gap:16px
}
.crm-app .ops-table {
    font-size:12px
}
.crm-app .ops-tabs {
    gap:9px;
    margin:0 0 24px
}
.crm-app .ops-tabs a {
    border-radius:9px;
    background:#fff;
    padding:9px 16px;
    font-size:12px
}
.crm-app .ops-scroll {
    max-height:520px;
    scrollbar-width:thin;
    scrollbar-color:#b4c9bd #f7faf8
}
.crm-app .ops-scroll th {
    position:sticky;
    top:0;
    z-index:1
}
.crm-app .ops-grid>* {
    min-width:0
}
.crm-app #rules .ops-scroll:first-of-type {
    max-height:320px
}
.crm-app .projects-today-shortcut {
    box-shadow:none;
    background:#edf6ef;
    border:1px solid #d6e6d8;
    color:#255b3c;
    border-radius:14px;
    margin-bottom:22px
}
.crm-app .projects-today-shortcut__icon {
    background:#d9eddf;
    color:#287b53
}
.crm-app .projects-today-shortcut__action {
    background:#fff;
    color:#287b53;
    box-shadow:none
}
.crm-app .projects-client-search {
    background:#fff;
    border:1px solid var(--crm-border);
    border-radius:14px;
    box-shadow:none
}
.crm-app .project-workspace-card {
    overflow:hidden
}
.crm-app .project-workspace-card__header {
    background:#fff;
    border-bottom:1px solid #ecf1ed
}
.crm-app .project-list-tile {
    border:1px solid #e4ece7;
    box-shadow:none!important;
    background:#fff
}
.crm-app .project-list-tile:hover {
    border-color:#8fb7a1;
    background:#f5faf6;
    transform:translateY(-2px)
}
.crm-app .project-list-tile__copy small {
    color:#84958a;
    font-size:10px
}
.crm-app .project-list-tile__icon {
    border-radius:10px
}
.crm-app .lead-card__header {
    background:#fbfdfb
}
.crm-app .lead-card__action {
    background:#f2f7f3!important;
    color:#276646!important;
    border:1px solid #d2e2d7!important
}
.crm-app .lead-card__avatar {
    background:#e7f2eb;
    color:#357b53
}
.crm-app .lead-card__name {
    color:#224d35
}
.crm-app .crm-client-tabs {
    border:0;
    box-shadow:none;
    background:#e7eeea;
    padding:5px;
    border-radius:13px;
    gap:4px
}
.crm-app #clientTabs .nav-link {
    border:0!important;
    border-radius:10px;
    color:#597062;
    font-size:12px;
    padding:12px 16px
}
.crm-app #clientTabs .nav-link.active {
    background:#fff;
    color:#08674f;
    box-shadow:0 2px 7px #1b493510
}
.crm-app .action-step,.crm-app .smart-action-assistant,.crm-app .next-action-step {
    background:#fff;
    border:1px solid #e0e8e2;
    border-radius:13px;
    box-shadow:none
}
.crm-app .smart-action-template-grid button {
    border-radius:10px;
    border-color:#dce7df;
    font-size:12px
}
.crm-app .contact-choice--phone.is-selected,.crm-app .contact-choice--phone[aria-checked=true] {
    background:#edf7f0;
    border-color:#398967;
    color:#146b48
}
.crm-app .action-save-footer {
    box-shadow:0 -4px 16px #1b493508;
    background:#fff;
    border-color:#dfe9e2
}
.crm-app .action-save-button {
    background:#087f69;
    border-color:#087f69;
    box-shadow:none
}
.crm-app .intake-page,.crm-app .directory-page {
    font-family:inherit;
    color:var(--crm-text);
    padding:0 0 28px;
    max-width:none
}
.crm-app .intake-summary {
    border-radius:16px;
    box-shadow:none;
    border:1px solid #d7e5dc;
    top:20px
}
.crm-app .intake-summary-top {
    background:#f2f7f3
}
.crm-app .intake-section-head {
    margin-bottom:22px
}
.crm-app .intake-section-head h2 {
    font-size:17px
}
.crm-app .intake-step {
    background:#eaf4ee;
    color:#367451;
    border-radius:10px
}
.crm-app .intake-roster {
    max-height:440px;
    overflow:auto
}
.crm-app .directory-hero {
    background:transparent!important;
    border:0!important;
    padding:0 0 25px!important;
    box-shadow:none!important
}
.crm-app .directory-hero h1 {
    color:#193d30;
    font-size:27px;
    letter-spacing:-.6px
}
.crm-app .directory-hero p {
    color:#647970
}
.crm-app .directory-stats {
    gap:12px
}
.crm-app .directory-stat {
    background:#fff;
    border:1px solid #dfe7e4;
    box-shadow:none;
    border-radius:12px
}
.crm-app .directory-surface {
    padding:24px
}
.crm-app .directory-results {
    padding:0;
    overflow:hidden
}
.crm-app .directory-table {
    font-size:12px
}
.crm-app .directory-results-heading,.crm-app .directory-results-toolbar,.crm-app .directory-selection {
    padding:18px 24px
}
.crm-app .directory-status,.crm-app .directory-menu-tag {
    border-radius:7px
}
.crm-app .directory-primary {
    border-radius:10px
}
.crm-app .directory-selection {
    background:#edf7f0;
    border-color:#d9e9dc
}
.crm-app .directory-client-name {
    color:#21643e
}
.crm-app .directory-applied {
    font-size:11px
}
.crm-app .directory-field label {
    font-size:12px
}
.crm-app .directory-bulk-card {
    border-radius:12px
}
.crm-app .directory-filters {
    margin-bottom:22px
}
.crm-app .directory-filter-actions {
    gap:10px
}
.crm-disclosure {
    border:1px solid #dce7df;
    background:#fbfdfb;
    border-radius:12px;
    margin:20px 0 0;
    padding:0 18px
}
.crm-disclosure>summary {
    cursor:pointer;
    font-weight:700;
    font-size:14px;
    padding:16px 0;
    color:#176c4c;
    min-height:52px
}
.crm-disclosure>summary span {
    font-size:11px;
    font-weight:400;
    color:#718879;
    margin-inline-start:8px
}
.crm-disclosure[open]>summary {
    border-bottom:1px solid #e0e9e2;
    margin-bottom:18px
}
.crm-disclosure .ops-fields {
    margin-bottom:20px
}
.crm-sales-quick-heading {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px
}
.crm-sales-quick-heading>i {
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#edf6ef;
    color:#33835a;
    width:38px;
    height:38px;
    flex:none
}
.crm-app .crm-sales-selection {
    font-size:11px;
    color:#708679;
    display:flex;
    gap:7px;
    align-items:center
}
.crm-app .crm-sales-selection span {
    display:inline-flex
}
.crm-home-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin:24px 0
}
.crm-home-card {
    display:flex;
    flex-direction:column;
    gap:13px;
    background:#fff;
    border:1px solid var(--crm-border);
    border-radius:16px;
    padding:25px;
    color:#284c38;
    min-height:210px;
    transition:transform .15s,border-color .15s
}
.crm-home-card:hover {
    transform:translateY(-3px);
    border-color:#8cb49e;
    color:#284c38
}
.crm-home-card>i {
    background:#eaf4ed;
    color:#337c52;
    width:43px;
    height:43px;
    display:grid;
    place-items:center;
    border-radius:12px;
    font-size:22px
}
.crm-home-card h2 {
    font-size:17px;
    font-weight:700;
    margin:0
}
.crm-home-card p {
    color:#7b8d81;
    font-size:12px;
    line-height:1.9;
    margin:0
}
.crm-home-card>span {
    font-size:12px;
    font-weight:700;
    color:#087f69;
    margin-top:auto
}
.crm-home-welcome {
    display:grid;
    grid-template-columns:1.3fr 1fr;
    gap:24px;
    align-items:center;
    border:1px solid #d3e5d8;
    background:#edf6ef;
    border-radius:18px;
    padding:30px
}
.crm-home-welcome h2 {
    font-size:22px;
    line-height:1.7;
    font-weight:800;
    max-width:470px
}
.crm-home-welcome p {
    color:#65816e;
    font-size:13px;
    line-height:2;
    max-width:580px
}
.crm-home-flow {
    display:flex;
    align-items:center;
    gap:9px;
    justify-content:center;
    color:#829c87
}
.crm-home-flow>span {
    background:#fff;
    border:1px solid #dce9df;
    border-radius:12px;
    min-width:90px;
    padding:18px 12px;
    text-align:center;
    font-size:12px;
    color:#3c6a4b
}
.crm-home-flow>span i {
    display:block;
    font-size:23px;
    margin-bottom:10px;
    color:#4d8a62
}
.crm-home-links {
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    background:#fff;
    border:1px solid #dfe7e4;
    border-radius:14px;
    padding:17px 22px;
    font-size:12px
}
.crm-home-links strong {
    margin-inline-end:auto
}
.crm-home-links a {
    color:#347653;
    padding:5px
}
.crm-login {
    margin:0;
    min-height:100vh
}
.crm-login-layout {
    display:grid;
    grid-template-columns:1.05fr 1fr;
    min-height:100vh
}
.crm-login-story {
    background:#122e2b;
    color:#e1eee6;
    padding:48px clamp(30px,5vw,90px);
    display:flex;
    flex-direction:column;
    position:relative;
    overflow:hidden
}
.crm-login-story .crm-wordmark {
    color:#fff
}
.crm-login-story .crm-wordmark>i {
    background:#ffffff12;
    color:#a8e4c1
}
.crm-login-story-copy {
    margin:auto 0;
    padding:65px 0
}
.crm-login-story-copy>span {
    font-size:12px;
    color:#a0bdac;
    display:block;
    margin-bottom:20px
}
.crm-login-story h1 {
    font-size:clamp(30px,3.4vw,50px);
    line-height:1.8;
    font-weight:800;
    max-width:560px;
    letter-spacing:-1px;
    margin:0 0 20px
}
.crm-login-story h1 em {
    color:#abdfbb;
    font-style:normal
}
.crm-login-story p {
    font-size:14px;
    line-height:2.1;
    color:#a7c0b0;
    max-width:430px
}
.crm-login-flow {
    display:flex;
    gap:12px;
    margin-top:40px;
    flex-wrap:wrap
}
.crm-login-flow span {
    display:flex;
    align-items:center;
    gap:9px;
    font-size:12px;
    border:1px solid #ffffff18;
    border-radius:10px;
    padding:10px 14px;
    color:#bbd5c5
}
.crm-login-story footer {
    font-size:11px;
    color:#789987
}
.crm-login-panel {
    display:flex;
    align-items:center;
    justify-content:center;
    padding:50px 30px;
    background:#fafcfb
}
.crm-login .login-form {
    width:100%;
    max-width:380px
}
.crm-login-label {
    font-size:11px;
    color:#63816e;
    margin-bottom:12px;
    display:block
}
.crm-login h2 {
    font-size:29px;
    font-weight:800;
    letter-spacing:-.6px;
    margin:0 0 10px;
    color:#193d30
}
.crm-login-form-intro {
    font-size:12px;
    color:#7e9083;
    margin:0 0 35px
}
.crm-login label {
    font-size:12px;
    font-weight:700;
    margin-bottom:9px
}
.crm-login .form-control {
    min-height:50px;
    border-radius:10px;
    border:1px solid #d2dfd5;
    background:#fff;
    color:#254f36;
    font-family:inherit;
    font-size:14px;
    padding:12px 14px;
    box-shadow:none
}
.crm-login .form-control:focus {
    border-color:#71a88a;
    box-shadow:0 0 0 3px #087f6910
}
.crm-login .form-group {
    margin-bottom:21px
}
.crm-password-field {
    position:relative
}
.crm-password-field input {
    padding-inline-end:64px!important
}
.crm-password-toggle {
    position:absolute;
    inset-inline-end:6px;
    top:6px;
    height:38px;
    min-width:48px;
    border:0;
    border-radius:8px;
    background:#f1f6f2;
    color:#4b775a;
    font-size:11px;
    cursor:pointer
}
.crm-login .btn-primary {
    min-height:50px;
    background:#087f69;
    border-color:#087f69;
    border-radius:10px;
    font-family:inherit;
    font-size:13px;
    font-weight:700;
    box-shadow:0 4px 10px #087f6912
}
.crm-login .btn-primary:hover {
    background:#066450;
    border-color:#066450
}
.crm-login .form-check-label {
    font-weight:400;
    font-size:12px;
    display:flex;
    align-items:center;
    gap:8px
}
.crm-login .form-check {
    padding:0
}
.crm-login .form-check input {
    accent-color:#087f69
}
.crm-login-hint {
    font-size:11px;
    line-height:1.9;
    color:#829488;
    border-top:1px solid #e3ebe5;
    padding-top:22px;
    margin-top:27px
}
.crm-login .alert {
    border:1px solid #e6c1ba;
    border-radius:10px;
    background:#fff1ed!important;
    color:#9a473d!important;
    font-size:12px;
    line-height:1.9;
    padding:13px 16px
}
.crm-caps-warning {
    font-size:11px;
    color:#9b741e;
    display:block;
    margin-top:8px
}
@media(min-width:768px) {
    .crm-app.sidebar-xs .sidebar-main,.crm-app.sidebar-xs .navbar-header {
        width:64px;
        min-width:64px
    }
    .crm-app.sidebar-xs .sidebar-user-material {
        display:none
    }
    .crm-app.sidebar-xs .sidebar-content {
        padding-inline:5px
    }
    .crm-app.sidebar-xs .sidebar-main .nav-sidebar>.nav-item>.nav-link {
        padding-inline:18px
    }
    .crm-app.sidebar-xs .navbar-header {
        padding-inline:13px
    }
    .crm-app.sidebar-xs .navbar-brand-md {
        display:none
    }
    .crm-app.sidebar-xs .navbar-brand-xs .crm-wordmark>i {
        width:37px
    }
    .crm-app.sidebar-xs .sidebar .nav-group-sub {
        margin:0
    }
}
@media(max-width:1100px) {
    .crm-app .content {
        padding-inline:22px!important
    }
    .crm-home-grid {
        gap:12px
    }
    .crm-home-card {
        padding:20px
    }
    .crm-home-welcome {
        padding:24px
    }
    .crm-home-flow>span {
        min-width:68px;
        padding:16px 8px
    }
    .crm-home-flow {
        gap:6px
    }
}
@media(max-width:767.98px) {
    .crm-app .navbar-static {
        height:auto;
        min-height:64px;
        padding:10px 16px;
        position:relative
    }
    .crm-app .navbar-brand .crm-wordmark strong {
        font-size:17px
    }
    .crm-app .navbar-brand .crm-wordmark small {
        font-size:9px
    }
    .crm-app .navbar-brand .crm-wordmark>i {
        width:32px;
        height:32px;
        border-radius:10px;
        font-size:17px
    }
    .crm-app .navbar-toggler {
        min-width:40px;
        min-height:40px;
        padding:8px;
        border-radius:10px;
        color:#345441
    }
    .crm-app .navbar-toggler:hover {
        background:#eff5f0
    }
    .crm-app .navbar-collapse {
        padding:10px 0 0
    }
    .crm-shell-caption {
        display:none
    }
    .crm-app .content {
        padding:0 16px 110px!important;
        min-height:calc(100vh - 64px)!important
    }
    .crm-app .crm-page {
        padding-bottom:0
    }
    .crm-context {
        min-height:50px;
        margin-bottom:22px;
        font-size:10px;
        gap:10px
    }
    .crm-context time {
        font-size:9px
    }
    .crm-context-path {
        gap:7px
    }
    .crm-context-path>a {
        display:none
    }
    .crm-context-path>i {
        display:none
    }
    .crm-app .sidebar-main {
        position:fixed;
        top:0!important;
        bottom:0!important;
        height:100dvh!important;
        z-index:1100;
        width:280px;
        max-width:88vw;
        overflow:auto;
        box-shadow:-10px 0 50px #0d302d35
    }
    .crm-app .sidebar-main .sidebar-mobile-toggler {
        padding:18px 12px;
        color:#abc8b8;
        background:#0f2725
    }
    .crm-app .sidebar-content {
        padding:16px 12px 90px
    }
    .crm-app.sidebar-mobile-main .page-content:after {
        content:'';
        position:fixed;
        inset:0;
        background:#102e2a55;
        z-index:1050
    }
    .crm-bottom-nav {
        position:fixed;
        bottom:0;
        inset-inline:0;
        z-index:1030;
        display:flex;
        justify-content:space-around;
        align-items:stretch;
        gap:3px;
        padding:8px 8px calc(8px + env(safe-area-inset-bottom));
        background:#fffffff5;
        backdrop-filter:blur(12px);
        border-top:1px solid #dce7df;
        box-shadow:0 -3px 15px #143b2a05;
        min-height:68px
    }
    .crm-bottom-nav a,.crm-bottom-nav button {
        display:flex;
        flex:1;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:5px;
        border:0;
        border-radius:10px;
        background:transparent;
        color:#829487;
        min-width:0;
        min-height:47px;
        font:inherit;
        font-size:9px;
        line-height:1.5;
        text-decoration:none;
        padding:4px
    }
    .crm-bottom-nav i {
        font-size:19px
    }
    .crm-bottom-nav [aria-current=page] {
        background:#eaf5ee;
        color:#087255;
        font-weight:700
    }
    .crm-app .crm-hero,.crm-app .ops-heading,.crm-app .directory-hero,.crm-app .intake-heading {
        padding-bottom:22px!important;
        gap:12px
    }
    .crm-app .crm-hero__title,.crm-app .ops-heading h1,.crm-app .directory-hero h1,.crm-app .intake-heading h1 {
        font-size:23px;
        line-height:1.6;
        margin-bottom:6px
    }
    .crm-app .crm-hero__subtitle,.crm-app .directory-hero p,.crm-app .intake-heading p {
        font-size:11px
    }
    .crm-app .crm-hero__icon {
        display:none
    }
    .crm-app .ops-heading>a {
        margin-top:12px
    }
    .crm-app .ops-card,.crm-app .intake-card,.crm-app .directory-surface {
        padding:18px;
        border-radius:14px
    }
    .crm-app .directory-results {
        padding:0
    }
    .crm-app .directory-results-heading,.crm-app .directory-results-toolbar,.crm-app .directory-selection {
        padding:16px
    }
    .crm-app .directory-selection {
        gap:12px
    }
    .crm-app .card-body {
        padding:17px
    }
    .crm-app .card-header {
        padding:16px 17px
    }
    .crm-app .crm-client-tabs {
        border-radius:12px
    }
    .crm-app #clientTabs .nav-link {
        font-size:10px;
        padding:11px 5px
    }
    .crm-app .myAlert-top,.crm-app .myAlert-Error {
        top:76px!important;
        font-size:11px;
        min-width:0;
        width:calc(100vw - 32px);
        max-width:calc(100vw - 32px)!important;
        padding:14px 17px!important
    }
    .crm-app .ops-actions {
        gap:8px
    }
    .crm-app .ops-actions>.ops-button {
        flex:1 1 135px;
        font-size:11px;
        padding:10px 9px;
        min-width:0
    }
    .crm-app input,.crm-app select,.crm-app textarea,.crm-login input {
        font-size:16px!important
    }
    .crm-app .ops-table {
        min-width:490px
    }
    .crm-app .ops-fields .ops-button {
        width:100%;
        margin-top:8px
    }
    .crm-app .intake-summary {
        position:static
    }
    .crm-app .intake-roster {
        max-height:420px
    }
    .crm-home-grid {
        grid-template-columns:1fr;
        gap:13px;
        margin:18px 0
    }
    .crm-home-card {
        min-height:0;
        display:grid;
        grid-template-columns:42px 1fr;
        gap:7px 14px;
        padding:20px
    }
    .crm-home-card>i {
        grid-row:1/4
    }
    .crm-home-card h2 {
        font-size:15px
    }
    .crm-home-card>p,.crm-home-card>span {
        grid-column:2;
        font-size:11px
    }
    .crm-home-welcome {
        grid-template-columns:1fr;
        gap:16px;
        padding:23px
    }
    .crm-home-welcome h2 {
        font-size:21px
    }
    .crm-home-welcome p {
        font-size:12px
    }
    .crm-home-flow {
        justify-content:flex-start
    }
    .crm-home-flow>span {
        flex:1;
        padding:13px 6px;
        font-size:11px;
        min-width:0
    }
    .crm-home-links {
        gap:10px;
        padding:15px 18px;
        font-size:11px
    }
    .crm-home-links strong {
        width:100%
    }
    .crm-login-layout {
        grid-template-columns:1fr
    }
    .crm-login-story {
        padding:25px 24px;
        min-height:0
    }
    .crm-login-story-copy {
        padding:26px 0 0
    }
    .crm-login-story-copy>span,.crm-login-story-copy>p,.crm-login-flow,.crm-login-story footer {
        display:none
    }
    .crm-login-story h1 {
        font-size:24px;
        line-height:1.7;
        letter-spacing:-.3px;
        max-width:320px;
        margin:0
    }
    .crm-login-panel {
        padding:34px 24px 45px;
        align-items:flex-start
    }
    .crm-login h2 {
        font-size:24px
    }
    .crm-login-form-intro {
        margin-bottom:25px
    }
    .crm-login-hint {
        font-size:10px
    }
    .crm-disclosure>summary span {
        display:block;
        margin:4px 0 0;
        font-size:10px
    }
    .crm-app .ops-scroll {
        max-height:430px
    }
}
@media(prefers-reduced-motion:reduce) {
    .crm-app *,.crm-login * {
        scroll-behavior:auto!important;
        transition:none!important;
        animation:none!important
    }
}
@media print {
    .crm-context,.crm-bottom-nav,.crm-skip,.crm-app .sidebar,.crm-app .navbar,.crm-app .myAlert-top,.crm-app .myAlert-Error {
        display:none!important
    }
    .crm-app .content {
        padding:0!important
    }
    .crm-app {
        background:#fff!important
    }
    .crm-app .ops-scroll {
        max-height:none;
        overflow:visible
    }
    .crm-app .crm-hero {
        padding:0 0 15px!important
    }
    .crm-home-grid {
        display:block
    }
    .crm-home-card {
        break-inside:avoid
    }
    .crm-app .ops-table th {
        position:static
    }
}
.crm-app .directory,.crm-app .intake {
    margin:0 auto 28px;
    --dir-green:#087f69;
    --dir-line:#dfe7e4;
    --ink:#19342f;
    --green:#087f69;
    --line:#dfe7e4
}
.crm-app .directory-eyebrow {
    color:#638170
}
.crm-app .directory-hero:after {
    display:none
}
.crm-app .directory-add {
    background:#087f69;
    color:#fff!important;
    box-shadow:none
}
.crm-app .block-management {
    margin-top:0
}
.crm-app .block-management .block-intro {
    background:none;
    color:#193d30;
    padding:0 0 24px;
    border-radius:0
}
.crm-app .block-management .block-intro p {
    color:#647970
}
.crm-app .block-count-badge {
    border-color:#d1e0d6;
    color:#52765e;
    background:#edf5ef
}
.crm-app .block-management .block-toolbar {
    border-color:#dce8df;
    background:#f1f7f3
}
.crm-app .followup-state-completed {
    border-color:#c8dfcd;
    background:#eff8f1
}
.crm-app .followup-state-completed .current-followup-panel__title>strong {
    color:#357647;
    background:#ddf0e2
}
.crm-profile-nav {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin:0 0 20px
}
.crm-profile-nav a {
    padding:9px 15px;
    border:1px solid #dce7df;
    background:#fff;
    border-radius:9px;
    font-size:12px;
    color:#48765a
}
.crm-app #client-profile,.crm-app #client-attribution,.crm-app #client-assignments {
    scroll-margin-top:18px
}
.crm-app .directory-toast {
    bottom:90px
}
.crm-app .crm-disclosure .ops-fields>div {
    min-width:0
}
@media print {
    .crm-profile-nav {
        display:none!important
    }
}
.crm-app .intake {
    font-family:inherit
}
.crm-app .intake-hero {
    background:transparent;
    border:0;
    box-shadow:none;
    padding:0 0 24px;
    border-radius:0;
    margin:0;
    color:#193d30;
    gap:18px
}
.crm-app .intake-hero:after {
    display:none
}
.crm-app .intake-hero h1 {
    font-size:27px;
    letter-spacing:-.6px
}
.crm-app .intake-hero p {
    color:#647970;
    font-size:12px
}
.crm-app .intake-hero .intake-eyebrow {
    color:#638170
}
.crm-app .intake-hero .intake-hero-icon {
    background:#e8f0eb;
    color:#376a51
}
.crm-app .intake-hero .intake-secondary {
    background:#fff;
    color:#376a51;
    border-color:#d4e2d8
}
.crm-app .crm-profile-nav a:focus {
    background:#edf6ef
}
@media(max-width:767.98px) {
    .crm-app .intake-hero {
        display:block
    }
    .crm-app .intake-hero h1 {
        font-size:23px
    }
    .crm-app .intake-hero-icon {
        display:none
    }
    .crm-app .intake-hero p {
        font-size:11px
    }
    .crm-app .intake-hero>a {
        margin-top:14px
    }
    .crm-app .directory-eyebrow {
        font-size:10px
    }
    .crm-app .directory-hero {
        gap:14px
    }
    .crm-app .directory-add {
        font-size:11px;
        padding:11px 14px
    }
    .crm-app .directory-table-scroll {
        max-width:100%;
        overflow-x:auto
    }
    .crm-profile-nav a {
        font-size:10px;
        padding:8px 11px
    }
}
.crm-app .crm-hero {
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap
}
.crm-app .crm-hero>div {
    min-width:0;
    flex:1
}
.crm-app .crm-hero>div>.crm-hero__subtitle {
    margin-bottom:0
}
.crm-app .sidebar .nav-item-open>.nav-link:not([aria-current=page]) {
    background:#ffffff08
}
.crm-app .sidebar .nav-item>.nav-link[aria-current=page] {
    background:#235045!important;
    color:#c1f2d7!important
}
.crm-app .intake,.crm-app .directory {
    font-family:CrmArabic,Tahoma,'Segoe UI',sans-serif
}
.crm-app .crm-hero h1 {
    font-weight:700
}
.crm-app .crm-home-welcome h2 {
    font-weight:700
}
/* Keep sidebar content inside its own panel when crossing the mobile breakpoint. */
.crm-app .sidebar-main .sidebar-content {
    position:sticky!important;
    top:0;
    bottom:auto;
    right:auto!important;
    left:auto!important;
    width:100%;
    max-height:100vh;
    overflow-y:auto;
    overflow-x:hidden;
    transition:none
}
.crm-app .projects-today-shortcut__copy strong {
    color:#245c3d
}
.crm-app .projects-today-shortcut__copy small {
    color:#5c806a
}
.crm-app .projects-today-shortcut__copy>span {
    color:#52765f
}
@media(max-width:767.98px) {
    .crm-app .sidebar-main .sidebar-content {
        position:static!important;
        max-height:none;
        overflow:visible
    }
    .crm-app:not(.sidebar-mobile-main) .sidebar-main {
        display:none!important;
        visibility:hidden;
        pointer-events:none;
        right:-300px!important
    }
    .crm-app.sidebar-mobile-main .sidebar-main {
        display:block!important;
        visibility:visible;
        pointer-events:auto;
        right:0!important
    }
    .crm-app input[type=submit],.crm-app input[type=button] {
        font-size:12px!important
    }
    .crm-app .projects-client-search__form {
        grid-template-columns:minmax(0,1fr) 64px
    }
    .crm-app .projects-client-search__button {
        font-size:12px!important;
        padding:0 9px;
        min-width:0
    }
    .crm-app .projects-client-search__button:after {
        display:none
    }
    .crm-app .projects-today-shortcut__action {
        color:#287b53;
        background:#fff
    }
    .crm-app .directory-hero {
        align-items:flex-start
    }
    .crm-app .sidebar-user-material h6 {
        font-size:12px
    }
}

/* Shared visual refinement: preserve existing controls, routes and postbacks. */
.crm-app .navbar-header,.crm-app .sidebar-dark{background:#142d43}
.crm-app .sidebar-user-material-body{background:#ffffff05!important;border-color:#ffffff12}
.crm-app .sidebar .nav-link{border-radius:10px;margin-block:3px;transition:background-color .12s}
.crm-app .sidebar .nav-link.active{background:#1c7c6c!important;color:#fff!important;box-shadow:inset -3px 0 #8ee3c9}
.crm-app .sidebar .nav-link:hover{background:#ffffff0c}
.crm-app .navbar-static{border-bottom-color:#e4ebf2}
.crm-app .crm-context{color:#6a7e91}
.crm-app .crm-hero{border-inline-start:4px solid #168471;padding-inline-start:18px}
.crm-app .directory-hero{background:linear-gradient(115deg,#19344e,#116c61);border-radius:18px}
.crm-app .directory-add{background:#fff;color:#155e53!important;box-shadow:none}
.crm-app .directory-metric,.crm-app .directory-surface,.crm-app .work-card,.crm-app .command-card{border-color:#e0e8ef;box-shadow:0 2px 6px #172d4303}
.crm-app .directory-metric strong,.crm-app .command-kpi>strong,.crm-app .work-report-totals{font-variant-numeric:tabular-nums}
.crm-app .directory-metric.is-total{background:#eef7f6;border-color:#cfe5df}
.crm-app .directory-metric-icon{background:#f0f5fa;border-color:#e1eaf3;color:#54718b}
.crm-app .crm-command>.command-header{background:linear-gradient(115deg,#19344e,#116c61);color:#fff;padding:26px 28px;margin:12px 0 26px;border-radius:18px}
.crm-app .command-header .command-eyebrow{color:#b5e7d8}
.crm-app .command-header p{color:#d0e0e9}
.crm-app .command-header .command-button{background:#fff;color:#175f53;border-color:#fff}
.crm-app .command-header .command-button.is-light{background:#ffffff10;color:#fff;border-color:#ffffff35}
.crm-app .crm-productivity>.work-heading{background:linear-gradient(115deg,#19344e,#116c61);padding:25px 28px;border-radius:18px;color:#fff}
.crm-app .crm-productivity>.work-heading p{color:#d0e0e9}
.crm-app .crm-productivity>.work-heading .work-kicker{color:#b5e7d8}
.crm-app .crm-productivity>.work-heading .work-button{background:#fff;color:#175f53;border-color:#fff;white-space:nowrap}
.crm-app .work-heading h1{line-height:1.6}
.crm-app .work-card{border-radius:16px}
.crm-app .work-table-scroll,.crm-app .directory-table-scroll{max-height:66vh;scrollbar-width:thin;scrollbar-color:#b9cbd9 transparent;overscroll-behavior:contain}
.crm-app .work-table th,.crm-app .directory-table-scroll thead th{position:sticky;top:0;z-index:2;background:#f1f5f9;color:#536b82;border-bottom:1px solid #dbe5ed}
.crm-app .work-table tbody tr:hover td,.crm-app .directory-client-row:hover td,.crm-app .command-table tbody tr:hover td{background:#f5faf9}
.crm-app .work-table tbody tr:focus-within td{background:#eff8f5}
.crm-app .work-table td{vertical-align:middle;padding-block:16px}
.crm-app .work-quick a{border-radius:22px;min-height:40px;display:inline-flex;align-items:center}
.crm-app .work-quick a.is-active{background:#117965;border-color:#117965;color:#fff}
.crm-app .work-state{border-radius:20px;font-weight:600}
.crm-app .work-meta{color:#62778b}
.crm-app .work-report-totals>span{background:#edf7f4;border:1px solid #daece5;font-size:18px}
.crm-app .work-column{background:#eaf0f6}
.crm-app .work-task{border-color:#dce6ed;border-radius:12px}
.crm-app .work-filters label,.crm-app .crm-saved-views strong{color:#415e74}
.crm-app .crm-saved-views{border-color:#dfe7ef;border-radius:14px}
.crm-app .crm-select-more{display:block;width:100%;min-height:42px;border:0;border-top:1px solid #e1e9ee;background:#eff7f4;color:#116b58;font:inherit;cursor:pointer}
.crm-app .crm-select-more:hover{background:#dff0e9}
.crm-app input:focus,.crm-app select:focus{border-color:#1c907a}
@media(max-width:767.98px){
 .crm-app .crm-command>.command-header,.crm-app .crm-productivity>.work-heading{padding:21px 18px;border-radius:15px;gap:16px}
 .crm-app .work-heading h1{font-size:23px}
 .crm-app .command-header-actions{gap:8px}
 .crm-app .work-table-scroll,.crm-app .directory-table-scroll{max-height:62vh}
 .crm-app .work-quick{gap:7px}
 .crm-app .work-quick a{font-size:11px}
 .crm-app .work-card{padding:17px 14px}
 .crm-app .crm-saved-views{gap:12px}
}
@media(prefers-reduced-motion:reduce){.crm-app .sidebar .nav-link{transition:none}}
