.ui-page-header{gap:var(--space-4);flex-wrap:wrap}.ui-page-header .page-header-main{min-width:0;flex:1 1 20rem}.ui-page-header .page-title{overflow-wrap:anywhere}.ui-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1);margin-bottom:var(--space-1);list-style:none;font-size:var(--font-size-sm);color:var(--ink-muted)}.ui-breadcrumb li{display:inline-flex;align-items:center;gap:var(--space-1);min-width:0}.ui-breadcrumb li+li:before{content:"/";color:var(--ink-muted)}.ui-breadcrumb a{color:var(--ink-body)}.ui-breadcrumb a:hover{color:var(--accent-text)}@media (max-width: 768px){.ui-page-header .page-header-main{flex-basis:auto}}.ui-table-scroll{max-width:100%;min-width:0;overflow-x:auto}.ui-table-scroll:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-table-scroll--sticky{max-height:var(--table-max-height, 70vh);overflow-y:auto}.ui-table-scroll--sticky thead th{position:sticky;top:0;z-index:1}.ui-table-caption{caption-side:top;text-align:left;padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);font-weight:600;color:var(--ink)}.ui-table tbody th{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);font-weight:600;text-align:left;color:var(--ink);background:transparent;text-transform:none;letter-spacing:normal;border-bottom:1px solid var(--border)}.ui-table tr:last-child th{border-bottom:none}.ui-table tr:hover th{background:rgba(var(--ink-rgb),.03)}.ui-table--comfortable tbody :is(td,th){height:3rem}.ui-table--compact tbody :is(td,th){height:2.5rem;padding-block:var(--space-2)}.ui-dialog{padding:0;border:1px solid var(--border);border-radius:var(--radius-dialog);background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-lg);width:min(560px,calc(100vw - 2 * var(--space-4)));max-height:calc(100dvh - 2 * var(--space-8))}.ui-dialog::backdrop{background:var(--scrim)}html:has(.ui-dialog[open]){overflow:hidden}.ui-dialog-panel{display:flex;flex-direction:column;max-height:inherit}.ui-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-6);border-bottom:1px solid var(--border)}.ui-dialog-title{font-size:var(--font-size-lg);font-weight:600;line-height:1.35;color:var(--ink)}.ui-dialog-close{flex-shrink:0;min-width:44px;min-height:44px;padding:0}.ui-dialog-body{flex:1;overflow-y:auto;padding:var(--space-5) var(--space-6)}.ui-dialog-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--border)}.ui-dialog--drawer{margin:0;width:min(480px,100vw);height:100dvh;max-height:100dvh;border-radius:0;border-block:0}.ui-dialog--right{inset:0 0 0 auto;border-right:0}.ui-dialog--left{inset:0 auto 0 0;border-left:0}.ui-dialog--drawer .ui-dialog-panel{height:100%}.ui-tabs{display:flex;gap:var(--space-1);border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:thin}.ui-tab{display:inline-flex;align-items:center;min-height:44px;padding:0 var(--space-4);margin-bottom:-1px;border:0;border-bottom:2px solid transparent;background:none;color:var(--ink-body);font:inherit;font-size:var(--font-size-sm);font-weight:500;white-space:nowrap;text-decoration:none;cursor:pointer;transition:color var(--dur-fast) ease-out,border-color var(--dur-fast) ease-out}.ui-tab:hover{color:var(--ink);text-decoration:none}.ui-tab.is-active{color:var(--accent-text);border-bottom-color:var(--accent);font-weight:600}.ui-tab:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.ui-tabpanel:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);text-align:center;border:1px dashed var(--border);border-radius:var(--radius-card);background:var(--surface-raised)}.ui-state-title{font-size:var(--font-size-base);font-weight:600;color:var(--ink)}.ui-state-body{max-width:60ch;font-size:var(--font-size-sm);line-height:1.5;color:var(--ink-body)}.ui-state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin-top:var(--space-3)}.ui-state--loading{align-items:stretch;gap:var(--space-3);padding:var(--space-4) 0;border:0;background:none}.ui-state-line{height:.875rem}.ui-state-line:last-child{width:60%}.ui-state--error{border-style:solid;border-color:var(--danger)}.ui-state--error .ui-state-title{color:var(--danger-text)}.ui-state--denied{border-style:solid}.ui-state-reason{color:var(--ink)}.ui-state--partial{display:flex;flex-direction:column;gap:var(--space-4)}.ui-state-notice{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--warn);border-radius:var(--radius-control);background:rgba(var(--warn-rgb),.12);color:var(--warn-text);font-size:var(--font-size-sm)}.shell{flex-direction:column}.shell-body{display:flex;flex:1;min-height:0;overflow:hidden}.shell-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.shell-main>.main-content{flex:1;min-height:0}.shell-main>.main-content:focus{outline:none}.shell-skip-link{position:absolute;left:var(--space-4);top:-100px;z-index:1000;padding:var(--space-2) var(--space-4);background:var(--surface-raised);color:var(--ink);border-radius:var(--radius-md);box-shadow:var(--shadow-lg)}.shell-skip-link:focus{top:var(--space-2)}.sidebar-nav{display:flex;flex-direction:column}.sidebar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.sidebar-section .sidebar-section-label{font-weight:600;line-height:1.4}.sidebar-section--platform{margin:var(--space-2) var(--space-3) 0;padding:var(--space-4) 0 0;border-top:1px solid rgba(255,255,255,.16)}.sidebar-section--platform .sidebar-section-label{color:var(--sidebar-ink)}.sidebar .sidebar-item,.shell-drawer .sidebar-item{min-height:40px}.sidebar-action{width:100%;background:none;border:0;font:inherit;font-size:var(--font-size-sm);text-align:left}.sidebar-account{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-2);border-radius:var(--radius-md);color:var(--sidebar-ink);text-decoration:none!important;min-width:0}.sidebar-account:hover{background:#ffffff0f}.sidebar-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.sidebar-avatar--initials{display:flex;align-items:center;justify-content:center;background:var(--sidebar-active-bg);color:var(--sidebar-ink);font-size:var(--font-size-xs);font-weight:700}.sidebar-account-text{display:flex;flex-direction:column;min-width:0;flex:1}.sidebar-account-name,.sidebar-account-email,.sidebar-account-roles{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-account-name{font-size:var(--font-size-sm);font-weight:600}.sidebar-account-email,.sidebar-account-roles{font-size:var(--font-size-xs);color:var(--sidebar-ink-muted)}.shell-topbar{display:flex;align-items:center;gap:var(--space-3);min-height:64px;padding:var(--space-2) var(--space-8);background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;position:relative;z-index:200}.shell-icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:0;background:none;border:1px solid var(--control-border);border-radius:var(--radius-md);color:var(--ink);cursor:pointer;flex-shrink:0}.shell-menu-btn,.shell-topbar-logo{display:none}.shell-workspace{flex:1;min-width:0}.shell-workspace-name{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shell-topbar-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.shell-search{display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;min-width:200px;padding:0 var(--space-3);background:var(--bg);border:1px solid var(--control-border);border-radius:var(--radius-md);color:var(--ink-muted);font:inherit;font-size:var(--font-size-sm);cursor:pointer}.shell-search:hover{color:var(--ink)}.shell-search-kbd{margin-left:auto;font-family:var(--font-data);font-size:var(--font-size-xs);padding:1px 6px;border:1px solid var(--border);border-radius:var(--radius-sm)}.shell-topbar .notification-drawer{top:calc(100% + var(--space-2));bottom:auto;left:auto;right:0;position:absolute;width:min(340px,calc(100vw - 2 * var(--space-4)))}.ui-dialog.shell-drawer{width:min(300px,88vw);background:var(--sidebar-bg);color:var(--sidebar-ink);border-color:var(--sidebar-bg)}.shell-drawer .ui-dialog-header{border-bottom-color:#ffffff1a}.shell-drawer .ui-dialog-title,.shell-drawer .ui-dialog-close{color:var(--sidebar-ink)}.shell-drawer .ui-dialog-body{padding:0 0 var(--space-4);display:flex;flex-direction:column}.shell-drawer .sidebar-footer{margin-top:var(--space-2)}@media (max-width: 1024px){.shell-topbar{padding:var(--space-2) var(--space-6)}}@media (max-width: 768px){.shell-topbar{min-height:56px;padding:var(--space-2) var(--space-4);gap:var(--space-2)}.shell-menu-btn{display:inline-flex}.shell-topbar-logo{display:flex;flex-shrink:0}.shell-search{min-width:44px;min-height:44px;justify-content:center;padding:0}.shell-search-label,.shell-search-kbd{display:none}}@media (max-width: 480px){.shell-topbar-logo{display:none}}@media (max-width: 360px){.shell-topbar{padding:var(--space-2) var(--space-3)}}.shell--platform .sidebar,.ui-dialog.shell-drawer--platform{box-shadow:inset 0 4px 0 var(--status-review)}.platform-topbar{border-top:3px solid var(--status-review)}.platform-label{display:inline-flex;align-items:center;min-height:28px;padding:2px var(--space-3);border:1px solid var(--status-review);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.platform-topbar .platform-label{color:var(--status-review);background:rgba(var(--status-review-rgb),.08)}.sidebar .platform-label{color:var(--sidebar-ink);background:rgba(var(--status-review-rgb),.18)}.platform-context{padding:var(--space-4) var(--space-5) var(--space-2)}.sidebar-nav>.platform-single{padding:2px var(--space-3)}.sidebar-nav>.platform-single:first-child{padding-top:var(--space-2)}.sidebar-nav>.platform-group{padding-top:var(--space-3);padding-bottom:var(--space-1)}.platform-exit-wrap{margin-top:auto;padding:var(--space-3) var(--space-3) 0;border-top:1px solid rgba(255,255,255,.1)}.platform-exit-wrap+.sidebar-footer{margin-top:0;border-top:0}.platform-topbar-exit{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;min-width:44px;justify-content:center;padding:0 var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius-md);color:var(--ink);font-size:var(--font-size-sm);font-weight:600;text-decoration:none!important;flex-shrink:0}.platform-topbar-exit:hover{background:var(--bg)}@media (max-width: 480px){.platform-topbar-exit{padding:0}.platform-topbar-exit-text{display:none}}.onboarding{display:flex;flex-direction:column;gap:var(--space-3)}.onboarding-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap}.onboarding-title{margin:0;font-size:var(--font-size-md);font-weight:700}.onboarding-subtitle{margin:0;font-size:var(--font-size-sm);font-weight:700}.onboarding-muted{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.onboarding-optional{display:flex;flex-direction:column;gap:var(--space-2);border-top:1px solid var(--color-border);padding-top:var(--space-3)}.onboarding-steps{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.onboarding-step{display:flex;gap:var(--space-3);align-items:flex-start}.onboarding-step-body{flex:1;min-width:0}.onboarding-step-title{font-weight:600;font-size:var(--font-size-sm)}.onboarding-status{font-weight:400;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-left:var(--space-2)}.onboarding-icon{flex-shrink:0;margin-top:1px;color:var(--color-text-muted)}.onboarding-step--done .onboarding-icon{color:var(--color-success)}.onboarding-step--error .onboarding-icon,.onboarding-step--error .onboarding-status{color:var(--color-danger)}.dash{display:flex;flex-direction:column;gap:var(--space-6);min-width:0}.dash-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.dash-metric{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-4) var(--space-5);color:inherit;text-decoration:none;min-width:0}.dash-metric:hover{border-color:var(--accent)}.dash-metric:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.dash-metric-label{font-size:var(--font-size-xs);color:var(--ink-muted)}.dash-metric-value{font-size:var(--font-size-2xl);font-weight:650;color:var(--ink);overflow-wrap:anywhere}.dash-metric-value--danger{color:var(--danger-text)}.dash-metric-sub{font-size:var(--font-size-xs);color:var(--ink-muted)}.dash-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,1fr);gap:var(--space-6)}.dash-stack{display:flex;flex-direction:column;gap:var(--space-6);min-width:0}.dash-panel{min-width:0}.dash-panel-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.dash-panel-title{display:inline-flex;align-items:center;gap:var(--space-2);margin:0;font-size:var(--font-size-base);font-weight:650}.dash-tools-title{margin-bottom:var(--space-3)}.dash-inline{display:inline-flex;align-items:center;gap:var(--space-1);white-space:nowrap}.dash-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.dash-row{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md)}.dash-row:hover{background:var(--color-surface-2)}.dash-row-line{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);margin-bottom:var(--space-1)}.dash-row-name{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:600;min-width:0;overflow-wrap:anywhere;color:inherit;font-size:var(--font-size-sm)}.dash-row-meta{font-size:var(--font-size-xs);color:var(--ink-muted);margin-top:var(--space-1)}.dash-icon{border-radius:4px;padding:1px 5px;display:inline-flex}.dash-bar{height:6px;border-radius:3px;background:var(--color-surface-2);overflow:hidden}.dash-bar>div{height:100%;border-radius:3px}.dash-attention{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;font-size:var(--font-size-sm)}.dash-attention-counts{display:inline-flex;gap:var(--space-3);font-size:var(--font-size-xs);font-weight:600}.dash-danger{color:var(--danger-text);display:inline-flex;align-items:center;gap:var(--space-1)}.dash-warn{color:var(--warn-text)}.dash-muted{color:var(--ink-muted);font-size:var(--font-size-sm);margin:0 0 var(--space-2)}.dash-ok{display:flex;align-items:center;gap:var(--space-2);color:var(--ok-text);font-size:var(--font-size-sm);margin:0}.dash-note{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs)}.dash-heat{display:flex;gap:3px;overflow-x:auto}.dash-heat-week{display:flex;flex-direction:column;gap:3px}.dash-heat-week>div{width:13px;height:13px;border-radius:3px}.dash-shortcuts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:var(--space-4)}.dash-shortcut{display:flex;flex-direction:column;gap:var(--space-1);color:inherit;text-decoration:none;min-width:0}.dash-shortcut:hover{border-color:var(--accent)}.dash-shortcut-icon{color:var(--accent-text);margin-bottom:var(--space-1)}@media (max-width: 1024px){.dash-columns{grid-template-columns:minmax(0,1fr)}}@media (max-width: 768px){.dash-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 400px){.dash-metrics{grid-template-columns:minmax(0,1fr)}}.dash-subhead{font-size:var(--font-size-xs);font-weight:600;color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em;margin:var(--space-4) 0 var(--space-2)}.dash-hint{font-size:var(--font-size-xs);color:var(--ink-muted);font-style:italic}.dash-heat-legend{display:flex;align-items:center;gap:4px;margin-top:var(--space-2);font-size:var(--font-size-xs);color:var(--ink-muted)}.dash-heat-legend>div{width:12px;height:12px;border-radius:2px}.dash-snippet{margin:var(--space-1) 0 0;font-size:var(--font-size-xs);color:var(--ink-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.people-page{display:flex;flex-direction:column;gap:var(--space-6)}.people-section{display:flex;flex-direction:column;gap:var(--space-3)}.people-section-title{font-size:var(--font-size-md);font-weight:700;margin:0}.people-muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.people-hint{margin:0;font-size:var(--font-size-xs)}.people-badges,.people-actions{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.people-danger{color:var(--danger-text)}.people-pager{display:flex;gap:var(--space-2);align-items:center;justify-content:center}.people-form{display:flex;flex-direction:column;gap:var(--space-4)}.people-form-footer{display:flex;gap:var(--space-2);justify-content:flex-end}.people-fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.people-check{display:flex;gap:var(--space-2);align-items:center;font-size:var(--font-size-sm);cursor:pointer}.people-error{margin:0;color:var(--danger-text);font-size:var(--font-size-sm)}.people-warn{margin:var(--space-1) 0 0;color:var(--warn-text);font-size:var(--font-size-xs)}.people-effective{border-top:1px solid var(--color-border);padding-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.people-effective-title{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:600;margin:0}.people-effective-list{margin:0;padding-left:var(--space-5);font-size:var(--font-size-sm)}.people-perms{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1);max-height:12rem;overflow-y:auto}.people-perms code{font-size:var(--font-size-xs);padding:2px 6px;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.settings-page{max-width:800px}.settings-section{margin-bottom:var(--space-6)}.settings-section-title{margin:0 0 var(--space-1);font-size:var(--font-size-lg)}.settings-section-intro,.settings-note{margin:0 0 var(--space-4);color:var(--ink-muted);line-height:1.6}.settings-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr));gap:var(--space-2)}.settings-entry{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--ink);text-decoration:none;min-height:44px}.settings-entry:hover{border-color:var(--accent)}.settings-entry:focus-visible{outline:none;box-shadow:var(--focus-ring)}.settings-entry>svg{flex-shrink:0;margin-top:2px;color:var(--accent-text)}.settings-entry-label{display:block;font-weight:600}.settings-entry-hint{display:block;font-size:var(--font-size-sm);color:var(--ink-muted)}.settings-facts{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-2) var(--space-4);margin:0 0 var(--space-4)}.settings-facts dt{color:var(--ink-muted)}.settings-facts dd{margin:0;overflow-wrap:anywhere}.settings-links{margin:0;padding-left:var(--space-5);line-height:1.8}.work-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.work-row{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface-raised)}.work-row-main{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3)}.work-row-title{font-weight:600;color:var(--ink);overflow-wrap:anywhere}.work-row-project{font-size:var(--font-size-sm);color:var(--ink-muted)}.work-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm)}.work-page .status-blocked{background:rgba(var(--danger-rgb),.12);color:var(--status-blocked)}.work-page .status-blocked:before{background:var(--status-blocked)}.work-due{color:var(--ink-body)}.work-due--none{color:var(--ink-muted)}.work-due--overdue{color:var(--danger-text);font-weight:600}.work-flag{padding:0 var(--space-2);border-radius:var(--radius-tag);font-weight:500}.work-flag--blocked{background:rgba(var(--danger-rgb),.12);color:var(--danger-text)}.work-flag--ready{background:rgba(var(--ok-rgb),.12);color:var(--ok-text)}.work-handoff{border-left:3px solid var(--status-review);padding-left:var(--space-3)}.work-handoff-label{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--ink-muted)}.work-handoff-body{margin:var(--space-1) 0 0;color:var(--ink-body);white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.work-handoff-none{margin:0;font-size:var(--font-size-sm);color:var(--ink-muted)}.work-pager{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);font-size:var(--font-size-sm);color:var(--ink-muted)}.work-pager .btn{min-width:44px;min-height:44px}.help-ticket-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.help-ticket-row{width:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3);min-height:44px;border:1px solid var(--border);border-radius:var(--radius-md);background:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer}.help-ticket-row:hover,.help-ticket-row[aria-expanded=true]{border-color:var(--accent)}.help-ticket-row:focus-visible{outline:none;box-shadow:var(--focus-ring)}.help-ticket-subject{font-weight:600;overflow-wrap:anywhere}.help-ticket-meta{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--ink-muted)}.help-ticket-detail{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.help-ticket-detail-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.help-ticket-detail-head h3{margin:0;font-size:var(--font-size-base)}.help-ticket-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;margin:0 0 var(--space-3)}.projects-btn,.projects-inline{display:inline-flex;align-items:center;gap:var(--space-2)}.projects-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-6)}.projects-view-toggle{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius-control);overflow:hidden}.projects-view-toggle button{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:0;background:transparent;color:var(--ink-muted);font:inherit;font-size:14px;cursor:pointer}.projects-view-toggle button[aria-pressed=true]{background:var(--accent);color:var(--on-accent);font-weight:600}.projects-view-toggle button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.projects-filter{display:flex;flex-direction:column;gap:var(--space-1)}.projects-filter .form-input{min-height:44px}.projects-filter input[type=search]{width:min(260px,100%)}@media (max-width: 480px){.projects-filter{flex:1 1 100%}.projects-filter input[type=search]{width:100%}}.projects-notice,.projects-form-error{color:var(--danger-text);margin-bottom:var(--space-4)}.projects-page .projects-grid{grid-template-columns:1fr;gap:var(--space-5)}@media (min-width: 720px){.projects-page .projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1200px){.projects-page .projects-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.projects-page .project-card{overflow:visible}.projects-page .project-card:before{background:var(--card-color, var(--accent))}.projects-card-skeleton{height:150px;border-radius:var(--radius-card)}.projects-card-menu{position:absolute;top:var(--space-2);right:var(--space-2);z-index:2}.projects-menu{position:absolute;top:100%;right:0;min-width:180px;padding:var(--space-1) 0;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-control);box-shadow:var(--shadow-lg);z-index:3}.projects-menu button{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:0 var(--space-4);border:0;background:none;color:var(--ink);font:inherit;font-size:14px;text-align:left;cursor:pointer}.projects-menu button:hover,.projects-menu button:focus-visible{background:var(--surface)}.projects-menu .projects-menu-danger{color:var(--danger-text)}.projects-more{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-top:var(--space-6)}.projects-portfolio-icon{display:inline-flex;padding:2px 6px;border-radius:var(--radius-tag)}.projects-progress{display:inline-flex;align-items:center;gap:var(--space-2);min-width:140px}.projects-progress-track{flex:1;height:6px;border-radius:3px;background:var(--border);overflow:hidden}.projects-progress-track span{display:block;height:100%}.projects-overdue{color:var(--danger-text);font-weight:600}.projects-form{display:flex;flex-direction:column;gap:var(--space-4)}.projects-fieldset{border:0;padding:0;margin:0;min-width:0}.projects-swatches{display:flex;flex-wrap:wrap;gap:var(--space-2)}.projects-icon-choice,.projects-color-choice,.projects-type-choice{min-width:44px;min-height:44px;border:2px solid var(--border);border-radius:var(--radius-control);background:var(--surface);color:var(--ink);cursor:pointer}.projects-icon-choice{display:inline-flex;align-items:center;justify-content:center}.projects-color-choice{border-radius:50%}.projects-type-choice{display:inline-flex;align-items:center;gap:var(--space-2);padding:0 var(--space-3);font:inherit;font-size:14px}.projects-icon-choice[aria-pressed=true],.projects-type-choice[aria-pressed=true]{border-color:var(--accent)}.projects-color-choice[aria-pressed=true]{outline:2px solid var(--ink);outline-offset:2px}.projects-muted{color:var(--ink-muted);font-size:13px}.projects-form-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3)}.projects-form-alt{margin-right:auto}.projects-hint{margin:0 0 var(--space-4)}.tasks-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4)}.tasks-toolbar-title{margin:0;font-size:var(--font-size-lg);font-weight:600}.tasks-toolbar-count{color:var(--color-text-muted);font-weight:400;font-size:var(--font-size-sm)}.task-filters{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-bottom:var(--space-3);min-width:0}.tasks-toolbar .task-filters{margin-bottom:0;flex:1}.task-filters .form-input{width:auto;max-width:100%;padding:var(--space-1) var(--space-2);font-size:var(--font-size-sm)}.task-filters .task-filters-search{width:13rem}.task-filters-actions{display:flex;gap:var(--space-2)}.task-row-link,.kanban-card-title{color:inherit;text-decoration:none}.task-row-link:hover,.kanban-card-title:hover{text-decoration:underline}.kanban-card-title{display:block}.task-row-link:focus-visible,.kanban-card-title:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.kanban-truncated{margin:0 0 var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-muted)}@media (max-width: 480px){.task-filters{justify-content:stretch}.task-filters .form-input,.task-filters .task-filters-search{flex:1 1 100%;width:100%}}.status-menu{position:relative;margin-bottom:var(--space-2)}.status-menu-trigger{width:100%;text-align:left;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);cursor:pointer}.status-menu-trigger:focus-visible,.status-menu-list:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.status-menu-list{position:absolute;z-index:20;top:calc(100% + var(--space-1));left:0;right:0;margin:0;padding:var(--space-1);list-style:none;background:var(--color-surface);border:1px solid var(--control-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.status-menu-option{padding:var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}.status-menu-option.is-active{background:var(--color-surface-2);outline:1px solid var(--focus-ring)}.status-menu-option[aria-selected=true]{font-weight:600}.plan-view{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.plan-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.plan-toolbar-sep{width:1px;align-self:stretch;background:var(--border);margin:0 var(--space-1)}.plan-compare{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--ink-body)}.plan-compare .form-input{width:auto;min-width:12rem;padding-block:var(--space-1)}.plan-danger{color:var(--danger)}.plan-notice{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-control);border:1px solid var(--border);font-size:var(--font-size-sm)}.plan-notice--error{color:var(--danger);border-color:var(--danger)}.plan-notice--warn{border-color:var(--warn);color:var(--ink)}.plan-summary{padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.plan-summary p{margin:0}.plan-summary-headline{font-size:var(--font-size-sm);color:var(--ink)}.plan-summary-meta{color:var(--ink-muted)}.plan-subheading{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--ink)}.plan-muted{color:var(--ink-muted);font-size:var(--font-size-sm);margin:0}.plan-critical-list{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--ink)}.plan-panes{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-start}.plan-pane{min-width:0}.plan-pane--table{flex:1 1 22rem;max-width:100%;min-height:12rem;overflow:auto;background:var(--track);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-3)}.plan-pane--gantt{flex:1.3 1 26rem;max-width:100%}.gantt-view{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.gantt-view-toggle{display:inline-flex;gap:var(--space-1);align-self:flex-end}.gantt-table-group th{background:var(--track);font-weight:600;text-align:left}.gantt-table-rollup{font-weight:400;color:var(--ink-muted)}.plan-milestones{padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.plan-milestone-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.plan-milestone{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.plan-milestone-name{flex:1 1 10rem;font-weight:600;font-size:var(--font-size-sm);color:var(--ink)}.plan-milestone-health{flex:1 1 8rem}.plan-field{display:inline-flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--ink-body)}.plan-field .form-input{padding-block:var(--space-1)}.plan-milestone-add{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-2)}.plan-view .ui-dialog textarea{width:100%;resize:vertical}.plan-phase-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--border)}.plan-phase-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.plan-phase-name{font-weight:600;font-size:var(--font-size-sm);color:var(--ink);cursor:text}.plan-phase-rollup{flex:1;margin-left:var(--space-2);font-size:var(--font-size-xs);color:var(--ink-muted)}.plan-icon-btn{padding:0 var(--space-1);min-width:1.75rem}.plan-table{width:100%;border-collapse:collapse;margin-top:var(--space-1)}.plan-table th{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:500;color:var(--ink-muted);text-align:left}.plan-table td{padding:var(--space-1) var(--space-2);border-top:1px solid var(--border);vertical-align:top}.plan-table .form-input{padding:2px var(--space-1);font-size:var(--font-size-sm)}.plan-badge{display:inline-block;border-radius:var(--radius-tag);padding:1px 6px;font-size:10px;font-weight:600}.plan-badge--critical{background:var(--danger);color:var(--on-danger)}.plan-badge--slack{background:var(--track);color:var(--ink-body);font-weight:400}@media (max-width: 640px){.plan-toolbar-sep{display:none}.gantt-view-toggle{align-self:stretch}}.chart-figure{margin:0;display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.chart-figure-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.chart-figure-title{font-weight:700;display:inline-flex;align-items:center;gap:var(--space-2)}.chart-figure-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.rpt-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.rpt-toolbar-actions{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.rpt-grid{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr);gap:var(--space-5)}@media (max-width: 720px){.rpt-grid{grid-template-columns:minmax(0,1fr)}}.rpt-muted{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.rpt-tag{display:inline-block;font-size:var(--font-size-xs);font-weight:600;padding:1px 8px;border-radius:999px;border:1px solid var(--color-border);color:var(--color-text-muted)}.rpt-tag--ai{border-color:var(--color-primary);color:var(--color-primary)}.rpt-notice{border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);background:var(--color-surface-2);font-size:var(--font-size-sm)}.rpt-chips{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.act-feed{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.act-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm)}.act-item:last-child{border-bottom:0}.act-icon{width:28px;height:28px;border-radius:50%;background:var(--color-surface-2);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;flex-shrink:0}.act-body{flex:1;min-width:0;overflow-wrap:anywhere}.act-time{flex-shrink:0;font-size:var(--font-size-xs);color:var(--color-text-faint)}@media print{.no-print{display:none!important}}.project-shell{min-width:0}.project-shell-header{display:flex;align-items:flex-start;gap:var(--space-4)}.project-shell-header .ui-page-header{flex:1;min-width:0}.project-shell-icon{width:3rem;height:3rem;border-radius:var(--radius-card);display:flex;align-items:center;justify-content:center;flex-shrink:0}.project-shell-repo{display:block;font-size:var(--font-size-sm)}.project-shell-tabs{margin-bottom:var(--space-6)}.project-shell-subtabs{margin-bottom:var(--space-4)}.project-tool{display:flex;flex-direction:column;gap:var(--space-3);max-width:48rem}.project-tool-title{margin:var(--space-4) 0 0;font-size:var(--font-size-md);font-weight:700}.project-tool-title:first-child{margin-top:0}.project-tool-muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.project-tool-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}.project-tool-actions--start{justify-content:flex-start}.project-settings-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--space-3)}.members-section{display:flex;flex-direction:column;gap:var(--space-3)}.members-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3)}.members-title{font-size:var(--font-size-md);font-weight:600;margin:0}.members-add{display:inline-flex;align-items:center;gap:var(--space-1)}.members-actions{display:inline-flex;gap:var(--space-2)}.members-danger{color:var(--danger-text)}.members-form{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-3)}.members-fieldset{border:0;border-top:1px solid var(--color-border);padding:var(--space-3) 0 0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.members-check{display:flex;gap:var(--space-2);align-items:center;font-size:var(--font-size-sm);cursor:pointer}.members-hint{margin:0;font-size:var(--font-size-xs);color:var(--color-text-muted)}.members-ok{margin:0;font-size:var(--font-size-sm);color:var(--ok-text)}.members-error{margin:0;font-size:var(--font-size-sm);color:var(--danger-text)}.members-footer{display:flex;gap:var(--space-2);justify-content:flex-end}.task-detail-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-5)}.task-detail-header-nav{display:flex;align-items:center;gap:var(--space-3);min-width:0}.task-section{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.task-section-title{font-size:var(--font-size-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);margin:0}.task-section--handoff{border-left:3px solid var(--accent)}.task-subheading{font-size:var(--font-size-sm);font-weight:600;margin:var(--space-2) 0 0;display:inline-flex;align-items:center;gap:var(--space-1)}.task-muted{color:var(--ink-muted);font-size:var(--font-size-sm);margin:0}.task-state-error{color:var(--danger-text);font-size:var(--font-size-sm);margin:0}.task-grow{flex:1;min-width:0}.task-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);color:var(--ink-muted)}.task-meta-row a{color:var(--accent-text);display:inline-flex;align-items:center;gap:var(--space-1)}.task-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:1px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-tag);font-size:var(--font-size-xs);color:var(--ink-body)}.task-chip--warn{border-color:var(--warn);color:var(--warn-text)}.task-handoff-entry{background:var(--track);border-radius:var(--radius-control);padding:var(--space-3)}.task-handoff-body{margin:var(--space-2) 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}.task-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.task-list-row{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control)}.task-sha{font-family:var(--font-code);font-size:var(--font-size-xs);flex-shrink:0}.task-sha a{color:inherit}.task-actions-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.task-actions-list li{display:flex;flex-direction:column;gap:2px}.task-actions-list .btn{justify-content:flex-start;display:inline-flex;align-items:center;gap:var(--space-2)}.task-actions-list .task-muted{font-size:var(--font-size-xs)}.task-actions-danger{border-top:1px solid var(--border);padding-top:var(--space-2)}@media print{.task-detail-header .btn,.task-detail-sidebar .task-actions-list{display:none}}.pu-page{display:flex;flex-direction:column;gap:var(--space-5)}.pu-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end}.pu-filters .form-group{margin:0;min-width:12rem}.pu-search{flex:1}.pu-search-field{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted)}.pu-muted{color:var(--color-text-muted);font-size:var(--font-size-sm)}.pu-hint{margin:0;font-size:var(--font-size-xs)}.pu-badges,.pu-actions{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.pu-tenant{display:inline-flex;align-items:center;gap:var(--space-1);font-weight:600;white-space:nowrap}.pu-danger{color:var(--danger-text)}.pu-notice{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm)}.pu-section{display:flex;flex-direction:column;gap:var(--space-3)}.pu-section-title{font-size:var(--font-size-md);font-weight:700;margin:0}.pu-form{display:flex;flex-direction:column;gap:var(--space-4)}.pu-form-footer{display:flex;gap:var(--space-2);justify-content:flex-end}.pu-context{margin:0;font-size:var(--font-size-sm)}.pu-fieldset{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-2)}.pu-check{display:flex;gap:var(--space-2);align-items:center;font-size:var(--font-size-sm);cursor:pointer}.pu-error{margin:0;color:var(--danger-text);font-size:var(--font-size-sm)}.pu-warn{margin:var(--space-1) 0 0;color:var(--warn-text);font-size:var(--font-size-xs)}.pu-box{border-top:1px solid var(--color-border);padding-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.pu-box p{margin:0}.pu-box-title{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);font-weight:600;margin:0}.pu-perm-role{font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted)}.pu-perms{list-style:none;margin:var(--space-1) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-1);max-height:12rem;overflow-y:auto}.pu-perms code{font-size:var(--font-size-xs);padding:2px 6px;border:1px solid var(--color-border);border-radius:var(--radius-sm)}.platform-toolbar{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end;margin-bottom:var(--space-4)}.platform-toolbar .form-group{margin:0;min-width:12rem}.platform-toolbar .form-group:first-child{flex:1 1 16rem}.platform-split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);align-items:start}@media (min-width: 1100px){.platform-split--detail{grid-template-columns:minmax(0,1fr) minmax(320px,420px)}}.platform-detail{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.platform-detail h2{font-size:var(--font-size-lg);margin:0;overflow-wrap:anywhere}.platform-detail h3{font-size:var(--font-size-sm);margin:0 0 var(--space-2);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em}.platform-facts{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-1) var(--space-3);margin:0;font-size:var(--font-size-sm)}.platform-facts dt{color:var(--ink-muted)}.platform-facts dd{margin:0;overflow-wrap:anywhere}.platform-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.platform-hint{font-size:var(--font-size-xs);color:var(--ink-muted)}.platform-error{color:var(--danger-text);font-size:var(--font-size-sm)}.platform-danger-zone{border-top:1px solid var(--border);padding-top:var(--space-4)}.platform-row-link{font-weight:600;color:inherit}.platform-row-link[aria-current=true]{color:var(--accent-text)}.platform-section{margin-bottom:var(--space-6)}.platform-section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-3)}.platform-section-head h2{font-size:var(--font-size-lg);margin:0}.platform-metrics,.platform-metrics .stat-card,.platform-metrics dd{margin:0}.platform-metric-def{font-size:var(--font-size-xs);color:var(--ink-muted);margin-top:var(--space-2)!important}.platform-fresh{font-size:var(--font-size-xs);color:var(--ink-muted);margin:0}.platform-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--font-size-sm)}.gp-page{display:flex;flex-direction:column;gap:var(--space-4)}.gp-page>.ui-tabs{margin-bottom:0}.gp-scope{padding:var(--space-3) var(--space-4);border:1px solid var(--warn);border-left-width:4px;border-radius:var(--radius-card);background:var(--surface-raised);color:var(--ink-body);font-size:var(--font-size-sm);line-height:1.5}.gp-scope-title{margin:0 0 var(--space-2);color:var(--ink);font-weight:600;display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.gp-scope ul{margin:0;padding-left:var(--space-5)}.gp-layout{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:var(--space-4);align-items:start}.gp-side{display:flex;flex-direction:column;gap:var(--space-4)}@media (max-width: 900px){.gp-layout{grid-template-columns:minmax(0,1fr)}}.gp-h2{margin:0 0 var(--space-3);font-size:var(--font-size-lg);color:var(--ink)}.gp-h3{margin:0 0 var(--space-2);font-size:var(--font-size-sm);font-weight:700;color:var(--ink);text-transform:uppercase;letter-spacing:.04em}.gp-muted{margin:0 0 var(--space-3);color:var(--ink-muted);font-size:var(--font-size-sm)}.gp-role-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.gp-role-row{display:flex;align-items:center;gap:var(--space-2)}.gp-role{flex:1;min-width:0;min-height:44px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;overflow-wrap:anywhere}.gp-role small{color:var(--ink-muted);font-size:var(--font-size-xs)}.gp-role:hover{border-color:var(--accent)}.gp-role[aria-pressed=true]{border-color:var(--accent);background:var(--track);box-shadow:inset 3px 0 0 var(--accent)}.gp-role:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gp-matrix{min-width:0}.gp-resource{padding-top:var(--space-3);border-top:1px solid var(--border);margin-top:var(--space-3)}.gp-perm-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-2)}.gp-perm{display:flex;align-items:flex-start;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer}.gp-perm input{margin-top:3px;flex:none}.gp-perm input:disabled,.gp-perm:has(input:disabled){cursor:default}.gp-perm-desc{display:block;color:var(--ink)}.gp-code{font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:var(--font-size-xs);color:var(--ink-muted);overflow-wrap:anywhere}.gp-filters{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:flex-end}.gp-filters .form-group{flex:1 1 220px;margin-bottom:0}.gp-dialog-body{margin:0;color:var(--ink-body)}.gp-error{margin:var(--space-3) 0 0;color:var(--danger-text);font-weight:600}.ops-page{max-width:1280px;margin:0 auto;padding:var(--space-6) var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.ops-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.ops-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--font-size-xs);font-weight:600;color:var(--ink-muted);min-width:10rem}.ops-field .form-input{min-height:44px}.ops-scope{font-size:var(--font-size-sm);color:var(--ink-muted)}.ops-sub{display:block;font-size:var(--font-size-xs);color:var(--ink-muted);font-weight:400}.ops-mono{font-family:var(--font-code);font-size:var(--font-size-xs);word-break:break-all}.ops-pill{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-tag);border:1px solid var(--border);font-size:var(--font-size-xs);font-weight:600;color:var(--ink-body);background:var(--surface-raised);white-space:nowrap}.ops-pill--danger{color:var(--danger-text);border-color:rgba(var(--danger-rgb),.35);background:rgba(var(--danger-rgb),.08)}.ops-pill--warn{color:var(--warn-text);border-color:rgba(var(--warn-rgb),.35);background:rgba(var(--warn-rgb),.08)}.ops-pill--ok{color:var(--ok-text);border-color:rgba(var(--ok-rgb),.35);background:rgba(var(--ok-rgb),.08)}.ops-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--ink-muted)}.ops-pager-buttons{display:flex;gap:var(--space-2)}.ops-detail{display:grid;grid-template-columns:minmax(8rem,max-content) 1fr;gap:var(--space-2) var(--space-4);margin:0 0 var(--space-4);font-size:var(--font-size-sm)}.ops-detail dt{color:var(--ink-muted);font-weight:600}.ops-detail dd{margin:0;color:var(--ink);min-width:0;overflow-wrap:anywhere}.ops-pre{margin:0;padding:var(--space-3);border-radius:var(--radius-control);background:var(--surface-raised);border:1px solid var(--border);font-family:var(--font-code);font-size:var(--font-size-xs);white-space:pre-wrap;overflow-wrap:anywhere}.ops-section{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.ops-section h3{margin:0;font-size:var(--font-size-sm);font-weight:700;color:var(--ink)}.ops-customer{padding:var(--space-3);border-radius:var(--radius-control);border:1px solid var(--border);background:var(--surface);white-space:pre-wrap;font-size:var(--font-size-sm);line-height:1.5}.ops-internal{padding:var(--space-3);border-radius:var(--radius-control);border:1px dashed rgba(var(--warn-rgb),.6);background:rgba(var(--warn-rgb),.07)}.ops-internal-label{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);font-weight:700;color:var(--warn-text)}.ops-callout{padding:var(--space-3);border-radius:var(--radius-control);border:1px solid rgba(var(--warn-rgb),.45);background:rgba(var(--warn-rgb),.08);color:var(--ink-body);font-size:var(--font-size-sm)}.ops-inline-error{color:var(--danger-text);font-size:var(--font-size-sm)}.ops-inline-ok{color:var(--ok-text);font-size:var(--font-size-sm)}.ops-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:var(--space-3)}.ops-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:var(--space-3)}.ops-metric{padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface)}.ops-metric strong{display:block;font-size:var(--font-size-lg);color:var(--ink);font-variant-numeric:tabular-nums}.ops-metric span{font-size:var(--font-size-xs);color:var(--ink-muted)}.ops-panel{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--surface);display:flex;flex-direction:column;gap:var(--space-4)}.ops-panel h2{margin:0;font-size:var(--font-size-lg);color:var(--ink)}.ops-num{text-align:right;font-variant-numeric:tabular-nums}@media (max-width: 480px){.ops-page{padding:var(--space-4) var(--space-4)}.ops-field{min-width:100%}.ops-detail{grid-template-columns:1fr}}:root{color-scheme:dark;--bg: #04100E;--surface: #071613;--surface-raised: #081815;--border: #14383A;--track: #0C2521;--ink: #EAF7F3;--ink-body: #C6E2DA;--ink-muted: #6E948A;--accent: #2DE8D0;--accent-dark: #17957A;--accent-text: #2DE8D0;--on-accent: #04100E;--warn: #F5A623;--warn-text: #F5B94E;--on-warn: #1A1206;--on-danger: #1A0606;--on-ok: #04100E;--ok: #4ADE80;--ok-text: var(--ok);--danger: #F87171;--danger-text: #F87171;--glow-accent: 0 0 12px rgba(45, 232, 208, .45);--glow-warn: 0 0 10px rgba(245, 166, 35, .45);--focus-ring: #84B4FF;--control-border: #6E948A;--scrim: rgba(2, 8, 7, .6);--sidebar-bg: #071613;--sidebar-ink: #EAF7F3;--sidebar-ink-muted: #C6E2DA;--sidebar-active-bg: #0C2521;--sidebar-active-ink: #2DE8D0;--accent-rgb: 45, 232, 208;--warn-rgb: 245, 166, 35;--ok-rgb: 74, 222, 128;--danger-rgb: 248, 113, 113;--ink-rgb: 234, 247, 243;--surface-rgb: 7, 22, 19;--status-review-rgb: 196, 181, 253;--status-todo: var(--ink-muted);--status-in-progress: var(--accent);--status-review: #C4B5FD;--status-blocked: var(--danger-text);--status-done: var(--ok);--priority-low: var(--ink-muted);--priority-medium: var(--accent);--priority-high: var(--warn-text);--priority-urgent: var(--danger-text);--font-family: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-body: var(--font-family);--font-data: "Share Tech Mono", ui-monospace, "SF Mono", monospace;--font-code: "Fira Code", ui-monospace, "SF Mono", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--radius-tag: 4px;--radius-control: 8px;--radius-card: 10px;--radius-dialog: 12px;--radius-sm: var(--radius-tag);--radius-md: var(--radius-control);--radius-lg: var(--radius-card);--radius-xl: var(--radius-dialog);--dur-fast: .15s;--dur-base: .2s;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5);--shadow-md: 0 4px 14px rgba(0, 0, 0, .55);--shadow-lg: 0 10px 36px rgba(0, 0, 0, .6);--shadow-glow: var(--glow-accent);--sidebar-width: 240px;--color-navy: #0E2A25;--color-navy-dark: #04100E;--color-teal: var(--accent);--color-teal-dark: #14867A;--color-amber: var(--warn);--color-bg: var(--bg);--color-surface: var(--surface-raised);--color-surface-2: var(--track);--color-border: var(--border);--color-primary: var(--accent);--color-primary-hover: #4FF0DC;--color-primary-glow: rgba(var(--accent-rgb), .18);--color-accent: var(--warn);--color-accent-hover: #D97706;--color-accent-soft: rgba(var(--warn-rgb), .15);--color-danger: var(--danger);--color-danger-hover: #EF4444;--color-success: var(--ok);--color-warning: var(--warn);--color-info: var(--accent);--color-text: var(--ink);--color-text-muted: var(--ink-body);--color-text-faint: var(--ink-muted);--color-text-primary: var(--ink);--color-text-secondary: var(--ink-body);--skeleton-mid: var(--border)}[data-theme=light]{color-scheme:light;--bg: #F8F9F6;--surface: #FFFFFF;--surface-raised: #FFFFFF;--border: #DCE3DF;--track: #E8F2EC;--ink: #172B38;--ink-body: #304B56;--ink-muted: #5A6D76;--accent: #116B5D;--accent-dark: #0A5549;--accent-text: #116B5D;--on-accent: #FFFFFF;--warn: #D97706;--warn-text: #80530E;--on-danger: #FFFFFF;--on-ok: #FFFFFF;--ok: #15803D;--ok-text: #1C694F;--danger: #DC2626;--danger-text: #B91C1C;--glow-accent: none;--glow-warn: none;--focus-ring: #337EF0;--control-border: #768D83;--status-review: #6750A4;--sidebar-bg: #142B36;--sidebar-ink: #FFFFFF;--sidebar-ink-muted: #B8CBD0;--sidebar-active-bg: #284740;--sidebar-active-ink: #E0F0E6;--accent-rgb: 17, 107, 93;--warn-rgb: 217, 119, 6;--ok-rgb: 21, 128, 61;--danger-rgb: 220, 38, 38;--ink-rgb: 23, 43, 56;--surface-rgb: 255, 255, 255;--status-review-rgb: 103, 80, 164;--shadow-sm: 0 1px 3px rgba(11, 43, 38, .08);--shadow-md: 0 4px 12px rgba(11, 43, 38, .1);--shadow-lg: 0 8px 32px rgba(11, 43, 38, .14);--color-navy: #1B3A6B;--color-navy-dark: #122850;--color-teal-dark: #0A5549;--color-primary-hover: #0A5549;--color-accent-hover: #B45309;--color-danger-hover: #B91C1C;--skeleton-mid: #F1F5F9}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;font-family:var(--font-family);background:var(--color-bg);color:var(--color-text);font-size:var(--font-size-base);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.hud-corner{position:relative}.hud-corner:before,.hud-corner:after{content:"";position:absolute;width:7px;height:7px;pointer-events:none}.hud-corner:before{top:-1px;left:-1px;border-top:1px solid var(--accent);border-left:1px solid var(--accent)}.hud-corner:after{bottom:-1px;right:-1px;border-bottom:1px solid var(--accent);border-right:1px solid var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:none;border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-family);font-weight:500;transition:background-color var(--dur-fast) ease-out,border-color var(--dur-fast) ease-out,color var(--dur-fast) ease-out,box-shadow var(--dur-fast) ease-out,transform var(--dur-fast) ease-out,opacity var(--dur-fast) ease-out;outline:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}:where(a,button,[role=button],[role=tab],[role=menuitem],[role=link],summary,[tabindex]:not([tabindex="-1"])):focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:var(--radius-sm)}::backdrop{--scrim: rgba(2, 8, 7, .6)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sidebar :where(a,button,[role=button],[tabindex]):focus-visible,.sidebar-item:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.btn-sm{height:2rem;padding:0 var(--space-3);font-size:var(--font-size-sm)}.btn-md{height:2.5rem;padding:0 var(--space-5);font-size:var(--font-size-sm)}.btn-lg{height:3rem;padding:0 var(--space-6);font-size:var(--font-size-base)}.btn-primary{background:var(--accent);color:var(--on-accent);font-weight:600}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--glow-accent)}.btn-secondary{background:transparent;color:var(--accent-text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){border-color:var(--accent);background:rgba(var(--accent-rgb),.06)}.btn-danger{background:var(--danger);color:var(--on-danger);font-weight:600}.btn-danger:hover:not(:disabled){background:var(--color-danger-hover)}.btn-ghost{background:transparent;color:var(--ink-muted)}.btn-ghost:hover:not(:disabled){background:rgba(var(--ink-rgb),.06);color:var(--ink)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{font-size:var(--font-size-sm);color:var(--ink-muted);font-weight:500}.form-input{height:2.75rem;padding:0 var(--space-4);background:var(--track);border:1px solid var(--control-border);border-radius:var(--radius-md);color:var(--ink);font-size:var(--font-size-sm);font-family:var(--font-family);transition:border-color var(--dur-fast),box-shadow var(--dur-fast);outline:none}.form-input:focus{outline:2px solid var(--focus-ring);outline-offset:1px}:where(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden],[type=submit],[type=button],[type=reset],[type=image]),select,textarea){border:1px solid var(--control-border)}:where(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden],[type=submit],[type=button],[type=reset],[type=image]),select,textarea):focus-visible{outline:2px solid var(--focus-ring);outline-offset:1px}.form-input::placeholder{color:var(--ink-muted)}.form-input-error{border-color:var(--danger)}.form-error{font-size:var(--font-size-xs);color:var(--danger)}.project-card-menu-btn{height:1.75rem;width:1.75rem;padding:0;font-size:1.25rem;line-height:1;opacity:.85;border-radius:var(--radius-sm);background:var(--track);border:1px solid var(--border)}.project-card-menu-btn:hover{opacity:1;background:var(--border)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media (max-width: 480px){.form-row{grid-template-columns:1fr}}.form-actions{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-3);margin-top:var(--space-2)}.form-button{height:2.75rem;width:100%;padding:0 var(--space-5);font-size:var(--font-size-sm)}.card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-card);padding:var(--space-6);box-shadow:var(--shadow-sm)}.badge{display:inline-flex;align-items:center;font-family:var(--font-data);font-variant-numeric:tabular-nums;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:var(--radius-tag)}.badge-success{background:rgba(var(--ok-rgb),.12);color:var(--ok-text)}.badge-warning{background:rgba(var(--warn-rgb),.12);color:var(--warn-text)}.badge-danger{background:rgba(var(--danger-rgb),.12);color:var(--danger-text)}.badge-info{background:rgba(var(--accent-rgb),.1);color:var(--accent-text)}.badge-neutral{background:rgba(var(--ink-rgb),.06);color:var(--ink-muted)}.spinner{border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);animation:spin .7s linear infinite}.spinner-sm{width:1rem;height:1rem}.spinner-md{width:1.5rem;height:1.5rem}.spinner-lg{width:2.5rem;height:2.5rem;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(90deg,var(--track) 25%,var(--skeleton-mid) 37%,var(--track) 63%);background-size:400% 100%;animation:skeleton-shimmer 1.4s ease infinite;border-radius:var(--radius-md)}@keyframes skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.btn-loading{position:relative;color:transparent!important}.btn-loading .spinner-sm{position:absolute;top:0;right:0;bottom:0;left:0;margin:auto}.table-wrapper{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border)}.table{width:100%;border-collapse:collapse}.table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);background:var(--track);border-bottom:1px solid var(--border)}.table td{padding:var(--space-3) var(--space-4);font-size:var(--font-size-sm);border-bottom:1px solid var(--border)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:rgba(var(--ink-rgb),.03)}.table-empty{text-align:center;color:var(--ink-muted);padding:var(--space-8)!important}.table-loading{display:flex;justify-content:center;padding:var(--space-8)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-6)}.page-title{font-size:var(--font-size-2xl);font-family:var(--font-data);font-variant-numeric:tabular-nums;font-weight:400;text-transform:uppercase;letter-spacing:.06em;color:var(--ink)}.page-subtitle{font-size:var(--font-size-sm);color:var(--ink-muted);margin-top:var(--space-1)}.page-header-actions{display:flex;gap:var(--space-3)}.app-shell{display:flex;height:100%}.sidebar{width:var(--sidebar-width);flex-shrink:0;background:var(--sidebar-bg);color:var(--sidebar-ink);border-right:1px solid var(--sidebar-bg);display:flex;flex-direction:column;overflow-y:auto;padding:var(--space-5) 0}.sidebar-logo{padding:var(--space-4) var(--space-5) var(--space-5);border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center}.sidebar-section{padding:var(--space-4) var(--space-3)}.sidebar-section-label{font-family:var(--font-data);font-variant-numeric:tabular-nums;font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--sidebar-ink-muted);margin-bottom:var(--space-2);padding:0 var(--space-3)}.sidebar-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--sidebar-ink-muted);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background var(--dur-fast) ease-out,color var(--dur-fast) ease-out;text-decoration:none!important}.sidebar-item:hover{background:#ffffff0f;color:var(--sidebar-ink)}.sidebar-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-ink);box-shadow:inset 2px 0 0 var(--sidebar-active-ink)}.sidebar-footer{margin-top:auto;padding:var(--space-4) var(--space-3);border-top:1px solid rgba(255,255,255,.1)}.main-content{flex:1;overflow-y:auto;padding:var(--space-8);padding-bottom:5.5rem;background:var(--bg)}.login-container{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);background-image:radial-gradient(ellipse at 50% 20%,rgba(var(--warn-rgb),.08) 0%,transparent 60%)}.login-card{width:100%;max-width:420px;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-10);box-shadow:var(--shadow-md)}.login-title{font-size:var(--font-size-xl);font-weight:600;margin-bottom:var(--space-1);color:var(--ink)}.login-subtitle{font-size:var(--font-size-sm);color:var(--ink-muted);margin-bottom:var(--space-8)}.login-form{display:flex;flex-direction:column;gap:var(--space-5)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5)}.stat-label{font-size:var(--font-size-sm);color:var(--ink-muted);margin-bottom:var(--space-2)}.stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums}@media (max-width: 640px){.project-overview-stats{grid-template-columns:1fr 1fr!important}}.card-link-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:inherit}.card-link-overlay:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.roles-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.flex{display:flex}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.items-center{align-items:center}.justify-between{justify-content:space-between}.text-muted{color:var(--ink-muted)}.text-sm{font-size:var(--font-size-sm)}.font-semibold{font-weight:600}.w-full{width:100%}.mt-4{margin-top:var(--space-4)}.mb-4{margin-bottom:var(--space-4)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-5)}.project-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);cursor:pointer;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s,opacity .2s;position:relative;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.project-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.project-card-icon{width:2.5rem;height:2.5rem;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin-bottom:var(--space-3)}.project-card-name{font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--space-2)}.project-card-desc{font-size:var(--font-size-sm);color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:var(--space-4)}.project-card-meta{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-faint)}.status-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:9999px;font-size:var(--font-size-xs);font-weight:600;gap:4px}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;flex-shrink:0}.status-planning{background:rgba(var(--ink-rgb),.06);color:var(--ink-muted)}.status-planning:before{background:var(--ink-muted)}.status-active{background:rgba(var(--ok-rgb),.15);color:var(--ok-text)}.status-active:before{background:var(--ok)}.status-on_hold{background:rgba(var(--warn-rgb),.15);color:var(--warn-text)}.status-on_hold:before{background:var(--warn-text)}.status-completed{background:rgba(var(--accent-rgb),.15);color:var(--accent)}.status-completed:before{background:var(--accent)}.status-archived{background:rgba(var(--ink-rgb),.06);color:var(--ink-muted)}.status-archived:before{background:var(--ink-muted)}.status-backlog{background:rgba(var(--ink-rgb),.06);color:var(--ink-muted)}.status-backlog:before{background:var(--ink-muted)}.status-todo{background:rgba(var(--ink-rgb),.06);color:var(--status-todo)}.status-todo:before{background:var(--status-todo)}.status-in_progress{background:rgba(var(--accent-rgb),.12);color:var(--status-in-progress)}.status-in_progress:before{background:var(--status-in-progress)}.status-in_review{background:rgba(var(--status-review-rgb),.12);color:var(--status-review)}.status-in_review:before{background:var(--status-review)}.status-done{background:rgba(var(--ok-rgb),.15);color:var(--ok-text)}.status-done:before{background:var(--ok)}.status-cancelled{background:rgba(var(--danger-rgb),.15);color:var(--danger-text)}.status-cancelled:before{background:var(--danger)}.project-tabs{display:flex;gap:0;border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6)}.project-tab{padding:var(--space-3) var(--space-5);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s;background:none;border-top:none;border-left:none;border-right:none}.project-tab:hover{color:var(--color-text)}.project-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.kanban-board{display:flex;gap:var(--space-4);overflow-x:auto;padding-bottom:var(--space-4);min-height:calc(100vh - 200px);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.kanban-board::-webkit-scrollbar{height:8px}.kanban-board::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}.kanban-board::-webkit-scrollbar-track{background:transparent}.kanban-column{flex-shrink:0;width:280px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column}.kanban-col-header{padding:var(--space-4) var(--space-4) var(--space-3);display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:var(--font-size-sm);border-bottom:1px solid var(--color-border);position:relative}.kanban-col-count{background:var(--color-surface-2);border-radius:9999px;padding:2px 8px;font-size:var(--font-size-xs)}.kanban-col-body{flex:1;padding:var(--space-3);overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-2)}.kanban-col-body.drag-over{background:var(--color-primary-glow)}.kanban-card{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);cursor:grab;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s;position:relative}.kanban-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.kanban-card.dragging{opacity:.4;cursor:grabbing}.kanban-card-title{font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--space-2);line-height:1.4}.kanban-card-meta{display:flex;flex-wrap:wrap;gap:var(--space-1);align-items:center}.kanban-card-due{font-size:var(--font-size-xs);color:var(--color-text-muted)}.kanban-card-due.overdue{color:var(--color-danger)}.kanban-add-btn{margin:var(--space-2) var(--space-3) var(--space-3);width:calc(100% - 24px);padding:var(--space-2);border-radius:var(--radius-md);border:1px dashed var(--color-border);background:transparent;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s}.kanban-add-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.gantt-container{overflow-x:auto;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.gantt-header-row{display:flex;border-bottom:1px solid var(--color-border);position:sticky;top:0;background:var(--color-surface-2);z-index:2}.gantt-label-col{width:220px;flex-shrink:0;padding:var(--space-2) var(--space-4);font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);border-right:1px solid var(--color-border)}.gantt-timeline-header{display:flex}.gantt-day-header{width:32px;flex-shrink:0;text-align:center;font-size:.6rem;color:var(--color-text-faint);padding:var(--space-2) 0;border-right:1px solid var(--color-border)}.gantt-day-header.today{color:var(--color-primary);font-weight:700}.gantt-row{display:flex;border-bottom:1px solid var(--color-border);min-height:40px}.gantt-row:hover{background:rgba(var(--accent-rgb),.03)}.gantt-row-label{width:220px;flex-shrink:0;display:flex;align-items:center;padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);border-right:1px solid var(--color-border);gap:var(--space-2);position:relative}.gantt-row-label.milestone{font-weight:600;color:var(--color-primary)}.gantt-bar-area{position:relative;flex:1}.gantt-bar{position:absolute;top:6px;height:24px;border-radius:var(--radius-sm);display:flex;align-items:center;padding:0 var(--space-2);font-size:.65rem;font-weight:600;white-space:nowrap;overflow:hidden;cursor:pointer;transition:opacity .15s}.gantt-bar:hover{opacity:.85}.gantt-task-bar{background:var(--color-primary);color:var(--on-accent)}.gantt-milestone-bar{background:var(--color-warning);color:var(--on-warn)}.gantt-today-line{position:absolute;top:0;bottom:0;width:2px;background:var(--color-danger);opacity:.6;pointer-events:none}@media (max-width: 900px){.task-detail-layout{grid-template-columns:1fr}}.subtask-item input[type=checkbox]{accent-color:var(--color-primary)}.context-menu{position:fixed;z-index:1000;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:200px;padding:var(--space-1) 0;overflow:hidden}.context-menu-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);cursor:pointer;transition:background var(--dur-fast) ease-out;color:var(--ink-muted);background:none;border:none;width:100%;text-align:left}.context-menu-item:hover{background:var(--track);color:var(--ink)}.context-menu-item.danger{color:var(--danger-text)}.context-menu-item.danger:hover{background:rgba(var(--danger-rgb),.1)}.context-menu-divider{height:1px;background:var(--border);margin:var(--space-1) 0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:999;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;animation:slideUp .15s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:var(--space-6) var(--space-6) 0;display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:var(--font-size-lg);font-weight:700}.modal-body{padding:var(--space-5) var(--space-6)}.modal-footer{padding:0 var(--space-6) var(--space-5);display:flex;justify-content:flex-end;gap:var(--space-3)}.member-list{display:flex;flex-direction:column;gap:var(--space-2)}.member-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md)}.member-avatar{width:2.25rem;height:2.25rem;border-radius:50%;background:var(--color-primary-glow);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:var(--font-size-sm);color:var(--color-primary);flex-shrink:0}.member-info{flex:1;min-width:0}.member-name{font-size:var(--font-size-sm);font-weight:600}.member-email{font-size:var(--font-size-xs);color:var(--color-text-muted)}.member-role-badge{padding:2px var(--space-2);border-radius:9999px;font-size:var(--font-size-xs);font-weight:600;background:var(--color-primary-glow);color:var(--color-primary)}.task-detail-layout{display:grid;grid-template-columns:1fr 300px;gap:var(--space-6);align-items:start}.task-detail-main{display:flex;flex-direction:column;gap:var(--space-4)}.task-detail-sidebar{display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:var(--space-4)}.task-sidebar-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:var(--space-3)}.task-detail-sticky-header{position:sticky;top:0;z-index:20;display:flex;flex-direction:column;gap:var(--space-3);background:var(--color-bg);padding-top:var(--space-3);padding-bottom:var(--space-3);margin-bottom:var(--space-1);border-bottom:1px solid var(--color-border)}.task-title-input{width:100%;font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text);background:transparent;border:none;outline:none;font-family:var(--font-family);padding:var(--space-2) 0;border-bottom:2px solid transparent;transition:border-color .15s}.task-title-input:focus{border-bottom-color:var(--color-primary)}.task-description-input{width:100%;min-height:140px;overflow:hidden;resize:none;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--control-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-text);font-size:var(--font-size-base);font-family:var(--font-family);line-height:1.7;outline:none;transition:border-color .15s,box-shadow .15s}.task-description-input::placeholder{color:var(--color-text-muted)}.task-description-input:focus{outline:2px solid var(--focus-ring);outline-offset:1px}.task-detail-field{display:flex;flex-direction:column;gap:var(--space-1)}.task-detail-field-label{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted)}.task-detail-field-value{font-size:var(--font-size-sm)}.comment-thread{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.comment-item{display:flex;gap:var(--space-3);align-items:flex-start;font-size:var(--font-size-sm)}.comment-avatar{width:2rem;height:2rem;border-radius:50%;background:var(--accent);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:700;flex-shrink:0}.comment-content{flex:1;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3)}.comment-author{font-size:var(--font-size-sm);font-weight:600;color:var(--color-text)}.comment-time{font-size:var(--font-size-xs);color:var(--color-text-faint);margin-left:var(--space-2)}.comment-body{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-1);word-break:break-word;white-space:pre-wrap}.comment-input-row{display:flex;gap:var(--space-2);align-items:flex-end;margin-top:var(--space-3)}.comment-input-row textarea{flex:1;min-height:64px;max-height:200px;resize:vertical;padding:var(--space-3);background:var(--color-surface-2);border:1px solid var(--control-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);font-family:var(--font-family);outline:none;transition:border-color .15s}.comment-input-row textarea:focus{outline:2px solid var(--focus-ring);outline-offset:1px}.subtask-list{display:flex;flex-direction:column;gap:var(--space-2)}.subtask-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);transition:background .1s}.subtask-item:hover{background:var(--color-border)}.subtask-item.done{opacity:.55}.subtask-item.done span{text-decoration:line-through;color:var(--color-text-muted)}.subtask-item input[type=checkbox]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--color-primary)}.tag-chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:9999px;font-size:var(--font-size-xs);font-weight:600}.status-upcoming{background:rgba(var(--accent-rgb),.12);color:var(--accent)}.status-upcoming:before{background:var(--accent)}.status-overdue{background:rgba(var(--danger-rgb),.12);color:var(--danger-text)}.status-overdue:before{background:var(--danger)}.status-review{background:rgba(var(--status-review-rgb),.12);color:var(--status-review)}.status-review:before{background:var(--status-review)}.priority-badge{display:inline-flex;align-items:center;gap:3px;padding:2px var(--space-2);border-radius:9999px;font-size:var(--font-size-xs);font-weight:600;text-transform:capitalize;white-space:nowrap}.priority-urgent{background:rgba(var(--danger-rgb),.12);color:var(--danger-text);border:1px solid rgba(var(--danger-rgb),.4)}.priority-high{background:rgba(var(--warn-rgb),.12);color:var(--warn-text)}.priority-medium{background:rgba(var(--accent-rgb),.12);color:var(--priority-medium)}.priority-low{background:rgba(var(--ink-rgb),.06);color:var(--priority-low)}.priority-none{background:var(--color-surface-2);color:var(--color-text-faint)}@media (max-width: 768px){.task-detail-layout{grid-template-columns:1fr}.task-detail-sidebar{position:static}}.command-palette-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#02080799;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;animation:cp-fade-in .12s ease}@keyframes cp-fade-in{0%{opacity:0}to{opacity:1}}.command-palette{width:100%;max-width:600px;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg),0 0 0 1px rgba(var(--warn-rgb),.08);overflow:hidden;animation:cp-slide-in .15s cubic-bezier(.16,1,.3,1)}@keyframes cp-slide-in{0%{opacity:0;transform:translateY(-12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.command-palette-input-wrap{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}.command-palette-search-icon{font-size:1.1rem;flex-shrink:0;opacity:.6}.command-palette-input{flex:1;background:transparent;border:none;outline:none;font-size:var(--font-size-base);font-family:var(--font-family);color:var(--ink);caret-color:var(--accent)}.command-palette-input::placeholder{color:var(--ink-muted)}.command-palette-hint{font-family:var(--font-data);font-variant-numeric:tabular-nums;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);background:var(--track);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px var(--space-2);flex-shrink:0}.command-palette-results{max-height:400px;overflow-y:auto;padding:var(--space-2)}.command-palette-empty{padding:var(--space-8) var(--space-4);text-align:center;color:var(--ink-muted);font-size:var(--font-size-sm)}.command-result-group-label{font-family:var(--font-data);font-variant-numeric:tabular-nums;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);padding:var(--space-2) var(--space-3);margin-top:var(--space-2)}.command-result-item{width:100%;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:none;background:transparent;cursor:pointer;font-family:var(--font-family);text-align:left;transition:background .08s}.command-result-item.active,.command-result-item:hover{background:var(--track)}.command-result-icon{width:2rem;height:2rem;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:.95rem;flex-shrink:0}.command-result-text{flex:1;min-width:0;display:flex;flex-direction:column}.command-result-title{font-size:var(--font-size-sm);font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.command-result-subtitle{font-size:var(--font-size-xs);color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.command-result-enter{font-family:var(--font-data);font-variant-numeric:tabular-nums;font-size:var(--font-size-xs);color:var(--ink-muted);background:var(--track);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px 6px;flex-shrink:0}.command-palette-footer{display:flex;gap:var(--space-4);padding:var(--space-2) var(--space-4);border-top:1px solid var(--border);background:var(--track);font-size:var(--font-size-xs);color:var(--ink-muted)}.notification-bell{position:relative;width:2.25rem;height:2.25rem;border-radius:var(--radius-md);background:rgba(var(--ink-rgb),.08);border:1px solid var(--border);color:var(--ink-muted);font-size:1rem;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:background var(--dur-fast) ease-out}.notification-bell:hover{background:rgba(var(--ink-rgb),.14);color:var(--ink)}.notification-badge{position:absolute;top:-4px;right:-4px;min-width:1.1rem;height:1.1rem;border-radius:9999px;background:var(--danger);color:var(--on-danger);font-size:.6rem;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 3px;border:2px solid var(--surface);animation:badge-pop .2s cubic-bezier(.175,.885,.32,1.275)}@keyframes badge-pop{0%{transform:scale(0)}to{transform:scale(1)}}.notification-drawer{position:fixed;bottom:5rem;left:calc(var(--sidebar-width) + var(--space-4));width:340px;max-height:480px;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;z-index:500;animation:drawer-slide-in .18s cubic-bezier(.16,1,.3,1)}@keyframes drawer-slide-in{0%{opacity:0;transform:translateY(10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.notification-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border);flex-shrink:0}.notification-drawer-title{font-size:var(--font-size-sm);font-weight:700}.notification-list{overflow-y:auto;flex:1}.notification-empty{padding:var(--space-8) var(--space-4);text-align:center;color:var(--ink-muted);font-size:var(--font-size-sm)}.notification-item{width:100%;display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:none;background:transparent;border-bottom:1px solid var(--border);cursor:pointer;text-align:left;font-family:var(--font-family);transition:background var(--dur-fast) ease-out;position:relative}.notification-item:hover{background:var(--track)}.notification-item.unread{background:rgba(var(--warn-rgb),.04)}.notification-item:last-child{border-bottom:none}.notification-item-icon{font-size:1.1rem;flex-shrink:0;margin-top:2px}.notification-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notification-item-title{font-size:var(--font-size-sm);font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-item-desc{font-size:var(--font-size-xs);color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-item-time{font-size:var(--font-size-xs);color:var(--ink-muted)}.notification-unread-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:6px}.custom-field-row{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:var(--space-3);min-height:2rem}.custom-field-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-field-input{background:var(--color-surface-2);border:1px solid var(--control-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-sm);padding:var(--space-1) var(--space-3);width:100%;outline:none;transition:border-color .15s}.custom-field-input:focus{outline:2px solid var(--focus-ring);outline-offset:1px}select.custom-field-input{cursor:pointer}.recurrence-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:9999px;background:rgba(var(--accent-rgb),.15);color:var(--color-primary);font-size:var(--font-size-xs);font-weight:600;border:1px solid rgba(var(--accent-rgb),.3)}.recurrence-config{display:flex;flex-direction:column;gap:var(--space-3)}.recurrence-active-banner{padding:var(--space-2) var(--space-3);background:rgba(var(--accent-rgb),.08);border:1px solid rgba(var(--accent-rgb),.2);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:600;color:var(--color-primary);margin-bottom:var(--space-2)}.time-log-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.time-log-header{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm)}.time-log-total{font-size:var(--font-size-xs);color:var(--color-text-muted)}.task-timer{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2)}.task-timer-running{border-color:var(--color-primary);background:var(--color-primary-glow)}.task-timer-display{font-variant-numeric:tabular-nums;font-weight:700;font-size:var(--font-size-lg);color:var(--color-primary);min-width:4.5rem}.task-timer-hint{font-size:var(--font-size-sm);color:var(--color-text-muted)}.time-progress-track{height:6px;background:var(--color-surface-2);border-radius:9999px;overflow:hidden}.time-progress-bar{height:100%;border-radius:9999px;transition:width .4s ease}.time-log-form{display:flex;gap:var(--space-2);align-items:center}.time-log-hours-input{width:80px;flex-shrink:0}.time-log-date-input{width:130px;flex-shrink:0}.time-log-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-4)}.time-entry-list{display:flex;flex-direction:column;gap:var(--space-2);max-height:320px;overflow-y:auto}.time-entry-row{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface-2);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.time-entry-avatar{width:28px;height:28px;border-radius:50%;background:var(--color-primary);color:var(--on-accent);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.time-entry-info{flex:1;display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.time-entry-user{font-weight:600}.time-entry-note{color:var(--color-text-muted)}.time-entry-date{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-left:auto}.time-entry-hours{font-weight:700;color:var(--color-primary);white-space:nowrap}.burndown-card{display:flex;flex-direction:column;gap:var(--space-3)}.burndown-legend{display:flex;gap:var(--space-4);font-size:var(--font-size-xs)}.burndown-legend-open{color:var(--color-primary);font-weight:600}.burndown-legend-closed{color:var(--ok);font-weight:600}.burndown-loading,.burndown-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-4)}.bulk-action-bar{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-5);box-shadow:var(--shadow-lg);z-index:100;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.bulk-count{font-weight:700;font-size:var(--font-size-sm);color:var(--color-primary);white-space:nowrap}.saved-filters-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:60;min-width:260px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.saved-filters-form{display:flex;gap:var(--space-2);align-items:center}.saved-filters-empty{font-size:var(--font-size-xs);color:var(--color-text-faint);text-align:center;padding:var(--space-2)}.saved-filters-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.saved-filter-row{display:flex;align-items:center;gap:var(--space-2);padding:4px 6px;border-radius:var(--radius-sm);transition:background .15s}.saved-filter-row:hover{background:var(--color-border)}.saved-filter-name{flex:1;background:none;border:none;cursor:pointer;text-align:left;font-size:var(--font-size-sm);color:var(--color-text-primary);padding:0}.related-records-card{margin-top:var(--space-4);padding:var(--space-4)}.related-records-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.related-records-form{display:flex;gap:var(--space-2);align-items:center;margin-bottom:var(--space-3)}.related-records-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-3)}.related-records-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.related-record-row{display:flex;align-items:center;gap:var(--space-3);padding:6px 8px;border-radius:var(--radius-sm);border:1px solid var(--color-border);font-size:var(--font-size-sm)}.related-record-type{color:var(--color-primary);font-weight:600;white-space:nowrap}.related-record-name{flex:1;font-weight:500}.related-record-meta{color:var(--color-text-muted);font-size:var(--font-size-xs)}@media (max-width: 768px){.sidebar{display:none}.main-content{margin-left:0!important;width:100%;padding:var(--space-4) var(--space-3);padding-bottom:5.5rem;overflow-x:hidden}.page-header{flex-direction:column;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4)}.page-header-actions{width:100%;flex-wrap:wrap;gap:var(--space-2)}.page-header-actions>*{flex:1 1 auto;min-width:120px}.page-title{font-size:1.4rem}.page-subtitle{font-size:.85rem}.card{padding:var(--space-4);border-radius:var(--radius-md)}.stats-grid,.metrics-grid{grid-template-columns:repeat(2,1fr)!important;gap:var(--space-3)}.form-row,.form-grid{grid-template-columns:1fr!important}.form-group{margin-bottom:var(--space-4)}input,select,textarea{font-size:16px}.kanban-board{display:flex;flex-direction:row;overflow-x:auto;overflow-y:visible;gap:var(--space-3);padding-bottom:var(--space-4);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.kanban-column{min-width:80vw;max-width:80vw;flex-shrink:0;scroll-snap-align:start}.table-wrapper,table:not(.ui-table){display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}.modal-overlay{padding:0;align-items:flex-end}.modal,.dialog{width:100%!important;max-width:100%!important;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:90vh;overflow-y:auto}.task-detail-layout{grid-template-columns:1fr}.task-detail-sidebar{position:static}.btn,button{min-height:40px}.btn-sm{min-height:34px}.notification-panel,.dropdown-menu{width:calc(100vw - var(--space-6))!important;left:var(--space-3)!important;right:var(--space-3)!important}.page-sidebar{display:none}.timeline-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.hide-on-mobile{display:none!important}.chat-widget{bottom:var(--space-3);right:var(--space-3)}.chat-panel{width:calc(100vw - var(--space-6))!important;right:0!important;left:var(--space-3)!important}.command-palette-box{width:calc(100vw - var(--space-6))!important;max-width:none!important}.billing-grid,.feature-grid{grid-template-columns:1fr!important}.api-key-row{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.swimlane-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.profile-grid,.settings-grid{grid-template-columns:1fr!important}}@media (min-width: 769px) and (max-width: 1024px){:root{--sidebar-width: 200px}.stats-grid,.metrics-grid{grid-template-columns:repeat(2,1fr)!important}.kanban-column{min-width:240px}.page-header-actions{flex-wrap:wrap;gap:var(--space-2)}}@media (hover: none){.sidebar-item:hover{background:transparent}.sidebar-item:active{background:#ffffff14}}.ai-pilot{display:flex;flex-direction:column;gap:var(--space-4)}.ai-pilot-header{display:flex;align-items:center;justify-content:space-between}.ai-pilot-title{display:flex;align-items:center;gap:var(--space-4)}.ai-pilot-icon{font-size:2.5rem;line-height:1}.ai-pilot-title h2{font-size:1.4rem;font-weight:700;margin:0;color:var(--color-text-primary)}.ai-pilot-tabs{display:flex;gap:var(--space-2);flex-wrap:wrap;border-bottom:1px solid var(--color-border);padding-bottom:var(--space-2)}.ai-tab-btn{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s;white-space:nowrap}.ai-tab-btn:hover{background:var(--color-bg);color:var(--color-text-primary)}.ai-tab-btn.active{background:var(--color-primary);color:var(--on-accent);border-color:var(--color-primary);font-weight:600}.ai-pilot-body{min-height:400px}.ai-tab-content{display:flex;flex-direction:column;gap:var(--space-4)}.ai-hint{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.ai-textarea{width:100%;padding:var(--space-4);border:1px solid var(--control-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-base);font-family:inherit;resize:vertical;line-height:1.6;transition:border-color .2s}.ai-textarea:focus{outline:2px solid var(--focus-ring);outline-offset:1px}.ai-actions{display:flex;gap:var(--space-3)}.ai-error{padding:var(--space-3);border-radius:var(--radius-md);background:rgba(var(--danger-rgb),.08);color:var(--danger-text);border:1px solid rgba(var(--danger-rgb),.2);font-size:var(--font-size-sm)}.ai-loading{color:var(--color-text-muted);padding:var(--space-4);text-align:center}.ai-examples{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.ai-examples>span{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ai-example-chip{padding:4px var(--space-3);border:1px solid var(--color-border);border-radius:99px;background:var(--color-bg);font-size:var(--font-size-xs);cursor:pointer;color:var(--color-text-secondary);transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s}.ai-example-chip:hover{background:var(--color-primary);color:var(--on-accent);border-color:var(--color-primary)}.ai-plan-result{display:flex;flex-direction:column;gap:var(--space-3)}.ai-plan-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.ai-plan-header h3{font-size:1.1rem;font-weight:700;margin:0 0 var(--space-1)}.ai-plan-summary{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.ai-plan-tasks{display:flex;flex-direction:column;gap:var(--space-2)}.ai-plan-task-card{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);transition:border-color .15s}.ai-plan-task-card:hover{border-color:var(--color-primary)}.ai-plan-task-header{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-2)}.ai-phase-badge{padding:2px var(--space-2);border-radius:var(--radius-sm);background:rgba(var(--accent-rgb),.12);color:var(--accent);font-size:var(--font-size-xs);font-weight:600}.ai-due-date{font-size:var(--font-size-xs);color:var(--color-text-muted)}.ai-plan-task-title{font-weight:600;font-size:var(--font-size-sm);color:var(--color-text-primary)}.ai-plan-task-desc{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.ai-subtask-list{margin-top:var(--space-2);display:flex;flex-direction:column;gap:4px}.ai-subtask-item{font-size:var(--font-size-xs);color:var(--color-text-secondary);display:flex;gap:var(--space-1)}.ai-subtask-bullet{color:var(--color-text-faint);flex-shrink:0}.ai-ask-row{display:flex;gap:var(--space-2)}.ai-ask-row .input{flex:1}.ai-answer-card{padding:var(--space-4);border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(var(--accent-rgb),.06),rgba(var(--ink-rgb),.06));border:1px solid rgba(var(--accent-rgb),.2)}.ai-answer-label{font-size:var(--font-size-xs);font-weight:700;color:var(--color-teal);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.04em}.ai-answer-body{font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.7}.ai-brief-card{padding:var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface);border:1px solid var(--color-border);max-width:560px}.ai-brief-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.ai-brief-icon{font-size:2.5rem}.ai-brief-header h3{font-size:1.2rem;font-weight:700;margin:0 0 4px}.ai-brief-date{font-size:var(--font-size-sm);color:var(--color-text-muted)}.ai-brief-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3);margin-bottom:var(--space-4)}.ai-stat{text-align:center;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);border:1px solid var(--color-border)}.ai-stat.warning{background:rgba(var(--warn-rgb),.08);border-color:rgba(var(--warn-rgb),.3)}.ai-stat.danger{background:rgba(var(--danger-rgb),.08);border-color:rgba(var(--danger-rgb),.3)}.ai-stat-num{font-size:2rem;font-weight:800;color:var(--color-text-primary);line-height:1}.ai-stat.warning .ai-stat-num{color:var(--color-warning)}.ai-stat.danger .ai-stat-num{color:var(--color-danger)}.ai-stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.ai-brief-summary{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-3)}.ai-brief-suggestions-title{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.ai-brief-suggestions ul{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:var(--space-2)}.ai-brief-suggestions li{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}.ai-impact-card{padding:var(--space-4);border-radius:var(--radius-md);background:rgba(var(--danger-rgb),.05);border:1px solid rgba(var(--danger-rgb),.2)}.ai-impact-summary{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3);line-height:1.6}.ai-impact-slip{font-weight:600;font-size:var(--font-size-sm);color:var(--color-danger);margin-bottom:var(--space-3)}.ai-impact-label{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.ai-impact-affected ul{margin:0;padding-left:1rem;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ai-impact-suggestions{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.ai-suggestion-card{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ai-suggestion-num{font-weight:700;color:var(--color-primary);margin-right:var(--space-2)}.idea-modal{width:min(900px,95vw);max-height:90vh;overflow-y:auto;border-radius:var(--radius-xl)}.idea-modal-title{display:flex;align-items:center;gap:var(--space-3)}.idea-modal-icon{font-size:2rem}.idea-modal-title h2{font-size:1.4rem;font-weight:700;margin:0}.idea-examples{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.idea-examples-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.idea-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.idea-chip{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:99px;background:var(--color-bg);font-size:var(--font-size-xs);cursor:pointer;color:var(--color-text-secondary);transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s}.idea-chip:hover{background:var(--color-primary);color:var(--on-accent);border-color:var(--color-primary)}.idea-input-section{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.idea-textarea{min-height:120px}.idea-input-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.idea-plan{display:flex;flex-direction:column}.idea-plan-hero{padding:var(--space-5);background:linear-gradient(135deg,rgba(var(--accent-rgb),.08),rgba(var(--ink-rgb),.08));border-bottom:1px solid var(--color-border)}.idea-plan-name{font-size:1.3rem;font-weight:800;margin:0 0 var(--space-2)}.idea-stats{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-top:var(--space-3)}.idea-stats span{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.idea-task-list{padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);max-height:40vh;overflow-y:auto}.idea-plan-actions{padding:var(--space-4) var(--space-5);display:flex;justify-content:space-between;border-top:1px solid var(--color-border);flex-wrap:wrap;gap:var(--space-3)}.report-controls{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-4) var(--space-5)}.report-period-row{display:flex;align-items:center;gap:var(--space-3);flex:1}.report-period-chips{display:flex;gap:var(--space-2)}.period-chip{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);font-size:var(--font-size-sm);cursor:pointer;color:var(--color-text-secondary);transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s}.period-chip.active{background:var(--color-primary);color:var(--on-accent);border-color:var(--color-primary)}.report-result{display:flex;flex-direction:column;gap:var(--space-4)}.report-export-bar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.report-period-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.report-export-actions{display:flex;gap:var(--space-2)}.report-card{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.report-card-danger{border-color:rgba(var(--danger-rgb),.25);background:rgba(var(--danger-rgb),.04)}.report-section-title{font-size:1rem;font-weight:700;margin:0 0 var(--space-4)}.report-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3);margin-bottom:var(--space-4)}.report-stat{text-align:center;padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg)}.report-stat.danger .report-stat-value{color:var(--color-danger)}.report-stat-value{font-size:1.8rem;font-weight:800;color:var(--color-text-primary);line-height:1}.report-stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:4px}.report-progress-bar{height:8px;background:var(--color-border);border-radius:99px;overflow:hidden}.report-progress-fill{height:100%;background:var(--color-primary);border-radius:99px;transition:width .5s ease}.report-narrative{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.7;margin:0}.report-list{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:var(--space-2)}.report-list li{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5}@media (max-width: 768px){.ai-pilot-tabs{gap:var(--space-1)}.ai-tab-btn{font-size:var(--font-size-xs);padding:var(--space-2) var(--space-2)}.ai-brief-stats{grid-template-columns:repeat(3,1fr)}.report-stats-row{grid-template-columns:repeat(2,1fr)}.ai-plan-header{flex-direction:column}.idea-task-list{max-height:30vh}}.tm-activity-card{padding:var(--space-4) var(--space-5)}.tm-activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.tm-activity-title{font-weight:600;font-size:var(--font-size-sm)}.tm-activity-hint{font-size:var(--font-size-xs);color:var(--color-text-faint)}.tm-loading{color:var(--color-text-muted);font-size:var(--font-size-sm);padding:var(--space-4) 0}.tm-bars{display:flex;align-items:flex-end;gap:3px;height:72px;overflow-x:auto;padding-bottom:var(--space-2)}.tm-bar-wrapper{cursor:pointer;display:flex;flex-direction:column;justify-content:flex-end;flex-shrink:0;width:9px}.tm-bar{background:var(--color-primary);border-radius:2px 2px 0 0;opacity:.7;transition:opacity .15s;min-height:4px}.tm-bar-wrapper:hover .tm-bar{opacity:1}.tm-empty{font-size:var(--font-size-sm);color:var(--color-text-muted)}.tm-controls{padding:var(--space-4) var(--space-5)}.tm-controls-row{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-wrap:wrap}.tm-snapshot{display:flex;flex-direction:column;gap:var(--space-4)}.tm-snap-summary{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:var(--space-3)}.tm-snap-time{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.tm-snap-events{font-size:var(--font-size-xs);color:var(--color-text-faint);margin-left:var(--space-2)}.tm-snap-stats{display:flex;gap:var(--space-3);flex-wrap:wrap}.tm-stat{font-size:var(--font-size-xs);font-weight:600;padding:3px var(--space-2);border-radius:var(--radius-sm)}.tm-stat.todo{background:rgba(var(--ink-rgb),.06);color:var(--ink-muted)}.tm-stat.in_progress{background:rgba(var(--accent-rgb),.12);color:var(--accent)}.tm-stat.done{background:rgba(var(--ok-rgb),.12);color:var(--ok-text)}.tm-stat.total{background:var(--color-bg);color:var(--color-text-secondary)}.tm-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4)}.tm-column{display:flex;flex-direction:column;gap:var(--space-2)}.tm-column-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-bg);border-left:3px solid;font-size:var(--font-size-sm);font-weight:600}.tm-column-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tm-column-title{flex:1}.tm-column-count{font-size:var(--font-size-xs);color:var(--color-text-muted)}.tm-column-tasks{display:flex;flex-direction:column;gap:var(--space-2)}.tm-task-card{padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.tm-task-title{font-size:var(--font-size-sm);font-weight:500;margin-bottom:var(--space-1)}.tm-task-meta{display:flex;align-items:center;gap:var(--space-2)}.tm-priority-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.tm-task-priority{font-size:var(--font-size-xs);color:var(--color-text-muted)}.tm-task-due{font-size:var(--font-size-xs);color:var(--color-text-faint);margin-left:auto}.tm-column-empty{font-size:var(--font-size-xs);color:var(--color-text-faint);padding:var(--space-2)}.tm-empty-snap{font-size:var(--font-size-sm);color:var(--color-text-muted);text-align:center;padding:var(--space-8)}@media (max-width: 768px){.tm-columns{grid-template-columns:1fr}.tm-snap-summary{flex-direction:column;align-items:flex-start}}.marketplace-modal{width:min(960px,97vw);max-height:90vh;overflow-y:auto;border-radius:var(--radius-xl)}.marketplace-page{max-width:1100px}.marketplace-title{font-size:1.4rem;font-weight:700;margin:0}.marketplace-filters{padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);border-bottom:1px solid var(--color-border)}.marketplace-cats{display:flex;flex-wrap:wrap;gap:var(--space-2)}.marketplace-cat{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:99px;background:var(--color-bg);font-size:var(--font-size-xs);cursor:pointer;color:var(--color-text-secondary);transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .15s,opacity .15s}.marketplace-cat.active{background:var(--color-primary);color:var(--on-accent);border-color:var(--color-primary)}.marketplace-grid{padding:var(--space-5);display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.marketplace-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);cursor:pointer;transition:background-color .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s,opacity .2s}.marketplace-card:hover,.marketplace-card.previewing{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 20px rgba(var(--accent-rgb),.12)}.marketplace-card-icon{font-size:2rem;line-height:1}.marketplace-card-body{flex:1}.marketplace-card-name{font-weight:700;font-size:var(--font-size-base);color:var(--color-text-primary);margin-bottom:4px}.marketplace-card-cat{font-size:var(--font-size-xs);color:var(--color-text-faint);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.marketplace-card-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary);line-height:1.5}.marketplace-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.marketplace-task-count{font-size:var(--font-size-xs);color:var(--color-text-muted)}.marketplace-empty{grid-column:1/-1;text-align:center;padding:var(--space-8);color:var(--color-text-muted);font-size:var(--font-size-sm);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.marketplace-preview{margin:var(--space-5) var(--space-5) 0;padding:var(--space-4) var(--space-5);border:1px solid var(--color-primary);border-radius:var(--radius-lg);background:var(--color-surface-alt, var(--color-surface));box-shadow:0 4px 20px rgba(var(--accent-rgb),.1)}.marketplace-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-2)}.marketplace-preview-title{display:flex;align-items:center;gap:var(--space-2);font-size:1.15rem;font-weight:700;color:var(--color-text-primary)}.marketplace-preview-icon{font-size:1.5rem;line-height:1}.marketplace-preview-meta{font-size:var(--font-size-xs);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}.marketplace-preview-actions{display:flex;gap:var(--space-2);flex-shrink:0}.marketplace-preview-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.5;margin:0 0 var(--space-3)}.marketplace-preview-tasks{list-style:decimal inside;margin:0;padding:0;max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.marketplace-preview-task{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:6px 10px;font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg, transparent);border-radius:var(--radius-sm)}.marketplace-preview-task-title{flex:1}.marketplace-preview-priority{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 6px;border-radius:var(--radius-sm)}.marketplace-preview-priority.priority-low{background:rgba(var(--ink-rgb),.06);color:var(--ink-muted)}.marketplace-preview-priority.priority-high{background:rgba(var(--warn-rgb),.15);color:var(--warn-text)}.marketplace-preview-priority.priority-urgent{background:rgba(var(--danger-rgb),.15);color:var(--danger-text)}.marketplace-preview-empty{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.beta-readiness{display:flex;flex-direction:column;gap:var(--space-5);max-width:900px}.beta-hero{display:flex;align-items:center;justify-content:space-between;padding:var(--space-6);background:linear-gradient(135deg,rgba(var(--accent-rgb),.1),rgba(var(--ink-rgb),.1));border:1px solid rgba(var(--accent-rgb),.2);border-radius:var(--radius-xl)}.beta-hero-left{display:flex;align-items:center;gap:var(--space-4)}.beta-hero-icon{font-size:3rem;line-height:1}.beta-hero-title{font-size:1.5rem;font-weight:800;margin:0 0 4px}.beta-hero-sub{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.beta-hero-score{text-align:center}.beta-score-num{font-size:3rem;font-weight:900;line-height:1}.beta-score-label{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:4px}.beta-progress-bar{height:10px;background:var(--color-border);border-radius:99px;overflow:hidden}.beta-progress-fill{height:100%;border-radius:99px;transition:width .6s ease}.beta-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-3)}.beta-stat{text-align:center;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.beta-stat.green{border-color:rgba(var(--ok-rgb),.3);background:rgba(var(--ok-rgb),.06)}.beta-stat.warn{border-color:rgba(var(--warn-rgb),.3);background:rgba(var(--warn-rgb),.06)}.beta-stat-num{font-size:2rem;font-weight:800;color:var(--color-text-primary)}.beta-stat.green .beta-stat-num{color:var(--ok)}.beta-stat.warn .beta-stat-num{color:var(--warn-text)}.beta-stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:4px}.beta-section{display:flex;flex-direction:column;gap:var(--space-3)}.beta-section-title{font-weight:700;font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.beta-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.beta-toggle:hover{color:var(--color-primary)}.beta-checklist{display:flex;flex-direction:column;gap:var(--space-2)}.beta-check-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s;font-size:var(--font-size-sm)}.beta-check-item:hover{border-color:var(--color-primary)}.beta-check-item.checked{border-color:rgba(var(--ok-rgb),.4);background:rgba(var(--ok-rgb),.05)}.beta-check-item input[type=checkbox]{accent-color:var(--ok);width:16px;height:16px;cursor:pointer}.beta-check-badge{margin-left:auto;font-size:var(--font-size-xs);font-weight:700;color:var(--ok-text);padding:2px var(--space-2);border-radius:var(--radius-sm);background:rgba(var(--ok-rgb),.1)}.beta-launch-banner{padding:var(--space-4);border-radius:var(--radius-md);background:linear-gradient(135deg,rgba(var(--ok-rgb),.12),rgba(var(--accent-rgb),.12));border:1px solid rgba(var(--ok-rgb),.3);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-primary)}.beta-matrix{display:flex;flex-direction:column;gap:var(--space-4)}.beta-phase-group{display:flex;flex-direction:column;gap:var(--space-2)}.beta-phase-label{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-faint);text-transform:uppercase;letter-spacing:.06em;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border)}.beta-feature-row{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}.beta-feature-row.done{background:rgba(var(--ok-rgb),.04)}.beta-feature-row.pending{background:rgba(var(--warn-rgb),.04)}.beta-feature-status{font-size:var(--font-size-base);flex-shrink:0}.beta-feature-name{font-size:var(--font-size-sm);font-weight:600;min-width:260px;color:var(--color-text-primary)}.beta-feature-desc{font-size:var(--font-size-xs);color:var(--color-text-muted)}.beta-links{display:flex;flex-wrap:wrap;gap:var(--space-2)}@media (max-width: 768px){.beta-stats{grid-template-columns:repeat(2,1fr)}.beta-hero{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.beta-feature-name{min-width:0}.beta-feature-desc{display:none}}.card div::-webkit-scrollbar{display:none}@media (max-width: 520px){.profile-tab-label{display:none}}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);font-size:var(--font-size-sm)}.breadcrumb-back{display:inline-flex;align-items:center;gap:var(--space-1);background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:500;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);transition:background .15s,color .15s}.breadcrumb-back:hover{background:rgba(var(--accent-rgb),.1)}.breadcrumb-sep{color:var(--color-text-faint);-webkit-user-select:none;user-select:none}.breadcrumb-current{color:var(--color-text-muted);font-weight:500}.plan-gate{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-8) var(--space-6);background:var(--color-surface-2);border:1px dashed var(--color-border);border-radius:var(--radius-lg);gap:var(--space-3);min-height:300px}.plan-gate-icon{font-size:2.5rem}.plan-gate-title{font-size:var(--font-size-xl);font-weight:800;margin:0;color:var(--color-text)}.plan-gate-desc{color:var(--color-text-muted);max-width:420px;line-height:1.6;margin:0;font-size:var(--font-size-sm)}.plan-gate-actions{display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center;margin-top:var(--space-2)}.billing-summary-bar{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-5)}.billing-summary-stat{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);flex:1;min-width:100px;text-align:center}.billing-summary-stat.green{border-color:rgba(var(--ok-rgb),.3)}.billing-summary-stat.blue{border-color:rgba(var(--accent-rgb),.3)}.billing-summary-stat.red{border-color:rgba(var(--danger-rgb),.3)}.billing-summary-stat.primary{border-color:rgba(var(--accent-rgb),.3)}.billing-summary-num{font-size:var(--font-size-xl);font-weight:800;color:var(--color-text)}.billing-summary-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:var(--space-1)}.billing-filters{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4);justify-content:space-between}.billing-badge-paid{background:rgba(var(--ok-rgb),.15);color:var(--ok-text)}.billing-badge-trial{background:rgba(var(--ok-rgb),.12);color:var(--ok-text)}.billing-badge-unpaid{background:rgba(var(--danger-rgb),.15);color:var(--danger-text)}.billing-badge-cancelled{background:rgba(var(--ink-rgb),.06);color:var(--ink-muted)}.billing-row-inactive{opacity:.5}.form-select-sm{padding:4px 8px;font-size:var(--font-size-xs);border-radius:var(--radius-sm);border:1px solid var(--control-border);background:var(--color-surface);color:var(--color-text);cursor:pointer}.form-select-sm:focus{outline:2px solid var(--focus-ring);outline-offset:1px}
