/* Local Cairo variable font — download the font file to public/assets/fonts/Cairo-Variable.ttf */
@font-face{font-family:"Cairo";src:url("/assets/fonts/Cairo-Variable.ttf") format("truetype");font-style:normal;font-weight:200 900;font-display:swap}
:root{--crm-green:#1abe17;--crm-red:#ef1e1e;--crm-blue:#2f80ed;--crm-orange:#ffa201;--ink:#182327;--muted:#718087;--line:#dde5e3;--paper:#fff;--canvas:#f4f7f5;--nav:#112a2b;--nav-2:#173536;--brand:#158b72;--brand-dark:#0f6e5b;--mint:#e4f6ef;--amber:#d6922b;--rose:#c85765;--blue:#3b73c7;--violet:#7058b5;--cyan:#2393a5;--shadow:0 10px 32px rgba(24,50,45,.07);--radius:16px}
*{box-sizing:border-box}html{font-size:15px}body{margin:0;background:var(--canvas);color:var(--ink);font-family:"Cairo",Tahoma,Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.ltr{direction:ltr;text-align:right}.muted{color:var(--muted)}code{direction:ltr;display:inline-block;max-width:100%;overflow-wrap:anywhere;background:#edf2f0;color:#31534b;border-radius:7px;padding:.2rem .45rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.83rem}
.app-shell{min-height:100vh}.sidebar{position:fixed;z-index:30;inset:0 0 0 auto;width:274px;background:var(--nav);color:#edf8f4;padding:24px 17px 16px;display:flex;flex-direction:column;box-shadow:-12px 0 30px rgba(8,26,26,.1)}.brand{display:flex;align-items:center;gap:12px;padding:0 8px 24px;border-bottom:1px solid rgba(255,255,255,.1)}.brand-mark{height:44px;min-width:50px;padding:0 8px;border-radius:12px;background:linear-gradient(145deg,#35c49f,#16896f);display:grid;place-items:center;color:#fff;font-weight:800;letter-spacing:.06em;box-shadow:0 7px 20px rgba(40,190,151,.22)}.brand strong,.brand small{display:block}.brand strong{font-size:1rem}.brand small{font-size:.73rem;color:#a9c1bb;margin-top:2px}.main-nav{padding-top:19px;display:grid;gap:4px;overflow:auto}.main-nav a{padding:11px 12px;border-radius:10px;color:#c5d7d2;display:flex;align-items:center;gap:11px;font-size:.9rem;font-weight:600;transition:.18s}.main-nav a span{width:21px;text-align:center;font-size:1.15rem;color:#84a9a0}.main-nav a:hover{background:rgba(255,255,255,.06);color:#fff}.main-nav a.active{background:#f2fbf7;color:var(--nav);box-shadow:0 8px 20px rgba(0,0,0,.13)}.main-nav a.active span{color:var(--brand)}.nav-label{color:#708d87;font-size:.7rem;font-weight:700;padding:19px 13px 6px}.sidebar-user{margin-top:auto;border-top:1px solid rgba(255,255,255,.1);padding:17px 7px 0;display:flex;gap:10px;align-items:center}.avatar,.mini-avatar{border-radius:50%;background:#dff3ec;color:#12715d;display:grid;place-items:center;font-weight:800}.avatar{width:38px;height:38px}.sidebar-user>div:nth-child(2){min-width:0;flex:1}.sidebar-user strong,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user strong{font-size:.83rem}.sidebar-user small{font-size:.68rem;color:#9eb7b1}.sidebar-user form button{border:0;background:transparent;color:#9eb7b1;font-size:1.25rem;padding:6px}.content-shell{margin-right:274px;min-height:100vh}.topbar{height:86px;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:0 30px;display:flex;align-items:center;position:sticky;top:0;z-index:20}.topbar-title{display:grid}.topbar-title small{color:var(--muted);font-size:.75rem}.topbar-title strong{font-size:1.22rem}.topbar-actions{margin-right:auto;display:flex;gap:8px}.sidebar-toggle{display:none;border:0;background:transparent;font-size:1.5rem;margin-left:9px}.page-content{padding:28px 30px 42px;max-width:1680px;margin:auto}
.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:21px}.panel-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.panel-head small{display:block;color:var(--brand);font-size:.72rem;font-weight:700}.panel-head h2{font-size:1.02rem;margin:1px 0 0}.panel-head>a{color:var(--brand);font-size:.79rem;font-weight:700}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:var(--shadow);display:flex;align-items:center;gap:14px;min-height:112px}.stat-card>div:last-child{min-width:0}.stat-card small,.stat-card strong,.stat-card span{display:block}.stat-card small{color:var(--muted);font-size:.74rem}.stat-card strong{font-size:1.4rem;line-height:1.35;margin-top:2px}.stat-card span{font-size:.68rem;color:var(--brand);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;font-size:1.15rem;font-weight:800;flex:0 0 auto}.stat-icon.green{background:#e1f5ec;color:var(--brand)}.stat-icon.violet{background:#ede8fa;color:var(--violet)}.stat-icon.amber{background:#fdf0dd;color:var(--amber)}.stat-icon.blue{background:#e5edfa;color:var(--blue)}.stat-icon.cyan{background:#e2f4f6;color:var(--cyan)}.stat-icon.rose{background:#fae8eb;color:var(--rose)}
.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.two-columns.wide-first{grid-template-columns:1.55fr .85fr}.pipeline-list,.report-bars{display:grid;gap:16px}.pipeline-row,.report-row{display:grid;grid-template-columns:minmax(90px,.75fr) minmax(100px,1.6fr) minmax(72px,.6fr);align-items:center;gap:13px}.pipeline-row>div:first-child strong,.pipeline-row>div:first-child small,.report-row>div:first-child strong,.report-row>div:first-child small{display:block}.pipeline-row small,.report-row small{color:var(--muted);font-size:.67rem}.pipeline-row>b,.report-row>b{text-align:left;font-size:.78rem}.bar,.progress,.big-progress{height:7px;background:#e9efed;border-radius:100px;overflow:hidden}.bar span,.progress span,.big-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#39bea0,var(--brand))}.task-list,.call-list,.timeline{display:grid}.task-item,.call-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf1f0}.task-item:last-child,.call-item:last-child{border:0}.task-item>div,.call-item>div{flex:1;min-width:0}.task-item strong,.task-item small,.call-item strong,.call-item small{display:block}.task-item strong,.call-item strong{font-size:.82rem}.task-item small,.call-item small,.call-item time{font-size:.68rem;color:var(--muted)}.task-dot{width:10px;height:10px;border:2px solid var(--brand);border-radius:50%}.task-dot.completed{background:var(--brand)}.call-arrow{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#e6f5ef;color:var(--brand)}.call-arrow.outbound{background:#e7eef9;color:var(--blue)}
.table-panel{margin-bottom:18px}.table-wrap{overflow:auto;margin:0 -3px}.table-wrap table{width:100%;border-collapse:collapse;min-width:650px}.table-wrap th{text-align:right;color:#81908c;font-size:.68rem;font-weight:700;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}.table-wrap td{font-size:.79rem;padding:13px 12px;border-bottom:1px solid #edf1f0;vertical-align:middle}.table-wrap tr:last-child td{border-bottom:0}.table-wrap td small{display:block;color:var(--muted);font-size:.67rem}.person{display:flex;gap:10px;align-items:center}.person>span:last-child{min-width:0}.mini-avatar{width:32px;height:32px;flex:0 0 auto}.badge{display:inline-flex;align-items:center;border-radius:100px;padding:4px 9px;background:#edf1f0;color:#54625e;font-size:.66rem;font-weight:700;white-space:nowrap}.badge.lead,.badge.new,.badge.pending{background:#fdf0dd;color:#9a6419}.badge.active,.badge.qualified,.badge.won,.badge.success{background:#e1f5ec;color:#14705d}.badge.inactive,.badge.lost,.badge.failed{background:#fae8eb;color:#a13b49}.badge.proposal,.badge.role,.badge.running{background:#e6eefb;color:#355f9a}.badge.negotiation{background:#ede9f8;color:#604c9d}.badge.blocked{background:#eceff0;color:#4d5a5d}.actions,.card-actions{display:flex;align-items:center;gap:7px}.icon-btn{width:32px;height:32px;border:1px solid var(--line);border-radius:9px;background:#fff;display:inline-grid;place-items:center;color:#46635b}.icon-btn:hover{border-color:#9dcabd;color:var(--brand)}.icon-btn.danger{color:var(--rose)}.empty-state{padding:28px 14px;text-align:center;color:var(--muted);font-size:.82rem}.pagination-wrap{padding-top:16px}.pagination{display:flex;gap:5px;list-style:none;padding:0;margin:0}.page-link{min-width:32px;height:32px;border:1px solid var(--line);display:grid;place-items:center;border-radius:8px;font-size:.75rem}.page-item.active .page-link{background:var(--brand);color:#fff;border-color:var(--brand)}.page-item.disabled .page-link{opacity:.45}
.btn{border:1px solid transparent;border-radius:9px;padding:9px 15px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:700;font-size:.78rem;transition:.18s;background:#fff;color:var(--ink)}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 6px 14px rgba(21,139,114,.2)}.btn.primary:hover{background:var(--brand-dark)}.btn.secondary{background:#e4f3ee;border-color:#cae5dc;color:#116d5a}.btn.ghost{border-color:var(--line);color:#52615d}.btn.whatsapp{background:#1aa96b;color:#fff}.btn.danger-ghost{border-color:#efcbd0;color:#ae4050;background:#fff}.btn.wide{width:100%}.btn.small{padding:6px 10px;font-size:.68rem}.alert{border-radius:11px;padding:12px 15px;margin-bottom:17px;font-size:.8rem}.alert ul{margin:5px 0 0}.alert.success{background:#e4f5ef;border:1px solid #bde2d6;color:#116d59}.alert.danger{background:#faeaec;border:1px solid #efc7cd;color:#9c3b49}
.filters{display:flex;align-items:end;gap:9px;margin-bottom:18px;flex-wrap:wrap}.filters>input{min-width:260px;flex:1}.filters label{min-width:170px}.filters label input{margin-top:4px}.inline-filter select{min-width:140px}.stack-form{display:grid;gap:13px}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:18px;align-items:start}.form-panel{padding:25px}.form-side{position:sticky;top:105px}.form-side h3{margin:0 0 7px}.form-side p{color:var(--muted);font-size:.78rem;margin:0 0 20px}.form-side .btn{margin-top:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.span-2{grid-column:1/-1}label{display:grid;gap:6px;color:#41514d;font-size:.75rem;font-weight:700}input,select,textarea{width:100%;border:1px solid #d5dfdc;border-radius:9px;background:#fff;color:var(--ink);padding:10px 11px;outline:0;transition:.15s}input:focus,select:focus,textarea:focus{border-color:#61ad99;box-shadow:0 0 0 3px rgba(21,139,114,.1)}textarea{resize:vertical}.checkbox{display:flex;grid-auto-flow:column;justify-content:start;align-items:center;gap:8px}.checkbox input{width:auto}.form-checkbox{align-self:end;min-height:42px}.form-divider{border-bottom:1px solid var(--line);height:20px;margin:5px 0 10px}.form-divider span{background:#fff;padding-left:10px;color:var(--brand);font-size:.7rem}
.profile-grid{display:grid;grid-template-columns:285px minmax(0,1fr);gap:18px;align-items:start}.profile-card{position:sticky;top:105px;text-align:center}.profile-avatar{width:76px;height:76px;border-radius:22px;background:linear-gradient(140deg,#d7f2e9,#bce3d6);color:var(--brand);display:grid;place-items:center;margin:0 auto 12px;font-size:1.7rem;font-weight:800}.profile-card h2{margin:0;font-size:1.15rem}.profile-card>p{color:var(--muted);margin:2px 0 10px;font-size:.76rem}.profile-card form{margin-top:8px}.profile-main{display:grid;gap:18px}.details-list{margin:17px 0;display:grid;text-align:right}.details-list>div{display:flex;justify-content:space-between;gap:13px;padding:9px 0;border-bottom:1px solid #edf1f0}.details-list dt{color:var(--muted);font-size:.7rem}.details-list dd{margin:0;font-size:.75rem;font-weight:700;overflow-wrap:anywhere}.details-list.horizontal{grid-template-columns:1fr 1fr;gap:0 30px}.communication-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.message-box{border:1px solid var(--line);border-radius:12px;padding:15px;display:grid;gap:9px}.message-box h3{font-size:.84rem;margin:0}.channel-dot{width:9px;height:9px;display:inline-block;border-radius:50%;background:#7b8c88}.channel-dot.whatsapp{background:#1aa96b}.channel-dot.email{background:var(--blue)}.timeline-item{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #edf1f0}.timeline-item:last-child{border:0}.timeline-item>span:first-child{width:8px;height:8px;border-radius:50%;background:var(--brand)}.timeline-item>div{flex:1}.timeline-item strong,.timeline-item small{display:block}.timeline-item strong{font-size:.78rem}.timeline-item small{color:var(--muted);font-size:.67rem}.notes-card p,.description-box p{white-space:pre-line;color:#4c5d58;font-size:.8rem}.deal-summary{display:grid;grid-template-columns:repeat(5,1fr);margin-bottom:18px}.deal-summary>div{padding:4px 17px;border-left:1px solid var(--line)}.deal-summary>div:last-child{border:0}.deal-summary small,.deal-summary strong{display:block}.deal-summary small{color:var(--muted);font-size:.68rem}.deal-summary strong{font-size:.92rem;margin-top:4px}.progress{display:inline-block;width:70px;margin-left:6px}.big-progress{height:13px}.description-box{background:#f5f8f7;border-radius:10px;padding:13px;margin-top:14px}.description-box h3{font-size:.78rem;margin:0}.description-box.danger{background:#fff2f3}.delete-row{display:flex;justify-content:flex-end}
.activity-list{display:grid}.activity-card{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;border-bottom:1px solid #edf1f0;padding:15px 0}.activity-card:last-child{border-bottom:0}.activity-card.completed{opacity:.7}.activity-icon{width:42px;height:42px;border-radius:12px;background:#e4f3ee;color:var(--brand);display:grid;place-items:center;font-size:1.05rem}.activity-title{display:flex;align-items:center;gap:8px}.activity-copy p{margin:3px 0;color:#52625e;font-size:.75rem}.activity-copy small,.activity-copy time{font-size:.65rem;color:var(--muted)}.activity-copy time{margin-right:8px}.activity-copy time.overdue{color:var(--rose);font-weight:700}.activity-actions{display:flex;gap:7px;align-items:center}.sticky-panel{position:sticky;top:105px}.report-filter{margin-bottom:16px;padding-bottom:2px}.report-filter .filters{margin-bottom:14px}.report-stats{grid-template-columns:repeat(3,1fr)}.rank-list{display:grid}.rank-list>div{display:flex;justify-content:space-between;border-bottom:1px solid #edf1f0;padding:11px 4px;font-size:.78rem}.rank-list>div:last-child{border:0}.rank-list b{background:#e4f3ee;color:var(--brand);min-width:30px;text-align:center;border-radius:8px;padding:2px 8px}
.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.permission-grid h3{font-size:.9rem;margin:0 0 4px}.permission-grid p{font-size:.72rem;color:var(--muted);margin:0}
.integration-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-bottom:18px}.integration-card{min-width:0}.integration-head{display:flex;align-items:center;gap:10px}.integration-head>div{flex:1;min-width:0}.integration-head h2{font-size:.84rem;margin:0}.integration-head small{display:block;color:var(--muted);font-size:.62rem}.integration-logo{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:.72rem;font-weight:800;background:#edf1f0}.integration-logo.whatsapp{background:#dff5e9;color:#158657}.integration-logo.ucm{background:#e5edf9;color:#3565a8}.integration-logo.smtp{background:#f9e9ec;color:#a44150}.integration-card>p{font-size:.7rem}.token-reveal{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:17px;border-color:#94cdbd}.token-reveal small,.token-reveal code{display:block}.token-reveal code{margin-top:5px}.api-note{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:15px;color:var(--muted);font-size:.68rem}
.login-body{min-height:100vh;margin:0;background:#fff;font-family:"Cairo",Tahoma,Arial,sans-serif;overflow-x:hidden}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);direction:ltr;background:#fff;padding:18px 18px 24px;gap:56px;align-items:center}.login-panel{direction:rtl;display:flex;align-items:center;justify-content:center;padding:30px 4.8vw 24px 4vw;background:#fff;position:relative;z-index:2}.login-panel-inner{width:min(620px,100%)}.login-brand-modern{margin-bottom:54px}.login-brand-line{display:flex;align-items:center;gap:14px}.login-emblem{width:58px;height:44px;position:relative;flex:0 0 auto}.emblem-dot{position:absolute;bottom:3px;width:27px;height:27px;border-radius:7px 7px 15px 15px;transform:rotate(45deg)}.dot-orange{right:1px;background:#ee4d24}.dot-gold{right:17px;bottom:14px;background:#f4b315;z-index:2}.dot-violet{right:32px;background:#6d3a98}.login-brand-copy{display:flex;align-items:center;gap:14px}.login-brand-copy strong{font-size:1.72rem;line-height:1;font-weight:800;color:#10191d;letter-spacing:-.03em}.login-crm-badge{display:inline-grid;place-items:center;height:47px;min-width:62px;padding:0 12px;border-radius:13px;background:linear-gradient(145deg,#169a79,#0d735b);color:#fff;font-size:1.13rem;font-weight:700;direction:ltr;box-shadow:0 8px 20px rgba(21,139,114,.16)}.login-brand-modern p{margin:12px 72px 0 0;color:#6c777e;font-size:.82rem;font-weight:400}.login-heading{margin-bottom:32px}.login-heading h1{margin:0;color:#10191d;font-size:2.42rem;line-height:1.25;font-weight:800;letter-spacing:-.045em}.login-heading p{margin:11px 0 0;color:#68757c;font-size:.89rem;font-weight:400}.login-alert{margin:0 0 20px;padding:12px 14px;border-radius:12px;background:#fff0f1;border:1px solid #f5cdd2;color:#a43b49;font-size:.79rem;font-weight:500}.login-form{display:grid;gap:21px}.login-field{display:grid;gap:9px;color:#121b1f;font-size:.79rem;font-weight:700}.login-input-wrap{height:61px;border:1px solid #d8e0e3;border-radius:11px;background:#fff;display:flex;align-items:center;gap:12px;padding:0 17px;transition:border-color .18s,box-shadow .18s}.login-input-wrap:focus-within{border-color:#178f73;box-shadow:0 0 0 4px rgba(21,139,114,.09)}.login-input-wrap>svg{width:20px;height:20px;fill:none;stroke:#1b252a;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.login-input-wrap input{width:100%;height:100%;border:0;outline:0;background:transparent;color:#142025;font-size:.88rem;font-family:inherit;font-weight:400}.login-input-wrap input::placeholder{color:#a0a9ae}.password-toggle{border:0;background:transparent;padding:4px;color:#29353a;display:grid;place-items:center;flex:0 0 auto}.password-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.password-toggle .eye-off{display:none}.password-toggle[aria-pressed="true"] .eye-on{display:none}.password-toggle[aria-pressed="true"] .eye-off{display:block}.login-options{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:-2px}.login-remember{display:inline-flex;align-items:center;gap:8px;color:#29353a;font-size:.78rem;font-weight:500;cursor:pointer}.login-remember input{width:17px;height:17px;accent-color:#168d71}.login-security-note{color:#178a70;font-size:.72rem;font-weight:600}.login-submit{height:64px;border:0;border-radius:11px;background:linear-gradient(90deg,#0c765e,#159978);color:#fff;font-family:inherit;font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 12px 26px rgba(12,118,94,.18);transition:transform .18s,box-shadow .18s}.login-submit:hover{transform:translateY(-1px);box-shadow:0 15px 32px rgba(12,118,94,.23)}.login-submit:active{transform:translateY(0)}.login-submit svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transform:scaleX(-1)}.login-footer{text-align:center;margin-top:62px;color:#7d898f;font-size:.68rem;font-weight:400}.login-visual{position:relative;width:100%;height:calc(100vh - 42px);min-height:0;max-height:none;align-self:center;overflow:hidden;background:#fff;border-radius:14px;box-shadow:0 10px 32px rgba(24,50,45,.08)}.login-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;border-radius:18px}.login-visual-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,18,20,.05) 35%,rgba(7,18,20,.52) 100%)}.login-visual-caption{position:absolute;right:52px;bottom:48px;left:52px;color:#fff;display:grid;gap:8px;direction:rtl;text-align:right;text-shadow:0 2px 18px rgba(0,0,0,.18)}.login-visual-caption span{width:max-content;padding:6px 10px;border:1px solid rgba(255,255,255,.42);border-radius:9px;background:rgba(255,255,255,.13);backdrop-filter:blur(8px);font-weight:700;direction:ltr}.login-visual-caption strong{font-size:1.34rem;line-height:1.45;font-weight:600}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,1fr)}.integration-grid{grid-template-columns:1fr}.deal-summary{grid-template-columns:repeat(3,1fr);gap:14px}.deal-summary>div{border:0;padding:3px}.report-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.sidebar{transform:translateX(105%);transition:.22s}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-open:after{content:"";position:fixed;z-index:25;inset:0;background:rgba(6,22,21,.45)}.content-shell{margin-right:0}.sidebar-toggle{display:block}.topbar{padding:0 18px}.page-content{padding:20px 18px 35px}.two-columns,.two-columns.wide-first,.form-layout,.profile-grid{grid-template-columns:1fr}.form-side,.profile-card,.sticky-panel{position:static}.profile-card{text-align:right}.profile-avatar{margin:0 0 12px}.permission-grid{grid-template-columns:1fr}.report-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1100px){.login-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:16px 16px 20px;gap:32px}.login-panel{padding:30px 4vw}.login-brand-modern{margin-bottom:42px}.login-heading h1{font-size:2.12rem}.login-visual{height:calc(100vh - 36px);min-height:0}.login-visual-caption{right:34px;left:34px;bottom:34px}}
@media(max-width:860px){.login-shell{display:block;min-height:100vh;padding:0;gap:0}.login-panel{min-height:100vh;padding:34px 24px}.login-panel-inner{width:min(560px,100%)}.login-visual{display:none}.login-brand-modern{margin-bottom:46px}.login-footer{margin-top:50px}}
@media(max-width:600px){html{font-size:14px}.topbar{height:73px}.topbar-title small{max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-content{padding:15px 11px 30px}.stats-grid,.report-stats{grid-template-columns:1fr 1fr;gap:9px}.stat-card{min-height:95px;padding:12px}.stat-icon{width:36px;height:36px}.stat-card strong{font-size:1.1rem}.two-columns{gap:12px;margin-bottom:12px}.panel{padding:15px;border-radius:13px}.form-grid,.communication-grid,.details-list.horizontal{grid-template-columns:1fr}.span-2{grid-column:auto}.filters{align-items:stretch}.filters>input,.filters label,.filters select,.filters .btn{width:100%;min-width:0}.topbar-actions .btn.secondary{display:none}.deal-summary{grid-template-columns:1fr 1fr}.pipeline-row,.report-row{grid-template-columns:95px 1fr}.pipeline-row>b,.report-row>b{grid-column:2;text-align:right}.activity-card{grid-template-columns:36px 1fr}.activity-icon{width:34px;height:34px}.activity-actions{grid-column:2}.api-note,.token-reveal{align-items:stretch;flex-direction:column}.login-panel{padding:26px 18px}.login-brand-modern{margin-bottom:36px}.login-brand-copy strong{font-size:1.42rem}.login-crm-badge{height:42px;min-width:56px;font-size:1rem}.login-brand-modern p{margin-right:0;margin-top:14px}.login-heading h1{font-size:1.85rem}.login-heading p{font-size:.8rem}.login-input-wrap{height:57px}.login-options{align-items:flex-start}.login-security-note{display:none}.login-submit{height:59px}.login-footer{margin-top:42px}.panel-head{align-items:flex-start}}
.template-message{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,.8fr) 80px auto;gap:9px;align-items:end;margin-top:13px;padding-top:13px;border-top:1px solid var(--line)}.template-message strong,.template-message small{display:block}.template-message strong{font-size:.74rem}.template-message small{color:var(--muted);font-size:.62rem}.template-message input{direction:ltr}.template-message input[name=language]{text-align:center}@media(max-width:700px){.template-message{grid-template-columns:1fr}.template-message .btn{width:100%}}
.badge.new_lead,.badge.contacted{background:#e5edfa;color:#315f9e}.badge.waiting_call,.badge.no_answer{background:#fdf0dd;color:#9a6419}.badge.interested,.badge.will_book,.badge.booked{background:#e1f5ec;color:#14705d}.badge.follow_up,.badge.future_lead,.badge.travel_company{background:#ede9f8;color:#604c9d}.badge.invalid_number,.badge.not_interested,.badge.cancelled{background:#fae8eb;color:#a13b49}.badge.phone_off{background:#eceff0;color:#4d5a5d}


/* Login V7 — dimensions matched to the CRMS reference layout.
   Reference structure: wrapper p-3, 50/50 col-lg-6, inner col-md-10 mx-auto,
   form padding p-4. This preserves the existing Laravel authentication logic. */
@media (min-width: 992px){
  .login-body{background:#fff;overflow:hidden}
  .login-shell{
    box-sizing:border-box;
    width:100%;
    height:100vh;
    min-height:100vh;
    padding:16px;
    gap:0;
    grid-template-columns:50% 50%;
    align-items:stretch;
    background:#fff;
    overflow:hidden;
  }
  .login-panel{
    box-sizing:border-box;
    height:calc(100vh - 32px);
    min-height:0;
    padding:0;
    align-items:stretch;
    justify-content:center;
    overflow-y:auto;
    overflow-x:hidden;
    background:#fff;
  }
  .login-panel-inner{
    box-sizing:border-box;
    width:83.333333%;
    max-width:none;
    min-height:calc(100vh - 32px);
    padding:24px 24px 0;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
  }
  .login-brand-modern{
    margin:0;
    padding-top:0;
    align-self:center;
    text-align:center;
  }
  .login-brand-line{justify-content:center}
  .login-brand-modern p{margin:12px 0 0;text-align:center}
  .login-content{width:100%;margin:auto 0;padding:28px 0}
  .login-heading{margin-bottom:24px}
  .login-heading h1{font-size:2rem;letter-spacing:-.035em}
  .login-heading p{margin-top:8px}
  .login-form{gap:18px}
  .login-input-wrap{height:55px;border-radius:8px}
  .login-submit{height:52px;border-radius:7px;box-shadow:none}
  .login-footer{margin:0;padding:0 0 8px;text-align:center}
  .login-visual{
    box-sizing:border-box;
    width:100%;
    height:calc(100vh - 32px);
    min-height:0;
    max-height:none;
    margin:0;
    align-self:stretch;
    border-radius:12px;
    box-shadow:none;
    background:#fff;
  }
  .login-visual img{
    width:100%;
    height:100%;
    border-radius:12px;
    object-fit:cover;
    object-position:center center;
  }
  .login-visual-overlay,.login-visual-caption{display:none}
}
@media (max-width: 991.98px){
  .login-shell{display:block;min-height:100vh;padding:0;overflow:visible}
  .login-panel{min-height:100vh;height:auto;padding:0;overflow:visible}
  .login-panel-inner{width:min(640px,100%);min-height:100vh;padding:32px 24px 18px;display:flex;flex-direction:column;justify-content:space-between}
  .login-brand-modern{margin:0 0 36px;text-align:center}
  .login-brand-line{justify-content:center}
  .login-brand-modern p{margin:12px 0 0;text-align:center}
  .login-content{width:100%;margin:auto 0}
  .login-footer{margin:42px 0 0}
  .login-visual{display:none}
}

/* V36 customer profile icon actions */
.customer-profile-quick-form {
    width: 100%;
    margin-top: 12px;
}
.customer-profile-icon-button {
    width: 100%;
    height: 78px;
    min-height: 78px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 2px solid currentColor;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: none;
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}
.customer-profile-icon-button svg {
    width: 34px;
    height: 34px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.customer-profile-icon-button.is-call { color: #1abe17; }
.customer-profile-icon-button.is-delete { color: #ef1e1e; }
.customer-profile-icon-button:hover {
    background: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(15, 23, 42, .08);
}
.customer-profile-icon-button:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 3px;
}
/* /V36 customer profile icon actions */

/* V37 compact customer actions + customer call activity */
.customer-profile-quick-form {
    margin-top: 8px;
}
.customer-profile-icon-button {
    height: 56px;
    min-height: 56px;
    border-width: 1.5px;
    border-radius: 12px;
}
.customer-profile-icon-button svg {
    width: 25px;
    height: 25px;
}
.customer-call-mini-list {
    display: grid;
    gap: 0;
}
.customer-call-mini-item {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 11px 0;
    border-bottom: 1px solid var(--line);
}
.customer-call-mini-item:last-child { border-bottom: 0; }
.customer-call-mini-icon {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #f0fdf4;
    color: #1abe17;
    font-size: 17px;
    font-weight: 900;
}
.customer-call-mini-icon.missed,
.customer-call-mini-icon.unknown { background: #fef2f2; color: #ef1e1e; }
.customer-call-mini-icon.internal { background: #eff6ff; color: #2f80ed; }
.customer-call-mini-copy { min-width: 0; }
.customer-call-mini-copy strong { display: block; color: #1f2937; font-size: 13px; }
.customer-call-mini-copy small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; direction: rtl; }
@media(max-width:600px){
    .customer-profile-icon-button { height: 50px; min-height: 50px; }
    .customer-profile-icon-button svg { width: 23px; height: 23px; }
    .customer-call-mini-item { grid-template-columns: 30px minmax(0,1fr); }
    .customer-call-mini-item > .badge { grid-column: 2; justify-self: start; }
}
/* /V37 compact customer actions + customer call activity */

/* V38 — smaller customer call/delete buttons */
.customer-profile-quick-form {
    margin-top: 6px;
}
.customer-profile-icon-button {
    height: 46px;
    min-height: 46px;
    border-radius: 10px;
}
.customer-profile-icon-button svg {
    width: 21px;
    height: 21px;
}
@media(max-width:600px){
    .customer-profile-icon-button {
        height: 44px;
        min-height: 44px;
    }
    .customer-profile-icon-button svg {
        width: 20px;
        height: 20px;
    }
}
/* /V38 — smaller customer call/delete buttons */

/* V40 customer avatar + rich communication history */
.profile-card .profile-avatar {
    background: #ffffff !important;
    color: #2f80ed !important;
    border: 2px solid #2f80ed !important;
    box-shadow: none !important;
}
.customer-summary-history-list {
    display: grid;
    gap: 10px;
}
.customer-summary-history-item {
    border: 1px solid #e3e9ef;
    border-radius: 14px;
    background: #ffffff;
    padding: 13px 14px;
}
.customer-summary-history-topline {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.customer-summary-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 7px;
    color: #64748b;
    font-size: 12px;
}
.customer-summary-meta strong {
    color: #1f2937;
    font-size: 13px;
}
.customer-summary-rating {
    color: #b45309;
    background: #fff7ed;
    border-radius: 999px;
    padding: 3px 8px;
    font-weight: 800;
}
.customer-summary-actions {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    flex-shrink: 0;
}
.customer-summary-call-form {
    margin: 0;
}
.customer-summary-action {
    width: 36px;
    height: 36px;
    min-height: 36px;
    display: grid;
    place-items: center;
    padding: 0;
    border-radius: 10px;
    background: #ffffff;
    border: 1.5px solid currentColor;
    cursor: pointer;
    list-style: none;
}
.customer-summary-action::-webkit-details-marker { display: none; }
.customer-summary-action svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.customer-summary-action.is-listen { color: #2f80ed; }
.customer-summary-action.is-call { color: #1abe17; }
.customer-summary-recording {
    position: relative;
}
.customer-summary-audio-wrap {
    margin-top: 8px;
    width: min(360px, 68vw);
}
.customer-summary-audio-wrap audio {
    width: 100%;
    height: 38px;
}
.customer-summary-preview,
.customer-summary-full-text,
.customer-summary-full-comment > div {
    margin-top: 10px;
    color: #27364a;
    line-height: 1.8;
    font-size: 13px;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
.customer-summary-full-comment {
    margin-top: 5px;
}
.customer-summary-full-comment > summary {
    color: #2f80ed;
    cursor: pointer;
    font-size: 12px;
    font-weight: 800;
    width: fit-content;
}
.customer-summary-service,
.customer-summary-call-meta {
    display: block;
    margin-top: 7px;
    color: #8a98a8;
    font-size: 11px;
}
.customer-summary-call-meta {
    color: #64748b;
}
@media (max-width: 600px) {
    .customer-summary-history-topline {
        align-items: center;
    }
    .customer-summary-action {
        width: 34px;
        height: 34px;
        min-height: 34px;
    }
    .customer-summary-meta {
        gap: 5px;
    }
}
/* /V40 customer avatar + rich communication history */

/* V42 customer calls + messages on customer profile */
.customer-communication-history-v42 {
    align-items: stretch;
}
.customer-call-list-v42,
.customer-message-list-v42 {
    display: grid;
    gap: 0;
}
.customer-call-item-v42,
.customer-message-item-v42 {
    position: relative;
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid var(--line);
}
.customer-call-item-v42:last-child,
.customer-message-item-v42:last-child {
    border-bottom: 0;
}
.customer-call-icon-v42,
.customer-message-icon-v42 {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    font-size: 17px;
    font-weight: 900;
    background: #ffffff;
    border: 1.5px solid currentColor;
}
.customer-call-icon-v42.is-answered {
    color: #1abe17;
}
.customer-call-icon-v42.is-missed {
    color: #ef1e1e;
}
.customer-message-icon-v42.is-whatsapp {
    color: #1abe17;
}
.customer-message-icon-v42.is-email {
    color: #2f80ed;
}
.customer-message-icon-v42 svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.customer-call-copy-v42,
.customer-message-copy-v42 {
    min-width: 0;
}
.customer-call-line-v42,
.customer-message-line-v42 {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
}
.customer-call-line-v42 strong,
.customer-message-line-v42 strong {
    color: #1f2937;
    font-size: 13px;
}
.customer-call-copy-v42 small,
.customer-message-copy-v42 > small {
    display: block;
    margin-top: 4px;
    color: var(--muted);
    font-size: 11px;
}
.customer-call-status-v42 {
    border-radius: 999px;
    padding: 3px 8px;
    font-size: 10px;
    font-weight: 800;
}
.customer-call-status-v42.is-answered {
    background: #edfbed;
    color: #169b14;
}
.customer-call-status-v42.is-missed {
    background: #fef2f2;
    color: #ef1e1e;
}
.customer-call-audio-v42 {
    position: relative;
}
.customer-call-audio-v42 > summary {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border: 1.5px solid #2f80ed;
    border-radius: 10px;
    color: #2f80ed;
    background: #fff;
    cursor: pointer;
    list-style: none;
}
.customer-call-audio-v42 > summary::-webkit-details-marker {
    display: none;
}
.customer-call-audio-v42 svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
}
.customer-call-audio-player-v42 {
    position: absolute;
    z-index: 20;
    inset-inline-end: 0;
    top: 40px;
    width: min(310px, 76vw);
    padding: 8px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(15,23,42,.14);
}
.customer-call-audio-player-v42 audio {
    width: 100%;
}
.customer-message-item-v42 {
    grid-template-columns: 36px minmax(0, 1fr);
}
.customer-message-line-v42 > span {
    color: var(--muted);
    font-size: 10px;
}
.customer-message-copy-v42 p {
    margin: 5px 0 0;
    color: #334155;
    font-size: 12px;
    line-height: 1.7;
    overflow-wrap: anywhere;
}
.customer-message-subject-v42 {
    color: #2f80ed !important;
    font-weight: 700;
}
@media(max-width: 700px) {
    .customer-call-item-v42,
    .customer-message-item-v42 {
        grid-template-columns: 32px minmax(0, 1fr);
        gap: 8px;
    }
    .customer-call-audio-v42 {
        grid-column: 2;
        justify-self: start;
    }
    .customer-call-icon-v42,
    .customer-message-icon-v42 {
        width: 30px;
        height: 30px;
        border-radius: 9px;
    }
}
/* /V42 customer calls + messages on customer profile */


/* V45_HIDE_MANUAL_SYNC */
form.call-sync-form, form[action$="/calls/sync"], form[action*="/integrations/ucm/sync"]{display:none!important;}
/* /V45_HIDE_MANUAL_SYNC */
