:root{--fs-2xs:11px;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:26px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--gray-0:#fff;--gray-25:#fbfcfd;--gray-50:#f5f7fa;--gray-100:#eef1f5;--gray-150:#e7ebf1;--gray-200:#dde3ea;--gray-300:#cbd3dd;--gray-400:#a4afbd;--gray-500:#788596;--gray-600:#586374;--gray-700:#3d4756;--gray-800:#28303c;--gray-900:#18222e;--info:#2563eb;--info-weak:#eef3ff;--info-border:#d4e0fb;--success:#197b49;--success-weak:#e8f5ee;--success-border:#c5e6d2;--warning:#986409;--warning-weak:#fdf4e3;--warning-border:#f1deb6;--danger:#c33a22;--danger-hover:#a9321d;--danger-active:#8f2a19;--danger-weak:#fcebe8;--danger-border:#f5d2cb;--surface-inverse:#2b323c;--bg:#fbfcfd;--surface:var(--gray-0);--surface-sunken:var(--gray-25);--border:var(--gray-200);--border-strong:var(--gray-300);--text:var(--gray-900);--text-2:var(--gray-600);--text-3:#687485;--text-on-primary:#fff;--font-sans:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--z-sticky:10;--z-topbar:30;--z-scrim:40;--z-popover:41;--z-drawer-scrim:55;--z-drawer:60;--z-modal:200;--z-menu:250;--z-toast:300;--shadow-xs:0 1px 2px #161b230d;--shadow-sm:0 1px 3px #161b2312, 0 1px 2px #161b230a;--shadow-md:0 4px 12px #161b2314, 0 2px 4px #161b230a;--shadow-lg:0 12px 32px #161b231f, 0 4px 8px #161b230d;--shadow-pop:0 16px 48px #161b232e;--cell-py:11px;--cell-px:14px;--control-h:36px;--gap:20px;--primary:#e8392e;--primary-hover:#f24b3f;--primary-active:#cf2f24;--primary-fill:#e32519;--primary-ink:#b11d13;--primary-fill-hover:#c72116;--primary-fill-active:#ac1c13;--primary-weak:#e8392e26;--primary-weak-2:#e8392e42;--primary-border:#e8392e5c;--ring:#e8392e66}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);font-size:var(--fs-md);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.45}::selection{background:var(--primary-weak-2)}.mono{font-family:var(--font-mono);font-feature-settings:"tnum" 1}h1,h2,h3,h4,p{margin:0}button{font-family:inherit}.app{grid-template-columns:var(--sidebar-w,244px) 1fr;width:100vw;height:100vh;transition:grid-template-columns .22s cubic-bezier(.4,0,.2,1);display:grid;overflow:hidden}.app.collapsed{--sidebar-w:64px}.scrim{display:none}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;min-width:0;min-height:0;display:flex}@media (max-width:768px){.app{grid-template-columns:1fr}.sidebar{width:264px;z-index:var(--z-drawer);box-shadow:var(--shadow-pop);transition:transform .24s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.app.mobile-open .sidebar{transform:none}.scrim{z-index:var(--z-drawer-scrim);opacity:0;pointer-events:none;background:#0f141e73;transition:opacity .2s;display:block;position:fixed;inset:0}.app.mobile-open .scrim{opacity:1;pointer-events:auto}table.data{min-width:560px}.page-head{flex-wrap:wrap}.page-head .spacer{flex-basis:100%}.content-pad{padding:16px}}.sidebar-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;height:60px;padding:0 18px;display:flex}.sidebar-head:has(.proj-switch){flex-direction:column;align-items:stretch;gap:6px;height:auto;min-height:60px;padding:10px 12px}.proj-switch{flex-direction:column;gap:6px;display:flex;position:relative}.proj-switch-back{font-size:var(--fs-xs);color:var(--text-3);align-items:center;gap:3px;text-decoration:none;display:inline-flex}.proj-switch-back:hover{color:var(--primary-ink)}.rot-180{transform:rotate(180deg)}.proj-switch-btn{text-align:left;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--r-md);cursor:pointer;align-items:center;gap:8px;width:100%;padding:7px 10px;display:flex}.proj-switch-btn:hover{border-color:var(--border-strong)}.proj-switch-key{font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:.5px;color:var(--primary-ink);background:var(--primary-weak);border-radius:4px;flex-shrink:0;padding:1px 5px;font-weight:700}.proj-switch-name{min-width:0;font-weight:600;font-size:var(--fs-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.proj-switch-chev{color:var(--text-3);flex-shrink:0;transition:transform .12s}.proj-switch-chev.open{transform:rotate(180deg)}.proj-switch-pop{z-index:var(--z-dropdown,60);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-pop);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.proj-switch-search{border-bottom:1px solid var(--border);padding:8px}.proj-switch-search .input{height:32px}.proj-switch-list{max-height:300px;padding:4px;overflow-y:auto}.proj-switch-item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:8px;width:100%;padding:7px 8px;display:flex}.proj-switch-item:hover{background:var(--surface-sunken)}.proj-switch-item.on{background:var(--primary-weak)}.proj-switch-item-key{flex-shrink:0}.proj-switch-item-name{min-width:0;font-size:var(--fs-sm);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.proj-switch-item-status{flex-shrink:0}.proj-switch-empty{text-align:center;font-size:var(--fs-sm);padding:14px}.proj-switch-all{border-top:1px solid var(--border);font-size:var(--fs-sm);color:var(--text-2);align-items:center;gap:6px;padding:8px 12px;text-decoration:none;display:flex}.proj-switch-all:hover{background:var(--surface-sunken);color:var(--text)}.proj-head{min-width:0}.proj-head-meta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:5px;display:flex}.logo-mark{background:var(--primary-fill);width:30px;height:30px;color:var(--text-on-primary);font-weight:700;font-size:var(--fs-lg);letter-spacing:-.02em;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.brand{flex-direction:column;gap:3px;min-width:0;display:flex}.brand-logo{width:auto;height:26px;display:block}.brand-mark{flex-shrink:0;width:30px;height:30px;display:block}.brand-mark-lg{width:40px;height:40px}.brand-sub{font-size:var(--fs-2xs);color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;font-weight:450;overflow:hidden}.brand-logo-lg{height:38px}.logo-word{font-weight:600;font-size:var(--fs-lg);letter-spacing:-.01em;white-space:nowrap}.logo-word small{font-weight:450;font-size:var(--fs-2xs);color:var(--text-3);letter-spacing:0;display:block}.nav{flex-direction:column;flex:1;gap:2px;padding:12px;display:flex;overflow-y:auto}.nav-label{font-size:var(--fs-2xs);letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;padding:14px 10px 6px;font-weight:600}.nav-item{border-radius:var(--r-md);color:var(--text-2);font-size:var(--fs-md);cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;align-items:center;gap:11px;width:100%;padding:8px 10px;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--gray-50);color:var(--text)}.nav-item.active{background:var(--primary-weak);color:var(--primary-ink,var(--primary));font-weight:600}.nav-item svg{flex-shrink:0}.collapsed .logo-word,.collapsed .nav-label,.collapsed .nav-item span,.collapsed .side-foot-txt{display:none}.collapsed .nav-item{justify-content:center;padding:9px}.collapsed .sidebar-head{justify-content:center;padding:0}.nav-group .nav-chev{color:var(--text-3);align-items:center;margin-left:auto;transition:transform .15s;display:flex}.nav-group .nav-chev.open{transform:rotate(90deg)}.nav-item.nav-group.has-active{color:var(--text)}.nav-item.nav-child{font-size:var(--fs-sm);gap:0;padding-left:39px}.nav-item.nav-child.active{background:var(--primary-weak);color:var(--primary);font-weight:600}.side-foot{border-top:1px solid var(--border);align-items:center;gap:10px;padding:12px;display:flex}.avatar{background:var(--primary-weak-2);width:32px;height:32px;color:var(--primary-ink,var(--primary));font-weight:600;font-size:var(--fs-sm);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.side-foot-txt{min-width:0}.side-foot-txt .n{font-size:var(--fs-sm);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.side-foot-txt .e{font-size:var(--fs-xs);color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:14px;height:60px;padding:0 22px;display:flex}.topbar .crumbs{font-size:var(--fs-sm);color:var(--text-3);white-space:nowrap;align-items:center;gap:8px;min-width:0;display:flex}.topbar .crumbs .cur{color:var(--text);font-weight:600;font-size:var(--fs-lg);letter-spacing:-.01em}.topbar .crumbs .crumb{align-items:center;gap:8px;min-width:0;display:inline-flex}.topbar .crumbs .crumb-link{color:var(--text-3);border-radius:5px;font-weight:500;text-decoration:none;transition:color .12s}a.crumb-link:hover{color:var(--primary-ink)}.topbar .crumbs .crumb-sep{color:var(--border-strong);-webkit-user-select:none;user-select:none;font-weight:400}.topbar .crumbs .crumb:last-child{overflow:hidden}.topbar .crumbs .crumb:last-child .cur{text-overflow:ellipsis;overflow:hidden}@media (max-width:640px){.topbar .crumbs .crumb:not(:last-child){display:none}}.topbar .spacer{flex:1}.icon-btn{border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface);cursor:pointer;width:34px;height:34px;color:var(--text-2);place-items:center;transition:background .12s,border-color .12s;display:grid}.icon-btn:hover{background:var(--gray-50);border-color:var(--border-strong);color:var(--text)}.content{flex:1;min-height:0;overflow-y:auto}.content-pad{padding:24px}.btn{height:var(--control-h);border-radius:var(--r-md);font-size:var(--fs-md);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:600;transition:background .13s,border-color .13s,box-shadow .13s,color .13s;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 3px var(--ring);outline:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn svg{flex-shrink:0}.btn-primary{background:var(--primary-fill);color:var(--text-on-primary)}.btn-primary:hover:not(:disabled){background:var(--primary-fill-hover)}.btn-primary:active:not(:disabled){background:var(--primary-fill-active)}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.btn-ghost{color:var(--text-2);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--gray-100);color:var(--text)}.btn-danger{background:var(--danger);color:var(--text-on-primary,#fff)}.btn-danger:hover:not(:disabled){background:var(--danger-hover)}.btn-danger:active:not(:disabled){background:var(--danger-active)}.btn-sm{height:30px;font-size:var(--fs-sm);padding:0 11px}.input,.select{height:var(--control-h);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);font-size:var(--fs-md);color:var(--text);width:100%;padding:0 11px;font-family:inherit;transition:border-color .13s,box-shadow .13s}.input:focus,.select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.input::placeholder{color:var(--text-3)}.field-label{font-size:var(--fs-xs);color:var(--text-2);margin-bottom:5px;font-weight:600;display:block}.field{margin-bottom:14px}.pill{height:22px;font-size:var(--fs-xs);white-space:nowrap;border:1px solid #0000;border-radius:20px;align-items:center;gap:5px;padding:0 9px;font-weight:600;display:inline-flex}.pill .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.pill-neutral{background:var(--gray-100);color:var(--text-2);border-color:var(--border)}.pill-info{background:var(--info-weak);color:var(--info);border-color:var(--info-border)}.pill-success{background:var(--success-weak);color:var(--success);border-color:var(--success-border)}.pill-warning{background:var(--warning-weak);color:var(--warning);border-color:var(--warning-border)}.pill-danger{background:var(--danger-weak);color:var(--danger);border-color:var(--danger-border)}.pill-primary{background:var(--primary-weak);color:var(--primary-ink,var(--primary));border-color:var(--primary-border)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs)}.card-pad{padding:18px}.card-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 18px;display:flex}.card-head h3{font-size:var(--fs-md);letter-spacing:-.01em;font-weight:600}.progress-bar{background:var(--surface-sunken);border-radius:999px;height:6px;overflow:hidden}.progress-fill{background:var(--primary-fill);border-radius:999px;height:100%;transition:width .2s}.inline-add-trigger{text-align:left;width:100%;color:var(--text-3);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:6px;padding:9px 12px;display:flex}.inline-add-trigger:hover{background:var(--surface-sunken);color:var(--text)}.inline-add-trigger.compact{font-size:var(--fs-xs);padding:7px 8px}.inline-add-bar{border:1px solid var(--primary-fill);background:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-fill) 16%, transparent);border-radius:10px;align-items:center;gap:8px;padding:7px 10px;display:flex}.inline-add-bar .ia-title{min-width:0;height:30px;font-size:var(--fs-sm);color:var(--text);background:0 0;border:0;flex:1;padding:0 2px}.inline-add-bar .ia-title:focus{outline:none}.inline-add-bar .ia-title::placeholder{color:var(--text-3)}.inline-add-bar .ia-status,.inline-add-bar .ia-assignee{color:var(--text-3);align-items:center;gap:2px;display:flex}.inline-add-bar .ia-status-ico{color:var(--primary-ink);flex:none}.inline-add-bar .ia-select{min-width:0;height:28px;min-height:28px;font-size:var(--fs-xs);color:var(--text-2);background:0 0;border:0;border-radius:6px;padding:0 4px}.inline-add-bar .ia-select:hover{background:var(--surface-sunken)}.inline-add-bar .ia-status-select{max-width:120px}.inline-add-bar .ia-assignee-select{max-width:130px}.inline-add-bar .ia-icon{width:30px;height:30px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.inline-add-bar .ia-icon:hover{background:var(--surface-sunken);color:var(--text)}.inline-add-bar .ia-icon.on{color:var(--primary-ink);background:var(--primary-fill-soft,color-mix(in srgb, var(--primary-fill) 14%, transparent))}.inline-add-bar .ia-date-hidden{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.inline-add-bar .ia-assignee-ico{flex:none}.inline-add-bar .ia-create{background:var(--primary-fill);height:30px;color:var(--text-on-primary);font-size:var(--fs-sm);cursor:pointer;border:0;border-radius:8px;flex:none;align-items:center;gap:6px;padding:0 12px;font-weight:600;display:inline-flex}.inline-add-bar .ia-create:disabled{opacity:.5;cursor:default}.inline-add-bar .ia-kbd{background:color-mix(in srgb, var(--text-on-primary) 22%, transparent);min-width:18px;height:18px;font-size:var(--fs-2xs);border-radius:4px;place-items:center;padding:0 4px;line-height:1;display:inline-grid}.inline-add-bar.compact{flex-wrap:wrap;gap:6px;padding:6px 8px}.inline-add-bar.compact .ia-title{flex:1 0 100%;order:-1;height:26px}.inline-add-bar.compact .ia-create{margin-left:auto}.task-row-add{border-top:1px solid var(--border)}.task-row-add .inline-add-bar{flex:auto;min-width:0}.task-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg,14px);width:min(680px,94vw);max-height:90vh;box-shadow:var(--shadow-pop);flex-direction:column;display:flex;overflow:hidden}.task-modal .modal-head{justify-content:space-between;align-items:center;display:flex}.task-modal-body{padding:0 18px 18px;overflow-y:auto}.task-modal-body .card{box-shadow:none;background:0 0;border:0;padding-left:0;padding-right:0}.issue-title-editable{cursor:text;border-radius:6px;margin:-1px -6px;padding:1px 6px}.issue-title-editable:hover{background:var(--surface-sunken)}.issue-title-input{font-size:inherit;font-weight:inherit;letter-spacing:inherit;min-width:320px;max-width:100%;padding:2px 8px}.issue-desc-editable{cursor:text;border-radius:8px;margin:-8px;padding:8px}.issue-desc-editable:hover{background:var(--surface-sunken)}.issue-date-input{height:32px;font-size:var(--fs-sm);max-width:160px;padding:4px 8px}.checklist-head{align-items:center;gap:10px;display:flex}.checklist-count{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--text-3);margin-left:auto;font-weight:600}.checklist-items{flex-direction:column;gap:1px;display:flex}.checklist-item{border-radius:6px;align-items:center;gap:9px;padding:5px 6px;display:flex}.checklist-item:hover{background:var(--surface-sunken)}.checklist-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer;flex-shrink:0}.checklist-text{min-width:0;font-size:var(--fs-sm);color:var(--text);cursor:text;flex:1}.checklist-text.done{color:var(--text-3);text-decoration:line-through}.checklist-edit{height:30px;font-size:var(--fs-sm);flex:1;padding:4px 8px}.checklist-del{color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:5px;flex-shrink:0;align-items:center;padding:2px;display:inline-flex}.checklist-item:hover .checklist-del{opacity:1}.checklist-del:hover{color:var(--danger,#d33);background:var(--surface)}.checklist-add{gap:8px;display:flex}.checklist-add .input{flex:1;height:34px}.subtask-progress{flex-shrink:0;width:90px}.subtask-progress-count{font-size:var(--fs-xs);font-variant-numeric:tabular-nums;color:var(--text-3);white-space:nowrap}.table-wrap{background:linear-gradient(to right, var(--surface) 40%, #fff0) left center / 28px 100% no-repeat local, linear-gradient(to left, var(--surface) 40%, #fff0) right center / 28px 100% no-repeat local, radial-gradient(farthest-side at 0 50%, #10162421, #10162400) left center / 14px 100% no-repeat scroll, radial-gradient(farthest-side at 100% 50%, #10162421, #10162400) right center / 14px 100% no-repeat scroll, var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);-webkit-overflow-scrolling:touch;overflow:auto hidden}table.data{border-collapse:collapse;width:100%;font-size:var(--fs-md)}table.data thead th{text-align:left;font-size:var(--fs-xs);letter-spacing:.02em;text-transform:uppercase;color:var(--text-3);padding:10px var(--cell-px);background:var(--surface-sunken);border-bottom:1px solid var(--border);white-space:nowrap;font-weight:600}table.data tbody td{padding:var(--cell-py) var(--cell-px);border-bottom:1px solid var(--border);vertical-align:middle}table.data tbody tr:last-child td{border-bottom:none}table.data tbody tr{transition:background .1s}.t-primary{color:var(--text);overflow-wrap:break-word;font-weight:600}.link-btn{font:inherit;color:var(--primary);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.link-btn:hover{text-decoration:underline}.t-sub{font-size:var(--fs-xs);color:var(--text-3);overflow-wrap:break-word;margin-top:1px}.col-r{text-align:right}.page-head{align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.page-head>div:first-child{min-width:0}.page-head .ttl{font-size:var(--fs-xl);letter-spacing:-.02em;overflow-wrap:break-word;font-weight:600}.page-head .desc{font-size:var(--fs-md);color:var(--text-2);margin-top:3px}.page-head .spacer{flex:1}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.toolbar .spacer{flex:1}.task-filterbar .task-search{flex:0 240px;min-width:150px}.task-filterbar .select,.task-filterbar .sel-trigger{width:auto;min-width:128px}.task-filter-count{font-size:var(--fs-sm);white-space:nowrap}.list-toolbar .list-search{flex:0 260px;min-width:160px}.list-toolbar .select,.list-toolbar .sel-trigger{width:auto;min-width:130px}.list-count{font-size:var(--fs-sm);white-space:nowrap}.pager{align-items:center;gap:8px;margin-top:12px;display:flex}.divider{background:var(--border);border:none;height:1px;margin:0}.muted{color:var(--text-3);font-size:var(--fs-sm)}.empty{text-align:center;color:var(--text-3);padding:40px}.error{color:var(--danger);font-size:var(--fs-sm);margin-bottom:12px}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.auth-wrap{background:radial-gradient(60% 55% at 50% 0%, #e8392e12, transparent 70%), radial-gradient(42% 42% at 88% 92%, #e8392e0d, transparent 70%), var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{width:100%;max-width:380px}.auth-head{align-items:center;gap:12px;margin-bottom:22px;display:flex}.auth-head .logo-word{font-size:var(--fs-lg)}.overlay{z-index:var(--z-modal);background:#161b2373;place-items:center;padding:24px;animation:.18s fadeIn;display:grid;position:fixed;inset:0}.modal{flex-direction:column;width:100%;max-width:440px;max-height:90vh;display:flex}.modal-head{border-bottom:1px solid var(--border);padding:18px 20px}.modal-head h3{font-size:var(--fs-lg);letter-spacing:-.01em;font-weight:600}.modal-head .sub{font-size:var(--fs-sm);color:var(--text-3);margin-top:2px}.modal-body{padding:18px 20px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding:14px 20px;display:flex}.perm-group{margin-bottom:14px}.perm-group-label{font-size:var(--fs-2xs);letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);margin-bottom:6px;font-weight:600}.perm-item{border-radius:var(--r-sm);font-size:var(--fs-sm);align-items:center;gap:9px;padding:6px 8px;display:flex}.perm-item:hover{background:var(--gray-25)}.perm-item input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.perm-item code{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-3);margin-left:auto}.perm-matrix-wrap{margin-top:4px}.perm-matrix-bar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.perm-search{flex:1;min-width:200px;position:relative}.perm-search .input{padding-left:30px}.perm-search-ico{color:var(--text-3);pointer-events:none;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.perm-matrix-bar-right{align-items:center;gap:8px;display:flex}.perm-count{font-size:var(--fs-sm);color:var(--text-2);font-variant-numeric:tabular-nums;white-space:nowrap}.perm-matrix-scroll{border:1px solid var(--border);border-radius:var(--r-md);max-height:62vh;overflow:auto}.perm-matrix{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-sm)}.perm-matrix th,.perm-matrix td{border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.perm-matrix tr:last-child th,.perm-matrix tr:last-child td{border-bottom:0}.perm-matrix th:last-child,.perm-matrix td:last-child{border-right:0}.perm-matrix thead th{z-index:2;background:var(--surface-sunken);position:sticky;top:0}.pm-col{text-align:center;padding:0}.pm-col-head{cursor:pointer;color:var(--text-2);white-space:nowrap;flex-direction:column;align-items:center;gap:3px;padding:8px 12px;font-weight:600;display:flex}.pm-col-head:hover{color:var(--text)}.pm-corner{z-index:3;background:var(--surface-sunken);text-align:left;font-size:var(--fs-2xs);letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);padding:8px 12px;font-weight:600;position:sticky;top:0;left:0}.pm-row{z-index:1;background:var(--surface);text-align:left;position:sticky;left:0}.pm-row-head{cursor:pointer;color:var(--text);white-space:nowrap;align-items:center;gap:8px;padding:7px 12px;font-weight:500;display:flex}.pm-row-head:hover{color:var(--primary-ink)}.perm-matrix tbody tr:hover td,.perm-matrix tbody tr:hover .pm-row{background:var(--gray-25)}.pm-cell{text-align:center;padding:0}.pm-cell.on{background:var(--primary-weak)}.pm-cell.locked{background:repeating-linear-gradient(45deg, transparent, transparent 4px, var(--gray-25) 4px, var(--gray-25) 5px)}.pm-na{color:var(--border-strong);-webkit-user-select:none;user-select:none}.pm-check{cursor:pointer;justify-content:center;align-items:center;min-height:34px;padding:8px 12px;display:flex}.pm-cell.locked .pm-check{cursor:not-allowed}.perm-matrix input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary);cursor:pointer}.pm-lock{color:var(--text-3);opacity:.7}.perm-matrix-hint{font-size:var(--fs-xs);flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;display:flex}.pm-empty{text-align:center;color:var(--text-3);padding:22px}.row-actions{justify-content:flex-end;gap:8px;display:flex}.score-badge{align-items:center;gap:8px;display:inline-flex}.score-bar{background:var(--gray-150);border-radius:6px;width:54px;height:6px;display:inline-block;overflow:hidden}.score-fill{border-radius:6px;height:100%;display:block}.score-success .score-fill{background:var(--success)}.score-primary .score-fill{background:var(--primary)}.score-warning .score-fill{background:var(--warning)}.score-danger .score-fill{background:var(--danger)}.score-num{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;text-align:right;width:22px;font-weight:700}.score-t-success{color:var(--success)}.score-t-primary{color:var(--primary-fill)}.score-t-warning{color:var(--warning)}.score-t-danger{color:var(--danger)}.score-ring{border-radius:50%;flex-shrink:0;place-items:center;width:72px;height:72px;display:grid;position:relative}.score-ring:before{content:"";background:conic-gradient(var(--ring-c) var(--v,0deg), var(--gray-150) 0);border-radius:50%;position:absolute;inset:0}.score-ring:after{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:7px}.score-ring-num{z-index:1;font-weight:700;font-size:var(--fs-xl);font-variant-numeric:tabular-nums;position:relative}.score-ring.score-success{--ring-c:var(--success);color:var(--success)}.score-ring.score-primary{--ring-c:var(--primary);color:var(--primary)}.score-ring.score-warning{--ring-c:var(--warning);color:var(--warning)}.score-ring.score-danger{--ring-c:var(--danger);color:var(--danger)}.field-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px 24px;display:grid}.field-grid>*{min-width:0}.field-grid .k{font-size:var(--fs-2xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.field-grid .v{font-size:var(--fs-md);overflow-wrap:anywhere;margin-top:3px;font-weight:600}.field-grid .v a{overflow-wrap:anywhere}.detail-grid{grid-template-columns:1fr 300px;align-items:start;gap:20px;display:grid}.detail-grid>*{min-width:0}@media (max-width:720px){.detail-grid{grid-template-columns:1fr}}.issue-side{align-self:start;position:sticky;top:8px}.issue-section-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);margin-bottom:10px;font-weight:700}.issue-activity-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.tabs-sm .tab{font-size:var(--fs-sm);padding:4px 10px}.issue-comment{align-items:flex-start;gap:8px;display:flex}.issue-details .issue-row{border-bottom:1px solid var(--border);padding:10px 0}.issue-details .issue-row:first-child{padding-top:0}.issue-details .issue-row:last-child{border-bottom:0;padding-bottom:0}.issue-details .k{font-size:var(--fs-2xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.03em;font-weight:600}.issue-details .v{font-size:var(--fs-md);overflow-wrap:anywhere;margin-top:5px;font-weight:600}.issue-status-select{width:100%}.issue-meta{font-size:var(--fs-xs);color:var(--text-3);flex-direction:column;gap:3px;font-weight:500;display:flex}@media (max-width:720px){.issue-side{position:static}}.feed{margin:0;padding:0;list-style:none}.feed-item{gap:12px;padding-bottom:18px;display:flex;position:relative}.feed-item:last-child{padding-bottom:0}.feed-item:before{content:"";background:var(--border);width:2px;position:absolute;top:30px;bottom:0;left:14px}.feed-item:last-child:before{display:none}.feed-node{z-index:1;border-radius:50%;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid;position:relative}.feed-node:not(.avatar){background:var(--surface-sunken);border:1px solid var(--border);color:var(--text-3)}.feed-body{flex:1;min-width:0;padding-top:4px}.feed-event{font-size:var(--fs-sm);line-height:1.5}.feed-meta{font-size:var(--fs-sm);align-items:center;display:flex}.feed-actions{flex-shrink:0;align-items:center;gap:2px;margin-left:auto;display:inline-flex}.feed-actions .feed-del{width:28px;height:28px;color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;transition:opacity .12s,background .12s,color .12s;display:inline-grid}.feed-item:hover .feed-actions .feed-del,.feed-item:focus-within .feed-actions .feed-del,.feed-actions .feed-del:focus-visible{opacity:1}.feed-actions .feed-del:hover{color:var(--text);background:var(--surface-sunken)}.feed-bubble{background:var(--surface-sunken);border:1px solid var(--border);border-radius:10px;margin-top:6px;padding:9px 12px}.feed-change{display:inline}.feed-field{color:var(--text-2);font-weight:600}.feed-change .chg{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:6px;margin-left:6px;display:inline-flex}.chg-val{text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;background:var(--surface-sunken);border:1px solid var(--border);max-width:260px;font-size:var(--fs-xs);color:var(--text);border-radius:6px;padding:1px 8px;display:inline-block;overflow:hidden}.chg-val.chg-none{color:var(--text-3);background:0 0;font-style:italic}.chg-arrow{color:var(--text-3);font-size:var(--fs-sm)}.feed-when{white-space:nowrap}.feed-sort{border:1px solid var(--border);background:var(--surface);height:26px;color:var(--text-2);font-size:var(--fs-xs);cursor:pointer;border-radius:7px;align-items:center;gap:5px;padding:0 9px;transition:background .12s,color .12s;display:inline-flex}.feed-sort:hover{background:var(--surface-sunken);color:var(--text)}.worklog-tab{display:block}.worklog-tab-head{align-items:center;margin-bottom:10px;display:flex}.reactions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.reaction{border:1px solid var(--border);background:var(--surface);cursor:pointer;height:26px;font-size:var(--fs-xs);border-radius:13px;align-items:center;gap:5px;padding:0 9px;line-height:1;transition:background .12s,border-color .12s;display:inline-flex}.reaction:hover:not(:disabled){background:var(--surface-sunken)}.reaction:disabled{cursor:default}.reaction.mine{background:var(--primary-fill);border-color:#0000}.reaction.mine .reaction-count{color:var(--text-on-primary);font-weight:600}.reaction-emoji{font-size:14px}.reaction-count{color:var(--text-2);font-variant-numeric:tabular-nums}.reaction-add-wrap{display:inline-flex;position:relative}.reaction-add{border:1px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--text-3);cursor:pointer;border-radius:13px;place-items:center;transition:background .12s,color .12s;display:inline-grid}.reaction-add:hover:not(:disabled){background:var(--surface-sunken);color:var(--text)}.reaction-picker-backdrop{z-index:40;position:fixed;inset:0}.reaction-picker{z-index:41;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-pop);border-radius:10px;gap:2px;padding:5px;display:flex;position:absolute;bottom:calc(100% + 6px);left:0}.reaction-choice{cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:30px;height:30px;font-size:17px;line-height:1;transition:background .1s;display:inline-grid}.reaction-choice:hover{background:var(--surface-sunken)}.reaction-choice.active{background:var(--primary-fill)}.psum{flex-direction:column;gap:16px;display:flex}.psum-stats{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.psum-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md,10px);flex-direction:column;gap:2px;padding:14px 16px;display:flex;position:relative}.psum-stat .ps-ic{position:absolute;top:12px;right:12px}.psum-stat b{font-size:var(--fs-2xl);letter-spacing:-.02em;color:var(--text);font-weight:700;line-height:1.1}.psum-stat>span:last-child{font-size:var(--fs-xs);color:var(--text-2)}.psum-stat.danger b{color:var(--danger)}@media (max-width:900px){.psum-stats{grid-template-columns:repeat(2,1fr)}}.psum-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}@media (max-width:820px){.psum-grid{grid-template-columns:1fr}}.psum-card{min-width:0}.psum-h{font-size:var(--fs-sm);color:var(--text);align-items:center;gap:8px;margin-bottom:14px;font-weight:600;display:flex}.psum-sub{font-size:var(--fs-2xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-weight:500}.psum-donut{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.psum-donut svg{flex:none}.psum-donut-n{fill:var(--text);font-size:20px;font-weight:700}.psum-donut-l{fill:var(--text-3);text-transform:uppercase;letter-spacing:.08em;font-size:9px}.psum-legend{flex-direction:column;flex:1;gap:8px;min-width:130px;margin:0;padding:0;list-style:none;display:flex}.psum-legend li{font-size:var(--fs-sm);color:var(--text-2);align-items:center;gap:9px;display:flex}.psum-legend .sw{border-radius:3px;flex:none;width:10px;height:10px}.psum-legend .lb{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;overflow:hidden}.psum-legend .ct{font-variant-numeric:tabular-nums;color:var(--text-2);font-weight:600}.psum-bars{flex-direction:column;gap:12px;display:flex}.psum-bar{font-size:var(--fs-sm);align-items:center;gap:12px;display:flex}.psum-bar .bl{width:84px;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;flex:none;overflow:hidden}.psum-bar .bt{background:var(--surface-sunken);border-radius:5px;flex:1;height:8px;overflow:hidden}.psum-bar .bf{border-radius:5px;min-width:3px;height:100%;display:block}.psum-bar .bc{text-align:right;font-variant-numeric:tabular-nums;width:28px;color:var(--text);font-weight:600}.psum-types{flex-direction:column;gap:12px;display:flex}.psum-type{font-size:var(--fs-sm);align-items:center;gap:10px;display:flex}.psum-type .ty-ic{flex:none}.psum-type .ty-nm{width:96px;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:none;font-weight:500;overflow:hidden}.psum-type .ty-pr{flex:1}.psum-type .ty-ct{text-align:right;font-variant-numeric:tabular-nums;width:46px;color:var(--text-2);font-size:var(--fs-xs)}.psum-team{flex-direction:column;gap:11px;display:flex}.psum-member{font-size:var(--fs-sm);align-items:center;gap:10px;display:flex}.psum-member .mm-nm{text-overflow:ellipsis;white-space:nowrap;width:120px;color:var(--text);flex:none;overflow:hidden}.psum-member .mm-bar{background:var(--surface-sunken);border-radius:5px;flex:1;height:7px;overflow:hidden}.psum-member .mm-fill{background:var(--primary-fill);border-radius:5px;min-width:3px;height:100%;display:block}.psum-member .mm-ct{text-align:right;font-variant-numeric:tabular-nums;width:26px;color:var(--text);font-weight:600}.psum-recent{flex-direction:column;display:flex}.psum-row{border-top:1px solid var(--border);font-size:var(--fs-sm);align-items:center;gap:10px;padding:10px 16px;transition:background .12s;display:flex}.psum-row:first-child{border-top:0}.psum-row:hover{background:var(--surface-sunken)}.psum-row .rr-ic,.psum-row .task-key{flex:none}.psum-row .rr-done{opacity:.6;text-decoration:line-through}.psum-row .rr-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;overflow:hidden}.psum-row .rr-when{font-size:var(--fs-xs);color:var(--text-3);flex:none}.share-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg,14px);width:min(460px,94vw);max-height:90vh;box-shadow:var(--shadow-pop,0 24px 60px -20px #141d2866);flex-direction:column;display:flex;overflow:hidden}.share-modal .modal-head{border-bottom:1px solid var(--hair,var(--border));justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.share-modal .modal-head h3{font-size:var(--fs-lg,18px);align-items:center;gap:8px;margin:0;display:flex}.share-body{flex-direction:column;padding:16px 18px;display:flex;overflow-y:auto}.share-body .field-label{margin-bottom:6px}.share-copy{gap:8px;display:flex}.share-copy .input{min-width:0;font-size:var(--fs-xs);color:var(--text-2);flex:1}.share-copy .btn{white-space:nowrap;flex:none}.share-people{border:1px solid var(--border);border-radius:var(--r-md,10px);flex-direction:column;gap:2px;max-height:216px;padding:5px;display:flex;overflow:auto}.share-person{text-align:left;border-radius:var(--r-sm,7px);cursor:pointer;width:100%;font-size:var(--fs-sm);color:var(--text);background:0 0;border:0;align-items:center;gap:10px;padding:8px 9px;transition:background .12s;display:flex}.share-person:hover{background:var(--surface-sunken)}.share-person.on{background:color-mix(in srgb, var(--primary-fill) 13%, transparent)}.share-person .sp-nm{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.share-person .sp-check{width:18px;color:var(--primary-ink,var(--primary-fill));flex:none;justify-content:flex-end;display:inline-flex}.share-body textarea.input{resize:vertical;min-height:48px;padding-top:8px}.share-foot{border-top:1px solid var(--hair,var(--border));justify-content:flex-end;gap:10px;padding:14px 18px;display:flex}.feed-more-row{padding:0 0 14px;display:flex}.feed-more-row:before{display:none}.feed-more{border:1px dashed var(--border);background:var(--surface);width:100%;color:var(--text-2);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;padding:8px 12px;transition:background .12s,color .12s}.feed-more:hover{background:var(--surface-sunken);color:var(--text)}@keyframes feedFlash{0%{background:color-mix(in srgb, var(--primary-fill) 26%, transparent)}to{background:0 0}}.feed-flash{border-radius:10px;margin:-4px -8px;padding:4px 8px;animation:2.4s ease-out feedFlash}@media (prefers-reduced-motion:reduce){.feed-flash{animation:none}}.file-chips{flex-wrap:wrap;gap:6px;display:flex}.file-chip{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--r-sm);max-width:100%;font-size:var(--fs-sm);color:var(--text-2);align-items:center;gap:6px;padding:3px 4px 3px 8px;display:inline-flex}.file-chip>svg{color:var(--text-3);flex-shrink:0}.file-chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:220px;overflow:hidden}.file-chip-open{min-width:0;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.file-chip-open:hover .file-chip-name{text-decoration:underline}.file-chip-eye{color:var(--text-3);opacity:.7;flex-shrink:0}.file-chip-open:hover .file-chip-eye{color:var(--primary-ink);opacity:1}.file-chip-x{border-radius:var(--r-sm);width:20px;height:20px;color:var(--text-3);cursor:pointer;background:0 0;border:0;flex-shrink:0;place-items:center;transition:color .12s,background .12s;display:inline-grid}.file-chip-x:hover{color:var(--danger);background:var(--surface)}.att-grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:12px;display:grid}.att-card{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);flex-direction:column;transition:border-color .12s,box-shadow .12s;display:flex;position:relative;overflow:hidden}.att-card:hover{border-color:var(--primary);box-shadow:var(--shadow-sm)}.att-thumb{border:0;border-bottom:1px solid var(--border);background:var(--surface-sunken);cursor:pointer;width:100%;height:104px;padding:0;display:block;position:relative;overflow:hidden}.att-thumb-img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.att-thumb-load{width:100%;height:100%;color:var(--text-3);place-items:center;display:grid}.att-thumb-glyph{width:100%;height:100%;color:var(--text-2);align-content:center;place-items:center;gap:6px;display:grid}.att-thumb-glyph .att-thumb-ext{font-size:var(--fs-2xs);letter-spacing:.4px;color:var(--text-3);font-weight:700}.att-thumb[data-kind=video]{background:#1c1c26}.att-thumb[data-kind=video] .att-thumb-glyph{color:#ffffffeb}.att-thumb[data-kind=video] .att-thumb-ext{color:#fff9}.att-thumb[data-kind=pdf] .att-thumb-glyph,.att-thumb[data-kind=pdf] .att-thumb-ext{color:#dc2626}.att-card-actions{opacity:0;gap:4px;transition:opacity .12s;display:flex;position:absolute;top:6px;right:6px}.att-card:hover .att-card-actions,.att-card:focus-within .att-card-actions{opacity:1}.att-act{border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--text-2);cursor:pointer;box-shadow:var(--shadow-sm);place-items:center;transition:color .12s,background .12s,border-color .12s;display:grid}.att-act:hover{background:var(--surface-sunken);color:var(--text)}.att-act-danger:hover{color:var(--danger);border-color:var(--danger)}.att-card-foot{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;gap:1px;min-width:0;padding:7px 9px;display:flex}.att-card-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.att-card-foot:hover .att-card-name{text-decoration:underline}.att-card-sub{font-size:var(--fs-2xs);color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.preview-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:min(920px,96vw);max-height:92vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.preview-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 14px;display:flex}.preview-head .pv-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.preview-head .pv-sub{color:var(--text-3);font-size:var(--fs-sm);flex-shrink:0}.preview-body{background:var(--surface-sunken);flex:1;place-items:center;min-height:240px;padding:16px;display:grid;position:relative;overflow:auto}.pv-nav{border:1px solid var(--border);background:var(--surface);width:40px;height:40px;color:var(--text-2);cursor:pointer;box-shadow:var(--shadow-md);z-index:2;border-radius:50%;place-items:center;transition:color .12s,background .12s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pv-nav:hover:not([disabled]){color:var(--text);background:var(--surface-sunken)}.pv-nav[disabled]{opacity:.35;cursor:default}.pv-nav.prev{left:12px}.pv-nav.next{right:12px}.preview-body .pv-img{-o-object-fit:contain;object-fit:contain;border-radius:var(--r-sm);max-width:100%;max-height:76vh}.preview-body .pv-video{border-radius:var(--r-sm);background:#000;max-width:100%;max-height:76vh}.preview-body .pv-frame{border-radius:var(--r-sm);background:#fff;border:0;width:100%;height:76vh}.preview-msg{color:var(--text-3);text-align:center;justify-items:center;gap:12px;display:grid}.wiz-steps{flex-wrap:wrap;align-items:center;gap:10px;margin:2px 0 22px;display:flex}.wiz-step{font-size:var(--fs-sm);color:var(--text-3);align-items:center;gap:8px;display:inline-flex}.wiz-step.is-active{color:var(--text);font-weight:600}.wiz-step .opt{color:var(--text-3);font-weight:400;font-size:var(--fs-2xs)}.wiz-step-num{width:24px;height:24px;font-size:var(--fs-2xs);color:var(--text-3);background:var(--surface-sunken);border:1px solid var(--border);border-radius:50%;place-items:center;font-weight:700;display:inline-grid}.wiz-step.is-active .wiz-step-num{color:var(--text-on-primary);background:var(--primary-fill);border-color:#0000}.wiz-step.is-done .wiz-step-num{color:var(--primary-ink);background:var(--primary-weak);border-color:#0000}.wiz-step-sep{background:var(--border);flex-shrink:0;width:20px;height:1px}.tpl-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;display:grid}.tpl-card{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);cursor:pointer;flex-direction:column;gap:8px;min-height:132px;padding:16px;transition:border-color .12s,box-shadow .12s,transform .12s;display:flex}.tpl-card:hover{border-color:var(--primary);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.tpl-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tpl-card-icon{border-radius:var(--r-md);width:36px;height:36px;color:var(--primary-ink);background:var(--primary-weak);place-items:center;display:grid}.tpl-blank .tpl-card-icon{color:var(--text-2);background:var(--surface-sunken);border:1px dashed var(--border)}.tpl-card-title{color:var(--text);font-weight:600}.tpl-card-desc{font-size:var(--fs-sm);color:var(--text-3);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.tpl-card-foot{align-items:center;gap:8px;margin-top:auto;display:flex}.wiz-context{font-size:var(--fs-sm);color:var(--text-2);background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--r-md);align-items:center;gap:8px;margin-bottom:16px;padding:9px 12px;display:flex}.wiz-context>svg{color:var(--text-3);flex-shrink:0}.wiz-context-change{font:inherit;color:var(--primary-ink);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0}.wiz-context-change:hover{text-decoration:underline}.task-key{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-xs);color:var(--text-3);letter-spacing:.3px;white-space:nowrap;font-weight:600}.chat-card{flex-direction:column;height:68vh;min-height:420px;display:flex;overflow:hidden}.chat-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.chat-status{font-size:var(--fs-xs);color:var(--text-3);align-items:center;gap:6px;font-weight:600;display:inline-flex}.chat-status:before{content:"";background:var(--text-3);border-radius:50%;width:7px;height:7px}.chat-status.on{color:var(--success)}.chat-status.on:before{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb, var(--success) 20%, transparent)}.chat-scroll{flex-direction:column;flex:1;gap:3px;padding:14px 16px;display:flex;overflow-y:auto}.chat-msg{gap:10px;padding:2px 0;display:flex}.chat-msg.grouped{padding-top:0}.chat-av,.chat-av-spacer{flex-shrink:0;width:32px;height:32px}.chat-av{font-size:var(--fs-2xs);color:#fff;background:linear-gradient(135deg, var(--primary), var(--primary-hover,var(--primary)));border-radius:50%;place-items:center;font-weight:600;display:grid}.chat-body{flex:1;min-width:0}.chat-meta{align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.chat-author{font-size:var(--fs-sm);font-weight:600}.chat-time{font-size:var(--fs-2xs)}.chat-bubble{background:var(--surface-sunken);border:1px solid var(--border);max-width:100%;font-size:var(--fs-md);border-radius:4px 12px 12px;padding:7px 12px;display:inline-block;position:relative}.chat-msg.mine .chat-bubble{background:color-mix(in srgb, var(--primary) 12%, var(--surface));border-color:color-mix(in srgb, var(--primary) 22%, var(--border))}.chat-bubble .richtext{font-size:var(--fs-md)}.chat-del{opacity:0;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px;transition:opacity .12s;position:absolute;top:3px;right:4px}.chat-bubble:hover .chat-del,.chat-bubble:focus-within .chat-del,.chat-del:focus-visible{opacity:1}.chat-del:hover{color:var(--danger);background:var(--surface)}.chat-typing{height:18px;font-size:var(--fs-xs);padding:0 16px}.chat-composer{border-top:1px solid var(--border);padding:12px 16px}.chat-grouped{grid-template-columns:190px 1fr;padding:0;display:grid}.chat-main{flex-direction:column;min-width:0;display:flex}.chat-channels{border-right:1px solid var(--border);flex-direction:column;gap:2px;padding:8px;display:flex;overflow-y:auto}.chat-channels-head{justify-content:space-between;align-items:center;padding:4px 4px 4px 6px;display:flex}.chat-search{padding:2px 4px 6px}.chat-search .input{height:32px;font-size:var(--fs-sm)}.chat-channels-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:8px 6px 4px;font-weight:700}.chat-channel{text-align:left;cursor:pointer;width:100%;font-size:var(--fs-sm);color:var(--text-2);background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:7px 9px;display:flex}.chat-channel span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-channel:hover{background:var(--surface-sunken)}.chat-channel.on{background:color-mix(in srgb, var(--primary) 12%, var(--surface));color:var(--primary);font-weight:600}.chat-head-direct{text-transform:none;letter-spacing:0;font-size:var(--fs-md)}.chat-channels-label-row{justify-content:space-between;align-items:center;gap:6px;padding-right:2px;display:flex}.chat-channels-empty{font-size:var(--fs-xs);padding:2px 9px 6px}.chat-dm-av{width:20px;height:20px;font-size:var(--fs-2xs);letter-spacing:0;background:var(--primary-fill);color:var(--text-on-primary);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:inline-grid}@media (max-width:720px){.chat-grouped{grid-template-columns:1fr}.chat-channels{border-right:0;border-bottom:1px solid var(--border);flex-direction:row;overflow-x:auto}}.dm-layout{grid-template-columns:300px 1fr;height:70vh;min-height:440px;padding:0;display:grid;overflow:hidden}.dm-list{border-right:1px solid var(--border);overflow-y:auto}.dm-search{z-index:1;background:var(--surface);border-bottom:1px solid var(--border);padding:10px;position:sticky;top:0}.dm-search .input{height:34px;font-size:var(--fs-sm)}.dm-thread{text-align:left;border:0;border-bottom:1px solid var(--border);cursor:pointer;background:0 0;gap:10px;width:100%;padding:11px 14px;display:flex}.dm-thread:hover{background:var(--surface-sunken)}.dm-thread.on{background:color-mix(in srgb, var(--primary) 10%, var(--surface))}.dm-av{width:38px;height:38px;font-size:var(--fs-xs);color:#fff;background:linear-gradient(135deg, var(--primary), var(--primary-hover,var(--primary)));border-radius:50%;flex-shrink:0;place-items:center;font-weight:600;display:grid}.dm-av.sm{width:28px;height:28px;font-size:var(--fs-2xs)}.dm-thread-main{flex:1;min-width:0}.dm-thread-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.dm-name{font-size:var(--fs-md);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.dm-when{font-size:var(--fs-2xs);flex-shrink:0}.dm-thread-sub{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.dm-preview{font-size:var(--fs-xs);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dm-badge{background:var(--primary-fill);min-width:18px;height:18px;color:var(--text-on-primary);font-size:var(--fs-2xs);border-radius:9px;flex-shrink:0;place-items:center;padding:0 5px;font-weight:700;display:grid}.dm-convo{flex-direction:column;min-width:0;display:flex}.dm-convo-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 16px;display:flex}.dm-scroll{flex-direction:column;flex:1;gap:3px;padding:14px 16px;display:flex;overflow-y:auto}.dm-empty{height:100%;font-size:var(--fs-md);place-items:center;display:grid}.dm-pick{text-align:left;cursor:pointer;width:100%;font-size:var(--fs-md);background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.dm-pick:hover{background:var(--surface-sunken)}@media (max-width:720px){.dm-layout{grid-template-columns:1fr}}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin-bottom:18px;display:flex}.tab{cursor:pointer;font-size:var(--fs-md);color:var(--text-3);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 14px;font-family:inherit;font-weight:600}.tab:hover{color:var(--text-2)}.tab.on{color:var(--primary);border-bottom-color:var(--primary)}.tab .count{font-size:var(--fs-2xs);background:var(--gray-100);color:var(--text-2);border-radius:20px;margin-left:6px;padding:1px 7px;font-weight:600}.timeline{padding:4px 0;position:relative}.tl-item{grid-template-columns:32px minmax(0,1fr);gap:12px;padding-bottom:18px;display:grid;position:relative}.tl-item:not(:last-child):before{content:"";background:var(--border);width:2px;position:absolute;top:30px;bottom:0;left:15px}.tl-del{color:var(--text-3);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:none;padding:0}.tl-del:hover{color:var(--danger)}.tl-icon{z-index:1;border:1px solid var(--border);background:var(--surface);width:32px;height:32px;color:var(--text-2);border-radius:50%;place-items:center;display:grid}.tl-icon.call{color:var(--info);background:var(--info-weak);border-color:var(--info-border)}.tl-icon.email{color:var(--primary);background:var(--primary-weak);border-color:var(--primary-border)}.tl-icon.meeting{color:var(--warning);background:var(--warning-weak);border-color:var(--warning-border)}.tl-icon.note{color:var(--text-2);background:var(--gray-100)}.tl-body{min-width:0;padding-top:4px}.tl-body .tt{font-size:var(--fs-md);color:var(--text);line-height:1.45}.tl-body .tw{font-size:var(--fs-xs);color:var(--text-3);align-items:center;gap:8px;margin-top:2px;display:flex}.tl-type{font-weight:600}.log-bar{align-items:flex-start;gap:8px;margin-bottom:16px;display:flex}.link{color:var(--primary);font-weight:500;text-decoration:none}.link:hover{text-decoration:underline}.bell-wrap{display:flex;position:relative}.bell-badge{background:var(--primary-fill);min-width:16px;height:16px;color:var(--text-on-primary);font-size:var(--fs-2xs);border-radius:9px;place-items:center;padding:0 4px;font-weight:700;line-height:1;display:grid;position:absolute;top:-3px;right:-3px}.bell-scrim{z-index:var(--z-scrim);position:fixed;inset:0}.bell-pop{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:340px;max-width:92vw;max-height:70vh;box-shadow:var(--shadow-lg);z-index:var(--z-popover);padding:6px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.bell-pop-head{justify-content:space-between;align-items:center;padding:8px 10px 10px;display:flex}.bell-empty{color:var(--text-3);text-align:center;padding:18px 12px}.bell-item{border-radius:var(--r-md);align-items:center;gap:10px;padding:8px;display:flex}.bell-link{color:inherit;text-decoration:none;display:block}.bell-link:hover .bell-item{background:var(--gray-50)}.bell-notif{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.bell-notif.unread .bell-item{background:color-mix(in srgb, var(--primary) 7%, transparent)}.bell-notif.unread .t-primary{font-weight:600}.rem-row{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding:11px 0;display:flex}.rem-row:last-child{border-bottom:none}.brand-row{align-items:center;gap:10px;min-width:0;display:flex}.brand-text{flex-direction:column;gap:1px;min-width:0;display:flex}.brand-name{font-size:var(--fs-md);letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.org-logo{-o-object-fit:contain;object-fit:contain;width:auto;max-width:168px;max-height:30px;display:block}.logo-preview{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-sunken);flex-shrink:0;place-items:center;width:96px;height:56px;display:grid;overflow:hidden}.logo-preview img{-o-object-fit:contain;object-fit:contain;max-width:86px;max-height:46px}.org-chip{border-radius:var(--r-md);border:1px solid var(--border);background:var(--surface-sunken);width:30px;height:30px;font-size:var(--fs-sm);color:var(--text-3);flex-shrink:0;place-items:center;font-weight:700;display:grid;overflow:hidden}.org-chip img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.swatches{flex-wrap:wrap;gap:8px;display:flex}.swatch{border:1px solid var(--border);background:var(--surface);color:var(--text-2);font-size:var(--fs-sm);cursor:pointer;border-radius:20px;align-items:center;gap:7px;padding:7px 12px 7px 9px;font-family:inherit;font-weight:500;transition:border-color .12s,color .12s;display:inline-flex;position:relative}.swatch:hover:not(:disabled){border-color:var(--border-strong);color:var(--text)}.swatch.on{border-color:var(--primary);color:var(--text);background:var(--primary-weak)}.swatch-dot{border-radius:50%;flex-shrink:0;width:14px;height:14px;box-shadow:inset 0 0 0 1px #ffffff26}.doc-tree{font-size:var(--fs-md)}.doc-row{border-radius:var(--r-sm);text-align:left;width:100%;color:var(--text);cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:none;align-items:center;gap:8px;padding:7px 8px;display:flex}.doc-folder:hover,.doc-file:hover{background:var(--gray-50)}.doc-folder{font-weight:600}.doc-folder svg:nth-of-type(2){color:var(--primary)}.doc-file{cursor:default;color:var(--text-2);font-weight:500}.doc-file svg{color:var(--gray-400)}.doc-caret{color:var(--gray-400);transition:transform .12s}.doc-caret.open{transform:rotate(90deg)}.doc-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.doc-row>svg,.doc-caret{flex-shrink:0}.doc-meta{white-space:nowrap;color:var(--text-3,var(--gray-500));font-weight:500;font-size:var(--fs-xs);flex-shrink:0}.impersonation-bar{background:var(--warning-weak);border-bottom:1px solid var(--warning-border);color:var(--warning);font-size:var(--fs-sm);align-items:center;gap:9px;padding:8px 18px;font-weight:500;display:flex}.impersonation-bar strong{font-weight:700}.impersonation-bar .btn{background:var(--warning);color:#fff;border-color:var(--warning)}.platform{background:var(--bg);min-height:100vh}.platform-top{background:var(--surface);border-bottom:1px solid var(--border);z-index:var(--z-sticky);align-items:center;gap:8px;padding:12px 24px;display:flex;position:sticky;top:0}.platform-body{max-width:1000px;margin:0 auto;padding:28px 24px}.toast-wrap{z-index:var(--z-toast);flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.app-toast{background:var(--surface-inverse);border:1px solid var(--border-strong);color:#fff;border-radius:var(--r-md);font-size:var(--fs-md);box-shadow:var(--shadow-pop);cursor:pointer;max-width:460px;padding:11px 18px;font-weight:500;animation:.2s both toastIn}.app-toast-error{background:var(--danger)}.app-toast-success{background:var(--success)}@keyframes toastIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.md-layout{align-items:flex-start;gap:20px;display:flex}.md-nav{flex-direction:column;flex-shrink:0;gap:2px;width:210px;display:flex;position:sticky;top:0}.md-nav button{text-align:left;border-radius:var(--r-md);font-size:var(--fs-md);color:var(--text-2);cursor:pointer;background:0 0;border:1px solid #0000;padding:9px 12px;font-family:inherit;font-weight:500}.md-nav button:hover{background:var(--gray-50);color:var(--text)}.md-nav button.active{background:var(--primary-weak);color:var(--primary);border-color:var(--primary-border);font-weight:600}.md-content{flex:1;min-width:0}.combo{position:relative}.combo-menu{z-index:var(--z-menu);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);max-height:220px;box-shadow:var(--shadow-lg);padding:4px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.combo-opt{text-align:left;border-radius:var(--r-sm);width:100%;font-size:var(--fs-md);color:var(--text);cursor:pointer;background:0 0;border:none;padding:8px 10px;font-family:inherit;display:block}.combo-opt:hover{background:var(--gray-50)}.sel-trigger{width:100%;height:var(--control-h);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);font-size:var(--fs-md);color:var(--text);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:8px;padding:0 10px 0 11px;font-family:inherit;transition:border-color .13s,box-shadow .13s;display:inline-flex}.sel-trigger:hover:not(:disabled){border-color:var(--gray-400)}.sel-trigger:focus-visible,.sel-trigger.open{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.sel-trigger:disabled{opacity:.6;cursor:not-allowed}.sel-trigger>svg{color:var(--text-3);transition:transform .15s var(--ease-out);flex-shrink:0;transform:rotate(90deg)}.sel-trigger.open>svg{transform:rotate(-90deg)}.sel-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sel-value.is-placeholder{color:var(--text-3)}.sel-menu{overscroll-behavior:contain;min-width:160px}.sel-search{height:30px;font-size:var(--fs-sm);margin-bottom:4px}.combo-opt{justify-content:space-between;align-items:center;gap:8px;display:flex}.combo-opt.is-selected{font-weight:600}.combo-opt.is-selected>svg{color:var(--primary);flex-shrink:0}.combo-opt:disabled{opacity:.5;cursor:not-allowed}.combo-opt.active{background:var(--primary-weak);color:var(--primary);font-weight:600}.combo-empty{font-size:var(--fs-sm);padding:8px 10px}.quick-links{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.quick-link{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-xs);color:var(--text);font-size:var(--fs-md);align-items:center;gap:9px;padding:10px 14px;font-weight:600;text-decoration:none;transition:border-color .12s,background .12s;display:inline-flex}.quick-link:hover{border-color:var(--primary);background:var(--gray-50)}.quick-link .ql-ic{background:var(--primary-weak);width:28px;height:28px;color:var(--primary);border-radius:7px;place-items:center;display:grid}.metrics{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:22px;display:grid}.metric{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xs);padding:15px 17px}.metric .m-label{font-size:var(--fs-xs);color:var(--text-3);font-weight:600}.metric .m-value{font-size:var(--fs-2xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:6px;font-weight:700}.metric .m-sub{font-size:var(--fs-xs);color:var(--text-2);margin-top:3px}.bar-row{font-size:var(--fs-sm);grid-template-columns:140px 1fr auto;align-items:center;gap:12px;padding:7px 0;display:grid}.bar-row .bar-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-track{background:var(--gray-100);border-radius:6px;height:8px;overflow:hidden}.bar-fill{background:var(--primary);border-radius:6px;height:100%;display:block}.bar-row .bar-num{font-variant-numeric:tabular-nums;color:var(--text-2);text-align:right;min-width:28px;font-weight:600}.board-toolbar{justify-content:flex-end;margin-bottom:10px;display:flex}.seg-btn-ico{align-items:center;gap:5px;display:inline-flex}.board-card.bc-nested{position:relative}.board-card.bc-nested:before{content:"";border-left:1px solid var(--border);border-bottom:1px solid var(--border);border-bottom-left-radius:6px;width:9px;position:absolute;top:-6px;bottom:50%;left:-9px}.board-cols{grid-auto-columns:minmax(260px,1fr);grid-auto-flow:column;align-items:start;gap:14px;padding-bottom:8px;display:grid;overflow-x:auto}.board-col{background:var(--gray-50);border:1px solid var(--border);border-radius:var(--r-lg);flex-direction:column;min-height:120px;display:flex}.board-col.drag-over{background:var(--primary-weak);border-color:var(--primary-border)}.col-head{align-items:center;gap:8px;padding:12px 14px 10px;display:flex}.col-head .nm{font-size:var(--fs-sm);font-weight:600}.col-head .ct{font-size:var(--fs-xs);color:var(--text-3);background:var(--gray-150);border-radius:20px;padding:1px 8px;font-weight:600}.col-head .val{font-size:var(--fs-sm);color:var(--text-2);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.col-cards{flex-direction:column;gap:9px;padding:0 12px 12px;display:flex;overflow-y:auto}.deal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-xs);padding:11px 12px;transition:box-shadow .12s,border-color .12s}.deal-card.movable{cursor:grab}.deal-card.movable:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.deal-card.dragging{opacity:.4}.deal-card .dn{font-size:var(--fs-md);letter-spacing:-.01em;overflow-wrap:break-word;font-weight:600}.deal-card .da{font-size:var(--fs-xs);color:var(--text-2);overflow-wrap:break-word;margin-top:2px}.deal-card .dfoot{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px 8px;margin-top:10px;display:flex}.deal-card .dfoot>*{min-width:0}.deal-card .dval{font-size:var(--fs-sm);font-variant-numeric:tabular-nums;font-weight:700}.card-move{width:100%;font-size:var(--fs-xs);border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);color:var(--text-2);cursor:pointer;margin-top:10px;padding:6px 8px;font-family:inherit;font-weight:500}.card-move:hover{border-color:var(--border-strong);color:var(--text)}.content::-webkit-scrollbar{width:10px;height:10px}.nav::-webkit-scrollbar{width:10px;height:10px}.modal-body::-webkit-scrollbar{width:10px;height:10px}.content::-webkit-scrollbar-thumb{background:var(--gray-300);border:2px solid var(--surface);border-radius:10px}.nav::-webkit-scrollbar-thumb{background:var(--gray-300);border:2px solid var(--surface);border-radius:10px}.modal-body::-webkit-scrollbar-thumb{background:var(--gray-300);border:2px solid var(--surface);border-radius:10px}@keyframes spin{to{transform:rotate(360deg)}}.spinner{vertical-align:-.18em;background:conic-gradient(from 90deg,#0000 8%,currentColor);border-radius:50%;flex:none;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 2px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 2px))}.btn .spinner{vertical-align:-.15em;margin-right:7px}.loader-block{color:var(--text-3);font-size:var(--fs-sm);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px 0;display:flex}.loader-orb{place-items:center;width:46px;height:46px;display:grid;position:relative}.loader-orb:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--primary) 45%, transparent), transparent 68%);border-radius:50%;animation:1.6s ease-in-out infinite loaderGlow;position:absolute;inset:-10px}.loader-ring{background:conic-gradient(from 90deg, transparent 5%, var(--primary));border-radius:50%;width:46px;height:46px;animation:.95s cubic-bezier(.5,.15,.35,1) infinite spin;position:relative;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 4px),#000 calc(100% - 4px));mask:radial-gradient(farthest-side,#0000 calc(100% - 4px),#000 calc(100% - 4px))}.loader-core{background:var(--primary-fill);width:9px;height:9px;box-shadow:0 0 10px color-mix(in srgb, var(--primary) 55%, transparent);border-radius:50%;animation:1.6s ease-in-out infinite loaderCore;position:absolute}.loader-label{letter-spacing:.01em;animation:1.6s ease-in-out infinite loaderLabel}@keyframes loaderGlow{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:.65;transform:scale(1.06)}}@keyframes loaderCore{0%,to{opacity:.7;transform:scale(.82)}50%{opacity:1;transform:scale(1)}}@keyframes loaderLabel{0%,to{opacity:.55}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.loader-ring{background:conic-gradient(from 90deg, color-mix(in srgb, var(--primary) 20%, transparent), var(--primary));animation:none}.loader-orb:before,.loader-core,.loader-label{opacity:1;animation:none}}img,video,canvas,svg{max-width:100%}.split-layout{align-items:flex-start;gap:20px;display:flex}.split-aside{flex-shrink:0;width:260px}.split-main{flex:1;min-width:0}@media (max-width:860px){.split-layout{flex-direction:column}.split-aside{width:100%!important;position:static!important}}@media (max-width:640px){.overlay{padding:12px}.modal{max-width:100%}.modal-foot{flex-wrap:wrap}.modal-foot .btn{flex:auto;justify-content:center}.modal-foot>div[style*="flex: 1"]{display:none}.page-head .ttl{font-size:var(--fs-xl)}.content-pad{padding:14px}table.data{min-width:520px}}.avatar-sm{width:26px;height:26px;font-size:var(--fs-2xs)}.acct-btn{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--text-3);border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 3px;display:inline-flex}.acct-btn:hover{border-color:var(--border-strong)}.acct-pop{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:220px;box-shadow:var(--shadow-pop);z-index:var(--z-menu);padding:6px;position:absolute;top:calc(100% + 8px);right:0}.acct-pop-head{border-bottom:1px solid var(--border);margin-bottom:6px;padding:8px 10px 10px}.acct-pop-name{font-size:var(--fs-sm);font-weight:600}.acct-pop-org{font-size:var(--fs-xs);color:var(--text-3)}.acct-pop-item{border-radius:var(--r-sm,6px);width:100%;font-size:var(--fs-sm);color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:8px 10px;text-decoration:none;display:flex}.acct-pop-item:hover{background:var(--surface-sunken)}.acct-pop-item.danger{color:var(--danger)}.acct-pop-sep{background:var(--border);height:1px;margin:6px 0}.launcher-shell{flex-direction:column;min-height:100vh;display:flex}.launcher-shell .launcher{flex:1;min-height:0;padding-top:48px}.launcher{flex-direction:column;align-items:center;min-height:100vh;padding:64px 24px;display:flex}.launcher-head{text-align:center;margin-bottom:40px}.launcher-mark{width:44px;height:44px;margin-bottom:16px}.launcher-title{font-size:var(--fs-2xl);letter-spacing:-.02em;font-weight:700}.launcher-sub{color:var(--text-3);font-size:var(--fs-md);margin-top:6px}.launcher-top-row{grid-template-columns:1fr 1fr;gap:18px;width:100%;max-width:818px;margin:0 0 18px;display:grid}.launcher-top-row .org-banner{max-width:none;margin:0}@media (max-width:720px){.launcher-top-row{grid-template-columns:1fr}}@media (max-width:640px){.platform-top{gap:6px;padding:10px 14px}.platform-top .t-sub,.platform-top .logo-word small{display:none}.platform-top .logo-word{font-size:var(--fs-sm)}}.org-banner{border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);width:100%;max-width:818px;box-shadow:var(--shadow-sm);transition:border-color .18s var(--ease-out), box-shadow .18s var(--ease-out), transform .18s var(--ease-out);align-items:center;gap:16px;margin:0 0 18px;padding:18px 22px;text-decoration:none;display:flex}.org-banner:hover{border-color:var(--primary-border);box-shadow:var(--shadow-pop);transform:translateY(-1px)}.org-banner-soft{background:var(--surface-sunken);box-shadow:none}.org-banner-soft .ob-ic{background:var(--surface)}.org-banner .ob-ic{border-radius:var(--r-md);background:var(--surface-sunken);width:48px;height:48px;color:var(--text);flex-shrink:0;place-items:center;display:grid}.org-banner .ob-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.org-banner .ob-title{font-size:var(--fs-lg);color:var(--text);font-weight:700}.org-banner .ob-desc{font-size:var(--fs-sm);color:var(--text-2)}.org-banner .ob-go{font-size:var(--fs-lg);color:var(--text-3);flex-shrink:0}.org-banner:hover .ob-go{color:var(--primary-ink)}.module-card-locked{cursor:pointer;text-align:left;font:inherit;background:var(--surface-sunken);border-style:dashed;position:relative}.module-card-locked .mc-ic{opacity:.55}.module-card-locked .mc-title{color:var(--text-2);align-items:center;gap:6px;display:flex}.module-card-locked .mc-locked-note{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);margin-top:2px;font-weight:700}@media (max-width:720px){.org-banner{flex-direction:row;padding:16px}.org-banner .ob-desc{display:none}}.launcher-grid{grid-template-columns:repeat(auto-fit,minmax(240px,260px));justify-content:center;gap:18px;width:100%;max-width:860px;display:grid}.module-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);cursor:pointer;color:var(--text);flex-direction:column;gap:12px;padding:24px;text-decoration:none;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex}.module-card .mc-ic{border-radius:var(--r-md);background:var(--primary-weak-2);width:46px;height:46px;color:var(--primary);place-items:center;display:grid}.module-card .mc-title{font-size:var(--fs-lg);font-weight:650}.module-card .mc-desc{font-size:var(--fs-sm);color:var(--text-3);line-height:1.45}.launcher-foot{margin-top:40px}.launcher-empty{color:var(--text-3);text-align:center;max-width:420px}.cf-divider{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);align-items:center;gap:10px;margin:6px 0 14px;font-weight:600;display:flex}.cf-divider:before,.cf-divider:after{content:"";background:var(--border);flex:1;height:1px}.rt-wrap{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.rt-wrap:focus-within{border-color:var(--border-strong)}.rt-toolbar{border-bottom:1px solid var(--border);background:var(--surface-sunken);flex-wrap:wrap;align-items:center;gap:4px;padding:5px 6px;display:flex}.rt-btn{border-radius:var(--r-sm,6px);cursor:pointer;min-width:26px;height:26px;font-size:var(--fs-sm);color:var(--text-2);background:0 0;border:1px solid #0000;padding:0 7px}.rt-btn:hover{background:var(--surface);border-color:var(--border)}.rt-btn.active{background:var(--primary-weak-2);color:var(--primary);border-color:var(--primary-weak)}.rt-sep{background:var(--border);width:1px;height:16px;margin:0 2px}.rt-hint{font-size:var(--fs-2xs);color:var(--text-3);margin-left:auto;padding-right:4px}.rt-editor{min-height:120px;font-size:var(--fs-md);outline:none;padding:10px 12px;line-height:1.6}.rt-compact .rt-editor{min-height:56px}.rt-editor:focus{outline:none}.rt-editor p{margin:0 0 8px}.rt-editor p:last-child{margin-bottom:0}.rt-editor ul,.rt-editor ol{margin:0 0 8px;padding-left:22px}.rt-editor a{color:var(--primary)}.rt-editor p.is-editor-empty:first-child:before,.rt-editor.ProseMirror-focused p:first-child:empty:before{content:attr(data-placeholder);color:var(--text-3);float:left;pointer-events:none;height:0}.mention,[data-type=mention]{background:var(--primary-weak-2);color:var(--primary);white-space:nowrap;border-radius:5px;padding:1px 5px;font-size:.94em;font-weight:600}.mention[data-id^=team\:],[data-type=mention][data-id^=team\:]{background:var(--surface-sunken);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.richtext{font-size:var(--fs-md);line-height:1.6}.richtext p{margin:0 0 8px}.richtext p:last-child{margin-bottom:0}.richtext ul,.richtext ol{margin:0 0 8px;padding-left:22px}.richtext a{color:var(--primary)}.richtext code{background:var(--surface-sunken);border-radius:4px;padding:1px 5px;font-size:.92em}.richtext blockquote{border-left:3px solid var(--border-strong);color:var(--text-2);margin:0 0 8px;padding-left:12px}.rt-btn .rt-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--fs-2xs)}.rt-btn .rt-quote-ico{font-size:var(--fs-lg);font-family:Georgia,serif;line-height:1}.rt-editor h1,.richtext h1{letter-spacing:-.01em;margin:2px 0 8px;font-size:1.4em;font-weight:700;line-height:1.3}.rt-editor h2,.richtext h2{margin:2px 0 6px;font-size:1.2em;font-weight:700;line-height:1.3}.rt-editor h3,.richtext h3{margin:2px 0 6px;font-size:1.05em;font-weight:600;line-height:1.3}.rt-editor blockquote{border-left:3px solid var(--border-strong);color:var(--text-2);margin:0 0 8px;padding-left:12px}.rt-editor code{background:var(--surface-sunken);border-radius:4px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.92em}.rt-editor pre,.richtext pre{background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--r-sm,6px);margin:0 0 8px;padding:10px 12px;font-size:.88em;line-height:1.5;overflow-x:auto}.rt-editor pre code,.richtext pre code{background:0 0;border-radius:0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.rt-editor hr,.richtext hr{border:0;border-top:1px solid var(--border);margin:12px 0}.rt-editor s,.richtext s,.rt-editor del,.richtext del{color:var(--text-3)}.richtext h1:first-child,.richtext h2:first-child,.richtext h3:first-child{margin-top:0}.richtext a.task-ref{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.2px;color:var(--primary-ink);background:var(--primary-weak);white-space:nowrap;border-radius:5px;padding:0 5px;font-size:.92em;font-weight:600;text-decoration:none}.richtext a.task-ref:hover{background:var(--primary-weak-2)}.docs-layout{margin-top:4px}.docs-layout--full{display:block}.docs-pane-head{justify-content:flex-end;margin-bottom:12px;display:flex}.tpl-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:18px;margin-top:4px;display:grid}.tpl-list{flex-direction:column;gap:2px;padding:6px;display:flex}.tpl-item{text-align:left;font-size:var(--fs-sm);color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;display:flex}.tpl-item:hover{background:var(--surface-sunken);color:var(--text)}.tpl-item.on{background:var(--primary-weak);color:var(--primary-ink);font-weight:600}.tpl-badge{font-size:var(--fs-2xs);flex-shrink:0}.tpl-body{font-family:var(--font-mono,ui-monospace, monospace);font-size:var(--fs-xs);resize:vertical;min-height:220px;line-height:1.5}.tpl-vars{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.tpl-var{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--primary-ink);background:var(--primary-weak);border-radius:4px;padding:1px 6px}@media (max-width:780px){.tpl-layout{grid-template-columns:1fr}}.notif-prefs-wrap{overflow-x:auto}.notif-prefs{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.notif-prefs th{text-align:left;font-size:var(--fs-2xs);letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border);padding:12px 16px;font-weight:600}.notif-prefs .npref-col{text-align:center;width:100px}.notif-prefs td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}.notif-prefs tr:last-child td{border-bottom:0}.notif-prefs tbody tr:hover td{background:var(--gray-25)}.npref-cell{text-align:center}.npref-check{cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.npref-check input{width:17px;height:17px;accent-color:var(--primary);cursor:pointer}.npref-label{color:var(--text);font-weight:600}.npref-desc{font-size:var(--fs-xs);color:var(--text-3);margin-top:2px}.docs-pane{min-width:0}.docs-welcome{text-align:center;padding:44px 24px}.docs-welcome-ttl{font-size:var(--fs-xl);margin:0 0 8px;font-weight:700}.docs-welcome .muted{max-width:46ch;margin:0 auto;line-height:1.6}.docs-page-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.docs-page-ttl{font-size:var(--fs-xl);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:700;line-height:1.25}.docs-page-actions{flex-shrink:0;gap:4px;display:flex}.docs-page-meta{font-size:var(--fs-xs);margin:6px 0 14px}.docs-body{min-height:120px;margin-bottom:16px}.docs-body .richtext{font-size:var(--fs-md);line-height:1.7}.docs-editor .docs-title-input{border:0;border-bottom:2px solid var(--border);width:100%;font-size:var(--fs-xl);color:var(--text);letter-spacing:-.01em;background:0 0;margin-bottom:12px;padding:4px 0 10px;font-weight:700}.docs-editor .docs-title-input:focus{border-bottom-color:var(--primary);outline:none}.docs-comments{margin-top:26px}.docs-comments-head{font-weight:600;font-size:var(--fs-sm);color:var(--text);border-bottom:1px solid var(--border);align-items:center;gap:7px;margin-bottom:12px;padding-bottom:10px;display:flex}.docs-comment{gap:10px;padding:10px 0;display:flex}.docs-comment-main{flex:1;min-width:0}.docs-comment-meta{font-size:var(--fs-xs)}.docs-comment-author{color:var(--text);font-weight:600}.docs-comment-body{margin-top:3px}.docs-comment-actions{gap:12px;margin-top:5px;display:flex}.docs-comment-new{margin-top:12px}.docs-history-modal{flex-direction:column;width:min(920px,94vw);max-height:86vh;display:flex}.docs-history-head{justify-content:space-between;align-items:center;display:flex}.docs-history-body{grid-template-columns:240px minmax(0,1fr);gap:16px;min-height:0;padding:4px 2px;display:grid;overflow:hidden}.docs-history-list{flex-direction:column;gap:4px;max-height:66vh;padding-right:4px;display:flex;overflow-y:auto}.docs-history-item{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.docs-history-item:hover{background:var(--surface-sunken)}.docs-history-item.on{background:var(--primary-weak);border-color:var(--primary-weak-2)}.docs-history-v{font-weight:600;font-size:var(--fs-sm);color:var(--text)}.docs-history-when{font-size:var(--fs-2xs)}.docs-history-preview{max-height:66vh;overflow-y:auto}@media (max-width:860px){.docs-history-body{grid-template-columns:1fr}}.mention-popup{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:180px;max-height:220px;box-shadow:var(--shadow-pop);padding:4px;overflow-y:auto}.mention-item{text-align:left;width:100%;font-size:var(--fs-sm);color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:space-between;align-items:center;gap:8px;padding:6px 9px;display:flex}.mention-item.active,.mention-item:hover{background:var(--surface-sunken)}.mention-item-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mention-item-tag{font-size:var(--fs-2xs);letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);background:var(--surface-sunken);border-radius:4px;flex-shrink:0;padding:1px 5px;font-weight:700}.mention-item.active .mention-item-tag{background:var(--surface)}.mention-empty{font-size:var(--fs-sm);color:var(--text-3);padding:6px 9px}.backlog-group td{background:var(--gray-50);padding-top:10px;padding-bottom:10px}.gantt{overflow-x:auto}.gantt-chart{font-size:var(--fs-sm)}.gantt-row{border-bottom:1px solid var(--border);cursor:pointer;align-items:stretch;display:flex}.gantt-row:last-child{border-bottom:0}.gantt-row:not(.gantt-head):hover{background:var(--gray-50)}.gantt-head{cursor:default;background:var(--gray-50)}.gantt-label{border-right:1px solid var(--border);flex:none;align-items:center;gap:8px;padding:8px 12px;display:flex;overflow:hidden}.gantt-label .task-key,.gantt-label .pill{flex:none}.gantt-title{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.gantt-track{flex:1;min-height:34px;display:flex;position:relative}.gantt-head .gantt-track{min-height:30px}.gantt-month{border-right:1px solid var(--border);color:var(--text-2);white-space:nowrap;flex:none;padding:7px 8px;font-weight:600;overflow:hidden}.gantt-gridcell{border-right:1px solid var(--border);flex:none}.gantt-bar{background:var(--primary-fill);height:20px;color:var(--text-on-primary);font-size:var(--fs-2xs);border-radius:5px;align-items:center;padding:0 8px;font-weight:600;display:flex;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%);box-shadow:0 1px 2px #00000026}.gantt-bar span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gantt-bar.done{background:var(--gray-300);color:var(--text-2)}.gantt-bar.overdue{background:var(--danger)}.gantt-today{background:var(--danger);opacity:.55;z-index:1;width:2px;position:absolute;top:0;bottom:0}:root{--ease-out:cubic-bezier(.16, 1, .3, 1);--shadow-xs:0 1px 2px #141c2e0d;--shadow-sm:0 1px 2px #141c2e0f, 0 3px 8px #141c2e0d;--shadow-md:0 2px 6px #141c2e0f, 0 10px 28px #141c2e1a;--shadow-lg:0 6px 16px #141c2e14, 0 22px 56px #141c2e26;--shadow-pop:0 28px 80px #141c2e3d;--glow:0 8px 26px -8px var(--primary-weak-2);--grad-primary:linear-gradient(135deg, var(--primary-hover), var(--primary) 55%, var(--primary-active));--grad-sheen:linear-gradient(180deg, #ffffff38, #fff0 46%)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes popIn{0%{opacity:0;transform:translateY(10px)scale(.97)}to{opacity:1;transform:none}}@keyframes barGrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}::selection{background:var(--primary-weak-2);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--gray-300) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-thumb{background:var(--gray-300);background-clip:padding-box;border:3px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400);background-clip:padding-box}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:none;transform:translateY(0)}.btn-secondary:hover:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(-1px)}.btn-danger{position:relative;overflow:hidden}.btn-danger:after{content:"";background:var(--grad-sheen);pointer-events:none;position:absolute;inset:0}.card{box-shadow:var(--shadow-sm);transition:box-shadow .28s var(--ease-out), transform .22s var(--ease-out), border-color .2s}.table-wrap{box-shadow:var(--shadow-sm)}.input:focus,.select:focus,textarea:focus,.rt-editor:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring);outline:none}.input,.select,textarea{transition:border-color .15s,box-shadow .15s}.metric{transition:transform .24s var(--ease-out), box-shadow .26s var(--ease-out), border-color .2s;position:relative;overflow:hidden}.metric:before{content:"";background:var(--grad-primary);opacity:.9;width:3px;position:absolute;top:0;bottom:0;left:0}.metric:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-3px)}.metrics>.metric{animation:fadeInUp .5s var(--ease-out) both}.metrics>.metric:nth-child(2){animation-delay:50ms}.metrics>.metric:nth-child(3){animation-delay:.1s}.metrics>.metric:nth-child(4){animation-delay:.15s}.metrics>.metric:nth-child(5){animation-delay:.2s}.metrics>.metric:nth-child(6){animation-delay:.25s}.bar-fill{background:var(--grad-primary);transform-origin:0;animation:barGrow .7s var(--ease-out) both}.quick-link{transition:border-color .16s, background .16s, transform .15s var(--ease-out), box-shadow .2s}.quick-link:hover{box-shadow:var(--shadow-sm);border-color:var(--primary-border);transform:translateY(-2px)}.quick-link .ql-ic{background:var(--grad-primary);color:#fff;box-shadow:var(--glow)}.nav-item{transition:background .16s, color .16s, transform .13s var(--ease-out);position:relative}.nav-item:hover{transform:translate(2px)}.nav-item.active{background:linear-gradient(90deg, var(--primary-weak), transparent 92%)}.nav-item.active:before{content:"";background:var(--grad-primary);border-radius:0 3px 3px 0;width:3px;height:64%;position:absolute;top:18%;left:0}.overlay{-webkit-backdrop-filter:blur(6px);background:#10162480}.modal{box-shadow:var(--shadow-pop);border-radius:var(--r-xl);animation:popIn .28s var(--ease-out) backwards}.pill{transition:transform .12s var(--ease-out)}.launcher{background:radial-gradient(120% 80% at 50% -10%, var(--gray-25), var(--bg) 60%);position:relative;overflow:hidden}.launcher:before,.launcher:after{content:"";filter:blur(72px);opacity:.55;pointer-events:none;z-index:0;border-radius:50%;position:absolute}.launcher:before{background:radial-gradient(circle, var(--primary-weak-2), transparent 70%);width:540px;height:540px;top:-200px;left:-140px}.launcher:after{background:radial-gradient(circle,#2563eb29,#0000 70%);width:480px;height:480px;bottom:-180px;right:-120px}.launcher-head,.launcher-grid,.launcher-foot,.launcher-empty{z-index:1;position:relative}.launcher-head{animation:fadeInUp .6s var(--ease-out) both}.launcher-title{color:var(--text)}.module-card{box-shadow:var(--shadow-sm);transition:transform .3s var(--ease-out), box-shadow .3s var(--ease-out), border-color .2s;animation:popIn .55s var(--ease-out) both;position:relative;overflow:hidden}.launcher-grid>.module-card:nth-child(2){animation-delay:80ms}.launcher-grid>.module-card:nth-child(3){animation-delay:.16s}.launcher-grid>.module-card:nth-child(4){animation-delay:.24s}.launcher-grid>.module-card:nth-child(5){animation-delay:.32s}.module-card:before{content:"";border-radius:inherit;background:linear-gradient(135deg, var(--primary-border), transparent 45%);-webkit-mask-composite:xor;opacity:0;pointer-events:none;padding:1px;transition:opacity .3s;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.module-card:hover{box-shadow:var(--shadow-lg);border-color:#0000;transform:translateY(-6px)}.module-card:hover:before{opacity:1}.module-card .mc-ic{background:var(--grad-primary);color:#fff;box-shadow:var(--glow);transition:transform .3s var(--ease-out)}.module-card:hover .mc-ic{transform:scale(1.08)rotate(-4deg)}.module-card.mc-org .mc-ic{background:linear-gradient(135deg, var(--gray-500), var(--gray-800));color:#fff}.page-head .ttl{color:var(--text)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}:root{--glass-card:#ffffffb8;--glass-chrome:#ffffffa8;--glass-strong:#ffffffd1;--glass-blur:saturate(1.7) blur(14px);--glass-blur-lg:saturate(1.8) blur(22px);--glass-edge:#ffffff8c;--glass-hi:inset 0 1px 0 #fff9}html{background:var(--bg)}body{background:0 0}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(56% 44% at 100% -6%, var(--primary-weak), transparent 60%), radial-gradient(48% 42% at -8% 106%, #2563eb12, transparent 60%), radial-gradient(38% 40% at 50% 118%, var(--primary-weak), transparent 72%);position:fixed;inset:0}.sidebar{background:var(--glass-chrome);-webkit-backdrop-filter:var(--glass-blur);border-right-color:var(--glass-edge)}.topbar{background:var(--glass-chrome);-webkit-backdrop-filter:var(--glass-blur);border-bottom-color:var(--glass-edge)}.card,.metric,.quick-link{background:var(--glass-card);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-edge);box-shadow:var(--glass-hi), var(--shadow-sm)}.metric:hover{box-shadow:var(--glass-hi), var(--shadow-md)}.table-wrap{background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-edge);box-shadow:var(--glass-hi), var(--shadow-sm)}.modal{background:var(--glass-strong);-webkit-backdrop-filter:var(--glass-blur-lg);border:1px solid var(--glass-edge);box-shadow:var(--glass-hi), var(--shadow-pop)}.acct-pop,.mention-popup{background:var(--surface);border-color:var(--glass-edge);box-shadow:var(--glass-hi), var(--shadow-pop)}.module-card{background:var(--glass-card);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-edge);box-shadow:var(--glass-hi), var(--shadow-sm)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.sidebar,.topbar,.card,.metric,.quick-link,.table-wrap,.modal,.acct-pop,.mention-popup,.module-card{background:var(--surface)}}:root{--glass-hi:inset 0 1px 0 #ffffffd9, inset 1px 0 0 #ffffff59, inset 0 0 0 1px #ffffff1a, inset 0 -10px 26px -14px #ffffff80}.module-card,.metric,.quick-link,.liquid{position:relative}.quick-link{overflow:hidden}.module-card:after,.metric:after,.quick-link:after,.liquid:after{content:"";border-radius:inherit;pointer-events:none;z-index:3;background:radial-gradient(240px circle at var(--mx,50%) var(--my,0%), #ffffff80, #ffffff24 26%, transparent 52%);opacity:0;transition:opacity .4s var(--ease-out);mix-blend-mode:screen;position:absolute;inset:0}.module-card:hover:after,.metric:hover:after,.quick-link:hover:after,.liquid:hover:after{opacity:1}.module-card{box-shadow:var(--glass-hi), var(--shadow-sm)}.module-card:hover{box-shadow:var(--glass-hi), var(--shadow-lg)}.sidebar{box-shadow:inset -1px 0 #ffffff40,inset 0 1px #fff9}.topbar{box-shadow:inset 0 1px #fff9}.btn{transition:background .16s, border-color .16s, box-shadow .2s, color .16s, transform .14s var(--ease-out)}.btn:active:not(:disabled),.btn-primary:active:not(:disabled){transform:scale(.96)}.module-card:active{transform:translateY(-3px)scale(.992)}.metric:active,.quick-link:active{transform:translateY(-1px)scale(.99)}.pill{box-shadow:inset 0 1px #fff6}.card,.metric,.quick-link,.table-wrap{-webkit-backdrop-filter:none;background:#ffffffe6}.table-wrap{background:#fffffff0}.modal{-webkit-backdrop-filter:var(--glass-blur-lg)}.metric:after,.quick-link:after{content:none;display:none}.sidebar{will-change:transform;contain:paint}.topbar{will-change:transform;z-index:var(--z-topbar);position:relative}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn:focus-visible,.card:focus-visible,.nav-item:focus-visible,.tab:focus-visible{outline-offset:3px;border-radius:var(--r-md)}.data tbody tr{transition:background .14s var(--ease-out), box-shadow .14s var(--ease-out)}.data tbody tr[style*="cursor: pointer"]:hover,.data tbody tr[style*=cursor\:pointer]:hover{box-shadow:inset 3px 0 0 var(--primary)}.metric .m-value{animation:fadeInUp .55s var(--ease-out) both;animation-delay:80ms}@keyframes shimmer{to{transform:translate(100%)}}.skeleton{background:var(--surface-sunken);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface) 65%, transparent), transparent);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.fade-in{animation:fadeInUp .32s var(--ease-out) backwards}.task-rows{flex-direction:column;display:flex}.task-row{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:44px;padding:9px 14px;display:flex}.task-row:last-child{border-bottom:0}.task-row:hover{background:var(--surface-sunken)}.task-row.dragging{opacity:.5}.task-row .tr-grip{color:var(--text-3);cursor:grab;opacity:0;flex-shrink:0;align-items:center;margin:-4px 2px -4px -4px;padding:4px;transition:opacity .12s;display:inline-flex}.task-row:hover .tr-grip{opacity:.7}.task-row .tr-grip:active{cursor:grabbing}.task-row.drop-before{box-shadow:inset 0 2px 0 var(--primary)}.board-card.drop-before{position:relative}.board-card.drop-before:before{content:"";background:var(--primary);border-radius:2px;height:2px;position:absolute;top:-5px;left:0;right:0}.task-row .tr-sub-marker{color:var(--text-3);font-size:var(--fs-sm);margin-left:-18px}.task-row .tr-type{flex-shrink:0;display:inline-flex}.task-row .tr-main{min-width:0;color:var(--text);align-items:baseline;gap:10px;text-decoration:none;display:inline-flex}.task-row .tr-key{font-size:var(--fs-xs);color:var(--text-2);flex-shrink:0}.task-row .tr-key-done{color:var(--text-3);text-decoration:line-through}.task-row .tr-title{font-size:var(--fs-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.task-row .tr-main:hover .tr-title{color:var(--primary-ink)}.task-row .tr-parent{border-radius:var(--r-sm);background:color-mix(in srgb, var(--primary) 12%, var(--surface));max-width:180px;color:var(--primary-ink);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;padding:2px 8px;font-weight:700;overflow:hidden}.task-row .tr-hassub{color:var(--text-3);flex-shrink:0;display:inline-flex}.task-row .tr-right{flex-shrink:0;align-items:center;gap:10px;margin-left:auto;display:flex}.task-row .tr-actions{opacity:0;transition:opacity .14s var(--ease-out);gap:2px;display:inline-flex}.task-row:hover .tr-actions,.task-row:focus-within .tr-actions{opacity:1}.pill-dd{cursor:pointer;align-items:center;gap:3px;padding-right:6px;display:inline-flex}.pill-dd svg{transform:rotate(90deg)}.task-row .pill-dd{text-transform:uppercase;font-size:var(--fs-2xs);letter-spacing:.03em;border:0;font-weight:700}.task-row .pill-dd.pill-neutral{background:var(--surface-sunken);color:var(--text-2)}.task-row .pill-dd.pill-info{color:#fff;background:#2563eb}.task-row .pill-dd.pill-success{color:#fff;background:#16a34a}.task-row .pill-dd.pill-warning{background:var(--warning);color:#fff}.task-row-add{border:0;border-top:1px solid var(--border);width:100%;color:var(--text-3);font:inherit;font-size:var(--fs-sm);cursor:pointer;transition:background-color .14s var(--ease-out), color .14s var(--ease-out);background:0 0;align-items:center;gap:6px;padding:11px 14px;display:flex}.task-row-add:hover{background:var(--surface-sunken);color:var(--text)}.board-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-xs);cursor:pointer;transition:box-shadow .15s var(--ease-out), border-color .15s var(--ease-out), transform 50ms;padding:12px 14px}.board-card.movable{cursor:pointer}.board-card:hover{box-shadow:var(--shadow-sm);border-color:var(--border-strong)}.board-card.dragging{opacity:.5;cursor:grabbing}.board-card .bc-parent{font-size:var(--fs-2xs);color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;overflow:hidden}.board-card .bc-title{font-size:var(--fs-md);color:var(--text);margin-bottom:12px;font-weight:600;line-height:1.35}.board-card .bc-foot{align-items:center;gap:8px;display:flex}.board-card .bc-type{flex-shrink:0;display:inline-flex}.board-card .bc-key{font-size:var(--fs-xs);color:var(--text-2)}.board-card .bc-key-done{color:var(--text-3);text-decoration:line-through}.board-card .bc-right{align-items:center;gap:7px;margin-left:auto;display:flex}.board-card .bc-done-tick{color:var(--success);flex-shrink:0}.board-card .bc-sub{color:var(--text-3);display:inline-flex}.board-add{border-radius:var(--r-md);width:100%;color:var(--text-3);font:inherit;font-size:var(--fs-sm);cursor:pointer;transition:background-color .14s var(--ease-out), color .14s var(--ease-out);background:0 0;border:0;align-items:center;gap:6px;margin-top:2px;padding:8px 10px;display:flex}.board-add:hover{background:var(--surface-sunken);color:var(--text)}.avatar-xs{width:22px;height:22px;font-size:var(--fs-2xs);letter-spacing:0;background:var(--primary-fill);color:var(--text-on-primary);border-radius:50%;flex-shrink:0;place-items:center;font-weight:700;display:inline-grid}.avatar-xs.avatar-empty{background:var(--surface-sunken);color:var(--text-3);box-shadow:inset 0 0 0 1px var(--border)}.board .col-head .nm{text-transform:uppercase;letter-spacing:.04em;font-size:var(--fs-xs);color:var(--text-2);font-weight:700}.inline-edit{border-radius:var(--r-sm);font:inherit;color:inherit;cursor:pointer;transition:background-color .14s var(--ease-out), box-shadow .14s var(--ease-out);background:0 0;border:0;align-items:center;gap:5px;margin:-1px -4px;padding:1px 4px;display:inline-flex}.inline-edit:hover{background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border)}.inline-edit:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.inline-edit-active{min-width:128px;display:inline-flex}.inline-edit-active .sel-trigger{height:26px;font-size:var(--fs-xs);padding:0 22px 0 8px}.dfoot .inline-edit-active{min-width:104px}.label-editor{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);min-height:38px;transition:border-color .14s var(--ease-out), box-shadow .14s var(--ease-out);flex-wrap:wrap;align-items:center;gap:5px;padding:5px 8px;display:flex}.label-editor:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--ring)}.label-editor.is-disabled{background:var(--surface-sunken)}.label-editor-input{min-width:90px;font:inherit;font-size:var(--fs-sm);color:var(--text);background:0 0;border:0;outline:0;flex:1;padding:2px 0}.label-chip,.task-label{background:var(--primary-fill-soft,var(--surface-sunken));color:var(--primary-ink);font-size:var(--fs-2xs);box-shadow:inset 0 0 0 1px var(--border);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-weight:600;line-height:1.7;display:inline-flex}.team-badge{background:var(--surface-sunken);color:var(--text-2);font-size:var(--fs-2xs);box-shadow:inset 0 0 0 1px var(--border);white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:4px;max-width:160px;padding:1px 8px;font-weight:600;line-height:1.7;display:inline-flex;overflow:hidden}.team-badge>svg{color:var(--text-3);flex-shrink:0}.label-chip-x{width:14px;height:14px;color:var(--primary-ink);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;margin-right:-3px;padding:0;font-size:13px;line-height:1;display:inline-grid}.label-chip-x:hover{background:#00000014}.task-labels{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.link-add{border-bottom:1px solid var(--border);background:var(--surface-sunken);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.link-add-target{flex:1;min-width:200px}.link-groups{flex-direction:column;display:flex}.link-group+.link-group{border-top:1px solid var(--border)}.link-group-label{font-size:var(--fs-2xs);letter-spacing:.03em;text-transform:uppercase;color:var(--text-3);padding:8px 16px 2px;font-weight:700}.watch-pop-wrap{display:inline-flex;position:relative}.watch-trigger{align-items:center;gap:6px;padding:0 11px;display:inline-flex}.watch-trigger>svg{flex-shrink:0}.watch-trigger-count{font-size:var(--fs-md);font-variant-numeric:tabular-nums;font-weight:700}.watch-trigger.on{color:var(--primary-ink);border-color:var(--primary)}.watch-trigger.on>svg{color:var(--primary)}.watch-pop{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:288px;box-shadow:var(--shadow-lg);padding:6px;position:absolute;top:calc(100% + 8px);right:0}.watch-pop-toggle,.watch-add-btn{border-radius:var(--r-md);width:100%;font-size:var(--fs-md);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:9px 10px;font-weight:500;display:flex}.watch-pop-toggle:hover:not(:disabled),.watch-add-btn:hover{background:var(--surface-sunken)}.watch-pop-toggle:disabled{opacity:.6;cursor:default}.watch-pop-toggle>svg{color:var(--primary);flex-shrink:0}.watch-add-btn>svg{color:var(--text-2);flex-shrink:0}.watch-pop-section{border-top:1px solid var(--border);margin-top:4px;padding-top:6px}.watch-pop-label{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:2px 10px 6px;font-weight:700}.watch-list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.watch-row{border-radius:var(--r-md);align-items:center;gap:10px;padding:5px 10px;display:flex}.watch-row:hover{background:var(--surface-sunken)}.watch-row .watch-name{min-width:0;font-size:var(--fs-md);color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.watch-remove{border-radius:var(--r-sm);width:24px;height:24px;color:var(--text-3);cursor:pointer;opacity:0;background:0 0;border:0;flex-shrink:0;place-items:center;transition:opacity .12s,color .12s,background .12s;display:inline-grid}.watch-row:hover .watch-remove,.watch-remove:focus-visible{opacity:1}.watch-remove:hover{color:var(--danger);background:var(--surface)}.watch-pop-foot{border-top:1px solid var(--border);margin-top:4px;padding-top:6px}.watch-pop-foot .combo-input,.watch-pop-foot>div{width:100%}.tt-summary{border-bottom:1px solid var(--border);padding:12px 16px}.tt-bar{background:var(--surface-sunken);border-radius:999px;height:8px;overflow:hidden}.tt-bar-fill{background:var(--primary-fill);height:100%;transition:width .25s var(--ease-out);border-radius:999px;display:block}.tt-bar-fill.tt-over{background:var(--danger,#dc2626)}.tt-legend{font-size:var(--fs-2xs);color:var(--text-2);flex-wrap:wrap;gap:4px 14px;margin-top:7px;display:flex}.tt-legend strong{color:var(--text);font-variant-numeric:tabular-nums}.worklog-add{border-bottom:1px solid var(--border);background:var(--surface-sunken);flex-wrap:wrap;align-items:center;gap:8px;padding:12px 16px;display:flex}.worklog-list{flex-direction:column;display:flex}.worklog-row{align-items:flex-start;gap:10px;padding:10px 16px;display:flex}.worklog-row+.worklog-row{border-top:1px solid var(--border)}.worklog-body{flex:1;min-width:0}.worklog-meta{font-size:var(--fs-sm);color:var(--text-2)}.worklog-meta strong{color:var(--text);font-weight:600}.worklog-desc{font-size:var(--fs-sm);color:var(--text-2);margin-top:2px}.ts-toolbar{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.ts-total{flex-direction:column;align-items:flex-end;line-height:1.1;display:flex}.ts-total-num{font-size:var(--fs-xl);font-variant-numeric:tabular-nums;font-weight:700}.ts-total-lbl{font-size:var(--fs-2xs);color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.seg{background:var(--surface-sunken);border-radius:var(--r-md);box-shadow:inset 0 0 0 1px var(--border);gap:2px;padding:3px;display:inline-flex}.seg-btn{cursor:pointer;border-radius:var(--r-sm);font-size:var(--fs-xs);color:var(--text-2);transition:background-color .14s var(--ease-out), color .14s var(--ease-out);background:0 0;border:0;padding:5px 12px;font-weight:600}.seg-btn:hover{color:var(--text)}.seg-btn.active{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0000000f}.ts-weeknav{align-items:center;gap:6px;display:inline-flex}.ts-range{font-size:var(--fs-sm);color:var(--text);text-align:center;min-width:150px;font-weight:600}.ts-grid-wrap{overflow-x:auto}.ts-grid{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.ts-grid th,.ts-grid td{border-bottom:1px solid var(--border);text-align:center;padding:9px 10px}.ts-grid thead th{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.03em;color:var(--text-3);font-weight:700}.ts-task-col{min-width:220px;text-align:left!important}.ts-day-col{display:table-cell}.ts-dow{display:block}.ts-dom{font-size:var(--fs-md);color:var(--text-2);margin-top:1px;font-weight:700;display:block}.ts-cell{font-variant-numeric:tabular-nums;white-space:nowrap}.ts-dash{color:var(--text-4,var(--text-3))}.ts-row-tot,.ts-day-tot{font-weight:700}.ts-grand-tot{color:var(--primary-ink);font-weight:800}.ts-grid tfoot td{border-bottom:0;border-top:2px solid var(--border);background:var(--surface-sunken)}.ts-task{color:var(--text);text-decoration:none}.ts-task:hover .ts-task-title{text-decoration:underline}.ts-task-title{color:var(--text-2)}.ts-daylist{flex-direction:column;display:flex}.ts-dayblock{border-bottom:1px solid var(--border)}.ts-dayblock:last-child{border-bottom:0}.ts-day-head{background:var(--surface-sunken);font-size:var(--fs-xs);color:var(--text-2);justify-content:space-between;align-items:center;padding:8px 16px;font-weight:700;display:flex}.ts-day-sum{font-variant-numeric:tabular-nums;color:var(--text)}.ts-entry{font-size:var(--fs-sm);align-items:center;gap:10px;padding:8px 16px;display:flex}.ts-entry+.ts-entry{border-top:1px solid var(--border)}.ts-entry-desc{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.team-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.team-card{flex-direction:column;gap:8px;display:flex}.team-card-head{align-items:flex-start;gap:8px;display:flex}.team-card-title{font-size:var(--fs-md);flex:1;font-weight:700}.team-card-actions{gap:2px;display:flex}.team-card-desc{font-size:var(--fs-sm);color:var(--text-2)}.team-card-members{align-items:center;gap:8px;margin-top:auto;padding-top:6px;display:flex}.team-avatars{display:inline-flex}.team-avatars .avatar-xs{box-shadow:0 0 0 2px var(--surface);margin-right:-6px}.team-avatars .avatar-xs:last-child{margin-right:0}.avatar-more{font-size:var(--fs-2xs);background:var(--surface-sunken)!important;color:var(--text-2)!important}.team-member-chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.team-chip{background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--border);font-size:var(--fs-xs);color:var(--text);border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 3px;font-weight:600;display:inline-flex}.team-chip-x{width:16px;height:16px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;margin-left:1px;padding:0;font-size:14px;line-height:1;display:inline-grid}.team-chip-x:hover{color:var(--text);background:#00000014}.sp-badge{border-radius:var(--r-sm);background:var(--surface-sunken);min-width:20px;height:18px;color:var(--text-2);font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;box-shadow:inset 0 0 0 1px var(--border);place-items:center;padding:0 5px;font-weight:700;display:inline-grid}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-3{top:12px}.m-0{margin:0}.mx-0{margin-left:0;margin-right:0}.mx-auto{margin-left:auto;margin-right:auto}.my-0{margin-top:0;margin-bottom:0}.my-\[18px\]{margin-top:18px;margin-bottom:18px}.-mt-1\.5{margin-top:-6px}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:2px}.mb-1{margin-bottom:4px}.mb-1\.5{margin-bottom:6px}.mb-2{margin-bottom:8px}.mb-2\.5{margin-bottom:10px}.mb-3{margin-bottom:12px}.mb-4{margin-bottom:16px}.mb-5{margin-bottom:20px}.mb-\[14px\]{margin-bottom:14px}.mb-\[18px\]{margin-bottom:18px}.mb-\[22px\]{margin-bottom:22px}.ml-1{margin-left:4px}.ml-1\.5{margin-left:6px}.ml-2{margin-left:8px}.ml-\[18px\]{margin-left:18px}.ml-auto{margin-left:auto}.mr-1\.5{margin-right:6px}.mr-2{margin-right:8px}.mr-3{margin-right:12px}.mr-\[14px\]{margin-right:14px}.mt-0{margin-top:0}.mt-0\.5{margin-top:2px}.mt-1{margin-top:4px}.mt-1\.5{margin-top:6px}.mt-2{margin-top:8px}.mt-2\.5{margin-top:10px}.mt-3{margin-top:12px}.mt-3\.5{margin-top:.875rem}.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mt-\[14px\]{margin-top:14px}.mt-\[22px\]{margin-top:22px}.mt-\[3px\]{margin-top:3px}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-2{height:8px}.h-8{height:32px}.h-\[24px\]{height:24px}.h-\[28px\]{height:28px}.h-\[30px\]{height:30px}.max-h-\[300px\]{max-height:300px}.max-h-\[320px\]{max-height:320px}.max-h-\[400px\]{max-height:400px}.max-h-\[calc\(100vh-24px\)\]{max-height:calc(100vh - 24px)}.min-h-0{min-height:0}.w-2{width:8px}.w-8{width:32px}.w-\[100px\]{width:100px}.w-\[110px\]{width:110px}.w-\[120px\]{width:120px}.w-\[130px\]{width:130px}.w-\[150px\]{width:150px}.w-\[160px\]{width:160px}.w-\[24px\]{width:24px}.w-\[260px\]{width:260px}.w-\[280px\]{width:280px}.w-\[28px\]{width:28px}.w-\[30px\]{width:30px}.w-\[32px\]{width:32px}.w-\[80px\]{width:80px}.w-\[90px\]{width:90px}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[110px\]{min-width:110px}.min-w-\[150px\]{min-width:150px}.min-w-\[160px\]{min-width:160px}.max-w-\[150px\]{max-width:150px}.max-w-\[200px\]{max-width:200px}.max-w-\[220px\]{max-width:220px}.max-w-\[400px\]{max-width:400px}.max-w-\[420px\]{max-width:420px}.max-w-\[440px\]{max-width:440px}.max-w-\[460px\]{max-width:460px}.max-w-\[480px\]{max-width:480px}.max-w-\[520px\]{max-width:520px}.max-w-\[540px\]{max-width:540px}.max-w-\[560px\]{max-width:560px}.max-w-\[600px\]{max-width:600px}.max-w-\[620px\]{max-width:620px}.max-w-\[640px\]{max-width:640px}.max-w-\[680px\]{max-width:680px}.max-w-\[700px\]{max-width:700px}.max-w-\[720px\]{max-width:720px}.max-w-\[760px\]{max-width:760px}.max-w-\[920px\]{max-width:920px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.gap-0\.5{gap:2px}.gap-1{gap:4px}.gap-1\.5{gap:6px}.gap-2{gap:8px}.gap-2\.5{gap:10px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-5{gap:20px}.gap-6{gap:24px}.gap-\[14px\]{gap:14px}.gap-\[18px\]{gap:18px}.self-start{align-self:flex-start}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:var(--r-md)}.rounded-full{border-radius:9999px}.rounded-none{border-radius:0}.border{border-width:1px}.border-0{border-width:0}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-\[var\(--border\)\]{border-color:var(--border)}.bg-\[var\(--primary-fill\)\]{background-color:var(--primary-fill)}.bg-\[var\(--surface-sunken\)\]{background-color:var(--surface-sunken)}.bg-transparent{background-color:#0000}.p-0{padding:0}.p-2{padding:8px}.p-2\.5{padding:10px}.p-3{padding:12px}.p-4{padding:16px}.p-5{padding:20px}.p-\[14px\]{padding:14px}.p-\[18px\]{padding:18px}.px-0{padding-left:0;padding-right:0}.px-0\.5{padding-left:2px;padding-right:2px}.px-1{padding-left:4px;padding-right:4px}.px-3{padding-left:12px;padding-right:12px}.px-4{padding-left:16px;padding-right:16px}.px-6{padding-left:24px;padding-right:24px}.px-\[14px\]{padding-left:14px;padding-right:14px}.py-0{padding-top:0;padding-bottom:0}.py-0\.5{padding-top:2px;padding-bottom:2px}.py-1{padding-top:4px;padding-bottom:4px}.py-1\.5{padding-top:6px;padding-bottom:6px}.py-12{padding-top:48px;padding-bottom:48px}.py-2{padding-top:8px;padding-bottom:8px}.py-2\.5{padding-top:10px;padding-bottom:10px}.py-3{padding-top:12px;padding-bottom:12px}.py-4{padding-top:16px;padding-bottom:16px}.py-8{padding-top:32px;padding-bottom:32px}.pb-0{padding-bottom:0}.pb-0\.5{padding-bottom:2px}.pb-1{padding-bottom:4px}.pb-1\.5{padding-bottom:6px}.pb-2{padding-bottom:8px}.pl-4{padding-left:16px}.pl-5{padding-left:20px}.pt-0{padding-top:0}.pt-0\.5{padding-top:2px}.pt-1{padding-top:4px}.pt-2\.5{padding-top:10px}.pt-3{padding-top:12px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xs{font-size:var(--fs-2xs);line-height:1.45}.text-\[10px\]{font-size:10px}.text-\[15px\]{font-size:15px}.text-\[18px\]{font-size:18px}.text-\[24px\]{font-size:24px}.text-base{font-size:var(--fs-md);line-height:1.55}.text-lg{font-size:var(--fs-lg);line-height:1.4}.text-sm{font-size:var(--fs-sm);line-height:1.5}.text-xl{font-size:var(--fs-xl);line-height:1.3}.text-xs{font-size:var(--fs-xs);line-height:1.45}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.normal-case{text-transform:none}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-\[1\.55\]{line-height:1.55}.leading-\[1\.65\]{line-height:1.65}.leading-\[1\.6\]{line-height:1.6}.tracking-\[\.04em\]{letter-spacing:.04em}.tracking-\[\.05em\]{letter-spacing:.05em}.tracking-\[0\.03em\]{letter-spacing:.03em}.tracking-\[0\.05em\]{letter-spacing:.05em}.tracking-\[0\.5\]{letter-spacing:.5px}.tracking-\[0\]{letter-spacing:0}.text-\[var\(--text-3\)\]{color:var(--text-3)}.text-danger{color:var(--danger)}.text-ink{color:var(--text)}.text-ink-2{color:var(--text-2)}.text-ink-3{color:var(--text-3)}.text-primary{color:var(--primary)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.ring-2{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}table td,table th,.metric .m-value,.kpi-value,.mono,.task-key,[data-numeric]{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1, "lnum" 1}@media print{body *{visibility:hidden}#visitor-badge,#visitor-badge *{visibility:visible}#visitor-badge{box-shadow:none;border:1px solid #ccc;position:absolute;top:0;left:0}.badge-actions{display:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.module-card:after,.metric:after,.quick-link:after,.liquid:after{display:none!important}}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:bg-\[var\(--surface-sunken\)\]:hover{background-color:var(--surface-sunken)}
