*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--text);font-family:var(--sf-font-sans);font-size:var(--sf-text-md);line-height:var(--sf-leading-normal);margin:0}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--sf-focus);outline-offset:2px}.sf-pagination{border-top:1px solid var(--sf-border);min-height:52px;color:var(--sf-text-tertiary);background:var(--sf-surface);font-size:var(--sf-text-2xs);justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.sf-pagination>div{align-items:center;gap:8px;display:flex}.sf-pagination strong{color:var(--sf-text-secondary);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-medium)}.sf-pagination button{border:1px solid var(--sf-border);border-radius:var(--sf-radius-sm);width:30px;height:30px;color:var(--sf-text-secondary);background:var(--sf-surface);cursor:pointer;place-items:center;padding:0;display:grid}.sf-pagination button:hover:not(:disabled){color:var(--sf-text);background:var(--sf-surface-subtle)}.sf-pagination button:disabled{opacity:var(--sf-disabled-opacity);cursor:not-allowed}.sf-pagination button svg{width:var(--sf-icon-sm);height:var(--sf-icon-sm)}::selection{color:#fff;background:var(--sf-brand-600)}.workspace-gate{text-align:center;background:var(--sf-canvas);place-content:center;justify-items:center;min-height:100vh;display:grid}.workspace-gate--loading .sf-spinner{border:1px solid var(--sf-border);width:48px;height:48px;color:var(--sf-brand-600);background:var(--sf-surface);box-shadow:var(--sf-shadow-sm);border-radius:8px}.workspace-gate--loading .sf-spinner svg{width:22px;height:22px}.workspace-gate>svg{width:28px;color:var(--sf-brand-600)}.workspace-gate h1{margin:var(--sf-space-4) 0 0;font-size:var(--sf-text-xl)}.workspace-gate p{margin:var(--sf-space-2) 0 var(--sf-space-4);color:var(--sf-text-secondary);font-size:var(--sf-text-sm)}.workspace-gate button{min-height:var(--sf-control-md);padding:0 var(--sf-space-4);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);font-weight:var(--sf-weight-semibold)}.workspace-gate--paused{padding:var(--sf-space-6)}.workspace-gate--paused>span{margin-top:var(--sf-space-3);color:var(--sf-brand-700);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);text-transform:uppercase}.workspace-gate--paused h1{max-width:560px}.workspace-gate--paused p{max-width:560px;line-height:1.6}.app-shell{grid-template-columns:72px minmax(0,1fr);min-height:100vh;display:grid}.rail{background:var(--surface);border-right:1px solid var(--line);z-index:10;flex-direction:column;align-items:center;gap:8px;height:100vh;padding:14px 10px;display:flex;position:sticky;top:0}.logo-button,.rail-button,.icon-button{border:0;place-items:center;display:inline-grid}.logo-button{color:#fff;background:linear-gradient(135deg, var(--cyan), var(--violet));border-radius:8px;width:38px;height:38px;margin-bottom:16px;box-shadow:0 7px 18px #4d56c82e}.logo-button svg{width:20px}.rail-button{width:42px;height:42px;color:var(--muted);background:0 0;border-radius:8px;position:relative}.rail-button svg{width:18px}.rail-button.active{color:var(--violet);background:var(--violet-soft)}.rail-button.active:before{content:"";background:var(--violet);border-radius:0 3px 3px 0;width:3px;height:20px;position:absolute;left:-10px}.rail-spacer{flex:1}.avatar{width:34px;height:34px;font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);text-align:center;background:var(--cyan-soft);color:var(--cyan);border-radius:50%;flex:none;place-items:center;line-height:1;display:inline-grid}.avatar.small{width:25px;height:25px;font-size:9px}.workspace{min-width:0}.topbar{z-index:8;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;align-items:center;gap:14px;height:66px;padding:0 22px;display:flex;position:sticky;top:0}.workspace-name{min-width:170px}.workspace-name strong,.workspace-name span{display:block}.workspace-name strong{font-size:var(--sf-text-sm);font-weight:var(--sf-weight-semibold)}.workspace-name span{font-size:var(--sf-text-caption);color:var(--muted);margin-top:2px}.search-field{flex:1;max-width:440px;position:relative}.search-field svg{width:15px;color:var(--muted);position:absolute;top:10px;left:11px}.search-field input{width:100%;height:var(--sf-control-md);border:1px solid var(--line);background:var(--raised);color:var(--text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);border-radius:8px;padding:0 12px 0 34px}kbd{border:1px solid var(--line);color:var(--muted);background:var(--surface);font-size:var(--sf-text-2xs);border-radius:5px;padding:2px 6px}.topbar-actions{gap:8px;margin-left:auto;display:flex;position:relative}.profile-button{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:8px;align-items:center;gap:7px;min-height:40px;padding:3px 7px 3px 4px;display:flex}.profile-copy{min-width:58px}.profile-copy strong,.profile-copy small{display:block}.profile-copy strong{font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold)}.profile-copy small{color:var(--muted);margin-top:2px;font-size:9px}.profile-button>svg{width:13px;color:var(--muted)}.profile-menu{z-index:30;border:1px solid var(--line);background:var(--surface);border-radius:8px;width:205px;padding:6px;position:absolute;top:46px;right:0;box-shadow:0 14px 35px #181c2a29}.profile-menu>div{border-bottom:1px solid var(--line);padding:8px 9px 10px}.profile-menu>div strong,.profile-menu>div span{display:block}.profile-menu>div strong{font-size:var(--sf-text-caption)}.profile-menu>div span{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:3px}.profile-menu button{width:100%;min-height:34px;font-size:var(--sf-text-caption);text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;padding:0 8px;display:flex}.profile-menu button:hover{background:var(--raised)}.profile-menu button svg{width:14px;color:var(--muted)}.notification-menu{z-index:30;border:1px solid var(--line);background:var(--surface);border-radius:8px;width:220px;padding:13px;position:absolute;top:46px;right:250px;box-shadow:0 14px 35px #181c2a29}.notification-menu strong{font-size:var(--sf-text-xs)}.notification-menu p{color:var(--muted);font-size:var(--sf-text-caption);margin:7px 0 0}.sf-toast-viewport{z-index:90;pointer-events:none;gap:10px;width:min(390px,100vw - 32px);display:grid;position:fixed;top:82px;right:24px}.sf-toast{--toast-accent:var(--sf-brand-600);--toast-soft:var(--sf-brand-50);border:1px solid var(--line);border-left:4px solid var(--toast-accent);background:var(--surface);pointer-events:auto;border-radius:8px;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:10px;min-height:64px;padding:13px 40px 13px 13px;animation:.18s ease-out sf-toast-in;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 38px #181c2a2e}.sf-toast--success{--toast-accent:var(--sf-success);--toast-soft:var(--sf-success-soft)}.sf-toast--danger{--toast-accent:var(--sf-danger);--toast-soft:var(--sf-danger-soft)}.sf-toast--warning{--toast-accent:var(--sf-warning);--toast-soft:color-mix(in srgb, var(--sf-warning) 12%, var(--surface))}.sf-toast--closing{animation:.16s ease-in forwards sf-toast-out}.sf-toast__icon{width:28px;height:28px;color:var(--toast-accent);background:var(--toast-soft);border-radius:50%;place-items:center;display:grid}.sf-toast__icon svg{width:15px;height:15px}.sf-toast__content{min-width:0;padding-top:5px}.sf-toast__content p{color:var(--text);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold);overflow-wrap:anywhere;margin:0;line-height:1.45}.sf-toast__actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.sf-toast__actions button{min-height:28px;color:var(--sf-brand-700);background:var(--sf-brand-50);cursor:pointer;font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-bold);border:0;border-radius:6px;padding:0 9px}.sf-toast__actions button:hover{background:var(--sf-brand-100)}.sf-toast__dismiss{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.sf-toast__dismiss:hover{color:var(--text);background:var(--raised)}.sf-toast__dismiss svg{width:14px;height:14px}.sf-toast__progress{background:var(--toast-accent);transform-origin:0;height:2px;animation-name:sf-toast-progress;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;bottom:0;left:0;right:0}@keyframes sf-toast-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes sf-toast-out{to{opacity:0;transform:translate(12px)}}@keyframes sf-toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (max-width:640px){.sf-toast-viewport{width:auto;top:74px;left:16px;right:16px}}@media (prefers-reduced-motion:reduce){.sf-toast,.sf-toast--closing{animation:none}.sf-toast__progress{display:none}}.duplicate-task-note{color:var(--muted);font-size:var(--sf-text-xs);margin:0;line-height:1.6}.duplicate-task-note+.sf-alert{margin-top:12px}.block-task-form{gap:16px;display:grid}.block-task-form>label{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);gap:7px;display:grid}.block-task-form>label>span{justify-content:space-between;align-items:center;display:flex}.block-task-form>label em{color:var(--sf-danger);font-size:9px;font-style:normal;font-weight:var(--sf-weight-semibold);text-transform:uppercase}.block-task-form textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:104px;color:var(--text);background:var(--surface);font:inherit;font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);border-radius:7px;padding:11px 12px;line-height:1.5}.block-task-form textarea:focus{outline:2px solid color-mix(in srgb, var(--sf-brand-500) 25%, transparent);border-color:var(--sf-brand-500)}.block-task-form>label small{justify-self:end;font-size:9px}.sf-notification-content{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.sf-notification-content:hover strong{color:var(--sf-brand-600)}.task-blocker-panel{border:1px solid color-mix(in srgb, var(--sf-warning) 30%, var(--line));border-left:3px solid var(--sf-warning);border-radius:var(--sf-radius-md);background:color-mix(in srgb, var(--sf-warning) 5%, var(--surface));margin-top:18px;overflow:hidden}.task-blocker-panel header{border-bottom:1px solid color-mix(in srgb, var(--sf-warning) 18%, var(--line));justify-content:space-between;align-items:center;gap:12px;min-height:47px;padding:0 14px;display:flex}.task-blocker-panel header span{align-items:center;gap:8px;display:flex}.task-blocker-panel header svg{width:16px;height:16px;color:var(--sf-warning)}.task-blocker-panel header time{color:var(--muted);white-space:nowrap;flex:none;font-size:9px}.task-blocker-panel p{color:var(--text);font-size:var(--sf-text-caption);overflow-wrap:anywhere;margin:0;padding:13px 14px;line-height:1.55}.task-blocker-panel footer{border-top:1px solid color-mix(in srgb, var(--sf-warning) 14%, var(--line));background:color-mix(in srgb, var(--surface) 72%, transparent);justify-content:space-between;align-items:center;gap:12px;min-height:54px;padding:9px 14px;display:flex}.task-blocker-panel footer>span{min-width:0;color:var(--muted);font-size:9px;line-height:1.4}.task-blocker-panel footer>span strong{color:var(--text);font-weight:var(--sf-weight-semibold)}.task-blocker-panel button{background:var(--sf-brand-600);color:#fff;min-height:34px;font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);white-space:nowrap;border:0;border-radius:7px;flex:none;align-items:center;gap:7px;padding:0 11px;display:inline-flex}.task-blocker-panel button svg{width:15px}.resolve-blocker-form{gap:16px;display:grid}.resolve-blocker-form label{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);gap:7px;display:grid}.resolve-blocker-form label>span{justify-content:space-between;display:flex}.resolve-blocker-form em{color:var(--sf-danger);text-transform:uppercase;font-size:9px;font-style:normal}.resolve-blocker-form textarea{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--text);font:inherit;font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);resize:vertical;border-radius:7px;min-height:82px;padding:11px 12px}.resolve-blocker-form label small{justify-self:end;font-size:9px}@media (max-width:640px){.task-blocker-panel header{flex-direction:column;align-items:flex-start;gap:4px;padding-block:10px}.task-blocker-panel header time{white-space:normal;padding-left:24px}.task-blocker-panel footer{flex-direction:column;align-items:stretch}.task-blocker-panel button{justify-content:center;width:100%}}.block-mentions{border:1px solid var(--line);background:var(--surface);border-radius:8px;position:relative}.block-mentions>header{border-bottom:1px solid var(--line);background:var(--raised);border-radius:8px 8px 0 0;justify-content:space-between;align-items:center;min-height:52px;padding:10px 12px;display:flex}.block-mentions>header strong,.block-mentions>header span{display:block}.block-mentions>header strong{color:var(--text);font-size:var(--sf-text-caption)}.block-mentions>header span{color:var(--muted);margin-top:3px;font-size:9px}.block-mentions>header svg{width:16px;color:var(--muted)}.block-mention-trigger{width:100%;min-height:42px;color:var(--text);font:inherit;font-size:var(--sf-text-caption);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.block-mention-trigger:hover{background:var(--raised)}.block-mention-trigger svg{width:15px;color:var(--muted);transition:transform .16s}.block-mention-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.block-mention-chips{flex-wrap:wrap;gap:5px;padding:0 8px 8px;display:flex}.block-mention-chips button{border:1px solid var(--line);min-height:27px;color:var(--text);background:var(--raised);font:inherit;font-size:var(--sf-text-caption);cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:3px 7px 3px 4px;display:inline-flex}.block-mention-chips button>span{width:20px;height:20px;color:var(--sf-brand-700);background:var(--sf-info-soft);font-size:8px;font-weight:var(--sf-weight-bold);border-radius:50%;place-items:center;display:grid}.block-mention-chips button>svg{width:12px;color:var(--muted)}.block-mention-dropdown{z-index:20;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:7px;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 14px 35px #181c2a29}.block-mention-dropdown>label{height:var(--sf-control-md);border:1px solid var(--line);border-radius:7px;align-items:center;gap:7px;padding:0 9px;display:flex}.block-mention-dropdown>label:focus-within{border-color:var(--sf-brand-500);outline:2px solid color-mix(in srgb, var(--sf-brand-500) 20%, transparent)}.block-mention-dropdown>label svg{width:14px;color:var(--muted)}.block-mention-dropdown>label input{min-width:0;color:var(--text);font:inherit;font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);background:0 0;border:0;outline:0;flex:1}.block-mention-options{gap:3px;max-height:180px;margin-top:6px;display:grid;overflow-y:auto}.block-mention-options>button{min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;grid-template-columns:30px minmax(0,1fr) 20px;align-items:center;gap:8px;padding:5px 7px;display:grid}.block-mention-options>button:hover{background:var(--raised)}.block-mention-options>button.selected{border-color:color-mix(in srgb, var(--sf-brand-500) 28%, var(--line));background:var(--sf-info-soft)}.block-mention-options>button>span:nth-child(2) strong,.block-mention-options>button>span:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.block-mention-options>button>span:nth-child(2) strong{font-size:var(--sf-text-2xs)}.block-mention-options>button>span:nth-child(2) small{color:var(--muted);margin-top:2px;font-size:9px}.block-mention-options>button>i{border:1px solid var(--line);border-radius:5px;place-items:center;width:18px;height:18px;display:grid}.block-mention-options>button>i svg{width:14px;color:var(--sf-success)}.block-mention-options>p{color:var(--muted);font-size:var(--sf-text-2xs);text-align:center;margin:12px}.icon-button{width:var(--sf-control-md);height:var(--sf-control-md);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);color:var(--sf-text-secondary);background:var(--sf-surface);cursor:pointer;transition:background-color var(--sf-duration-fast) var(--sf-ease-standard), border-color var(--sf-duration-fast) var(--sf-ease-standard), color var(--sf-duration-fast) var(--sf-ease-standard), box-shadow var(--sf-duration-fast) var(--sf-ease-standard)}.icon-button svg,.primary-button svg,.secondary-button svg{width:15px}.primary-button,.secondary-button{min-height:var(--sf-control-md);padding:0 var(--sf-space-4);border-radius:var(--sf-radius-md);justify-content:center;align-items:center;gap:var(--sf-space-2);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-semibold);cursor:pointer;transition:background-color var(--sf-duration-fast) var(--sf-ease-standard), border-color var(--sf-duration-fast) var(--sf-ease-standard), color var(--sf-duration-fast) var(--sf-ease-standard), box-shadow var(--sf-duration-fast) var(--sf-ease-standard);line-height:1;display:inline-flex}.primary-button{border:1px solid var(--sf-brand-600);color:#fff;background:var(--sf-brand-600)}.secondary-button{border:1px solid var(--sf-border);color:var(--sf-text);background:var(--sf-surface)}.icon-button:hover:not(:disabled){color:var(--sf-text);background:var(--sf-surface-subtle);border-color:var(--sf-border-strong)}.primary-button:hover:not(:disabled){border-color:var(--sf-brand-700);background:var(--sf-brand-700)}.secondary-button:hover:not(:disabled){border-color:var(--sf-border-strong);background:var(--sf-surface-subtle)}.icon-button:focus-visible,.primary-button:focus-visible,.secondary-button:focus-visible{border-color:var(--sf-focus);box-shadow:var(--sf-focus-ring);outline:none}.icon-button:disabled,.primary-button:disabled,.secondary-button:disabled{opacity:var(--sf-disabled-opacity);cursor:not-allowed}.page-content{width:min(1500px,100%);margin:0 auto;padding:24px}.page-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.page-heading h1{font-size:var(--sf-text-page);line-height:1.2;font-weight:var(--sf-weight-bold);letter-spacing:0;margin:0}.page-heading p{color:var(--muted);font-size:var(--sf-text-ui);margin:7px 0 0}.range-switch,.view-switch{border:1px solid var(--line);background:var(--raised);border-radius:8px;padding:3px;display:flex}.range-switch button,.view-switch button{min-height:30px;color:var(--muted);font-size:var(--sf-text-caption);background:0 0;border:1px solid #0000;border-radius:6px;padding:0 10px}.range-switch button.active,.view-switch button.active{border-color:var(--sf-brand-300);color:var(--sf-brand-700);background:var(--sf-brand-50);box-shadow:inset 0 -2px 0 var(--sf-brand-500), var(--sf-shadow-xs)}.view-switch button{align-items:center;gap:5px;display:inline-flex}.view-switch svg{width:13px}.active-session{border:1px solid color-mix(in srgb, var(--violet) 20%, var(--line));background:linear-gradient(110deg, var(--cyan-soft), var(--violet-soft));border-radius:8px;align-items:center;gap:12px;min-height:66px;margin-top:18px;padding:12px 14px;display:flex}.active-session-icon{width:38px;height:38px;color:var(--violet);background:var(--surface);border-radius:8px;place-items:center;display:grid}.active-session-icon svg{width:18px}.active-session strong,.active-session p{margin:0;display:block}.active-session strong{font-size:var(--sf-text-xs)}.active-session p{color:var(--muted);font-size:var(--sf-text-caption);margin-top:4px}.live-time{font-size:var(--sf-text-md);font-weight:var(--sf-weight-semibold);font-variant-numeric:tabular-nums;color:var(--violet);margin-left:auto}.metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px;display:grid}.metrics button{border:1px solid var(--line);border-top:3px solid var(--sf-brand-500);background:var(--surface);min-height:96px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;padding:12px 16px;transition:border-color .16s,box-shadow .16s,transform .16s}.metrics button[data-tone=info]{border-top-color:var(--sf-info)}.metrics button[data-tone=success]{border-top-color:var(--sf-success)}.metrics button[data-tone=warning]{border-top-color:var(--sf-warning)}.metrics button:hover{border-color:color-mix(in srgb, var(--sf-brand-500) 35%, var(--line));box-shadow:var(--sf-shadow-sm);transform:translateY(-1px)}.metrics button:focus-visible{box-shadow:var(--sf-focus-ring);outline:none}.metrics button.active{border-color:var(--sf-brand-500);box-shadow:var(--sf-focus-ring)}.metrics span,.metrics small{color:var(--muted);font-size:var(--sf-text-caption);display:block}.metrics span{align-items:center;gap:8px;display:flex}.metrics span svg{width:14px;height:14px;color:var(--muted)}.metrics strong{font-size:var(--sf-text-xl);font-weight:var(--sf-weight-semibold);margin:8px 0 2px;display:block}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.project-summary{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:8px;padding:18px}.project-summary:hover{border-color:color-mix(in srgb, var(--violet) 35%, var(--line))}.project-summary>header{justify-content:space-between;align-items:center;min-height:32px;display:flex}.project-edit{width:30px;height:30px;color:var(--muted)}.project-edit svg{width:13px}.project-open{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:0}.project-summary strong,.project-summary small{display:block}.project-summary strong{font-size:var(--sf-text-sm);margin-top:14px}.project-summary p{min-height:34px;color:var(--muted);font-size:var(--sf-text-caption);margin:7px 0 0;line-height:1.5}.project-summary small{color:var(--muted);font-size:var(--sf-text-caption);margin-top:5px}.project-mark{background:linear-gradient(90deg, var(--cyan), var(--violet));border-radius:3px;width:28px;height:5px;display:block}.project-summary div{background:var(--raised);border-radius:3px;height:6px;margin-top:18px;overflow:hidden}.project-summary i{border-radius:inherit;background:var(--green);height:100%;display:block}.project-table{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-top:18px;overflow:hidden}.project-status-tabs{align-items:center;gap:var(--sf-space-1);padding:var(--sf-space-1);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface-subtle);margin-top:18px;display:inline-flex}.project-status-tabs button{min-height:34px;padding:0 var(--sf-space-3);border-radius:var(--sf-radius-sm);color:var(--sf-text-secondary);font-size:var(--sf-text-caption);cursor:pointer;transition:background-color var(--sf-duration-fast) var(--sf-ease-standard), border-color var(--sf-duration-fast) var(--sf-ease-standard), color var(--sf-duration-fast) var(--sf-ease-standard), box-shadow var(--sf-duration-fast) var(--sf-ease-standard);background:0 0;border:1px solid #0000;align-items:center;gap:7px;display:flex}.project-status-tabs button:hover:not(.active){color:var(--sf-text);background:var(--sf-hover-overlay)}.project-status-tabs button.active{border-color:var(--sf-brand-300);color:var(--sf-brand-700);background:var(--sf-brand-50);box-shadow:inset 0 -2px 0 var(--sf-brand-500), var(--sf-shadow-xs)}.project-status-tabs button.active span{color:var(--sf-brand-700);background:var(--sf-brand-100)}.project-status-tabs span{background:var(--line);border-radius:10px;place-items:center;min-width:20px;height:20px;font-size:9px;display:grid}.project-status-tabs+.project-table{margin-top:12px}.project-table-row{border-bottom:1px solid var(--line);min-height:64px;font-size:var(--sf-text-caption);grid-template-columns:minmax(240px,1.5fr) 120px 120px 64px 80px 130px 100px 34px;align-items:center;gap:12px;padding:0 14px;display:grid}.project-table-row:last-child{border-bottom:0}.project-table-row:not(.project-table-head):hover{background:var(--raised)}.project-table-head{min-height:40px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium)}.project-table-name{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;min-width:0;padding:0;display:flex}.project-table-name--readonly{cursor:default}.project-color{border-radius:3px;flex:none;width:5px;height:34px}.project-table-name strong,.project-table-name small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-table-name strong{font-size:var(--sf-text-xs)}.project-table-name small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:4px}.project-external-owner{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-time{font-weight:var(--sf-weight-semibold);font-variant-numeric:tabular-nums}.project-progress>span{font-size:var(--sf-text-2xs);font-variant-numeric:tabular-nums;display:block}.project-progress i{background:var(--raised);border-radius:3px;width:82px;height:5px;margin-top:6px;display:block;overflow:hidden}.project-progress b{border-radius:inherit;background:var(--sf-success);height:100%;display:block}.project-table-edit{width:30px;height:30px;color:var(--muted)}.project-table-edit svg{width:14px}.content-panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-top:18px}.content-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:58px;padding:12px 16px;display:flex}.content-panel>header strong{font-size:var(--sf-text-xs)}.content-panel>header span{color:var(--muted);font-size:var(--sf-text-caption)}.content-panel>header>div>strong,.content-panel>header>div>span{display:block}.content-panel>header>div>span{margin-top:4px}.workspace-calendar{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-top:18px;overflow:hidden}.workspace-calendar>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:10px 16px;display:flex}.calendar-header-actions{align-items:center;gap:14px;display:flex}.calendar-header-actions>span{color:var(--muted);font-size:var(--sf-text-caption);white-space:nowrap}.calendar-toolbar{align-items:center;gap:5px;display:flex}.calendar-toolbar h2{min-width:230px;font-size:var(--sf-text-md);font-weight:var(--sf-weight-semibold);margin:0 0 0 8px}.calendar-jump-today{border:1px solid var(--line);background:var(--surface);min-height:34px;font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);cursor:pointer;border-radius:7px;padding:0 12px}.calendar-icon-button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.calendar-icon-button:hover,.calendar-jump-today:hover{background:var(--raised)}.calendar-icon-button svg{width:16px}.calendar-view-switch{border:1px solid var(--line);background:var(--raised);border-radius:7px;padding:3px;display:flex}.calendar-view-switch button{min-height:30px;color:var(--muted);font-size:var(--sf-text-2xs);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:5px;padding:0 11px}.calendar-view-switch button.active{border-color:var(--sf-brand-300);color:var(--sf-brand-700);background:var(--sf-brand-50);box-shadow:inset 0 -2px 0 var(--sf-brand-500), var(--sf-shadow-xs)}.calendar-weekdays{border-bottom:1px solid var(--line);background:var(--raised);grid-template-columns:repeat(7,minmax(0,1fr));min-width:700px;min-height:34px;display:grid}.calendar-weekdays span{color:var(--muted);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);text-transform:uppercase;place-items:center;display:grid}.calendar-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:700px;display:grid}.calendar-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);min-width:0;min-height:112px;padding:7px;overflow:hidden}.calendar-day:nth-child(7n){border-right:0}.calendar-day:nth-last-child(-n+7){border-bottom:0}.calendar-day>time{width:24px;height:24px;color:var(--text);font-size:var(--sf-text-2xs);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;margin-left:auto;display:grid}.calendar-day--outside{background:var(--raised)}.calendar-day--outside>time{color:color-mix(in srgb, var(--muted) 55%, transparent)}.calendar-day--today>time{color:#fff;background:var(--sf-brand-600);font-weight:var(--sf-weight-semibold)}.calendar-day>div{gap:3px;margin-top:3px;display:grid}.calendar-task{border:0;border-left:3px solid var(--sf-brand-500);width:100%;min-height:22px;color:var(--sf-info);background:var(--sf-info-soft);font-size:9px;font-weight:var(--sf-weight-semibold);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:4px;padding:3px 6px;overflow:hidden}.calendar-task--completed{border-left-color:var(--sf-success);color:var(--sf-success);background:var(--sf-success-soft)}.calendar-task--blocked{border-left-color:var(--sf-danger);color:var(--sf-danger);background:var(--sf-danger-soft)}.calendar-task--in-review{border-left-color:var(--sf-warning);color:var(--sf-warning);background:var(--sf-warning-soft)}.calendar-more{color:var(--muted);padding-left:7px;font-size:9px}@media (min-width:581px){.calendar-view--month{grid-template-rows:auto auto minmax(0,1fr);height:calc(100dvh - 193px);display:grid}.calendar-month-grid{grid-template-rows:repeat(6,minmax(0,1fr));min-height:0}.calendar-day{min-height:0}}.calendar-agenda>header{border-bottom:1px solid var(--line);min-height:38px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-2xs);grid-template-columns:minmax(0,1fr) 110px 84px;align-items:center;gap:14px;padding:0 50px 0 42px;display:grid}.calendar-agenda>button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:66px;color:var(--text);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:10px minmax(0,1fr) 110px 84px 18px;align-items:center;gap:14px;padding:9px 16px;display:grid}.calendar-agenda>button:hover{background:var(--raised)}.calendar-agenda>button:last-of-type{border-bottom:0}.calendar-agenda>button>span{min-width:0}.calendar-agenda>button>span strong,.calendar-agenda>button>span small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.calendar-agenda>button>span strong{font-size:var(--sf-text-xs)}.calendar-agenda>button>span small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:4px}.calendar-agenda>button>b{font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold)}.calendar-agenda>button>svg{width:15px;color:var(--muted)}.calendar-status-dot{background:var(--sf-info);border-radius:50%;width:7px;height:7px}.calendar-status-dot--completed{background:var(--sf-success)}.calendar-status-dot--blocked{background:var(--sf-danger)}.calendar-status-dot--in-review{background:var(--sf-warning)}.calendar-empty-day{min-height:280px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:7px;display:grid}.calendar-empty-day svg{width:27px}.calendar-empty-day strong{color:var(--text);font-size:var(--sf-text-ui)}.calendar-empty-day span{font-size:var(--sf-text-2xs)}.calendar-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));min-width:760px;min-height:520px;display:grid}.calendar-week-grid>section{border-right:1px solid var(--line);background:var(--surface);min-width:0}.calendar-week-grid>section:last-child{border-right:0}.calendar-week-grid>section>header{border-bottom:1px solid var(--line);min-height:54px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-2xs);justify-content:space-between;align-items:center;padding:8px;display:flex}.calendar-week-grid>section>header strong{width:28px;height:28px;color:var(--text);font-size:var(--sf-text-xs);border-radius:50%;place-items:center;display:grid}.calendar-week-grid>section.today>header strong{color:#fff;background:var(--sf-brand-600)}.calendar-week-grid>section>div{align-content:start;gap:6px;padding:7px;display:grid}.calendar-week-task{border:0;border-left:3px solid var(--sf-info);width:100%;min-height:54px;color:var(--text);background:var(--sf-info-soft);text-align:left;cursor:pointer;border-radius:4px;padding:7px 8px;overflow:hidden}.calendar-week-task:hover{filter:brightness(.98)}.calendar-week-task strong,.calendar-week-task span,.calendar-week-task small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.calendar-week-task strong{font-size:var(--sf-text-2xs)}.calendar-week-task span{color:var(--muted);margin-top:4px;font-size:9px}.calendar-week-task small{color:var(--sf-info);margin-top:6px;font-size:8px}.calendar-week-task--completed{border-left-color:var(--sf-success);background:var(--sf-success-soft)}.calendar-week-task--completed small{color:var(--sf-success)}.calendar-week-task--blocked{border-left-color:var(--sf-danger);background:var(--sf-danger-soft)}.calendar-week-task--blocked small{color:var(--sf-danger)}.calendar-week-task--in-review{border-left-color:var(--sf-warning);background:var(--sf-warning-soft)}.calendar-week-task--in-review small{color:var(--sf-warning)}.calendar-week-empty{min-height:80px;color:color-mix(in srgb, var(--muted) 72%, transparent);place-items:center;font-size:8px;display:grid}.calendar-list button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:80px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:62px;padding:10px 16px;display:grid}.calendar-list button:last-child{border-bottom:0}.calendar-list button:hover{background:var(--raised)}.calendar-list time{color:var(--violet);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold)}.calendar-list span strong,.calendar-list span small{display:block}.calendar-list span strong{font-size:var(--sf-text-xs)}.calendar-list span small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:4px}.calendar-list em{font-style:normal}.reports-page{gap:14px;display:grid}.report-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.report-range-switch{border:1px solid var(--line);background:var(--raised);border-radius:8px;flex-wrap:wrap;gap:2px;padding:3px;display:flex}.report-range-switch button{min-height:32px;color:var(--muted);font-size:var(--sf-text-caption);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;padding:0 11px}.report-range-switch button.active{border-color:var(--sf-brand-300);color:var(--sf-brand-700);background:var(--sf-brand-50);box-shadow:inset 0 -2px 0 var(--sf-brand-500), var(--sf-shadow-xs)}.report-custom-range{align-items:center;gap:8px;display:flex}.report-custom-range label{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);align-items:center;gap:7px;display:flex}.report-custom-range input{min-height:var(--sf-control-md);border:1px solid var(--line);background:var(--surface);color:var(--text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);border-radius:7px;padding:0 9px}.report-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.report-summary article{border:1px solid var(--line);border-top:3px solid var(--sf-brand-500);background:var(--surface);border-radius:8px;min-height:96px;padding:12px 16px}.report-summary article:nth-child(2){border-top-color:var(--sf-info)}.report-summary article:nth-child(3){border-top-color:var(--sf-success)}.report-summary span,.report-summary small{color:var(--muted);font-size:var(--sf-text-caption);display:block}.report-summary strong{font-size:var(--sf-text-xl);font-weight:var(--sf-weight-semibold);font-variant-numeric:tabular-nums;margin:8px 0 2px;display:block}.report-table{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.report-table-row{border-bottom:1px solid var(--line);min-height:62px;font-size:var(--sf-text-caption);grid-template-columns:minmax(240px,1fr) 120px 90px 80px 150px;align-items:center;gap:14px;padding:0 16px;display:grid}.report-table-row:last-child{border-bottom:0}.report-table-head{min-height:40px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium)}.report-project{align-items:center;gap:10px;min-width:0;display:flex}.report-project>i{border-radius:3px;flex:none;width:5px;height:34px}.report-project strong,.report-project small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.report-project strong{font-size:var(--sf-text-xs)}.report-project small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:4px}.report-time{font-variant-numeric:tabular-nums}.report-share>span{font-size:var(--sf-text-2xs);font-variant-numeric:tabular-nums}.report-share>i{background:var(--raised);border-radius:3px;width:100%;height:5px;margin-top:6px;display:block;overflow:hidden}.report-share b{border-radius:inherit;background:var(--sf-success);height:100%;display:block}.client-report-page{gap:14px;display:grid}.client-report-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;align-items:end;gap:10px;padding:10px 12px;display:flex}.client-report-title{align-self:center;min-width:250px;margin-right:auto}.client-report-title h1{font-size:var(--sf-text-2xl);margin:0;line-height:1.15}.client-report-title p{color:var(--muted);font-size:var(--sf-text-caption);margin:3px 0 0}.client-report-toolbar label{width:min(190px,18vw);color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);gap:5px;display:grid}.client-report-toolbar select,.client-report-toolbar input{width:100%;height:var(--sf-control-md);border:1px solid var(--line);color:var(--text);background:var(--raised);font-size:var(--sf-text-sm);border-radius:7px;padding:0 11px}.report-refresh-control{flex:none;justify-items:center;gap:3px;width:76px;display:grid}.report-refresh-status{color:var(--muted);white-space:nowrap;font-size:9px;line-height:1.1}.report-refresh-button{width:var(--sf-control-md);height:var(--sf-control-md);border:1px solid var(--line);color:var(--muted);background:var(--surface);cursor:pointer;border-radius:7px;flex:none;place-items:center;display:grid}.report-refresh-button:hover:not(:disabled){color:var(--sf-info);background:var(--raised)}.report-refresh-button:disabled{cursor:wait;opacity:.65}.report-refresh-button svg{width:17px;height:17px}.report-refresh-button .is-spinning{animation:.8s linear infinite report-refresh-spin}@keyframes report-refresh-spin{to{transform:rotate(360deg)}}.excel-export-button{width:var(--sf-control-md);height:var(--sf-control-md);color:#fff;cursor:pointer;background:#107c41;border:0;border-radius:7px;flex:none;place-items:center;display:grid}.excel-export-button:hover{background:#0b6635}.excel-export-button:disabled{cursor:not-allowed;opacity:.48}.excel-export-button svg{width:19px;height:19px}.excel-export-button span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.client-report{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.client-report-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:11px 16px;display:flex}.client-report-head>div:last-child{text-align:right}.client-report-head>div:last-child strong,.client-report-head>div:last-child span{display:block}.client-report-head>div:last-child strong{font-size:var(--sf-text-ui)}.client-report-head>div:last-child span{color:var(--muted);font-size:var(--sf-text-caption);margin-top:4px}.client-report-mark{align-items:center;gap:11px;min-width:0;display:flex}.client-report-mark>i{color:#fff;background:var(--sf-success);width:34px;height:34px;font-size:var(--sf-text-caption);font-style:normal;font-weight:var(--sf-weight-bold);border-radius:7px;flex:none;place-items:center;line-height:1;display:grid}.client-report-mark strong,.client-report-mark small{display:block}.client-report-mark strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.client-report-mark small{color:var(--muted);font-size:var(--sf-text-caption);margin-top:3px}.client-report-summary{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.client-report-summary>div{border-right:1px solid var(--line);padding:10px 16px}.client-report-summary>div:last-child{border-right:0}.client-report-summary span,.client-report-summary strong,.client-report-summary small{display:block}.client-report-summary span{color:var(--muted);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-medium)}.client-report-summary strong{font-variant-numeric:tabular-nums;margin:4px 0 1px;font-size:19px}.client-report-summary small{color:var(--muted);font-size:var(--sf-text-2xs)}.client-report-summary--personal{grid-template-columns:repeat(3,minmax(0,1fr))}.client-report-summary--personal>div:last-child{border-right:0}.client-report-breakdown{border-bottom:1px solid var(--line);padding:14px 20px}.client-report-breakdown>header,.client-report-detail>header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:11px;display:flex}.client-report-breakdown>header strong,.client-report-detail>header strong{font-size:var(--sf-text-xs)}.client-report-breakdown>header span,.client-report-detail>header span{color:var(--muted);font-size:var(--sf-text-2xs)}.client-report-breakdown>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.client-report-breakdown article p{font-size:var(--sf-text-2xs);justify-content:space-between;align-items:center;gap:8px;margin:0;display:flex}.client-report-breakdown article p span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-report-breakdown article>i{background:var(--raised);border-radius:3px;height:5px;margin-top:7px;display:block;overflow:hidden}.client-report-breakdown article>i b{border-radius:inherit;height:100%;display:block}.client-report-detail{padding-top:10px}.client-report-detail>header{padding:0 20px}.client-report-table-wrap{scrollbar-gutter:stable;max-height:620px;overflow:auto}.client-report table{border-collapse:collapse;width:100%;min-width:1320px}.client-report th{z-index:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line);height:38px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold);text-align:left;white-space:nowrap;padding:0 11px;position:sticky;top:0}.client-report td{border-bottom:1px solid var(--line);color:var(--text);font-size:var(--sf-text-caption);vertical-align:top;padding:10px 11px;line-height:1.45}.client-report tbody:last-of-type tr:last-child td{border-bottom:0}.report-entry-row:nth-child(2n) td{background:#fbfcfa}.report-entry-row td:first-child,.report-entry-row td:nth-child(5){font-variant-numeric:tabular-nums;white-space:nowrap}.report-entry-row td:nth-child(2),.report-entry-row td:nth-child(3){min-width:210px}.report-entry-row td:nth-child(4){min-width:150px;display:table-cell}.report-entry-row td:nth-child(4) .avatar{vertical-align:middle;margin-right:7px}.mobile-report-contributor{display:none}.report-task-continuation{color:var(--muted);padding-left:4px}.report-status{background:var(--raised);font-size:var(--sf-text-2xs);white-space:nowrap;border-radius:5px;padding:4px 6px;display:inline-block}.report-status--completed{color:var(--sf-success);background:#e7f7f0}.report-status--blocked{color:#a96600;background:#fff4df}.client-report>footer{border-top:1px solid var(--line);color:var(--muted);font-size:var(--sf-text-2xs);justify-content:space-between;align-items:center;padding:11px 20px;display:flex}.client-report-empty{min-height:210px;color:var(--muted);text-align:center;align-content:center;place-items:center;gap:7px;display:grid}.client-report-empty svg{width:25px}.client-report-empty strong{color:var(--text);font-size:var(--sf-text-ui)}.report-access{border:1px solid var(--line);background:var(--surface);border-radius:8px;justify-content:center;align-items:center;gap:13px;min-height:220px;padding:28px;display:flex}.report-access svg{width:26px;color:var(--sf-info)}.report-access strong,.report-access span{display:block}.report-access strong{font-size:var(--sf-text-sm)}.report-access span{color:var(--muted);font-size:var(--sf-text-caption);margin-top:4px}.personal-report-detail{padding-top:14px}.personal-report-detail>header{justify-content:space-between;align-items:center;gap:16px;padding:0 20px 11px;display:flex}.personal-report-detail>header strong{font-size:var(--sf-text-xs)}.personal-report-detail>header span{color:var(--muted);font-size:var(--sf-text-2xs)}.personal-report-detail>div{max-height:620px;overflow:auto}.personal-report-detail article{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 110px 90px;align-items:center;gap:14px;min-height:58px;padding:9px 20px;display:grid}.personal-report-detail article>span:first-child{min-width:0}.personal-report-detail article>span:first-child strong,.personal-report-detail article>span:first-child small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.personal-report-detail article>span:first-child strong{font-size:var(--sf-text-xs)}.personal-report-detail article>span:first-child small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:3px}.personal-report-detail article>b{text-align:right;font-size:var(--sf-text-xs);font-variant-numeric:tabular-nums}.settings-panel{padding-bottom:16px}.settings-panel label{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:68px;padding:12px 16px;display:flex}.settings-panel label strong,.settings-panel label small{display:block}.settings-panel label strong{font-size:var(--sf-text-xs)}.settings-panel label small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:4px}.settings-panel>button{margin:16px 16px 0}.settings-layout{gap:16px;display:grid}.account-settings-layout{gap:16px;max-width:760px;display:grid}.notification-preferences{max-width:760px}.notification-tone-picker{border-bottom:1px solid var(--line);padding:16px}.notification-tone-picker>div:first-child strong,.notification-tone-picker>div:first-child small{display:block}.notification-tone-picker>div:first-child strong{font-size:var(--sf-text-xs)}.notification-tone-picker>div:first-child small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:4px}.notification-tone-picker [role=radiogroup]{gap:8px;margin-top:12px;display:grid}.notification-tone-option{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) 40px;align-items:center;min-height:58px;display:grid}.notification-tone-option.selected{border-color:var(--sf-brand-500);background:var(--sf-brand-50)}.notification-tone-option>button{background:0 0;border:0;height:100%}.notification-tone-option>button[role=radio]{text-align:left;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:10px 12px;display:flex}.notification-tone-option>button[role=radio] span{min-width:0}.notification-tone-option>button[role=radio] strong,.notification-tone-option>button[role=radio] small{display:block}.notification-tone-option>button[role=radio] strong{font-size:var(--sf-text-xs)}.notification-tone-option>button[role=radio] small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:3px}.notification-tone-option>button[role=radio] svg{width:18px;color:var(--sf-brand-600)}.notification-tone-preview{width:40px;color:var(--text);place-items:center;display:grid;border-left:1px solid var(--line)!important}.notification-tone-preview svg{width:16px}.notification-tone-note{color:var(--muted);font-size:var(--sf-text-2xs);margin:12px 16px 0}.password-settings{overflow:hidden}.password-settings>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:62px;padding:12px 16px;display:flex}.password-settings>header strong{font-size:var(--sf-text-xs)}.password-settings>header span{color:var(--muted);font-size:var(--sf-text-2xs)}.password-settings form{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px;display:grid}.password-settings form>label{min-width:0;color:var(--muted);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);gap:6px;display:grid}.password-settings form>label:first-child{grid-column:1/-1}.settings-password-input{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:8px;height:42px;padding:0 10px;display:flex}.settings-password-input:focus-within{border-color:var(--sf-brand-500);box-shadow:0 0 0 3px var(--sf-brand-50)}.settings-password-input>svg,.settings-password-input button svg{width:16px;color:var(--muted)}.settings-password-input input{min-width:0;color:var(--text);font-size:var(--sf-text-ui);background:0 0;border:0;outline:0;flex:1}.settings-password-input button{background:0 0;border:0;place-items:center;width:30px;height:30px;padding:0;display:grid}.password-settings form>p{color:var(--muted);font-size:var(--sf-text-2xs);grid-column:1/-1;margin:-2px 0 0}.password-settings .auth-turnstile,.password-settings .alert{grid-column:1/-1}.password-settings form>.primary-button{width:max-content;min-width:148px}.team-page{gap:14px;display:grid}.team-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.team-metrics article{border:1px solid var(--line);border-top:3px solid var(--sf-brand-500);background:var(--surface);border-radius:8px;min-width:0;min-height:96px;padding:12px 16px}.team-metrics article[data-tone=info]{border-top-color:var(--sf-info)}.team-metrics article[data-tone=success]{border-top-color:var(--sf-success)}.team-metrics span,.team-metrics small{color:var(--muted);font-size:var(--sf-text-caption);display:block}.team-metrics strong{font-size:var(--sf-text-xl);font-weight:var(--sf-weight-semibold);font-variant-numeric:tabular-nums;margin:8px 0 2px;display:block}.team-directory{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.pending-invitations{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-bottom:12px;overflow:hidden}.pending-invitations>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:10px 16px;display:flex}.pending-invitations>header strong,.pending-invitations>header span{display:block}.pending-invitations>header strong{font-size:var(--sf-text-xs)}.pending-invitations>header span{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:3px}.pending-invitations>header b{min-width:24px;height:24px;color:var(--sf-info);background:var(--sf-info-soft);font-size:var(--sf-text-2xs);border-radius:12px;place-items:center;display:grid}.pending-invitation-row{border-bottom:1px solid var(--line);min-height:48px;font-size:var(--sf-text-caption);grid-template-columns:minmax(145px,.8fr) minmax(200px,1.1fr) 90px 170px 120px 76px;align-items:center;gap:14px;padding:6px 16px;display:grid}.pending-invitation-row:last-child{border-bottom:0}.pending-invitation-head{min-height:40px;color:var(--text);background:var(--raised);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold)}.pending-invitation-head>span:nth-child(3),.pending-invitation-head>span:nth-child(4),.pending-invitation-head>span:nth-child(5){text-align:center}.pending-invitation-head>span:last-child{text-align:right}.pending-invitation-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pending-invitation-row time{color:var(--muted);font-size:var(--sf-text-2xs);justify-self:center}.pending-invitation-actions{justify-self:end;align-items:center;gap:4px;display:flex}.team-directory>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:9px 14px;display:flex}.team-directory>header strong,.team-directory>header span{display:block}.team-directory>header strong{font-size:var(--sf-text-xs)}.team-directory>header span{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:3px}.team-table{border-bottom:1px solid var(--line);min-height:52px;font-size:var(--sf-text-xs);grid-template-columns:minmax(200px,.9fr) minmax(220px,1.1fr) 110px 100px 104px;align-items:center;gap:18px;padding:0 16px;display:grid}.team-table-head{min-height:38px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium)}.team-table-head>span:nth-child(3),.team-table-head>span:nth-child(4){text-align:center;justify-self:center}.team-table-head>span:last-child{text-align:right;justify-self:end}.team-table-row:hover{background:var(--raised)}.team-table-row--disabled .member-person{opacity:.58}.member-email{min-width:0;color:var(--muted);font-size:var(--sf-text-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-role{width:fit-content;color:var(--muted);background:var(--raised);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);text-align:center;border-radius:5px;justify-self:center;padding:5px 8px}.member-role--owner,.member-role--admin{color:var(--sf-info);background:var(--sf-info-soft)}.member-role--coordinator{color:var(--sf-success);background:var(--sf-success-soft)}.member-status{color:var(--sf-success);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);text-align:center;justify-self:center;align-items:center;gap:6px;display:inline-flex}.member-status i{background:currentColor;border-radius:50%;width:6px;height:6px}.member-status--disabled{color:var(--sf-danger)}.member-account-actions{justify-content:flex-end;align-items:center;gap:5px;min-width:0;display:flex}.member-action-icon{border:1px solid var(--line);width:32px;height:32px;color:var(--muted);background:var(--surface);cursor:pointer;border-radius:7px;place-items:center;padding:0;display:grid}.member-action-icon:hover{color:var(--sf-info);border-color:color-mix(in srgb, var(--sf-info) 30%, var(--line));background:var(--sf-info-soft)}.member-action-icon--danger:hover{color:var(--sf-danger);border-color:color-mix(in srgb, var(--sf-danger) 30%, var(--line));background:var(--sf-danger-soft)}.member-action-icon:disabled{color:color-mix(in srgb, var(--muted) 55%, transparent);background:var(--raised);cursor:not-allowed}.member-action-icon svg{width:14px;height:14px}.edit-member-form{grid-template-columns:1fr 1fr;gap:12px;display:grid}.edit-member-form label>span{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);margin-bottom:6px;display:block}.edit-member-form input{border:1px solid var(--line);width:100%;height:40px;color:var(--text);background:var(--raised);border-radius:7px;padding:0 11px}.edit-member-role{grid-column:1/-1;position:relative}.edit-member-role>span{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);margin-bottom:6px;display:block}.member-role-trigger{border:1px solid var(--line);width:100%;height:40px;color:var(--text);background:var(--raised);text-align:left;border-radius:7px;justify-content:space-between;align-items:center;padding:0 11px;display:flex}.member-role-trigger svg{width:16px}.member-role-trigger:disabled{color:var(--muted)}.member-role-options{z-index:12;border:1px solid var(--line);background:var(--surface);box-shadow:var(--sf-shadow-md);border-radius:7px;gap:2px;padding:5px;display:grid;position:absolute;top:68px;left:0;right:0}.member-role-options button{min-height:36px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:5px;justify-content:space-between;align-items:center;padding:0 9px;display:flex}.member-role-options button:hover,.member-role-options button.selected{background:var(--raised)}.member-role-options svg{width:16px;color:var(--sf-brand-600)}.edit-member-role small{color:var(--muted);margin-top:6px;font-size:9px;display:block}.edit-member-message{grid-column:1/-1}.plan-usage__grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.plan-usage__grid>div{border-right:1px solid var(--line);min-width:0;padding:16px}.plan-usage__grid>div:last-child{border-right:0}.plan-usage__grid span,.plan-usage__grid strong{display:block}.plan-usage__grid span{color:var(--muted);font-size:var(--sf-text-2xs);margin-bottom:6px}.plan-usage__grid strong{font-size:var(--sf-text-sm);text-transform:capitalize}.plan-status{color:var(--success)}.seat-usage{border-top:1px solid var(--line);padding:15px 16px}.seat-usage>div{color:var(--muted);font-size:var(--sf-text-2xs);justify-content:space-between;align-items:center;display:flex}.seat-usage>div strong{color:var(--text);font-variant-numeric:tabular-nums}.seat-usage>i{background:var(--raised);border-radius:4px;height:6px;margin-top:9px;display:block;overflow:hidden}.seat-usage>i>b{border-radius:inherit;background:var(--sf-success);height:100%;display:block}@media (max-width:640px){.password-settings>header{flex-direction:column;align-items:flex-start;gap:3px}.password-settings form{grid-template-columns:1fr}.password-settings form>label:first-child{grid-column:auto}.password-settings form>.primary-button{width:100%}.team-metrics{grid-template-columns:1fr}.pending-invitation-row{grid-template-columns:minmax(0,1fr) 32px}.pending-invitation-head,.pending-invitation-row>.member-email,.pending-invitation-row>.member-role,.pending-invitation-row>time{display:none}.plan-usage__grid{grid-template-columns:1fr}.plan-usage__grid>div{border-right:0;border-bottom:1px solid var(--line)}.plan-usage__grid>div:last-child{border-bottom:0}}.task-panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-top:12px;overflow:visible}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:9px 14px;display:flex}.panel-header>div:first-child strong,.panel-header>div:first-child span{display:block}.panel-header strong{font-size:var(--sf-text-xs)}.panel-header span{color:var(--muted);font-size:var(--sf-text-caption);margin-top:3px}.panel-actions{gap:8px;display:flex}.filter-select{height:var(--sf-control-md);padding:0 var(--sf-space-3);align-items:center;gap:var(--sf-space-2);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);color:var(--sf-text);background:var(--sf-surface);transition:background-color var(--sf-duration-fast) var(--sf-ease-standard), border-color var(--sf-duration-fast) var(--sf-ease-standard), box-shadow var(--sf-duration-fast) var(--sf-ease-standard);display:flex}.filter-select:hover{border-color:var(--sf-border-strong);background:var(--sf-surface-subtle)}.filter-select:focus-within,button.filter-select:focus-visible{border-color:var(--sf-focus);box-shadow:var(--sf-focus-ring);outline:none}.filter-select svg{width:13px;color:var(--muted)}.filter-select select{appearance:none;color:var(--text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);background:0 0;border:0;outline:none}.filter-select svg:last-child{width:11px}.task-filter-menu{position:relative}.task-filter-menu>.filter-select{min-width:154px;color:var(--text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);cursor:pointer;justify-content:flex-start}.task-filter-menu>.filter-select>span{text-align:left;white-space:nowrap;flex:1}.task-filter-menu>.filter-select>svg:last-child{transition:transform .16s}.task-filter-menu>.filter-select[aria-expanded=true]>svg:last-child{transform:rotate(180deg)}.task-filter-options{z-index:35;border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:2px;width:190px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 35px #181c2a29}.task-filter-options>button{min-height:38px;color:var(--text);font:inherit;font-size:var(--sf-text-caption);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;padding:0 10px;display:flex}.task-filter-options>button:hover{background:var(--raised)}.task-filter-options>button.selected{color:var(--sf-brand-700);background:var(--sf-info-soft);font-weight:var(--sf-weight-semibold)}.task-filter-options>button svg{width:15px;color:var(--sf-success)}.task-table-wrap{overflow:visible}.task-table{grid-template-columns:minmax(260px,1fr) 96px 140px 112px 78px 72px 100px 96px;align-items:center;gap:12px;padding:0 14px;display:grid}.task-table-head{min-height:40px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);border-bottom:1px solid var(--line)}.task-table-head>:nth-child(2){white-space:nowrap}.task-table-heading{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.task-table-heading svg{width:12px;height:12px}.task-actions-heading{text-align:right}.task-row{border-bottom:1px solid var(--line);min-height:54px;position:relative}.task-row:last-child{border-bottom:0}.task-row:hover{background:var(--raised)}.task-row--tracking{background:color-mix(in srgb, var(--sf-success-soft) 88%, var(--sf-success) 12%);box-shadow:inset 3px 0 0 var(--sf-success)}.task-row--tracking:hover{background:color-mix(in srgb, var(--sf-success-soft) 82%, var(--sf-success) 18%)}.task-title{text-align:left;background:0 0;border:0;min-width:0;padding:0}.task-title strong,.task-title span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.task-title strong{font-size:var(--sf-text-ui);font-weight:var(--sf-weight-semibold)}.task-title span{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:4px}.quiet-cell{color:var(--muted);font-size:var(--sf-text-xs);white-space:nowrap}.quiet-cell.urgent{color:var(--coral)}.assignee{min-width:0;color:var(--muted);font-size:var(--sf-text-xs);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;display:flex;overflow:hidden}.assignee .avatar{flex:none}.assignee-name{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.priority{font-size:var(--sf-text-xs);color:var(--muted)}.priority.high{color:var(--coral)}.priority.low{color:var(--green)}.status{border-radius:var(--sf-radius-sm);width:fit-content;min-width:82px;color:var(--sf-warning);background:var(--sf-warning-soft);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold);text-align:center;white-space:nowrap;padding:5px 8px;line-height:1.2}.status.in-progress{color:var(--sf-info);background:var(--sf-info-soft)}.status.in-review{color:var(--sf-review);background:var(--sf-review-soft)}.status.blocked{color:var(--sf-danger);background:var(--sf-danger-soft)}.status.completed{color:var(--sf-success);background:var(--sf-success-soft)}.status.not-started{color:var(--sf-neutral-status);background:var(--sf-neutral-status-soft)}.status-menu-wrap{width:100%;position:relative}.status-menu-wrap.open{z-index:30}.status-trigger{cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:5px;width:100%;min-width:0;font-family:inherit;display:flex}.status-trigger svg{flex:none;width:12px}.status-menu{z-index:40;border:1px solid var(--line);background:var(--surface);border-radius:8px;width:158px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 30px #191e2d2e}.status-menu-option{border:0;border-bottom:2px solid var(--surface);width:100%;min-height:34px;color:var(--sf-warning);background:var(--sf-warning-soft);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;padding:0 10px;display:flex}.status-menu-option:first-child{border-radius:5px 5px 0 0}.status-menu-option:last-child{border-bottom:0;border-radius:0 0 5px 5px}.status-menu-option.in-progress{color:var(--sf-info);background:var(--sf-info-soft)}.status-menu-option.in-review{color:var(--sf-review);background:var(--sf-review-soft)}.status-menu-option.blocked{color:var(--sf-danger);background:var(--sf-danger-soft)}.status-menu-option.completed{color:var(--sf-success);background:var(--sf-success-soft)}.status-menu-option.not-started{color:var(--sf-neutral-status);background:var(--sf-neutral-status-soft)}.status-menu-option:hover{filter:brightness(.97)}.status-menu-option svg{width:14px}.task-row-actions{justify-content:flex-end;align-items:center;gap:4px;display:flex}.task-row-action{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:0;display:inline-grid}.task-row-action:hover{border-color:var(--line);color:var(--sf-brand-700);background:var(--surface)}.task-row-action:focus-visible{outline:2px solid var(--sf-info);outline-offset:1px}.task-row-action svg{width:14px;height:14px}.task-row-action--danger:hover{color:var(--sf-danger);background:var(--sf-danger-soft)}.time-cell{width:fit-content;position:relative}.timer-button{border:1px solid var(--line);background:var(--raised);min-width:88px;min-height:31px;color:var(--muted);font-size:var(--sf-text-xs);font-variant-numeric:tabular-nums;border-radius:7px;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.timer-button svg{width:13px}.timer-button.running{width:40px;min-width:40px;color:var(--sf-success);border-color:color-mix(in srgb, var(--sf-success) 52%, var(--line));background:color-mix(in srgb, var(--sf-success-soft) 80%, var(--sf-success) 20%);justify-content:center}.timer-indicator{cursor:default}.session-popover{z-index:20;border:1px solid var(--line);background:var(--surface);border-radius:8px;width:250px;padding:10px;display:none;position:absolute;top:35px;right:0;box-shadow:0 12px 30px #191e2d26}.time-cell:hover .session-popover,.time-cell:focus-within .session-popover{display:block}.session-popover header{border-bottom:1px solid var(--line);font-size:var(--sf-text-caption);justify-content:space-between;padding-bottom:8px;display:flex}.session-popover header span{color:var(--muted)}.session-line{color:var(--muted);font-size:var(--sf-text-2xs);justify-content:space-between;gap:10px;padding-top:8px;display:flex}.session-line strong{color:var(--text);font-variant-numeric:tabular-nums}.session-popover p{color:var(--muted);font-size:var(--sf-text-2xs);margin:10px 0 2px}.board{grid-template-columns:repeat(5,minmax(230px,1fr));align-items:start;gap:10px;padding:12px;display:grid;overflow-x:auto}.board-column{border:1px solid var(--line);background:var(--raised);border-radius:7px;min-height:360px}.board-column>header{border-bottom:1px solid var(--line);min-height:42px;color:var(--text);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);justify-content:space-between;align-items:center;padding:0 11px;display:flex}.board-column>header small{min-width:20px;height:20px;color:var(--muted);background:var(--surface);border-radius:10px;place-items:center;padding:0 6px;font-size:9px;display:grid}.board-card-list{gap:8px;padding:8px;display:grid}.board-card{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:7px;width:100%;padding:11px;box-shadow:0 1px 2px #14192808}.board-card:hover{border-color:color-mix(in srgb, var(--sf-brand-500) 35%, var(--line));box-shadow:0 4px 12px #14192812}.board-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.board-project{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;font-size:9px;display:flex;overflow:hidden}.board-project i{border-radius:50%;flex:none;width:6px;height:6px}.board-card>strong{font-size:var(--sf-text-caption);margin-top:10px;line-height:1.4;display:block}.board-card>p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:5px 0 0;font-size:9px;line-height:1.45;display:-webkit-box;overflow:hidden}.board-card-meta{color:var(--muted);align-items:center;gap:12px;margin-top:11px;display:flex}.board-card-meta span{align-items:center;gap:4px;font-size:9px;display:flex}.board-card-meta svg{width:11px;height:11px}.board-card footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;margin-top:11px;padding-top:9px;font-size:9px;display:flex}.board-assignee{color:var(--text);align-items:center;gap:5px;display:flex}.board-empty{min-height:70px;color:var(--muted);font-size:var(--sf-text-2xs);place-items:center;display:grid}.empty-state{color:var(--muted);justify-items:center;padding:55px 20px;display:grid}.empty-state svg{width:25px}.empty-state strong{color:var(--text);font-size:var(--sf-text-xs);margin-top:10px}.empty-state p{font-size:var(--sf-text-caption);margin:4px 0}.modal-backdrop,.drawer-backdrop{z-index:var(--sf-z-overlay);background:var(--sf-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.modal-backdrop{place-items:center;padding:18px;display:grid}.modal{border:1px solid var(--sf-border);border-radius:var(--sf-radius-lg);background:var(--sf-surface);width:min(520px,100%);box-shadow:var(--sf-shadow-lg);padding:18px}.modal>header,.modal>footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.modal>header{margin-bottom:18px}.modal>header strong,.modal>header span{display:block}.modal>header span{color:var(--muted);font-size:var(--sf-text-caption);margin-top:4px}.modal label,.drawer-fields label{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);gap:7px;display:grid}.project-field-label{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.project-field-label small{color:var(--faint);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-regular)}.modal input,.modal select,.drawer-fields input,.drawer-fields select{width:100%;height:var(--sf-control-md);padding:0 var(--sf-space-3);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);color:var(--sf-text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);transition:border-color var(--sf-duration-fast) var(--sf-ease-standard), box-shadow var(--sf-duration-fast) var(--sf-ease-standard)}.modal input:focus,.modal select:focus,.drawer-fields input:focus,.drawer-fields select:focus{border-color:var(--sf-focus);box-shadow:var(--sf-focus-ring);outline:none}.modal textarea{font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular)}.form-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:13px;display:grid}.project-picker{display:block;position:relative}.project-picker-trigger{width:100%;height:var(--sf-control-md);padding:0 var(--sf-space-3);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);color:var(--sf-text);background:var(--sf-surface);font:inherit;font-size:var(--sf-text-sm);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;display:flex}.project-picker-trigger:hover{border-color:var(--sf-border-strong);background:var(--sf-surface-subtle)}.project-picker-trigger:focus-visible{border-color:var(--sf-focus);box-shadow:var(--sf-focus-ring);outline:none}.project-picker-trigger svg{width:16px;color:var(--muted);flex:none;transition:transform .16s}.project-picker-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.project-picker-dropdown{z-index:var(--sf-z-menu);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);box-shadow:var(--sf-shadow-md);padding:7px;display:block;position:absolute;top:calc(100% + 6px);left:0;right:0}.project-picker-search{height:var(--sf-control-md);border:1px solid var(--line);border-radius:7px;align-items:center;gap:7px;padding:0 9px;display:flex}.project-picker-search:focus-within{border-color:var(--sf-brand-500);outline:2px solid color-mix(in srgb, var(--sf-brand-500) 20%, transparent)}.project-picker-search svg{width:14px;color:var(--muted);flex:none}.project-picker-search input{background:0 0;border:0;border-radius:0;outline:0;flex:1;min-width:0;height:auto;padding:0}.project-picker-options{max-height:210px;margin-top:6px;display:block;overflow-y:auto}.project-picker-options>button{width:100%;min-height:42px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:8px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:7px 9px;display:grid}.project-picker-options>button:hover,.project-picker-options>button.selected{background:var(--raised)}.project-picker-options>button>i{border-radius:3px;width:8px;height:24px}.project-picker-options>button strong,.project-picker-options>button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-picker-options>button strong{font-size:var(--sf-text-xs)}.project-picker-options>button small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:2px}.project-picker-options>button>svg{width:15px;color:var(--sf-success)}.project-picker-empty{color:var(--muted);font-size:var(--sf-text-caption);text-align:center;padding:13px 9px;display:block}.modal>footer{justify-content:flex-end;margin-top:22px}.project-description-field,.color-field{margin-top:13px}.modal .color-field input{cursor:pointer;width:54px;padding:4px}.drawer-backdrop{place-items:center;padding:24px;display:grid}.task-drawer{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:min(780px,100vw - 48px);max-height:min(860px,100vh - 48px);padding:22px 24px 24px;overflow-y:auto;box-shadow:0 28px 80px #1418233d}.task-drawer>header{z-index:12;border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;min-height:50px;margin:-22px -24px 0;padding:0 24px;display:flex;position:sticky;top:-22px}.eyebrow{color:var(--violet);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold)}.drawer-title{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text);font-size:21px;font-weight:var(--sf-weight-semibold);background:0 0;margin:15px 0 13px;padding:0 0 9px}.drawer-description-wrap{margin:-3px 0 13px;position:relative}.drawer-description{border:1px solid var(--line);border-radius:var(--sf-radius-md);width:100%;min-height:62px;color:var(--text);background:var(--raised);font-size:var(--sf-text-xs);resize:vertical;margin:0;padding:10px 38px 10px 10px;line-height:1.5}.drawer-description:focus{border-color:var(--sf-focus);box-shadow:var(--sf-focus-ring);background:var(--surface);outline:none}.drawer-description-wrap>button{width:28px;height:28px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:6px;right:6px}.drawer-description-wrap>button:hover{color:var(--coral)}.drawer-description-wrap>button svg{width:14px}.drawer-description-preview{border:1px solid var(--line);border-radius:var(--sf-radius-md);background:var(--raised);min-height:62px;margin:-3px 0 13px;padding:10px 76px 10px 10px;position:relative}.drawer-description-preview p{color:var(--text);font-size:var(--sf-text-xs);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.5}.drawer-description-preview a,.comment-item a{color:var(--sf-brand-600);font-weight:var(--sf-weight-medium);text-underline-offset:2px;text-decoration:underline}.drawer-description-preview a:hover,.comment-item a:hover{color:var(--sf-brand-700)}.drawer-description-preview>span{gap:2px;display:flex;position:absolute;top:6px;right:6px}.drawer-description-preview>span button{border-radius:var(--sf-radius-sm);width:28px;height:28px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;display:grid}.drawer-description-preview>span button:hover{color:var(--violet);background:var(--violet-soft)}.drawer-description-preview>span button:last-child:hover{color:var(--coral);background:var(--coral-soft)}.drawer-description-preview>span svg{width:14px}.add-description-button{min-height:32px;color:var(--violet);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);background:0 0;border:0;align-items:center;gap:6px;margin:-4px 0 12px;padding:0;display:inline-flex}.add-description-button svg{width:13px}.drawer-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.drawer-section{border-top:1px solid var(--line);margin-top:17px;padding-top:14px}.drawer-section>header{font-size:var(--sf-text-xs);justify-content:space-between;margin-bottom:12px;display:flex}.drawer-section>header span{color:var(--muted)}.work-breakdown>header{align-items:flex-start}.work-breakdown>header div strong,.work-breakdown>header div small{display:block}.work-breakdown>header div small{color:var(--muted);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-regular);margin-top:3px}.work-breakdown>header .work-breakdown-actions{align-items:center;gap:10px;display:flex}.work-breakdown>header .work-breakdown-actions span{white-space:nowrap}.work-progress{background:var(--raised);border-radius:4px;height:4px;margin:-2px 0 11px;overflow:hidden}.work-progress i{border-radius:inherit;background:var(--green);height:100%;transition:width .2s;display:block}.subtask-list{gap:0;display:grid}.subtask-item{border-bottom:1px solid var(--line);background:0 0;grid-template-columns:24px minmax(0,1fr) minmax(0,1fr);align-items:center;gap:8px;min-height:44px;padding:5px 7px;display:grid}.subtask-item:first-child{border-top:1px solid var(--line)}.subtask-item.completed .subtask-copy>strong{color:var(--muted);text-decoration:line-through}.subtask-check{width:24px;height:24px;color:var(--green);background:0 0;border:0;place-items:center;padding:0;display:grid}.subtask-check>span{border:1px solid var(--line-strong);background:var(--surface);border-radius:50%;width:16px;height:16px}.subtask-check svg{width:17px}.subtask-check:disabled{cursor:default;opacity:.55}.subtask-copy{align-items:center;gap:7px;min-width:0;display:flex}.subtask-pointer{width:20px;height:20px;color:var(--violet);background:var(--violet-soft);border-radius:5px;flex:none;place-items:center;display:inline-grid}.subtask-pointer svg{width:12px;height:12px}.subtask-copy>strong{font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.subtask-copy>span:not(.subtask-pointer){min-height:22px;color:var(--muted);font-size:var(--sf-text-2xs);align-items:center;gap:6px;margin-top:4px;display:flex}.subtask-copy .avatar{place-items:center;width:22px;height:22px;font-size:8px;font-style:normal;display:inline-grid}.subtask-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:4px;min-width:0;display:flex}.subtask-actions button{width:30px;height:30px;color:var(--muted);font-size:var(--sf-text-2xs);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:0;display:inline-flex}.subtask-actions .subtask-timer{border-color:var(--line);background:var(--surface);width:auto;min-width:42px;padding:0 7px}.subtask-actions button:hover{color:var(--violet);border-color:color-mix(in srgb, var(--violet) 35%, var(--line))}.subtask-actions button svg{width:13px}.subtask-actions button:disabled{cursor:not-allowed;opacity:var(--sf-disabled-opacity)}.subtask-actions .subtask-assign.assigned{border-radius:15px;width:auto;min-width:30px;padding:0 4px}.subtask-actions .subtask-assign .avatar{width:23px;height:23px;font-size:8px}.subtask-date-control{width:30px;height:30px;color:var(--muted);cursor:pointer;border:1px solid #0000;border-radius:6px;place-items:center;display:inline-grid;position:relative}.subtask-date-control:hover{color:var(--violet);border-color:color-mix(in srgb, var(--violet) 35%, var(--line))}.subtask-date-control.has-date{color:var(--green);background:var(--green-soft)}.subtask-date-control svg{width:14px}.subtask-date-control input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.subtask-actions .subtask-timer.running{color:var(--green);border-color:color-mix(in srgb, var(--green) 35%, var(--line));background:var(--green-soft)}.subtask-actions .subtask-timer.stop-control{width:32px;min-width:32px;color:var(--sf-danger);border-color:color-mix(in srgb, var(--sf-danger) 38%, var(--line));background:var(--sf-danger-soft);justify-content:center}.subtask-actions .subtask-delete:hover{color:var(--coral)}.subtask-done{color:var(--green);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold)}.subtask-assignment-panel{border-top:1px solid var(--line);grid-column:2/-1;padding-top:9px;position:relative}.subtask-assignment-panel>label{border:1px solid var(--line);background:var(--surface);border-radius:6px;align-items:center;gap:7px;height:34px;padding:0 9px;display:flex}.subtask-assignment-panel>label svg{width:13px;color:var(--muted)}.subtask-assignment-panel>label input{min-width:0;height:100%;font-size:var(--sf-text-caption);background:0 0;border:0;outline:0;flex:1}.subtask-assignment-panel>div{border:1px solid var(--line);background:var(--surface);border-radius:6px;max-height:150px;margin-top:5px;padding:4px;overflow-y:auto}.subtask-assignment-panel>div>button{width:100%;min-height:40px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:26px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:5px 7px;display:grid}.subtask-assignment-panel>div>button:hover,.subtask-assignment-panel>div>button.selected{background:var(--raised)}.subtask-assignment-panel>div>button strong,.subtask-assignment-panel>div>button small{display:block}.subtask-assignment-panel>div>button strong{font-size:var(--sf-text-2xs)}.subtask-assignment-panel>div>button small{color:var(--muted);margin-top:2px;font-size:9px}.subtask-assignment-panel>div>button>svg{width:13px;color:var(--green)}.subtask-assignment-panel>div>p{color:var(--muted);font-size:var(--sf-text-2xs);text-align:center;margin:0;padding:10px}.subtask-assignment-panel>footer{border-top:1px solid var(--sf-border);min-height:38px;color:var(--sf-text-secondary);font-size:var(--sf-text-caption);justify-content:space-between;align-items:center;gap:8px;padding:5px 7px;display:flex}.subtask-assignment-panel>footer button{border:1px solid var(--sf-brand-600);border-radius:var(--sf-radius-sm);color:#fff;background:var(--sf-brand-600);min-height:28px;font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);cursor:pointer;padding:0 10px}.subtask-avatar-stack{align-items:center;padding-left:4px;display:flex}.subtask-avatar-stack .avatar{border:2px solid var(--surface);margin-left:-4px}.subtask-avatar-stack b{border:2px solid var(--surface);min-width:22px;height:22px;color:var(--muted);background:var(--raised);border-radius:50%;place-items:center;margin-left:-4px;font-size:7px;display:grid}.subtask-total{border:1px solid var(--line);height:30px;color:var(--muted);background:var(--surface);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);border-radius:6px;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.subtask-total svg{width:13px}.subtask-manual-time{border-top:1px solid var(--line);grid-column:2/-1;grid-template-columns:1.3fr 1fr .55fr .65fr auto;align-items:end;gap:7px;padding-top:9px;display:grid}.subtask-manual-time label,.subtask-composer label{color:var(--muted);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-medium);gap:5px;display:grid}.subtask-manual-time input,.subtask-manual-time select{border:1px solid var(--line);width:100%;min-width:0;height:34px;color:var(--text);background:var(--surface);font-size:var(--sf-text-xs);border-radius:6px;padding:0 8px}.subtask-manual-time button{color:#fff;background:var(--violet);height:34px;font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);border:0;border-radius:6px;padding:0 10px}.add-contributor-button{border:1px solid color-mix(in srgb, var(--violet) 28%, var(--line));min-height:30px;color:var(--violet);background:var(--violet-soft);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.add-contributor-button:hover{background:var(--violet-soft)}.add-contributor-button svg{width:14px}.subtask-composer{border:1px solid var(--line);background:var(--raised);border-radius:7px;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;padding:11px;display:grid}.subtask-composer input,.subtask-composer select{border:1px solid var(--line);width:100%;min-width:0;height:36px;color:var(--text);background:var(--surface);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-regular);border-radius:6px;padding:0 9px}.subtask-member-picker{position:relative}.subtask-member-picker>svg{z-index:1;width:14px;color:var(--muted);position:absolute;top:10px;left:9px}.subtask-member-picker>input{padding:0 30px 0 29px}.subtask-member-picker>input:disabled{color:var(--sf-text-tertiary);background:var(--sf-surface-muted);cursor:not-allowed;opacity:1}.subtask-member-picker>.picker-selected-icon{color:var(--green);left:auto;right:9px}.subtask-member-picker>.picker-count{min-width:20px;height:20px;color:var(--violet);background:var(--violet-soft);font-size:9px;font-weight:var(--sf-weight-bold);border-radius:10px;place-items:center;padding:0 5px;display:grid;position:absolute;top:8px;right:8px}.subtask-member-options{z-index:var(--sf-z-menu);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);box-shadow:var(--sf-shadow-md);position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:hidden}.subtask-member-options-list{max-height:190px;padding:var(--sf-space-1);overflow-y:auto}.subtask-member-options-list>button{border-radius:var(--sf-radius-sm);width:100%;min-height:42px;color:var(--sf-text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:8px;padding:6px 7px;display:grid}.subtask-member-options-list>button:hover,.subtask-member-options-list>button.selected{background:var(--sf-surface-subtle)}.subtask-member-options-list>button>span:nth-child(2) strong,.subtask-member-options-list>button>span:nth-child(2) small{display:block}.subtask-member-options-list>button>span:nth-child(2) strong{font-size:var(--sf-text-caption)}.subtask-member-options-list>button>span:nth-child(2) small{color:var(--sf-text-tertiary);font-size:var(--sf-text-2xs);margin-top:2px}.subtask-member-options-list>button>svg{width:14px;color:var(--sf-success)}.subtask-member-options-list>p{color:var(--sf-text-secondary);font-size:var(--sf-text-caption);text-align:center;margin:0;padding:12px 8px}.task-assignee-picker{position:relative}.task-assignee-picker>svg{z-index:1;width:14px;color:var(--sf-text-tertiary);pointer-events:none;position:absolute;top:13px;left:11px}.task-assignee-picker>input{padding-left:34px}.task-assignee-options{z-index:var(--sf-z-menu);max-height:220px;padding:var(--sf-space-1);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);box-shadow:var(--sf-shadow-md);position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto}.task-assignee-options button{border-radius:var(--sf-radius-sm);align-items:center;gap:var(--sf-space-2);width:100%;min-height:42px;color:var(--sf-text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:28px minmax(0,1fr) 18px;padding:6px 8px;display:grid}.task-assignee-options button:hover,.task-assignee-options button.selected{background:var(--sf-surface-subtle)}.task-assignee-options button>span:nth-child(2) strong,.task-assignee-options button>span:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.task-assignee-options button>span:nth-child(2) strong{font-size:var(--sf-text-caption)}.task-assignee-options button>span:nth-child(2) small{color:var(--sf-text-tertiary);font-size:var(--sf-text-2xs);margin-top:2px}.task-assignee-options button>svg{width:14px;color:var(--sf-success)}.task-assignee-options p{padding:var(--sf-space-3) var(--sf-space-2);color:var(--sf-text-secondary);font-size:var(--sf-text-caption);text-align:center;margin:0}.subtask-selected-chips{flex-wrap:wrap;align-items:center;gap:5px;min-height:27px;display:flex}.subtask-selected-chips button{border:1px solid var(--sf-brand-200);max-width:170px;min-height:27px;color:var(--sf-brand-700);background:var(--sf-brand-50);font-size:var(--sf-text-caption);text-overflow:ellipsis;white-space:nowrap;border-radius:14px;align-items:center;gap:5px;padding:2px 6px 2px 3px;display:inline-flex;overflow:hidden}.subtask-selected-chips .avatar{flex:none;width:21px;height:21px;font-size:7px}.subtask-selected-chips button svg{flex:none;width:11px}.subtask-composer footer{grid-column:1/-1;justify-content:flex-end;gap:7px;display:flex}.subtask-composer footer button{border:1px solid var(--line);background:var(--surface);min-height:34px;font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);border-radius:6px;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.subtask-composer footer .primary-button{color:#fff;background:var(--violet);border-color:#0000}.subtask-composer footer button:disabled{opacity:var(--sf-disabled-opacity)}.subtask-composer footer button svg{width:13px}.project-edit-footer>span{flex:1}.danger-text-button{min-height:36px;color:var(--sf-danger);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);background:0 0;border:0;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.danger-text-button svg{width:14px}.project-delete-form{gap:14px;display:grid}.project-delete-form>label{color:var(--sf-text-secondary);font-size:var(--sf-text-sm);gap:7px;display:grid}.project-delete-form>label strong{color:var(--sf-text-primary)}.project-delete-form input{border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);width:100%;min-height:42px;color:var(--sf-text-primary);background:var(--sf-surface);font:inherit;padding:0 11px}.project-delete-form input:focus{border-color:var(--sf-danger);outline:2px solid color-mix(in srgb, var(--sf-danger) 16%, transparent);outline-offset:1px}.role-permissions-page{gap:16px;display:grid}.role-permissions-toolbar{border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:8px;display:flex}.role-tabs{border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface-subtle);gap:2px;padding:3px;display:flex}.role-tabs button{border-radius:var(--sf-radius-sm);min-height:34px;color:var(--sf-text-secondary);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold);background:0 0;border:1px solid #0000;padding:0 14px}.role-tabs button.active{border-color:var(--sf-brand-300);color:var(--sf-brand-700);background:var(--sf-brand-50);box-shadow:inset 0 -2px 0 var(--sf-brand-500), var(--sf-shadow-xs)}.role-permission-actions{gap:8px;display:flex}.permission-locks{border:1px solid var(--sf-border);border-left:3px solid var(--sf-brand-500);border-radius:var(--sf-radius-md);background:var(--sf-surface)}.permission-locks>header{border-bottom:1px solid var(--sf-border);align-items:center;gap:10px;padding:13px 15px;display:flex}.permission-locks>header>svg{width:20px;color:var(--sf-brand-600)}.permission-locks header strong,.permission-locks header span{display:block}.permission-locks header strong{font-size:var(--sf-text-sm)}.permission-locks header span{color:var(--sf-text-secondary);font-size:var(--sf-text-xs);margin-top:2px}.permission-locks>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px 15px;display:grid}.permission-locks>div span{color:var(--sf-text-secondary);font-size:var(--sf-text-xs);align-items:center;gap:7px;display:flex}.permission-locks>div svg{flex:none;width:14px}.permission-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.permission-group{border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);overflow:hidden}.permission-group>header{border-bottom:1px solid var(--sf-border);justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:10px 14px;display:flex}.permission-group h2{font-size:var(--sf-text-sm);margin:0}.permission-group>header span{color:var(--sf-text-tertiary);font-size:var(--sf-text-2xs)}.permission-row{border-top:1px solid var(--sf-border);cursor:pointer;justify-content:space-between;align-items:center;gap:16px;min-height:64px;padding:10px 14px;display:flex;position:relative}.permission-group>header+.permission-row{border-top:0}.permission-row>span{min-width:0}.permission-row strong,.permission-row small{display:block}.permission-row strong{font-size:var(--sf-text-xs)}.permission-row small{color:var(--sf-text-secondary);font-size:var(--sf-text-2xs);margin-top:3px;line-height:1.45}.permission-row input{opacity:0;pointer-events:none;position:absolute}.permission-row>i{background:var(--sf-surface-muted);width:34px;height:20px;transition:background var(--sf-duration-fast), justify-content var(--sf-duration-fast);border-radius:10px;flex:none;justify-content:flex-start;padding:2px;display:flex}.permission-row>i:before{content:"";background:var(--sf-surface);width:16px;height:16px;box-shadow:var(--sf-shadow-xs);border-radius:50%}.permission-row>i svg{display:none}.permission-row input:checked+i{background:var(--sf-success);justify-content:flex-end}.permission-row:focus-within{outline:2px solid var(--sf-focus);outline-offset:-2px}.delete-dialog-copy{color:var(--sf-text-secondary);font-size:var(--sf-text-sm);margin:0}.modal>.sf-field{margin-top:13px}.wide-timer{border:1px solid var(--line);min-height:32px;color:var(--violet);background:var(--violet-soft);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:flex}.wide-timer svg{width:13px}.wide-timer.running{color:var(--coral);background:var(--coral-soft)}.time-fold>header{align-items:center;gap:12px}.time-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.manual-time-button{border:1px solid var(--line);min-height:32px;color:var(--text);background:var(--surface);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);white-space:nowrap;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:flex}.manual-time-button svg{width:13px}.manual-time-button:disabled{cursor:not-allowed;color:var(--muted);background:var(--raised);opacity:var(--sf-disabled-opacity)}.time-session-count{white-space:nowrap;flex:none}.manual-session-form{border:1px solid var(--line);background:var(--raised);border-radius:8px;grid-template-columns:minmax(150px,1.4fr) minmax(90px,.7fr) minmax(100px,.8fr) 112px;align-items:end;gap:8px;margin-top:8px;padding:10px;display:grid}.manual-session-form>label{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);gap:6px;display:grid}.manual-session-form input,.manual-session-form select{border:1px solid var(--line);background:var(--surface);height:34px;color:var(--text);font-size:var(--sf-text-ui);font-weight:var(--sf-weight-regular);border-radius:6px;padding:0 8px}.manual-time-fields{gap:6px;display:grid}.manual-time-row{grid-template-columns:36px 1fr 1fr 1fr;align-items:center;gap:6px;display:grid}.manual-time-row>span{color:var(--muted);font-size:var(--sf-text-2xs)}.manual-session-form>small{color:var(--muted);margin:9px 0;font-size:9px;display:block}.manual-session-form .primary-button{justify-content:center;width:100%;min-height:34px;padding-inline:10px}.manual-session-message{color:var(--green);font-size:var(--sf-text-2xs);margin:9px 0 0}.task-fold>header div strong,.task-fold>header div small{display:block}.task-fold>header div small{color:var(--muted);font-size:9px;font-weight:var(--sf-weight-regular);margin-top:3px}.fold-trigger{width:100%;min-height:34px;color:var(--violet);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);background:0 0;border:0;justify-content:space-between;align-items:center;margin-top:7px;padding:0;display:flex}.fold-trigger svg{width:14px;transition:transform .16s}.fold-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.session-history{margin-top:2px}.session-history>div{border-bottom:1px solid var(--line);min-height:36px;color:var(--muted);font-size:var(--sf-text-2xs);justify-content:space-between;align-items:center;display:flex}.session-history>div>span{min-width:0;padding:7px 12px 7px 0}.session-history>div>span strong,.session-history>div>span small{display:block}.session-history>div>span strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-history>div>span small{color:var(--muted);margin-top:2px;font-size:9px}.session-history>div>b{color:var(--text);font-variant-numeric:tabular-nums;flex:none}.activity-list{gap:0;display:grid}.activity-item{border-bottom:1px solid var(--line);gap:9px;min-height:58px;padding:8px 0;display:flex;position:relative}.activity-item:last-child{border-bottom:0}.activity-item p,.activity-item p span,.activity-item small{margin:0;display:block}.activity-item p{min-width:0;font-size:var(--sf-text-caption);line-height:1.4}.activity-item p span{color:var(--muted);margin-top:3px}.activity-item small{color:var(--muted);margin-top:4px;font-size:9px}.empty-activity{color:var(--muted);font-size:var(--sf-text-2xs);margin:0}.fold-heading{width:100%;min-height:42px;color:var(--text);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:0;display:flex}.fold-heading>span:first-child strong,.fold-heading>span:first-child small{display:block}.fold-heading>span:first-child strong{font-size:var(--sf-text-xs)}.fold-heading>span:first-child small{color:var(--muted);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-regular);margin-top:3px}.fold-heading>span:last-child{color:var(--violet);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.fold-heading>span:last-child svg{width:14px;transition:transform .16s}.fold-heading[aria-expanded=true]>span:last-child svg{transform:rotate(180deg)}.conversation-panel{padding-top:5px}.show-earlier-comments{min-height:30px;color:var(--violet);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold);background:0 0;border:0;margin:0 0 3px 39px;padding:0}.comment-list{display:grid}.comment-item{align-items:flex-start;gap:10px;display:flex;position:relative}.comment-item:not(:last-child):after{content:"";border-bottom:1px solid var(--line);position:absolute;inset:34px 0 0 39px}.comment-item>.avatar{flex:none;margin-top:11px}.comment-item>div{flex:1;min-width:0;padding:11px 0 13px}.comment-item header{justify-content:space-between;align-items:center;gap:8px;display:flex}.comment-item header strong{font-size:var(--sf-text-ui)}.comment-item time{color:var(--muted);font-size:var(--sf-text-caption)}.comment-item p{font-size:var(--sf-text-sm);white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0;line-height:1.55}.comment-item mark{color:var(--violet);background:var(--violet-soft);border-radius:3px;padding:1px 3px}.conversation-empty{color:var(--muted);font-size:var(--sf-text-xs);margin:4px 0 8px 39px}.open-comment-composer{border:1px solid var(--line);width:calc(100% - 39px);min-height:42px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-ui);text-align:left;border-radius:7px;align-items:center;gap:9px;margin:8px 0 0 39px;padding:0 11px;display:flex}.open-comment-composer:hover{border-color:var(--line-strong);background:var(--surface)}.comment-composer{align-items:flex-start;gap:9px;margin-top:12px;display:flex}.comment-composer>div{flex:1;min-width:0;position:relative}.comment-composer textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:68px;color:var(--text);background:var(--surface);font:inherit;font-size:var(--sf-text-sm);border-radius:8px;padding:9px 10px;line-height:1.5}.comment-composer footer{justify-content:flex-end;gap:7px;margin-top:7px;display:flex}.comment-composer footer>button{border:1px solid var(--line);background:var(--surface);min-height:32px;font-size:var(--sf-text-xs);font-weight:var(--sf-weight-semibold);border-radius:6px;padding:0 10px}.comment-composer footer>.comment-submit{color:#fff;background:var(--violet);border-color:#0000;margin:0}.comment-submit{min-height:32px;display:flex}.comment-submit:disabled{opacity:.45;cursor:not-allowed}.comment-error{color:var(--coral);font-size:var(--sf-text-caption);margin:5px 0 0}.mention-menu{z-index:20;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:5px;position:absolute;bottom:40px;left:0;right:0;box-shadow:0 10px 28px #191e2d29}.mention-menu button{text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;width:100%;min-height:42px;padding:5px 7px;display:flex}.mention-menu button:hover{background:var(--raised)}.mention-menu button strong,.mention-menu button small{display:block}.mention-menu button strong{font-size:var(--sf-text-xs)}.mention-menu button small{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:2px}.activity-fold{padding-top:10px}.activity-toggle{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:40px;padding:0;display:flex}.activity-toggle span strong,.activity-toggle span small{display:block}.activity-toggle span strong{font-size:var(--sf-text-xs)}.activity-toggle span small{color:var(--muted);margin-top:3px;font-size:9px}.activity-toggle>span:last-child{color:var(--violet);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-semibold);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.activity-toggle>span:last-child svg{width:14px;transition:transform .16s}.activity-toggle[aria-expanded=true]>span:last-child svg{transform:rotate(180deg)}.activity-fold .activity-list{margin-top:6px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.team-modal{border:1px solid var(--sf-border);border-radius:var(--sf-radius-lg);background:var(--sf-surface);width:min(720px,100%);max-height:min(760px,92vh);box-shadow:var(--sf-shadow-lg);padding:22px;overflow-y:auto}.invite-modal{width:min(620px,100%)}.team-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.team-header h2{margin:5px 0 0;font-size:21px}.team-header p{color:var(--muted);font-size:var(--sf-text-xs);margin:5px 0 0}.invite-section{border:1px solid var(--line);background:var(--raised);border-radius:8px;margin-top:20px;padding:16px}.invite-section>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.invite-section>header strong,.invite-section>header span{display:block}.invite-section>header strong{font-size:var(--sf-text-xs)}.invite-section>header span{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:3px}.invite-section>header svg{width:17px;color:var(--muted)}.invite-row{grid-template-columns:1fr 1fr;gap:11px;margin-top:14px;display:grid}.invite-row label>span{color:var(--muted);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);margin-bottom:5px;display:block}.invite-email{grid-column:1/2}.invite-row .primary-button{place-self:end;min-width:112px}.role-guide{border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:12px;display:grid;overflow:hidden}.role-guide div{border-right:1px solid var(--line);background:var(--surface);min-height:48px;padding:9px 11px}.role-guide div:last-child{border-right:0}.role-guide strong,.role-guide span{display:block}.role-guide strong{font-size:var(--sf-text-caption)}.role-guide span{color:var(--muted);margin-top:3px;font-size:9px;line-height:1.3}.invite-row input,.invite-row select{width:100%;height:var(--sf-control-md);padding:0 var(--sf-space-3);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);color:var(--sf-text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular)}.member-row select{width:100%;height:34px;padding:0 var(--sf-space-3);border:1px solid var(--sf-border);border-radius:var(--sf-radius-md);background:var(--sf-surface);color:var(--sf-text)}.member-list{margin-top:18px}.member-list>header{border-bottom:1px solid var(--line);align-items:center;min-height:42px;display:flex}.member-list>header strong,.member-list>header span{display:block}.member-list>header strong{font-size:var(--sf-text-xs)}.member-list>header span{color:var(--muted);margin-top:2px;font-size:9px}.member-head,.member-row{grid-template-columns:minmax(0,1fr) 120px 128px;align-items:center;gap:12px;display:grid}.member-head{min-height:36px;color:var(--muted);font-size:var(--sf-text-2xs)}.member-row{border-top:1px solid var(--line);min-height:61px}.member-person{align-items:center;gap:9px;min-width:0;display:flex}.member-person strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--sf-text-xs);display:block;overflow:hidden}.member-row select{height:34px;font-size:var(--sf-text-caption)}.member-row select:disabled{color:var(--muted);opacity:1}.reset-member-button{border:1px solid var(--line);background:var(--surface);min-height:34px;color:var(--muted);font-size:var(--sf-text-2xs);border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:0 9px;display:inline-flex}.reset-member-button:hover{color:var(--violet);background:var(--violet-soft)}.reset-member-button svg{width:13px}.team-message{color:var(--green);background:var(--green-soft);font-size:var(--sf-text-caption);border-radius:7px;margin-top:13px;padding:10px 11px}.workload-page{gap:14px;display:grid}.workload-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.workload-summary button{border:1px solid var(--line);border-top:3px solid var(--sf-brand-500);background:var(--surface);min-height:96px;color:var(--text);text-align:left;border-radius:8px;padding:12px 16px;transition:border-color .15s,box-shadow .15s,transform .15s}.workload-summary button[data-tone=info]{border-top-color:var(--sf-info)}.workload-summary button[data-tone=success]{border-top-color:var(--sf-success)}.workload-summary button[data-tone=warning]{border-top-color:var(--sf-warning)}.workload-summary button[data-tone=danger]{border-top-color:var(--sf-danger)}.workload-summary button:hover{border-color:var(--sf-border-strong);transform:translateY(-1px)}.workload-summary button[aria-pressed=true]{box-shadow:0 0 0 2px color-mix(in srgb, currentColor 13%, transparent);border-color:currentColor}.workload-summary span,.workload-summary strong,.workload-summary small{display:block}.workload-summary span{color:var(--muted);font-size:var(--sf-text-caption);align-items:center;gap:8px;display:flex}.workload-summary span svg{width:14px;height:14px;color:var(--muted)}.workload-summary strong{color:var(--text);font-size:var(--sf-text-xl);font-weight:var(--sf-weight-semibold);margin:8px 0 2px}.workload-summary small{color:var(--muted);font-size:var(--sf-text-caption)}.workload-directory{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.workload-directory>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:68px;padding:12px 18px;display:flex}.workload-directory>header strong,.workload-directory>header span{display:block}.workload-directory>header strong{font-size:var(--sf-text-ui)}.workload-directory>header>div:first-child>span{color:var(--muted);font-size:var(--sf-text-2xs);margin-top:3px}.workload-controls{align-items:center;gap:10px;display:flex}.workload-periods{border:1px solid var(--line);background:var(--raised);border-radius:7px;flex:none;height:36px;padding:3px;display:flex}.workload-periods button{color:var(--muted);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:5px;padding:0 10px}.workload-periods button.active{border-color:var(--sf-brand-300);color:var(--sf-brand-700);background:var(--sf-brand-50);box-shadow:inset 0 -2px 0 var(--sf-brand-500), var(--sf-shadow-xs)}.workload-search{border:1px solid var(--line);background:var(--raised);border-radius:7px;align-items:center;gap:7px;width:190px;height:36px;padding:0 10px;display:flex}.workload-search svg{width:14px;color:var(--muted)}.workload-search input{width:100%;min-width:0;color:var(--text);font-size:var(--sf-text-2xs);background:0 0;border:0;outline:0}.workload-filters{border:1px solid var(--line);background:var(--raised);border-radius:7px;height:36px;padding:3px;display:flex}.workload-filters button{color:var(--muted);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold);background:0 0;border:1px solid #0000;border-radius:5px;padding:0 9px}.workload-filters button.active{border-color:var(--sf-brand-300);color:var(--sf-brand-700);background:var(--sf-brand-50);box-shadow:inset 0 -2px 0 var(--sf-brand-500), var(--sf-shadow-xs)}.workload-table{grid-template-columns:minmax(190px,1.5fr) 118px repeat(4,minmax(82px,.7fr));align-items:center;gap:12px;display:grid}.workload-table-head{min-height:38px;color:var(--muted);background:var(--raised);font-size:var(--sf-text-xs);font-weight:var(--sf-weight-medium);padding:0 18px}.workload-table-row{border-top:1px solid var(--line);min-height:58px;font-size:var(--sf-text-caption);padding:7px 18px}.workload-table-row>strong{font-size:var(--sf-text-caption);font-variant-numeric:tabular-nums}.workload-person{align-items:center;gap:9px;min-width:0;display:flex}.workload-person>span:last-child{min-width:0}.workload-person strong,.workload-person small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.workload-person strong{font-size:var(--sf-text-caption)}.workload-person small{color:var(--muted);margin-top:2px;font-size:9px}.workload-level{width:fit-content;font-size:9px;font-weight:var(--sf-weight-bold);text-transform:capitalize;border-radius:6px;padding:4px 7px;display:inline-block}.workload-level--underloaded{color:var(--sf-info);background:var(--blue-soft)}.workload-level--balanced{color:var(--green);background:var(--green-soft)}.workload-level--overloaded{color:var(--coral);background:var(--coral-soft)}.workload-overdue{color:var(--coral)}.workload-empty{color:var(--muted);font-size:var(--sf-text-caption);text-align:center;padding:26px 18px}@media (max-width:1100px){.workload-directory>header{flex-direction:column;align-items:flex-start}.workload-controls{width:100%}.workload-search{flex:1}.workload-table{grid-template-columns:minmax(180px,1fr) 110px repeat(3,76px)}.workload-table>:nth-child(4){display:none}.client-report-breakdown>div{grid-template-columns:repeat(2,minmax(0,1fr))}.task-table{grid-template-columns:minmax(210px,1fr) 140px 108px 78px 72px 94px 96px}.task-table>:nth-child(2){display:none}.project-table-row{grid-template-columns:minmax(220px,1.4fr) 110px 64px 80px 120px 100px 34px}.project-table-row>:nth-child(2){display:none}.report-table-row{grid-template-columns:minmax(210px,1fr) 110px 80px 130px}.report-table-row>:nth-child(4){display:none}}@media (max-width:820px){.drawer-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.workload-summary{grid-template-columns:1fr 1fr}.workload-table-wrap{overflow-x:auto}.workload-table{min-width:650px}.workload-controls{flex-wrap:wrap;align-items:stretch}.workload-periods{width:100%}.workload-periods button{flex:1}.workload-search{flex-basis:100%;width:100%}.workload-filters,.workload-filters button{flex:1}.workspace-calendar>header{flex-direction:column;align-items:flex-start}.calendar-header-actions{justify-content:space-between;width:100%}.calendar-toolbar h2{min-width:0}.app-shell{grid-template-columns:58px minmax(0,1fr)}.rail{padding-inline:7px}.rail-button.active:before{left:-7px}.workspace-name,kbd{display:none}.page-content{padding:16px}.metrics{grid-template-columns:1fr 1fr}.task-table{grid-template-columns:minmax(180px,1fr) 104px 78px 90px 96px}.task-table>:nth-child(3),.task-table>:nth-child(6){display:none}.project-table-row{grid-template-columns:minmax(190px,1fr) 110px 120px 90px 34px}.project-table-row>:nth-child(2),.project-table-row>:nth-child(4),.project-table-row>:nth-child(5){display:none}.report-toolbar{flex-direction:column;align-items:stretch}.report-custom-range{justify-content:flex-end}.report-summary{grid-template-columns:1fr 1fr 1fr}.report-table-row{grid-template-columns:minmax(180px,1fr) 100px 110px}.report-table-row>:nth-child(3),.report-table-row>:nth-child(4){display:none}.team-table{grid-template-columns:minmax(190px,.8fr) minmax(190px,1fr) 112px 90px}.team-table>:nth-child(5){display:none}}@media (max-width:580px){.manual-session-form{grid-template-columns:1fr}.manual-session-form .primary-button{width:100%}.client-report-toolbar{grid-template-columns:1fr 1fr auto;align-items:end;display:grid}.client-report-title{grid-column:1/-1}.client-report-title h1{font-size:var(--sf-text-xl)}.client-report-title p{display:none}.report-refresh-control{width:var(--sf-control-md)}.report-refresh-status{display:none}.client-report-toolbar label{width:auto}.client-report-toolbar label:nth-of-type(n+3){grid-column:span 1}.client-report-head{align-items:flex-start;padding:14px}.client-report-head>div:last-child span,.client-report-mark small{display:none}.client-report-mark>i{width:34px;height:34px}.client-report-mark strong{font-size:var(--sf-text-sm)}.client-report-head>div:last-child strong{font-size:var(--sf-text-2xs);text-align:right}.client-report-summary{grid-template-columns:1fr 1fr}.client-report-summary--personal{grid-template-columns:1fr 1fr 1fr}.client-report-summary--personal>div{border-bottom:0}.client-report-summary>div{padding:12px 14px}.client-report-summary>div:nth-child(2){border-right:0}.client-report-summary>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.client-report-summary strong{font-size:var(--sf-text-lg)}.client-report-summary small{display:none}.client-report-breakdown{padding:13px 14px}.client-report-detail>header{padding:0 14px}.client-report-detail>header span{display:none}.client-report-table-wrap{max-height:520px}.client-report table{table-layout:fixed;min-width:0}.client-report th,.client-report td{padding-left:8px;padding-right:8px}.client-report th:nth-child(4),.client-report td:nth-child(4),.client-report th:nth-child(6),.client-report td:nth-child(6),.client-report th:nth-child(7),.client-report td:nth-child(7),.client-report th:nth-child(8),.client-report td:nth-child(8),.client-report th:nth-child(9),.client-report td:nth-child(9),.client-report th:nth-child(10),.client-report td:nth-child(10){display:none}.client-report th:first-child{width:25%}.client-report th:nth-child(2){width:31%}.client-report th:nth-child(3){width:28%}.client-report th:nth-child(5){text-align:right;width:16%}.client-report td:nth-child(5){text-align:right}.report-entry-row td:nth-child(2),.report-entry-row td:nth-child(3){min-width:0}.mobile-report-contributor{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:8px;display:block;overflow:hidden}.client-report>footer{padding:10px 14px}.client-report>footer span{display:none}.personal-report-detail>header{padding:0 14px 10px}.personal-report-detail>header span{display:none}.personal-report-detail article{grid-template-columns:minmax(0,1fr) 92px 64px;gap:8px;padding:9px 14px}.topbar{height:58px;padding:0 12px}.search-field{max-width:none}.topbar .icon-button,.profile-copy,.profile-button>svg{display:none}.profile-button{border:0;padding:2px}.primary-button{padding-inline:10px}.page-heading h1{font-size:var(--sf-text-2xl)}.range-switch{display:none}.metrics{grid-template-columns:1fr 1fr}.metrics button{padding:11px}.metrics strong{font-size:19px}.panel-header{flex-direction:column;align-items:flex-start}.panel-actions{justify-content:space-between;width:100%}.task-table{grid-template-columns:minmax(150px,1fr) 96px 96px}.task-table>:nth-child(4),.task-table>:nth-child(5){display:none}.active-session{flex-wrap:wrap;align-items:flex-start}.live-time{margin-left:0}.active-session .secondary-button{margin-left:auto}.workspace-calendar{overflow-x:auto}.workspace-calendar>header{min-width:calc(100vw - 32px);padding:10px 12px;position:sticky;left:0}.calendar-toolbar{grid-template-columns:auto 32px 32px minmax(0,1fr);width:100%;display:grid}.calendar-jump-today{min-height:32px;padding:0 10px}.calendar-icon-button{width:32px;height:32px}.calendar-toolbar h2{font-size:var(--sf-text-ui);text-overflow:ellipsis;white-space:nowrap;margin-left:4px;overflow:hidden}.calendar-header-actions>span{display:none}.calendar-view-switch{width:100%}.calendar-view-switch button{flex:1}.calendar-agenda{min-width:calc(100vw - 32px)}.calendar-agenda>header{grid-template-columns:minmax(0,1fr) 84px;padding:0 42px 0 31px}.calendar-agenda>header span:nth-child(2){display:none}.calendar-agenda>button{grid-template-columns:7px minmax(0,1fr) 84px 14px;gap:9px;padding:9px 12px}.calendar-agenda>button>em{display:none}.calendar-agenda>button>span small{max-width:100%}.calendar-week-grid{min-width:700px;min-height:460px}.project-table-row{grid-template-columns:minmax(160px,1fr) 82px 34px}.project-table-row>:nth-child(2),.project-table-row>:nth-child(3),.project-table-row>:nth-child(4),.project-table-row>:nth-child(5),.project-table-row>:nth-child(6){display:none}.report-range-switch{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.report-custom-range{flex-direction:column;align-items:stretch}.report-custom-range label{justify-content:space-between}.report-summary{grid-template-columns:1fr}.report-table-row{grid-template-columns:minmax(150px,1fr) 86px}.report-table-row>:nth-child(3),.report-table-row>:nth-child(4),.report-table-row>:nth-child(5){display:none}.team-table{grid-template-columns:minmax(170px,1fr) 105px}.team-table>:nth-child(2),.team-table>:nth-child(3),.team-table>:nth-child(5){display:none}.edit-member-form,.form-grid,.drawer-fields{grid-template-columns:1fr}.role-guide{grid-template-columns:1fr 1fr}.role-guide div:nth-child(2){border-right:0}.role-guide div{border-bottom:1px solid var(--line)}.role-guide div:nth-last-child(-n+2){border-bottom:0}.invite-row{grid-template-columns:1fr}.invite-email{grid-column:auto}.invite-row .primary-button{justify-self:stretch;width:100%}.member-head,.member-row{grid-template-columns:minmax(0,1fr) 102px}.member-head span:last-child{display:none}.reset-member-button{grid-column:1/-1;width:fit-content;margin:-2px 0 9px 43px}.drawer-backdrop{align-items:end;padding:0}.task-drawer{border-width:1px 0 0;border-radius:8px 8px 0 0;width:100vw;max-height:94vh;padding:16px}.task-drawer>header{margin:-16px -16px 0;padding:0 16px;top:-16px}.time-fold>header{flex-wrap:wrap}.time-fold .time-actions{order:3;width:100%;margin-left:0}.subtask-item{grid-template-columns:24px minmax(0,1fr)}.subtask-actions{grid-column:2;justify-content:flex-start}.subtask-assignment-panel{grid-column:1/-1}.subtask-manual-time{grid-column:1/-1;grid-template-columns:1fr 1fr}.subtask-manual-time label:first-child,.subtask-manual-time button{grid-column:1/-1}.subtask-composer{grid-template-columns:1fr}.subtask-composer footer{grid-column:1}}@media (max-width:820px){.role-permissions-toolbar{flex-direction:column;align-items:stretch}.role-tabs{width:100%}.role-tabs button{flex:1;min-width:0;padding-inline:8px}.role-permission-actions{justify-content:flex-end}.permission-locks>div{grid-template-columns:repeat(2,minmax(0,1fr))}.permission-groups{grid-template-columns:1fr}}@media (max-width:520px){.role-permission-actions{grid-template-columns:1fr 1fr;display:grid}.role-permission-actions .sf-button{justify-content:center;width:100%}.permission-locks>div{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.auth-page{background:var(--surface);grid-template-columns:minmax(360px,.86fr) minmax(480px,1.14fr);min-height:100vh;display:grid}.auth-brand-panel{color:#f8f9ff;background:#151722;flex-direction:column;min-height:100vh;padding:34px 38px;display:flex;position:relative;overflow:hidden}.auth-brand-panel:before{content:"";pointer-events:none;background:linear-gradient(145deg,#0797b647,#0000 42%),linear-gradient(330deg,#6d4ee852,#0000 48%);position:absolute;inset:0}.auth-brand{z-index:1;width:fit-content;color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex;position:relative}.auth-brand>img{object-fit:contain;width:38px;height:38px}.auth-brand strong{font-size:15px}.auth-brand-copy{z-index:1;max-width:510px;margin:auto 0;position:relative}.auth-brand-copy>span{font-size:var(--sf-text-caption);text-transform:uppercase;letter-spacing:.12em;color:#aeb3c5}.auth-brand-copy h1{font-size:clamp(37px,4vw,62px);line-height:1.04;font-weight:var(--sf-weight-semibold);letter-spacing:0;margin:15px 0 17px}.auth-brand-copy p{color:#b9bdca;max-width:455px;font-size:var(--sf-text-sm);margin:0;line-height:1.65}.auth-preview{z-index:1;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:8px;width:min(430px,92%);margin-top:auto;padding:13px;position:relative;box-shadow:0 22px 50px #0003}.preview-top{border-bottom:1px solid #ffffff1a;gap:5px;padding-bottom:10px;display:flex}.preview-top span{background:#ffffff59;border-radius:50%;width:6px;height:6px}.preview-row{border-bottom:1px solid #ffffff14;grid-template-columns:17px 1fr 72px;align-items:center;gap:9px;height:35px;display:grid}.preview-row:last-child{border-bottom:0}.preview-row i{border:1px solid #ffffff3b;border-radius:4px;width:13px;height:13px}.preview-row b{background:#ffffff3d;border-radius:3px;width:65%;height:6px}.preview-row em{background:#6d4ee861;border-radius:5px;width:100%;height:18px}.auth-form-panel{background:var(--bg);place-items:center;min-height:100vh;padding:36px;display:grid}.auth-form-wrap{width:min(420px,100%)}.auth-mobile-brand{align-items:center;margin-bottom:48px;display:none}.auth-mobile-brand img{object-fit:contain;width:156px;height:auto}.auth-heading>span{color:var(--violet);font-size:var(--sf-text-2xs);font-weight:var(--sf-weight-bold);text-transform:uppercase;letter-spacing:.11em}.auth-heading h2{margin:8px 0 0;font-size:27px;line-height:1.2}.auth-heading p{color:var(--muted);font-size:var(--sf-text-sm);margin:8px 0 0;line-height:1.5}.auth-form{gap:15px;margin-top:25px;display:grid}.auth-form>label{color:var(--text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-medium);gap:7px;display:grid}.auth-label-row{justify-content:space-between;align-items:center;display:flex}.auth-label-row a{color:var(--violet);font-weight:var(--sf-weight-medium);text-decoration:none}.auth-input{height:var(--sf-control-md);border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.auth-input:focus-within{border-color:color-mix(in srgb, var(--violet) 60%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--violet) 10%, transparent)}.auth-input>svg{width:15px;color:var(--muted)}.auth-input input{min-width:0;color:var(--text);font-size:var(--sf-text-sm);font-weight:var(--sf-weight-regular);background:0 0;border:0;outline:0;flex:1}.auth-input button{width:30px;height:30px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;display:grid}.auth-input button svg{width:15px}.auth-submit{width:100%;min-height:var(--sf-control-md);color:#fff;background:linear-gradient(110deg, var(--cyan), var(--violet));font-size:var(--sf-text-sm);font-weight:var(--sf-weight-bold);border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:3px;text-decoration:none;display:inline-flex}.auth-submit:disabled{opacity:.65}.auth-submit svg{width:15px}.auth-message{font-size:var(--sf-text-xs);border-radius:7px;padding:10px 11px;line-height:1.4}.auth-message.error{color:var(--coral);background:var(--coral-soft)}.auth-message.success{color:var(--green);background:var(--green-soft)}.auth-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);font-size:var(--sf-text-xs);margin-top:22px;padding-top:18px}.auth-footer button{color:var(--violet);font-weight:var(--sf-weight-semibold);background:0 0;border:0;padding:0}.auth-back{color:var(--violet);font-weight:var(--sf-weight-semibold);align-items:center;gap:6px;text-decoration:none;display:inline-flex}.auth-back svg{width:13px}.auth-success-panel{border:1px solid var(--line);text-align:center;background:var(--surface);border-radius:8px;justify-items:center;margin-top:25px;padding:22px;display:grid}.auth-success-panel>svg{width:28px;color:var(--green)}.auth-success-panel strong{font-size:var(--sf-text-ui);margin-top:11px}.auth-success-panel p{color:var(--muted);font-size:var(--sf-text-caption);margin:6px 0 0;line-height:1.5}.auth-success-panel .auth-submit{margin-top:17px}.auth-success-panel.invalid>svg{color:var(--sf-warning)}.auth-invitation-review{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:8px;justify-items:center;gap:16px;padding:24px;display:grid}.auth-invitation-icon{width:48px;height:48px;color:var(--sf-success);background:var(--sf-success-soft);border-radius:50%;place-items:center;display:grid}.auth-invitation-icon svg{width:24px;height:24px}.auth-invitation-review strong{font-size:var(--sf-text-md)}.auth-invitation-review p{max-width:420px;color:var(--muted);font-size:var(--sf-text-xs);margin:6px 0 0;line-height:1.6}.auth-invitation-review form,.auth-invitation-review .auth-submit{width:100%}.auth-invitation-review .auth-submit svg{width:16px;height:16px}.auth-secondary-link{color:var(--sf-info);font-size:var(--sf-text-caption);font-weight:var(--sf-weight-semibold)}.auth-session-state{min-height:150px;color:var(--sf-text-secondary);place-content:center;justify-items:center;margin-top:25px;display:grid}.auth-session-state p{margin:var(--sf-space-3) 0 0;font-size:var(--sf-text-xs)}.auth-password-hint{color:var(--sf-text-tertiary);font-size:var(--sf-text-xs);margin:-5px 0 0}.auth-turnstile{align-items:center;min-height:65px;display:grid;overflow:hidden}.auth-turnstile>div{width:100%}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:850px){.auth-page{grid-template-columns:1fr}.auth-brand-panel{display:none}.auth-form-panel{padding:28px 20px}.auth-mobile-brand{display:flex}}
