@layer components{.projects-page{flex-direction:column}.projects-header,.projects-page{gap:var(--shell-spacing-lg);display:flex}.projects-header{justify-content:space-between;align-items:flex-start;padding:var(--shell-spacing-xl);background:var(--shell-color-surface);-webkit-backdrop-filter:var(--shell-glass-blur);border:1px solid var(--shell-glass-border);color:var(--shell-color-text);border-radius:var(--shell-radius-md);box-shadow:var(--shell-shadow-md)}.projects-header h1{margin:6px 0;font-size:24px}.projects-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:12px}.projects-kicker,.projects-subtext{color:var(--shell-color-text-muted)}.projects-subtext{max-width:640px}.projects-actions{gap:var(--shell-spacing-sm);display:flex}.projects-btn{border:1px solid var(--shell-color-border-strong);background:var(--shell-color-surface);color:var(--shell-color-text);border-radius:var(--shell-radius-sm);cursor:pointer;transition:all var(--shell-transition-fast);padding:10px 14px;font-weight:600}.projects-btn:hover:not(:disabled){border-color:var(--shell-color-brand);color:var(--shell-color-brand)}.projects-btn:disabled{opacity:.5;cursor:not-allowed}.projects-btn.primary{background:var(--projects-color-accent);border-color:var(--projects-color-accent);color:#fff}.projects-btn.primary:hover:not(:disabled){background:var(--projects-color-accent-hover);border-color:var(--projects-color-accent-hover)}.projects-btn-count{background:color-mix(in srgb,var(--shell-color-brand) 18%,transparent);color:var(--shell-color-brand);border:1px solid color-mix(in srgb,var(--shell-color-brand) 40%,transparent);border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:8px;padding:0 6px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.projects-tabs{background:var(--shell-color-surface);border-radius:var(--shell-radius-md);border:1px solid var(--shell-glass-border);gap:6px;padding:4px;display:inline-flex}.projects-tab{color:var(--shell-color-text-muted);border-radius:var(--shell-radius-sm);cursor:pointer;transition:all var(--shell-transition-fast);background:none;border:none;padding:10px 14px;font-weight:600}.projects-tab:hover{color:var(--shell-color-text)}.projects-tab.active{background:var(--shell-surface-brand-soft);color:var(--shell-color-brand)}.projects-content{gap:var(--shell-spacing-lg);flex-direction:column;display:flex}.projects-grid{gap:var(--shell-spacing-md);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.projects-card{background:var(--shell-color-surface);-webkit-backdrop-filter:var(--shell-glass-blur);border:1px solid var(--shell-glass-border);border-radius:var(--shell-radius-md);padding:var(--shell-spacing-lg);color:var(--shell-color-text);gap:var(--shell-spacing-sm);box-shadow:var(--shell-shadow-md);transition:border-color var(--shell-transition-fast),box-shadow var(--shell-transition-fast),transform var(--shell-transition-fast);flex-direction:column;display:flex}.projects-card:hover{border-color:rgba(var(--projects-color-accent-rgb),.5);box-shadow:var(--shell-shadow-lg);transform:translateY(-2px)}.projects-card-link{color:inherit;cursor:pointer;text-decoration:none}.projects-card-title{color:var(--shell-color-text);font-weight:700}.projects-muted{color:var(--shell-color-text-muted);line-height:1.5}.projects-list{color:var(--shell-color-text);gap:var(--shell-spacing-xs);margin:0;padding-left:18px;display:grid}.projects-stack{gap:var(--shell-spacing-md);flex-direction:column;display:flex}.projects-updates-header{justify-content:space-between;align-items:center;display:flex}.projects-updates-list{gap:var(--shell-spacing-md);flex-direction:column;display:flex}.projects-update-card{background:var(--shell-color-surface);-webkit-backdrop-filter:var(--shell-glass-blur);border:1px solid var(--shell-glass-border);border-radius:var(--shell-radius-md);padding:var(--shell-spacing-lg);color:var(--shell-color-text);gap:var(--shell-spacing-sm);box-shadow:var(--shell-shadow-md);flex-direction:column;display:flex}.projects-update-card.pinned{border-color:var(--projects-color-accent);box-shadow:0 0 0 1px rgba(var(--projects-color-accent-rgb),.35)}.projects-update-title-row{align-items:center;gap:var(--shell-spacing-sm);flex-wrap:wrap;display:flex}.projects-update-title{font-size:16px;font-weight:700}.projects-update-meta{color:var(--shell-color-text-muted);align-items:center;gap:6px;display:flex}.projects-update-body{color:var(--shell-color-text);line-height:1.5}.projects-comments-placeholder{border:1px dashed var(--shell-color-border);border-radius:var(--shell-radius-sm);color:var(--shell-color-text-muted);padding:10px 12px}.projects-status{border-radius:var(--shell-radius-full);text-transform:uppercase;padding:4px 8px;font-size:12px;font-weight:700}.projects-status.green{background:var(--projects-status-active-bg);color:var(--projects-status-active)}.projects-status.yellow{background:var(--projects-status-warning-bg);color:var(--projects-status-warning)}.projects-status.red{background:var(--projects-status-danger-bg);color:var(--projects-status-danger)}.projects-pill{border-radius:var(--shell-radius-full);background:var(--shell-color-surface-elevated);color:var(--shell-color-text);border:1px solid var(--shell-color-border);align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.projects-pill-row{gap:var(--shell-spacing-sm);flex-wrap:wrap;display:flex}.projects-program-badge{background:var(--shell-surface-brand-soft);color:var(--shell-color-brand);text-transform:uppercase;letter-spacing:.025em;border-radius:4px;align-items:center;gap:4px;margin-bottom:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.projects-programs-header-top{justify-content:space-between;align-items:center;gap:var(--shell-spacing-lg);margin-bottom:var(--shell-spacing-sm);display:flex}.projects-archive-toggle{color:var(--shell-color-text-muted);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.projects-archive-toggle input{accent-color:var(--shell-color-brand);cursor:pointer;width:14px;height:14px}.projects-archive-toggle:hover{color:var(--shell-color-text)}.projects-archived-badge{background:var(--shell-surface-neutral-strong);color:var(--shell-color-text-muted)}.projects-archived-badge,.projects-visibility-badge{text-transform:uppercase;letter-spacing:.025em;border-radius:4px;align-items:center;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.projects-visibility-badge{background:var(--shell-surface-brand-soft);color:var(--shell-color-brand)}.projects-card.archived{opacity:.7}.projects-card.archived:hover{opacity:.9}.projects-dot{color:var(--shell-color-text-muted)}.projects-updates-list .projects-update-card:last-child{margin-bottom:4px}.projects-update-top{gap:var(--shell-spacing-xs);flex-direction:column;display:flex}.projects-card-actions{gap:var(--shell-spacing-md);margin-top:var(--shell-spacing-xs);display:inline-flex}.projects-link{color:var(--projects-color-accent);font-weight:600;text-decoration:none}.projects-link:hover{text-decoration:underline}.projects-link.danger{color:var(--shell-color-negative)}.projects-programs{gap:var(--shell-spacing-md);flex-direction:column;display:flex}.projects-programs-header{justify-content:space-between;align-items:center;display:flex}.projects-chip{border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);border-radius:var(--shell-radius-full);cursor:pointer;transition:all var(--shell-transition-fast);padding:6px 12px;font-weight:600}.projects-chip.active{border-color:var(--projects-color-accent);color:var(--projects-color-accent);box-shadow:0 0 0 1px rgba(var(--projects-color-accent-rgb),.25)}.projects-list-grid{gap:var(--shell-spacing-md);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.projects-grid-card-shell{min-width:0;position:relative}.projects-grid-card-shell.reorder-enabled .projects-project-card{padding-top:calc(var(--shell-spacing-lg) + 8px)}.projects-grid-card-shell.dragging{opacity:.55}.projects-grid-card-shell.drop-target .projects-project-card{border-color:rgba(var(--projects-color-accent-rgb),.75);box-shadow:0 0 0 2px rgba(var(--projects-color-accent-rgb),.2),var(--shell-shadow-lg);transform:translateY(-2px)}.projects-grid-card-drag-handle{z-index:3;border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text-muted);border-radius:var(--shell-radius-sm);cursor:grab;padding:3px 5px;font-size:12px;line-height:1;position:absolute;top:10px;right:12px}.projects-grid-card-drag-handle:active{cursor:grabbing}.projects-grid-reorder-note{margin:8px 0 0;font-size:12px}.projects-card-title-row{justify-content:space-between;align-items:center;display:flex}.projects-meta-row{gap:var(--shell-spacing-sm);flex-wrap:wrap;display:flex}.projects-project-card .projects-link{margin-top:var(--shell-spacing-sm)}.projects-comments,.projects-comments-list{gap:var(--shell-spacing-sm);flex-direction:column;display:flex}.projects-comment{border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-color-surface);padding:10px 12px}.projects-comment-header{color:var(--shell-color-text-muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.projects-comment-author{color:var(--shell-color-text);font-weight:700}.projects-comment-body{margin-top:var(--shell-spacing-xs);color:var(--shell-color-text);line-height:1.4}.projects-comment-composer{align-items:center;gap:var(--shell-spacing-sm);display:flex}.projects-input{border-radius:var(--shell-radius-sm);border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);transition:border-color var(--shell-transition-fast),box-shadow var(--shell-transition-fast);flex:1;padding:10px 12px;font-size:.875rem}.projects-input:focus{border-color:var(--shell-color-border-focus);box-shadow:0 0 0 3px rgba(var(--shell-color-brand-rgb),.15);outline:none}.projects-select{border-radius:var(--shell-radius-sm);border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);cursor:pointer;transition:border-color var(--shell-transition-fast);padding:10px 12px;font-size:.875rem}.projects-select:focus{border-color:var(--shell-color-border-focus);outline:none}.projects-textarea{border-radius:var(--shell-radius-sm);border:1px solid var(--shell-color-border);background:var(--shell-color-surface);color:var(--shell-color-text);resize:vertical;transition:border-color var(--shell-transition-fast),box-shadow var(--shell-transition-fast);width:100%;padding:10px 12px;font-size:.875rem}.projects-textarea:focus{border-color:var(--shell-color-border-focus);box-shadow:0 0 0 3px rgba(var(--shell-color-brand-rgb),.15);outline:none}.projects-form{gap:10px}.projects-field{flex-direction:column;gap:6px;display:flex}.projects-label{color:var(--shell-color-text);font-size:13px;font-weight:600}.projects-checkbox{align-items:center;gap:var(--shell-spacing-sm);display:inline-flex}.projects-inline-actions{justify-content:flex-end;gap:var(--shell-spacing-sm);margin-top:var(--shell-spacing-xs);display:flex}.projects-error{color:var(--shell-color-negative);font-size:13px}.projects-btn.small{padding:8px 12px;font-size:12px}.projects-btn.danger{color:var(--shell-color-negative);border-color:var(--shell-color-negative)}.projects-btn.danger:hover:not(:disabled){background:var(--shell-color-negative);color:#fff}.projects-task-list{gap:var(--shell-spacing-sm);flex-direction:column;display:flex}.projects-task-row{padding:var(--shell-spacing-md);border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-color-surface);flex-direction:column;gap:6px;display:flex}.projects-task-main{justify-content:space-between;align-items:flex-start;gap:var(--shell-spacing-md);display:flex}.projects-task-title{color:var(--shell-color-text);font-weight:700}.projects-task-meta{flex-wrap:wrap;gap:6px;display:flex}.projects-timeline{flex-direction:column;gap:10px;display:flex;position:relative}.projects-timeline:before{content:"";background:var(--shell-color-border);width:2px;position:absolute;top:0;bottom:0;left:10px}.projects-timeline-row{align-items:flex-start;gap:var(--shell-spacing-md);padding-left:20px;display:flex;position:relative}.projects-timeline-dot{background:var(--projects-color-accent);border-radius:50%;width:12px;height:12px;position:absolute;top:6px;left:4px}.projects-timeline-content{gap:var(--shell-spacing-xs);flex-direction:column;display:flex}.projects-timeline-date{color:var(--shell-color-text-muted);font-size:12px}.projects-timeline-title{color:var(--shell-color-text);font-weight:700}[data-theme=light] .projects-status.green{color:var(--shell-color-positive)}[data-theme=light] .projects-status.yellow{color:#a16207}[data-theme=light] .projects-status.red{color:var(--shell-color-negative)}.projects-breadcrumb{align-items:center;gap:var(--shell-spacing-sm);margin-bottom:var(--shell-spacing-sm);font-size:.875rem;display:flex}.projects-breadcrumb-link{color:var(--projects-color-accent);transition:color var(--shell-transition-fast);text-decoration:none}.projects-breadcrumb-link:hover{color:var(--projects-color-accent-hover);text-decoration:underline}.projects-breadcrumb-current,.projects-breadcrumb-sep{color:var(--shell-color-text-muted)}.projects-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--shell-z-modal);background:rgba(0,0,0,.6);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.projects-modal{background:var(--shell-color-surface-elevated);-webkit-backdrop-filter:var(--shell-glass-blur);backdrop-filter:var(--shell-glass-blur);border:1px solid var(--shell-glass-border);border-radius:var(--shell-radius-lg);padding:var(--shell-spacing-xl);gap:var(--shell-spacing-md);box-shadow:var(--shell-shadow-lg);flex-direction:column;width:90%;max-width:400px;display:flex}.projects-task-create-modal{gap:var(--shell-spacing-lg);width:min(1040px,96vw);max-width:min(1040px,96vw);max-height:calc(100vh - 32px);overflow-y:auto}.projects-task-create-modal .projects-task-form-inline{background:none;border:0;border-radius:0;margin:0;padding:0}[data-theme=light] .projects-task-create-modal .projects-task-form-inline{background:none;border:0}.projects-task-create-modal .projects-task-form-inline .projects-form{flex-direction:column;gap:12px;display:flex}.projects-task-create-modal .projects-field{min-width:0}.projects-task-create-modal .projects-input,.projects-task-create-modal .projects-select,.projects-task-create-modal .projects-textarea,.projects-task-create-modal .rich-text-input{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.projects-task-create-modal .projects-error{overflow-wrap:anywhere;word-break:break-word}.projects-card-header{justify-content:space-between;align-items:center;gap:var(--shell-spacing-md);display:flex}.projects-form-row{gap:var(--shell-spacing-md);grid-template-columns:1fr 1fr;display:grid}}@layer components{@media (max-width:600px){.projects-form-row{grid-template-columns:1fr}}.projects-select-inline{width:auto;min-width:120px;padding:4px 8px;font-size:.75rem}.projects-save-feedback{border-radius:4px;padding:4px 8px;font-size:.75rem;font-weight:500}.projects-save-feedback.saved{background:var(--projects-status-active-bg);color:var(--projects-status-active)}.projects-save-feedback.error{background:var(--projects-status-danger-bg);color:var(--projects-status-danger)}[data-theme=light] .projects-save-feedback.saved{color:var(--shell-color-positive)}[data-theme=light] .projects-save-feedback.error{color:var(--shell-color-negative)}.projects-overview-details{flex-direction:column}.projects-detail-row,.projects-overview-details{gap:var(--shell-spacing-md);display:flex}.projects-detail-label{color:var(--shell-color-text-muted);flex-shrink:0;min-width:80px;font-size:12px}.projects-detail-value{color:var(--shell-color-text);font-size:13px}.projects-title-row{align-items:center;gap:var(--shell-spacing-md);display:flex}.projects-status-badge{border-radius:var(--shell-radius-md);text-transform:uppercase;letter-spacing:.5px;padding:4px 10px;font-size:11px;font-weight:600}.projects-status-badge.status-green{background:var(--projects-status-active-bg);color:var(--projects-status-active)}.projects-status-badge.status-blue{color:#3b82f6;background:rgba(59,130,246,.2)}.projects-status-badge.status-yellow{background:var(--projects-status-warning-bg);color:var(--projects-status-warning)}.projects-status-badge.status-gray{background:var(--shell-surface-neutral-strong);color:var(--shell-color-text-muted)}.projects-status-badge.status-red{background:var(--projects-status-danger-bg);color:var(--projects-status-danger)}[data-theme=light] .projects-status-badge.status-green{color:var(--shell-color-positive)}[data-theme=light] .projects-status-badge.status-blue{color:#2563eb}[data-theme=light] .projects-status-badge.status-yellow{color:#ca8a04}[data-theme=light] .projects-status-badge.status-red{color:var(--shell-color-negative)}.projects-pinned-update{gap:var(--shell-spacing-md);align-items:flex-start;display:flex}.projects-status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:4px}.projects-status-dot.green{background:var(--projects-status-active)}.projects-status-dot.yellow{background:var(--projects-status-warning)}.projects-status-dot.red{background:var(--projects-status-danger)}.projects-pinned-content{flex:1}.projects-pinned-title{color:var(--shell-color-text);font-size:14px;font-weight:600}.projects-pinned-meta{color:var(--shell-color-text-muted);margin-top:2px;font-size:12px}.projects-pinned-body{margin-top:var(--shell-spacing-sm);font-size:13px;line-height:1.5}.projects-empty-state{gap:var(--shell-spacing-md);flex-direction:column;display:flex}.projects-quick-actions{gap:var(--shell-spacing-sm);grid-template-columns:1fr 1fr;display:grid}.projects-action-btn{align-items:center;gap:var(--shell-spacing-sm);border-radius:var(--shell-radius-sm);background:var(--shell-surface-neutral-weak);border:1px solid var(--shell-color-border);color:var(--shell-color-text);cursor:pointer;transition:all var(--shell-transition-fast);padding:10px 12px;font-size:13px;display:flex}.projects-action-btn:hover{background:var(--shell-surface-neutral-soft);border-color:var(--shell-color-border-strong)}.projects-action-icon{font-size:14px}.projects-btn-link{color:var(--shell-color-brand);cursor:pointer;background:none;border:none;padding:0;font-size:13px}.projects-btn-link:hover{text-decoration:underline}.projects-card-header-right{align-items:center;gap:var(--shell-spacing-md);display:flex}.projects-design-shell{gap:var(--shell-spacing-md);flex-direction:column;display:flex}.projects-design-toolbar{justify-content:space-between;align-items:center;gap:var(--shell-spacing-md);display:flex}.projects-design-select{max-width:420px}.projects-design-frame{flex:1;height:calc(100vh - 360px);min-height:680px}.projects-design-frame .shell-persistent-iframe-container{height:100%}.projects-design-frame .shell-embed-frame-full{border-radius:var(--shell-radius-md)}.projects-milestone-summary-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px;display:grid}.projects-milestone-summary-card{border:1px solid var(--shell-color-border,rgba(148,163,184,.2));background:var(--shell-color-surface,rgba(15,23,42,.35));border-radius:14px;padding:12px 14px}.projects-milestone-summary-card-compact{min-height:78px}.projects-milestone-budget-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.projects-financial-editor-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));align-items:end;gap:12px;display:grid}.projects-financial-label{text-transform:uppercase;letter-spacing:.08em;color:var(--shell-color-text-muted,#94a3b8);font-size:.72em}.projects-financial-value{color:var(--shell-color-text);margin-top:4px;font-size:1.2rem;font-weight:700}.projects-financial-value.tone-positive{color:#22c55e}.projects-financial-value.tone-warning{color:#f59e0b}.projects-financial-value.tone-danger{color:#ef4444}.projects-financial-callout,.projects-financial-value.tone-neutral{color:var(--shell-color-text)}.projects-financial-callout{border:1px solid var(--shell-color-border);background:color-mix(in srgb,var(--shell-color-surface) 94%,transparent);border-radius:14px;flex-direction:column;gap:6px;margin-top:12px;padding:12px 14px;display:flex}.projects-financial-callout span{color:var(--shell-color-text-muted);font-size:.9rem;line-height:1.45}.projects-financial-callout.tone-positive{border-color:color-mix(in srgb,#22c55e 45%,var(--shell-color-border));background:color-mix(in srgb,#22c55e 10%,var(--shell-color-surface) 90%)}.projects-financial-callout.tone-warning{border-color:color-mix(in srgb,#f59e0b 45%,var(--shell-color-border));background:color-mix(in srgb,#f59e0b 10%,var(--shell-color-surface) 90%)}.projects-financial-callout.tone-danger{border-color:color-mix(in srgb,#ef4444 45%,var(--shell-color-border));background:color-mix(in srgb,#ef4444 10%,var(--shell-color-surface) 90%)}.projects-milestone-list{flex-direction:column;gap:12px;display:flex}.projects-milestone-item{border:1px solid var(--shell-color-border);background:color-mix(in srgb,var(--shell-color-surface) 88%,transparent);border-radius:16px;padding:16px;list-style:none}.projects-milestone-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;display:grid}.projects-milestone-main{flex-direction:column;gap:10px;min-width:0;display:flex}.projects-milestone-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.projects-milestone-meta{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(120px,1fr));gap:10px;display:grid}.projects-milestone-meta-card,.projects-milestone-timing{border:1px solid var(--shell-color-border);background:color-mix(in srgb,var(--shell-color-surface) 92%,transparent);border-radius:12px;flex-direction:column;gap:4px;min-width:0;padding:10px 12px;display:flex}.projects-milestone-meta-card strong,.projects-milestone-timing strong{color:var(--shell-color-text);font-size:.95rem}.projects-milestone-meta-card span:last-child,.projects-milestone-timing span:last-child{color:var(--shell-color-text-muted);font-size:.82rem;line-height:1.4}.projects-milestone-timing.positive{border-color:color-mix(in srgb,#22c55e 45%,var(--shell-color-border))}.projects-milestone-timing.warning{border-color:color-mix(in srgb,#f59e0b 45%,var(--shell-color-border))}.projects-milestone-timing.danger{border-color:color-mix(in srgb,#ef4444 45%,var(--shell-color-border))}.projects-milestone-actions{flex-direction:column;gap:10px;min-width:150px;display:flex}.projects-milestone-action-row{gap:8px;display:flex}.projects-milestone-action-row .projects-btn{flex:1}@media (max-width:900px){.projects-milestone-row{grid-template-columns:1fr}.projects-milestone-actions{min-width:0}}@media (max-width:720px){.projects-milestone-meta{grid-template-columns:1fr}}@media (max-width:900px){.projects-design-toolbar{flex-direction:column;align-items:stretch}.projects-design-select{width:100%;max-width:none}.projects-design-frame{height:calc(100vh - 320px);min-height:540px}}.overview-empty{gap:var(--shell-spacing-md);text-align:center;flex-direction:column}.overview-empty,.task-detail-overlay{align-items:center;padding:var(--shell-spacing-lg);display:flex}.task-detail-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:var(--shell-z-modal);background:rgba(0,0,0,.5);justify-content:center;position:fixed;top:0;bottom:0;left:0;right:0}.task-detail-modal{flex-direction:column;width:100%;max-width:600px;max-height:90vh;animation:taskModalSlideIn .2s ease-out;display:flex;overflow:hidden}@keyframes taskModalSlideIn{0%{opacity:0;transform:translateY(20px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.task-detail-header{padding-bottom:var(--shell-spacing-md);border-bottom:1px solid var(--shell-color-border);margin-bottom:var(--shell-spacing-lg);justify-content:space-between;align-items:center;display:flex}.task-detail-header-left{align-items:center;gap:var(--shell-spacing-sm);display:flex}.task-detail-status-badge{text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.task-detail-status-icon{font-size:10px}.task-detail-overdue-badge{font-size:11px}.task-detail-close{color:var(--shell-color-text-muted);cursor:pointer;border-radius:var(--shell-radius-sm);transition:all var(--shell-transition-fast);background:none;border:none;justify-content:center;align-items:center;padding:8px;display:flex}.task-detail-close:hover{background:var(--shell-surface-neutral-soft);color:var(--shell-color-text)}.task-detail-content{gap:var(--shell-spacing-xl);padding-right:var(--shell-spacing-xs);flex-direction:column;flex:1;display:flex;overflow-y:auto}.task-detail-title-section{margin-bottom:var(--shell-spacing-sm)}.task-detail-title-input,.task-detail-title-input input{font-size:1.25rem;font-weight:600}.task-detail-title-input input{background:none;border:none;padding:0}.task-detail-title-input input:focus{box-shadow:none;border-bottom:2px solid var(--shell-color-brand);border-radius:0}.task-detail-quick-info{gap:var(--shell-spacing-lg);padding:var(--shell-spacing-md) var(--shell-spacing-lg);background:var(--shell-surface-neutral-hint);border-radius:var(--shell-radius-md);border:1px solid var(--shell-color-border);flex-wrap:wrap;display:flex}.task-detail-quick-item{flex-direction:column;gap:4px;min-width:100px;display:flex}.task-detail-quick-label{text-transform:uppercase;letter-spacing:.5px;color:var(--shell-color-text-muted);font-size:11px;font-weight:600}.task-detail-assignee-preview{align-items:center;gap:var(--shell-spacing-sm);color:var(--shell-color-text);font-size:13px;display:flex}.task-detail-avatar{background:var(--shell-gradient-brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:11px;font-weight:600;display:flex}.task-detail-due-date{color:var(--shell-color-text);font-size:13px;font-weight:500}.task-detail-due-date.overdue{color:var(--shell-color-negative)}.task-detail-section{gap:var(--shell-spacing-md);flex-direction:column;display:flex}.task-detail-description-preview{margin-top:var(--shell-spacing-sm);padding:var(--shell-spacing-sm) var(--shell-spacing-md);background:var(--shell-surface-neutral-hint);border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm)}.task-detail-description-preview-label{text-transform:uppercase;letter-spacing:.4px;color:var(--shell-color-text-muted);margin-bottom:4px;font-size:11px;font-weight:600;display:inline-block}.task-detail-description-preview-body{color:var(--shell-color-text);white-space:pre-wrap;word-break:break-word;font-size:13px;line-height:1.5}.task-description-link{color:var(--shell-color-brand);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.task-description-link:hover{color:var(--shell-color-brand-hover,var(--shell-color-brand))}.task-detail-section-title{align-items:center;gap:var(--shell-spacing-sm);text-transform:uppercase;letter-spacing:.5px;color:var(--shell-color-text-muted);margin:0;font-size:13px;font-weight:600;display:flex}.task-detail-section-title svg{color:var(--shell-color-text-muted);opacity:.7}.task-detail-grid{gap:var(--shell-spacing-md);grid-template-columns:repeat(3,1fr);display:grid}.task-detail-timeline-grid{gap:var(--shell-spacing-md);grid-template-columns:1fr 1fr 120px;display:grid}.task-detail-timeline-grid-actual{grid-template-columns:1fr 1fr 150px}@media (max-width:600px){.task-detail-grid,.task-detail-timeline-grid{grid-template-columns:1fr}}.task-detail-field{flex-direction:column;display:flex}.task-detail-field-span-3{grid-column:1/-1}.task-detail-deps-list{gap:var(--shell-spacing-xs);flex-direction:column;display:flex}.task-detail-dep-item{align-items:center;gap:var(--shell-spacing-sm);padding:var(--shell-spacing-sm) var(--shell-spacing-md);background:var(--shell-surface-neutral-hint);border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);font-size:13px;display:flex}.task-detail-dep-icon{color:var(--shell-color-negative);font-size:14px}.task-detail-dep-title{color:var(--shell-color-text);flex:1}.task-detail-dep-remove{color:var(--shell-color-text-muted);cursor:pointer;border-radius:var(--shell-radius-sm);transition:all var(--shell-transition-fast);background:none;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.task-detail-dep-remove:hover{background:var(--shell-surface-neutral-soft);color:var(--shell-color-negative)}.task-detail-add-dep,.task-detail-blocker-picker{margin-top:var(--shell-spacing-sm)}.task-detail-blocker-picker{gap:var(--shell-spacing-xs);flex-direction:column;display:flex}.task-detail-blocker-picker-label{text-transform:uppercase;letter-spacing:.06em;color:var(--shell-color-text-muted);font-size:12px;font-weight:700}.task-detail-blocker-options{padding:var(--shell-spacing-sm);border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);background:var(--shell-surface-neutral-hint);gap:8px;max-height:180px;display:grid;overflow-y:auto}.task-detail-blocker-option{color:var(--shell-color-text);align-items:flex-start;gap:8px;font-size:13px;display:flex}.task-detail-blocker-option input{margin-top:2px}.task-detail-empty-text{color:var(--shell-color-text-muted);font-size:13px;font-style:italic}.task-detail-attachments-actions{align-items:center;gap:var(--shell-spacing-sm);display:flex}.task-detail-attachments-input{display:none}.task-detail-attachments-list{gap:var(--shell-spacing-xs);flex-direction:column;display:flex}.task-detail-attachment-item{align-items:center;gap:var(--shell-spacing-sm);padding:var(--shell-spacing-sm) var(--shell-spacing-md);background:var(--shell-surface-neutral-hint);border:1px solid var(--shell-color-border);border-radius:var(--shell-radius-sm);display:flex}.task-detail-attachment-link{color:var(--shell-color-brand);text-underline-offset:2px;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;text-decoration:underline;text-decoration-thickness:1px;overflow:hidden}.task-detail-attachment-meta{color:var(--shell-color-text-muted);white-space:nowrap;font-size:12px}.task-detail-checklist{gap:var(--shell-spacing-sm);flex-direction:column;display:flex}.task-detail-checklist-item{align-items:center;gap:var(--shell-spacing-sm);padding:var(--shell-spacing-sm) 0;display:flex}.task-detail-checkbox{border:2px solid var(--shell-color-border-strong);transition:all var(--shell-transition-fast);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.task-detail-checkbox.checked{background:var(--shell-color-positive);border-color:var(--shell-color-positive);color:#fff}.task-detail-checklist-text{color:var(--shell-color-text);font-size:14px}.task-detail-checklist-text.completed{color:var(--shell-color-text-muted);text-decoration:line-through}.task-detail-required{color:var(--shell-color-negative);margin-left:2px}.task-detail-error{align-items:center;gap:var(--shell-spacing-sm);padding:var(--shell-spacing-md);background:var(--projects-status-danger-bg);border:1px solid var(--projects-status-danger);border-radius:var(--shell-radius-sm);color:var(--projects-status-danger);margin-top:var(--shell-spacing-md);font-size:13px;display:flex}[data-theme=light] .task-detail-error{color:var(--shell-color-negative)}.task-detail-footer{justify-content:space-between;padding-top:var(--shell-spacing-lg);margin-top:var(--shell-spacing-lg);border-top:1px solid var(--shell-color-border)}.task-detail-footer,.task-detail-footer-left,.task-detail-footer-right{align-items:center;gap:var(--shell-spacing-sm);display:flex}.task-detail-content::-webkit-scrollbar{width:6px}.task-detail-content::-webkit-scrollbar-track{background:none}.task-detail-content::-webkit-scrollbar-thumb{background:var(--shell-color-border-strong);border-radius:3px}.task-detail-content::-webkit-scrollbar-thumb:hover{background:var(--shell-color-text-muted)}}@layer components{.projects-design-native-theme{--plm-color-bg:#fff;--plm-color-bg-secondary:#f9fafb;--plm-color-bg-tertiary:#f3f4f6;--plm-color-border:#e5e7eb;--plm-color-border-hover:#d1d5db;--plm-color-text:#111827;--plm-color-text-muted:#6b7280;--plm-color-text-subtle:#9ca3af;--plm-color-brand:#6366f1;--plm-color-brand-hover:#4f46e5;--plm-color-brand-light:#eef2ff;--plm-color-success:#10b981;--plm-color-success-light:#d1fae5;--plm-color-warning:#f59e0b;--plm-color-warning-light:#fef3c7;--plm-color-danger:#ef4444;--plm-color-danger-light:#fee2e2;--plm-spacing-xs:.25rem;--plm-spacing-sm:.5rem;--plm-spacing-md:1rem;--plm-spacing-lg:1.5rem;--plm-spacing-xl:2rem;--plm-radius-sm:.375rem;--plm-radius-md:.5rem;--plm-radius-lg:.75rem;--plm-radius-full:9999px;--plm-shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--plm-shadow-md:0 4px 6px -1px rgba(0,0,0,.1);--plm-shadow-lg:0 10px 15px -3px rgba(0,0,0,.1);--plm-transition-fast:.15s cubic-bezier(.4,0,.2,1)}[data-theme=dark] .projects-design-native-theme{--plm-color-bg:#0f1117;--plm-color-bg-secondary:#1a1d29;--plm-color-bg-tertiary:#22252f;--plm-color-border:#2d3139;--plm-color-border-hover:#3d4149;--plm-color-text:#f9fafb;--plm-color-text-muted:#9ca3af;--plm-color-text-subtle:#6b7280;--plm-color-brand:#818cf8;--plm-color-brand-hover:#a5b4fc;--plm-color-brand-light:#1e1b4b;--plm-color-success:#34d399;--plm-color-success-light:#064e3b;--plm-color-warning:#fbbf24;--plm-color-warning-light:#78350f;--plm-color-danger:#f87171;--plm-color-danger-light:#7f1d1d}.projects-design-native-theme *{box-sizing:border-box;margin:0;padding:0}.projects-design-native-theme{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--plm-color-bg);color:var(--plm-color-text);max-width:100vw;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:16px;line-height:1.5;overflow-x:hidden}.projects-design-native-theme a{color:inherit;text-decoration:none}.projects-design-native-theme button{font-family:inherit}.projects-design-native-theme .container{padding:0 var(--plm-spacing-lg);width:100%}.projects-design-native-theme .card{background:var(--plm-color-bg);border:1px solid var(--plm-color-border);border-radius:var(--plm-radius-lg);padding:var(--plm-spacing-lg);box-shadow:var(--plm-shadow-sm)}.projects-design-native-theme .btn{align-items:center;gap:var(--plm-spacing-sm);border-radius:var(--plm-radius-md);cursor:pointer;transition:all var(--plm-transition-fast);border:none;outline:none;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.projects-design-native-theme .btn-primary{background:var(--plm-color-brand);color:#fff}.projects-design-native-theme .btn-primary:hover{background:var(--plm-color-brand-hover)}.projects-design-native-theme .btn-secondary{background:var(--plm-color-bg-tertiary);color:var(--plm-color-text);border:1px solid var(--plm-color-border)}.projects-design-native-theme .btn-secondary:hover{border-color:var(--plm-color-border-hover);background:var(--plm-color-bg-secondary)}}