.avatar{border-radius:var(--radius-full);background:var(--brand-100);width:28px;height:28px;color:var(--brand-700);font-size:var(--font-size-xs);letter-spacing:.02em;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.avatar-lg{width:34px;height:34px;font-size:var(--font-size-sm)}.avatar-muted{background:var(--gray-100);color:var(--gray-600)}.conversation-avatar{overflow:hidden}.conversation-avatar img{object-fit:cover;width:100%;height:100%}.member-cell{align-items:center;gap:var(--space-sm);display:flex}.member-cell-lines{flex-direction:column;min-width:0;display:flex}.chip-plain:before{content:none}.chip-list{flex-wrap:wrap;gap:4px;display:flex}.perm-chip{font-family:var(--font-mono);border-radius:var(--radius-xs);background:var(--gray-100);border:1px solid var(--color-border-light);color:var(--gray-600);white-space:nowrap;align-items:center;padding:3px 6px;font-size:10.5px;font-weight:500;line-height:1;display:inline-flex}.skeleton-stack{gap:var(--space-sm);flex-direction:column;display:flex}.org-head-row{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.org-head-row>.btn{flex-shrink:0}.org-head-row>.page-title{white-space:nowrap;font-size:var(--font-size-xl);flex-shrink:0}.org-head-row>.info-pop-wrap{margin-right:auto}.org-head-desc{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-size-sm);flex:1;margin:0;overflow:hidden}.meter-row{align-items:center;gap:var(--space-sm);width:100%;max-width:200px;display:inline-flex}.meter{border-radius:var(--radius-full);background:var(--gray-100);flex:1;height:6px;overflow:hidden}.meter-fill{border-radius:var(--radius-full);background:var(--brand-600);height:100%;transition:width var(--dur-base)var(--ease-standard);display:block}.meter-num{font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;color:var(--color-text-secondary);text-align:right;min-width:36px}.switch{flex-shrink:0;width:32px;height:18px;display:inline-flex;position:relative}.switch input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.switch-track{pointer-events:none;border-radius:var(--radius-full);background:var(--gray-300);width:32px;height:18px;transition:background-color var(--dur-fast)var(--ease-standard)}.switch-track:after{content:"";border-radius:var(--radius-full);width:14px;height:14px;box-shadow:var(--shadow-1);transition:transform var(--dur-fast)var(--ease-standard);background:#fff;position:absolute;top:2px;left:2px}.switch input:checked+.switch-track{background:var(--brand-600)}.switch input:checked+.switch-track:after{transform:translate(14px)}.switch input:focus-visible+.switch-track{box-shadow:var(--focus-ring)}.switch input:disabled{cursor:not-allowed}.switch input:disabled+.switch-track{opacity:.55}.home-head-row{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.home-head-lines{flex-direction:column;gap:2px;min-width:0;display:flex}.home-date{font-size:var(--font-size-sm)}.home-head-actions{align-items:flex-end;gap:var(--space-sm);flex-wrap:wrap;justify-content:flex-end;display:flex}.home-period-control{min-width:148px;color:var(--color-text-secondary);font-size:var(--font-size-xs);flex-direction:column;gap:2px;font-weight:600;display:flex}.home-period-control .select{width:auto;min-width:148px}.portfolio-partial-alert{justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.home-attention{gap:var(--space-md)}.attn-list{flex-direction:column;gap:2px;display:flex}.attn-row{align-items:center;gap:var(--space-md);min-height:34px;padding:4px var(--space-sm);border-radius:var(--radius-sm);color:var(--color-text-primary);transition:background-color var(--dur-fast)var(--ease-standard);display:flex}.attn-row:hover{background:var(--gray-50);text-decoration:none}.attn-icon{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--module-accent,var(--gray-500));background:color-mix(in srgb,var(--module-accent,var(--gray-400))10%,transparent);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.attn-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.attn-project{text-overflow:ellipsis;white-space:nowrap;flex:0 0 min(30%,220px);min-width:110px;font-weight:600;overflow:hidden}.attn-count{border-radius:var(--radius-full);background:color-mix(in srgb,var(--module-accent,var(--gray-500))10%,transparent);min-width:22px;color:var(--module-accent,var(--color-text-secondary));font-size:var(--font-size-xs);font-variant-numeric:tabular-nums;text-align:center;flex-shrink:0;padding:2px 7px;font-weight:700}.attn-open{color:var(--color-text-tertiary);flex-shrink:0;display:inline-flex}.attn-clear{align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-size-base);display:flex}.attn-clear-icon{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--status-done);background:var(--status-done-bg);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.home-stats{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(168px,1fr));display:grid}.home-stats .stat-tile{min-width:0}.portfolio-stats{grid-template-columns:repeat(auto-fit,minmax(154px,1fr))}.portfolio-stats .stat-value{font-size:clamp(18px,2vw,var(--font-size-xxl))}.home-stats-caption{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-tertiary);margin-bottom:var(--space-sm);font-weight:600}.stat-tile .skeleton-title{margin:4px 0}.portfolio-project-cell{flex-direction:column;gap:1px;min-width:170px;display:flex}.portfolio-project-cell .muted{font-size:var(--font-size-xs)}@media (max-width:720px){.home-head-row{flex-direction:column;align-items:stretch}.home-head-actions{justify-content:flex-start}.home-period-control{flex:1}.home-period-control .select{width:100%}.portfolio-partial-alert{flex-direction:column;align-items:flex-start}.attn-row{gap:var(--space-sm);flex-wrap:wrap}.attn-project{flex:1}.attn-text{flex-basis:calc(100% - 38px);order:4;margin-left:32px}}.home-create-org{max-width:560px}.messages-layout{gap:var(--space-lg);grid-template-columns:320px minmax(0,1fr);align-items:start;display:grid}@media (max-width:900px){.messages-layout{grid-template-columns:1fr}}.conv-list{margin-top:var(--space-sm);flex-direction:column;gap:2px;display:flex}.conv-list li{position:relative}.conv-item{align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-sm);border-radius:var(--radius-sm);text-align:left;cursor:pointer;color:var(--color-text-primary);font:inherit;transition:background-color var(--dur-fast)var(--ease-standard);background:0 0;border:1px solid #0000;display:flex}.conv-item:hover{background:var(--gray-50)}.conv-item.active{background:var(--brand-50);border-color:var(--brand-100)}.conv-main{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.conv-top,.conv-bottom{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.conv-name{font-weight:600;font-size:var(--font-size-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.conv-item.unread .conv-name{font-weight:700}.conv-preview{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-size-sm);flex:1;overflow:hidden}.conv-item.unread .conv-preview{color:var(--color-text-primary)}.conv-time{font-size:var(--font-size-xs);flex-shrink:0}.conv-leave{bottom:var(--space-xs);right:var(--space-xs);font-size:var(--font-size-xs);background:var(--color-surface);opacity:0;transition:opacity var(--dur-fast)var(--ease-standard);padding:2px 8px;position:absolute}.conv-list li:hover .conv-leave,.conv-list li:focus-within .conv-leave{opacity:1}.chat-head{align-items:center;gap:var(--space-sm);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border-light);display:flex}.chat-head-lines{flex-direction:column;flex:1;min-width:0;display:flex}.chat-head-name{font-weight:600;font-size:var(--font-size-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-head-sub{font-size:var(--font-size-xs)}.msg-mention{background:var(--brand-100);color:var(--brand-800);border-radius:3px;padding:0 3px;font-weight:600}.composer-send{flex-shrink:0;width:36px;height:36px;padding:0}.messages-app{height:calc(100dvh - var(--topbar-h,60px) - 32px);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:570px;box-shadow:var(--shadow-1);grid-template-columns:minmax(290px,360px) minmax(0,1fr);display:grid;overflow:hidden}.messages-sidebar{border-right:1px solid var(--color-border);background:var(--color-surface);flex-direction:column;min-width:0;min-height:0;display:flex}.messages-sidebar-head{justify-content:space-between;align-items:center;gap:var(--space-md);background:#f0f2f5;min-height:66px;padding:10px 14px;display:flex}.messages-sidebar-head h1{color:#111b21;margin:0;font-size:19px;line-height:1.2}.messages-sidebar-head p{color:#667781;font-size:var(--font-size-xs);margin:2px 0 0}.chat-round-btn{color:#54656f;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.chat-round-btn:hover{background:#111b2112}.chat-round-btn:focus-visible{outline:var(--focus-outline);outline-offset:1px}.conversation-search{color:#667781;background:#f0f2f5;border-radius:8px;align-items:center;gap:9px;margin:7px 10px 4px;padding:0 11px;display:flex}.conversation-search input{color:#111b21;min-width:0;height:34px;font:inherit;font-size:var(--font-size-sm);background:0 0;border:0;outline:0;flex:1;padding:0}.conversation-search button{color:#667781;cursor:pointer;background:0 0;border:0;font-size:18px}.conversation-filters{scrollbar-width:none;gap:6px;padding:5px 10px 8px;display:flex;overflow-x:auto}.conversation-filters::-webkit-scrollbar{display:none}.conversation-filters button{border-radius:var(--radius-full);color:#54656f;font:inherit;font-size:var(--font-size-xs);cursor:pointer;background:#fff;border:1px solid #e3e7e9;flex-shrink:0;padding:5px 10px}.conversation-filters button:hover{background:#f5f6f6}.conversation-filters button.active{color:#008069;background:#e7fce8;border-color:#d9fdd3;font-weight:600}.messages-app .conv-list{flex:1;gap:0;min-height:0;margin:0;overflow-y:auto}.messages-app .conv-list li{border-bottom:1px solid #f0f2f5}.messages-app .conv-item{border:0;border-radius:0;gap:11px;min-height:68px;padding:9px 12px}.messages-app .conv-item:hover{background:#f5f6f6}.messages-app .conv-item.active{background:#f0f2f5}.messages-app .conv-item .avatar{width:44px;height:44px;font-size:var(--font-size-sm)}.messages-app .conv-name{color:#111b21;font-size:14px;font-weight:500}.messages-app .conv-item.unread .conv-name{font-weight:700}.messages-app .conv-time{color:#667781;font-size:10px}.messages-app .conv-item.unread .conv-time{color:#00a884}.messages-app .conv-preview{color:#667781;font-size:var(--font-size-xs)}.messages-app .badge-unread{color:#fff;background:#25d366;min-width:19px;height:19px;padding:2px 5px;font-size:10px}.messages-list-state{justify-content:space-between;align-items:center;gap:var(--space-sm);margin:var(--space-sm);display:flex}.messages-list-empty{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-xl);color:#667781;text-align:center;flex-direction:column;flex:1;display:flex}.messages-list-empty>span{color:#00a884}.messages-list-empty p{margin:0}.messages-list-empty.compact{padding:var(--space-xl)var(--space-md);flex:none}.conversation-skeletons{flex-direction:column;padding:6px 12px;display:flex}.conversation-skeletons span{background:linear-gradient(90deg,#0000,#f5f6f6,#0000) 0 0/200% 100%;border-bottom:1px solid #f0f2f5;height:68px;animation:1.3s infinite shimmer}.messages-detail{background:#efeae2;flex-direction:column;min-width:0;min-height:0;display:flex}.messages-app .chat-head{z-index:6;background:#f0f2f5;border:0;flex-shrink:0;gap:5px;min-height:66px;padding:8px 12px}.chat-head-main{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:0;display:flex}.messages-app .chat-head-name{color:#111b21;font-size:14px}.messages-app .chat-head-sub{color:#667781;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-back-btn{color:#54656f;cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:30px;line-height:1;display:none}.messages-welcome{padding:var(--space-xl);color:#667781;text-align:center;background:#f0f2f5;border-bottom:5px solid #25d366;flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.messages-welcome-art{width:132px;height:132px;margin-bottom:var(--space-lg);color:#008069;background:#e4e7e9;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.messages-welcome h2{margin:0 0 var(--space-sm);color:#41525d;font-size:28px;font-weight:300}.messages-welcome p{max-width:420px;margin:0 0 var(--space-lg)}.chat-dialog-backdrop{z-index:70}.chat-dialog{width:min(460px,100vw - 24px);max-height:min(760px,100dvh - 24px);padding:0;overflow:hidden}.chat-dialog-wide{width:min(620px,100vw - 24px)}.chat-dialog-head{border-bottom:1px solid var(--color-border-light);background:#f0f2f5;justify-content:space-between;align-items:center;min-height:58px;padding:12px 16px;display:flex}.chat-dialog-body,.group-info-body{flex-direction:column;max-height:calc(100dvh - 96px);display:flex;overflow-y:auto}.chat-mode-tabs{grid-template-columns:1fr 1fr;padding:12px 16px 0;display:grid}.chat-mode-tabs button{border:0;border-bottom:2px solid var(--color-border);color:var(--color-text-secondary);font:inherit;cursor:pointer;background:0 0;padding:9px}.chat-mode-tabs button.active{color:#008069;border-bottom-color:#00a884;font-weight:600}.chat-dialog-section{flex-direction:column;gap:8px;padding:16px;display:flex}.chat-dialog-actions{justify-content:flex-end;gap:var(--space-sm);border-top:1px solid var(--color-border-light);background:var(--color-surface);padding:12px 16px;display:flex;position:sticky;bottom:0}.chat-member-picker-head{margin-top:var(--space-sm);flex-direction:column;gap:5px;display:flex}.chat-member-picker{border:1px solid var(--color-border-light);border-radius:var(--radius-sm);max-height:330px;overflow-y:auto}.chat-member-option{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--color-border-light);cursor:pointer;min-height:52px;padding:7px 9px;display:flex}.chat-member-option:hover,.chat-member-option.selected{background:#f0fff4}.chat-member-option input{opacity:0;pointer-events:none;position:absolute}.chat-member-lines{flex-direction:column;flex:1;min-width:0;display:flex}.chat-member-lines small{color:var(--color-text-tertiary)}.chat-member-check{border:1px solid var(--color-border-dark);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:21px;height:21px;display:inline-flex}.chat-member-option.selected .chat-member-check{background:#00a884;border-color:#00a884}.chat-dialog-empty{padding:var(--space-xl);text-align:center}.group-info-hero{background:#f8fafb;align-items:center;gap:12px;padding:18px 16px;display:flex}.group-info-hero .avatar{width:56px;height:56px;font-size:17px}.group-info-avatar,.group-info-hero-copy{flex-direction:column;display:flex}.group-info-avatar{align-items:center;gap:8px}.group-info-hero-copy{min-width:0}.group-info-hero strong{font-size:var(--font-size-md)}.group-info-hero span{color:var(--color-text-tertiary)}.group-avatar-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;display:flex}.group-description{border-bottom:1px solid var(--color-border-light);color:var(--color-text-secondary);margin:0;padding:14px 16px}.group-info-section{border-top:1px solid var(--color-border-light);flex-direction:column;gap:7px;padding:14px 16px;display:flex}.group-info-section h3{color:#008069;font-size:var(--font-size-sm);gap:5px;margin:0 0 4px;font-weight:600;display:flex}.group-info-section h3 span{color:var(--color-text-tertiary);font-weight:400}.group-save{align-self:flex-end;margin-top:3px}.group-members-list{flex-direction:column;display:flex}.group-members-list li{align-items:center;gap:var(--space-sm);border-bottom:1px solid var(--color-border-light);min-height:50px;padding:6px 0;display:flex}.group-member-lines{flex-direction:column;flex:1;min-width:0;display:flex}.group-member-lines small{color:var(--color-text-tertiary)}.group-member-actions{align-items:center;gap:4px;display:flex}.group-member-actions .select{width:108px;font-size:var(--font-size-xs);padding:5px 24px 5px 7px}.group-add-member{gap:var(--space-sm);display:flex}.group-add-member .select{flex:1}.group-managed-note{align-items:center;gap:var(--space-sm);border-top:1px solid var(--color-border-light);color:var(--color-text-secondary);background:#f8fafb;margin:0;padding:12px 16px;display:flex}.group-info-footer{border-top:1px solid var(--color-border-light);justify-content:flex-start;padding:12px 16px;display:flex}.chat-channel-row{align-items:center;gap:7px;margin:0;display:flex}.chat-channel-row span{color:#25d366}.group-setting-row{justify-content:space-between;align-items:center;gap:var(--space-md);width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:8px 0;display:flex}.group-setting-row>span:first-child{flex-direction:column;display:flex}.group-setting-row small{color:var(--color-text-tertiary)}.group-setting-row>span:last-child{color:#008069;font-size:23px}.danger-text{color:var(--status-blocked-text)!important}@media (max-width:820px){.messages-app{height:calc(100dvh - var(--topbar-h,60px) - 20px);min-height:520px;display:block}.messages-sidebar,.messages-detail{width:100%;height:100%}.messages-app.has-active-chat .messages-sidebar,.messages-app:not(.has-active-chat) .messages-detail{display:none}.chat-back-btn{display:inline-flex}.messages-app .chat-toolbar{right:48px}}@media (max-width:720px){.messages-app{height:calc(100dvh - var(--topbar-h,60px) - var(--space-md) - 76px - env(safe-area-inset-bottom));min-height:0}}@media (max-width:520px){.messages-app{margin:calc(-1*var(--space-md));height:calc(100dvh - var(--topbar-h,60px) - 76px - env(safe-area-inset-bottom));border:0;border-radius:0}.group-member-actions{flex-direction:column;align-items:flex-end}.group-info-hero{align-items:flex-start}.group-avatar-actions{flex-direction:column;align-items:stretch}.chat-dialog{border-radius:0;width:100vw;max-height:100dvh}}.notif-layout{gap:var(--space-lg);grid-template-columns:minmax(0,2fr) minmax(240px,1fr);align-items:start;display:grid}@media (max-width:900px){.notif-layout{grid-template-columns:1fr}}.notif-list{gap:var(--space-xs);flex-direction:column;display:flex}.notif-day{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.07em;color:var(--color-text-tertiary);padding:var(--space-sm)var(--space-xs)2px;font-weight:600}.notif-group:first-child .notif-day{padding-top:0}.notif-item{align-items:flex-start;gap:var(--space-md);text-align:left;width:100%;padding:var(--space-sm)var(--space-md);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;cursor:pointer;font:inherit;transition:background-color var(--dur-fast)var(--ease-standard),border-color var(--dur-fast)var(--ease-standard);display:flex}.notif-item:hover{background:var(--gray-50)}.notif-item.unread{border-color:var(--brand-100);background:#f5f9ff}.notif-item.unread:hover{background:var(--brand-50)}.notif-icon{border-radius:var(--radius-full);background:var(--gray-100);width:28px;height:28px;color:var(--gray-500);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.notif-tone-mention{color:var(--module-chat);background:#fdf2f8}.notif-tone-indent{background:var(--status-done-bg);color:var(--status-done-text)}.notif-tone-invite{background:var(--status-active-bg);color:var(--status-active-text)}.notif-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notif-head{align-items:center;gap:var(--space-sm);display:flex}.notif-title{font-weight:500}.notif-item.unread .notif-title{font-weight:700}.notif-dot{border-radius:var(--radius-full);background:var(--brand-600);flex-shrink:0;width:8px;height:8px}.notif-body{color:var(--color-text-secondary);font-size:var(--font-size-base);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.notif-meta{font-size:var(--font-size-xs)}.notif-type{text-transform:capitalize}.notif-filter{padding:var(--space-xs)var(--space-sm)}.pref-list{gap:var(--space-xs);flex-direction:column;display:flex}.pref-option{align-items:center;gap:var(--space-sm);padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-sm);cursor:pointer;display:flex}.pref-option:hover{background:var(--color-surface-variant)}.pref-option .pref-state{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-left:auto}.pref-label{text-transform:capitalize}.crm-board{gap:var(--space-md);grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;display:grid}@media (max-width:1100px){.crm-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.crm-board{grid-template-columns:1fr}}.crm-col{background:var(--color-surface-variant);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--space-sm);gap:var(--space-sm);flex-direction:column;min-height:120px;display:flex}.crm-col-head{align-items:center;gap:var(--space-sm);padding:var(--space-xs)var(--space-sm);display:flex}.crm-col-title{font-size:var(--font-size-sm);text-transform:capitalize;font-weight:700}.crm-col-head .badge,.crm-col-head .chip{margin-left:auto}.crm-col-empty{padding:0 var(--space-sm)var(--space-xs);font-size:var(--font-size-sm)}.crm-stage-dot{border-radius:var(--radius-full);background:var(--status-neutral);flex-shrink:0;width:8px;height:8px}.crm-stage-inquiry{background:var(--status-neutral)}.crm-stage-meeting{background:var(--status-active)}.crm-stage-deal{background:var(--status-risk)}.crm-stage-booking{background:var(--status-done)}.crm-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-sm)var(--space-md);gap:var(--space-xs);box-shadow:var(--shadow-1);transition:box-shadow var(--dur-fast)var(--ease-standard);flex-direction:column;display:flex}.crm-card:hover{box-shadow:var(--shadow-2)}.crm-card-head{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.crm-card-name{overflow-wrap:anywhere;font-weight:600}.crm-card-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary);overflow-wrap:anywhere}.crm-card-click{cursor:pointer}.crm-card-click:focus-visible{outline:var(--focus-outline);outline-offset:2px}.crm-card-click .crm-card-head .row-open{margin-left:auto}.crm-card-click:hover .row-open{color:var(--color-text-secondary)}.crm-timeline{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.crm-timeline li{padding-left:var(--space-lg);font-size:var(--font-size-base);position:relative}.crm-timeline li:before{content:"";border-radius:var(--radius-full);background:var(--brand-600);width:8px;height:8px;position:absolute;top:6px;left:4px}.crm-timeline-meta{color:var(--color-text-secondary);font-size:var(--font-size-xs);overflow-wrap:anywhere}.settings-cards{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.settings-card{align-items:flex-start;gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-1);color:var(--color-text-primary);transition:border-color var(--dur-fast)var(--ease-standard),box-shadow var(--dur-fast)var(--ease-standard);display:flex}.settings-card:hover{border-color:var(--brand-300);box-shadow:var(--shadow-2);text-decoration:none}.settings-card-icon{border-radius:var(--radius-md);background:var(--brand-50);width:36px;height:36px;color:var(--brand-600);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.settings-card-lines{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.settings-card-title{font-weight:600;font-size:var(--font-size-md)}.settings-card-desc{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.45}.settings-card-arrow{color:var(--color-text-tertiary);flex-shrink:0;align-self:center}.role-cards{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.role-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-sunken);padding:var(--space-lg);gap:var(--space-sm);flex-direction:column;display:flex}.role-card-head{align-items:center;gap:var(--space-sm);display:flex}.role-card-icon{border-radius:var(--radius-full);background:var(--brand-50);width:28px;height:28px;color:var(--brand-600);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.role-card-name{font-weight:600}.role-card-desc{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.45}.perm-matrix th:nth-child(n+2),.perm-matrix td:nth-child(n+2){text-align:center;width:96px}.perm-matrix input[type=radio]{width:15px;height:15px;accent-color:var(--brand-600);cursor:pointer;margin:0}.invite-link{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:var(--color-surface-sunken);border:1px solid var(--color-border-light);border-radius:var(--radius-xs);padding:var(--space-sm);overflow-wrap:anywhere;display:block}.invite-summary{border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-surface-sunken);padding:var(--space-md);gap:var(--space-xs);flex-direction:column;margin:0;display:flex}.invite-row{justify-content:space-between;gap:var(--space-md);font-size:var(--font-size-base);display:flex}.invite-row dt{color:var(--color-text-secondary);flex-shrink:0}.invite-row dd{text-align:right;overflow-wrap:anywhere;margin:0;font-weight:500}.copilot-toggle{align-items:center;gap:6px;display:inline-flex}.copilot-toggle .copilot-glyph{width:20px;height:20px}.copilot-glyph{border-radius:var(--radius-sm);background:var(--status-review-bg);width:24px;height:24px;color:var(--module-generate);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.copilot-icon-btn{flex-shrink:0;justify-content:center;align-items:center;width:26px;padding:0;display:inline-flex}.copilot-upsell{gap:var(--space-xs);border-radius:var(--radius-md);padding:var(--space-md);border-color:#ecd9a0;flex-direction:column;display:flex}.copilot-upsell-title{font-weight:700;font-size:var(--font-size-base);color:var(--status-risk-text);align-items:center;gap:6px;display:flex}.copilot-upsell-title svg{color:var(--status-risk)}.copilot-upsell-body{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.5}.copilot-send{width:30px;padding:0}.welcome-page{min-height:100vh;padding:var(--space-xxl)var(--space-lg);background:radial-gradient(720px 360px at 50% -10%,#2563eb1a,#0000 70%),linear-gradient(#f8fafc 0%,#eef2f7 100%);justify-content:center;align-items:flex-start;display:flex}.welcome-frame{gap:var(--space-lg);--module-accent:var(--brand-600);flex-direction:column;width:100%;max-width:620px;display:flex}.welcome-head{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.welcome-brand-lines{flex-direction:column;line-height:1.15;display:flex}.welcome-brand-sub{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);font-weight:600}.welcome-rail{flex-wrap:nowrap}.welcome-rail .welcome-rail-pill{cursor:default}.welcome-card{gap:var(--space-md);padding:var(--space-xl);box-shadow:var(--shadow-3);animation:dialog-in var(--dur-base)var(--ease-out);flex-direction:column;display:flex}.welcome-title{font-size:var(--font-size-xxl);letter-spacing:-.02em;font-weight:700;line-height:1.2}.welcome-sub{color:var(--color-text-secondary);line-height:1.5}.welcome-form{gap:var(--space-md);flex-direction:column;display:flex}.welcome-input-lg{min-height:40px;font-size:var(--font-size-md)}.welcome-fieldset{gap:var(--space-xs);border:0;flex-direction:column;margin:0;padding:0;display:flex}.welcome-types{gap:var(--space-sm);grid-template-columns:repeat(4,1fr);display:grid}.welcome-type-tile{align-items:center;gap:var(--space-xs);padding:var(--space-md)var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);font:inherit;font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:border-color var(--dur-fast)var(--ease-standard),background-color var(--dur-fast)var(--ease-standard),color var(--dur-fast)var(--ease-standard);flex-direction:column;font-weight:600;display:flex}.welcome-type-tile:hover{background:var(--color-surface-variant)}.welcome-type-tile:focus-visible{box-shadow:var(--focus-ring);outline:none}.welcome-type-tile.selected{border-color:var(--brand-600);color:var(--color-text-primary);background:color-mix(in srgb,var(--brand-600)7%,#fff)}.welcome-type-icon{border-radius:var(--radius-sm);background:var(--color-surface-variant);width:34px;height:34px;color:var(--color-text-secondary);justify-content:center;align-items:center;display:inline-flex}.welcome-type-tile.selected .welcome-type-icon{background:color-mix(in srgb,var(--brand-600)14%,#fff);color:var(--brand-600)}.welcome-structure{gap:var(--space-md);grid-template-columns:repeat(4,1fr);display:grid}.welcome-stepper{align-items:center;gap:var(--space-xs);display:flex}.welcome-stepper-btn{justify-content:center;width:30px;min-width:30px;padding:0}.welcome-stepper-value{text-align:center;font-variant-numeric:tabular-nums;min-width:0;font-weight:600}.welcome-date{min-height:32px}.welcome-summary{font-size:var(--font-size-base);font-variant-numeric:tabular-nums;color:var(--color-text-primary);background:color-mix(in srgb,var(--brand-600)6%,#fff);border:1px solid color-mix(in srgb,var(--brand-600)18%,#fff);border-radius:var(--radius-sm);padding:var(--space-sm)var(--space-md);font-weight:600}.welcome-actions{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.welcome-actions .btn-lg{justify-content:center;min-width:180px}.welcome-skip{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.welcome-skip-link{font:inherit;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.welcome-skip-link:hover{color:var(--color-text-primary)}.welcome-skip-link:focus-visible{outline:var(--focus-outline);outline-offset:2px;border-radius:2px}.welcome-build{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.welcome-build-row{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm)var(--space-md);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color var(--dur-base)var(--ease-standard),background-color var(--dur-base)var(--ease-standard),opacity var(--dur-base)var(--ease-standard);display:flex}.welcome-build-pending{opacity:.55}.welcome-build-done{border-color:color-mix(in srgb,var(--brand-600)22%,#fff)}.welcome-build-failed{background:var(--status-risk-bg);border-color:#ecd9a0}.welcome-build-state{border-radius:var(--radius-full);background:var(--color-surface-variant);width:22px;height:22px;color:var(--color-text-secondary);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.welcome-build-done .welcome-build-state{background:var(--color-success-light);color:#065f46}.welcome-build-failed .welcome-build-state{background:var(--status-risk-bg);color:var(--status-risk-text)}.welcome-build-dot{border-radius:var(--radius-full);background:var(--color-border);width:6px;height:6px}.welcome-spinner{border-radius:var(--radius-full);border:2px solid var(--color-border);border-top-color:var(--brand-600);width:12px;height:12px;animation:.7s linear infinite welcome-spin}@keyframes welcome-spin{to{transform:rotate(360deg)}}.welcome-build-icon{color:var(--color-text-secondary);flex-shrink:0;margin-top:4px;display:inline-flex}.welcome-build-lines{flex-direction:column;gap:2px;min-width:0;display:flex}.welcome-build-label{font-weight:600}.welcome-build-detail{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4}.welcome-stats{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.welcome-section-title{font-size:var(--font-size-base);text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-secondary);font-weight:700}.welcome-agents{gap:var(--space-sm);flex-direction:column;display:flex}.welcome-agent-grid{gap:var(--space-sm);grid-template-columns:repeat(3,1fr);display:grid}.welcome-agent-card{align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm)var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;transition:border-color var(--dur-fast)var(--ease-standard),background-color var(--dur-fast)var(--ease-standard);text-decoration:none;display:flex}.welcome-agent-card:hover{background:var(--color-surface-variant);border-color:color-mix(in srgb,var(--agent-accent,var(--brand-600))40%,var(--color-border))}.welcome-agent-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.welcome-agent-icon{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--agent-accent,var(--brand-600));background:color-mix(in srgb,var(--agent-accent,var(--brand-600))10%,#fff);border:1px solid color-mix(in srgb,var(--agent-accent,var(--brand-600))22%,#fff);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.welcome-agent-lines{flex-direction:column;gap:2px;min-width:0;display:flex}.welcome-agent-name{font-weight:600;font-size:var(--font-size-sm)}.welcome-agent-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.4}.welcome-actions-ready{margin-top:var(--space-xs)}.welcome-foot{padding-bottom:var(--space-xl)}.welcome-foot a{color:var(--color-text-tertiary)}@media (max-width:640px){.welcome-page{padding:var(--space-lg)var(--space-md)}.welcome-card{padding:var(--space-lg)}.welcome-head{justify-content:center}.welcome-rail{flex-wrap:wrap;justify-content:center}.welcome-types,.welcome-structure{grid-template-columns:repeat(2,1fr)}.welcome-stats{grid-template-columns:repeat(3,1fr)}.welcome-agent-grid{grid-template-columns:1fr}.welcome-actions .btn-lg{flex:1}}@media (max-width:720px){.home-head-row{gap:10px}.home-head-lines .page-title{font-size:22px;line-height:1.2}.home-date{font-size:13px}.home-head-actions{flex-wrap:nowrap;align-items:center;gap:8px}.home-period-control{flex-direction:row;flex:1;align-items:center;gap:8px;min-width:0}.home-period-control>span{white-space:nowrap}.home-period-control .select{flex:1;min-width:0;min-height:40px}.home-head-actions .btn{min-height:40px;padding-inline:12px}.home-stats-caption{margin-top:4px}.portfolio-stats{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:10px;margin:0 -16px;padding:2px 16px 10px;display:flex;overflow-x:auto}.portfolio-stats::-webkit-scrollbar{display:none}.portfolio-stats .stat-tile{scroll-snap-align:start;border-radius:14px;flex:0 0 46%;padding:14px}.portfolio-stats .stat-value{font-size:22px}.portfolio-table tbody tr{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px 8px;padding:14px;box-shadow:0 2px 8px #0f172a0a}.portfolio-table tbody td:first-child,.portfolio-table tbody td:nth-child(2){grid-column:1/-1}.portfolio-table tbody td:nth-child(2) .meter-row{width:100%}.portfolio-table tbody td:nth-child(2) .meter{flex:1}.portfolio-table tbody td:nth-child(3),.portfolio-table tbody td:nth-child(4),.portfolio-table tbody td:nth-child(5){grid-column:span 2}.portfolio-table tbody td:nth-child(6),.portfolio-table tbody td:nth-child(7){grid-column:span 3}.portfolio-table tbody td:last-child{border-top:1px solid var(--color-border-light);grid-column:1/-1;padding-top:4px}.portfolio-table tbody td:before{text-transform:uppercase;letter-spacing:.04em;font-size:10px}.portfolio-table .nowrap{white-space:normal;font-variant-numeric:tabular-nums;font-weight:600}.portfolio-table .row-actions .btn{flex:1}.table-wrap:has(.portfolio-table){background:0 0;border:0;overflow:visible}.home-create-org{max-width:none}.home-create-org .org-head-row{flex-direction:column;align-items:stretch;gap:10px}.home-create-org .btn{width:100%}.portfolio-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portfolio-stats .stat-tile{border-radius:14px;padding:14px}.portfolio-table,.portfolio-table tbody{width:100%;min-width:0;display:block}.portfolio-table thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.portfolio-table tr{border:1px solid var(--color-border-light);border-radius:14px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0;padding:12px;display:grid}.portfolio-table td{white-space:normal;border:0;flex-direction:column;gap:5px;min-width:0;padding:0;display:flex}.portfolio-table td:before{content:attr(data-label);color:var(--color-text-secondary);font-size:11px;font-weight:500}.portfolio-table td:first-child,.portfolio-table td:last-child{grid-column:1/-1}.portfolio-table td:first-child:before,.portfolio-table td:last-child:before{display:none}.portfolio-table .file-name{white-space:normal;overflow-wrap:anywhere;font-size:16px}.portfolio-table .row-actions{flex-wrap:wrap;justify-content:flex-start}}.messages-dashboard-back{color:#54656f;border-radius:50%;flex:0 0 44px;justify-content:center;align-items:center;height:44px;display:inline-flex}.messages-dashboard-back:hover{background:var(--color-surface-variant)}.messages-sidebar-title{flex:1;min-width:0}@media (max-width:820px){.messages-sidebar-head{gap:8px}.chat-back-btn{flex-shrink:0;width:44px;height:44px}}.messages-app .msg-list{min-height:0}
.project-home-header{margin-bottom:var(--space-md)}.project-home-title-row,.project-home-section-head,.project-home-card-head{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.project-home-title-row{align-items:center}.project-home-title{align-items:flex-start;gap:var(--space-sm);min-width:0;display:flex}.project-home-title-icon{width:28px;height:28px;color:var(--brand-700);background:var(--brand-50);border:1px solid var(--brand-100);border-radius:var(--radius-sm);flex:0 0 28px;justify-content:center;align-items:center;margin-top:2px;display:inline-flex}.project-home-title-row .page-title{margin:1px 0 4px}.project-home-kicker{color:var(--brand-600);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.project-home-header-actions{gap:var(--space-sm);flex-wrap:wrap;justify-content:flex-end;display:flex}.project-lifecycle{gap:var(--space-sm);margin:0 0 var(--space-xl);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.project-stage{align-items:stretch;gap:var(--space-sm);min-width:0;padding:var(--space-md)var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;font:inherit;text-align:left;cursor:pointer;box-shadow:var(--shadow-1);transition:border-color var(--dur-fast)var(--ease-standard),background-color var(--dur-fast)var(--ease-standard);flex-direction:column;display:flex;position:relative}.project-stage:before{content:"";border-radius:var(--radius-sm)var(--radius-sm)0 0;background:var(--color-border);height:3px;position:absolute;top:0;left:0;right:0}.project-stage.is-current:before{background:var(--brand-600)}.project-stage.is-complete:before{background:var(--status-done)}.project-stage.is-selected{border-color:color-mix(in srgb,var(--brand-600)45%,#fff);background:color-mix(in srgb,var(--brand-600)4%,#fff)}.project-stage:hover{background:var(--gray-50)}.project-stage:focus-visible{z-index:1;outline:var(--focus-outline);outline-offset:2px;position:relative}.project-stage-head{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.project-stage-node{border:1px solid var(--color-border-dark);width:20px;height:20px;color:var(--color-text-secondary);font-size:var(--font-size-xs);border-radius:50%;flex:0 0 20px;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.project-stage.is-current .project-stage-node{color:#fff;background:var(--brand-600);border-color:var(--brand-600)}.project-stage.is-complete .project-stage-node{color:#fff;background:var(--status-done);border-color:var(--status-done)}.project-stage-head strong{font-size:var(--font-size-md)}.project-stage-state{color:var(--color-text-tertiary);font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;margin-left:auto;font-weight:700}.project-stage.is-current .project-stage-state{color:var(--brand-700)}.project-stage.is-complete .project-stage-state{color:var(--status-done-text)}.project-stage-copy{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.project-home-stage{gap:var(--space-md);flex-direction:column;display:flex}.project-home-section-head h2{font-size:var(--font-size-md);margin:0 0 3px;font-weight:600}.project-home-section-head p,.project-home-card-head p{margin:0}.project-home-design-grid{gap:var(--space-lg);grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);align-items:start;display:grid}.project-home-stack{gap:var(--space-lg);flex-direction:column;display:flex}.project-home-card-head h3{font-size:var(--font-size-md);margin:0}.project-model-card{min-width:0}.project-model-card .takeoff-viewer{height:320px;min-height:280px}.project-model-footer{justify-content:space-between;gap:var(--space-sm);padding-top:var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs);display:flex}.project-model-empty{justify-content:center;align-items:center;gap:var(--space-sm);min-height:280px;color:var(--color-text-secondary);text-align:center;background:var(--gray-50);border:1px dashed var(--color-border);border-radius:var(--radius-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.project-model-empty svg{color:var(--module-takeoff)}.project-question-list{gap:var(--space-sm);margin-top:var(--space-md);flex-direction:column;display:flex}.project-question-row{align-items:center;gap:var(--space-sm);padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:inherit;grid-template-columns:auto 1fr auto;text-decoration:none;display:grid}.project-question-row:hover{border-color:var(--brand-300);background:var(--brand-50)}.project-question-row span{color:var(--status-risk-text);font-size:var(--font-size-xs);font-weight:700}.project-question-row strong{min-width:0;font-size:var(--font-size-sm);font-weight:500}.project-home-metrics,.project-home-metrics-grid{gap:var(--space-sm);margin-top:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.project-home-metrics-grid{grid-template-columns:repeat(3,1fr)}.project-home-metric{min-width:0;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--gray-50);flex-direction:column;gap:3px;display:flex}.project-home-metric strong{font-size:var(--font-size-xl);text-overflow:ellipsis;line-height:1.1;overflow:hidden}.project-home-metric span{color:var(--color-text-secondary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.04em;font-weight:700}.project-home-metric small{color:var(--color-text-tertiary);font-size:var(--font-size-xs)}.project-home-metric.is-warning strong{color:var(--status-risk-text)}.project-home-drawings{margin-top:var(--space-md)}.project-home-list{gap:var(--space-sm);margin-top:var(--space-md);grid-template-columns:repeat(4,1fr);display:grid}.project-home-list>div{padding:var(--space-sm);border-left:2px solid var(--module-takeoff);flex-direction:column;gap:3px;display:flex}.project-home-list strong{font-size:var(--font-size-xl)}.project-home-list span{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.project-home-next{align-items:center;gap:var(--space-md);display:flex}.project-home-next h3{margin:0}.project-home-next p{color:var(--color-text-secondary);flex:1;margin:0}.project-home-execution-links{gap:var(--space-md);grid-template-columns:repeat(3,1fr);display:grid}.project-home-execution-links>a{color:inherit;flex-direction:column;gap:4px;text-decoration:none;display:flex}.project-home-execution-links>a:hover{border-color:var(--brand-300)}.project-home-execution-links span{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.project-home-loading{gap:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.project-home-loading .skeleton-row{grid-column:1/-1;height:180px}@media (max-width:900px){.project-home-design-grid,.project-home-execution-links{grid-template-columns:1fr}}@media (max-width:720px){.project-home-title-row,.project-home-section-head,.project-home-card-head{flex-direction:column;align-items:stretch}.project-home-title-row{gap:var(--space-sm)}.project-home-title{align-items:flex-start}.project-home-header-actions{justify-content:flex-start}.project-home-header-actions .btn{flex:auto;justify-content:center}.project-lifecycle{margin:0 0 var(--space-lg);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.project-stage{min-height:82px;padding:var(--space-sm)var(--space-xs)var(--space-md);box-shadow:none;text-align:center;border:0;border-radius:0;align-items:center;gap:3px}.project-stage:before{display:none}.project-stage.is-selected{border-bottom:2px solid var(--brand-600);background:0 0}.project-stage:hover{background:0 0}.project-stage-head{justify-content:center;gap:5px}.project-stage-head strong{font-size:var(--font-size-base);color:var(--color-text-secondary)}.project-stage.is-selected .project-stage-head strong{color:var(--color-text-primary)}.project-stage-node{flex-basis:18px;width:18px;height:18px;font-size:10px}.project-stage-state{display:none}.project-stage-copy{max-width:100%;font-size:var(--font-size-xs);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.project-home-metrics-grid,.project-home-list{grid-template-columns:repeat(2,1fr)}.project-model-footer{flex-direction:column}}.project-home-title>div{min-width:0}.project-home-title p{overflow-wrap:anywhere;margin:0}.project-home-title-icon{margin-top:0}.project-home-stage:focus-visible{outline:var(--focus-outline);outline-offset:4px}.project-home-section-head{align-items:center;min-height:28px}.project-home-section-head>.muted{font-size:var(--font-size-sm)}.project-home-card-head{flex-wrap:wrap;align-items:center;gap:8px}.project-home-card-head h3{align-items:center;gap:8px;line-height:1.4;display:flex}.project-home-card-head h3 svg{color:var(--color-text-secondary);flex-shrink:0}.project-home-card-head>.btn,.project-home-card-head>.chip{flex-shrink:0}.project-home-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.project-summary-card{gap:12px;min-width:0;padding:18px}.project-summary-card .project-home-card-head{min-height:26px}.project-summary-value{letter-spacing:-.035em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:28px;font-weight:650;line-height:1.2}.project-summary-detail{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0}.project-summary-progress{appearance:none;background:var(--gray-100);width:100%;height:5px;color:var(--brand-600);border:0;border-radius:4px;display:block;overflow:hidden}.project-summary-progress::-webkit-progress-bar{background:var(--gray-100)}.project-summary-progress::-webkit-progress-value{background:var(--brand-600);border-radius:4px}.project-summary-progress::-moz-progress-bar{background:var(--brand-600);border-radius:4px}.project-summary-footer{border-top:1px solid var(--color-border-light);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;margin-top:auto;padding-top:12px;display:grid}.project-summary-footer>span{color:var(--color-text-secondary);font-size:var(--font-size-xs)}.project-home-actions{gap:4px}.project-home-actions .project-home-card-head{padding-bottom:12px}.project-action-list{margin:0;padding:0;list-style:none}.project-action-list li{border-top:1px solid var(--color-border-light);grid-template-columns:32px minmax(0,1fr) auto 130px;align-items:center;gap:12px;padding:16px 0;display:grid}.project-action-icon{background:var(--gray-50);width:32px;height:32px;color:var(--brand-600);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);justify-content:center;align-items:center;display:inline-flex}.project-action-icon.is-warning{color:var(--status-risk-text);background:var(--status-risk-bg)}.project-action-copy{overflow-wrap:anywhere;flex-direction:column;gap:4px;min-width:0;display:flex}.project-action-copy strong{font-size:var(--font-size-base);font-weight:600}.project-action-copy>span{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.project-action-list .btn{justify-self:end}.project-home-quiet{color:var(--color-text-secondary);align-items:flex-start;gap:12px;padding:16px 0 4px;display:flex}.project-home-quiet>svg{flex-shrink:0;margin-top:2px}.project-home-quiet strong{color:var(--color-text-primary);font-size:var(--font-size-base);font-weight:500}.project-home-quiet p{font-size:var(--font-size-sm);margin:4px 0 0;line-height:1.6}.project-attendance-link{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);align-items:center;gap:12px;padding:16px;display:flex}.project-attendance-link>span{flex-direction:column;flex:1;gap:4px;display:flex}.project-attendance-link strong{color:var(--color-text-primary);font-size:var(--font-size-base)}.project-attendance-link span span{font-size:var(--font-size-sm)}.project-attendance-link:hover{border-color:var(--brand-300);background:var(--brand-50);text-decoration:none}.project-home-error{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.project-home-error .btn{flex-shrink:0}.project-home-metric{background:var(--color-surface);padding:12px}.project-home-metric small{color:var(--color-text-secondary);line-height:1.5}.project-model-empty{gap:12px;margin-top:0;padding:24px}.project-model-empty a{font-weight:600}@media (min-width:721px) and (max-width:1100px){.project-home-summary-grid{gap:12px}.project-summary-card{padding:14px}.project-summary-value{font-size:24px}.project-stage-state{letter-spacing:0;font-size:9px}}@media (max-width:720px){.project-home-title-row{gap:16px}.project-home-header-actions{flex-wrap:nowrap}.project-home-header-actions .btn{flex:1 1 0;padding-inline:8px;font-size:12px}.project-home-header{margin-bottom:16px}.project-stage{background:0 0;border-bottom:2px solid #0000;min-height:62px;padding:10px 4px}.project-stage-copy{font-size:10px}.project-home-section-head{align-items:flex-start;gap:3px}.project-home-card-head{flex-direction:row;align-items:center}.project-home-card-head>.btn{padding-inline:10px}.project-home-design-grid,.project-home-stack{gap:12px}.project-home-stage .card{border-radius:10px;padding:16px}.project-model-empty{min-height:220px;padding:20px}.project-home-summary-grid{grid-template-columns:1fr;gap:12px}.project-summary-card{gap:10px}.project-summary-value{font-size:28px}.project-summary-footer>span{line-height:1.5}.project-summary-footer .btn{padding-inline:10px}.project-action-list li{grid-template-columns:28px minmax(0,1fr);gap:10px;padding:16px 0}.project-action-icon{width:28px;height:28px}.project-action-list .chip{grid-column:2;justify-self:start}.project-action-list .btn{grid-column:2;justify-self:stretch}.project-home-drawings{margin-top:0}.project-home-error{align-items:flex-start}}.project-home-rate-card{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:12px 0 0;line-height:1.5}
