:root{--bg: #f0f2f4;--bg-warm: #f5f3ef;--surface: #ffffff;--surface-raised: #ffffff;--surface-sunken: #e8ebef;--sidebar: #f7f8fa;--rail: #fbfcfd;--rail-edge: #e8ecf0;--ink: #1a2332;--ink-soft: #3d4a5c;--muted: #6b7785;--muted-soft: #8b95a1;--line: #dde3ea;--line-strong: #c5cdd8;--line-focus: #1f6b4f;--accent: #1f6b4f;--accent-hover: #185a42;--accent-soft: #e7f3ee;--accent-ring: rgba(31, 107, 79, .28);--blue: #2f6fed;--blue-soft: #eaf1ff;--danger: #c9372c;--danger-soft: #fdecea;--danger-hover: #b02e24;--warn: #b54708;--warn-soft: #fff4e5;--ok: #067647;--ok-soft: #e7f8ef;--shadow-xs: 0 1px 2px rgba(26, 35, 50, .04);--shadow: 0 1px 2px rgba(26, 35, 50, .04), 0 8px 24px rgba(26, 35, 50, .06);--shadow-md: 0 2px 4px rgba(26, 35, 50, .05), 0 12px 32px rgba(26, 35, 50, .08);--shadow-lg: 0 8px 40px rgba(26, 35, 50, .12);--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--radius-full: 999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--app-header-height: 56px;--nav-rail-width: 200px;--nav-rail-collapsed: 84px;--phases-rail-width: 260px;--phases-rail-collapsed: 52px;--page-max: 1100px;--z-dropdown: 80;--z-modal: 200;--z-toast: 300;--ease-out: cubic-bezier(.22, 1, .36, 1);--duration-fast: .12s;--duration: .18s;--duration-slow: .28s;--font: "IBM Plex Sans", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "Cascadia Code", monospace;--text-xs: .72rem;--text-sm: .82rem;--text: .9rem;--text-lg: 1.05rem;--text-xl: 1.35rem;--text-2xl: 1.65rem;--leading: 1.45;--tracking-tight: -.02em;font-family:var(--font);color:var(--ink);background:var(--bg);line-height:var(--leading);font-size:15px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-reduced-motion:reduce){:root{--duration-fast: 0ms;--duration: 0ms;--duration-slow: 0ms}}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus:not(:focus-visible),a:focus:not(:focus-visible),input:focus:not(:focus-visible),select:focus:not(:focus-visible),textarea:focus:not(:focus-visible){outline:none}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-shell.has-nav-rail{flex-direction:row;align-items:stretch}.app-main-column{flex:1;min-width:0;display:flex;flex-direction:column;min-height:100vh}.app-shell.workspace-mode{background:var(--bg)}.app-shell.workspace-mode .page.full-bleed{flex:1;display:flex;flex-direction:column;min-height:0;width:100%;max-width:none;margin:0}.app-shell.workspace-mode .ops{flex:1;min-height:0;width:100%}.global-nav-rail{width:var(--nav-rail-width);flex-shrink:0;background:var(--rail);border-right:1px solid var(--rail-edge);display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;align-self:flex-start;z-index:40;transition:width var(--duration) var(--ease-out)}.global-nav-rail.is-collapsed{width:var(--nav-rail-collapsed)}.global-nav-rail-head{display:flex;align-items:center;justify-content:space-between;gap:.25rem;height:var(--app-header-height);padding:0 .4rem 0 .7rem;background:#fff;border-bottom:1px solid var(--line);box-sizing:border-box;flex-shrink:0}.global-nav-brand{display:flex;align-items:center;flex:1;min-width:0;position:relative;z-index:1;padding:.2rem .15rem;margin:-.2rem 0;border-radius:6px;font-weight:750;letter-spacing:-.03em;font-size:.98rem;color:var(--ink);cursor:pointer;text-decoration:none}.global-nav-brand:hover{color:var(--accent)}.global-nav-brand-full{display:inline-flex;align-items:baseline;gap:.32em;min-width:0;color:var(--ink)}.global-nav-brand-full>span{color:var(--accent)}.global-nav-brand-short{font-size:.82rem;letter-spacing:-.02em;color:var(--ink)}.global-nav-brand-short>span{color:var(--accent)}.global-nav-collapse-btn{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:7px;border:1px solid #c5d4cc;background:#eef6f1;color:var(--accent, #1f6b4f);cursor:pointer;flex-shrink:0;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.global-nav-collapse-btn:hover{background:#e0eee6}.global-nav-rail-nav{display:flex;flex-direction:column;gap:.1rem;padding:.4rem .45rem;flex:1;overflow:auto}.global-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.45rem .25rem;border-radius:9px;color:var(--muted);font-weight:600;font-size:.65rem;line-height:1.15;text-align:center;text-decoration:none;transition:background-color .14s ease,color .14s ease}.global-nav-rail:not(.is-collapsed) .global-nav-item{flex-direction:row;justify-content:flex-start;gap:.5rem;padding:.42rem .55rem;font-size:.84rem;text-align:left}.global-nav-item:hover,.global-nav-item.active{background:var(--accent-soft);color:var(--accent)}.global-nav-icon-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;flex-shrink:0}.global-nav-bell-badge{position:absolute;top:-.35rem;right:-.45rem;min-width:1rem;height:1rem;padding:0 .22rem;font-size:.62rem}.global-nav-label{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-nav-projects-group{display:flex;flex-direction:column;gap:.05rem}.global-nav-projects-row{display:flex;align-items:center;gap:.1rem;min-width:0}.global-nav-projects-row .global-nav-projects-link{flex:1;min-width:0}.global-nav-rail:not(.is-collapsed) .global-nav-projects-row.has-favourites .global-nav-projects-link{padding-right:.2rem}.global-nav-projects-chevron-btn{display:none;align-items:center;justify-content:center;width:1.45rem;height:1.45rem;flex-shrink:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;padding:0}.global-nav-rail:not(.is-collapsed) .global-nav-projects-chevron-btn{display:inline-flex}.global-nav-projects-chevron-btn:hover{color:var(--ink);background:#0f172a0a}.global-nav-favourites-chevron{transition:transform .16s ease}.global-nav-favourites-chevron.is-collapsed{transform:rotate(-90deg)}.global-nav-favourites{display:flex;flex-direction:column;gap:.08rem;padding:.1rem 0 .2rem .55rem;margin-left:.55rem;border-left:1px solid #e2e8f0}.global-nav-favourites-label{padding:.15rem .45rem .05rem;color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.global-nav-favourites-list{display:flex;flex-direction:column;gap:.05rem}.global-nav-favourites-item{font-size:.8rem!important;font-weight:550!important;padding:.32rem .45rem!important}.global-nav-project-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border-radius:5px;color:#fff;font-size:.58rem;font-weight:750;letter-spacing:-.02em;flex-shrink:0;line-height:1}.global-nav-rail-foot{padding:.45rem .35rem .65rem;border-top:1px solid var(--line);margin-top:auto;background:#fff}.global-nav-rail.is-collapsed .account-foot-meta{display:none}.global-nav-rail.is-collapsed .account-menu-foot-trigger{justify-content:center;padding-inline:.35rem}.project-phases-rail{width:236px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;height:auto;background:#f4f6f8;border-right:1px solid var(--line);transition:width .18s cubic-bezier(.22,1,.36,1);position:relative;z-index:30}.project-phases-rail.is-collapsed{width:44px}.project-phases-rail-chrome{display:flex;align-items:center;justify-content:flex-end;padding:.4rem .5rem .2rem;flex-shrink:0;min-height:2.25rem}.project-phases-rail:not(.is-collapsed) .project-phases-rail-chrome{position:absolute;top:.5rem;right:.5rem;z-index:2;min-height:0;padding:0}.project-phases-collapse-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;margin-left:auto;border-radius:7px;border:1px solid #c9d3e2;background:#e8eef6;color:#3b5b84;cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.project-phases-collapse-btn:hover{background:#dde6f2}.project-phases-rail.is-collapsed .project-phases-rail-chrome{justify-content:center;padding:.55rem .25rem}.project-phases-rail.is-collapsed .project-phases-collapse-btn{margin-left:0}.project-phases-rail-body{display:flex;flex-direction:column;gap:.35rem;padding:.15rem 0 .65rem;min-height:0;flex:1;overflow:visible}.project-phases-rail:not(.is-collapsed) .project-phases-rail-body{padding-top:.55rem}.project-phases-rail.is-collapsed .project-phases-rail-body{visibility:hidden;pointer-events:none;height:0;padding:0;overflow:hidden}.project-phases-rail .phase-nav{flex:1;min-height:0;overflow:visible;gap:.05rem;padding-inline:.55rem}.project-phases-rail .phase-nav-label{margin:.1rem .55rem 0;padding:.15rem 2.4rem .15rem .1rem}.project-phases-rail .phase-nav-item{margin:0;transition:background-color .14s ease,box-shadow .14s ease}.project-phases-rail .phase-nav-select{padding:.32rem .4rem}.project-phases-rail .phase-add{margin:.2rem .55rem 0;padding-top:.35rem}.phase-dot.phase-status-complete{background:var(--ok)}.phase-dot.phase-status-in-progress{background:#f79009}.phase-dot.phase-status-not-started{background:#c5ced8}.phase-row-date{font-variant-numeric:tabular-nums;font-size:.68rem;color:var(--muted);white-space:nowrap;min-width:2.9rem;text-align:right}.topbar{display:flex;align-items:center;justify-content:center;gap:1rem;height:var(--app-header-height);padding:0 1.25rem;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;width:100%;flex-shrink:0;box-sizing:border-box}.topbar-search{width:100%;max-width:560px;position:relative;z-index:51}.topbar-search-full{max-width:640px;justify-self:center}.nav-unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.15rem;height:1.15rem;padding:0 .3rem;border-radius:999px;background:#c9372c;color:#fff;font-size:.68rem;font-weight:700;line-height:1;flex-shrink:0}.brand{font-weight:700;letter-spacing:-.03em;font-size:1.05rem;justify-self:start}.brand span{color:var(--accent)}.nav{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-self:end}.nav a,.nav button.linkish{padding:.4rem .7rem;border-radius:8px;color:var(--muted);border:0;background:transparent}.nav a.active,.nav a:hover{background:var(--accent-soft);color:var(--accent)}.page{width:min(1100px,calc(100% - 2rem));margin:1.5rem auto 3rem}.page.full-bleed{width:100%;margin:0;max-width:none}.btn{border:0;border-radius:var(--radius);padding:.5rem .95rem;background:var(--accent);color:#fff;font-weight:600;font-size:var(--text);transition:background var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),opacity var(--duration-fast)}.btn:hover:not(:disabled){background:var(--accent-hover)}.btn.secondary{background:#eef2f6;color:var(--ink)}.btn.secondary:hover:not(:disabled){background:#e4e9ef}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--ink)}.btn.ghost:hover:not(:disabled){background:var(--surface-sunken)}.btn.back{background:var(--warn-soft);border:1px solid #f0d4a8;color:var(--warn)}.btn.back:hover:not(:disabled){background:#ffecd2;border-color:var(--warn);color:#8a3500}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.danger:hover:not(:disabled){background:var(--danger-hover);border-color:var(--danger-hover)}.btn.sm{padding:.35rem .65rem;font-size:var(--text-sm)}.btn.lg{padding:.65rem 1.15rem;font-size:var(--text-lg)}.btn:disabled{opacity:.55;cursor:not-allowed}.input,.select,.textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:.55rem .75rem;background:#fff;color:var(--ink);transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.input:hover,.select:hover,.textarea:hover{border-color:var(--line-strong)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);outline:none}.textarea{min-height:90px;resize:vertical}.label{font-size:var(--text-sm);color:var(--muted);margin-bottom:.25rem;display:block;font-weight:500}.error{color:var(--danger);margin:0}.muted{color:var(--muted)}.row{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}.stack{display:flex;flex-direction:column;gap:.75rem}.ui-page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-2)}.ui-page-header-main{display:flex;flex-direction:column;gap:var(--space-2);min-width:0;flex:1}.ui-page-title{margin:0;font-size:var(--text-2xl);font-weight:700;letter-spacing:var(--tracking-tight);line-height:1.2;color:var(--ink)}.ui-page-desc{margin:.35rem 0 0;max-width:42rem}.ui-page-header-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.ui-empty{padding:1.5rem 1.25rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.ui-empty-title{font-size:var(--text-lg)}.ui-empty-desc{margin:0;max-width:28rem}.ui-empty-action{margin-top:.5rem}.ui-empty-error{border-color:#f0c4c0;background:var(--danger-soft)}.ui-toast-stack{position:fixed;right:1rem;bottom:1rem;z-index:var(--z-toast);display:flex;flex-direction:column;gap:.5rem;max-width:min(360px,calc(100vw - 2rem));pointer-events:none}.ui-toast{pointer-events:auto;display:flex;align-items:flex-start;gap:.65rem;padding:.75rem .9rem;border-radius:var(--radius);background:var(--ink);color:#fff;box-shadow:var(--shadow-md);animation:ui-toast-in var(--duration) var(--ease-out)}.ui-toast-success{background:var(--ok)}.ui-toast-danger{background:var(--danger)}.ui-toast-msg{flex:1;font-size:var(--text-sm);font-weight:500;line-height:1.35}.ui-toast-dismiss{border:0;background:transparent;color:inherit;opacity:.8;font-size:1.1rem;line-height:1;padding:0}.ui-toast-dismiss:hover{opacity:1}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.ui-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);background:#1a23326b;display:flex;align-items:center;justify-content:center;padding:1rem;animation:ui-fade-in var(--duration-fast) var(--ease-out)}.ui-modal{width:min(440px,100%);max-height:min(90vh,720px);overflow:auto;padding:1.15rem 1.25rem;box-shadow:var(--shadow-lg);animation:ui-modal-in var(--duration) var(--ease-out)}.ui-modal-lg{width:min(720px,100%)}.ui-modal-sm{width:min(360px,100%)}.ui-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.ui-modal-title{margin:0;font-size:var(--text-xl);font-weight:700;letter-spacing:var(--tracking-tight)}.ui-modal-x{flex-shrink:0;min-width:2rem}.ui-modal-body{margin:0 0 1rem}.ui-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;flex-wrap:wrap;margin-top:.25rem}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ui-tabs .ui-tab-badge{display:inline-flex;margin-left:.35rem;min-width:1.1rem;padding:0 .3rem;border-radius:var(--radius-full);background:var(--danger);color:#fff;font-size:.65rem;font-weight:700;line-height:1.3;justify-content:center}.ui-loading{display:inline-flex;align-items:center;gap:.55rem;margin:0}.ui-spinner{width:1rem;height:1rem;border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;animation:ui-spin .7s linear infinite}@media(prefers-reduced-motion:reduce){.ui-toast,.ui-modal,.ui-modal-backdrop,.ui-spinner{animation:none!important}}.badge{display:inline-flex;align-items:center;gap:.3rem;border-radius:var(--radius-full);padding:.15rem .55rem;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;background:#eef2f6;color:var(--muted);text-transform:uppercase}.badge.owner{background:#1a2332;color:#fff}.badge.online{background:var(--ok-soft);color:var(--ok);text-transform:none}.badge.offline{background:#f2f4f7;color:var(--muted);text-transform:none}.badge.pending{background:var(--warn-soft);color:var(--warn)}.badge.high{background:var(--danger-soft);color:var(--danger)}.badge.med{background:var(--warn-soft);color:var(--warn)}.badge.status-not_started,.badge.status-planned,.badge.status-client_review,.badge.status-completed,.badge.status-in_progress{border-radius:6px;border:1.5px solid currentColor;text-transform:uppercase;letter-spacing:.04em}.badge.status-client_review{background:#f3faf6;color:#1f6b4f;border-color:#1f6b4f}.badge.status-in_progress{background:#fff7ed;color:#c2410c;border-color:#c2410c}.badge.status-planned{background:#e8eaed;color:#111827;border-color:#c5cad3}.badge.status-not_started{background:#fbfbfc;color:#6b7280;border-color:#b8bec8}.badge.status-completed{background:#ecfdf3;color:#067647;border-color:#067647}.status-settings-intro{padding:.75rem .9rem;background:#f8fafc;border:1px solid var(--line, #e2e8f0);border-radius:8px;margin-bottom:.25rem}.status-effective-preview .status-option-row{opacity:1}.color-wheel-picker{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem}.color-wheel-native{position:relative;display:inline-flex;flex-direction:column;align-items:center;gap:.2rem;cursor:pointer}.color-wheel-native input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;cursor:pointer;border:0;padding:0}.color-wheel-swatch{width:36px;height:36px;border-radius:999px;border:2px solid #fff;box-shadow:0 0 0 1px #0f172a33}.color-wheel-caption{font-size:.65rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.color-wheel-presets{display:flex;flex-wrap:wrap;gap:.35rem;max-width:280px}.color-wheel-preset{width:22px;height:22px;border-radius:999px;border:2px solid transparent;cursor:pointer;padding:0}.color-wheel-preset.selected{box-shadow:0 0 0 2px #fff,0 0 0 4px #0f172a}.color-wheel-hex{width:7.5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem}.ops-title-row{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.project-star-btn{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;padding:0;border:0;border-radius:7px;background:transparent;color:#94a3b8;cursor:pointer;flex-shrink:0;transition:color .14s ease,background-color .14s ease}.project-star-btn:hover{color:#ca8a04;background:#ca8a0414}.project-star-btn.is-starred{color:#ca8a04}.toast-favourites{gap:0;padding:.65rem 1rem;background:#1a2332;font-weight:550}.case-status-wrap{display:inline-flex;align-items:center;vertical-align:middle}.case-status-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.22rem .65rem .22rem .45rem;border-radius:999px;font-size:.8125rem;font-weight:500;line-height:1.25;border:0;white-space:nowrap;letter-spacing:-.01em}button.case-status-badge{cursor:pointer;font:inherit}button.case-status-badge.editable:hover,button.case-status-badge.editable.open{filter:brightness(.985);box-shadow:inset 0 0 0 1px #0f172a0f}button.case-status-badge.case-status-empty.editable{border:1px dashed #94a3b8}.case-status-empty{background:#f1f5f9;color:#64748b}.case-status-badge.case-status-empty.editable{pointer-events:auto;cursor:pointer}.case-status-wrap .case-status-badge.case-status-empty:not(.editable){pointer-events:none;cursor:default}.case-status-dot{width:.55rem;height:.55rem;border-radius:999px;flex-shrink:0;display:inline-block}.case-status-dot-empty{background:transparent;box-shadow:inset 0 0 0 1.5px #94a3b8}.case-status-label{line-height:1.2}.case-status-badge.case-status-red{background:#fde8e8;color:#c92a2a}.case-status-badge.case-status-yellow{background:#fff3bf;color:#e67700}.case-status-badge.case-status-green{background:#d3f9d8;color:#2b8a3e}.case-status-badge.case-status-blue{background:#dbe4ff;color:#3b5bdb}.case-status-badge.case-status-gray{background:#e9ecef;color:#495057}.case-status-badge.case-status-purple{background:#e5dbff;color:#7048e8}.case-status-dot.case-status-red{background:#fa5252}.case-status-dot.case-status-yellow{background:#fab005}.case-status-dot.case-status-green{background:#40c057}.case-status-dot.case-status-blue{background:#4c6ef5}.case-status-dot.case-status-gray{background:#868e96}.case-status-dot.case-status-purple{background:#7950f2}.case-status-menu{position:fixed;z-index:90;min-width:220px;max-width:280px;padding:.4rem;background:#fff;border:1px solid var(--line, #e2e8f0);border-radius:10px;box-shadow:0 10px 28px #0f172a24}.case-status-menu-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;padding:.35rem .55rem .45rem}.case-status-menu-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;display:flex;align-items:center;gap:.55rem;text-align:left;border:0;background:transparent;padding:.48rem .55rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;color:#0f172a}.case-status-menu-item:hover{background:#f8fafc}.case-status-menu-item.active{background:#f1f5f9}.case-status-menu-item.case-status-red .case-status-menu-label{color:#c92a2a}.case-status-menu-item.case-status-yellow .case-status-menu-label{color:#e67700}.case-status-menu-item.case-status-green .case-status-menu-label{color:#2b8a3e}.case-status-menu-item.case-status-blue .case-status-menu-label{color:#3b5bdb}.case-status-menu-item.case-status-gray .case-status-menu-label{color:#495057}.case-status-menu-item.case-status-purple .case-status-menu-label{color:#7048e8}.case-status-menu-label{line-height:1.2}.case-status-menu-label.muted{color:#64748b;font-weight:400}.case-status-menu-footer{margin-top:.25rem;padding-top:.35rem;border-top:1px solid var(--line, #e2e8f0)}.case-status-menu-manage{display:block;padding:.45rem .55rem;font-size:.8rem;font-weight:500;color:#2563eb;text-decoration:none;border-radius:6px}.case-status-menu-manage:hover{background:#eff6ff;text-decoration:underline}.case-status-swatch{width:12px;height:12px;border-radius:999px;flex-shrink:0;border:1px solid rgba(15,23,42,.08)}.case-status-swatch.lg{width:16px;height:16px}.case-status-swatch.case-status-red{background:#fa5252}.case-status-swatch.case-status-yellow{background:#fab005}.case-status-swatch.case-status-green{background:#40c057}.case-status-swatch.case-status-blue{background:#4c6ef5}.case-status-swatch.case-status-gray{background:#868e96}.case-status-swatch.case-status-purple{background:#7950f2}.case-status-swatch-picker{display:flex;gap:.4rem;flex-wrap:wrap}.case-status-swatch-btn{width:28px;height:28px;border-radius:999px;border:2px solid transparent;cursor:pointer;padding:0}.case-status-swatch-btn.case-status-red{background:#fa5252}.case-status-swatch-btn.case-status-yellow{background:#fab005}.case-status-swatch-btn.case-status-green{background:#40c057}.case-status-swatch-btn.case-status-blue{background:#4c6ef5}.case-status-swatch-btn.case-status-gray{background:#868e96}.case-status-swatch-btn.case-status-purple{background:#7950f2}.case-status-swatch-btn.selected{box-shadow:0 0 0 2px #fff,0 0 0 4px #0f172a}.status-select{position:relative;display:inline-flex;width:112px;max-width:128px;min-width:112px;vertical-align:middle}.status-select select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%;z-index:2}.status-select-face{display:inline-flex;align-items:center;justify-content:space-between;gap:.4rem;max-width:100%;min-width:0;width:100%;border-radius:6px;padding:.35rem .5rem;font-size:.68rem;font-weight:700;letter-spacing:.04em;border:1.5px solid var(--status-color, #b8bec8);pointer-events:none;text-align:left;background:var(--status-bg, #fbfbfc);color:var(--status-color, #6b7280);transition:color .18s ease,background .18s ease,border-color .18s ease}.status-select-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:none;flex:1;min-width:0}.status-select-face:after{content:"";width:0;height:0;margin-left:.15rem;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.95;flex-shrink:0}.status-select select:focus+.status-select-face{outline:2px solid #2f6fed;outline-offset:1px}.task-desc{color:var(--muted);font-size:.78rem;margin-top:.15rem}.task-code{color:var(--muted);font-weight:600;font-size:.78rem}.warn-mark{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#f79009;color:#fff;font-size:.7rem;font-weight:800;margin-right:.35rem;vertical-align:middle}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem;box-shadow:var(--shadow)}.list-item{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}.list-item:last-child{border-bottom:0}.projects-page{gap:1rem}.projects-page .ui-page-header{margin-bottom:.15rem;align-items:center}.projects-create-btn{display:inline-flex;align-items:center;gap:.4rem;min-height:38px;padding-inline:.9rem;box-shadow:0 1px 2px #1f6b4f2e}.projects-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem}.projects-search{position:relative;display:block;width:min(420px,100%)}.projects-search>svg{position:absolute;left:.8rem;top:50%;z-index:1;color:var(--muted);pointer-events:none;transform:translateY(-50%)}.projects-search .input{min-height:42px;padding-left:2.45rem;padding-right:2.4rem;border-color:#d6dde5;box-shadow:var(--shadow-xs)}.projects-search-clear{position:absolute;right:.55rem;top:50%;display:grid;width:28px;height:28px;padding:0;place-items:center;color:var(--muted);background:transparent;border:0;border-radius:var(--radius-sm);transform:translateY(-50%)}.projects-search-clear:hover{color:var(--ink);background:var(--surface-sunken)}.projects-count{flex-shrink:0;color:var(--muted);font-size:var(--text-sm);font-weight:600}.projects-list{padding:0;overflow:hidden;border-radius:var(--radius-lg)}.projects-list .project-list-row{position:relative;align-items:stretch;gap:0;padding:0;transition:background-color var(--duration-fast)}.projects-list .project-list-row:hover{background:#f8faf9}.project-list-main{display:flex;flex:1;align-items:center;gap:.85rem;min-width:0;padding:1rem 1.1rem;color:inherit;text-decoration:none}.project-list-main:focus-visible{position:relative;z-index:1;outline-offset:-3px}.project-list-icon{display:grid;width:38px;height:38px;flex:0 0 38px;place-items:center;color:var(--accent);background:var(--accent-soft);border-radius:9px}.project-list-content{display:flex;flex:1;flex-direction:column;gap:.22rem;min-width:0}.project-list-heading{display:flex;align-items:center;gap:.5rem;min-width:0;flex-wrap:wrap}.project-list-heading strong{overflow:hidden;font-size:.94rem;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.project-list-meta{display:flex;align-items:center;gap:.55rem;min-width:0;font-size:var(--text-sm)}.project-list-meta>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-id{flex-shrink:0;padding-left:.55rem;border-left:1px solid var(--line);color:var(--muted-soft);font-variant-numeric:tabular-nums}.project-list-arrow{flex-shrink:0;margin-left:.25rem;color:var(--muted-soft);transition:color var(--duration-fast),transform var(--duration-fast)}.project-list-main:hover .project-list-arrow{color:var(--accent);transform:translate(2px)}.project-messages-btn{align-self:center;display:inline-flex;align-items:center;gap:.35rem;margin-right:1rem;min-height:36px;color:var(--ink-soft)}@media(max-width:640px){.projects-page{gap:.8rem}.projects-page .ui-page-header-actions,.projects-page .projects-create-btn,.projects-search{width:100%}.projects-page .projects-create-btn{justify-content:center}.projects-toolbar{align-items:stretch;flex-direction:column;gap:.5rem}.projects-count{padding-left:.1rem}.project-list-main{padding:.85rem}.project-list-icon{width:34px;height:34px;flex-basis:34px}.project-list-arrow{display:none}.project-messages-btn{width:38px;min-width:38px;padding:0;justify-content:center;margin-right:.75rem}.project-messages-btn span{display:none}}.form-page{width:min(720px,100%);margin:0 auto}.form-page-header{margin-bottom:.85rem}.form-panel{width:100%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem 1rem}.form-span{grid-column:1 / -1}.form-actions{display:flex;justify-content:flex-end;gap:.65rem;padding-top:.35rem;border-top:1px solid var(--line);margin-top:.25rem}@media(max-width:700px){.form-grid{grid-template-columns:1fr}}.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:1rem;background:radial-gradient(circle at 15% 10%,rgba(31,107,79,.12),transparent 38%),radial-gradient(circle at 85% 90%,rgba(47,111,237,.08),transparent 32%),#f3f5f7}.auth-card{width:min(440px,100%)}.demo-users{font-size:.82rem;color:var(--muted);line-height:1.45}.linkish{border:0;background:transparent;color:var(--accent);padding:0;font-weight:600}.auth-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;padding:.3rem;border-radius:10px;background:#eef2f6}.auth-mode-btn{border:0;background:transparent;border-radius:8px;padding:.55rem .75rem;font:inherit;font-weight:600;color:var(--muted);cursor:pointer}.auth-mode-btn.active{background:#fff;color:var(--ink);box-shadow:0 1px 2px #10182814}.auth-google-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;width:100%;background:#fff!important;color:#1f1f1f!important;border:1px solid #dadce0;font-weight:600}.auth-google-btn:hover:not(:disabled){background:#f8f9fa!important;border-color:#c6c9ce}.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;color:var(--muted);font-size:.8rem}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:#e5e7eb}.password-rules{list-style:none;margin:.4rem 0 0;padding:0;font-size:.78rem;color:var(--muted);display:grid;gap:.15rem}.password-rules li:before{content:"○ "}.password-rules li.ok{color:var(--accent, #1f6b4f)}.password-rules li.ok:before{content:"● "}.forms-admin-lead{margin:0}.forms-toast{margin:0;color:var(--accent, #1f6b4f);font-size:.9rem;font-weight:600}.forms-admin-toolbar{display:flex;justify-content:flex-start}.forms-empty{padding:1.5rem .25rem}.forms-empty strong{display:block;margin-bottom:.25rem}.forms-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.forms-list-item{display:flex;align-items:center;gap:.65rem;padding:.7rem .85rem;background:#fff;border:1px solid var(--line, #e4e7eb);border-radius:10px}.forms-list-main{flex:1;min-width:0;text-align:left;border:0;background:transparent;padding:0;cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.forms-list-title{font-weight:650;color:var(--ink)}.forms-list-meta{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--muted)}.forms-status-dot{width:.45rem;height:.45rem;border-radius:50%;display:inline-block}.forms-status-dot.on{background:#1f6b4f}.forms-status-dot.off{background:#b0b7c0}.forms-action-select{width:auto;min-width:7.5rem;max-width:9rem;flex-shrink:0}.forms-builder{display:flex;flex-direction:column;gap:.75rem;margin:0 -.25rem}.forms-builder-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;padding:.35rem .15rem}.forms-builder-top-left,.forms-builder-top-right{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;min-width:0}.forms-builder-title{border:0;background:transparent;font-size:1.05rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);min-width:10rem;max-width:min(28rem,50vw);padding:.25rem .4rem;border-radius:8px}.forms-builder-title:hover,.forms-builder-title:focus{background:#fff;outline:1px solid var(--line)}.forms-builder-body{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:0;min-height:520px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.forms-canvas{background:#f4f6f8;padding:1.25rem 1.35rem 1.75rem;overflow:auto;border-right:1px solid var(--line)}.forms-canvas-card{max-width:520px;margin:0 auto;background:#fff;border:1px solid #e2e7ec;border-radius:14px;overflow:hidden;box-shadow:0 8px 28px #1428320d}.forms-canvas-banner{height:8px;background:linear-gradient(90deg,#1f6b4f,#3d9b74 55%,#7bc4a0)}.forms-canvas-intro{padding:1.15rem 1.25rem .5rem}.forms-canvas-intro h2{margin:0 0 .45rem;font-size:1.25rem;letter-spacing:-.02em}.forms-canvas-intro-input{width:100%;border:1px solid transparent;border-radius:8px;resize:vertical;padding:.35rem .45rem;color:var(--muted);background:transparent;line-height:1.45}.forms-canvas-intro-input:hover,.forms-canvas-intro-input:focus{border-color:var(--line);background:#fafbfc;outline:none;color:var(--ink)}.forms-canvas-fields{padding:.35rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.65rem}.forms-preview-block{position:relative;text-align:left;width:100%;border:1px solid #e8ecf0;background:#fff;border-radius:10px;padding:.55rem .85rem .85rem;cursor:pointer;display:flex;flex-direction:column;gap:.4rem;transition:border-color .12s ease,box-shadow .12s ease,opacity .12s ease}.forms-preview-block:hover{border-color:#c9d3dc}.forms-preview-block.selected{border-color:#1f6b4f;box-shadow:0 0 0 3px #1f6b4f1f}.forms-preview-block.dragging{opacity:.45}.forms-preview-block.drop-target{border-color:#1f6b4f;box-shadow:0 -3px #1f6b4f}.forms-preview-block.heading{background:transparent;border-style:dashed;padding-bottom:.65rem}.forms-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.35rem;min-height:1.65rem;margin:0 -.2rem}.forms-preview-toolbar-right{display:flex;align-items:center;gap:.35rem;margin-left:auto}.forms-preview-toolbar-actions{display:flex;align-items:center;gap:.05rem;opacity:0;pointer-events:none;transition:opacity .12s ease}.forms-preview-block:hover .forms-preview-toolbar-actions,.forms-preview-block.selected .forms-preview-toolbar-actions,.forms-preview-block:focus-within .forms-preview-toolbar-actions{opacity:1;pointer-events:auto}.forms-req-toggle{display:inline-flex;align-items:center;gap:.35rem;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.1rem .15rem;border-radius:999px}.forms-req-toggle input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}.forms-req-toggle-label{font-size:.72rem;font-weight:650;color:var(--muted);letter-spacing:.01em}.forms-req-toggle.on .forms-req-toggle-label{color:#1f6b4f}.forms-req-toggle-track{width:1.85rem;height:1.05rem;border-radius:999px;background:#d5dbe3;position:relative;transition:background .15s ease;flex-shrink:0}.forms-req-toggle.on .forms-req-toggle-track{background:#1f6b4f}.forms-req-toggle-thumb{position:absolute;top:2px;left:2px;width:.78rem;height:.78rem;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0000002e;transition:transform .15s ease}.forms-req-toggle.on .forms-req-toggle-thumb{transform:translate(.78rem)}.forms-drag-handle{border:0;background:transparent;color:#9aa4af;cursor:grab;padding:.15rem .3rem;border-radius:6px;line-height:1;opacity:.55}.forms-drag-handle:hover,.forms-preview-block.selected .forms-drag-handle,.forms-preview-block:hover .forms-drag-handle{opacity:1;background:#eef2f4;color:var(--ink)}.forms-drag-handle:active{cursor:grabbing}.forms-drag-dots{font-size:.95rem;letter-spacing:-.05em;display:block}.forms-preview-heading{font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.forms-preview-label{font-size:.86rem;font-weight:650;color:var(--ink);padding-right:1.5rem}.forms-preview-req{color:#c0392b;margin-left:.15rem}.forms-preview-control{height:2.15rem;border:1px solid #d7dee5;border-radius:8px;background:#fbfcfd}.forms-preview-control.tall{height:4.25rem}.forms-preview-control.select-like,.forms-preview-control.file-like,.forms-preview-control.muted-ph{display:flex;align-items:center;padding:0 .7rem;color:var(--muted);font-size:.86rem}.forms-preview-select{width:100%;min-height:2.15rem;cursor:pointer}.forms-inline-choices{margin-top:.15rem}.forms-inline-choices .label{margin-bottom:.25rem}.forms-preview-control.file-like{border-style:dashed;background:#f7f9fa}.forms-preview-index{position:absolute;top:2.15rem;right:.65rem;font-size:.7rem;color:#a0aab4;font-weight:650}.forms-preview-block.heading .forms-preview-index{top:2rem}.forms-drop-hint{margin-top:.15rem;border:1.5px dashed #b7cfc4;background:#eef7f2;color:#1f6b4f;border-radius:10px;padding:.95rem 1rem;font-weight:650;font-size:.9rem;cursor:pointer}.forms-drop-hint:hover{background:#e4f2eb}.forms-sidebar{background:#fafbfc;display:flex;flex-direction:column;min-height:0}.forms-side-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);background:#fff}.forms-side-tabs button{border:0;background:transparent;padding:.75rem .5rem;font-weight:650;color:var(--muted);border-bottom:2px solid transparent}.forms-side-tabs button.active{color:var(--ink);border-bottom-color:#1f6b4f}.forms-side-pane{padding:.9rem .85rem 1rem;overflow:auto;flex:1;display:flex;flex-direction:column;gap:1rem}.forms-side-note{margin:0;font-size:.84rem;line-height:1.45}.forms-field-editor-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.forms-type-chip{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:650;color:var(--muted);background:#eef1f4;border-radius:999px;padding:.2rem .55rem .2rem .3rem}.forms-type-chip-icon,.forms-type-item-icon{width:1.35rem;height:1.35rem;border-radius:6px;background:#fff;border:1px solid #e2e7ec;display:grid;place-items:center;font-size:.72rem;font-weight:700;color:var(--ink)}.forms-check{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem;width:fit-content}.forms-hint{font-size:.78rem;margin-top:.25rem;display:block}.forms-add-palette-label{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:.45rem}.forms-type-list{display:flex;flex-direction:column;gap:.25rem}.forms-type-item{display:flex;align-items:center;gap:.55rem;width:100%;text-align:left;border:1px solid transparent;background:#fff;border-radius:8px;padding:.45rem .5rem;color:var(--ink);font-weight:550}.forms-type-item:hover{border-color:#d7dee5;background:#f7f9fa}.forms-q-actions{display:flex;align-items:center;gap:.1rem}.forms-icon-btn{width:1.65rem;height:1.65rem;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:.9rem;line-height:1;display:grid;place-items:center}.forms-icon-btn:hover:not(:disabled){background:#eef2f4;color:var(--ink)}.forms-icon-btn:disabled{opacity:.28;cursor:default}.forms-icon-btn.danger:hover:not(:disabled){background:#fdecea;color:#c0392b}.forms-builder-foot{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.15rem .15rem .35rem}.forms-builder-foot-actions{display:flex;align-items:center;gap:.45rem}.forms-field{min-width:0}@media(max-width:980px){.forms-builder-body{grid-template-columns:1fr;min-height:0}.forms-canvas{border-right:0;border-bottom:1px solid var(--line);max-height:55vh}.forms-sidebar{min-height:320px}}.public-form-page{min-height:100vh;display:grid;place-items:start center;padding:2rem 1rem 3rem;background:linear-gradient(180deg,#e8f2ed,#f3f5f7 42%,#f3f5f7)}.public-form-shell{width:min(560px,100%)}.public-form-panel{background:#fff;border:1px solid #dde3e8;border-radius:16px;box-shadow:0 12px 40px #1428320f;padding:0 1.5rem 1.5rem;overflow:hidden;display:flex;flex-direction:column;gap:1rem}.public-form-banner{height:112px;margin:0 -1.5rem;background-size:cover;background-position:center}.public-form-banner-plain{height:8px;background:linear-gradient(90deg,#1f6b4f,#3d9b74 55%,#7bc4a0)}.public-form-header{padding-top:.35rem}.public-form-header h1{margin:0 0 .35rem;font-size:1.45rem;letter-spacing:-.02em;line-height:1.25}.public-form-header p{margin:0;color:var(--muted);line-height:1.45}.public-form-fields{display:flex;flex-direction:column;gap:1rem}.public-form-field label{display:block;font-size:.84rem;font-weight:600;color:var(--ink);margin-bottom:.35rem}.public-form-optional{font-weight:500;color:var(--muted);font-size:.78rem}.public-form-req{color:#c0392b;margin-left:.15rem}.public-form-section{margin:.35rem 0 0;padding-top:.5rem;border-top:1px solid #eef0f3;font-size:1rem;letter-spacing:-.01em}.public-form-file{display:flex;align-items:center;min-height:2.5rem;padding:.55rem .75rem;border:1px dashed #c5ced6;border-radius:10px;background:#f8fafb;cursor:pointer;color:var(--muted);font-size:.9rem}.public-form-file:hover{border-color:#1f6b4f;color:var(--ink)}.public-form-file input[type=file]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.public-form-submit{width:100%;margin-top:.25rem;justify-content:center}.public-form-done{text-align:center;padding:2.5rem 1.5rem;align-items:center}.public-form-done h1{margin:0;font-size:1.35rem}.public-form-done p{margin:0;color:var(--muted)}.public-form-check{width:2.75rem;height:2.75rem;border-radius:999px;background:#e7f4ee;color:#1f6b4f;display:grid;place-items:center;font-size:1.25rem;font-weight:700;margin-bottom:.25rem}.inbox-page{max-width:820px}.inbox-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.inbox-head h1{margin:0 0 .2rem}.inbox-head-actions{display:flex;gap:.4rem;flex-wrap:wrap}.inbox-tabs{display:flex;gap:.15rem;border-bottom:1px solid var(--line);margin-bottom:.85rem}.inbox-tab{border:0;background:transparent;padding:.65rem .85rem;font-weight:650;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.inbox-tab.active{color:var(--ink);border-bottom-color:#1f6b4f}.inbox-filters{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;margin-bottom:.85rem}.inbox-filters .input{width:auto;min-width:8rem}.inbox-check{display:inline-flex;align-items:center;gap:.35rem;font-size:.88rem}.inbox-empty{padding:2rem .5rem;text-align:center}.inbox-list{list-style:none;margin:0;padding:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.inbox-row{display:flex;align-items:stretch;border-bottom:1px solid #eef1f4}.inbox-row:last-child{border-bottom:0}.inbox-row-main{flex:1;min-width:0;display:flex;align-items:flex-start;gap:.7rem;text-align:left;border:0;background:transparent;padding:.85rem .75rem .85rem .9rem;cursor:pointer}.density-compact .inbox-row-main{padding:.5rem .65rem}.inbox-row.unread .inbox-row-main{background:#f6faf8}.inbox-row-main:hover{background:#f3f6f8}.inbox-dot{width:.45rem;height:.45rem;border-radius:50%;margin-top:.7rem;flex-shrink:0;background:transparent}.inbox-row.unread .inbox-dot{background:#1f6b4f}.inbox-row-body{flex:1;min-width:0}.inbox-row-top{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.15rem}.inbox-type{font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.inbox-time{font-size:.78rem;color:var(--muted)}.inbox-text{font-size:.92rem;color:var(--ink);line-height:1.35}.inbox-row.unread .inbox-text{font-weight:650}.inbox-row-actions{display:flex;align-items:center;gap:.1rem;padding-right:.45rem}.inbox-icon-btn{width:1.85rem;height:1.85rem;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.inbox-icon-btn:hover{background:#eef2f4;color:var(--ink)}.inbox-icon-btn.on{color:#c9a227}.inbox-manage-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#141e2859;display:grid;place-items:center;z-index:80;padding:1rem}.inbox-manage-panel{width:min(480px,100%);padding:1.1rem 1.2rem;max-height:min(80vh,560px);overflow:auto}.inbox-manage-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem}.inbox-manage-list li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem 0;border-bottom:1px solid #eef1f4;font-size:.9rem}.inbox-manage-list li.inbox-manage-head{border-bottom:none;padding-bottom:0;font-size:.75rem;color:var(--muted, #6b7280);font-weight:600;text-transform:uppercase;letter-spacing:.02em}.inbox-manage-cols{display:flex;align-items:center;justify-content:flex-end;gap:1.1rem;flex-shrink:0;min-width:7.5rem}.inbox-manage-head .inbox-manage-cols span{width:2.6rem;text-align:center}.ops{width:100%;min-height:calc(100vh - 57px);display:grid;grid-template-rows:auto auto;background:var(--bg)}.ops-top{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:.55rem 1.15rem;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:var(--app-header-height);z-index:35}.ops-top-left{display:flex;align-items:center;gap:.85rem;min-width:0}.ops-back{color:var(--warn);font-size:.84rem;white-space:nowrap;padding:.25rem .55rem;border:1px solid #f0d4a8;border-radius:8px;background:var(--warn-soft);cursor:pointer;font-weight:600}.ops-back:hover{color:#8a3500;background:#ffecd2;border-color:var(--warn)}.ops-title-block{min-width:0}.ops-title{font-weight:700;font-size:.95rem;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-subtitle{font-size:.78rem;color:var(--muted);display:flex;gap:.35rem;align-items:center;flex-wrap:wrap}.ops-sep{opacity:.45}.presence-inline{display:inline-flex;align-items:center;gap:.3rem}.presence-inline.on{color:var(--ok)}.ops-actions{display:flex;gap:.35rem;align-items:center;flex-shrink:0}.ops-actions a,.ops-actions button.linkish{padding:.35rem .65rem;border-radius:7px;border:0;background:transparent;color:var(--muted);font-size:.84rem;font-weight:500}.ops-actions a:hover,.ops-actions button.linkish:hover{background:#f2f4f7;color:var(--ink)}.ops-top-right{display:flex;align-items:center;gap:.85rem;flex-shrink:0}.project-completion-donut{position:relative;width:48px;height:48px;flex:0 0 auto;padding:0;border:0;background:transparent;border-radius:50%;cursor:pointer}.project-completion-donut:hover .project-completion-donut-track{stroke:#dde2ea}.project-completion-donut:focus-visible{outline:2px solid #067647;outline-offset:2px}.project-completion-donut-track{stroke:#e8ebf0}.project-completion-donut-arc{stroke:#067647;transition:stroke-dashoffset .35s ease}.project-completion-donut-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.68rem;font-weight:700;letter-spacing:-.02em;color:var(--ink);pointer-events:none}.project-completion-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:1rem;background:#0f172a59}.project-completion-report{width:min(720px,100%);max-height:min(80vh,640px);display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.15rem 1.1rem;border-radius:14px;background:#fff;border:1px solid #e6eaf0;box-shadow:0 16px 40px #0f172a2e}.project-completion-report-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.project-completion-report-actions{display:flex;align-items:center;gap:.45rem;flex-shrink:0}.project-completion-pdf-btn.is-cooldown,.project-completion-pdf-btn:disabled{filter:grayscale(1);opacity:.55;cursor:not-allowed;pointer-events:none}.project-completion-pdf-success{margin:.35rem 0 0;font-size:.8rem;font-weight:600;color:#15803d}.project-completion-pdf-error{margin:.35rem 0 0;font-size:.8rem}.project-completion-report-head h2{margin:0;font-size:1.05rem}.project-completion-report-summary{margin:.2rem 0 0;font-size:.85rem}.project-completion-report-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;min-height:0;flex:1;overflow:hidden}@media(max-width:640px){.project-completion-report-grid{grid-template-columns:1fr;overflow:auto}}.project-completion-report-col{min-height:0;display:flex;flex-direction:column;gap:.45rem;padding:.75rem .8rem;border:1px solid #eef1f5;border-radius:12px;background:#fafbfc;overflow:hidden}.project-completion-report-col.is-done{background:#f4faf6;border-color:#d7ebe0}.project-completion-report-col h3{margin:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.project-completion-report-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:999px;background:#e8ebf0;color:var(--ink);font-size:.72rem;font-weight:700;letter-spacing:0;text-transform:none}.project-completion-report-col.is-done .project-completion-report-count{background:#d7ebe0;color:#067647}.project-completion-report-list{list-style:none;margin:0;padding:0;overflow:auto;display:flex;flex-direction:column;gap:.3rem;min-height:0;flex:1}.project-completion-report-empty{margin:.35rem 0 0;font-size:.85rem}.project-completion-report-task{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;width:100%;padding:.5rem .55rem;border:1px solid transparent;border-radius:8px;background:#fff;text-align:left;cursor:pointer}.project-completion-report-task:hover{border-color:#d7dde8;background:#fff;box-shadow:0 1px 2px #0f172a0a}.project-completion-report-task-title{font-size:.88rem;font-weight:600;color:var(--ink);line-height:1.25}.project-completion-report-task-meta{display:flex;flex-wrap:wrap;gap:.25rem .55rem;align-items:center;font-size:.75rem}.project-completion-report-status{display:inline-flex;align-items:center;padding:.05rem .35rem;border-radius:999px;border:1px solid #e5e7eb;font-weight:600;font-size:.68rem}.project-completion-report-opportunity{color:var(--ink);font-weight:500;max-width:12rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ops-settings-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem!important;border:1px solid var(--line)!important;background:#fff!important;color:var(--ink)!important;border-radius:8px!important;font-weight:600!important}.ops-settings-btn:hover{background:#f2f4f7!important;border-color:var(--line-strong)!important}.ops-messages-btn{background:#eef7f2!important;border-color:#b7d9c8!important;color:#1f6b4f!important;position:relative}.ops-messages-btn:hover{background:#e2f1e9!important;border-color:#8fc0a6!important}.ops-msg-unread{position:absolute;top:-.35rem;right:-.35rem;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.65rem;line-height:1.1rem}.home-msg-client{position:relative}.home-msg-client .nav-unread-badge{position:absolute;top:-.35rem;right:-.35rem}.ops-nav-link{font-weight:600!important}.account-menu{position:relative;margin-left:.25rem}.account-menu-sidebar{margin-left:0;width:100%}.account-menu-trigger{position:relative;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;border-radius:999px;padding:2px;cursor:pointer}.account-menu-trigger:hover{border-color:var(--line-strong)}.account-menu-foot-trigger{width:100%;display:flex;align-items:center;gap:.55rem;border:0;background:transparent;border-radius:10px;padding:.45rem .4rem;cursor:pointer;text-align:left}.account-menu-foot-trigger:hover{background:#eef1f4}.account-trigger-avatar-wrap{position:relative;flex-shrink:0}.account-foot-meta{min-width:0;display:flex;flex-direction:column}.account-foot-meta strong{font-size:.82rem;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-foot-meta span{font-size:.7rem;color:var(--muted);text-transform:capitalize;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-trigger-dot{position:absolute;right:0;bottom:0;box-shadow:0 0 0 2px #fff}.account-menu-panel{position:absolute;left:0;top:calc(100% + 8px);width:300px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px #1a233229;z-index:80;padding:.35rem 0;overflow:hidden}.account-menu.placement-up .account-menu-panel{top:auto;bottom:calc(100% + 8px);left:0}.account-menu-sidebar .account-menu-panel{left:0;right:auto;width:min(300px,calc(100vw - 2rem))}.account-menu-header{display:flex;gap:.7rem;padding:.85rem .95rem .75rem;align-items:flex-start}.account-menu-name{display:flex;align-items:center;gap:.4rem;font-weight:700;font-size:.95rem}.account-menu-email{font-size:.78rem;color:var(--muted);margin-top:.1rem;word-break:break-all}.account-menu-status{font-size:.75rem;margin-top:.2rem}.account-menu-divider{height:1px;background:var(--line);margin:.25rem 0}.account-menu-section{padding:.2rem .35rem}.account-menu-item{width:100%;display:flex;align-items:center;gap:.65rem;border:0;background:transparent;text-align:left;padding:.55rem .6rem;border-radius:8px;color:var(--ink);font-size:.88rem;font-weight:500;cursor:pointer;text-decoration:none}.account-menu-item:hover{background:#f2f4f7}.account-menu-item.danger{color:var(--danger)}.account-menu-icon{width:1.15rem;display:inline-flex;align-items:center;justify-content:center;color:var(--muted);flex-shrink:0}.account-menu-item.danger .account-menu-icon{color:var(--danger)}.account-ooo-panel{padding:.45rem .6rem .65rem}.admin-console{width:min(1200px,100%);margin:0 auto}.csm-audit-layout{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:1rem;align-items:stretch;min-height:420px}@media(max-width:800px){.csm-audit-layout{grid-template-columns:1fr}}.csm-audit-list,.csm-audit-detail{min-height:360px}.csm-audit-thread-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem;max-height:60vh;overflow:auto}.csm-audit-thread{width:100%;text-align:left;border:1px solid #e8ecf0;background:#fff;border-radius:8px;padding:.65rem .75rem;cursor:pointer;display:flex;flex-direction:column;gap:.15rem}.csm-audit-thread:hover{border-color:#cfd8e0;background:#f8fafb}.csm-audit-thread.active{border-color:#2f6fed;background:#f3f7ff}.csm-audit-thread-title{font-weight:600;font-size:.92rem}.csm-audit-thread-meta,.csm-audit-thread-time{font-size:.8rem}.csm-audit-chat{max-height:55vh;overflow:auto}.chat-thread-card{padding:0!important;overflow:hidden}.chat-thread{display:flex;flex-direction:column;min-height:420px;max-height:min(70vh,640px)}.chat-thread-head{display:flex;align-items:center;gap:.7rem;padding:.85rem 1rem;border-bottom:1px solid #e8ecf0;background:#fafbfc}.chat-thread-head-text{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.chat-thread-head-actions{flex-shrink:0;margin-left:auto}.chat-thread-head-text strong{font-size:.98rem}.chat-presence{font-size:.78rem;color:var(--muted, #6b7280)}.chat-presence.on{color:#1f6b4f;font-weight:600}.chat-thread-scroll{flex:1;overflow:auto;padding:.85rem 1rem 1rem;display:flex;flex-direction:column;gap:.35rem;background:radial-gradient(circle at 12% 8%,rgba(31,107,79,.04),transparent 42%),#f7f8fa}.chat-thread-empty{margin:auto;text-align:center}.chat-date-divider{display:flex;justify-content:center;margin:.55rem 0}.chat-date-divider span{font-size:.72rem;font-weight:600;color:#5b6570;background:#ffffffe6;border:1px solid #e4e8ec;border-radius:999px;padding:.2rem .65rem}.chat-row{display:flex;align-items:flex-end;gap:.4rem;max-width:100%}.chat-row.own{justify-content:flex-end}.chat-row.peer{justify-content:flex-start}.chat-row.grouped .chat-row-avatar{visibility:hidden}.chat-row-avatar{width:28px;flex-shrink:0}.chat-bubble{max-width:min(420px,78%);padding:.55rem .75rem .4rem;border-radius:16px;box-shadow:0 1px 1px #141e280a;word-break:break-word}.chat-bubble.peer{background:#fff;border:1px solid #e7ebef;border-bottom-left-radius:6px}.chat-bubble.own{background:#d9efe4;border:1px solid #b7d9c8;border-bottom-right-radius:6px}.chat-bubble-text{font-size:.92rem;line-height:1.4;white-space:pre-wrap}.chat-bubble-meta{display:flex;justify-content:flex-end;align-items:center;gap:.35rem;margin-top:.25rem;font-size:.68rem;color:#6b7280}.chat-receipt.sent{opacity:.65}.chat-receipt.read{color:#1f6b4f;font-weight:700}.chat-attach-image-btn{display:block;border:0;background:transparent;padding:0;margin-top:.35rem;cursor:pointer}.chat-attach-image{display:block;max-width:240px;max-height:200px;border-radius:10px;object-fit:cover}.chat-attach-card{display:flex;align-items:center;gap:.55rem;margin-top:.4rem;padding:.45rem .55rem;border-radius:10px;border:1px solid #d7dee5;background:#f4f7f9;cursor:pointer;text-align:left;width:100%}.chat-attach-card.own{background:#ffffff8c;border-color:#9fcbb5}.chat-attach-icon{width:28px;height:28px;border-radius:7px;background:linear-gradient(135deg,#e8eef4,#d5dee8);flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem}.chat-attach-meta{display:flex;flex-direction:column;min-width:0}.chat-attach-name{font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-attach-size{font-size:.72rem;color:#6b7280}.chat-composer{border-top:1px solid #e8ecf0;padding:.65rem .85rem .85rem;background:#fff}.chat-composer-row{display:flex;align-items:center;gap:.45rem}.chat-composer-input{flex:1}.chat-emoji-wrap{position:relative}.chat-emoji-pop{position:absolute;bottom:calc(100% + .4rem);left:0;z-index:20;width:min(17.5rem,calc(100vw - 2rem));max-height:16rem;overflow-y:auto;padding:.5rem .45rem .55rem;background:#fff;border:1px solid #d7dee5;border-radius:10px;box-shadow:0 8px 24px #141e281f}.chat-emoji-group+.chat-emoji-group{margin-top:.55rem;padding-top:.45rem;border-top:1px solid #eef1f4}.chat-emoji-group-label{font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 .2rem .35rem}.chat-emoji-grid{display:grid;grid-template-columns:repeat(8,1.7rem);gap:.15rem}.chat-emoji-item{width:1.7rem;height:1.7rem;border:0;background:transparent;border-radius:6px;cursor:pointer;font-size:1.05rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;padding:0}.chat-emoji-item:hover{background:#f2f5f8}.chat-attach-btn{width:38px;height:38px;border-radius:10px;border:1px solid #d7dee5;background:#f7f9fb;color:#334155;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.05rem;line-height:1}.chat-attach-btn:hover{background:#eef2f5}.chat-pending{display:flex;align-items:center;gap:.55rem;margin-bottom:.45rem;font-size:.85rem}.chat-pending-thumb{width:44px;height:44px;object-fit:cover;border-radius:8px;border:1px solid #d7dee5}.chat-pending-file{font-weight:600}.chat-thread-error{margin:0;padding:0 .85rem}.chat-readonly{margin:0;padding:.75rem 1rem;border-top:1px solid #e8ecf0;font-size:.85rem}.chat-composer-blocked{text-align:center;line-height:1.4}.chat-thread.is-compact{min-height:360px;max-height:480px}.client-chat-dock{position:fixed;right:1.15rem;bottom:1.15rem;z-index:70;display:flex;flex-direction:column;align-items:flex-end;gap:.65rem;pointer-events:none}.client-chat-dock>*{pointer-events:auto}.client-chat-panel{width:min(380px,calc(100vw - 1.5rem));max-height:calc(100dvh - 6.75rem);padding:0!important;overflow:hidden;box-shadow:0 12px 40px #141e282e;border:1px solid #d7dee5}.client-chat-panel .chat-thread.is-compact{min-height:min(360px,calc(100dvh - 6.75rem));max-height:min(480px,calc(100dvh - 6.75rem))}.client-chat-empty{padding:.85rem 1rem 1rem}.client-chat-collapse{width:30px;height:30px;border-radius:8px;border:1px solid #d7dee5;background:#fff;color:#334155;font-size:1.15rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.client-chat-collapse:hover{background:#f2f5f8}.client-chat-bubble{position:relative;width:56px;height:56px;border-radius:999px;border:2px solid #fff;background:#1f6b4f;box-shadow:0 8px 24px #141e2833;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.client-chat-bubble:hover{transform:translateY(-1px)}.client-chat-bubble.is-open{box-shadow:0 4px 14px #141e2829}.client-chat-badge{position:absolute;top:-2px;right:-2px}.csm-chat-bubble{background:#0f766e}.csm-chat-audit-banner{padding:.45rem .85rem;background:#fff7ed;border-bottom:1px solid #fed7aa;color:#9a3412;font-size:.78rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.csm-audit-export{display:flex;flex-direction:column;gap:.45rem;padding:.75rem .85rem;border:1px solid #e8ebef;border-radius:10px;background:#f8fafc}.csm-audit-export-title{font-size:.9rem}.csm-audit-export-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-end}.csm-audit-export-field{display:flex;flex-direction:column;gap:.2rem;font-size:.78rem}.csm-audit-export-field .input{min-width:9.5rem}.transcript-export{display:flex;flex-direction:column;gap:.6rem;padding:.85rem .95rem;border:1px solid #e6eaf0;border-radius:12px;background:linear-gradient(180deg,#fbfcfe,#f5f7fa)}.transcript-export-head{display:flex;align-items:flex-start;gap:.6rem}.transcript-export-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:8px;background:#e8efff;color:#3b5bdb}.transcript-export-heading{display:flex;flex-direction:column;gap:.1rem;min-width:0}.transcript-export-heading strong{font-size:.92rem}.transcript-export-heading .muted{font-size:.78rem;line-height:1.35}.transcript-export-presets{display:flex;flex-wrap:wrap;gap:.35rem}.transcript-export-chip{border:1px solid #dfe4ec;background:#fff;color:#495057;border-radius:999px;padding:.24rem .7rem;font-size:.78rem;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.transcript-export-chip:hover{background:#f1f3f7;border-color:#ccd3de}.transcript-export-chip.active{background:#3b5bdb;border-color:#3b5bdb;color:#fff}.transcript-export-chip:focus-visible{outline:2px solid #3b5bdb;outline-offset:2px}.transcript-export-row{display:flex;flex-wrap:wrap;gap:.6rem;align-items:flex-end}.transcript-export-field{display:flex;flex-direction:column;gap:.2rem;font-size:.76rem}.transcript-export-field .input{min-width:9.5rem}.transcript-export-btn{display:inline-flex;align-items:center;gap:.4rem;min-width:10.5rem;justify-content:center}.transcript-export-btn.is-done{background:#2f9e44;border-color:#2f9e44;color:#fff}.transcript-export-spin{animation:transcript-export-spin .9s linear infinite}@keyframes transcript-export-spin{to{transform:rotate(360deg)}}.transcript-export-summary{display:flex;align-items:center;gap:.35rem;margin:0;font-size:.78rem;color:#6b7280}.transcript-export-summary.is-invalid{color:#c92a2a;font-weight:500}.reporting-manager-options{display:flex;flex-direction:column;gap:.25rem;max-height:180px;overflow:auto;border:1px solid #e6eaf0;border-radius:8px;padding:.35rem;background:#fff}.reporting-manager-option{display:flex;flex-direction:column;align-items:flex-start;gap:.05rem;width:100%;text-align:left;border:0;background:transparent;border-radius:6px;padding:.4rem .55rem;cursor:pointer}.reporting-manager-option:hover{background:#f1f3f7}.reporting-manager-option.active{background:#e8efff}.reporting-manager-option .muted{font-size:.78rem}.csm-directory-name-link{display:inline-flex;align-items:center;gap:.55rem;color:inherit;text-decoration:none;font-weight:600}.csm-directory-name-link:hover{color:#3b5bdb}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.chat{display:flex;flex-direction:column;gap:.55rem;padding:.35rem 0}.chat .bubble{align-self:flex-start;max-width:min(520px,92%);padding:.55rem .75rem;border-radius:10px;background:#f1f4f7;white-space:pre-wrap;word-break:break-word;font-size:.92rem}.chat .bubble.mine{align-self:flex-end;background:#e7eefc}.admin-console-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.15rem}.admin-console-head h1{margin:0 0 .25rem;font-size:1.45rem;letter-spacing:-.03em}.admin-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:1.25rem;align-items:start}.admin-main{min-height:320px}.admin-project-hit{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;text-align:left;padding:.65rem .75rem;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;font:inherit}.admin-project-hit:hover{border-color:var(--line-strong, #94a3b8);background:#f8fafc}.admin-comment-row{border:1px solid var(--line);border-radius:10px;padding:.7rem .85rem;background:#fff}.admin-comment-row.is-deleted{background:#f8fafc;opacity:.85}.admin-audit-export .label{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem}.settings-side-nav a.settings-nav-item{text-decoration:none}.settings-nav-group{display:flex;flex-direction:column;gap:.1rem;margin:.35rem 0}.settings-nav-group-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.35rem .7rem .15rem}.settings-nav-item.nested{padding-left:1.15rem;font-size:.88rem}.data-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}.data-table{width:100%;border-collapse:collapse;font-size:.88rem;table-layout:auto}.data-table th,.data-table td{text-align:left;padding:.7rem .85rem;border-bottom:1px solid var(--line);vertical-align:middle}.data-table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:#fafbfc;white-space:nowrap}.data-table td[data-col=description]{max-width:280px}.data-table td[data-col=description] .role-desc-cell{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);line-height:1.35}.data-table td[data-col=actions]{width:48px;padding-left:.35rem;padding-right:.5rem;overflow:visible}.data-table tbody tr:hover{background:#f8fafb}.data-table tbody tr:last-child td{border-bottom:0}.anchored-menu-trigger-wrap{display:inline-flex}.anchored-menu-panel{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 40px #1a233229;padding:.35rem;max-height:min(70vh,360px);overflow:auto}.data-table-sort{border:0;background:transparent;padding:0;color:inherit;font:inherit;display:inline-flex;align-items:center;gap:.3rem;cursor:pointer}.data-table-sort.active{color:var(--ink)}.sort-caret{font-size:.7rem;opacity:.55}.data-table-empty{padding:2rem 1rem;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px;background:#fff}.admin-users-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.admin-users-tabs{display:flex;gap:.15rem;border-bottom:1px solid var(--line);overflow-x:auto}.admin-users-tab{border:0;background:transparent;padding:.65rem .85rem;color:var(--muted);font-weight:600;font-size:.88rem;border-bottom:2px solid transparent;margin-bottom:-1px}.admin-users-tab.active{color:var(--blue);border-bottom-color:var(--blue)}.admin-users-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.admin-users-search{max-width:360px;flex:1;min-width:200px}.admin-users-toolbar-right{display:flex;align-items:center;gap:.65rem}.cols-picker{position:relative}.cols-picker-menu{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);padding:.45rem;z-index:30;min-width:160px}.cols-picker-item{display:flex;align-items:center;gap:.45rem;padding:.35rem .45rem;font-size:.85rem;border-radius:6px}.cols-picker-item:hover{background:#f2f4f7}.admin-user-name{display:flex;align-items:center;gap:.65rem;min-width:180px}.admin-user-name-text{min-width:0}.admin-user-email{font-size:.78rem}.admin-role-pill,.admin-status-pill{display:inline-flex;align-items:center;padding:.15rem .5rem;border-radius:999px;font-size:.78rem;font-weight:600;background:#f2f4f7;color:var(--ink);text-transform:capitalize}.admin-role-pill.is-muted{color:var(--muted);font-weight:500}.admin-status-pill.status-active{background:var(--ok-soft);color:var(--ok)}.admin-status-pill.status-removed{background:#f2f4f7;color:var(--muted)}.admin-status-pill.status-paused{background:var(--warn-soft);color:var(--warn)}.admin-status-pill.status-invited{background:var(--blue-soft);color:var(--blue)}.row-actions-menu{min-width:0}.row-actions-trigger{border:0;background:transparent;color:var(--muted);font-weight:700;letter-spacing:.08em;padding:.25rem .45rem;border-radius:6px;line-height:1}.row-actions-trigger:hover,.row-actions-trigger.is-open{background:#eef1f4;color:var(--ink)}.row-menu-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;text-align:left;border:0;background:transparent;padding:.5rem .6rem;border-radius:8px;cursor:pointer}.row-menu-item:hover{background:#f2f4f7}.row-menu-title{font-size:.88rem;font-weight:600;color:var(--ink)}.row-menu-sub{font-size:.75rem;color:var(--muted);font-weight:400}.row-menu-item.danger .row-menu-title{color:var(--danger)}.row-menu-divider{height:1px;background:var(--line);margin:.3rem .2rem}.row-menu-section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.35rem .55rem .15rem}.row-menu-back{width:100%;text-align:left;border:0;background:transparent;padding:.45rem .55rem;border-radius:6px;font-size:.82rem;color:var(--muted)}.row-menu-back:hover{background:#f2f4f7}.anchored-menu-panel.row-actions-menu button,.anchored-menu-panel button[role=menuitem]{width:100%;text-align:left;border:0;background:transparent;padding:.45rem .55rem;border-radius:6px;font-size:.86rem;cursor:pointer;display:block}.anchored-menu-panel.row-actions-menu button:hover,.anchored-menu-panel button[role=menuitem]:hover,.anchored-menu-panel button.active{background:#f2f4f7}.anchored-menu-panel button.danger{color:var(--danger)}.row-actions-roles{max-height:240px;overflow:auto}.data-table td[data-col=actions]{width:44px;padding-left:.25rem;padding-right:.25rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a233259;display:grid;place-items:center;z-index:100;padding:1rem;animation:overlay-backdrop-in .18s ease}.modal-card{width:min(480px,100%);background:#fff;border-radius:14px;border:1px solid var(--line);box-shadow:0 16px 48px #1a233233;padding:1.15rem 1.2rem;animation:overlay-card-in .2s cubic-bezier(.22,1,.36,1)}.member-stack{display:flex;align-items:center}.member-stack-avatar{margin-left:-6px;box-shadow:0 0 0 2px #fff}.member-stack-avatar:first-child{margin-left:0}.member-stack-more{margin-left:.35rem;font-size:.78rem;color:var(--muted);font-weight:600}.perm-groups{display:grid;gap:.85rem;max-height:360px;overflow:auto;padding-right:.25rem}.perm-group h4{margin:0 0 .35rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.perm-item{display:flex;gap:.5rem;align-items:flex-start;padding:.3rem 0;font-size:.88rem}.perm-item.readonly{opacity:.85}.role-editor-modal{width:min(640px,100%);max-height:min(90vh,800px);overflow:auto}.linkish-btn{border:0;background:transparent;padding:0;color:inherit;text-align:left;cursor:pointer;font:inherit}.linkish-btn:hover{color:var(--blue)}@media(max-width:780px){.admin-layout{grid-template-columns:1fr}.account-foot-meta{font-size:0}}.settings-page{max-width:1100px}.settings-page-head{margin-bottom:1.25rem}.settings-page-head h1{margin:.35rem 0 .15rem;font-size:1.45rem;letter-spacing:-.03em}.settings-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:1.25rem;align-items:start}.settings-side-nav{display:flex;flex-direction:column;gap:.2rem;position:sticky;top:calc(var(--app-header-height) + .75rem);background:#fff;border:1px solid var(--line);border-radius:12px;padding:.45rem}.settings-nav-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;text-align:left;border:0;background:transparent;color:var(--muted);font-size:.88rem;font-weight:500;padding:.55rem .7rem;border-radius:8px;cursor:pointer}.settings-nav-item:hover{background:#f2f4f7;color:var(--ink)}.settings-nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:650}.settings-nav-hint{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:600}.settings-main{min-width:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem 1.4rem}.settings-section-title{margin:0 0 .85rem;font-size:1.1rem;letter-spacing:-.02em}.settings-section-body{gap:.85rem}@media(max-width:780px){.settings-layout{grid-template-columns:1fr}.settings-side-nav{position:static;flex-direction:row;flex-wrap:wrap}.settings-nav-item{width:auto}}.ops-body{display:flex;align-items:stretch;min-height:calc(100vh - 109px);height:auto;width:100%}.ops-left{background:#f6f7f9;border-right:1px solid var(--line);overflow:auto;padding:.75rem .65rem 1.1rem;scrollbar-width:thin;display:flex;flex-direction:column;min-height:0;min-width:0}.ops-left .phase-nav{flex:1;min-height:0;overflow:auto}.ops-center{overflow:visible;padding:.85rem 1.25rem 1.75rem;background:#f3f5f7;min-width:0;flex:1;width:auto}.client-picker{margin-bottom:.65rem;padding-bottom:.65rem;border-bottom:1px solid var(--line)}.client-picker-label{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:0 .35rem .3rem}.client-dropdown{position:relative;display:flex;align-items:center;gap:.55rem;padding:.55rem .5rem;background:#fff;border:1px solid var(--line);border-radius:10px;cursor:pointer}.client-dropdown:hover{border-color:var(--line-strong)}.client-dropdown-meta{flex:1;min-width:0;pointer-events:none}.client-dropdown-meta strong{display:block;font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-dropdown-meta span{display:block;font-size:.7rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-dropdown select{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%;z-index:2}.client-dropdown:after{content:"";width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--muted);flex-shrink:0;pointer-events:none}.ops-user-foot{display:flex;gap:.5rem;align-items:center;margin-top:.75rem;padding:.65rem .35rem .15rem;border-top:1px solid var(--line)}.ops-user-foot strong{display:block;font-size:.8rem}.ops-user-foot span{display:block;font-size:.68rem;color:var(--muted);text-transform:capitalize}.avatar{width:36px;height:36px;border-radius:50%;background:#dfe7ef;color:#334155;display:grid;place-items:center;font-weight:700;font-size:.78rem;flex-shrink:0}.avatar.sm{width:24px;height:24px;font-size:.65rem}.owner-card-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700;margin-bottom:.25rem}.owner-card-name{font-weight:650;font-size:.88rem;margin-bottom:.45rem}.owner-card .select{font-size:.8rem}.phase-nav-label{font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:0 .55rem .35rem;display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.phase-nav-progress{font-variant-numeric:tabular-nums;letter-spacing:0;text-transform:none;font-weight:650;color:var(--ink)}.phase-nav{display:flex;flex-direction:column;gap:.05rem}.phase-nav-actions{display:inline-flex;align-items:center;gap:.35rem}.btn.ghost.phase-manage-toggle,.phase-manage-toggle{padding:.15rem .45rem;font-size:.72rem;background:var(--blue-soft);border-color:#c5d6f8;color:var(--blue)}.btn.ghost.phase-manage-toggle:hover:not(:disabled),.phase-manage-toggle:hover:not(:disabled){background:#dce8ff;border-color:var(--blue);color:#1a56c4}.btn.ghost.phase-manage-toggle.active,.phase-manage-toggle.active{background:var(--blue);border-color:var(--blue);color:#fff}.btn.ghost.phase-manage-toggle.active:hover:not(:disabled),.phase-manage-toggle.active:hover:not(:disabled){background:#1a56c4;border-color:#1a56c4;color:#fff}.phase-manage-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin:0 0 .45rem}.phase-manage-toolbar .btn{font-size:.72rem;padding:.28rem .45rem}.phase-drag-hint{width:100%;padding:.15rem .15rem 0;color:var(--muted);font-size:.7rem}.phase-nav-item{position:relative;display:flex;align-items:center;gap:.35rem;border-radius:8px;min-width:0;transition:opacity .15s ease,transform .15s ease,background .15s ease}.phase-drag-handle{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:2rem;margin-left:.1rem;padding:0;border:0;border-radius:6px;background:transparent;color:#94a3b8;cursor:grab;touch-action:none}.phase-drag-handle:hover:not(:disabled){color:var(--accent, #1f6b4f);background:#e5f0ea}.phase-drag-handle:active:not(:disabled){cursor:grabbing}.phase-drag-handle:focus-visible{outline:2px solid var(--accent, #1f6b4f);outline-offset:-2px}.phase-drag-handle:disabled{cursor:default;opacity:.45}.phase-nav-item.is-dragging{opacity:.42;transform:scale(.98)}.phase-nav-item.drop-before:before,.phase-nav-item.drop-after:after{content:"";position:absolute;z-index:4;left:.25rem;right:.25rem;height:3px;border-radius:999px;background:var(--accent, #1f6b4f);box-shadow:0 0 0 2px #fff;pointer-events:none}.phase-nav-item.drop-before:before{top:-2px}.phase-nav-item.drop-after:after{bottom:-2px}.phase-rename-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;margin-right:.2rem;border-radius:7px;color:#334155;background:#e8ecf1;border:1px solid #c9d2dc;opacity:1}.phase-rename-btn svg{display:block}.phase-nav-item:hover .phase-rename-btn,.phase-nav-item.active .phase-rename-btn,.phase-nav-item.is-checked .phase-rename-btn{background:#dce8e2;border-color:#9bb9ab;color:var(--accent, #1f6b4f)}.phase-nav-item.is-checked{background:#eef6f2}.phase-nav-item.is-renaming{position:relative;z-index:2;background:#fff;box-shadow:0 2px 8px #0f172a14;margin-bottom:.15rem}.phase-tray-error{margin:0 0 .45rem;font-size:.78rem}.phase-nav-item.active:not(.is-checked){background:#fff;box-shadow:inset 3px 0 0 var(--accent),inset 0 0 0 1px var(--line)}.phase-nav-item.active.is-checked{box-shadow:inset 3px 0 0 var(--accent)}.phase-check{flex-shrink:0;margin:0;accent-color:var(--accent, #1f6b4f)}.phase-nav-select{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.4rem .5rem;border-radius:8px;border:0;background:transparent;color:var(--ink);text-align:left;width:100%;min-width:0;font-size:.81rem;line-height:1.25;cursor:pointer;font:inherit}.phase-nav-item:not(.active) .phase-nav-select:hover{background:#eef1f5}.phase-nav-item.active .phase-nav-select{font-weight:600}.phase-rename-form{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;padding:.3rem .35rem;width:100%;min-width:0;position:relative;z-index:1}.phase-rename-form .input{grid-column:1 / -1;font-size:.8rem;padding:.35rem .45rem}.phase-rename-form .btn{width:100%;justify-content:center}.phase-delete-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0f172a59;display:grid;place-items:center;padding:1rem;animation:overlay-backdrop-in .18s ease}.phase-delete-card{background:#fff;border-radius:12px;border:1px solid var(--line);padding:1rem 1.1rem;width:min(420px,100%);display:flex;flex-direction:column;gap:.55rem;box-shadow:0 16px 40px #0f172a2e;animation:overlay-card-in .2s cubic-bezier(.22,1,.36,1)}.phase-delete-card h3{margin:0;font-size:1.05rem}.phase-delete-card p{margin:0;font-size:.9rem;line-height:1.45}.phase-nav-left{display:flex;align-items:center;gap:.45rem;min-width:0;flex:1}.phase-nav-left>span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.phase-dot{width:7px;height:7px;border-radius:50%;background:#c5ced8;flex-shrink:0}.phase-dot.done{background:var(--ok)}.phase-dot.current{background:var(--blue)}.phase-dot.active-work{background:#f79009}.phase-count{font-size:.68rem;color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0}.phase-add{display:flex;flex-direction:column;gap:.4rem;margin-top:.65rem;padding-top:.55rem;border-top:1px solid var(--line)}.phase-add .input{font-size:.82rem;padding:.4rem .55rem}.phase-add-btn{width:100%;justify-content:center}.center-toolbar{display:flex;justify-content:space-between;gap:1rem;align-items:flex-end;margin-bottom:.65rem;flex-wrap:wrap}.phase-heading{min-width:0;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.phase-heading h1{margin:0;font-size:1.28rem;letter-spacing:-.03em;line-height:1.2}.phase-heading .muted{font-size:.8rem}.criteria-status-pill{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;font-size:.72rem;font-weight:650;background:#eef2f6;color:var(--muted);text-transform:lowercase}.criteria-status-pill.status-complete{background:var(--ok-soft);color:var(--ok)}.criteria-status-pill.status-in-progress{background:#fff7ed;color:#c2410c}.criteria-status-pill.status-pending,.criteria-status-pill.status-not-started,.criteria-status-pill.status-not-provisioned{background:#f2f4f7;color:var(--muted)}.criteria-strip{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1.1rem;margin-bottom:.75rem;padding:.55rem .75rem;background:#fff;border:1px solid var(--line);border-radius:10px}.criteria-strip-progress{display:flex;align-items:center;gap:.55rem;min-width:140px;flex:1 1 160px;max-width:280px}.criteria-strip-progress strong{font-size:.9rem;font-variant-numeric:tabular-nums;min-width:2.4rem}.criteria-strip-progress .criteria-bar{flex:1;margin-top:0;height:6px}.criteria-strip-meta{font-size:.82rem;white-space:nowrap}.criteria-strip-pending{color:#c2410c;font-weight:600}.criteria-strip-pending-group{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0}button.criteria-strip-pending-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;padding:.18rem .65rem;cursor:pointer;font:inherit;font-size:.82rem;font-weight:600;color:#c2410c;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}button.criteria-strip-pending-btn:hover{background:#ffedd5;border-color:#fdba74}.criteria-bar{margin-top:.45rem;height:5px;border-radius:999px;background:#e8edf2;overflow:hidden}.criteria-bar>span{display:block;height:100%;background:var(--accent)}.breadcrumb{font-size:.8rem;color:var(--muted);margin-bottom:.45rem}.breadcrumb strong{color:var(--ink)}.toolbar-actions{display:flex;align-items:center;gap:.45rem;flex-shrink:0;flex-wrap:wrap}.toolbar-actions .search{width:180px;max-width:180px;flex:0 0 180px;background:#fff;padding:.45rem .65rem;font-size:.86rem}.toolbar-actions .status-filter{width:auto;min-width:132px;background:#fff;padding:.45rem .55rem;font-size:.84rem}.toolbar-actions .btn{white-space:nowrap;flex-shrink:0}.blocker-strip{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.75rem}.blocker-chip{display:inline-flex;align-items:center;gap:.45rem;max-width:100%;padding:.35rem .65rem;background:#fff;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:.8rem;color:var(--ink);text-align:left;cursor:pointer;transition:background-color .14s ease,border-color .14s ease}.blocker-chip:hover{background:var(--accent-soft);border-color:var(--accent-muted, #c5d4cc)}.blocker-chip span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:0 0 .65rem;font-size:.92rem}.task-detail-tabs-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem;flex-wrap:wrap}.activity-log-toggle-row{margin:0 0 .75rem}.activity-diff-toggle{border:0;background:transparent;padding:0;font:inherit;font-size:.82rem;font-weight:600;color:#2563eb;cursor:pointer}.activity-diff-toggle:hover{text-decoration:underline}.activity-diff{margin-top:.45rem;padding:.55rem .65rem .55rem .75rem;border-left:3px solid #12b76a;background:#f8fafc;border-radius:0 8px 8px 0;font-size:.86rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;color:#374151}.activity-diff-seg.is-delete{text-decoration:line-through;background:#fee4e2;color:#912018;border-radius:2px}.activity-diff-seg.is-insert{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:2px;background:#d1fadf;color:#05603a;border-radius:2px}.activity-diff-seg.is-equal{color:#374151}.activity-log-toggle{display:inline-flex;align-items:center;gap:.4rem;font-weight:650}.activity-log-toggle.active{background:#e4ece8;border-color:#9bb9ab;color:var(--accent, #1f6b4f)}.activity-log-chevron{font-size:.75rem;opacity:.75}.activity-log-panel{margin-bottom:.85rem}.activity-log-heading{font-size:.92rem;color:var(--ink)}.activity-sort-btn{font-weight:600;color:var(--muted)}.task-detail-tabs{display:flex;gap:.15rem;border-bottom:1px solid var(--line);flex:1;min-width:0}.task-detail-tab{border:0;background:transparent;font:inherit;font-size:.88rem;font-weight:600;color:var(--muted);padding:.4rem .7rem .55rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.task-detail-tab:hover{color:var(--ink)}.task-detail-tab.active{color:var(--ink);border-bottom-color:#1f2937}.task-detail-tab-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.activity-feed{display:flex;flex-direction:column;gap:0}.activity-divider{height:1px;background:#e5e7eb;margin:.75rem 0}.activity-row{display:flex;gap:.65rem;align-items:flex-start;padding:.28rem 0}.activity-row.is-continuation{padding-left:2.35rem}.activity-avatar{width:1.7rem;height:1.7rem;border-radius:999px;background:#e4e9ef;color:#334155;display:inline-flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;flex-shrink:0}.activity-terminal-icon{width:1.7rem;height:1.7rem;border-radius:999px;background:#12b76a;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0}.activity-body{min-width:0;flex:1}.activity-text{margin:0;font-size:.88rem;line-height:1.45;color:#374151}.activity-actor{color:#111827;font-weight:700}.activity-verb{color:#374151}.activity-detail{color:#6b7280;font-weight:500}.activity-detail a,.activity-link{color:#2563eb;text-decoration:none;font-weight:600}.activity-detail a:hover,.activity-link:hover{text-decoration:underline}.activity-dot,.activity-when{color:#9ca3af;font-weight:500;font-size:.82rem}.activity-row.is-complete .activity-text,.activity-row.is-complete .activity-actor,.activity-row.is-complete .activity-verb{color:#039855}.activity-row.is-complete .activity-dot,.activity-row.is-complete .activity-when{color:#6ce9a6}.task-panel{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:visible;width:100%}.task-panel-scroll{overflow-x:auto;overflow-y:visible;width:100%;scrollbar-width:thin}.task-panel-head{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;border-bottom:1px solid var(--line);background:#fbfcfd}.task-col-head,.task-row{--task-cols: 36px minmax(200px, 2.2fr) minmax(100px, .75fr) 118px minmax(150px, 1.1fr) minmax(140px, 1fr);display:grid;grid-template-columns:var(--task-cols);column-gap:.85rem;align-items:center;padding:.7rem 1rem;width:100%;min-width:760px;box-sizing:border-box}.task-col-head{padding-top:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--line);background:#f8fafc;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.task-col-head>*,.task-row>*{min-width:0}.task-col-check,.task-cell-check{display:flex;justify-content:center}.task-col-task,.task-cell-task{text-align:left}.task-col-dates,.task-cell-dates{text-align:left;color:var(--muted);font-size:.8rem;white-space:nowrap}.task-col-status,.task-cell-status{display:flex;justify-content:flex-start;align-items:center}.task-col-assignee,.task-cell-assignee{display:flex;justify-content:flex-start;align-items:center;overflow:visible;position:relative}.task-col-opportunity,.task-cell-opportunity{text-align:left;color:var(--text);min-width:0}.task-col-opportunity{font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-cell-opportunity{display:flex;align-items:center;padding-right:.35rem}.opportunity-name-input{width:100%;min-width:0;border:1px solid transparent;background:transparent;border-radius:6px;padding:.28rem .4rem;font:inherit;font-size:.8rem;color:var(--text);line-height:1.25}.opportunity-name-input:hover{border-color:var(--line);background:#f8fafc}.opportunity-name-input:focus{outline:none;border-color:var(--accent);background:#fff;box-shadow:0 0 0 2px var(--accent-soft)}.opportunity-name-input::placeholder{color:var(--muted);opacity:.75}.opportunity-name-text{font-size:.8rem;line-height:1.25;padding:.28rem .4rem;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.opportunity-name-empty{font-size:.8rem;padding:.28rem .4rem}.subtask-link{border:0;background:#eef2f6;color:var(--accent);font-weight:700;border-radius:999px;min-width:28px;height:28px;padding:0 .45rem;cursor:pointer}.subtask-link:hover{background:var(--accent-soft)}.task-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;top:var(--app-header-height);background:#11182759;z-index:80;display:flex;justify-content:flex-end;animation:drawer-backdrop-in .18s ease}.task-drawer-backdrop.is-closing{animation:drawer-backdrop-out .2s ease forwards}.task-drawer{width:min(720px,100%);height:100%;background:#f7f8fa;border-left:1px solid var(--line);overflow:hidden;padding:0 1.15rem;box-shadow:-12px 0 40px #0000001f;display:flex;flex-direction:column;animation:drawer-slide-in .24s cubic-bezier(.22,1,.36,1)}.task-drawer.is-closing{animation:drawer-slide-out .2s ease forwards}@keyframes drawer-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes drawer-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes drawer-slide-in{0%{transform:translate(48px);opacity:.96}to{transform:translate(0);opacity:1}}@keyframes drawer-slide-out{0%{transform:translate(0);opacity:1}to{transform:translate(36px);opacity:.96}}.task-drawer-top{display:flex;justify-content:space-between;align-items:center;gap:.75rem;flex-shrink:0;background:#f7f8fa;padding:.85rem 0 .65rem;border-bottom:1px solid var(--line)}.task-drawer-close{display:inline-flex;align-items:center;gap:.35rem;border:1px solid #b8d4c8;background:var(--accent-soft);border-radius:8px;padding:.4rem .75rem;font-size:.88rem;font-weight:600;color:var(--accent);cursor:pointer;transition:background-color .14s ease,border-color .14s ease,color .14s ease}.task-drawer-close:hover{background:var(--accent);border-color:var(--accent);color:#fff}.task-drawer-close-x{font-size:1.1rem;line-height:1;font-weight:500}.task-drawer-body{flex:1;min-height:0;overflow:auto;padding:.35rem 0 2rem;overscroll-behavior:contain}.task-drawer-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:14px;padding:1rem 1.1rem;margin-bottom:.85rem}.task-drawer-title-block{min-width:0;flex:1}.task-title-row{display:flex;align-items:flex-start;gap:.45rem;min-width:0}.task-title-row h2{margin:0;font-size:1.35rem;letter-spacing:-.02em;min-width:0;flex:1}.task-title-edit-btn{margin-top:.15rem;margin-right:0}.task-title-edit-form{display:grid;grid-template-columns:1fr auto auto;gap:.4rem;align-items:center;width:100%;max-width:36rem}.task-title-edit-form .input{font-size:1.05rem;font-weight:650;padding:.45rem .6rem}.task-save-alert{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .75rem;padding:.7rem .85rem;border-radius:10px;background:#e7f6ee;border:1px solid #9dcfb2;color:#14532d;font-size:.9rem;font-weight:600}.task-save-alert-close{border:0;background:transparent;color:inherit;font-size:1.2rem;line-height:1;cursor:pointer;padding:0 .15rem;opacity:.75}.task-save-alert-close:hover{opacity:1}.task-drawer-head h2{margin:0;font-size:1.35rem;letter-spacing:-.02em}.task-drawer-actions{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.task-section{background:#fff;border:1px solid var(--line);border-radius:14px;padding:.95rem 1.05rem;margin-bottom:.85rem}.task-desc-block{margin:0;white-space:pre-wrap;line-height:1.5;color:var(--ink)}.message-list{display:flex;flex-direction:column;gap:.65rem;margin-bottom:.85rem}.message-item{border:1px solid var(--line);border-radius:12px;padding:.75rem .85rem;background:#fbfcfd}.message-item.from-client{background:#f3faf6;border-color:#cfe8da}.message-item p{margin:.35rem 0 0}.message-meta{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;font-size:.82rem;position:relative}.message-actions{margin-left:auto;position:relative}.message-menu-btn{padding:.1rem .4rem;letter-spacing:.05em;line-height:1;min-width:1.75rem}.message-action-menu{position:absolute;right:0;top:calc(100% + 4px);z-index:20;min-width:120px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px #0f172a1f;padding:.25rem;display:flex;flex-direction:column;animation:overlay-in .16s ease}.message-action-menu button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;text-align:left;padding:.45rem .65rem;border-radius:6px;cursor:pointer;font:inherit;font-size:.85rem}.message-action-menu button:hover{background:#f1f5f9}.message-action-menu button.danger{color:#b91c1c}.message-delete-confirm{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;margin-top:.35rem}.message-item.is-deleted{background:#f8fafc}.message-deleted-placeholder{margin:.35rem 0 0;font-style:italic;color:var(--muted, #64748b)}.message-edit{margin-top:.45rem}.message-composer{display:flex;gap:.5rem;align-items:flex-end;flex-wrap:wrap}.message-composer .input{flex:1;min-width:180px}.message-composer-main{flex:1 1 100%;min-width:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.comment-attach-btn{display:inline-flex;align-items:center;gap:.35rem}.comment-pending-files,.comment-attachments{list-style:none;margin:.55rem 0 0;padding:0;display:flex;flex-direction:column;gap:.45rem}.comment-pending-card,.comment-attachment-card{display:grid;grid-template-columns:64px 1fr auto;gap:.55rem;align-items:center;padding:.4rem;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.comment-pending-progress{height:4px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin-top:.25rem}.comment-pending-progress>span{display:block;height:100%;background:var(--accent, #1f6b4f);border-radius:999px;transition:width .2s ease}.task-attach-add{margin-left:auto;min-width:1.6rem;font-weight:700}.linkish.danger-link{color:#b91c1c}.comment-attachment-thumb-btn{width:64px;height:64px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden;cursor:pointer;display:grid;place-items:center}.comment-attachment-thumb-btn:disabled{cursor:default;opacity:.75}.comment-attachment-thumb{width:100%;height:100%;object-fit:cover;display:block}.comment-attachment-pdf-badge,.comment-attachment-file-badge,.comment-attachment-type-badge{width:64px;height:64px;border-radius:8px;border:1px solid var(--line);background:#fff;display:grid;place-content:center;justify-items:center;gap:.15rem;font-size:.68rem;font-weight:700;color:var(--muted);letter-spacing:.02em}.comment-attachment-thumb-status{font-size:.68rem;padding:.25rem;text-align:center}.comment-attachment-meta{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:0}.comment-attachment-name,.comment-pending-name{border:0;background:transparent;padding:0;font:inherit;font-weight:600;color:var(--ink);text-align:left;cursor:pointer;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comment-pending-name{cursor:default}.comment-attachment-actions{display:flex;gap:.65rem;margin-top:.1rem}.comment-attachment-print{display:none}.attachment-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:240;display:grid;place-items:center;padding:1rem}.attachment-lightbox-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#0f172a8c;cursor:pointer}.attachment-lightbox-panel{position:relative;z-index:1;width:min(920px,100%);max-height:min(90vh,900px);background:#fff;border-radius:14px;box-shadow:0 24px 64px #0f172a47;display:flex;flex-direction:column;overflow:hidden}.attachment-lightbox-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .9rem;border-bottom:1px solid var(--line)}.attachment-lightbox-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-lightbox-actions{display:flex;align-items:center;gap:.35rem;flex-shrink:0}.attachment-lightbox-body{padding:.75rem;overflow:auto;background:#0f172a0a;min-height:240px;display:grid;place-items:center}.attachment-lightbox-image{max-width:100%;max-height:min(75vh,780px);object-fit:contain;border-radius:8px;background:#fff}.attachment-lightbox-pdf{width:min(860px,100%);height:min(75vh,780px);border:0;border-radius:8px;background:#fff}.attachment-lightbox-text{margin:0;width:100%;max-height:min(75vh,780px);overflow:auto;padding:.85rem 1rem;background:#fff;border:1px solid var(--line);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.45;white-space:pre-wrap;word-break:break-word;text-align:left}.attachment-csv-wrap{width:100%;max-height:min(75vh,780px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:8px}.attachment-csv-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:.8rem}.attachment-csv-table td{border:1px solid var(--line);padding:.35rem .55rem;text-align:left;vertical-align:top;max-width:240px;overflow:hidden;text-overflow:ellipsis}.attachment-csv-table tr:first-child td{font-weight:650;background:#f4f7fa}.attachment-lightbox-fallback{display:grid;justify-items:center;gap:.55rem;padding:1.5rem 1rem;text-align:center}.attachment-lightbox-fallback .comment-attachment-type-badge{width:88px;height:88px;font-size:.8rem}.attachment-lightbox-fallback-name{margin:0;font-weight:650;word-break:break-word}.attachment-preview-note{margin:.35rem 0 0;font-size:.82rem}.attachment-csv-wrap .attachment-preview-note{padding:.45rem .65rem}.mention-composer{display:grid;gap:.35rem}.mention-composer-input{width:100%;min-height:64px;resize:vertical;font:inherit;line-height:1.4}.mention-composer-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem .75rem;font-size:.78rem}.mention-enter-hint{margin-left:auto;white-space:nowrap}.mention-enter-key{display:inline-block;padding:.05rem .35rem;border:1px solid #c9d3de;border-bottom-width:2px;border-radius:5px;background:#f4f7fa;color:#334155;font:inherit;font-size:.72rem;font-weight:650;line-height:1.3}.mention-away-hint{margin:.25rem 0 0;font-size:.8rem}.mention-menu{position:fixed;z-index:240;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 36px #1a23322e;max-height:280px;overflow:auto;padding:.25rem 0;animation:mention-menu-in .14s ease}@keyframes mention-menu-in{0%{opacity:0}to{opacity:1}}.mention-menu-empty{padding:.75rem .9rem;font-size:.85rem}.mention-menu-item{display:flex;gap:.65rem;align-items:center;width:100%;border:0;background:transparent;text-align:left;padding:.45rem .75rem;cursor:pointer}.mention-menu-item:hover,.mention-menu-item.active{background:#eef4ff}.mention-menu-meta{display:grid;gap:.1rem;min-width:0}.mention-menu-name{font-size:.9rem;color:var(--ink)}.mention-menu-email{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;color:var(--muted)}.mention-away{color:var(--muted);font-weight:500;font-style:italic}.mention-external-icon{color:var(--muted);flex-shrink:0}.mention-chip{display:inline;color:#2f6fed;font-weight:600;text-decoration:none;background:#eef4ff;border-radius:4px;padding:.05rem .25rem}.mention-chip:hover{text-decoration:underline}.hover-card-anchor .mention-chip{cursor:pointer}.hover-card-left-project{color:var(--muted);font-style:italic}.comment-body{margin:.35rem 0 0;white-space:pre-wrap;word-break:break-word}.message-item.comment-highlight{outline:2px solid #2f6fed;outline-offset:2px;background:#f5f8ff}.subtask-block{display:flex;flex-direction:column;gap:.5rem}.subtask-block.is-busy{opacity:.75}.subtask-head{display:flex;align-items:center;gap:.6rem}.subtask-head strong{font-size:.92rem}.subtask-progress{display:inline-flex;align-items:center;gap:.4rem;margin-right:auto}.subtask-progress-bar{width:64px;height:5px;border-radius:999px;background:#e6ebf1;overflow:hidden}.subtask-progress-fill{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width .22s ease}.subtask-progress-count{font-size:.72rem;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.subtask-head strong:only-child{margin-right:auto}.subtask-checklist-btn{display:inline-flex;align-items:center;gap:.3rem;margin-left:auto}.subtask-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.subtask-empty{font-size:.84rem;padding:.5rem 0}.subtask-item{display:flex;flex-direction:column;min-width:0}.subtask-item.is-expanded{margin-bottom:.35rem}.subtask-row{position:relative;display:flex;align-items:center;gap:.4rem;font-size:.88rem;padding:.3rem .25rem;border-radius:8px}.subtask-row.comments-open{background:#f3f7f5}.subtask-row:hover{background:#f7f9fb}.subtask-row.is-dragging{opacity:.45}.subtask-row.drop-before:before,.subtask-row.drop-after:after{content:"";position:absolute;left:.25rem;right:.25rem;height:2px;border-radius:2px;background:var(--accent)}.subtask-row.drop-before:before{top:-1px}.subtask-row.drop-after:after{bottom:-1px}.subtask-drag-handle{border:0;background:none;padding:.1rem;color:#c3ccd6;cursor:grab;display:inline-grid;place-items:center;border-radius:5px;opacity:0;transition:opacity .15s ease,color .15s ease}.subtask-row:hover .subtask-drag-handle,.subtask-drag-handle:focus-visible{opacity:1}.subtask-drag-handle:hover{color:var(--muted)}.subtask-drag-handle:active{cursor:grabbing}.subtask-check{width:19px;height:19px;flex-shrink:0;border-radius:50%;border:1.6px solid #ccd5df;background:#fff;color:transparent;display:inline-grid;place-items:center;cursor:pointer;padding:0;transition:background .15s ease,border-color .15s ease,color .15s ease}.subtask-check:hover:not(:disabled){border-color:var(--accent);color:#b7c2cf}.subtask-check.is-checked{background:#16a34a;border-color:#16a34a;color:#fff;animation:subtask-check-pop .3s cubic-bezier(.2,.9,.3,1.2)}.subtask-check:disabled{cursor:default}@keyframes subtask-check-pop{0%{transform:scale(.72)}60%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes subtask-complete-flash{0%{background-color:#16a34a24}to{background-color:transparent}}.subtask-title{flex:1;min-width:0;text-align:left;border:0;background:none;padding:.15rem .2rem;font:inherit;color:var(--text);cursor:text;border-radius:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtask-title:hover:not(:disabled){background:#eef2f6}.subtask-title:disabled{cursor:default}.subtask-row.is-done .subtask-title{color:var(--text);text-decoration:none}.subtask-row.is-done{animation:subtask-complete-flash .65s ease-out}.subtask-title-input{flex:1;min-width:0;font:inherit;padding:.15rem .35rem;border:1px solid var(--accent);border-radius:6px;outline:none}.subtask-meta{display:flex;align-items:center;gap:.3rem;flex-shrink:0}.subtask-due,.subtask-assignee-btn,.subtask-comments,.subtask-delete{border:0;background:none;cursor:pointer;color:var(--muted);display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .35rem;border-radius:6px;font-size:.74rem;font-weight:600}.subtask-due:hover:not(:disabled),.subtask-comments:hover:not(:disabled),.subtask-delete:hover:not(:disabled){background:#eef2f6;color:var(--text)}.subtask-due.has-date{color:var(--text)}.subtask-due.is-overdue{color:#dc2626}.subtask-due:not(.has-date){opacity:0}.subtask-row:hover .subtask-due:not(.has-date),.subtask-due:focus-visible{opacity:1}.subtask-due:disabled,.subtask-delete:disabled{cursor:default}.subtask-due-input{font:inherit;font-size:.74rem;padding:.15rem .25rem;border:1px solid var(--accent);border-radius:6px;outline:none}.subtask-assignee{position:relative;display:inline-flex}.subtask-assignee-btn{padding:.15rem;border-radius:50%;border:1px dashed #ccd5df}.subtask-assignee-btn.has-person{border:0;padding:0}.subtask-assignee-btn:not(.has-person){opacity:0}.subtask-row:hover .subtask-assignee-btn:not(.has-person),.subtask-assignee-btn:focus-visible{opacity:1}.subtask-assignee-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.subtask-unassign{position:absolute;top:-3px;right:-4px;width:13px;height:13px;border-radius:50%;border:1px solid #fff;background:#64748b;color:#fff;display:none;place-items:center;padding:0;cursor:pointer}.subtask-assignee:hover .subtask-unassign{display:grid}.subtask-delete:hover:not(:disabled){color:#dc2626}.subtask-delete{opacity:0}.subtask-row:hover .subtask-delete,.subtask-delete:focus-visible{opacity:1}.subtask-comments:not(.has-count){opacity:0}.subtask-row:hover .subtask-comments:not(.has-count),.subtask-comments:focus-visible,.subtask-comments.has-count,.subtask-comments.is-open{opacity:1}.subtask-comments.has-count,.subtask-comments.is-open{color:var(--accent, #1f6b4f)}.subtask-comment-count{font-variant-numeric:tabular-nums;font-size:.68rem;min-width:.7rem}.subtask-comments-panel{margin:0 .25rem .35rem 1.75rem;padding:.55rem .65rem .65rem;border:1px solid #d7e0e8;border-radius:10px;background:#fbfcfd;display:flex;flex-direction:column;gap:.45rem}.subtask-comments-list{max-height:220px;overflow:auto;display:flex;flex-direction:column;gap:.55rem;padding-right:.15rem}.subtask-comments-empty{margin:0;font-size:.8rem}.subtask-comment-item{min-width:0}.subtask-comment-item.is-deleted{opacity:.7}.subtask-comment-meta{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;font-size:.78rem}.subtask-comment-meta time{color:var(--muted);font-size:.72rem;flex-shrink:0}.subtask-comment-item .comment-body{margin:.2rem 0 0;font-size:.84rem}.subtask-comments-error{margin:0;font-size:.78rem}.subtask-comments-composer{display:flex;flex-direction:column;gap:.4rem;align-items:stretch}.subtask-comments-composer .mention-composer{min-height:2.4rem}.subtask-comments-composer .btn{align-self:flex-end}.task-menu-danger{color:#b91c1c!important}.task-menu-delete-confirm{display:flex;flex-direction:column;gap:.35rem;padding:.45rem .55rem;font-size:.8rem}.subtask-error{margin:0}.subtask-add{display:flex;align-items:center;gap:.4rem;margin-top:.2rem;padding:.15rem .25rem}.subtask-add-icon{color:var(--muted);flex-shrink:0}.subtask-add-input{flex:1;min-width:0;font:inherit;font-size:.88rem;border:0;border-bottom:1px solid transparent;background:none;padding:.25rem .2rem;outline:none}.subtask-add-input:focus{border-bottom-color:var(--accent)}.subtask-add-input::placeholder{color:#9aa5b1}.subtask-checklist-menu{position:fixed;z-index:300;width:268px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px #0f172a29;padding:.5rem}.subtask-checklist-menu-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:.15rem .35rem .35rem}.subtask-checklist-empty{font-size:.8rem;padding:.15rem .35rem .4rem;margin:0}.subtask-checklist-options{list-style:none;margin:0;padding:0;max-height:220px;overflow-y:auto}.subtask-checklist-options li{display:flex;align-items:center;gap:.2rem}.subtask-checklist-apply{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border:0;background:none;text-align:left;font:inherit;font-size:.84rem;padding:.35rem;border-radius:6px;cursor:pointer}.subtask-checklist-apply:hover:not(:disabled){background:var(--accent-soft)}.subtask-checklist-apply span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subtask-checklist-apply .muted{font-size:.72rem;flex-shrink:0}.subtask-checklist-remove{border:0;background:none;color:var(--muted);padding:.25rem;border-radius:5px;cursor:pointer;display:inline-grid;place-items:center}.subtask-checklist-remove:hover{color:#dc2626;background:#fee2e2}.subtask-checklist-divider{height:1px;background:var(--line);margin:.4rem 0}.subtask-checklist-savebtn{width:100%;border:0;background:none;text-align:left;font:inherit;font-size:.82rem;font-weight:600;color:var(--accent);padding:.35rem;border-radius:6px;cursor:pointer}.subtask-checklist-savebtn:hover:not(:disabled){background:var(--accent-soft)}.subtask-checklist-savebtn:disabled{color:var(--muted);cursor:default}.subtask-checklist-save{display:flex;gap:.35rem}.subtask-checklist-save .input{flex:1;min-width:0;font-size:.82rem}@media(max-width:700px){.task-drawer-head{flex-direction:column}}.task-row{position:relative;z-index:0;border-bottom:1px solid var(--line);font-size:.86rem}.task-row:last-child{border-bottom:0}.task-row:hover,.task-row:has(.hover-card-anchor.is-open){z-index:2;background:#fafbfc}.task-row:has(.empty-assignee-btn.is-open){z-index:3}.task-title-btn{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;border:0;background:transparent;padding:0;text-align:left;color:inherit;cursor:pointer}.task-title-btn:hover .task-title{color:var(--accent)}.task-title{font-weight:600}.task-desc{display:block;font-size:.78rem;color:var(--muted);font-weight:400}.task-meta-line{display:flex;gap:.65rem;font-size:.72rem;color:var(--muted);font-weight:500}.task-id{color:var(--muted);font-size:.75rem}.task-assignees{display:flex;align-items:center;justify-content:flex-end;gap:.35rem;width:100%}.assignee-chip{position:relative;display:inline-flex;align-items:center;gap:.3rem;max-width:100%;padding:.12rem .4rem .12rem .12rem;border-radius:999px;background:#f2f4f7;border:1px solid var(--line);z-index:0}.hover-card-anchor.is-open{z-index:1}.assignee-chip.interactive,.assignee-chip.has-remove{background:#eef2f6}.assignee-chip .avatar,.assignee-chip .user-avatar{margin:0;flex-shrink:0}.assignee-chip-name{font-size:.78rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:88px}.assignee-chip-face{display:inline-flex;align-items:center;gap:.3rem;min-width:0}.assignee-chip-x{border:0;background:transparent;color:#98a2b3;cursor:pointer;font-size:1rem;line-height:1;padding:0;margin-left:.05rem;flex-shrink:0;width:1.15rem;height:1.15rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;opacity:0;pointer-events:none;position:relative;z-index:1;transition:opacity .12s ease,color .12s ease,background .12s ease}.assignee-chip.has-remove:hover .assignee-chip-x,.assignee-chip.has-remove:focus-within .assignee-chip-x,.assignee-chip-x:focus{opacity:1;pointer-events:auto}.assignee-chip-x:hover{color:var(--danger);background:#d92d2014}.assignee-chip.overflow{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.25rem .55rem;font-size:.78rem;font-weight:600;cursor:pointer}.assignee-display{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.3rem;max-width:100%}.task-cell-assignee .assignee-display{justify-content:flex-start}.search-hit-person{text-decoration:none;color:inherit}.search-hit-person .search-hit-body{text-decoration:none;color:inherit;flex:1}.user-avatar.external{box-shadow:inset 0 0 0 2px #6b8a9e}.assignee-chip-row{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.assignee-add-chip{width:1.75rem;height:1.75rem;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:1.1rem;line-height:1;cursor:pointer}.assignee-add-chip.dashed{border-style:dashed;width:auto;padding:.35rem .75rem;height:auto}.assignee-add-chip:hover{background:#eef2f6;color:var(--ink)}.assignee-selector{position:relative}.empty-assignee-slot{position:relative;display:inline-flex;align-items:center}.empty-assignee-btn{position:relative;display:inline-flex;align-items:center;gap:.4rem;height:28px;padding:0 .55rem 0 .2rem;border:1px dashed #b8c2ce;background:#f8fafc;color:#526072;cursor:pointer;border-radius:999px;transition:background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease}.empty-assignee-btn:hover,.empty-assignee-btn:focus-visible{color:var(--accent);background:var(--accent-soft);border-color:#7aab97;outline:none;box-shadow:0 0 0 3px #1f6b4f1f}.empty-assignee-btn.is-open{color:var(--accent);background:var(--accent-soft);border-color:var(--accent);border-style:solid}.empty-assignee-avatar{position:relative;width:22px;height:22px;border-radius:50%;background:#fff;border:1.5px dashed #9aa7b5;color:#5b6b7c;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.empty-assignee-btn:hover .empty-assignee-avatar,.empty-assignee-btn:focus-visible .empty-assignee-avatar,.empty-assignee-btn.is-open .empty-assignee-avatar{border-color:var(--accent);color:var(--accent);background:#fff}.empty-assignee-plus{position:absolute;right:-4px;bottom:-3px;width:12px;height:12px;border-radius:50%;background:var(--accent);color:#fff;font-size:.65rem;font-weight:700;line-height:12px;text-align:center;border:1.5px solid #fff;box-shadow:0 1px 2px #1a23321f}.empty-assignee-label{font-size:.78rem;font-weight:600;letter-spacing:-.01em;white-space:nowrap;line-height:1}.empty-assignee-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%) translateY(2px);white-space:nowrap;padding:.28rem .55rem;border-radius:6px;background:#1d2939;color:#fff;font-size:.72rem;font-weight:500;line-height:1.2;opacity:0;pointer-events:none;transition:opacity .12s ease,transform .12s ease;z-index:30;box-shadow:0 4px 12px #0000002e}.empty-assignee-tooltip:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-top-color:#1d2939}.empty-assignee-btn:hover .empty-assignee-tooltip,.empty-assignee-btn:focus-visible .empty-assignee-tooltip{opacity:1;transform:translate(-50%) translateY(0)}.empty-assignee-btn.is-open .empty-assignee-tooltip{opacity:0}.assignee-picker{position:absolute;z-index:40;top:calc(100% + 6px);left:0;width:min(320px,72vw);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:.55rem;animation:overlay-in .16s ease}.assignee-picker-popover{min-width:260px}.assignee-picker-fixed{position:fixed;top:0;left:0;z-index:120;margin:0}.assignee-picker-list{max-height:220px;overflow:auto;margin-top:.4rem}.assignee-picker-item{width:100%;display:flex;align-items:center;gap:.55rem;border:0;background:transparent;text-align:left;padding:.45rem .35rem;border-radius:8px;cursor:pointer}.assignee-picker-item:hover{background:#f7f9fb}.assignee-picker-item strong{display:block;font-size:.88rem}.assignee-picker-item .muted{display:block;font-size:.75rem}.user-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:700;overflow:hidden;flex-shrink:0}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-avatar.xs{width:20px;height:20px;font-size:.55rem}.user-avatar.sm{width:24px;height:24px;font-size:.65rem}.user-avatar.md{width:36px;height:36px;font-size:.8rem}.user-avatar.lg{width:52px;height:52px;font-size:1rem}.hover-card-anchor{position:relative;display:inline-flex;align-items:center;gap:.15rem}.hover-card-info{width:1rem;height:1rem;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:.65rem;line-height:1;padding:0;cursor:pointer;color:var(--muted)}.assignee-hover-card{position:fixed;z-index:200;width:300px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 48px #1a23322e;padding:0;overflow:hidden;pointer-events:auto;animation:overlay-in .16s ease}.hover-card-main{padding:.9rem .95rem .75rem}.hover-card-head{display:flex;gap:.75rem;align-items:flex-start;margin-bottom:0}.hover-card-name{font-weight:700;font-size:1rem;color:var(--ink)}.hover-card-pronouns{font-size:.8rem;color:var(--muted);margin-top:.05rem}.hover-card-role{font-size:.84rem;color:var(--muted);margin-top:.15rem}.hover-card-email{font-size:.84rem;color:var(--ink);margin-top:.35rem}.hover-card-local{font-size:.8rem;color:var(--muted);margin-top:.25rem}.hover-presence{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;font-size:.82rem;margin-top:.35rem}.hover-presence.on{color:var(--ok)}.hover-presence.off{color:var(--muted)}.hover-presence .presence-dot{width:7px;height:7px}.hover-card-footer{background:#f4f6f8;border-top:1px solid var(--line);padding:.7rem .95rem .85rem}.hover-card-collab{font-size:.82rem;color:var(--muted);margin-bottom:.65rem}.hover-card-collab strong{color:var(--ink);font-weight:600}.hover-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.hover-card-actions:has(>:only-child){grid-template-columns:1fr}.btn.hover-card-btn{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none;font-weight:600;font-size:.8rem;padding:.45rem .55rem;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.btn.hover-card-btn:hover{background:#f7f9fb}.btn.hover-card-btn-remove{color:var(--danger);border-color:#f0c4c4}.btn.hover-card-btn-remove:hover{background:#fff5f5}.hover-card-check{display:inline-flex;width:1rem;height:1rem;border-radius:50%;border:1.5px solid currentColor;align-items:center;justify-content:center;font-size:.65rem;line-height:1}.hover-card-error{margin:0 0 .5rem;font-size:.8rem}.btn.danger:disabled{opacity:.55}.assignee-empty{font-size:.75rem;color:var(--muted)}.status-option-list{display:flex;flex-direction:column;gap:.55rem}.status-option-row{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.45rem .35rem;border-bottom:1px solid var(--line)}.status-option-row.readonly{opacity:.9}.status-option-row .input{width:min(220px,100%)}.status-swatch{width:14px;height:14px;border-radius:4px;flex-shrink:0;border:1px solid rgba(0,0,0,.08)}.status-color-picks{display:flex;flex-wrap:wrap;gap:.25rem}.status-color-dot{width:16px;height:16px;border-radius:50%;border:2px solid transparent;padding:0;cursor:pointer}.status-color-dot.on{border-color:var(--ink);box-shadow:0 0 0 1px #fff}.status-add-form{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--line)}.status-add-form .input{width:min(240px,100%)}.check{width:20px;height:20px;padding:0;border:1.75px solid #b8c0ca;border-radius:50%;background:#fff;color:transparent;flex-shrink:0;display:inline-grid;place-items:center;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.check:hover:not(:disabled){border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 3px #1f6b4f1f}.check:disabled{cursor:default;opacity:.85}.check-icon{width:11px;height:11px;display:block;opacity:0;transform:scale(.6);transition:opacity .15s ease,transform .15s ease}.check:hover:not(:disabled):not(.on) .check-icon{opacity:.55;transform:scale(1)}.check.on{background:var(--accent);border-color:var(--accent);color:#fff}.check.on .check-icon{opacity:1;transform:scale(1)}.check.on .check-icon-path{stroke-dasharray:18;stroke-dashoffset:0}.check.just-completed{animation:check-pop .34s cubic-bezier(.2,.9,.3,1.2)}.check.just-completed .check-icon-path{stroke-dashoffset:18;animation:check-draw .28s ease forwards .04s}@keyframes check-pop{0%{transform:scale(.7)}60%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes check-draw{to{stroke-dashoffset:0}}.task-row.is-done .task-title{color:var(--muted)}.task-row.is-done .task-title .task-code{opacity:.75}.completion-confetti-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:9999}.avatar-stack{display:flex;align-items:center;flex-direction:row;flex-shrink:0}.avatar-stack .avatar,.avatar-stack .user-avatar{margin-left:0;border:2px solid #fff;flex-shrink:0;position:relative}.avatar-stack .avatar+.avatar,.avatar-stack .user-avatar+.user-avatar,.collaborator-stack .collaborator-avatar-btn+.collaborator-avatar-btn,.collaborator-stack .collaborator-avatar-btn+.collaborator-add-btn{margin-left:-8px}.collaborator-stack-wrap{display:flex;flex-direction:column;gap:.15rem}.collaborator-stack-wrap.busy{opacity:.72;pointer-events:none}.collaborator-avatar-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;padding:0;margin:0;background:transparent;cursor:pointer;border-radius:999px;line-height:0;position:relative;z-index:1}.collaborator-avatar-btn:hover,.collaborator-avatar-btn:focus-visible{z-index:2;outline:none}.collaborator-avatar-btn:focus-visible .user-avatar{box-shadow:0 0 0 2px var(--accent, #2563eb)}.collaborator-add-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;border-radius:999px;border:1.5px dashed #94a3b8;background:#fff;color:#64748b;font-size:1rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;position:relative;z-index:1;flex-shrink:0;margin-left:2px}.collaborator-add-btn:hover{border-color:#64748b;color:#334155;background:#f8fafc}.collaborator-menu{position:fixed;z-index:80;min-width:140px;padding:.45rem;background:#fff;border:1px solid var(--line, #e2e8f0);border-radius:8px;box-shadow:0 8px 24px #0f172a1f}.collaborator-menu-name{font-size:.78rem;font-weight:600;color:#0f172a;padding:.2rem .35rem .4rem}.collaborator-menu-remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;text-align:left;border:0;background:transparent;color:#b91c1c;font-size:.8rem;padding:.35rem .4rem;border-radius:6px;cursor:pointer}.collaborator-menu-remove:hover{background:#fef2f2}.rail-card{background:transparent;border:0;border-radius:0;padding:.35rem .25rem 1rem;margin-bottom:.5rem;border-bottom:1px solid var(--line)}.rail-card:last-child{border-bottom:0;margin-bottom:0}.rail-card h3{margin:0 0 .55rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.progress-label{display:flex;justify-content:space-between;font-size:.78rem;margin-bottom:.3rem}.progress-bar{height:5px;border-radius:999px;background:#e8edf2;overflow:hidden;margin-bottom:.55rem}.progress-bar>span{display:block;height:100%;background:#2f6fed}.module-list{display:flex;flex-direction:column;gap:.05rem;max-height:280px;overflow:auto;scrollbar-width:thin}.module-row{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.32rem .2rem;font-size:.78rem;border:0;background:transparent;color:inherit;text-align:left;border-radius:6px;cursor:pointer}.module-row:hover{background:#eef1f5}.module-row.current{background:#fff;box-shadow:inset 0 0 0 1px var(--line);font-weight:600}.module-row .dot{width:6px;height:6px;border-radius:50%;background:#c5ced8;display:inline-block;margin-right:.4rem}.module-row.current .dot{background:var(--blue)}.module-row.done .dot{background:var(--ok)}.warn-box{margin-top:.65rem;padding:.65rem .7rem;border-radius:9px;background:#fff8e8;border:1px solid #f3e0b0;color:#8a5b00;font-size:.78rem}.deadline{padding:.45rem 0;border:0;margin-bottom:.15rem;background:transparent;display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.deadline.urgent strong{color:var(--danger)}.deadline strong{display:block;font-size:.8rem;font-weight:600}.deadline span{font-size:.72rem;color:var(--muted);white-space:nowrap}.deadline .countdown{margin-top:.35rem;font-weight:800;font-size:.95rem;color:var(--danger);letter-spacing:.04em}.queue-stat{display:flex;justify-content:space-between;align-items:center;font-size:.86rem}.queue-stat em{font-style:normal;background:var(--blue-soft);color:var(--blue);font-weight:700;border-radius:999px;padding:.15rem .55rem;font-size:.78rem}.toast{position:fixed;left:50%;bottom:1.25rem;transform:translate(-50%);background:#1a2332;color:#fff;border-radius:12px;padding:.7rem .85rem;display:flex;gap:.75rem;align-items:center;box-shadow:0 12px 30px #00000038;z-index:130;font-size:.88rem;pointer-events:auto;animation:toast-in .22s ease}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast .btn{background:#fff;color:var(--ink)}.new-task-bar{display:flex;gap:.5rem;align-items:center;margin:0 0 .75rem;padding:.65rem .75rem;background:#fff;border:1px solid var(--line);border-radius:10px}.new-task-bar .input{flex:1}.composer-link{display:block;width:100%;text-align:left;border:0;border-top:1px solid var(--line);background:#fbfcfd;color:var(--muted);padding:.75rem 1rem;font-size:.84rem}.composer-link:hover{color:var(--accent);background:#f5faf7}.template-save{display:flex;gap:.5rem;align-items:center;margin-top:.85rem}.template-save .input{max-width:260px;font-size:.84rem;padding:.4rem .65rem}.project-actions-trigger{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;margin-left:.15rem;border:1px solid #dfe4ec;border-radius:6px;background:#fff;color:#495057;font-size:.85rem;line-height:1;cursor:pointer}.project-actions-trigger:hover,.project-actions-trigger[aria-expanded=true]{background:#f1f3f7;border-color:#ccd3de}.ops-title-row .project-actions-trigger{flex:0 0 auto}.project-actions-menu{position:fixed;z-index:90;min-width:11.5rem;padding:.3rem;border:1px solid #e6eaf0;border-radius:10px;background:#fff;box-shadow:0 8px 24px #0f172a1f}.project-actions-item{display:flex;align-items:center;gap:.5rem;width:100%;border:0;background:transparent;border-radius:7px;padding:.5rem .65rem;font-size:.88rem;color:#212529;cursor:pointer;text-align:left}.project-actions-item:hover{background:#f1f3f7}.project-actions-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:1rem;background:#0f172a59}.project-actions-dialog{width:min(420px,100%);gap:.75rem}.composer{display:flex;gap:.55rem;align-items:center;margin-top:.75rem;padding:.85rem 1rem;border-top:1px solid var(--line);background:#fbfcfd;position:relative;z-index:2}.global-search{position:relative;width:100%}.global-search-form{display:flex;gap:.4rem;align-items:center}.global-search.compact .btn{padding:.45rem .75rem}.search-advanced-btn{min-width:2.2rem;padding:.45rem .55rem;font-size:.85rem;line-height:1}.search-hero{padding:1rem 1.1rem}.search-popover{position:absolute;top:calc(100% + 6px);left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:60;max-height:440px;overflow:auto;animation:overlay-in .16s ease}.search-chips{display:flex;flex-wrap:wrap;gap:.35rem;padding:.65rem .75rem .35rem;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:1}.search-chip{border:1px solid var(--line);background:#f7f9fb;border-radius:999px;padding:.2rem .65rem;font-size:.75rem;cursor:pointer;color:var(--text)}.search-chip.on{background:#1c2b3a;border-color:#1c2b3a;color:#fff}.search-group-title{padding:.55rem .85rem .25rem;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.search-group-title.soft{padding-top:.35rem;font-weight:600;text-transform:none;letter-spacing:0;font-size:.78rem}.search-hit{width:100%;text-align:left;border:0;background:transparent;padding:.65rem .85rem;display:flex;flex-direction:row;align-items:center;gap:.65rem;border-top:1px solid var(--line);color:inherit;text-decoration:none;box-sizing:border-box}a.search-hit:hover,.search-hit:hover,.search-hit.active{background:#f7f9fb}.search-hit-body{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.search-hit-body strong{font-size:.9rem;display:flex;align-items:center;gap:.4rem}.search-type-icon{width:1.4rem;text-align:center;color:var(--muted);flex-shrink:0}.search-avatar{width:1.7rem;height:1.7rem;border-radius:50%;background:#e8eef4;color:#334;font-size:.65rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;position:relative}.search-avatar img{width:100%;height:100%;object-fit:cover}.search-avatar.external{box-shadow:inset 0 0 0 2px #6b8a9e}.search-ext-tag{font-size:.65rem;font-weight:600;color:#5a7388;border:1px solid #c5d3de;border-radius:4px;padding:.05rem .3rem}.search-facepile{display:inline-flex;align-items:center;flex-shrink:0}.search-facepile .search-avatar{margin-left:-.35rem;border:2px solid #fff}.search-facepile .search-avatar:first-child{margin-left:0}.search-facepile-more{font-size:.7rem;color:var(--muted);margin-left:.25rem}.search-saved{border-top:1px solid var(--line);margin-top:.25rem}.search-saved-hit{cursor:pointer}.search-empty{padding:.9rem;color:var(--muted);font-size:.88rem}.last-seen{font-size:.78rem;margin-top:.15rem}.presence-dot{width:7px;height:7px;border-radius:50%;background:var(--muted);display:inline-block}.presence-dot.on{background:var(--ok)}@media(max-width:1100px){.project-phases-rail:not(.is-collapsed){width:210px}.task-col-head,.task-row{--task-cols: 32px minmax(180px, 1fr) minmax(130px, .7fr) minmax(120px, .9fr);min-width:560px}.task-row .hide-sm,.task-col-head .hide-sm{display:none}}@media(max-width:780px){.ops-body{flex-direction:column;height:auto}.project-phases-rail:not(.is-collapsed){width:100%;max-height:260px}.project-phases-rail.is-collapsed{width:100%;max-height:44px}.project-phases-rail{border-right:0;border-bottom:1px solid var(--line)}.ops-top{flex-wrap:wrap}.global-nav-rail:not(.is-collapsed),.global-nav-rail.is-collapsed{width:84px}}.user-away-badge{font-weight:500;color:var(--muted);font-size:.85em}.user-away-label{font-style:italic}.user-avatar.is-away{box-shadow:0 0 0 2px #fff,0 0 0 3.5px #c4a35a}.settings-backdrop{z-index:120;place-items:center;padding:1.25rem;overflow:auto}.settings-modal{position:relative;display:grid;grid-template-columns:200px minmax(0,1fr);grid-template-rows:minmax(0,1fr);width:min(920px,100%);height:min(88vh,780px);animation:overlay-card-in .2s cubic-bezier(.22,1,.36,1);max-height:min(88vh,780px);margin:auto;background:#fff;border-radius:12px;border:1px solid var(--line);box-shadow:0 20px 56px #1a233238;overflow:hidden}.settings-close{position:absolute;top:.55rem;right:.65rem;z-index:2;border:0;background:transparent;font-size:1.5rem;line-height:1;color:var(--muted);cursor:pointer;padding:.15rem .4rem}.settings-close.inline{position:static}.settings-close:hover{color:var(--ink)}.settings-nav{background:#f6f7f9;border-right:1px solid var(--line);padding:1.1rem .65rem;min-height:0;overflow:auto;overscroll-behavior:contain}.settings-nav-title{font-weight:700;font-size:.95rem;padding:.25rem .55rem .75rem}.settings-nav-item{display:block;width:100%;text-align:left;border:0;background:transparent;padding:.45rem .55rem;border-radius:8px;font-size:.9rem;color:var(--ink);cursor:pointer}.settings-nav-item:hover{background:#0000000a}.settings-nav-item.active{background:#fff;font-weight:600;box-shadow:0 0 0 1px var(--line)}.settings-modal .settings-main{min-width:0;min-height:0;padding:1.25rem 1.5rem 1.5rem;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;background:#fff;border:0;border-radius:0}.settings-modal .settings-main h2{margin:0 0 .65rem;font-size:1.2rem}.settings-placeholder{padding:1rem 0}.settings-photo-row{display:flex;gap:1rem;align-items:center;margin-bottom:.75rem}.settings-link{color:#2f6fed;font-size:.88rem;cursor:pointer}.settings-link:disabled{opacity:.45;cursor:not-allowed}.settings-about{resize:vertical;min-height:96px}.settings-profile .label .req{color:var(--danger)}.settings-saved{font-size:.82rem;color:var(--ok)}.settings-notif-card{border:1px solid var(--line);border-radius:10px;margin-bottom:.65rem;overflow:hidden}.settings-notif-card-head{width:100%;display:flex;align-items:center;gap:.45rem;border:0;background:#fafbfc;padding:.7rem .85rem;cursor:pointer;text-align:left;font-size:.95rem;font-weight:600}.settings-notif-card-title{flex:1}.settings-chevron{display:inline-block;transition:transform .15s ease;color:var(--muted);font-size:.75rem}.settings-chevron.open{transform:rotate(90deg)}.settings-notif-card-body{padding:.65rem .85rem .85rem;border-top:1px solid var(--line)}.settings-soon{font-size:.72rem;font-weight:600;color:var(--muted);background:#eef1f4;padding:.15rem .45rem;border-radius:999px}.settings-check{display:flex;align-items:flex-start;gap:.5rem;font-size:.9rem;padding:.28rem 0;cursor:pointer}.settings-check.nested{padding-left:1.4rem;font-weight:400}.settings-desktop-group{margin-bottom:.65rem}.settings-desktop-group>.settings-check{font-weight:600}.settings-toggle-list{display:grid;gap:.45rem}.settings-toggle{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:.9rem;padding:.35rem 0}.settings-toggle.disabled{opacity:.55}.settings-toggle input[type=checkbox]{width:2.4rem;height:1.25rem;accent-color:#2f6fed}.settings-project-override{border:1px solid var(--line);border-radius:10px;padding:.75rem .85rem}.settings-project-picker{position:relative}.settings-project-results{position:absolute;z-index:5;left:0;right:0;top:calc(100% + 4px);max-height:240px;overflow:auto;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 10px 28px #1a233224}.settings-project-result{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;border:0;background:transparent;padding:.55rem .75rem;text-align:left;cursor:pointer;border-bottom:1px solid #f0f2f4}.settings-project-result:last-child{border-bottom:0}.settings-project-result:hover,.settings-project-result.active{background:#f4f7fb}.settings-project-result-empty{padding:.7rem .75rem;font-size:.85rem}.settings-project-customized{margin-top:.35rem}.settings-project-custom-list{list-style:none;margin:0;padding:0;display:grid;gap:.25rem}.settings-project-custom-list li{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.35rem .5rem;border-radius:8px;background:#f7f8fa}.settings-project-clear{border:0;background:transparent;color:var(--muted);font-size:1.1rem;line-height:1;cursor:pointer;padding:.1rem .35rem}.settings-project-clear:hover{color:var(--danger)}.ooo-modal{width:min(520px,100%)}.ooo-range-row{display:grid;grid-template-columns:1fr 1fr auto;gap:.65rem;align-items:end}.ooo-trash{border:1px solid var(--line);background:#fff;border-radius:8px;height:2.35rem;width:2.35rem;cursor:pointer}.ooo-past-toggle{border:0;background:transparent;padding:.25rem 0;display:inline-flex;align-items:center;gap:.35rem;font-weight:600;cursor:pointer}.ooo-past-list{margin:.35rem 0 0;padding-left:1.25rem;color:var(--muted);font-size:.88rem}.ooo-preview-card{display:flex;gap:.75rem;align-items:center;padding:.75rem;border:1px solid var(--line);border-radius:10px;background:#fafbfc}.ooo-preview-name{font-weight:600}@media(max-width:720px){.settings-modal{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);height:min(92vh,780px);max-height:92vh}.settings-nav{display:flex;flex-wrap:wrap;gap:.25rem;border-right:0;border-bottom:1px solid var(--line);overflow:visible}.settings-nav-title{width:100%}.settings-nav-item{width:auto}.ooo-range-row{grid-template-columns:1fr}}.date-range-readonly{font-size:.84rem}.date-range-picker{--drp-accent: #3d6ec9;--drp-ribbon: #3d6ec9;width:280px;background:#fff;border:1px solid #e8ebef;border-radius:10px;padding:12px 14px 10px;box-shadow:0 8px 28px #1a233224,0 1px 2px #1a23320a;font-family:inherit}.date-range-picker.is-embedded{box-shadow:none;border:0;padding:0;width:268px}.drp-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}.drp-field{min-width:0}.drp-input-wrap{position:relative;display:block}.drp-input{width:100%;border:1px solid #d8dee6;border-radius:6px;padding:7px 26px 7px 10px;font:inherit;font-size:.82rem;color:#1a2332;background:#fff;cursor:pointer;box-sizing:border-box}.drp-input::placeholder{color:#9aa3af}.drp-field.is-active .drp-input{border-color:var(--drp-accent);box-shadow:0 0 0 2px #4573d22e}.drp-clear-one{position:absolute;right:4px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#8b95a5;font-size:1rem;line-height:1;width:22px;height:22px;border-radius:4px;padding:0;display:inline-flex;align-items:center;justify-content:center}.drp-clear-one:hover{background:#eef1f5;color:#1a2332}.drp-cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;padding:0 2px}.drp-month{font-weight:600;font-size:.88rem;color:#1a2332}.drp-nav{border:0;background:transparent;border-radius:6px;width:28px;height:28px;font-size:1.15rem;line-height:1;color:#5b6573;display:inline-flex;align-items:center;justify-content:center}.drp-nav:hover{background:#eef1f5;color:#1a2332}.drp-weekdays,.drp-grid{display:grid;grid-template-columns:repeat(7,1fr);text-align:center}.drp-weekdays{font-size:.68rem;font-weight:600;color:#8b95a5;margin-bottom:2px}.drp-weekdays span{padding:4px 0}.drp-grid{gap:0;row-gap:3px}.drp-cell{position:relative;height:32px;display:flex;align-items:center;justify-content:center}.drp-cell.empty{pointer-events:none}.drp-cell.in-ribbon{background:var(--drp-ribbon)}.drp-cell.ribbon-left{border-top-left-radius:999px;border-bottom-left-radius:999px}.drp-cell.ribbon-right{border-top-right-radius:999px;border-bottom-right-radius:999px}.drp-day{position:relative;z-index:1;border:0;background:transparent;width:100%;height:100%;border-radius:0;font:inherit;font-size:.8rem;color:#1a2332;display:inline-flex;align-items:center;justify-content:center;padding:0}.drp-day:hover:not(.in-ribbon){background:#e8eef9;border-radius:999px}.drp-day.today:not(.in-ribbon){box-shadow:inset 0 0 0 1.5px #c5cdd8;font-weight:650;border-radius:999px}.drp-day.in-ribbon{color:#fff;font-weight:600}.drp-day.in-ribbon:hover{background:#ffffff1f}.drp-footer{display:flex;align-items:center;justify-content:space-between;margin-top:8px;padding-top:8px;border-top:1px solid #eef1f4}.drp-footer-icons{display:flex;gap:6px;color:#8b95a5;align-items:center}.drp-icon{display:inline-flex;opacity:.85;cursor:default}.drp-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid transparent;border-radius:8px;background:transparent;color:#8b95a5;cursor:pointer;padding:0}.drp-icon-btn:hover{background:#eef1f5;color:#1a2332}.drp-icon-btn.is-active,.drp-icon-btn.has-value{color:#4573d2;background:#eaf1ff;border-color:#c9d8f5}.drp-panel{margin-top:8px;padding:10px 4px 4px;border-top:1px solid #eef1f4}.drp-panel-title{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-bottom:.55rem}.drp-time-row{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.drp-time-field{display:flex;flex-direction:column;gap:.25rem;font-size:.78rem;color:var(--muted)}.drp-time-input{border:1px solid var(--line);border-radius:8px;padding:.4rem .5rem;font:inherit;color:var(--ink);background:#fff}.drp-panel-clear{margin-top:.55rem;border:0;background:transparent;color:#4573d2;font-weight:600;font-size:.8rem;padding:0;cursor:pointer}.drp-panel-clear:hover{text-decoration:underline}.drp-repeat-list{display:flex;flex-direction:column;gap:.15rem}.drp-repeat-option{border:0;background:transparent;text-align:left;padding:.45rem .55rem;border-radius:8px;font:inherit;cursor:pointer;color:var(--ink)}.drp-repeat-option:hover{background:#f2f4f7}.drp-repeat-option.is-active{background:#eaf1ff;color:#2f6fed;font-weight:600}.drp-footer-actions{display:flex;align-items:center;gap:.75rem}.drp-today,.drp-clear-all{border:0;background:transparent;color:#4573d2;font-weight:600;font-size:.82rem;padding:4px 2px;cursor:pointer}.drp-today:hover,.drp-clear-all:hover{text-decoration:underline}.date-status-green{color:var(--ok)}.date-status-yellow{color:#c47d1a}.date-status-red{color:#d32f2f}.date-status-neutral{color:#6b7785}.task-date-cell{position:relative}.task-date-trigger{border:0;background:transparent;padding:.2rem .25rem;border-radius:6px;font:inherit;font-size:.78rem;font-weight:500;cursor:pointer;text-align:left;max-width:100%;line-height:1.25;white-space:nowrap}.task-date-trigger:hover{background:#f2f4f7}.date-placeholder-icon{color:#9aa3af;display:block}.task-date-popover{position:absolute;top:calc(100% + 6px);right:0;left:auto;z-index:60;background:#fff;border:1px solid #e8ebef;border-radius:10px;padding:12px 14px 10px;box-shadow:0 8px 28px #1a233224,0 1px 2px #1a23320a;min-width:0}.task-date-popover-portal{position:fixed;right:auto;z-index:1200;background:#fff;isolation:isolate;transform-origin:top right;animation:popover-in .16s ease}@keyframes popover-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.task-date-popover-actions{display:none}.new-task-bar-with-dates{flex-direction:column;align-items:stretch;gap:.65rem}.new-task-bar-main{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.new-task-bar-with-dates .date-range-picker{width:280px;border:1px solid #e8ebef;border-radius:10px;padding:12px 14px 10px}.project-view-tabs{display:flex;gap:.25rem;margin:0 0 .85rem;border-bottom:1px solid var(--line);padding-bottom:.35rem;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.project-view-tab{flex:0 0 auto;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;padding:.4rem .75rem;border-radius:8px 8px 0 0;cursor:pointer}.project-view-tab:hover{color:var(--ink);background:#f2f4f7}.project-view-tab.active{color:var(--accent);background:var(--accent-soft)}.project-overview{padding:.25rem 0 1.5rem}.overview-intro{margin:0 0 1rem;font-size:.9rem}.overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}@media(max-width:900px){.overview-grid{grid-template-columns:1fr}}.overview-card{border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem 1.15rem;background:#fff}.overview-card h2{margin:0 0 .75rem;font-size:.95rem}.overview-subhead{margin:.85rem 0 .35rem;font-size:.8rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}.overview-metrics{display:flex;flex-wrap:wrap;gap:.85rem 1.25rem}.overview-metrics>div{display:flex;flex-direction:column;gap:.15rem;min-width:4.5rem}.overview-metric-value{font-size:1.35rem;font-weight:700;line-height:1.1}.overview-metric-value.date-status-red{color:#be123c}.overview-metric-value.date-status-yellow{color:#c2410c}.overview-metric-value.date-status-green{color:#067647}.overview-workload,.overview-phases,.overview-task-list{list-style:none;margin:0;padding:0}.overview-workload>li+li,.overview-phases>li+li{margin-top:.85rem;padding-top:.75rem;border-top:1px solid #f0f2f5}.overview-workload-head,.overview-phase-head{display:flex;justify-content:space-between;gap:.75rem;align-items:baseline;margin-bottom:.35rem}.overview-task-list{display:flex;flex-direction:column;gap:.3rem}.overview-task-list li{display:flex;flex-wrap:wrap;gap:.35rem .6rem;align-items:baseline;font-size:.88rem}.overview-task-link{text-align:left;font:inherit;font-weight:500}.overview-phase-tag{font-size:.78rem}.overview-empty{margin:.25rem 0 0;font-size:.86rem}.overview-progress-track{height:6px;border-radius:999px;background:#eef1f4;overflow:hidden}.overview-progress-fill{height:100%;border-radius:inherit;background:var(--accent, #1f6b4f);min-width:0;transition:width .2s ease}.task-attachments-hint{margin:.45rem 0 0;font-size:.78rem}.timeline-view{display:flex;flex-direction:column;gap:.35rem}.timeline-scale,.timeline-row{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);gap:.5rem;align-items:center}.timeline-scale{margin-bottom:.35rem}.timeline-scale-label{font-size:.75rem;color:var(--muted);font-weight:600}.timeline-scale-track,.timeline-track{position:relative;height:2rem;background:#f7f8fa;border:1px solid var(--line);border-radius:8px;overflow:visible}.timeline-tick{position:absolute;top:.35rem;transform:translate(-50%);font-size:.68rem;color:var(--muted);white-space:nowrap}.timeline-lane{border-top:1px solid var(--line);padding-top:.35rem}.timeline-lane-head{display:flex;align-items:center;gap:.4rem;border:0;background:transparent;padding:.35rem 0;font:inherit;cursor:pointer;width:100%;text-align:left}.timeline-chevron{width:1rem;color:var(--muted)}.timeline-task-name{border:0;background:transparent;text-align:left;font:inherit;font-size:.82rem;padding:.2rem 0;cursor:pointer;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-task-name:hover{color:var(--accent)}.timeline-bar{position:absolute;top:.35rem;height:1.3rem;border:0;border-radius:6px;padding:0 .4rem;font-size:.7rem;font-weight:650;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.timeline-bar.date-status-green{background:var(--ok)}.timeline-bar.date-status-yellow{background:var(--warn)}.timeline-bar.date-status-red{background:var(--danger)}.timeline-bar.date-status-neutral{background:#94a3b8}.timeline-marker{position:absolute;top:.55rem;width:.7rem;height:.7rem;border-radius:999px;border:0;transform:translate(-50%);cursor:pointer;padding:0}.timeline-marker.date-status-green{background:var(--ok)}.timeline-marker.date-status-yellow{background:var(--warn)}.timeline-marker.date-status-red{background:var(--danger)}.timeline-marker.neutral{background:#94a3b8}.timeline-date-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:30;background:#fff;border:1px solid #e8ebef;border-radius:10px;padding:12px 14px 10px;box-shadow:0 8px 28px #1a233224;animation:overlay-in .16s ease}.task-drawer-dates-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:40;background:#fff;border:1px solid #e8ebef;border-radius:10px;padding:12px 14px 10px;box-shadow:0 8px 28px #1a233224;animation:popover-in .16s ease;transform-origin:top left}.calendar-view{display:flex;flex-direction:column;gap:.65rem}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.calendar-title{margin:0;font-size:1.05rem}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}.calendar-weekdays{background:#f7f8fa;font-size:.72rem;font-weight:650;color:var(--muted)}.calendar-weekdays span{background:#f7f8fa;padding:.4rem;text-align:center}.calendar-cell{min-height:6.5rem;background:#fff;padding:.35rem;display:flex;flex-direction:column;gap:.25rem}.calendar-cell.empty{background:#fafbfc}.calendar-cell.is-today{background:#f5faf7}.calendar-cell.is-today .calendar-daynum{color:var(--accent);font-weight:750;display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.45rem;border-radius:999px;background:var(--accent-soft)}.calendar-daynum{font-size:.78rem;font-weight:650;color:var(--muted)}.calendar-pills{display:flex;flex-direction:column;gap:.15rem;min-height:0}.calendar-pill{border:0;border-radius:4px;padding:.12rem .3rem;font-size:.68rem;font-weight:650;text-align:left;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.calendar-pill.date-status-green{background:var(--ok)}.calendar-pill.date-status-yellow{background:var(--warn)}.calendar-pill.date-status-red{background:var(--danger)}.calendar-pill.date-status-neutral{background:#94a3b8}.calendar-more{font-size:.68rem}.project-activity-view{max-width:720px}.project-activity-title{margin:0 0 .75rem;font-size:1.05rem}.project-activity-list{list-style:none;margin:0;padding:0}.project-activity-item{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--line);font-size:.9rem}.project-activity-time{white-space:nowrap;font-size:.78rem}.task-drawer-dates{position:relative}.task-drawer-dates-btn{border:0;background:transparent;padding:0;font:inherit;font-weight:600;cursor:pointer;color:inherit}.task-drawer-dates-btn:hover{text-decoration:underline}.task-copy-link-btn{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-top:.15rem;padding:0;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:color .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.task-copy-link-btn:hover{background:#eef1f5;color:var(--ink);border-color:var(--line)}.task-copy-link-btn.is-copied{color:var(--ok);background:var(--ok-soft);border-color:#b7e4c7;box-shadow:0 0 0 3px #0676471a;animation:task-copy-pop .3s ease}.task-copy-icons{position:relative;width:16px;height:16px;display:block}.task-copy-link-icon,.task-copy-check{position:absolute;top:0;right:0;bottom:0;left:0;transition:opacity .18s ease,transform .18s ease}.task-copy-link-icon{opacity:1;transform:scale(1)}.task-copy-check{opacity:0;transform:scale(.7);color:var(--ok)}.task-copy-link-btn.is-copied .task-copy-link-icon{opacity:0;transform:scale(.7)}.task-copy-link-btn.is-copied .task-copy-check{opacity:1;transform:scale(1)}.task-copy-link-btn.is-copied .task-copy-check-path{stroke-dasharray:24;stroke-dashoffset:24;animation:task-copy-draw .35s ease forwards .04s}@keyframes task-copy-pop{0%{transform:scale(.92)}55%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes task-copy-draw{to{stroke-dashoffset:0}}.share-access-page{display:flex;justify-content:center;padding-top:2rem}.share-access-card{width:min(480px,100%)}.share-access-card h1{margin:0;font-size:1.35rem;letter-spacing:-.02em}.share-access-sent{padding:.85rem 1rem;border-radius:10px;background:var(--ok-soft);border:1px solid #b7e4c7}.shared-task-page{min-height:60vh}.shared-task-banner{padding:.65rem 1.25rem;background:#fff;border-bottom:1px solid var(--line);font-size:.86rem}.nav-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .35rem;border-radius:999px;background:var(--danger);color:#fff;font-size:.68rem;font-weight:700}.overlay-in{animation:overlay-in .16s ease}@keyframes overlay-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes overlay-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes overlay-card-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ui-loading{display:inline-flex;align-items:center;gap:.55rem;margin:0;padding:.35rem 0}.ui-spinner{width:.95rem;height:.95rem;border:2px solid #d5dbe3;border-top-color:var(--accent);border-radius:50%;animation:ui-spin .7s linear infinite;flex-shrink:0}@keyframes ui-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.check.just-completed,.check.just-completed .check-icon-path,.subtask-check.is-checked,.subtask-row.is-done,.task-copy-link-btn.is-copied,.task-copy-link-btn.is-copied .task-copy-check-path,.task-drawer-backdrop,.task-drawer,.task-date-popover-portal,.task-drawer-dates-popover,.toast,.overlay-in,.modal-backdrop,.modal-card,.phase-delete-modal,.phase-delete-card,.project-completion-overlay,.settings-modal,.anchored-menu-panel,.account-menu-panel,.assignee-picker,.assignee-hover-card,.mention-menu,.search-popover,.message-action-menu,.timeline-date-popover,.ui-spinner{animation:none!important}.check,.check-icon,.task-copy-link-btn,.task-copy-link-icon,.task-copy-check,.status-select-face,.global-nav-rail,.global-nav-collapse-btn,.global-nav-item,.project-phases-rail,.project-phases-collapse-btn,.project-phases-rail .phase-nav-item,.ops-body,.ops-left,.assignee-chip-x,.empty-assignee-btn,.empty-assignee-tooltip,.settings-chevron{transition:none!important}}.task-print-only{display:none!important}.task-menu-print-item{display:inline-flex;align-items:center;gap:.45rem}@media print{@page{margin:.75in}body{background:#fff!important;color:#111!important}body *{visibility:hidden!important}.task-print-root,.task-print-root *{visibility:visible!important}.task-print-root{position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}.task-drawer-backdrop,.task-drawer{position:static!important;inset:auto!important;width:100%!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;border:0!important;overflow:visible!important;transform:none!important;animation:none!important}.global-nav-rail,.project-phases-rail,.anchored-menu-panel,.no-print{display:none!important}.task-print-only{display:block!important}dl.task-print-only.task-print-meta{display:grid!important;grid-template-columns:1fr;gap:.35rem;margin:.75rem 0 1rem;padding:0}.task-print-meta>div{display:grid!important;grid-template-columns:5.5rem 1fr;gap:.5rem;margin:0}.task-print-meta dt{margin:0;font-weight:600;color:#444}.task-print-meta dd,.task-print-people{margin:0}.task-drawer-head{display:block!important;margin-bottom:.75rem}.task-drawer-head h2{font-size:1.5rem!important;margin:0 0 .35rem!important}.task-section{break-inside:avoid;background:transparent!important;border:0!important;border-radius:0!important;padding:.5rem 0!important;margin:0 0 .85rem!important;box-shadow:none!important}.task-section .section-title{margin-bottom:.35rem}.message-list{gap:.5rem}.message-item{background:transparent!important;border:1px solid #ddd!important;border-radius:0!important;break-inside:avoid}.comment-attachment-link,.comment-attachment-thumb-btn,.comment-attachment-actions,.comment-attachment-pdf-badge,.comment-attachment-file-badge,.attachment-lightbox{display:none!important}.comment-attachment-card,.comment-pending-card{display:block!important;border:0!important;background:transparent!important;padding:0!important}.comment-attachment-print{display:inline!important}.comment-attachments li{margin:.2rem 0;font-size:.9rem}}.ui-empty-flush{border:0;box-shadow:none;background:transparent;padding:1.25rem .5rem}.ui-action-menu{position:relative;display:inline-block}.ui-action-menu-panel{position:absolute;right:0;top:calc(100% + 4px);min-width:10rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);padding:.25rem}.ui-action-menu-item{display:block;width:100%;text-align:left;border:0;background:transparent;padding:.45rem .65rem;border-radius:var(--radius-sm);color:var(--ink);font:inherit;font-size:var(--text-sm)}.ui-action-menu-item:hover:not(:disabled){background:var(--surface-sunken)}.ui-action-menu-item.danger{color:var(--danger)}.project-view-tabs .inbox-tab{flex:0 0 auto;border:0;background:transparent;color:var(--muted);font:inherit;font-size:.86rem;font-weight:600;padding:.4rem .75rem;border-radius:8px 8px 0 0}.project-view-tabs .inbox-tab:hover{color:var(--ink);background:#f2f4f7}.project-view-tabs .inbox-tab.active{color:var(--accent);background:var(--accent-soft)}.auth-mode-toggle.ui-tabs,.auth-mode-toggle{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;padding:.25rem;background:var(--surface-sunken);border-radius:var(--radius);border-bottom:0;margin:0}.auth-mode-toggle .inbox-tab{border:0;background:transparent;border-radius:var(--radius-sm);font-weight:600;padding:.55rem .75rem}.auth-mode-toggle .inbox-tab.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-xs)}.settings-side-nav button.settings-nav-item{width:100%;text-align:left;border:0;background:transparent;font:inherit;cursor:pointer}.stack.gap-xs{gap:.35rem}.stack.gap-sm{gap:.55rem}.stack.gap-md{gap:1rem}.muted.sm,.sm.muted{font-size:.8rem}.error-text{color:var(--danger);margin:0;font-size:.9rem}.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ticket-header-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ticket-header-meta{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.45rem}.ticket-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;padding:.85rem 1rem;margin-bottom:1rem}.ticket-filters .select,.ticket-filters .input{min-width:9rem}.ticket-breached-check{display:inline-flex;align-items:center;gap:.4rem;font-size:.9rem;padding-bottom:.35rem}.ticket-search{display:flex;gap:.4rem;margin-left:auto;align-items:center}.ticket-search .input{min-width:12rem}.ticket-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:560px){.ticket-form-row{grid-template-columns:1fr}.ticket-search{margin-left:0;width:100%}}.ticket-table tbody tr:hover{background:#f8fafb}.ticket-row-breached{background:#fff8f6}.ticket-sla-breached{color:var(--danger);font-weight:600}.ticket-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:1rem;align-items:start}@media(max-width:900px){.ticket-detail-layout{grid-template-columns:1fr}}.ticket-thread-card{padding:0;overflow:hidden}.ticket-thread-list{max-height:min(55vh,520px);overflow:auto;display:flex;flex-direction:column;gap:.65rem;padding:1rem}.ticket-msg{border:1px solid #e8ecf0;border-radius:8px;padding:.75rem .85rem;background:#fff}.ticket-msg.is-internal{background:#f4f6f8;border-style:dashed}.ticket-msg-head{display:flex;gap:.65rem;align-items:flex-start;margin-bottom:.35rem}.ticket-msg-head .badge{margin-left:.4rem}.ticket-msg-body{margin:.35rem 0 0;white-space:pre-wrap;line-height:1.45}.ticket-reply{border-top:1px solid #e8ecf0;padding:.85rem 1rem 1rem;display:flex;flex-direction:column;gap:.55rem;background:#fafbfc}.ticket-reply-modes{display:flex;gap:.35rem}.ticket-reply-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.ticket-props{padding:1rem}.ticket-props-title{margin:0 0 .75rem;font-size:.95rem}.ticket-props-dl{margin:0;display:flex;flex-direction:column;gap:.65rem}.ticket-props-dl>div{display:grid;grid-template-columns:5.5rem 1fr;gap:.35rem;font-size:.9rem}.ticket-props-dl dt{margin:0;color:var(--muted)}.ticket-props-dl dd{margin:0}.ticket-events{list-style:none;margin:0;padding:.5rem 0}.ticket-events li{padding:.65rem 1rem;border-bottom:1px solid #eef1f4}.ticket-events li:last-child{border-bottom:0}.ticket-dash-cards{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:.85rem;margin-bottom:1rem}.ticket-dash-card{text-align:left;cursor:pointer;border:1px solid #e8ecf0;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.25rem}.ticket-dash-card:hover{border-color:#cfd8e0;background:#f8fafb}.ticket-dash-card-warn .ticket-dash-num{color:var(--danger)}.ticket-dash-num{font-size:1.75rem;line-height:1.1}.ticket-dash-charts{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:900px){.ticket-dash-charts{grid-template-columns:1fr}.ticket-dash-cards{grid-template-columns:1fr 1fr}}.ticket-dash-chart h3{margin:0 0 .75rem;font-size:.95rem}.ticket-dash-links{display:flex;flex-wrap:wrap;gap:.5rem .85rem;margin-top:.5rem;font-size:.85rem}.ticket-inline-add{display:flex;gap:.5rem;max-width:28rem}.ticket-inline-add .input{flex:1}
