:root{--surface-0:#f7f6f3;--surface-1:#f1efe8;--surface-2:#fff;--border:#e3e1d9;--text-primary:#1f1e1c;--text-secondary:#5f5e5a;--text-muted:#928f86;--accent:#185fa5;--accent-bg:#e6f1fb;--danger:#a32d2d;--danger-bg:#fcebeb;--success:#3b6d11;--success-bg:#eaf3de;--warning:#854f0b;--warning-bg:#faeeda;--teal:#0f6e56;--purple:#3c3489;--purple-bg:#eeedfe;--radius:10px}*{box-sizing:border-box}body{background:var(--surface-0);color:var(--text-primary);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}p{margin:0}.login-loading{height:100vh;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);text-align:center;flex-direction:column;gap:12px;width:100%;max-width:340px;padding:28px;display:flex}.login-logo{width:32px;height:32px;margin:0 auto 4px}.login-card h1{margin:0;font-size:18px}.login-subtitle{color:var(--text-muted);margin-bottom:8px;font-size:13px}.login-card input{border:1px solid var(--border);background:var(--surface-0);color:var(--text-primary);border-radius:8px;padding:10px 12px;font-size:14px}.login-card button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 12px;font-size:14px;font-weight:600}.login-card button:disabled{opacity:.6;cursor:default}.login-error{color:var(--danger);font-size:13px}.signed-in-bar{color:var(--text-muted);border-bottom:1px solid var(--border);justify-content:flex-end;align-items:center;gap:12px;padding:8px 20px;font-size:12px;display:flex}.signed-in-bar button{border:1px solid var(--border);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:6px;padding:4px 10px;font-size:12px}.app{max-width:900px;margin:0 auto;padding:24px 20px 60px}.app-header{align-items:baseline;gap:10px;margin-bottom:18px;display:flex}.brand{align-items:center;gap:8px;font-size:20px;font-weight:600;display:inline-flex}.brand-mark{width:24px;height:24px}.brand-sub{color:var(--text-muted);font-size:13px}.tab-nav{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;display:flex;overflow-x:auto}.tab-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 14px;font-size:14px}.tab-btn.active{color:var(--text-primary);border-bottom-color:var(--accent);font-weight:600}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px;display:grid}.metric-card{background:var(--surface-1);border-radius:var(--radius);padding:16px}.metric-label{color:var(--text-muted);margin-bottom:4px;font-size:13px}.metric-value{font-size:24px;font-weight:600}.metric-value.success{color:var(--success)}.metric-value.danger{color:var(--danger)}.section-label{color:var(--text-secondary);margin-bottom:8px;font-size:13px}.list{border-top:1px solid var(--border)}.list-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 4px;display:flex}.list-row-main{flex:1;font-size:13px}.list-row-time{color:var(--text-muted);font-size:12px}.chip-row{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.chip{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;padding:6px 12px;font-size:13px}.chip.active{border-color:var(--accent);color:var(--accent)}.call-row{border-bottom:1px solid var(--border);cursor:pointer;padding:12px 4px}.call-row-top{align-items:center;gap:12px;display:flex}.call-row-title{font-size:14px;font-weight:600}.call-row-sub{color:var(--text-secondary);margin-top:2px;font-size:13px}.muted{color:var(--text-muted);font-weight:400}.chevron{color:var(--text-muted);margin-left:auto;font-size:12px;transition:transform .15s}.chevron.open{transform:rotate(180deg)}.call-detail{background:var(--surface-1);border-radius:var(--radius);color:var(--text-secondary);margin-top:12px;padding:12px;font-size:13px}.call-detail-footer{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.btn-row{gap:8px;display:flex}.btn{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);cursor:pointer;padding:6px 12px;font-size:13px}.dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.dot-emergency{background:var(--danger)}.dot-maintenance{background:var(--warning)}.dot-leasing{background:var(--teal)}.dot-payments{background:var(--accent)}.dot-general{background:var(--purple)}.badge{border-radius:var(--radius);padding:3px 10px;font-size:11px;display:inline-block}.badge-success{background:var(--success-bg);color:var(--success)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-info{background:var(--accent-bg);color:var(--accent)}.badge-muted{background:var(--surface-1);color:var(--text-secondary)}.board{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.board-col-header{align-items:center;gap:8px;margin-bottom:10px;font-size:14px;font-weight:600;display:flex}.job-card{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin-bottom:8px;padding:12px}.job-title{margin-bottom:4px;font-size:13px;font-weight:600}.job-sub{color:var(--text-secondary);margin-bottom:8px;font-size:12px}.job-card-footer{justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.job-move-select{border:1px solid var(--border);background:var(--surface-1);color:var(--text-secondary);border-radius:6px;padding:4px 6px;font-size:12px}.lead-row{justify-content:space-between}.card{border:1px solid var(--border);background:var(--surface-2);border-radius:12px;margin-bottom:20px;padding:12px 16px}.contact-row{align-items:center;gap:10px;padding:8px 0;font-size:13px;display:flex}.avatar{background:var(--purple-bg);width:26px;height:26px;color:var(--purple);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.faq-row{padding:6px 0;font-size:13px}.how-steps{flex-direction:column;gap:4px;display:flex}.how-step{border-bottom:1px solid var(--border);gap:14px;padding:14px 0;display:flex}.how-step:last-child{border-bottom:none}.how-step-num{background:var(--accent-bg);width:28px;height:28px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex}.doc-upload-input{margin-bottom:8px;font-size:13px}.doc-upload-status{color:var(--text-muted);margin:8px 0 0;font-size:13px}.doc-upload-list{margin:10px 0 0;padding:0;font-size:13px;list-style:none}.doc-upload-list li{align-items:center;gap:6px;padding:3px 0;display:flex}.doc-upload-check{color:var(--success)}.demo-data-banner{background:var(--accent-bg);color:var(--accent);text-align:center;padding:8px 16px;font-size:13px}.attention-banner{border:1px solid var(--danger);background:var(--danger-bg);border-radius:var(--radius);margin-bottom:20px;padding:12px 16px}.attention-banner-title{color:var(--danger);margin-bottom:8px;font-size:13px;font-weight:600}.attention-row{align-items:center;gap:10px;padding:4px 0;font-size:13px;display:flex}.attention-row-main{flex:1}.attention-all-clear{border:1px solid var(--border);background:var(--surface-1);border-radius:var(--radius);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:20px;padding:12px 16px;font-size:13px;display:flex}.empty-state{text-align:center;color:var(--text-muted);padding:32px 12px;font-size:13px}.search-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);width:100%;color:var(--text-primary);margin-bottom:12px;padding:9px 12px;font-size:13px}.lead-row{flex-wrap:wrap;gap:8px 16px}.lead-row-actions{align-items:center;gap:8px;display:flex}@media (width<=640px){.app{padding:16px 14px 40px}.app-header{flex-direction:column;align-items:flex-start;gap:2px}.metric-grid{grid-template-columns:repeat(2,1fr)}.board{grid-template-columns:1fr}.call-row-top{flex-wrap:wrap}.call-detail-footer{flex-direction:column;align-items:stretch;gap:10px}.btn-row{flex-wrap:wrap}.lead-row{flex-direction:column;align-items:flex-start}.signed-in-bar{flex-wrap:wrap;padding:8px 14px}}
