:root,:root[data-theme=light]{--bg:#f5f5f7;--panel:#fffc;--surface:#fff;--text:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;--brand:#0071e3;--shadow:0 8px 30px #0000000d;--surface-strong:#fff;--text-soft:#3a3a3d}:root[data-theme=dark]{--bg:#101112;--panel:#1c1c1ecc;--surface:#171719;--text:#f5f5f7;--muted:#a1a1a6;--line:#3a3a3c;--brand:#2997ff;--shadow:0 12px 30px #00000040;--surface-strong:#1f2023;--text-soft:#d6d6db}*{box-sizing:border-box}body{letter-spacing:-.01em;background:radial-gradient(circle at 20% 0%, #fffc, transparent 42%), radial-gradient(circle at 82% -4%, #0071e31c, transparent 34%), var(--bg);min-height:100vh;color:var(--text);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-family:SF Pro Display,SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.45;overflow-x:hidden}#root{min-height:100vh}::selection{background:color-mix(in srgb, var(--brand), transparent 72%)}.app-shell{max-width:1180px;margin:0 auto;padding:1.6rem 1.25rem 2.4rem;overflow-x:clip}.top-bar{justify-content:space-between;align-items:center;gap:1.25rem;margin-bottom:1.4rem;padding:.35rem .1rem;display:flex}.brand{align-items:center;gap:.85rem;display:flex}.brand h1{letter-spacing:-.02em;color:#000;margin:0;font-size:1.2rem;line-height:1.2}.brand p{color:#000;margin:.25rem 0 0;font-size:.93rem}.brand-logo{object-fit:contain;background:0 0;width:clamp(150px,20vw,224px);height:auto;max-height:84px}.theme-toggle,.primary-button,.ghost-button{border:1px solid var(--line);cursor:pointer;border-radius:999px;padding:.62rem 1.05rem;font-weight:500;transition:transform .22s,background-color .24s,box-shadow .24s,border-color .24s,color .2s}.theme-toggle,.ghost-button{background:color-mix(in srgb, var(--surface), transparent 12%);color:var(--text);-webkit-backdrop-filter:saturate(180%)blur(16px);backdrop-filter:saturate(180%)blur(16px)}.theme-toggle:hover,.ghost-button:hover,.primary-button:hover{transform:translateY(-1px);box-shadow:0 10px 18px #0000001a}.theme-toggle:active,.ghost-button:active,.primary-button:active{transform:translateY(0)}.theme-toggle:focus-visible,.ghost-button:focus-visible,.primary-button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--brand), transparent 78%);outline:none}.primary-button{background:var(--brand);color:#fffefe;border-color:#0000}.login-card,.dashboard{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:saturate(180%)blur(22px);backdrop-filter:saturate(180%)blur(22px);box-shadow:var(--shadow);border-radius:1.4rem;padding:1.25rem;animation:.35s fadeUp}.login-card{max-width:460px;margin:4rem auto 0}.login-card h2,.dashboard h2,.dashboard h3{letter-spacing:-.02em;margin-top:0}form{flex-direction:column;gap:.65rem;display:flex}input,select{border:1px solid var(--line);background:var(--surface-strong,var(--surface));color:var(--text);border-radius:.85rem;min-width:0;padding:.72rem .78rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background-color .2s}input:focus,select:focus{border-color:color-mix(in srgb, var(--brand), transparent 50%);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand), transparent 82%);outline:none}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, color-mix(in srgb, var(--muted), var(--text) 30%) 50%), linear-gradient(135deg, color-mix(in srgb, var(--muted), var(--text) 30%) 50%, transparent 50%);cursor:pointer;background-position:calc(100% - 1.05rem) calc(50% + 1px),calc(100% - .75rem) calc(50% + 1px);background-repeat:no-repeat;background-size:7px 7px,7px 7px;padding-right:2.35rem}select:hover{border-color:color-mix(in srgb, var(--brand), var(--line) 72%);background-color:color-mix(in srgb, var(--surface), #fff 6%)}.subtle{color:var(--muted);line-height:1.4}.error{color:#ef4444;margin:.2rem 0}.welcome-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.admin-badge{background:color-mix(in srgb, var(--brand), transparent 86%);border:1px solid color-mix(in srgb, var(--brand), transparent 58%);color:var(--text);border-radius:999px;margin-left:.65rem;padding:.22rem .58rem;font-size:.72rem;display:inline-block}.modules-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.95rem;margin-top:1.1rem;display:grid}.content-card,.module-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1.1rem;padding:1rem;transition:transform .22s,box-shadow .22s,border-color .22s;animation:.35s fadeUp}.module-card:hover,.content-card:hover{border-color:color-mix(in srgb, var(--brand), var(--line) 72%);transform:translateY(-2px);box-shadow:0 14px 28px #0000001a}.content-card{margin-top:1.15rem}.module-card h3{margin:0}.module-card p{color:var(--muted);min-height:2.5rem;margin:.58rem 0 .82rem}.analytics-page{flex-direction:column;gap:.8rem;margin-top:1.15rem;display:flex}.analytics-header p{margin-top:.3rem}.analytics-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.analytics-kpi-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;padding:.85rem;transition:transform .22s,box-shadow .22s,border-color .22s}.analytics-kpi-card strong{margin:.25rem 0 .2rem;font-size:1.3rem;display:block}.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.analytics-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;padding:.85rem;transition:transform .22s,box-shadow .22s,border-color .22s}.analytics-kpi-card:hover,.analytics-card:hover,.projects-list-panel:hover,.projects-detail-panel:hover,.chat-sidebar:hover,.chat-main:hover,.project-create-form:hover,.project-requests-panel:hover{border-color:color-mix(in srgb, var(--brand), var(--line) 75%);transform:translateY(-2px);box-shadow:0 14px 28px #0000001c}.analytics-card h4{margin:0 0 .4rem}.analytics-money-pool{background:linear-gradient(135deg, color-mix(in srgb, var(--brand), transparent 92%), var(--surface))}.analytics-money-value{letter-spacing:-.02em;margin:.25rem 0 .35rem;font-size:clamp(1.8rem,3vw,2.6rem);display:block}.analytics-money-form{grid-template-columns:1fr auto;align-items:center;gap:.5rem;margin-top:.6rem;display:grid}.analytics-card.full-width{grid-column:1/-1}.analytics-progress-track{background:color-mix(in srgb, var(--line), transparent 15%);border-radius:999px;width:100%;height:9px;margin:.35rem 0 .5rem;overflow:hidden}.analytics-progress-track.small{height:8px;margin:0}.analytics-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#5ac8fa,#007aff);height:100%}.analytics-progress-fill.project{background:linear-gradient(90deg,#4f8cff,#365ff8)}.analytics-progress-fill.crm{background:linear-gradient(90deg,#34c759,#30b84f)}.analytics-bars{flex-direction:column;gap:.45rem;display:flex}.analytics-bar-row{grid-template-columns:122px 1fr auto;align-items:center;gap:.5rem;display:grid}.analytics-timeline{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:.35rem;min-height:150px;margin:.45rem 0;display:grid}.analytics-day{flex-direction:column;align-items:center;gap:.35rem;display:flex}.analytics-day-bars{align-items:end;gap:.2rem;min-height:116px;display:flex}.analytics-day-bar{border-radius:999px;width:10px}.analytics-day-bar.leads{background:#34c759}.analytics-day-bar.projects{background:#0a84ff}.analytics-day-bar.chat{background:#af52de}.analytics-team-list{margin:0;padding:0;list-style:none}.analytics-team-list li{border-bottom:1px solid var(--line);grid-template-columns:32px 1fr repeat(4,auto);align-items:center;gap:.6rem;padding:.52rem 0;display:grid}.analytics-team-list li:last-child{border-bottom:0}.page-nav{flex-wrap:wrap;gap:.62rem;margin-top:1rem;display:flex}.active-nav{border-color:color-mix(in srgb, var(--brand), transparent 56%);background:color-mix(in srgb, var(--brand), transparent 88%);color:color-mix(in srgb, var(--brand), var(--text) 28%)}.unread-dot{background:#ff3b30;border-radius:999px;width:8px;height:8px;margin-left:.45rem;display:inline-block;box-shadow:0 0 0 2px #ff3b3030}.inline-form{grid-template-columns:minmax(180px,1fr) 170px auto;gap:.62rem;margin:.85rem 0 1rem;display:grid}.crm-upload-form{border:1px solid var(--line);background:color-mix(in srgb, var(--surface), transparent 10%);border-radius:.95rem;margin:1rem 0;padding:.9rem}.crm-upload-grid{grid-template-columns:repeat(2,minmax(240px,1fr));gap:.8rem;margin-top:.9rem;display:grid}.crm-upload-location-row{grid-template-columns:auto minmax(180px,260px);align-items:center;gap:.5rem;margin-top:.65rem;display:grid}.crm-fab{z-index:30;position:fixed;bottom:1.3rem;right:1.3rem}.crm-modal-backdrop{z-index:40;background:#0006;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.crm-modal{border:1px solid var(--line);background:var(--panel);width:min(920px,100%);max-height:90vh;box-shadow:var(--shadow);border-radius:1rem;padding:.95rem;overflow:auto}.crm-modal-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.crm-modal-header-actions{align-items:center;gap:.5rem;display:inline-flex}.crm-modal-header h4{margin:0}.crm-details-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:.4rem 1rem;margin-top:.8rem;display:grid}.crm-details-grid p{margin:.15rem 0}.crm-current-status-line{align-items:center;gap:.45rem;display:flex}.crm-current-status-pill{padding:.28rem .7rem;font-size:.9rem;box-shadow:0 0 0 2px #ffffff1a}.crm-status-history{margin-top:.9rem}.crm-status-history h5{margin:0 0 .5rem}.request-form-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:.5rem;margin-top:.6rem;display:grid}.request-qualification{flex-wrap:wrap;gap:.6rem;margin:.6rem 0;display:flex}.request-qualification label{align-items:center;gap:.35rem;display:inline-flex}.crm-details-modal{flex-direction:column;display:flex;overflow:hidden}.crm-details-modal .crm-status-history{flex:1;min-height:0}.crm-details-modal .crm-status-history .item-list{max-height:34vh;padding-right:.2rem;overflow-y:auto}.crm-upload-form h4{margin:0 0 .4rem}.crm-leads-list{margin-top:1.2rem}.crm-location-tabs{flex-wrap:wrap;gap:.5rem;margin-top:.9rem;margin-bottom:.45rem;display:flex}.crm-lead-search{width:min(460px,100%);margin-bottom:.55rem}.crm-selection-actions{justify-content:space-between;align-items:center;gap:.65rem;margin-top:.45rem;display:flex}.crm-selection-actions label{align-items:center;gap:.45rem;font-size:.92rem;display:inline-flex}.crm-select-checkbox{flex:none;width:18px;height:18px}.called-flag{color:#1f7a34;background:#34c75922;border:1px solid #34c75966;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:.2rem .55rem;font-size:.76rem;font-weight:700;display:inline-flex}.crm-pagination-row{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.55rem;display:flex}.crm-pagination-actions{gap:.5rem;display:inline-flex}.crm-lead-row{scrollbar-width:thin;border:1px solid var(--line);border-radius:.8rem;flex-wrap:nowrap;align-items:center;gap:.7rem;margin-bottom:.55rem;transition:background-color .2s,border-color .2s,transform .2s;overflow-x:auto;padding:.7rem .75rem!important}.crm-lead-row:hover{transform:translateY(-1px)}.crm-lead-details{white-space:nowrap;flex:1;align-items:center;gap:.55rem;min-width:max-content;display:flex}.crm-lead-details .subtle{text-overflow:clip;overflow:visible}.crm-row-new{background:#93a0b51a;border-color:#93a0b54d}.crm-row-rejected{background:#ff6b6b1a;border-color:#ff6b6b4d}.crm-row-did-not-answer{background:#f8b84e1a;border-color:#f8b84e4d}.crm-row-said-yes{background:#32c7661a;border-color:#32c7664d}.crm-row-DNC{background:#ff8f4e1a;border-color:#ff8f4e4d}.crm-row-other{background:#b98cff1a;border-color:#b98cff4d}.crm-actions{flex-flow:row;align-items:center;gap:.45rem;width:auto;display:flex}.crm-actions select,.crm-actions input{min-width:140px}.crm-actions input{max-width:190px}.crm-call-button{justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;padding:0;text-decoration:none;display:inline-flex}.crm-call-button svg{width:18px;height:18px}.crm-info-button{justify-content:center;align-items:center;width:42px;min-width:42px;height:42px;padding:0;display:inline-flex}.crm-info-button svg{width:18px;height:18px}.item-list{margin:0;padding:0;list-style:none}.item-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:.74rem 0;display:flex}.item-list li:last-child{border-bottom:0}.status-pill{border:1px solid #0000;border-radius:999px;align-items:center;padding:.18rem .56rem;font-size:.78rem;font-weight:600;display:inline-flex}.status-new{color:#93a0b5;background:#93a0b522;border-color:#93a0b544}.status-rejected{color:#ff6b6b;background:#ff6b6b1f;border-color:#ff6b6b55}.status-did-not-answer{color:#f8b84e;background:#f8b84e1f;border-color:#f8b84e55}.status-said-yes{color:#32c766;background:#32c7661f;border-color:#32c76655}.status-DNC{color:#ff8f4e;background:#ff8f4e1f;border-color:#ff8f4e55}.status-other{color:#b98cff;background:#b98cff1f;border-color:#b98cff55}.projects-page{flex-direction:column;gap:.8rem;display:flex}.project-requests-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--surface), transparent 8%);border-radius:.9rem;padding:.75rem}.project-requests-panel h4{margin:0 0 .55rem}.project-request-actions{gap:.45rem;display:inline-flex}.request-details-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:.45rem 1rem;margin-top:.7rem;display:grid}.request-details-grid p{margin:.1rem 0}.project-create-form{border:1px solid var(--line);background:color-mix(in srgb, var(--surface), transparent 8%);border-radius:.9rem;padding:.8rem}.project-create-form h4{margin:0 0 .55rem}.project-create-grid{grid-template-columns:repeat(3,minmax(170px,1fr));gap:.55rem;display:grid}.project-assignee-row{flex-wrap:wrap;gap:.7rem;margin:.6rem 0;display:flex}.project-client-picker{gap:.5rem;margin-top:.55rem;display:grid}.project-client-card{border:1px solid var(--line);background:color-mix(in srgb, var(--surface), transparent 8%);border-radius:.8rem;margin:.65rem 0;padding:.65rem .75rem}.project-client-card h5{margin:0 0 .35rem}.project-client-card p{margin:.2rem 0}.project-client-change{grid-template-columns:1fr 1fr auto;gap:.45rem;margin-top:.55rem;display:grid}.project-assignee-row label{align-items:center;gap:.35rem;display:inline-flex}.projects-filter-row{grid-template-columns:repeat(4,minmax(150px,1fr));gap:.55rem;display:grid}.projects-layout{grid-template-columns:340px 1fr;gap:.8rem;display:grid}.projects-list-panel,.projects-detail-panel{border:1px solid var(--line);background:color-mix(in srgb, var(--surface), transparent 6%);border-radius:.9rem;padding:.7rem;transition:transform .22s,box-shadow .22s,border-color .22s}.project-list-item{border-bottom:1px solid var(--line)}.project-select-button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;gap:.25rem;padding:.4rem .2rem;transition:background-color .18s,transform .18s;display:grid}.project-select-button:hover{background:color-mix(in srgb, var(--brand), transparent 92%);transform:translate(2px)}.project-title-row{justify-content:space-between;align-items:center;gap:.6rem;display:flex}.project-title-row h4{margin:0}.project-header-actions{flex-wrap:wrap;gap:.45rem;display:inline-flex}.project-edit-grid{grid-template-columns:repeat(5,minmax(130px,1fr));gap:.55rem;margin:.6rem 0;display:grid}.project-section{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.7rem}.project-section h5{margin:0 0 .45rem}.project-inline-form{grid-template-columns:1fr 180px auto;gap:.5rem;margin-bottom:.5rem;display:grid}.mention-input-wrap{grid-template-columns:1fr auto;display:grid;position:relative}.mention-input-wrap input{grid-column:1/2}.mention-input-wrap>.ghost-button{grid-column:2/3}.mention-suggestions{border:1px solid var(--line);background:var(--panel);width:min(380px,100%);max-height:220px;box-shadow:var(--shadow);z-index:20;border-radius:.75rem;padding:.3rem;position:absolute;top:calc(100% + .2rem);left:0;overflow-y:auto}.mention-suggestion-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.55rem;justify-content:space-between;gap:.55rem;padding:.38rem .5rem;display:flex}.mention-suggestion-item:hover{background:color-mix(in srgb, var(--brand), transparent 88%)}.project-images-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.45rem;margin-top:.6rem;display:grid}.project-image-button{cursor:pointer;background:0 0;border:0;padding:0}.project-images-grid img{object-fit:cover;border:1px solid var(--line);border-radius:.55rem;width:100%;height:90px}.project-image-modal{width:min(900px,100%)}.project-image-preview{object-fit:contain;border:1px solid var(--line);border-radius:.65rem;width:100%;max-height:75vh}.project-prompt-box{border:1px solid var(--line);background:var(--surface);width:100%;min-height:380px;color:var(--text);resize:vertical;border-radius:.7rem;padding:.75rem;line-height:1.45}.project-activity-list{max-height:210px;overflow-y:auto}.mention-chip{color:color-mix(in srgb, var(--brand), var(--text) 35%)}.project-status-Planning{background:#9aa6bb1f;border-color:#9aa6bb55}.project-status-In-Progress{background:#2997ff1f;border-color:#2997ff55}.project-status-Blocked{background:#ff6b6b1f;border-color:#ff6b6b55}.project-status-In-Review{background:#f8b84e1f;border-color:#f8b84e55}.project-status-Done{background:#32c7661f;border-color:#32c76655}.chat-page{min-height:62vh}.chat-layout{grid-template-columns:280px 1fr;gap:.7rem;display:grid}.chat-sidebar,.chat-main{border:1px solid var(--line);background:color-mix(in srgb, var(--surface), transparent 6%);border-radius:.9rem;padding:.7rem;transition:transform .22s,box-shadow .22s,border-color .22s}.chat-sidebar{flex-direction:column;gap:.45rem;display:flex}.chat-user-row{grid-template-columns:1fr auto;align-items:center;gap:.4rem;display:grid}.chat-thread-button{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text);text-align:left;cursor:pointer;border-radius:.75rem;padding:.55rem .65rem}.active-chat-thread{border-color:color-mix(in srgb, var(--brand), transparent 55%);background:color-mix(in srgb, var(--brand), transparent 90%)}.chat-call-button{justify-content:center;align-items:center;width:38px;min-width:38px;height:38px;padding:0;text-decoration:none;display:inline-flex}.chat-call-button svg{width:16px;height:16px}.chat-main{flex-direction:column;gap:.6rem;display:flex}.chat-header{border-bottom:1px solid var(--line);padding-bottom:.45rem}.chat-messages{flex-direction:column;flex:1;gap:.45rem;min-height:340px;max-height:54vh;display:flex;overflow-y:auto}.chat-message{border:1px solid var(--line);background:var(--surface);word-break:break-word;border-radius:.8rem;max-width:72%;padding:.45rem .55rem;animation:.25s fadeIn}.chat-message p{margin:.15rem 0}.chat-message-author{font-weight:600}.own-chat-message{background:color-mix(in srgb, var(--brand), transparent 90%);border-color:color-mix(in srgb, var(--brand), transparent 58%);margin-left:auto}.chat-composer{grid-template-columns:1fr auto;align-items:center;gap:.5rem;display:grid}.chat-composer .mention-input-wrap{width:100%;min-width:0}.chat-composer .mention-input-wrap input{width:100%;display:block}.chat-composer>.primary-button{min-width:94px;margin-left:0}.analytics-page,.projects-page,.chat-page{animation:.35s fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:.35}to{opacity:1}}@media (width<=980px){.projects-layout{grid-template-columns:1fr}.project-create-grid,.projects-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.app-shell{padding-top:1rem;padding-left:.8rem;padding-right:.8rem}.top-bar,.welcome-row{flex-direction:column;align-items:flex-start}.brand{flex-wrap:wrap;gap:.65rem;width:100%}.brand h1{font-size:1.02rem}.brand p{font-size:.86rem}.inline-form{grid-template-columns:1fr}.crm-actions{flex-wrap:wrap;width:100%}.crm-actions select,.crm-actions input{width:100%;min-width:0;max-width:100%}.crm-lead-row{flex-wrap:wrap;align-items:flex-start}.crm-lead-details{white-space:normal;flex-wrap:wrap;width:100%}.crm-selection-actions,.crm-pagination-row{flex-direction:column;align-items:flex-start}.crm-location-tabs .ghost-button{flex:120px}.crm-upload-grid,.crm-details-grid,.project-create-grid,.projects-filter-row,.projects-layout,.chat-layout,.project-edit-grid,.project-inline-form,.request-form-grid,.request-details-grid,.project-client-change{grid-template-columns:1fr}.crm-fab{bottom:1rem;right:1rem}.item-list li{flex-direction:column;align-items:flex-start}.analytics-kpis{grid-template-columns:1fr 1fr}.analytics-grid,.analytics-money-form{grid-template-columns:1fr}.analytics-bar-row{grid-template-columns:98px 1fr auto}.analytics-team-list li{grid-template-columns:28px 1fr;gap:.35rem .55rem}.chat-message{max-width:86%}}@media (width<=520px){.analytics-kpis{grid-template-columns:1fr}.analytics-bar-row{grid-template-columns:88px 1fr auto}.chat-composer{grid-template-columns:1fr}.chat-composer>.primary-button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
