.crm-page{padding:2rem 2.5rem;max-width:1400px;margin:0 auto}.crm-page-narrow{max-width:860px}.crm-loading{padding:3rem;text-align:center;color:#6b7280;font-size:1rem}.crm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.75rem;flex-wrap:wrap}.crm-header h1{font-size:1.75rem;font-weight:700;color:#111827;margin:0 0 .25rem;line-height:1.2}.crm-header-meta{font-size:.85rem;color:#6b7280}.crm-header-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.crm-section-title{font-size:1rem;font-weight:600;color:#374151;margin:1.75rem 0 .75rem;text-transform:uppercase;letter-spacing:.04em}.crm-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .9rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:.85rem;font-weight:500;cursor:pointer;text-decoration:none;transition:background .12s,border-color .12s;white-space:nowrap;line-height:1.4}.crm-btn:hover{background:#f3f4f6}.crm-btn-primary{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.crm-btn-primary:hover{background:#1e40af;border-color:#1e40af}.crm-btn-success{background:#059669;color:#fff;border-color:#059669}.crm-btn-success:hover{background:#047857}.crm-btn-sm{padding:.3rem .65rem;font-size:.8rem}.crm-btn-xs{padding:.2rem .5rem;font-size:.75rem;border-radius:4px}.crm-back-btn{display:inline-flex;align-items:center;background:none;border:none;color:#1d4ed8;font-size:.85rem;cursor:pointer;padding:0;margin-bottom:.35rem;text-decoration:none}.crm-back-btn:hover{text-decoration:underline}.crm-view-btn{padding:.4rem .8rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;color:#6b7280;font-size:.82rem;font-weight:500;cursor:pointer;transition:all .12s}.crm-view-btn.active{background:#1d4ed8;color:#fff;border-color:#1d4ed8}.crm-badge{padding:.15rem .5rem;background:#e5e7eb;color:#374151;font-weight:600;white-space:nowrap}.crm-badge,.crm-stage-pill{display:inline-flex;align-items:center;border-radius:12px;font-size:.72rem;text-transform:capitalize}.crm-stage-pill{padding:.2rem .6rem;color:#fff;font-weight:700}.crm-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.5rem}.crm-card-title{font-size:.9rem;font-weight:700;color:#111827;margin:0 0 1rem;text-transform:uppercase;letter-spacing:.04em}.crm-card-sub{font-size:.85rem;color:#6b7280;margin:-.5rem 0 1rem}.crm-card-full{grid-column:1/-1}.crm-overview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1rem;gap:1rem;align-items:start}.crm-filters{display:flex;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.crm-input{display:block;width:100%;padding:.4rem .65rem;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;color:#111827;background:#fff;outline:none;transition:border-color .12s;box-sizing:border-box}.crm-input:focus{border-color:#1d4ed8}.crm-select{display:block;width:100%;padding:.4rem .65rem;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;color:#111827;background:#fff;outline:none;cursor:pointer;box-sizing:border-box}.crm-select:focus{border-color:#1d4ed8}.crm-textarea{display:block;width:100%;padding:.5rem .65rem;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;color:#111827;background:#fff;resize:vertical;outline:none;font-family:inherit;box-sizing:border-box;transition:border-color .12s}.crm-textarea:focus{border-color:#1d4ed8}.crm-form{margin-bottom:1.5rem}.crm-form-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.crm-form-row label{flex:1 1 160px;display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;font-weight:500;color:#374151}.crm-form-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.crm-form-section h2{font-size:1rem;font-weight:600;margin:0 0 .75rem;color:#374151}.crm-form-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.crm-success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7;border-radius:6px;padding:.5rem .75rem;font-size:.85rem;margin-bottom:.75rem}.crm-field{display:flex;align-items:flex-start;gap:.5rem;padding:.45rem 0;border-bottom:1px solid #f3f4f6;min-height:2rem}.crm-field:last-child{border-bottom:none}.crm-field-label{width:120px;flex-shrink:0;font-size:.78rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.04em;padding-top:.1rem}.crm-field-value{flex:1 1;font-size:.875rem;color:#111827;cursor:pointer;min-height:1.5rem;border-radius:4px;padding:.05rem .25rem}.crm-field-value:hover{background:#f3f4f6}.crm-field-empty{color:#9ca3af;font-style:italic}.crm-field-edit{display:flex;align-items:center;gap:.35rem;flex:1 1}.crm-field-select{flex:1 1}.crm-table-wrap{overflow-x:auto;border:1px solid #e5e7eb;border-radius:10px}.crm-table{width:100%;border-collapse:collapse;font-size:.85rem}.crm-table th{background:#f9fafb;padding:.6rem .85rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;border-bottom:1px solid #e5e7eb;white-space:nowrap}.crm-table td{padding:.65rem .85rem;border-bottom:1px solid #f3f4f6;color:#374151;vertical-align:middle}.crm-table tr:last-child td{border-bottom:none}.crm-table tr:hover td{background:#fafafa}.crm-link{color:#1d4ed8;text-decoration:none;font-weight:500}.crm-link:hover{text-decoration:underline}.crm-empty{color:#9ca3af;font-size:.875rem;padding:1.5rem 0}.crm-pipeline{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:1rem;align-items:flex-start}.crm-pipeline-col{flex:0 0 200px;min-width:180px}.crm-pipeline-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .6rem;border-top:3px solid;background:#f9fafb;border-radius:6px 6px 0 0;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.crm-pipeline-count{background:#e5e7eb;color:#374151;border-radius:10px;padding:.1rem .4rem;font-size:.72rem}.crm-pipeline-cards{display:flex;flex-direction:column;gap:.4rem;padding:.5rem 0}.crm-pipeline-card{background:#fff;border:1px solid #e5e7eb;border-radius:7px;padding:.6rem .75rem;text-decoration:none;color:#111827;font-size:.8rem;display:flex;flex-direction:column;gap:.2rem;transition:box-shadow .12s}.crm-pipeline-card:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}.crm-pipeline-card strong{font-weight:600}.crm-pipeline-card span{color:#6b7280;font-size:.75rem}.crm-pipeline-value{color:#059669!important;font-weight:600!important}.crm-tabs{display:flex;gap:0;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem}.crm-tab{padding:.6rem 1.1rem;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:.85rem;font-weight:500;color:#6b7280;cursor:pointer;text-transform:capitalize;transition:color .12s,border-color .12s}.crm-tab.active{color:#1d4ed8;border-bottom-color:#1d4ed8}.crm-kpi-strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:1.75rem}.crm-kpi{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem}.crm-kpi-label{font-size:.72rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.3rem}.crm-kpi-value{font-size:1.65rem;font-weight:800;color:#111827;line-height:1}.crm-kpi-sub{font-size:.72rem;color:#9ca3af;margin-top:.2rem}.crm-charts-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem;margin-bottom:1.75rem}@media (max-width:700px){.crm-charts-row{grid-template-columns:1fr}}.crm-bar-chart{display:flex;flex-direction:column;gap:.5rem}.crm-bar-row{display:flex;align-items:center;gap:.5rem;font-size:.78rem}.crm-bar-label{width:80px;flex-shrink:0;color:#374151;font-weight:500;text-transform:capitalize}.crm-bar-track{flex:1 1;height:12px;background:#f3f4f6;border-radius:6px;overflow:hidden}.crm-bar-fill{height:100%;border-radius:6px;background:#1d4ed8;transition:width .3s}.crm-bar-count{width:28px;text-align:right;color:#6b7280;font-weight:500}.crm-timeline{display:flex;flex-direction:column;gap:0}.crm-timeline-row{display:flex;align-items:center;justify-content:space-between;padding:.45rem 0;border-bottom:1px solid #f3f4f6;font-size:.85rem}.crm-timeline-row:last-child{border-bottom:none}.crm-timeline-label{color:#6b7280;font-weight:500;font-size:.8rem}.crm-timeline-date{color:#111827;font-weight:500}.crm-timeline-empty{color:#d1d5db}.crm-lead-meta{display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;margin-top:.3rem}.crm-activity-form{margin-bottom:1.25rem}.crm-followup-row{align-items:flex-end}.crm-activity-list{display:flex;flex-direction:column;gap:.75rem}.crm-activity-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:.85rem 1rem}.crm-activity-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.4rem;flex-wrap:wrap}.crm-activity-date{font-size:.75rem;color:#9ca3af}.crm-activity-by{font-size:.75rem;color:#6b7280}.crm-activity-desc{font-size:.875rem;color:#374151;margin:0;white-space:pre-wrap}.crm-followup-tag{margin-top:.5rem;font-size:.78rem;color:#374151;background:#fef3c7;border:1px solid #fde68a;border-radius:5px;padding:.25rem .5rem;display:inline-block}.crm-followup-tag.overdue{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.crm-followup-list{display:flex;flex-direction:column;gap:.5rem}.crm-followup-item{background:#fff;border:1px solid #e5e7eb;border-left:3px solid #f59e0b;border-radius:0 8px 8px 0;padding:.6rem 1rem;font-size:.82rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.crm-followup-item.overdue{border-left-color:#ef4444;background:#fff5f5}.crm-followup-item a{color:#1d4ed8;font-weight:600;text-decoration:none}.crm-followup-item a:hover{text-decoration:underline}.crm-followup-date{color:#6b7280;font-size:.75rem}.crm-reviews-marketing{margin-bottom:1.5rem}.crm-reviews-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1rem;gap:1rem}.crm-review-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.5rem}.crm-review-approved{border-color:#6ee7b7;background:#f0fdf4}.crm-review-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem;flex-wrap:wrap}.crm-review-stars{color:#f59e0b;font-size:.9rem;margin-left:.35rem}.crm-review-meta{display:flex;gap:.35rem;align-items:center;flex-wrap:wrap}.crm-review-date{font-size:.72rem;color:#9ca3af}.crm-review-text{font-size:.875rem;color:#374151;font-style:italic;line-height:1.55;margin:0}.crm-review-actions{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.25rem}.crm-campaigns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1rem;gap:1rem}.crm-campaign-card{transition:box-shadow .12s}.crm-campaign-card:hover{box-shadow:0 2px 12px rgba(0,0,0,.08)}.crm-campaign-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.crm-campaign-name{font-size:.95rem;font-weight:700;color:#111827;margin:0}.crm-campaign-meta{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.5rem}.crm-campaign-segment{font-size:.75rem;color:#6b7280;align-self:center}.crm-campaign-preview{font-size:.8rem;color:#6b7280;margin:0 0 .5rem;line-height:1.5}.crm-campaign-footer{font-size:.75rem;color:#9ca3af;display:flex;gap:.35rem}.crm-template-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:.75rem 1rem;font-size:.85rem;color:#374151;white-space:pre-wrap;font-family:inherit;line-height:1.6;margin:0}.crm-shell{display:flex;min-height:100vh}.crm-sidebar{width:220px;flex-shrink:0;background:#111827;padding:1.5rem 0;display:flex;flex-direction:column}.crm-logo{gap:.75rem;padding:0 1.25rem 1.25rem;border-bottom:1px solid #1f2937;margin-bottom:.75rem}.crm-logo,.crm-logo-mark{display:flex;align-items:center}.crm-logo-mark{width:36px;height:36px;background:#1d4ed8;color:#fff;border-radius:8px;justify-content:center;font-size:1.1rem;font-weight:800;flex-shrink:0}.crm-logo strong{display:block;font-size:.9rem;font-weight:700;color:#fff}.crm-logo span{display:block;font-size:.7rem;color:#6b7280;margin-top:.05rem}.crm-nav{display:flex;flex-direction:column;gap:.1rem;padding:0 .5rem;flex:1 1}.crm-nav-link{display:flex;align-items:center;padding:.55rem .75rem;border-radius:7px;text-decoration:none;color:#9ca3af;font-size:.875rem;font-weight:500;transition:background .12s,color .12s}.crm-nav-link:hover{background:#1f2937;color:#f3f4f6}.crm-nav-link.active,.crm-nav-link[aria-current=page]{background:#1d4ed8;color:#fff}.crm-main{flex:1 1;background:#f9fafb;overflow-y:auto;min-height:100vh}.crm-sidebar-footer{padding:.75rem 1rem 0;border-top:1px solid #1f2937;margin-top:auto}.crm-back-link{font-size:.78rem;color:#6b7280;text-decoration:none;display:flex;align-items:center;gap:.35rem}.crm-back-link:hover{color:#9ca3af}.crm-sidebar-user{padding:.75rem 1rem;border-top:1px solid #1f2937;margin-top:auto;display:flex;flex-direction:column;gap:.2rem}.crm-sidebar-username{font-size:.82rem;font-weight:600;color:#e5e7eb}.crm-sidebar-role{font-size:.7rem;color:#6b7280;text-transform:capitalize}.crm-signout-link{font-size:.75rem;color:#4b5563;text-decoration:none;margin-top:.2rem}.crm-signout-link:hover{color:#9ca3af}.crm-login-page{min-height:100vh;background:#111827;display:flex;align-items:center;justify-content:center;padding:2rem}.crm-login-card{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:400px;box-shadow:0 20px 60px rgba(0,0,0,.4)}.crm-login-logo{display:flex;align-items:center;gap:.75rem;margin-bottom:1.75rem}.crm-login-logo strong{display:block;font-size:1rem;font-weight:700;color:#111827}.crm-login-logo span{display:block;font-size:.75rem;color:#6b7280}.crm-login-field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.85rem;font-size:.85rem;font-weight:500;color:#374151}.crm-login-btn{width:100%;justify-content:center;padding:.65rem;font-size:.9rem;margin-top:.25rem}.crm-login-error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5;border-radius:6px;padding:.5rem .75rem;font-size:.82rem;margin-bottom:.75rem}.crm-badge-inactive{background:#f3f4f6;color:#9ca3af}.mkt-forecast-banner{border:1.5px solid;border-radius:12px;padding:1.5rem 1.75rem;margin-bottom:2rem}.mkt-forecast-light{display:flex;align-items:flex-start;gap:1rem}.mkt-forecast-emoji{font-size:2.5rem;line-height:1;flex-shrink:0}.mkt-forecast-label{font-size:1.25rem;font-weight:700;color:#111827;margin:0 0 .25rem}.mkt-forecast-msg{color:#374151;margin:0;font-size:.95rem}.mkt-forecast-updated{margin:.75rem 0 0;font-size:.78rem;color:#9ca3af}.mkt-signals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:2rem}.mkt-signal-card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem 1.25rem 1rem;box-shadow:0 1px 3px rgba(0,0,0,.06)}.mkt-signal-card-static{background:#f9fafb}.mkt-signal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.mkt-signal-label{font-size:.9rem;font-weight:600;color:#374151}.mkt-signal-series{font-size:.72rem;color:#9ca3af;font-family:monospace;background:#f3f4f6;padding:1px 6px;border-radius:4px}.mkt-signal-value-row{display:flex;align-items:baseline;gap:.75rem;margin-bottom:.75rem}.mkt-signal-value{font-size:1.7rem;font-weight:700;color:#111827;line-height:1}.mkt-signal-arrow{font-size:.95rem;font-weight:600}.mkt-signal-chart{margin-bottom:.75rem;line-height:0}.mkt-signal-note{font-size:.82rem;color:#6b7280;margin:0;line-height:1.45}.mkt-lira-chart-placeholder{height:56px;background:#f3f4f6;border-radius:6px;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem;font-size:.75rem;color:#9ca3af}.mkt-lira-link{display:inline-block;margin-top:.5rem;font-size:.8rem;color:#1d4ed8;text-decoration:none}.mkt-lira-link:hover{text-decoration:underline}.mkt-section-title{font-size:1rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .85rem}.mkt-actions-box{background:#fff;border:1px solid #e5e7eb;border-left:4px solid #f59e0b;border-radius:10px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px rgba(0,0,0,.06)}.mkt-actions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.6rem}.mkt-action-item{display:flex;align-items:flex-start;gap:.6rem;font-size:.93rem;color:#374151}.mkt-action-bullet{color:#10b981;font-weight:700;flex-shrink:0;margin-top:1px}.mkt-notes-section{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 1px 3px rgba(0,0,0,.06)}.mkt-notes-hint{font-size:.83rem;color:#9ca3af;margin:0 0 1rem}.mkt-notes-compose{display:flex;gap:.75rem;align-items:flex-end;margin-bottom:1rem}.mkt-notes-textarea{flex:1 1;border:1px solid #d1d5db;border-radius:6px;padding:.5rem .75rem;font-size:.875rem;color:#374151;resize:none;font-family:inherit;line-height:1.5}.mkt-notes-textarea:focus{outline:none;border-color:#1d4ed8;box-shadow:0 0 0 2px rgba(29,78,216,.12)}.mkt-notes-btn{white-space:nowrap;align-self:flex-end}.mkt-notes-list{display:flex;flex-direction:column;gap:.5rem}.mkt-notes-empty{color:#9ca3af;font-size:.83rem;margin:0}.mkt-note-item{display:grid;grid-template-columns:90px 1fr 28px;align-items:start;grid-gap:.5rem;gap:.5rem;padding:.6rem .75rem;background:#f9fafb;border-radius:6px;font-size:.85rem}.mkt-note-date{color:#9ca3af;font-size:.75rem;white-space:nowrap;padding-top:2px}.mkt-note-text{color:#374151;line-height:1.4}.mkt-note-delete{background:none;border:none;color:#d1d5db;font-size:1.1rem;cursor:pointer;padding:0;line-height:1}.mkt-note-delete:hover{color:#ef4444}.mkt-stale-badge{background:#fef3c7;color:#92400e;font-size:.75rem;font-weight:500;padding:.25rem .6rem;border-radius:12px;border:1px solid #fde68a}.mkt-error{padding:3rem;text-align:center;color:#6b7280}.mkt-error h2{font-size:1.2rem;color:#374151;margin-bottom:.5rem}.mkt-disclaimer{font-size:.75rem;color:#9ca3af;margin-top:1rem;line-height:1.6}.mkt-disclaimer a{color:#6b7280;text-decoration:underline}@media (max-width:900px){.crm-layout{flex-direction:column}.crm-sidebar{width:100%;padding:.75rem 0;flex-direction:row;align-items:center;flex-wrap:wrap}.crm-sidebar-brand{padding:0 1rem;border:none}.crm-nav{flex-direction:row;padding:0 .5rem;flex-wrap:wrap}.crm-sidebar-back{display:none}.crm-page{padding:1.25rem 1rem}}@media (max-width:600px){.crm-overview-grid{grid-template-columns:1fr}.crm-kpi-strip{grid-template-columns:repeat(2,1fr)}.crm-header{flex-direction:column}.crm-pipeline{gap:.5rem}.crm-pipeline-col{flex:0 0 160px}}