@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";:root{--bg-primary:#f9fafb;--bg-secondary:#fff;--bg-tertiary:#f8fafc;--border-light:#eaedf0;--border-muted:#dfe3e7;--shadow-sm:0 2px 8px -2px #0f172a0a;--shadow-md:0 4px 16px -4px #0f172a0f;--shadow-lg:0 8px 32px -8px #0f172a14;--text-primary:#1f242e;--text-secondary:#657081;--text-muted:#9da4af;--primary:#256af4;--primary-glow:#256af414;--accent-teal:#1ab399;--accent-purple:#7f3cdd;--color-backlog-bg:#fff4e6;--color-backlog-txt:#a5360d;--color-active-bg:#e8fcf2;--color-active-txt:#085e41;--color-danger-bg:#fff0f0;--color-danger-txt:#c91d1d;--color-bought-bg:#ebf5ff;--color-bought-txt:#004d99;--color-vacant-bg:#fff4e6;--color-vacant-txt:#995900;--color-contract-bg:#f5edfd;--color-contract-txt:#5912a1;--color-occupied-bg:#e8fcf2;--color-occupied-txt:#085e41;--color-sold-bg:#f2f2f2;--color-sold-txt:#595959;--color-meeting-bg:#e9fcf9;--color-meeting-txt:#107060;--color-cycle-bg:#f4eefc;--color-cycle-txt:#4f1b98;--color-reference-bg:#f0f2f4;--color-reference-txt:#4c5767;--color-tenant-pending-bg:#ebf8ff;--color-tenant-pending-txt:#069;--color-tenant-occupied-bg:#e8fcf2;--color-tenant-occupied-txt:#085e41;--color-tenant-ex-bg:#fff0f0;--color-tenant-ex-txt:#c91d1d;--color-potential-flagged-bg:#fff4e6;--color-potential-flagged-txt:#a5360d;--color-potential-analyzed-bg:#f5edfd;--color-potential-analyzed-txt:#5912a1;--color-potential-toured-bg:#e6f7ff;--color-potential-toured-txt:#069;--color-potential-negotiations-bg:#fff0f0;--color-potential-negotiations-txt:#c91d1d;--color-potential-bought-bg:#e8fcf2;--color-potential-bought-txt:#085e41}h1,h2,h3,h4,.brand-title{letter-spacing:-.01em;font-family:Outfit,sans-serif}body,button,input,textarea,select,.card-text{letter-spacing:-.005em;font-family:Inter,sans-serif}.font-heavy{font-weight:800}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-regular{font-weight:400}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-muted);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.app-container{background-color:var(--bg-primary);width:100vw;height:100dvh;display:flex;overflow:hidden}.sidebar-container{z-index:100;flex-shrink:0;width:80px;height:100%;position:relative}.sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border-light);z-index:100;box-sizing:border-box;flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:flex-start;width:80px;height:100%;padding:24px 0;transition:width .25s cubic-bezier(.16,1,.3,1),box-shadow .25s;display:flex;position:absolute;top:0;left:0;overflow:hidden}.sidebar:hover{width:250px;box-shadow:8px 0 30px #0f172a26}.sidebar-top{box-sizing:border-box;flex-direction:column;flex:1;align-items:flex-start;gap:28px;width:100%;min-height:0;padding:0 16px;display:flex}.brand-logo{cursor:pointer;filter:drop-shadow(0 3px 6px #0f172a1f);box-sizing:border-box;background:0 0;justify-content:flex-start;align-items:center;gap:14px;width:100%;height:44px;padding:0 2px;transition:transform .2s;display:flex}.brand-logo img{flex-shrink:0}.brand-name{color:var(--text-primary);white-space:nowrap;opacity:0;pointer-events:none;font-family:Outfit,sans-serif;font-size:1.1rem;font-weight:800;transition:opacity .2s,transform .2s;transform:translate(-6px)}.sidebar:hover .brand-name{opacity:1;transform:translate(0)}.brand-logo:hover{transform:scale(1.03)}.nav-links{box-sizing:border-box;flex-direction:column;flex:1;align-items:flex-start;gap:3px;width:100%;padding:4px 0;display:flex;overflow:hidden auto}.nav-links::-webkit-scrollbar{width:3px}.nav-links::-webkit-scrollbar-thumb{background:0 0;border-radius:3px}.nav-links:hover::-webkit-scrollbar-thumb{background:var(--border-light,#ffffff26)}.nav-links::-webkit-scrollbar-track{background:0 0}.nav-section-header{border-top:1px solid var(--border-light,#ffffff14);box-sizing:border-box;width:100%;margin-top:6px;padding:8px 11px 2px}.nav-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary,#64748b);white-space:nowrap;opacity:0;font-size:.68rem;font-weight:700;transition:opacity .2s,transform .2s;display:block;transform:translate(-6px)}.sidebar:hover .nav-section-title{opacity:1;transform:translate(0)}.nav-item{width:100%;height:38px;color:var(--text-secondary);cursor:pointer;text-align:left;box-sizing:border-box;background:0 0;border:none;border-radius:8px;justify-content:flex-start;align-items:center;gap:14px;padding:0 11px;transition:background-color .2s,color .2s;display:flex}.nav-item svg{flex-shrink:0;width:22px;height:22px}.nav-label{white-space:nowrap;opacity:0;color:inherit;font-size:.85rem;font-weight:600;transition:opacity .2s,transform .2s;transform:translate(-6px)}.sidebar:hover .nav-label{opacity:1;transform:translate(0)}.nav-item:hover,.nav-item.active{color:var(--primary);background-color:var(--primary-glow)}.sidebar-bottom{box-sizing:border-box;flex-direction:column;align-items:flex-start;gap:12px;width:100%;padding:0 16px;display:flex}.user-profile-badge{box-sizing:border-box;border-radius:10px;align-items:center;gap:14px;width:100%;padding:4px 2px;display:flex;overflow:hidden}.avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.8rem;font-weight:700;display:flex}.user-info{opacity:0;white-space:nowrap;flex-direction:column;transition:opacity .2s,transform .2s;display:flex;overflow:hidden;transform:translate(-6px)}.sidebar:hover .user-info{opacity:1;transform:translate(0)}.user-email{color:var(--text-primary);text-overflow:ellipsis;max-width:160px;font-size:.8rem;font-weight:600;overflow:hidden}.online-users{flex-direction:column;align-items:center;gap:12px;display:flex}.avatar{background-color:var(--bg-tertiary);border:2px solid var(--bg-secondary);width:38px;height:38px;box-shadow:var(--shadow-sm);color:var(--text-primary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:flex;position:relative}.avatar.online:after{content:"";background-color:var(--accent-teal);border:2px solid var(--bg-secondary);border-radius:50%;width:10px;height:10px;position:absolute;bottom:0;right:0}.main-wrapper{flex-direction:column;flex:1;height:100%;display:flex;overflow:hidden}.header-bar{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-light);flex-shrink:0;justify-content:space-between;align-items:center;height:70px;padding:0 24px;display:flex}.header-left{align-items:center;gap:24px;display:flex}.header-title-container{flex-direction:column;display:flex}.sub-brand-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.brand-title{color:var(--text-primary);font-size:1.25rem;font-weight:700}.search-container{width:320px;position:relative}.search-input{background-color:var(--bg-tertiary);border:1px solid var(--border-light);width:100%;height:38px;color:var(--text-primary);border-radius:8px;outline:none;padding:0 16px 0 36px;font-size:.875rem;transition:all .2s}.search-input:focus{border-color:var(--border-muted);background-color:var(--bg-secondary);box-shadow:var(--shadow-sm)}.search-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.header-right{align-items:center;gap:16px;display:flex}.btn-primary{background-color:var(--primary);color:#fff;cursor:pointer;height:38px;box-shadow:var(--shadow-sm);border:none;border-radius:8px;align-items:center;gap:8px;padding:0 16px;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.btn-primary:hover{box-shadow:var(--shadow-md);background-color:#0d59f2}.header-user-badge{align-items:center;gap:8px;display:flex}.workspace-grid{flex-direction:row;flex:1;display:flex;overflow:hidden}.kanban-container{flex-direction:column;flex:1;display:flex;overflow:hidden}.kanban-board{flex:1;align-items:flex-start;gap:24px;padding:24px;display:flex;overflow:auto hidden}.kanban-column{background-color:var(--bg-tertiary);border:1px solid var(--border-light);width:320px;max-height:100%;box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;flex-shrink:0;transition:background-color .2s,border-style .2s;display:flex;overflow:visible}.kanban-column.drag-over{background-color:var(--bg-tertiary);border:2px dotted var(--primary)}.column-header{border-bottom:1px solid var(--border-light);background-color:var(--bg-secondary);justify-content:space-between;align-items:center;padding:16px;display:flex}.column-title-wrapper{align-items:center;gap:8px;display:flex}.column-title{color:var(--text-primary);font-size:.95rem;font-weight:700}.column-badge{border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:700}.badge-backlog{background-color:var(--color-backlog-bg);color:var(--color-backlog-txt)}.badge-active{background-color:var(--color-active-bg);color:var(--color-active-txt)}.badge-bought{background-color:var(--color-bought-bg);color:var(--color-bought-txt)}.badge-vacant{background-color:var(--color-vacant-bg);color:var(--color-vacant-txt)}.badge-contract{background-color:var(--color-contract-bg);color:var(--color-contract-txt)}.badge-occupied{background-color:var(--color-occupied-bg);color:var(--color-occupied-txt)}.badge-sold{background-color:var(--color-sold-bg);color:var(--color-sold-txt)}.badge-meeting{background-color:var(--color-meeting-bg);color:var(--color-meeting-txt)}.badge-cycle{background-color:var(--color-cycle-bg);color:var(--color-cycle-txt)}.badge-reference{background-color:var(--color-reference-bg);color:var(--color-reference-txt)}.badge-tenant-pending{background-color:var(--color-tenant-pending-bg);color:var(--color-tenant-pending-txt)}.badge-tenant-occupied{background-color:var(--color-tenant-occupied-bg);color:var(--color-tenant-occupied-txt)}.badge-tenant-ex{background-color:var(--color-tenant-ex-bg);color:var(--color-tenant-ex-txt)}.badge-potential-flagged{background-color:var(--color-potential-flagged-bg);color:var(--color-potential-flagged-txt)}.badge-potential-analyzed{background-color:var(--color-potential-analyzed-bg);color:var(--color-potential-analyzed-txt)}.badge-potential-toured{background-color:var(--color-potential-toured-bg);color:var(--color-potential-toured-txt)}.badge-potential-negotiations{background-color:var(--color-potential-negotiations-bg);color:var(--color-potential-negotiations-txt)}.badge-potential-bought{background-color:var(--color-potential-bought-bg);color:var(--color-potential-bought-txt)}.delete-card-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;font-size:.95rem;transition:all .2s;display:flex}.delete-card-btn:hover{color:var(--color-danger-txt)!important;background-color:var(--color-danger-bg)!important}.cards-container{flex-direction:column;flex:1;gap:12px;min-height:150px;padding:16px;display:flex;overflow-y:auto}:is(.cards-container:has(.dragging),.kanban-column:has(.dragging)){overflow:visible!important}.kanban-card{background-color:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);cursor:grab;-webkit-user-select:none;user-select:none;border-radius:8px;flex-direction:column;flex-shrink:0;gap:12px;padding:18px;transition:all .2s;display:flex;position:relative;overflow:hidden}.kanban-card:hover{border-color:var(--border-muted);box-shadow:var(--shadow-md);transform:translateY(-2px)}.kanban-card.selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.kanban-card.dragging{opacity:.8;cursor:grabbing;border-color:var(--primary);z-index:9999;position:relative;transform:rotate(2deg)scale(1.02);box-shadow:0 10px 24px #0f172a1a}.card-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.card-tag{text-transform:uppercase;border-radius:4px;padding:2px 6px;font-size:.7rem;font-weight:700}.card-title{color:var(--text-primary);margin-bottom:4px;font-size:.9rem;font-weight:700}.card-address{color:var(--text-secondary);margin-bottom:12px;font-size:.8rem}.card-financials{border-top:1px solid var(--border-light);gap:16px;padding-top:10px;font-size:.8rem;display:flex}.financial-item{flex-direction:column;display:flex}.financial-label{color:var(--text-muted);text-transform:uppercase;font-size:.7rem}.financial-value{color:var(--text-primary);font-weight:600}.activity-feed-panel{background-color:var(--bg-secondary);border-left:1px solid var(--border-light);flex-direction:column;flex-shrink:0;width:310px;display:flex;overflow:hidden}.panel-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.panel-title{color:var(--text-primary);font-size:1rem;font-weight:700}.feed-items{flex-direction:column;flex:1;gap:20px;padding:20px;display:flex;overflow-y:auto}.feed-item{gap:12px;font-size:.825rem;display:flex}.feed-avatar{background-color:var(--bg-tertiary);width:28px;height:28px;color:var(--primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.feed-content{flex-direction:column;gap:4px;display:flex}.feed-text{color:var(--text-primary)}.feed-user{font-weight:600}.feed-time{color:var(--text-muted);font-size:.75rem}.detail-panel{background-color:var(--bg-secondary);border-left:1px solid var(--border-light);width:480px;box-shadow:var(--shadow-lg);z-index:5;flex-direction:column;flex-shrink:0;transition:transform .3s ease-out,width .3s ease-out,opacity .3s ease-out;display:flex;overflow:hidden}.detail-panel.closed{opacity:0;border-left:none;width:0;transform:translate(100%)}.detail-panel-banner{color:#fff;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.detail-panel-banner.backlog{background:linear-gradient(135deg,#da7d0b,#b84014)}.detail-panel-banner.active{background:linear-gradient(135deg,#169c86,#0a7652)}.detail-panel-banner.status-bought{background:linear-gradient(135deg,#1173d4,#1481b8)}.detail-panel-banner.status-vacant{background:linear-gradient(135deg,#da840b,#b85814)}.detail-panel-banner.status-contract-review{background:linear-gradient(135deg,#641dc9,#361fad)}.detail-panel-banner.status-occupied{background:linear-gradient(135deg,#169c86,#0a7652)}.detail-panel-banner.status-sold{background:linear-gradient(135deg,#67737e,#505962)}.detail-panel-banner.status-every-meeting{background:linear-gradient(135deg,#169c86,#0a7652)}.detail-panel-banner.status-scheduled-cycle{background:linear-gradient(135deg,#641dc9,#361fad)}.detail-panel-banner.status-reference-only{background:linear-gradient(135deg,#67737e,#505962)}.detail-panel-banner.status-applicant-pending-tour{background:linear-gradient(135deg,#1193d4,#149cb8)}.detail-panel-banner.status-lease-signed-current-occupant{background:linear-gradient(135deg,#169c86,#0a7652)}.detail-panel-banner.status-evicted-moved-out{background:linear-gradient(135deg,#c91d2b,#ad1f4e)}.detail-panel-banner.status-flagged-for-discussion{background:linear-gradient(135deg,#da7d0b,#b84014)}.detail-panel-banner.status-to-be-analyzed{background:linear-gradient(135deg,#641dc9,#361fad)}.detail-panel-banner.status-to-be-toured{background:linear-gradient(135deg,#1193d4,#149cb8)}.detail-panel-banner.status-offer-negotiations{background:linear-gradient(135deg,#c91d2b,#ad1f4e)}.status-badge{color:#fff;text-transform:uppercase;background-color:#fff3;border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:700}.close-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.5rem;transition:background-color .2s;display:flex}.close-btn:hover{background-color:#ffffff1a}.share-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:all .2s;display:flex}.share-btn:hover{background-color:#ffffff26}.share-btn.copied{background-color:#fff3;border-radius:16px;width:auto;padding:0 12px;font-size:.75rem;font-weight:700}.detail-content{flex-direction:column;flex:1;gap:24px;padding:24px;display:flex;overflow-y:auto}.detail-section{flex-direction:column;gap:12px;display:flex}.detail-section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-light);padding-bottom:6px;font-size:.875rem;font-weight:700}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group.full-width{grid-column:span 2}.form-input,.form-select,.form-textarea{border:1px solid var(--border-light);background-color:var(--bg-tertiary);width:100%;height:38px;color:var(--text-primary);border-radius:6px;outline:none;padding:0 12px;font-size:.875rem;transition:all .2s}.form-textarea{resize:vertical;height:80px;padding:10px 12px}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--border-muted);background-color:var(--bg-secondary)}.checklist-container{flex-direction:column;gap:10px;display:flex}.checklist-item{background-color:var(--bg-tertiary);border:1px solid var(--border-light);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;display:flex}.checklist-item:hover{background-color:var(--bg-secondary)}.checklist-checkbox{border:1px solid var(--border-light);width:18px;height:18px;accent-color:var(--primary);cursor:pointer;border-radius:4px}.checklist-item.completed{color:var(--text-secondary);opacity:.75;text-decoration:line-through}.btn-secondary{background-color:var(--bg-secondary);border:1px solid var(--border-light);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .2s}.btn-secondary:hover{background-color:var(--bg-tertiary);border-color:var(--border-muted)}.auth-container{background-color:var(--bg-primary);background:radial-gradient(circle at 80% 20%, #256af40d 0%, transparent 60%), radial-gradient(circle at 10% 80%, #7f3cdd0a 0%, transparent 60%), var(--bg-primary);justify-content:center;align-items:center;width:100vw;height:100dvh;display:flex}.auth-card{background-color:var(--bg-secondary);border:1px solid var(--border-light);width:420px;box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;gap:24px;padding:32px;display:flex}.auth-header{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.auth-logo{background:linear-gradient(135deg, var(--primary), var(--accent-purple));color:#fff;width:48px;height:48px;box-shadow:var(--shadow-md);border-radius:14px;justify-content:center;align-items:center;font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:800;display:flex}.auth-title{color:var(--text-primary);font-size:1.5rem;font-weight:800}.auth-subtitle{color:var(--text-secondary);margin-top:-4px;font-size:.85rem}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-divider{text-align:center;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;font-size:.75rem;font-weight:600;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--border-light);flex:1}.auth-divider:not(:empty):before{margin-right:.5em}.auth-divider:not(:empty):after{margin-left:.5em}.btn-oauth{background-color:var(--bg-secondary);border:1px solid var(--border-light);color:var(--text-primary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:10px;height:44px;font-size:.875rem;font-weight:600;transition:all .2s;display:flex}.btn-oauth:hover{background-color:var(--bg-tertiary);border-color:var(--border-muted)}.auth-error{background-color:var(--color-danger-bg);color:var(--color-danger-txt);border:1px solid #c91d1d26;border-radius:8px;padding:10px 14px;font-size:.8rem;font-weight:500}.auth-success{background-color:var(--color-active-bg);color:var(--color-active-txt);border:1px solid #085e4126;border-radius:8px;padding:10px 14px;font-size:.8rem;font-weight:500}.card-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding:24px;display:grid;overflow-y:auto}.podio-card{background-color:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;border-radius:8px;flex-direction:column;gap:12px;padding:18px;transition:all .2s;display:flex;position:relative;overflow:hidden}.podio-card:hover{border-color:var(--border-muted);box-shadow:var(--shadow-md);transform:translateY(-2px)}.podio-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.podio-card-title{color:var(--text-primary);margin-bottom:4px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:700}.podio-card-meta{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:.8rem;display:flex}.podio-card-badge{text-transform:uppercase;border-radius:4px;width:fit-content;padding:2px 8px;font-size:.7rem;font-weight:700}.podio-card-footer{border-top:1px solid var(--border-light);color:var(--text-secondary);justify-content:space-between;align-items:center;padding-top:10px;font-size:.75rem;display:flex}.badge-in-progress{color:#0b628e;background-color:#e6f7ff}.badge-in-review{color:#5814b8;background-color:#f3ebff}.badge-done{color:#085e41;background-color:#e8fcf2}.badge-quote{color:#8a610f;background-color:#fff7e0}.badge-contractor{color:#0b788e;background-color:#e6fbff}.podio-card.selected{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}tr.selected-row{background-color:var(--primary-glow)!important}.kpi-card{background-color:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:space-between;gap:8px;padding:20px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.kpi-card:after{content:"";background-color:var(--primary);opacity:0;width:4px;height:100%;transition:opacity .2s;position:absolute;top:0;left:0}.kpi-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-muted);transform:translateY(-3px)}.kpi-card:hover:after{opacity:1}.kpi-label{color:var(--text-secondary);align-items:center;gap:6px;font-size:.85rem;font-weight:600;display:flex}.kpi-value{color:var(--text-primary);font-family:Outfit,sans-serif;font-size:1.85rem;font-weight:800;line-height:1.2}.widget-card{background-color:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;height:100%;transition:box-shadow .2s;display:flex;overflow:hidden}.widget-card:hover{box-shadow:var(--shadow-md)}.widget-header{border-bottom:1px solid var(--border-light);background-color:#f8fafc80;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.widget-title{color:var(--text-primary);font-family:Outfit,sans-serif;font-size:1.05rem;font-weight:700}.widget-content{flex-direction:column;flex:1;gap:12px;padding:20px;display:flex;overflow-y:auto}.widget-task-item{background-color:var(--bg-secondary);border:1px solid var(--border-light);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:14px;padding:12px 16px;transition:all .15s;display:flex}.widget-task-item:hover{border-color:var(--border-muted);background-color:var(--bg-tertiary);transform:translate(3px)}.custom-checkbox-container{border:2px solid var(--text-muted);cursor:pointer;background-color:var(--bg-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:all .2s;display:flex}.custom-checkbox-container:hover{border-color:var(--primary);background-color:var(--primary-glow)}.custom-checkbox-container.checked{border-color:var(--accent-teal);background-color:var(--accent-teal);color:#fff}.widget-task-details{flex-direction:column;flex:1;gap:4px;display:flex}.widget-task-title{color:var(--text-primary);font-size:.875rem;font-weight:600;line-height:1.4;transition:color .15s}.widget-task-item:hover .widget-task-title{color:var(--primary)}.widget-task-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:12px;font-size:.75rem;display:flex}.widget-task-owner-badge{background-color:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:12px;align-items:center;gap:6px;padding:2px 8px;font-weight:500;display:flex}.widget-task-avatar{background-color:var(--primary);color:#fff;text-transform:uppercase;text-box:trim-both cap alphabetic;background-image:linear-gradient(135deg,#ffffff1f 0%,#0000001f 100%);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.75rem;font-weight:600;line-height:1;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:inset 0 1px 1px #ffffff40,inset 0 -1px 1.5px #0000004d,0 4px 6px -1px #00000040,0 2px 4px -1px #00000026}.widget-task-avatar:hover{transform:translateY(-2px)scale(1.05);box-shadow:inset 0 1px 1px #ffffff4d,inset 0 -1px 1.5px #0003,0 8px 16px -2px #0006,0 4px 6px -2px #0000004d;z-index:20!important}.widget-task-due{align-items:center;gap:4px;font-weight:500;display:flex}.widget-task-due.overdue{color:var(--color-danger-txt);font-weight:600}.widget-prop-item{background-color:var(--bg-secondary);border:1px solid var(--border-light);cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 18px;transition:all .2s;display:flex;position:relative;overflow:hidden}.widget-prop-item:before{content:"";background-color:var(--text-muted);width:4px;height:100%;transition:all .2s;position:absolute;top:0;left:0}.widget-prop-item.prop-active:before{background-color:var(--accent-teal)}.widget-prop-item.prop-backlog:before{background-color:var(--accent-purple)}.widget-prop-item:hover{border-color:var(--border-muted);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.widget-prop-details{flex-direction:column;flex:1;gap:4px;display:flex}.widget-prop-title{color:var(--text-primary);font-family:Outfit,sans-serif;font-size:.95rem;font-weight:700;line-height:1.3}.widget-prop-item:hover .widget-prop-title{color:var(--primary)}.widget-prop-address{color:var(--text-secondary);font-size:.75rem}.widget-checklist-progress-container{flex-direction:column;gap:4px;width:100%;max-width:220px;margin-top:6px;display:flex}.widget-checklist-label{color:var(--text-secondary);font-size:.7rem;font-weight:600}.widget-checklist-bar-bg{background-color:var(--bg-tertiary);border-radius:3px;width:100%;height:6px;overflow:hidden}.widget-checklist-bar-fill{background:linear-gradient(90deg, var(--primary), var(--accent-teal));border-radius:3px;height:100%;transition:width .3s ease-out}.contacts-card{background-color:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:12px;margin-top:16px;overflow:hidden}.contacts-table-wrapper{overflow-x:auto}.contacts-table{border-collapse:collapse;text-align:left;width:100%}.contacts-table th{background-color:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-light);padding:14px 20px;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:700}.contacts-table td{border-bottom:1px solid var(--border-light);color:var(--text-primary);vertical-align:middle;padding:16px 20px;font-size:.875rem}.contacts-table tr{transition:background-color .15s}.contacts-table tr:hover{background-color:var(--bg-tertiary)}.contacts-table tr.selected-row{box-shadow:inset 4px 0 0 0 var(--primary);background-color:var(--primary-glow)!important}.note-content-preview{-webkit-line-clamp:2;line-clamp:2;text-overflow:ellipsis;max-height:2.8em;color:var(--text-secondary);word-break:break-word;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.contact-name-cell{align-items:center;gap:12px;display:flex}.contact-avatar{background-color:var(--primary-glow);width:36px;height:36px;color:var(--primary);border:1px solid #256af426;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:700;display:flex}.contact-badge{text-align:center;border-radius:20px;padding:4px 8px;font-size:.75rem;font-weight:600;display:inline-block}.contact-badge.contractor{color:#0b628e;background-color:#e6f7ff}.contact-badge.cleaner{color:#5814b8;background-color:#f3ebff}.contact-badge.agent{color:#085e41;background-color:#e8fcf2}.contact-badge.utility{color:#8a610f;background-color:#fff7e0}.contact-badge.other{background-color:var(--border-light);color:var(--text-secondary)}.contact-action-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;font-size:.85rem;text-decoration:none;transition:all .15s;display:inline-flex}.contact-action-btn:hover{background-color:var(--border-light);color:var(--text-primary)}.contact-delete-btn{color:var(--color-danger-txt);font-size:1rem}.contact-delete-btn:hover{background-color:var(--color-danger-bg);color:var(--color-danger-txt)}@media (height<=880px){.sidebar-container{width:72px}.sidebar{width:72px;padding:16px 0}.sidebar:hover{width:240px}.sidebar-top{gap:16px;padding:0 12px}.sidebar-bottom{gap:8px;padding:0 12px}.nav-links{gap:4px}.nav-item{height:36px;padding:0 8px}.nav-item svg{width:20px!important;height:20px!important}.nav-label{font-size:.82rem}.brand-logo{height:36px}.brand-logo img{width:32px!important;height:32px!important}.avatar{width:30px;height:30px;font-size:.75rem}}.navbar-chodio-logo{object-fit:contain;opacity:.9;border-radius:4px;width:auto;height:40px;transition:opacity .2s,transform .2s}.navbar-chodio-logo:hover{opacity:1;transform:scale(1.02)}.owner-pill-btn{border:1.5px solid var(--border-light);background-color:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;border-radius:20px;outline:none;padding:6px 14px;font-size:.85rem;font-weight:600;transition:all .2s}.owner-pill-btn:hover{background-color:var(--border-muted);color:var(--text-primary)}.owner-pill-btn.selected{background-color:var(--primary-glow);border-color:var(--primary);color:var(--primary)}.mobile-nav-toggle,.mobile-drawer-overlay,.mobile-search-toggle,.mobile-search-close,.mobile-close-drawer-btn{display:none}@media (width<=767px){.app-container{width:100vw;height:100dvh;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);position:relative;overflow:hidden}.sidebar-container{display:none}.sidebar-container.mobile-open{z-index:1000;width:280px;height:100dvh;display:block;position:fixed;top:0;left:0}.sidebar-container.mobile-open .sidebar{width:100%;height:100%;padding:16px 0;position:relative;overflow-y:auto;box-shadow:4px 0 24px #00000040}.sidebar-container.mobile-open .brand-name,.sidebar-container.mobile-open .nav-label{opacity:1;pointer-events:auto}.sidebar-container.mobile-open .nav-section-title{opacity:1}.sidebar-container.mobile-open .user-info{opacity:1;pointer-events:auto}.sidebar-container.mobile-open .nav-item{height:44px;padding:0 16px}.sidebar-container.mobile-open .sidebar-top,.sidebar-container.mobile-open .sidebar-bottom{padding:0 16px}.mobile-drawer-overlay{-webkit-backdrop-filter:blur(2px);z-index:999;background-color:#0f172a99;display:block;position:fixed;inset:0}.mobile-close-drawer-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.5rem;display:flex}.main-wrapper{width:100%;margin-left:0!important;padding-left:0!important}.header-bar{gap:8px;height:56px;padding:0 12px;position:relative}.mobile-nav-toggle{border:1px solid var(--border-light);width:40px;height:40px;color:var(--text-primary);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.header-left{flex:1;gap:8px;min-width:0}.header-title-container{flex:1;min-width:0}.sub-brand-title{display:none}.brand-title{white-space:nowrap;text-overflow:ellipsis;font-size:1rem;overflow:hidden}.header-bar .navbar-chodio-logo,.search-container{display:none}.search-container.mobile-expanded{background-color:var(--bg-secondary);z-index:10;align-items:center;gap:8px;width:100%;height:100%;padding:8px 12px;display:flex;position:absolute;inset:0}.search-container.mobile-expanded .search-input{flex:1}.mobile-search-toggle{border:1px solid var(--border-light);width:38px;height:38px;color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;display:flex}.mobile-search-close{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.header-right{gap:8px}.header-right .btn-primary{gap:4px;height:36px;padding:0 10px;font-size:.8rem}.detail-panel{z-index:500;border-left:none;height:100dvh;position:fixed;inset:0;width:100vw!important}.detail-panel.closed{display:none;transform:translate(100%);width:0!important}.auth-card{width:min(420px,100vw - 32px);padding:24px 16px}.kanban-board.mobile-mode{box-sizing:border-box;flex-direction:column;gap:12px;width:100%;padding:12px;display:flex;overflow:hidden auto}.mobile-kanban-stage-tabs{-webkit-overflow-scrolling:touch;flex-shrink:0;gap:8px;width:100%;padding:4px 0 8px;display:flex;overflow-x:auto}.mobile-kanban-stage-tabs::-webkit-scrollbar{height:4px}.mobile-kanban-stage-tab{border:1px solid var(--border-light);background-color:var(--bg-secondary);color:var(--text-secondary);white-space:nowrap;cursor:pointer;border-radius:20px;flex-shrink:0;align-items:center;gap:6px;padding:8px 14px;font-size:.825rem;font-weight:600;display:flex}.mobile-kanban-stage-tab.active{background-color:var(--primary);color:#fff;border-color:var(--primary);box-shadow:var(--shadow-sm)}.mobile-kanban-stage-tab .tab-count{background-color:#00000014;border-radius:10px;padding:2px 6px;font-size:.75rem}.mobile-kanban-stage-tab.active .tab-count{color:#fff;background-color:#ffffff40}.kanban-board.mobile-mode .kanban-column,.kanban-column.mobile-single-col{background-color:var(--bg-tertiary);border-radius:12px;width:100%!important;min-width:0!important;max-width:100%!important}.kanban-board.mobile-mode .cards-container,.kanban-column.mobile-single-col .cards-container{gap:12px;padding:12px}.mobile-card-move-btn{color:var(--primary);background-color:var(--primary-glow);border:1px solid var(--primary);cursor:pointer;border-radius:6px;align-items:center;gap:4px;width:fit-content;margin-top:8px;padding:6px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.mobile-move-sheet-overlay{-webkit-backdrop-filter:blur(2px);z-index:1000;background-color:#0f172a99;flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.mobile-move-sheet{background-color:var(--bg-secondary);padding:20px 16px env(safe-area-inset-bottom,20px) 16px;border-radius:16px 16px 0 0;flex-direction:column;gap:12px;max-height:80dvh;display:flex;overflow-y:auto;box-shadow:0 -8px 24px #00000026}.mobile-move-sheet-title{color:var(--text-primary);margin-bottom:4px;font-size:1rem;font-weight:700}.mobile-move-sheet-option{border:1px solid var(--border-light);background-color:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:.9rem;font-weight:500;display:flex}.mobile-move-sheet-option:hover{background-color:var(--border-muted)}.mobile-move-sheet-cancel{color:var(--text-secondary);cursor:pointer;text-align:center;background-color:#0000;border:none;border-radius:10px;padding:12px;font-size:.9rem;font-weight:600}.cf-main-container{padding:12px 10px!important}.cf-kpi-grid{grid-template-columns:1fr!important;gap:12px!important}.cf-settings-controls,.cf-action-buttons{width:100%;flex-wrap:wrap!important;gap:8px!important}.cf-action-buttons>button{flex:1;justify-content:center;align-items:center;min-height:44px;display:flex;font-size:.8125rem!important}.cf-subtabs-row{-webkit-overflow-scrolling:touch;width:100%;padding-bottom:4px;overflow-x:auto}.cf-subtabs-row>button{white-space:nowrap;min-height:40px;padding:8px 12px!important}.cf-filter-controls-row{flex-direction:column;width:100%;align-items:stretch!important;gap:8px!important}.cf-filter-controls-row>input,.cf-filter-controls-row>select{box-sizing:border-box;min-height:44px;width:100%!important;font-size:16px!important}.cf-ledger-wrapper,.cf-reconcile-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto!important}.cf-ledger-table{min-width:760px!important}.cf-ledger-table th:first-child,.cf-ledger-table td:first-child{z-index:2;background-color:var(--bg-secondary);position:sticky;left:0;box-shadow:2px 0 4px #0000000d}.cf-reconcile-table{min-width:760px!important}.cf-reconcile-table th:first-child,.cf-reconcile-table td:first-child{z-index:2;background-color:var(--bg-secondary);position:sticky;left:0;box-shadow:2px 0 4px #0000000d}.dashboard-content-container{gap:16px!important;padding:12px 10px!important}.dashboard-kpi-grid{grid-template-columns:1fr 1fr!important;gap:10px!important}.dashboard-widgets-grid{grid-template-columns:1fr!important;gap:16px!important;min-height:auto!important}.form-grid-2col{grid-template-columns:1fr!important}.form-grid{grid-template-columns:1fr!important;gap:12px!important}.form-group.full-width{grid-column:span 1!important}.card-grid{grid-template-columns:1fr!important;gap:12px!important;padding:12px 10px!important}.contacts-card{border-radius:8px!important;padding:0!important}.contacts-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto!important}.contacts-table{min-width:600px!important}.contacts-table th:first-child,.contacts-table td:first-child{z-index:2;background-color:var(--bg-secondary);position:sticky;left:0;box-shadow:2px 0 4px #0000000d}.form-input,.form-select,.form-textarea{box-sizing:border-box;min-height:44px!important;font-size:16px!important}.btn-primary,.btn-secondary{justify-content:center;align-items:center;min-height:44px;display:inline-flex}}.quant-sim-viewer-container{background-color:var(--bg-primary);border-radius:8px;flex-direction:column;width:100%;height:100%;min-height:550px;display:flex;position:relative;overflow:hidden}.quant-sim-viewer-container.fullscreen-mode{z-index:9999;border-radius:0;min-height:100vh;position:fixed;inset:0}.quant-sim-toolbar{background-color:var(--bg-secondary);border-bottom:1px solid var(--border-light);z-index:10;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.quant-sim-toolbar-left{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.quant-sim-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.quant-sim-badge.llc-badge{color:#0d5c3a;background-color:#14b8661a;border:1px solid #14b86640}.quant-sim-badge .status-dot{background-color:#0d5c3a;border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #0d5c3a}.quant-sim-subtext{color:var(--text-secondary);font-size:.75rem;font-weight:500}.quant-sim-toolbar-right{align-items:center;gap:8px;display:flex}.sim-tool-btn{color:var(--text-secondary);background-color:var(--bg-primary);border:1px solid var(--border-light);cursor:pointer;border-radius:6px;align-items:center;gap:4px;padding:5px 10px;font-size:.75rem;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.sim-tool-btn:hover{background-color:var(--border-light);color:var(--text-primary)}.sim-tool-btn.external-link{color:var(--primary)}.sim-tool-btn.external-link:hover{background-color:var(--primary-glow);border-color:var(--primary)}.quant-sim-frame-wrapper{background-color:#f4f6f8;flex:1;width:100%;height:calc(100% - 45px);min-height:520px;position:relative}.quant-sim-iframe{border:none;width:100%;height:100%;display:block}.quant-sim-loading-overlay,.quant-sim-error-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5;text-align:center;background-color:#f8fafce6;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex;position:absolute;inset:0}.sim-spinner{border:3px solid #0d5c3a26;border-top-color:#0d5c3a;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite simSpin}@keyframes simSpin{to{transform:rotate(360deg)}}.quant-sim-loading-overlay p{color:var(--text-secondary);font-size:.85rem;font-weight:600}.quant-sim-error-overlay p{color:var(--color-danger-txt);font-size:.9rem}.quant-sim-error-overlay .error-hint{color:var(--text-secondary);font-size:.8rem}.quant-sim-error-overlay code{background:var(--bg-tertiary);border-radius:4px;padding:2px 6px;font-family:monospace}@media (width<=767px){.quant-sim-viewer-container{min-height:420px}.quant-sim-viewer-container.fullscreen-mode{height:100dvh;min-height:100dvh}.quant-sim-toolbar{gap:8px;padding:8px 10px}.quant-sim-subtext{display:none}.sim-tool-btn{min-height:36px;padding:6px 10px;font-size:.75rem}.quant-sim-frame-wrapper{min-height:380px}}.pivot-container{background-color:var(--bg-primary);width:100%;height:100%;color:var(--text-primary);flex-direction:column;padding:24px;display:flex;overflow-y:auto}.pivot-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.pivot-header-left h1{color:var(--text-primary);margin-bottom:4px;font-size:1.75rem;font-weight:700}.pivot-header-left p{color:var(--text-secondary);font-size:.875rem}.pivot-tabs{border-bottom:1px solid var(--border-light);gap:8px;margin-bottom:24px;padding-bottom:4px;display:flex}.pivot-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 16px;font-size:.875rem;font-weight:600;transition:all .2s}.pivot-tab-btn:hover{color:var(--primary)}.pivot-tab-btn.active{color:var(--primary);border-bottom-color:var(--primary)}.pivot-tab-panel{flex-direction:column;flex:1;display:flex}.map-layout-wrapper{flex-direction:column;justify-content:center;align-items:center;width:100%;margin-top:20px;padding-bottom:80px;padding-left:60px;display:flex;position:relative}.map-grid-container{background-color:var(--bg-secondary);border-left:2px solid var(--text-secondary);border-bottom:2px solid var(--text-secondary);width:100%;height:60vh;min-height:400px;max-height:650px;box-shadow:var(--shadow-md), inset 0 0 40px #00000005;background-image:linear-gradient(var(--border-light) 1px, transparent 1px), linear-gradient(90deg, var(--border-light) 1px, transparent 1px);background-size:50px 50px;border-radius:0 8px 0 0;position:relative;overflow:hidden}.axis-control-x{z-index:5;position:absolute;bottom:-65px;left:50%;transform:translate(-50%)}.axis-control-y{transform-origin:50%;z-index:5;position:absolute;top:50%;left:-140px;transform:translateY(-50%)rotate(-90deg)}.map-select{background:var(--bg-secondary);color:var(--primary);border:1px solid var(--border-muted);cursor:pointer;box-shadow:var(--shadow-sm);text-transform:uppercase;letter-spacing:.5px;border-radius:6px;outline:none;padding:8px 14px;font-size:.85rem;font-weight:700;transition:all .2s}.map-select:hover{border-color:var(--primary);box-shadow:var(--shadow-md)}.map-corner-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;border:1px solid var(--border-light);pointer-events:none;background-color:#ffffffd9;border-radius:4px;padding:3px 8px;font-size:.75rem;font-weight:700;position:absolute}.lbl-x-min{bottom:12px;left:12px}.lbl-x-max{bottom:12px;right:12px}.lbl-y-min{bottom:45px;left:12px}.lbl-y-max{top:12px;left:12px}.map-node{cursor:pointer;z-index:10;transition:left .8s cubic-bezier(.25,1,.5,1),bottom .8s cubic-bezier(.25,1,.5,1),transform .2s ease-out;position:absolute;transform:translate(-50%,50%)}.map-node-dot{background-color:var(--primary);border:3px solid var(--bg-secondary);width:28px;height:28px;box-shadow:0 0 0 3px var(--primary-glow), 0 0 12px var(--primary);z-index:2;color:#fff;text-shadow:0 1px 2px #0006;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;line-height:1;transition:all .2s;display:flex;position:relative}.map-node-label{white-space:nowrap;color:var(--text-primary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);background-color:#ffffffe6;border-radius:6px;padding:2px 8px;font-size:.875rem;font-weight:700;transition:all .2s;position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.map-node-badges{opacity:0;pointer-events:none;gap:4px;transition:opacity .2s,transform .2s;display:flex;position:absolute;top:32px;left:50%;transform:translate(-50%)}.map-node-badge{background-color:var(--bg-tertiary);border:1px solid var(--border-light);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:.65rem;font-weight:600}.map-node-badge.red{border-bottom:2px solid var(--color-danger-txt);color:var(--color-danger-txt)}.map-node-badge.green{border-bottom:2px solid var(--color-active-txt);color:var(--color-active-txt)}.map-node-badge.yellow{border-bottom:2px solid var(--color-backlog-txt);color:var(--color-backlog-txt)}.map-node:hover{z-index:100;transform:translate(-50%,50%)scale(1.15)}.map-node:hover .map-node-dot{box-shadow:0 0 0 5px var(--primary-glow), 0 0 20px var(--primary);background-color:#1f68f9}.map-node:hover .map-node-label{background-color:var(--bg-secondary);box-shadow:var(--shadow-md);color:var(--primary)}.map-node:hover .map-node-badges{opacity:1;transform:translate(-50%)translateY(2px)}.dot-initial{text-transform:uppercase;font-size:.72rem;font-weight:700}.map-node.is-collapsed .map-node-label{opacity:0;pointer-events:none;transform:translate(-50%)scale(.9)}.map-node.is-collapsed:hover,.map-node.is-collapsed:focus-within,.map-node.is-hovered{z-index:1000!important}.map-node.is-collapsed:hover .map-node-label,.map-node.is-collapsed:focus-within .map-node-label,.map-node.is-collapsed.is-hovered .map-node-label{opacity:1;pointer-events:auto;background-color:var(--bg-secondary);border-color:var(--primary);transform:translate(-50%)scale(1);box-shadow:0 4px 14px #0000002e}.map-node.label-below .map-node-label{top:34px;bottom:auto}.map-node.label-below .map-node-badges{top:auto;bottom:34px}.map-connector-svg{pointer-events:none;z-index:15;width:100%;height:100%;position:absolute;inset:0}.map-connector-line{stroke:var(--primary,#3b82f6);stroke-width:1.5px;stroke-dasharray:3 3;opacity:.75}.map-connector-dot{fill:var(--primary,#3b82f6);opacity:.75}.map-view-controls{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.map-view-toggle-group{background-color:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;align-items:center;gap:2px;padding:2px;display:inline-flex}.map-view-toggle-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:600;transition:all .2s}.map-view-toggle-btn:hover{color:var(--text-primary);background-color:var(--border-light)}.map-view-toggle-btn.active{background-color:var(--bg-secondary);color:var(--primary);box-shadow:var(--shadow-sm);font-weight:700}.map-btn-disperse{background-color:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;font-weight:600;transition:all .2s;display:inline-flex}.map-btn-disperse:hover{border-color:var(--primary);color:var(--primary)}.map-btn-disperse.active{border-color:var(--primary);color:var(--primary);background-color:#3b82f61a;font-weight:700}.map-cluster-pill{background-color:var(--primary);color:#fff;cursor:pointer;z-index:40;-webkit-user-select:none;user-select:none;border-radius:24px;align-items:center;gap:8px;padding:8px 16px;transition:all .25s cubic-bezier(.16,1,.3,1);display:inline-flex;position:absolute;transform:translate(-50%,50%);box-shadow:0 4px 20px #3b82f666,0 0 0 3px #3b82f633}.map-cluster-pill:hover{transform:translate(-50%,50%)scale(1.06);box-shadow:0 6px 24px #3b82f680,0 0 0 5px #3b82f64d}.cluster-pulse-dot{background-color:#34d399;border-radius:50%;width:8px;height:8px;animation:1.8s infinite pulse-dot;box-shadow:0 0 8px #34d399}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.3)}}.cluster-pill-title{letter-spacing:.3px;font-size:.825rem;font-weight:700}.cluster-pill-action{background-color:#ffffff40;border-radius:12px;padding:2px 8px;font-size:.7rem;font-weight:600}.map-cluster-anchor{background-color:var(--bg-secondary);border:1px solid var(--primary);color:var(--primary);cursor:pointer;z-index:35;-webkit-user-select:none;user-select:none;border-radius:16px;align-items:center;gap:6px;padding:4px 10px;font-size:.75rem;font-weight:700;transition:all .2s;display:inline-flex;position:absolute;transform:translate(-50%,50%);box-shadow:0 2px 10px #0000001a}.map-cluster-anchor:hover{background-color:var(--primary);color:#fff;transform:translate(-50%,50%)scale(1.05)}.cluster-anchor-dot{background-color:var(--primary);border-radius:50%;width:7px;height:7px}.map-cluster-anchor:hover .cluster-anchor-dot{background-color:#fff}.map-spider-svg{pointer-events:none;z-index:8;width:100%;height:100%;position:absolute;inset:0}.map-spider-line{stroke:var(--primary,#3b82f6);stroke-width:1.5px;stroke-dasharray:4 3;opacity:.45;transition:stroke .2s,stroke-width .2s,opacity .2s}.map-spider-line.hovered{stroke:#2563eb;stroke-width:2.5px;stroke-dasharray:none;opacity:1;filter:drop-shadow(0 0 4px #2563eb66)}.map-btn-spider{background-color:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;font-weight:600;transition:all .2s;display:inline-flex}.map-btn-spider:hover{border-color:var(--primary);color:var(--primary)}.map-btn-spider.active{border-color:var(--primary);color:var(--primary);background-color:#3b82f61f;font-weight:700}.spider-badge{background-color:var(--border-light);border-radius:10px;padding:1px 6px;font-size:.7rem}.map-btn-spider.active .spider-badge{background-color:var(--primary);color:#fff}.map-spider-card{background-color:var(--bg-secondary,#fff);border:1px solid var(--border-light,#e2e8f0);cursor:pointer;z-index:15;white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:8px;align-items:center;gap:8px;max-width:270px;padding:4px 10px 4px 6px;transition:transform .2s,box-shadow .2s,border-color .2s,z-index .1s;display:flex;position:absolute;transform:translate(-50%,50%);box-shadow:0 2px 6px #00000014}.map-spider-card:hover,.map-spider-card.is-hovered{z-index:100;border-color:var(--primary,#3b82f6);transform:translate(-50%,50%)translateY(-2px)scale(1.02);box-shadow:0 6px 16px #3b82f62e}.map-spider-card .spider-dot{border:2px solid var(--bg-secondary,#fff);width:24px;min-width:24px;height:24px;box-shadow:0 0 0 2px var(--primary-glow,#3b82f64d);border-radius:50%;justify-content:center;align-items:center;font-size:.72rem;font-weight:700;display:flex;position:relative}.map-spider-card.stage-shortlisted .spider-dot{background-color:#10b981;box-shadow:0 0 0 2px #10b9814d}.map-spider-card.stage-under_review .spider-dot{background-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b4d}.map-spider-card.stage-archived .spider-dot{background-color:#64748b;box-shadow:0 0 0 2px #64748b4d}.map-spider-card .spider-card-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:175px;font-size:.8rem;font-weight:600;overflow:hidden}.map-spider-card .spider-card-badge{align-items:center;display:flex}.spider-badge-pill{background-color:var(--bg-tertiary,#f1f5f9);border:1px solid var(--border-light,#e2e8f0);border-radius:4px;padding:1px 5px;font-size:.65rem;font-weight:600}.spider-badge-pill.green{color:#16a34a;background-color:#16a34a14;border-color:#16a34a33}.spider-badge-pill.yellow{color:#d97706;background-color:#d9770614;border-color:#d9770633}.spider-badge-pill.red{color:#dc2626;background-color:#dc262614;border-color:#dc262633}.matrix-card{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:12px;padding:20px;overflow-x:auto}.matrix-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.matrix-table th{color:var(--text-secondary);border-bottom:1px solid var(--border-light);text-transform:uppercase;letter-spacing:.5px;padding:12px 16px;font-size:.75rem;font-weight:600}.matrix-table td{border-bottom:1px solid var(--border-light);vertical-align:top;padding:14px 16px}.matrix-table tr:last-child td{border-bottom:none}.matrix-table tr:hover{background-color:var(--bg-tertiary)}.matrix-idea-title{color:var(--primary);font-weight:700}.matrix-idea-oneliner{color:var(--text-secondary);margin-top:4px;font-size:.8rem}.matrix-score-cell{text-align:center;font-weight:600}.matrix-score-bar-bg{background-color:var(--bg-tertiary);border-radius:3px;width:100%;height:6px;margin-top:4px;overflow:hidden}.matrix-score-bar-fill{border-radius:3px;height:100%}.matrix-risk-text{color:var(--color-danger-txt);font-size:.8rem;font-weight:500;line-height:1.4}dialog.pivot-modal{border:1px solid var(--border-light);background-color:var(--bg-secondary);color:var(--text-primary);width:620px;max-width:90vw;box-shadow:var(--shadow-lg);opacity:0;transition-behavior:allow-discrete;border-radius:12px;outline:none;padding:0;transition-property:opacity,transform,display,overlay;transition-duration:.3s;transition-timing-function:cubic-bezier(.16,1,.3,1);transform:scale(.92)translateY(-20px)}dialog.pivot-modal.modal-expanded{flex-direction:column;width:1400px;max-width:96vw;height:90vh;display:flex}dialog.pivot-modal.modal-expanded .modal-body{flex-direction:column;flex:1;max-height:none;padding:0;display:flex;overflow:hidden}.modal-tabs{background-color:var(--bg-primary);border-bottom:1px solid var(--border-light);gap:8px;padding:10px 24px;display:flex}.modal-tab-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:.82rem;font-weight:600;transition:all .15s;display:inline-flex}.modal-tab-btn:hover{background-color:var(--bg-secondary);color:var(--text-primary);border-color:var(--border-light)}.modal-tab-btn.active{background-color:var(--bg-secondary);color:var(--primary);border-color:var(--border-light);box-shadow:var(--shadow-sm)}.mini-sim-pill{color:#0d5c3a;cursor:pointer;background-color:#14b8661a;border:1px solid #14b86640;border-radius:12px;align-items:center;gap:3px;padding:2px 7px;font-size:.72rem;font-weight:700;transition:all .15s;display:inline-flex}.mini-sim-pill:hover{color:#fff;background-color:#0d5c3a}dialog.pivot-modal[open]{opacity:1;transform:scale(1)translateY(0)}@starting-style{dialog.pivot-modal[open]{opacity:0;transform:scale(.92)translateY(-20px)}}dialog.pivot-modal::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();transition:display .3s allow-discrete, overlay .3s allow-discrete, background-color .3s ease-out, backdrop-filter .3s ease-out;background-color:#0f172a00}dialog.pivot-modal[open]::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a4d}@starting-style{dialog.pivot-modal[open]::backdrop{-webkit-backdrop-filter:blur();backdrop-filter:blur();background-color:#0f172a00}}.modal-header{border-bottom:1px solid var(--border-light);background-color:var(--bg-tertiary);border-radius:12px 12px 0 0;justify-content:space-between;align-items:flex-start;padding:20px 24px;display:flex}.modal-header-title h2{color:var(--primary);font-family:Outfit,sans-serif;font-size:1.35rem;font-weight:700}.modal-header-title p{color:var(--text-secondary);margin-top:4px;font-size:.875rem;font-style:italic}.modal-close-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:0 4px;font-size:1.75rem;line-height:1;transition:color .2s}.modal-close-btn:hover{color:var(--color-danger-txt)}.modal-body{padding:24px}.modal-metrics-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}@media (width<=580px){.modal-metrics-grid{grid-template-columns:1fr}}.modal-metric-row{flex-direction:column;display:flex}.modal-metric-info{color:var(--text-secondary);justify-content:space-between;margin-bottom:6px;font-size:.75rem;font-weight:600;display:flex}.modal-metric-val{font-weight:700}.modal-meter-bg{background-color:var(--bg-tertiary);border-radius:4px;width:100%;height:8px;overflow:hidden}.modal-meter-fill{border-radius:4px;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1)}.fill-red{background-color:var(--color-danger-txt);box-shadow:0 0 6px #dc26264d}.fill-yellow{background-color:#e68600;box-shadow:0 0 6px #d977064d}.fill-green{background-color:var(--accent-teal);box-shadow:0 0 6px #0d94884d}.text-red{color:var(--color-danger-txt)}.text-yellow{color:#e68600}.text-green{color:var(--accent-teal)}.modal-section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--border-light);margin-top:20px;margin-bottom:12px;padding-bottom:6px;font-family:Outfit,sans-serif;font-size:.75rem;font-weight:700}.modal-plan-list{padding-left:0;list-style:none}.modal-plan-list li{color:var(--text-primary);margin-bottom:10px;padding-left:20px;font-size:.875rem;line-height:1.4;position:relative}.modal-plan-list li:before{content:"→";color:var(--primary);font-weight:700;position:absolute;top:0;left:0}.modal-risk-card{background-color:var(--color-danger-bg);border:1px solid #dc262633;border-radius:8px;align-items:flex-start;gap:12px;margin-top:24px;padding:16px;display:flex}.modal-risk-icon{font-size:1.25rem;line-height:1}.modal-risk-content h4{color:var(--color-danger-txt);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-family:Outfit,sans-serif;font-size:.75rem;font-weight:800}.modal-risk-content p{color:var(--color-danger-txt);font-size:.85rem;font-weight:500;line-height:1.4}@media (prefers-reduced-motion:reduce){dialog.pivot-modal{transition-duration:.1s;transform:none}@starting-style{dialog.pivot-modal[open]{transform:none}}}.manage-ideas-grid{grid-template-columns:1fr;gap:20px;display:grid}.ideas-list-card{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:12px;padding:20px}.ideas-list-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.ideas-list-header h3{font-size:1.1rem;font-weight:700}.ideas-list-rows{flex-direction:column;gap:12px;display:flex}.idea-item-row{background-color:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.idea-item-info h4{color:var(--primary);font-weight:700}.idea-item-info p{color:var(--text-secondary);margin-top:2px;font-size:.8rem}.idea-item-actions{gap:8px;display:flex}.btn-icon{border:1px solid var(--border-light);cursor:pointer;background:0 0;background-color:var(--bg-secondary);color:var(--text-secondary);border-radius:6px;padding:6px 10px;font-size:.8rem;font-weight:600;transition:all .2s}.btn-icon:hover{border-color:var(--primary);color:var(--primary)}.btn-icon.delete:hover{border-color:var(--color-danger-txt);color:var(--color-danger-txt);background-color:var(--color-danger-bg)}.editor-card{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:12px;padding:24px}.editor-card h3{border-bottom:1px solid var(--border-light);color:var(--primary);margin-bottom:16px;padding-bottom:12px;font-size:1.2rem;font-weight:700}.editor-form{flex-direction:column;gap:18px;display:flex}.editor-form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (width<=768px){.editor-form-grid{grid-template-columns:1fr}}.form-group.span-2{grid-column:span 2}@media (width<=768px){.form-group.span-2{grid-column:span 1}}.slider-group{background-color:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;padding:12px 16px}.slider-header{color:var(--text-secondary);text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:.75rem;font-weight:700;display:flex}.slider-val-bubble{color:var(--primary);background-color:var(--bg-secondary);border:1px solid var(--border-light);border-radius:4px;padding:2px 8px;font-size:.875rem;font-weight:700}.slider-input{background:var(--border-light);-webkit-appearance:none;cursor:pointer;border-radius:3px;outline:none;width:100%;height:6px}.slider-input::-webkit-slider-thumb{appearance:none;background:var(--primary);cursor:pointer;width:16px;height:16px;box-shadow:var(--shadow-sm);border-radius:50%;transition:transform .1s}.slider-input::-webkit-slider-thumb:hover{transform:scale(1.25)}.plan-steps-builder{background-color:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;flex-direction:column;gap:8px;padding:16px;display:flex}.plan-builder-list{flex-direction:column;gap:8px;display:flex}.plan-builder-item{align-items:center;gap:8px;display:flex}.plan-builder-item input{flex:1}.form-actions{border-top:1px solid var(--border-light);justify-content:flex-end;gap:12px;margin-top:10px;padding-top:16px;display:flex}.legal-badge{text-transform:uppercase;letter-spacing:.5px;border:1px solid #0000;border-radius:9999px;align-items:center;gap:4px;padding:3px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.legal-badge.critical{color:#dc2626;background-color:#dc26261a;border-color:#dc262640;box-shadow:0 0 8px #dc262633}.legal-badge.high{color:#ef4444;background-color:#ef44441a;border-color:#ef444433}.legal-badge.medium-high{color:#f59e0b;background-color:#f59e0b1a;border-color:#f59e0b33}.legal-badge.medium{color:#ca8a04;background-color:#eab3081a;border-color:#eab30833}.legal-badge.low,.legal-badge.low-medium,.legal-badge.very-low{color:#10b981;background-color:#10b9811a;border-color:#10b98133}.legal-alert-box{border:1px solid #0000;border-radius:8px;margin-bottom:24px;padding:14px 18px;font-size:.85rem;line-height:1.4}.legal-alert-box.critical{background-color:#dc262614;border-color:#dc262633}.legal-alert-box.critical .legal-alert-header{color:#dc2626}.legal-alert-box.high{background-color:#ef444414;border-color:#ef444433}.legal-alert-box.high .legal-alert-header{color:#ef4444}.legal-alert-box.medium-high{background-color:#f59e0b14;border-color:#f59e0b33}.legal-alert-box.medium-high .legal-alert-header{color:#f59e0b}.legal-alert-box.medium{background-color:#eab30814;border-color:#eab30833}.legal-alert-box.medium .legal-alert-header{color:#ca8a04}.legal-alert-box.low,.legal-alert-box.low-medium,.legal-alert-box.very-low{background-color:#10b98114;border-color:#10b98133}.legal-alert-box.low .legal-alert-header,.legal-alert-box.low-medium .legal-alert-header,.legal-alert-box.very-low .legal-alert-header{color:#10b981}.legal-alert-header{text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;margin-bottom:4px;font-family:Outfit,sans-serif;font-size:.75rem;display:flex}.legal-alert-desc{color:var(--text-primary);margin:0;font-weight:500}.modal-elaboration-grid{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.elaboration-block h5{color:var(--primary);margin-top:0;margin-bottom:4px;font-family:Outfit,sans-serif;font-size:.8rem;font-weight:700}.elaboration-block p{color:var(--text-primary);margin:0;font-size:.875rem;line-height:1.45}.status-filter-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.btn-filter{background-color:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;border-radius:20px;padding:5px 14px;font-size:.8rem;font-weight:500;transition:all .2s}.btn-filter.all{color:var(--text-secondary);border-color:#6366f14d}.btn-filter.all:hover{color:#6366f1;background-color:#6366f11f}.btn-filter.all.active{color:#fff;background-color:#6366f1;border-color:#6366f1;font-weight:600;box-shadow:0 0 12px #6366f166}.btn-filter.active-only{color:var(--text-secondary);border-color:#2563eb59}.btn-filter.active-only:hover{color:#2563eb;background-color:#2563eb1f}.btn-filter.active-only.active{color:#fff;background-color:#2563eb;border-color:#2563eb;font-weight:600;box-shadow:0 0 12px #2563eb66}.btn-filter.inactive{opacity:.55;background-color:#0000;border-style:dashed}.btn-filter.inactive:hover{opacity:.9;border-style:solid}.filter-chip-check{margin-right:4px;font-size:.75rem;font-weight:700}.filter-chip-count{opacity:.8;margin-left:4px;font-size:.7rem}.btn-filter.under_review{color:#d97706;border-color:#f59e0b59}.btn-filter.under_review:hover{color:#f59e0b;background-color:#f59e0b1f}.btn-filter.under_review.active{color:#fff;background-color:#f59e0b;border-color:#f59e0b;font-weight:600;box-shadow:0 0 12px #f59e0b66}.btn-filter.shortlisted{color:#059669;border-color:#10b98159}.btn-filter.shortlisted:hover{color:#10b981;background-color:#10b9811f}.btn-filter.shortlisted.active{color:#fff;background-color:#10b981;border-color:#10b981;font-weight:600;box-shadow:0 0 12px #10b98166}.btn-filter.selected{color:#2563eb;border-color:#3b82f659}.btn-filter.selected:hover{color:#3b82f6;background-color:#3b82f61f}.btn-filter.selected.active{color:#fff;background-color:#3b82f6;border-color:#3b82f6;font-weight:600;box-shadow:0 0 12px #3b82f666}.btn-filter.archived{color:#4b5563;border-color:#6b728059}.btn-filter.archived:hover{color:#6b7280;background-color:#6b72801f}.btn-filter.archived.active{color:#fff;background-color:#6b7280;border-color:#6b7280;font-weight:600;box-shadow:0 0 12px #6b728066}.map-node.stage-under_review .map-node-dot{background-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b40,0 0 12px #f59e0b99}.map-node.stage-under_review:hover .map-node-dot{background-color:#fbbf24;box-shadow:0 0 0 5px #f59e0b59,0 0 20px #f59e0be6}.map-node.stage-shortlisted .map-node-dot{background-color:#10b981;box-shadow:0 0 0 3px #10b98140,0 0 12px #10b98199}.map-node.stage-shortlisted:hover .map-node-dot{background-color:#34d399;box-shadow:0 0 0 5px #10b98159,0 0 20px #10b981e6}.map-node.stage-selected .map-node-dot{background-color:#3b82f6;box-shadow:0 0 0 3px #3b82f640,0 0 12px #3b82f699}.map-node.stage-selected:hover .map-node-dot{background-color:#60a5fa;box-shadow:0 0 0 5px #3b82f659,0 0 20px #3b82f6e6}.map-node.stage-archived .map-node-dot{opacity:.75;background-color:#6b7280;box-shadow:0 0 0 3px #6b728033,0 0 10px #6b728066}.map-node.stage-archived:hover .map-node-dot{opacity:1;background-color:#9ca3af;box-shadow:0 0 0 5px #6b72804d,0 0 16px #6b7280b3}.stage-badge{text-transform:capitalize;border:1px solid #0000;border-radius:12px;align-items:center;gap:4px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-flex}.stage-badge.under_review{color:#f59e0b;background-color:#f59e0b1f;border-color:#f59e0b40}.stage-badge.shortlisted{color:#10b981;background-color:#10b9811f;border-color:#10b98140}.stage-badge.selected{color:#3b82f6;background-color:#3b82f61f;border-color:#3b82f640}.stage-badge.archived{color:#6b7280;background-color:#6b72801f;border-color:#6b728040}.modal-status-selector{background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;align-items:center;gap:6px;padding:4px 10px;display:flex}.form-input-sm{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-light);cursor:pointer;border-radius:6px;padding:4px 8px;font-size:.8rem}.comments-thread{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.comment-card{background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:8px;padding:12px 14px}.comment-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.comment-author{align-items:center;gap:8px;display:flex}.author-avatar{background:var(--primary);color:#fff;letter-spacing:.5px;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:.75rem;font-weight:700;display:flex}.author-email{color:var(--text-primary);font-size:.85rem;font-weight:600}.you-tag{color:var(--text-secondary);background:#ffffff14;border-radius:4px;padding:1px 5px;font-size:.7rem}.comment-meta{align-items:center;gap:8px;display:flex}.btn-edit-comment{border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:3px;padding:2px 8px;font-size:.72rem;font-weight:600;transition:all .2s;display:flex}.btn-edit-comment:hover{background:var(--primary-glow,#6366f11f);color:var(--primary);border-color:var(--primary)}.sentiment-badge{border:1px solid #0000;border-radius:12px;padding:2px 8px;font-size:.75rem;font-weight:600}.sentiment-badge.recommend{color:#10b981;background-color:#10b9811f;border-color:#10b98140}.sentiment-badge.need_info{color:#f59e0b;background-color:#f59e0b1f;border-color:#f59e0b40}.sentiment-badge.pass{color:#ef4444;background-color:#ef44441f;border-color:#ef444440}.comment-time{color:var(--text-secondary);font-size:.75rem}.comment-body{color:var(--text-primary);white-space:pre-wrap;margin:0;font-size:.875rem;line-height:1.45}.comment-form{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;flex-direction:column;margin-top:8px;padding:12px 14px;display:flex}.comment-form-header{justify-content:space-between;align-items:center;display:flex}.shortlist-summary-bar{background:linear-gradient(135deg,#22c55e14,#eab3080f);border:1px solid #22c55e40;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:12px 20px 0;padding:10px 16px;display:flex}.rank-control-cell{justify-content:center;align-items:center;gap:4px;display:flex}.rank-input-wrapper{background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:6px;align-items:center;padding:2px 6px;transition:border-color .2s,box-shadow .2s;display:inline-flex}.rank-input-wrapper:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}.rank-hash{color:var(--primary);margin-right:2px;font-size:.75rem;font-weight:700}.rank-number-input{width:36px;color:var(--text-primary);text-align:center;-moz-appearance:textfield;background:0 0;border:none;outline:none;padding:0;font-size:.85rem;font-weight:700}.rank-number-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.rank-number-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.rank-pill{color:var(--color-active-txt);background:#22c55e1f;border:1px solid #22c55e4d;border-radius:9999px;justify-content:center;align-items:center;padding:2px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.rank-badge-sm{background:var(--primary);color:#fff;border-radius:4px;margin-right:6px;padding:1px 6px;font-size:.7rem;font-weight:800;display:inline-block}.map-node-rank{color:#eab308;margin-right:3px;font-weight:800}.modal-rank-selector{background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:6px;align-items:center;gap:6px;padding:4px 8px;display:flex}@media (width<=767px){.pivot-container{padding:12px 10px}.pivot-header{gap:10px;margin-bottom:16px}.pivot-header-left h1{font-size:1.25rem}.pivot-header-left p{font-size:.8rem}.pivot-tabs{-webkit-overflow-scrolling:touch;gap:4px;padding-bottom:4px;overflow-x:auto}.pivot-tab-btn{white-space:nowrap;min-height:40px;padding:8px 12px;font-size:.8125rem}.map-layout-wrapper{margin-top:10px;padding-bottom:50px;padding-left:36px}.map-grid-container{height:45vh;min-height:300px;max-height:450px}.axis-selector.y-axis{font-size:.72rem;left:-32px}.axis-selector.x-axis{font-size:.72rem;bottom:-44px}.matrix-card{-webkit-overflow-scrolling:touch;padding:12px 8px;overflow-x:auto}.status-filter-bar{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:6px;padding:8px 0;overflow-x:auto}.btn-filter{white-space:nowrap;padding:4px 8px;font-size:.75rem}.matrix-table{min-width:860px;font-size:.8rem}.matrix-table th:first-child,.matrix-table td:first-child{z-index:3;background-color:var(--bg-secondary);min-width:44px;position:sticky;left:0}.matrix-table th:nth-child(2),.matrix-table td:nth-child(2){z-index:3;background-color:var(--bg-secondary);min-width:140px;position:sticky;left:44px;box-shadow:2px 0 5px #00000014}.ideas-list-header{flex-wrap:wrap;gap:10px}.idea-item-row{flex-direction:column;align-items:flex-start;gap:10px;padding:12px}.idea-item-actions{justify-content:flex-end;gap:8px;width:100%;display:flex}.idea-item-actions .btn-icon{min-height:38px;padding:6px 14px}.form-input,.form-select,.form-textarea{box-sizing:border-box;min-height:44px;font-size:16px}dialog.pivot-modal,dialog.pivot-modal.modal-expanded{width:100vw;max-width:100vw;height:92dvh;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom,16px);border-bottom:none;border-radius:16px 16px 0 0;margin:auto auto 0}dialog.pivot-modal .modal-body,dialog.pivot-modal.modal-expanded .modal-body{max-height:calc(92dvh - 130px);padding:16px;overflow-y:auto}.modal-header{padding:14px 16px}.modal-footer{box-sizing:border-box;flex-direction:column-reverse;gap:8px;width:100%;padding:14px 16px}.modal-footer button{justify-content:center;align-items:center;width:100%;min-height:44px;display:flex}}.calendar-container{background-color:var(--bg-primary);width:100%;height:100%;color:var(--text-primary);box-sizing:border-box;flex-direction:column;padding:24px;display:flex;overflow-y:auto}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.calendar-title-group{align-items:center;gap:16px;display:flex}.calendar-nav-controls{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:10px;align-items:center;gap:8px;padding:4px;display:flex}.calendar-nav-btn{color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px 12px;font-size:.875rem;font-weight:600;transition:all .15s;display:flex}.calendar-nav-btn:hover{background:var(--bg-tertiary);color:var(--primary)}.calendar-nav-btn.today-btn{background:var(--primary-glow);color:var(--primary)}.calendar-current-label{color:var(--text-primary);letter-spacing:-.02em;margin:0;font-size:1.5rem;font-weight:700}.calendar-actions-group{align-items:center;gap:12px;display:flex}.calendar-view-toggle{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:10px;padding:3px;display:flex}.calendar-view-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:6px 14px;font-size:.8125rem;font-weight:600;transition:all .15s}.calendar-view-btn.active{background:var(--primary);color:#fff;box-shadow:0 2px 6px #2563eb40}.calendar-add-event-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:8px 18px;font-size:.875rem;font-weight:600;transition:all .15s;display:flex;box-shadow:0 2px 8px #2563eb33}.calendar-add-event-btn:hover{background:#0c56e9;transform:translateY(-1px)}.calendar-filter-bar{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:12px;margin-bottom:20px;padding:14px 18px;display:flex}.filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-row-label{text-transform:uppercase;color:var(--text-secondary);letter-spacing:.05em;min-width:80px;font-size:.75rem;font-weight:700}.filter-chip{background:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:.75rem;font-weight:600;transition:all .15s;display:inline-flex}.filter-chip:hover{border-color:var(--border-muted);color:var(--text-primary)}.filter-chip.active{background:var(--primary-glow);border-color:var(--primary);color:var(--primary)}.filter-chip.overlay-chip.active{color:#085e41;background:#e8fcf2;border-color:#0da573}.owner-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.calendar-month-grid-wrapper{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:14px;flex-direction:column;flex:1;min-height:600px;display:flex;overflow:hidden}.calendar-weekdays-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-light);text-align:center;color:var(--text-secondary);grid-template-columns:repeat(7,1fr);padding:10px 0;font-size:.8125rem;font-weight:700;display:grid}.calendar-month-grid{flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:minmax(110px,1fr);display:grid}.calendar-day-cell{border-right:1px solid var(--border-light);border-bottom:1px solid var(--border-light);background:var(--bg-secondary);cursor:pointer;flex-direction:column;gap:4px;min-height:105px;padding:8px;transition:background-color .15s;display:flex}.calendar-day-cell:nth-child(7n){border-right:none}.calendar-day-cell:hover{background:#fbfcfd}.calendar-day-cell.other-month{opacity:.65;background:#f5f7f9}.calendar-day-cell.is-today{background:#256af40a}.day-cell-top{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.day-number{color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:.8125rem;font-weight:600;display:flex}.calendar-day-cell.is-today .day-number{background:var(--primary);color:#fff;font-weight:700}.day-event-count{color:var(--text-muted);font-size:.6875rem;font-weight:600}.day-events-list{flex-direction:column;gap:3px;display:flex;overflow:hidden}.event-chip{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-left:3px solid #0000;border-radius:5px;align-items:center;gap:4px;padding:3px 6px;font-size:.72rem;font-weight:500;transition:transform .1s,filter .1s;display:flex;overflow:hidden}.event-chip:hover{filter:brightness(.96);transform:translateY(-1px)}.event-chip.cat-general{color:#333e4d;background:#edeff2;border-left-color:#667b99}.event-chip.cat-meeting{color:#083691;background:#e7eefe;border-left-color:#256af4}.event-chip.cat-inspection{color:#4d0f8a;background:#f2e8fc;border-left-color:#8c30e8}.event-chip.cat-maintenance{color:#a5360d;background:#fff1e0;border-left-color:#e9730c}.event-chip.cat-financial{color:#085e41;background:#e3fcf0;border-left-color:#12a159}.event-chip.cat-deadline{color:#b31a1a;background:#ffebeb;border-left-color:#df2020}.event-chip.is-overlay{border-style:dashed}.event-chip-title{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.event-chip-badge{font-size:.65rem}.more-events-link{color:var(--primary);cursor:pointer;padding:1px 4px;font-size:.6875rem;font-weight:600}.calendar-week-grid{flex:1;grid-template-columns:repeat(7,1fr);gap:12px;display:grid}.week-column{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:12px;flex-direction:column;gap:8px;min-height:450px;padding:12px;display:flex}.week-column.is-today{border-color:var(--primary);background:#256af405}.week-column-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding-bottom:8px;display:flex}.week-day-name{color:var(--text-secondary);text-transform:uppercase;font-size:.8125rem;font-weight:700}.week-day-number{color:var(--text-primary);font-size:1.1rem;font-weight:700}.week-column.is-today .week-day-number{color:var(--primary)}.week-events-container{flex-direction:column;flex:1;gap:8px;display:flex;overflow-y:auto}.week-event-card{border-left:4px solid var(--primary);background:var(--bg-tertiary);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:8px;padding:10px;transition:transform .15s}.week-event-card:hover{transform:translateY(-2px)}.week-event-time{color:var(--text-secondary);margin-bottom:3px;font-size:.72rem;font-weight:600}.week-event-title{color:var(--text-primary);margin-bottom:4px;font-size:.85rem;font-weight:600}.week-event-desc{color:var(--text-secondary);margin-bottom:6px;font-size:.75rem;line-height:1.35}.week-event-meta{flex-wrap:wrap;align-items:center;gap:6px;font-size:.7rem;display:flex}.calendar-agenda-container{flex-direction:column;flex:1;gap:16px;display:flex}.agenda-date-group{background:var(--bg-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);border-radius:12px;overflow:hidden}.agenda-date-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-light);color:var(--text-primary);justify-content:space-between;align-items:center;padding:10px 18px;font-size:.875rem;font-weight:700;display:flex}.agenda-items-list{flex-direction:column;display:flex}.agenda-item-row{border-bottom:1px solid var(--border-light);cursor:pointer;align-items:center;gap:16px;padding:14px 18px;transition:background .15s;display:flex}.agenda-item-row:last-child{border-bottom:none}.agenda-item-row:hover{background:var(--bg-tertiary)}.agenda-time-col{width:90px;color:var(--text-secondary);font-size:.8125rem;font-weight:600}.agenda-info-col{flex-direction:column;flex:1;gap:3px;display:flex}.agenda-title-line{align-items:center;gap:8px;display:flex}.agenda-item-title{color:var(--text-primary);font-size:.9375rem;font-weight:600}.agenda-item-desc{color:var(--text-secondary);font-size:.8125rem}.agenda-meta-col{align-items:center;gap:8px;display:flex}.calendar-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#0f172a80;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.calendar-modal-card{background:var(--bg-secondary);border:1px solid var(--border-light);width:100%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-lg);border-radius:16px;flex-direction:column;animation:.2s ease-out modalFadeIn;display:flex;overflow-y:auto}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.97)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.calendar-modal-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.calendar-modal-title{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:700}.calendar-modal-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:1.25rem;transition:all .15s}.calendar-modal-close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.calendar-modal-body{flex-direction:column;gap:16px;padding:20px 24px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-group-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-label{color:var(--text-primary);font-size:.8125rem;font-weight:600}.form-input,.form-select,.form-textarea{background:var(--bg-tertiary);border:1px solid var(--border-light);color:var(--text-primary);border-radius:8px;outline:none;padding:8px 12px;font-size:.875rem;transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);background:var(--bg-secondary)}.form-textarea{resize:vertical;min-height:60px}.form-checkbox-label{color:var(--text-primary);cursor:pointer;align-items:center;gap:8px;font-size:.875rem;font-weight:500;display:flex}.recurrence-box{background:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:10px;flex-direction:column;gap:12px;padding:14px;display:flex}.day-chips-picker{flex-wrap:wrap;gap:6px;display:flex}.day-picker-btn{background:var(--bg-secondary);border:1px solid var(--border-light);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:4px 10px;font-size:.75rem;font-weight:600}.day-picker-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.calendar-modal-footer{border-top:1px solid var(--border-light);background:var(--bg-tertiary);border-bottom-right-radius:16px;border-bottom-left-radius:16px;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.modal-footer-actions{gap:10px;display:flex}.btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-light);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:600;transition:all .15s}.btn-secondary:hover{background:var(--bg-primary)}.btn-danger{color:#c91d1d;cursor:pointer;background:#fff0f0;border:1px solid #f5bcbc;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:600;transition:all .15s}.btn-danger:hover{background:#ffe0e0}@media (width<=767px){.calendar-container{padding:12px 10px}.calendar-toolbar{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}.calendar-title-group{justify-content:space-between;width:100%}.calendar-current-label{font-size:1.15rem}.calendar-actions-group{justify-content:space-between;gap:8px;width:100%;display:flex}.calendar-view-toggle{flex:1;display:flex}.calendar-view-btn{text-align:center;flex:1;justify-content:center;align-items:center;min-height:40px;padding:8px 4px;font-size:.78rem;display:flex}.calendar-add-event-btn{white-space:nowrap;min-height:40px;padding:8px 12px;font-size:.8125rem}.calendar-filter-bar{gap:10px;margin-bottom:14px;padding:10px 12px}.filter-row{gap:6px}.filter-row-label{min-width:60px;font-size:.7rem}.filter-chip{min-height:32px;padding:4px 8px;font-size:.7rem}.calendar-month-grid-wrapper{-webkit-overflow-scrolling:touch;min-height:auto;overflow-x:auto}.calendar-month-grid,.calendar-weekdays-header{min-width:520px}.calendar-week-grid{grid-template-columns:1fr;gap:12px}.week-column{min-height:auto}.agenda-item-row{flex-direction:column;align-items:flex-start;gap:8px;padding:12px}.agenda-time-col{width:auto;color:var(--primary);font-size:.75rem;font-weight:700}.agenda-meta-col{justify-content:flex-start;gap:6px;width:100%}.calendar-modal-backdrop{align-items:flex-end;padding:0}.calendar-modal-card{max-width:100%;max-height:92dvh;padding-bottom:env(safe-area-inset-bottom,16px);border-radius:16px 16px 0 0;overflow-y:auto}.calendar-modal-header{padding:14px 16px}.calendar-modal-body{gap:12px;padding:16px}.form-group-row{grid-template-columns:1fr;gap:12px}.form-input,.form-select,.form-textarea{box-sizing:border-box;min-height:44px;font-size:16px}.calendar-modal-footer{box-sizing:border-box;flex-direction:column-reverse;gap:10px;width:100%;padding:14px 16px}.modal-footer-actions{gap:10px;width:100%;display:flex}.modal-footer-actions>button,.calendar-modal-footer>.btn-danger{flex:1;justify-content:center;align-items:center;min-height:44px;display:flex}}
