.gp{--font-body:"Wix Madefor Text",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:26px;--text-3xl:34px;--leading-tight:1.2;--leading-normal:1.45;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:12px;--space-6:16px;--space-7:20px;--space-8:24px;--space-9:32px;--radius-xs:3px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--control-h:28px;--control-h-lg:34px;--row-h:32px;--icon:16px;--sidebar-w:216px;--rail-w:52px;--header-h:44px;--color-page:#eef1f5;--color-surface:#fff;--color-surface-2:#f5f7fa;--color-surface-3:#e7ebf0;--color-ink:#16191f;--color-ink-2:#4a5361;--color-ink-3:#78818f;--color-border:#d7dde5;--color-hairline:#e6eaf0;--color-accent:#c6432f;--color-accent-hover:#ad3927;--color-accent-text:#a8362a;--color-accent-soft:#fbe9e5;--color-accent-soft-2:#f3c9c0;--color-on-accent:#fff;--color-success:#2f8552;--color-success-soft:#e1f1e7;--color-warning:#a86f0a;--color-warning-soft:#fbeed3;--color-danger:#b3261e;--color-danger-soft:#fbe4e2;--color-info:#3a6db5;--color-info-soft:#e3ebf8;--color-violet:#6e4fb3;--color-violet-soft:#ebe5f8;--color-selection:#fdf1ee;--shadow-sm:0 1px 2px #16191f0f;--shadow-md:0 4px 14px #16191f1a,0 1px 2px #16191f0f;--shadow-lg:0 18px 44px #16191f33,0 2px 6px #16191f14;--color-overlay:#16191f73}.gp[data-theme=dark],.gp:where(.dark *){--color-page:#0e1115;--color-surface:#161a20;--color-surface-2:#1c2128;--color-surface-3:#252c35;--color-ink:#e9edf2;--color-ink-2:#aab3c0;--color-ink-3:#77818f;--color-border:#2b333e;--color-hairline:#222932;--color-accent:#e0604c;--color-accent-hover:#ea7561;--color-accent-text:#f08a79;--color-accent-soft:#3a1f1b;--color-accent-soft-2:#552a24;--color-on-accent:#fff;--color-success:#5fb57f;--color-success-soft:#1b2f23;--color-warning:#d9a03a;--color-warning-soft:#33280f;--color-danger:#e46a63;--color-danger-soft:#3a1c1a;--color-info:#6f9be0;--color-info-soft:#1b2637;--color-violet:#a58ae0;--color-violet-soft:#27203a;--color-selection:#2a1e1c;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #00000080;--shadow-lg:0 18px 44px #0009;--color-overlay:#0009}.gp *{box-sizing:border-box}.gp{font:400 var(--text-sm)/var(--leading-normal)var(--font-body);color:var(--color-ink);-webkit-font-smoothing:antialiased}.gp a{color:var(--color-accent-text);text-decoration:none}.gp a:hover{text-decoration:underline}.gp h1,.gp h2,.gp h3,.gp p{margin:0}.gp .mono{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:0;font-weight:500}.gp .muted{color:var(--color-ink-2)}.gp .faint{color:var(--color-ink-3)}.gp .xs{font-size:var(--text-xs)}.gp .two-xs{font-size:var(--text-2xs)}.gp .row{align-items:center;gap:var(--space-4);display:flex}.gp .col{gap:var(--space-4);flex-direction:column;display:flex}.gp .grow{flex:1;min-width:0}.gp .between{justify-content:space-between}.gp .wrap{flex-wrap:wrap}.gp .ellipsis{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gp .gp-i{width:var(--icon);height:var(--icon);vertical-align:-3px;flex:none;display:inline-flex}.gp .gp-i svg{stroke:currentColor;fill:none;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.gp .app{grid-template-columns:var(--sidebar-w)minmax(0,1fr);background:var(--color-page);width:1440px;height:900px;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--leading-normal);display:grid;position:relative;overflow:hidden}.gp .app[data-rail]{grid-template-columns:var(--rail-w)minmax(0,1fr)}.gp .sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-4);gap:var(--space-1);flex-direction:column;display:flex}.gp .team{align-items:center;gap:var(--space-4);height:36px;padding:0 var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-sm);cursor:pointer;display:flex}.gp .team:hover{background:var(--color-surface-2)}.gp .logo{border-radius:var(--radius-xs);background:var(--color-ink);width:24px;height:24px;color:var(--color-surface);font:700 13px var(--font-body);flex:none;place-items:center;display:grid}.gp .team b{font-weight:600;font-size:var(--text-sm)}.gp .nav-item{height:30px;padding:0 var(--space-4);border-radius:var(--radius-sm);color:var(--color-ink-2);cursor:pointer;white-space:nowrap;align-items:center;gap:10px;font-weight:500;display:flex}.gp .nav-item:hover{background:var(--color-surface-2);color:var(--color-ink)}.gp .nav-item[aria-current]{background:var(--color-accent-soft);color:var(--color-accent-text)}.gp[data-theme=dark] .nav-item[aria-current],.gp:where(.dark *) .nav-item[aria-current]{color:var(--color-accent-text)}.gp .nav-item .cnt{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);margin-left:auto}.gp .nav-sub{flex-direction:column;gap:1px;margin-left:26px;padding:2px 0;display:flex}.gp .nav-sub .nav-item{height:26px;font-weight:400;font-size:var(--text-xs)}.gp .sidebar .spacer{flex:1}.gp .sidebar .me{align-items:center;gap:var(--space-4);padding:var(--space-3);border-top:1px solid var(--color-hairline);margin:0 calc(-1*var(--space-4))calc(-1*var(--space-4));padding:10px 14px;display:flex}.gp .app[data-rail] .sidebar{padding:var(--space-4)var(--space-3);align-items:center}.gp .app[data-rail] .nav-item{justify-content:center;width:36px;padding:0}.gp .app[data-rail] .nav-item span,.gp .app[data-rail] .team b,.gp .app[data-rail] .team .gp-i,.gp .app[data-rail] .nav-item .cnt,.gp .app[data-rail] .me span{display:none}.gp .app[data-rail] .team{justify-content:center;width:36px;padding:0}.gp .app[data-rail] .me{border:0;margin:0;padding:8px 0}.gp .app[data-rail] .brand span:not(.logo){display:none}.gp .app[data-rail] .brand{padding:4px 0 0}.gp .frame{flex-direction:column;min-width:0;height:100%;display:flex}.gp .header{height:var(--header-h);align-items:center;gap:var(--space-5);padding:0 var(--space-6);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none;display:flex}.gp .header h1{font-size:var(--text-md);font-weight:600}.gp .crumb{align-items:center;gap:var(--space-3);color:var(--color-ink-3);font-weight:500;display:flex}.gp .crumb b{color:var(--color-ink);font-weight:600}.gp .search{align-items:center;gap:var(--space-4);height:var(--control-h);border-radius:var(--radius-sm);background:var(--color-surface-2);border:1px solid var(--color-hairline);width:260px;color:var(--color-ink-3);padding:0 10px;display:flex}.gp .search kbd{font:500 10px var(--font-mono);border:1px solid var(--color-border);border-radius:var(--radius-xs);color:var(--color-ink-3);margin-left:auto;padding:0 4px}.gp .bell{position:relative}.gp .bell .dot{border-radius:var(--radius-xs);background:var(--color-accent);min-width:16px;height:16px;color:var(--color-on-accent);font:600 10px/16px var(--font-mono);text-align:center;padding:0 4px;position:absolute;top:-4px;right:-6px}.gp .content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.gp .toolbar{align-items:center;gap:var(--space-4);height:40px;padding:0 var(--space-6);border-bottom:1px solid var(--color-hairline);background:var(--color-surface);flex:none;display:flex}.gp .tabs{gap:2px;height:100%;display:flex}.gp .tab{height:100%;color:var(--color-ink-2);cursor:pointer;font-weight:500;font-size:var(--text-sm);border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 10px;display:flex}.gp .tab[aria-current]{color:var(--color-ink);border-color:var(--color-accent)}.gp .tab .cnt{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3)}.gp .page{min-height:0;padding:var(--space-6);gap:var(--space-5);flex-direction:column;flex:1;display:flex;overflow:hidden}.gp .btn{height:var(--control-h);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);font:500 var(--text-sm)/1 var(--font-body);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.gp .btn:hover{background:var(--color-surface-2)}.gp .btn.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}.gp .btn.primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.gp .btn.ghost{color:var(--color-ink-2);background:0 0;border-color:#0000}.gp .btn.ghost:hover{background:var(--color-surface-3);color:var(--color-ink)}.gp .btn.danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.gp .btn.icon{width:var(--control-h);padding:0}.gp .btn.lg{height:var(--control-h-lg);font-size:var(--text-md);padding:0 14px}.gp .btn.sm{height:24px;font-size:var(--text-xs);padding:0 8px}.gp .input{height:var(--control-h);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);font-size:var(--text-sm);align-items:center;gap:8px;padding:0 10px;display:flex}.gp .input.ph{color:var(--color-ink-3)}.gp .input.focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.gp .input.lg{height:var(--control-h-lg)}.gp .textarea{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);min-height:80px;padding:8px 10px}.gp .field{flex-direction:column;gap:4px;display:flex}.gp .field>label{font-size:var(--text-xs);color:var(--color-ink-2);font-weight:500}.gp .select{justify-content:space-between}.gp .check{border-radius:var(--radius-xs);border:1.5px solid var(--color-border);background:var(--color-surface);flex:none;place-items:center;width:16px;height:16px;display:grid}.gp .check.on{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.gp .check.on .gp-i{width:12px;height:12px}.gp .toggle{background:var(--color-border);border-radius:9px;flex:none;width:30px;height:18px;position:relative}.gp .toggle:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;top:2px;left:2px}.gp .toggle.on{background:var(--color-accent)}.gp .toggle.on:after{left:14px}.gp .seg{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);gap:2px;padding:2px;display:inline-flex}.gp .seg .btn{height:22px;color:var(--color-ink-2);font-size:var(--text-xs);background:0 0;border:0}.gp .seg .btn[aria-current]{background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-sm)}.gp .avatar{border-radius:var(--radius-xs);background:var(--color-surface-3);width:22px;height:22px;color:var(--color-ink-2);font:600 9.5px/1 var(--font-body);letter-spacing:.2px;text-align:center;flex:none;justify-content:center;align-items:center;padding-bottom:1px;display:inline-flex;position:relative}.gp .team-logo{border-radius:var(--radius-xs);background:var(--color-info);color:#fff;width:24px;height:24px;font:600 12px/1 var(--font-body);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.gp .team-logo img{object-fit:cover;width:100%;height:100%;display:block}.gp .team-logo.lg{border-radius:var(--radius-sm);width:36px;height:36px;font-size:16px}.gp .brand{color:var(--color-ink-3);font-size:var(--text-2xs);align-items:center;gap:6px;padding:8px 8px 0;font-weight:500;display:flex}.gp .brand .logo{width:16px;height:16px;color:var(--color-ink-3);background:0 0}.gp .avatar.md{width:28px;height:28px;font-size:11px}.gp .avatar.lg{border-radius:var(--radius-sm);width:36px;height:36px;font-size:13px}.gp .avatar.online:after{content:"";background:var(--color-success);border:1.5px solid var(--color-surface);border-radius:50%;width:7px;height:7px;position:absolute;bottom:-2px;right:-2px}.gp .avatars{display:inline-flex}.gp .avatars .avatar{border:1.5px solid var(--color-surface);margin-left:-6px}.gp .avatars .avatar:first-child{margin:0}.gp .status{font-size:var(--text-xs);color:var(--color-ink-2);white-space:nowrap;align-items:center;gap:6px;font-weight:500;display:inline-flex}.gp .status:before{content:"";background:var(--st,var(--color-ink-3));border-radius:2px;flex:none;width:8px;height:8px}.gp .status[data-s=new]{--st:var(--color-ink-3)}.gp .status[data-s=work]{--st:var(--color-info)}.gp .status[data-s=review]{--st:var(--color-warning)}.gp .status[data-s=done]{--st:var(--color-success)}.gp .status[data-s=hold]{--st:var(--color-violet)}.gp .pri{font-size:var(--text-xs);color:var(--color-ink-2);align-items:center;gap:5px;font-weight:500;display:inline-flex}.gp .pri i{gap:1.5px;display:inline-flex}.gp .pri i:before,.gp .pri i:after,.gp .pri i b{content:"";background:var(--color-border);border-radius:1px;width:3px;height:10px;display:block}.gp .pri[data-p=low] i:before{background:var(--color-ink-3)}.gp .pri[data-p=mid] i:before,.gp .pri[data-p=mid] i b{background:var(--color-warning)}.gp .pri[data-p=high] i:before,.gp .pri[data-p=high] i b,.gp .pri[data-p=high] i:after{background:var(--color-accent)}.gp .pri[data-p=crit]{color:var(--color-danger)}.gp .pri[data-p=crit] i:before,.gp .pri[data-p=crit] i b,.gp .pri[data-p=crit] i:after{background:var(--color-danger)}.gp .tag{border-radius:var(--radius-xs);background:var(--color-surface-3);height:18px;color:var(--color-ink-2);font-size:var(--text-2xs);white-space:nowrap;align-items:center;padding:0 6px;font-weight:500;display:inline-flex}.gp .tag.accent{background:var(--color-accent-soft);color:var(--color-accent-text)}.gp .tag.info{background:var(--color-info-soft);color:var(--color-info)}.gp .tag.warn{background:var(--color-warning-soft);color:var(--color-warning)}.gp .tag.ok{background:var(--color-success-soft);color:var(--color-success)}.gp .tag.violet{background:var(--color-violet-soft);color:var(--color-violet)}.gp .chip{border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface);height:24px;font-size:var(--text-xs);color:var(--color-ink-2);white-space:nowrap;align-items:center;gap:6px;padding:0 8px;font-weight:500;display:inline-flex}.gp .chip.on{border-color:var(--color-accent-soft-2);background:var(--color-accent-soft);color:var(--color-accent-text)}.gp .id{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);white-space:nowrap;font-weight:500}.gp .date{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink-2);white-space:nowrap}.gp .date.late{color:var(--color-danger)}.gp .date.soon{color:var(--color-warning)}.gp .progress{background:var(--color-surface-3);border-radius:2px;min-width:60px;height:4px;position:relative;overflow:hidden}.gp .progress:after{content:"";width:var(--v,0%);background:var(--color-ink-2);border-radius:2px;position:absolute;inset:0}.gp .progress.done:after{background:var(--color-success)}.gp .badge{border-radius:var(--radius-xs);background:var(--color-accent);color:#fff;min-width:18px;height:18px;font:600 10px var(--font-mono);place-items:center;padding:0 5px;display:inline-grid}.gp .badge.soft{background:var(--color-surface-3);color:var(--color-ink-2)}.gp .kbd{font:500 10px var(--font-mono);border:1px solid var(--color-border);border-radius:var(--radius-xs);color:var(--color-ink-3);padding:0 4px}.gp .dep{font-family:var(--font-mono);font-size:var(--text-2xs);border-radius:var(--radius-xs);border:1px solid var(--color-border);height:18px;color:var(--color-ink-2);align-items:center;gap:4px;padding:0 5px;font-weight:500;display:inline-flex}.gp .dep.block{border-color:var(--color-warning);color:var(--color-warning)}.gp .card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;min-height:0;display:flex}.gp .card-h{align-items:center;gap:var(--space-4);height:38px;padding:0 var(--space-5);border-bottom:1px solid var(--color-hairline);font-weight:600;font-size:var(--text-sm);display:flex}.gp .card-h .cnt{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);font-weight:500}.gp .card-b{padding:var(--space-5);gap:var(--space-4);flex-direction:column;min-height:0;display:flex}.gp .list>*{align-items:center;gap:var(--space-4);min-height:var(--row-h);padding:0 var(--space-5);border-bottom:1px solid var(--color-hairline);display:flex}.gp .list>:last-child{border-bottom:0}.gp .list>:hover{background:var(--color-surface-2)}.gp .popover{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:var(--space-2)}.gp .menu-item{border-radius:var(--radius-sm);height:28px;font-size:var(--text-sm);align-items:center;gap:10px;padding:0 10px;display:flex}.gp .menu-item:hover{background:var(--color-surface-2)}.gp .menu-item.danger{color:var(--color-danger)}.gp .overlay{background:var(--color-overlay);z-index:10;place-items:center;display:grid;position:absolute;inset:0}.gp .dialog{background:var(--color-surface);border-radius:var(--radius-lg);width:440px;box-shadow:var(--shadow-lg);padding:var(--space-7);gap:var(--space-5);flex-direction:column;display:flex}.gp .dialog h2{font-size:var(--text-lg);font-weight:600}.gp .toast{align-items:center;gap:var(--space-5);border-radius:var(--radius-md);background:var(--color-ink);height:40px;color:var(--color-surface);box-shadow:var(--shadow-lg);font-size:var(--text-sm);z-index:11;padding:0 6px 0 14px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.gp .toast .btn{color:inherit;background:0 0;border-color:#fff3}.gp .toast .btn.ghost{border:0}.gp[data-theme=dark] .toast,.gp:where(.dark *) .toast{background:var(--color-surface-3);color:var(--color-ink)}.gp .skeleton{background:var(--color-surface-3);border-radius:var(--radius-xs);height:10px;position:relative;overflow:hidden}.gp .skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff80,#0000);animation:1.4s infinite gp-sh;position:absolute;inset:0}@keyframes gp-sh{0%{transform:translate(-100%)}to{transform:translate(100%)}}.gp[data-theme=dark] .skeleton:after,.gp:where(.dark *) .skeleton:after{background:linear-gradient(90deg,#0000,#ffffff0f,#0000)}.gp .empty{justify-content:center;align-items:center;gap:var(--space-4);padding:var(--space-9);text-align:center;color:var(--color-ink-2);flex-direction:column;display:flex}.gp .empty .glyph{border-radius:var(--radius-md);background:var(--color-surface-3);width:40px;height:40px;color:var(--color-ink-3);place-items:center;display:grid}.gp .empty .glyph .gp-i{width:20px;height:20px}.gp .empty b{color:var(--color-ink);font-weight:600}.gp .tree{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.gp .tr{height:var(--row-h);padding:0 var(--space-5)0 var(--space-4);border-bottom:1px solid var(--color-hairline);align-items:center;gap:var(--space-5);grid-template-columns:minmax(0,1fr) 120px 150px 104px 110px 96px 40px;display:grid}.gp .tr:hover{background:var(--color-surface-2)}.gp .tr.head{background:var(--color-surface-2);height:30px;font-size:var(--text-2xs);color:var(--color-ink-3);text-transform:none;font-weight:500}.gp .tr.sel{background:var(--color-selection)}.gp .tr .t{min-width:0;padding-left:calc(var(--lvl,0)*22px);align-items:center;gap:8px;display:flex}.gp .tr .t .caret{width:16px;color:var(--color-ink-3);display:inline-flex}.gp .tr .t .caret.leaf{visibility:hidden}.gp .tr.l0 .t{font-weight:600}.gp .tr.l2 .t{color:var(--color-ink-2)}.gp .tr .name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gp .kanban{gap:var(--space-5);grid-auto-columns:268px;grid-auto-flow:column;height:100%;display:grid;overflow:hidden}.gp .kcol{gap:var(--space-4);flex-direction:column;min-height:0;display:flex}.gp .kcol-h{height:28px;font-weight:600;font-size:var(--text-sm);align-items:center;gap:8px;padding:0 4px;display:flex}.gp .kcol-h .cnt{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);font-weight:500}.gp .kcard{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);flex-direction:column;gap:8px;padding:10px 10px 8px;display:flex}.gp .kcard:hover{border-color:var(--color-ink-3)}.gp .kcard .ttl{font-weight:500;line-height:1.35}.gp .md{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);flex-direction:column;display:flex;overflow:hidden}.gp .md-tb{border-bottom:1px solid var(--color-hairline);background:var(--color-surface-2);align-items:center;gap:2px;height:34px;padding:0 6px;display:flex}.gp .md-tb .btn.icon{width:26px;height:26px;color:var(--color-ink-2);background:0 0;border:0}.gp .md-tb .btn.icon:hover{background:var(--color-surface-3)}.gp .md-tb .sep{background:var(--color-border);width:1px;height:16px;margin:0 4px}.gp .md-tb .tabs{height:34px;margin-left:auto}.gp .md-tb .tab{font-size:var(--text-xs)}.gp .md-body{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink);white-space:pre-wrap;min-height:120px;padding:10px 12px;line-height:1.6}.gp .md-body .tok{color:var(--color-accent-text)}.gp .md-body .ref{background:var(--color-info-soft);color:var(--color-info);border-radius:2px;padding:0 3px}.gp .mail{grid-template-columns:232px 372px minmax(0,1fr);height:100%;min-height:0;display:grid}.gp .mrail{background:var(--color-surface);border-right:1px solid var(--color-border);padding:var(--space-4);flex-direction:column;gap:2px;display:flex;overflow:hidden}.gp .mbox{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:8px;height:34px;padding:0 8px;display:flex}.gp .mbox:hover{background:var(--color-surface-2)}.gp .mbox[aria-current]{background:var(--color-surface-3)}.gp .mbox .prov{border-radius:var(--radius-xs);width:20px;height:20px;font:700 10px var(--font-body);color:#fff;flex:none;place-items:center;display:grid}.gp .mbox .nm{font-weight:500;font-size:var(--text-xs);line-height:1.2}.gp .mbox .ad{font-family:var(--font-mono);color:var(--color-ink-3);font-size:10px;line-height:1.2}.gp .mrail .sec{font-size:var(--text-2xs);color:var(--color-ink-3);padding:10px 8px 4px;font-weight:500}.gp .mlist{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;min-height:0;display:flex;overflow:hidden}.gp .msg{border-bottom:1px solid var(--color-hairline);cursor:pointer;grid-template-columns:22px minmax(0,1fr) auto;align-items:start;gap:4px 10px;padding:8px 12px 8px 10px;display:grid}.gp .msg:hover{background:var(--color-surface-2)}.gp .msg[aria-current]{background:var(--color-selection);box-shadow:inset 3px 0 0 var(--color-accent)}.gp .msg .from{align-items:center;gap:6px;font-weight:500;display:flex}.gp .msg.unread .from{font-weight:700}.gp .msg .subj{font-size:var(--text-sm)}.gp .msg.unread .subj{font-weight:600}.gp .msg .prev{font-size:var(--text-xs);color:var(--color-ink-3)}.gp .msg .when{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3)}.gp .msg .u{background:var(--color-accent);border-radius:50%;width:6px;height:6px;display:inline-block}.gp .mread{background:var(--color-surface);flex-direction:column;min-height:0;display:flex;overflow:hidden}.gp .mread .body{padding:var(--space-6)var(--space-8);font-size:var(--text-md);flex-direction:column;gap:12px;line-height:1.55;display:flex;overflow:hidden}.gp .attach{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);align-items:center;gap:8px;height:34px;padding:0 10px 0 8px;display:inline-flex}.gp .attach .ext{border-radius:var(--radius-xs);background:var(--color-surface-3);width:22px;height:22px;font:600 9px var(--font-mono);color:var(--color-ink-2);place-items:center;display:grid}.gp .cal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:1;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.gp .cal .dow{height:28px;font-size:var(--text-2xs);color:var(--color-ink-3);border-bottom:1px solid var(--color-hairline);background:var(--color-surface-2);align-items:center;padding:0 8px;font-weight:500;display:flex}.gp .day{border-right:1px solid var(--color-hairline);border-bottom:1px solid var(--color-hairline);flex-direction:column;gap:3px;min-height:0;padding:6px;display:flex;overflow:hidden}.gp .day:nth-child(7n){border-right:0}.gp .day .n{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-ink-2);font-weight:500}.gp .day.out .n{color:var(--color-ink-3);opacity:.5}.gp .day.today .n{color:var(--color-on-accent);background:var(--color-accent);border-radius:var(--radius-xs);align-self:flex-start;padding:0 4px}.gp .day.we{background:var(--color-surface-2)}.gp .ev{border-radius:var(--radius-xs);height:20px;font-size:var(--text-2xs);white-space:nowrap;text-overflow:ellipsis;background:var(--color-surface-3);color:var(--color-ink-2);align-items:center;gap:5px;padding:0 6px;font-weight:500;display:flex;overflow:hidden}.gp .ev:before{content:"";background:var(--color-ink-3);border-radius:1px;flex:none;width:3px;height:12px}.gp .ev.meet{background:var(--color-violet-soft);color:var(--color-violet)}.gp .ev.meet:before{background:var(--color-violet)}.gp .ev.due{background:var(--color-accent-soft);color:var(--color-accent-text)}.gp .ev.due:before{background:var(--color-accent)}.gp .ev.ok{background:var(--color-success-soft);color:var(--color-success)}.gp .ev.ok:before{background:var(--color-success)}.gp .phone{background:var(--color-page);width:390px;height:844px;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-md);border:1px solid var(--color-border);border-radius:44px;flex-direction:column;display:flex;position:relative;overflow:hidden}.gp .pstatus{height:54px;font:600 14px var(--font-body);justify-content:space-between;align-items:flex-end;padding:0 28px 8px;display:flex}.gp .ptop{align-items:center;gap:10px;height:48px;padding:0 16px;display:flex}.gp .ptop h1{font-size:var(--text-xl);font-weight:700}.gp .pbody{flex-direction:column;flex:1;gap:12px;min-height:0;padding:0 16px 16px;display:flex;overflow:hidden}.gp .pbody>*{flex:none}.gp .tabbar{background:var(--color-surface);border-top:1px solid var(--color-border);grid-template-columns:repeat(5,1fr);align-items:start;height:84px;padding-top:8px;display:grid}.gp .tabbar .ti{color:var(--color-ink-3);flex-direction:column;align-items:center;gap:4px;font-size:10px;font-weight:500;display:flex}.gp .tabbar .ti .gp-i{width:22px;height:22px}.gp .tabbar .ti[aria-current]{color:var(--color-accent-text)}.gp .tabbar .fab{border-radius:var(--radius-lg);background:var(--color-accent);color:#fff;width:48px;height:48px;box-shadow:var(--shadow-md);place-items:center;margin:-16px auto 0;display:grid}.gp .tabbar .fab .gp-i{width:22px;height:22px}.gp .phone .btn{height:var(--control-h-lg);font-size:var(--text-md)}.gp .phone .kcard{padding:12px}.gp .phone .status,.gp .phone .date,.gp .phone .pri{font-size:var(--text-xs)}.gp .phone .list>*{min-height:44px;padding:8px 14px}.gp .pj-head{background:var(--color-surface);border-bottom:1px solid var(--color-border);flex-direction:column;flex:none;gap:10px;padding:12px 16px;display:flex}.gp .pj-title{align-items:center;gap:10px;min-width:0;display:flex}.gp .pj-title h1{font-size:var(--text-xl);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;line-height:1.2;overflow:hidden}.gp .pj-meta{align-items:center;gap:16px;min-height:20px;display:flex}.gp .pj-stats{font-size:var(--text-xs);color:var(--color-ink-2);align-items:center;gap:16px;display:flex}.gp .pj-stat{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.gp .pj-stat b{font-family:var(--font-mono);color:var(--color-ink);font-weight:600}.gp .pj-stat:before{content:"";background:var(--st,var(--color-ink-3));border-radius:2px;flex:none;width:8px;height:8px}.gp .pj-stat[data-s=work]{--st:var(--color-info)}.gp .pj-stat[data-s=done]{--st:var(--color-success)}.gp .pj-stat[data-s=late]{--st:var(--color-danger);color:var(--color-danger)}.gp .pj-stat[data-s=late] b{color:var(--color-danger)}.gp .pj-stat.plain:before{display:none}.gp .pj-progress{width:220px;font-size:var(--text-xs);color:var(--color-ink-2);white-space:nowrap;align-items:center;gap:8px;display:flex}.gp .pj-progress .progress{flex:1}.gp .pj-progress b{font-family:var(--font-mono);color:var(--color-ink);font-weight:600}.gp .pj-filters{flex:none;align-items:center;gap:6px;height:28px;display:flex}.gp .pj-filters .shown{font-size:var(--text-xs);color:var(--color-ink-2);white-space:nowrap;margin-right:6px}.gp .pj-filters .shown b{font-family:var(--font-mono);color:var(--color-ink);font-weight:600}.gp .pj-chips{flex-wrap:wrap;flex:none;align-items:center;gap:6px;margin-top:-4px;display:flex}.gp .pj-parent{font-size:var(--text-2xs);color:var(--color-ink-3);white-space:nowrap;align-items:center;gap:4px;min-width:0;display:flex;overflow:hidden}.gp .pj-parent .gp-i{vertical-align:0;width:12px;height:12px}.gp .pj-parent .id{font-size:10px}.gp .kanban.pj-3{grid-auto-columns:minmax(0,1fr)}.gp .pj-gantt{--pj-left:440px;--pj-day:16px;--pj-row:32px;--pj-axis:48px;grid-template-columns:var(--pj-left)max-content;grid-template-rows:var(--pj-axis);grid-auto-rows:var(--pj-row);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:none;align-content:start;max-height:100%;display:grid;position:relative;overflow:auto}.gp .pj-gantt::-webkit-scrollbar{width:10px;height:10px}.gp .pj-gantt::-webkit-scrollbar-thumb{background:var(--color-border);border:2px solid var(--color-surface);border-radius:5px}.gp .pj-gantt::-webkit-scrollbar-track{background:var(--color-surface)}.gp .pj-gantt::-webkit-scrollbar-corner{background:var(--color-surface)}.gp .pj-corner{z-index:4;background:var(--color-surface-2);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);font-size:var(--text-2xs);color:var(--color-ink-3);grid-template-columns:minmax(0,1fr) 22px 44px;align-items:end;gap:10px;padding:0 12px 7px 8px;font-weight:500;display:grid;position:sticky;top:0;left:0}.gp .pj-axis{z-index:3;background:var(--color-surface-2);border-bottom:1px solid var(--color-border);height:var(--pj-axis);position:sticky;top:0;overflow:hidden}.gp .pj-axis .mo{height:22px;font-size:var(--text-2xs);color:var(--color-ink-2);border-left:1px solid var(--color-border);white-space:nowrap;align-items:center;padding:0 8px;font-weight:600;display:flex;position:absolute;top:0;overflow:hidden}.gp .pj-axis .wk{height:26px;font:500 10px var(--font-mono);color:var(--color-ink-3);border-left:1px solid var(--color-hairline);white-space:nowrap;align-items:center;padding:0 6px;display:flex;position:absolute;top:22px;overflow:hidden}.gp .pj-axis .wk.now{color:var(--color-accent-text);font-weight:600}.gp .pj-axis .now-l{background:var(--color-accent);color:var(--color-on-accent);font:600 10px/16px var(--font-mono);border-radius:var(--radius-xs);padding:0 5px;position:absolute;top:27px;transform:translate(-50%)}.gp .pj-task{z-index:2;background:var(--color-surface);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-hairline);height:var(--pj-row);font-size:var(--text-sm);grid-template-columns:minmax(0,1fr) 22px 44px;align-items:center;gap:10px;padding:0 12px 0 8px;display:grid;position:sticky;left:0}.gp .pj-task .t{min-width:0;padding-left:calc(var(--lvl,0)*20px);align-items:center;gap:8px;display:flex}.gp .pj-task .caret{width:16px;color:var(--color-ink-3);flex:none;display:inline-flex}.gp .pj-task .caret.leaf{visibility:hidden}.gp .pj-task .name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.gp .pj-task.l0 .name{font-weight:600}.gp .pj-task.l2{color:var(--color-ink-2)}.gp .pj-task .date{text-align:right}.gp .pj-lane{height:var(--pj-row);border-bottom:1px solid var(--color-hairline);background:var(--pj-lane-bg,repeating-linear-gradient(90deg,transparent 0 calc(var(--pj-day)*5),var(--color-surface-2)calc(var(--pj-day)*5)calc(var(--pj-day)*7)));position:relative}.gp .pj-bar{background:var(--color-info);border-radius:3px;height:14px;position:absolute;top:9px}.gp .pj-bar[data-s=done]{background:var(--color-success-soft);border:1px solid var(--color-success)}.gp .pj-bar[data-s=new]{background:var(--color-surface-3);border:1px solid var(--color-ink-3)}.gp .pj-bar[data-s=late]{background:var(--color-danger)}.gp .pj-bar[data-s=late]:after{content:"";width:var(--late,0px);border-top:1.5px dashed var(--color-danger);position:absolute;top:calc(50% - 1px);left:100%}.gp .pj-ms{background:var(--color-info);border-radius:2px;width:12px;height:12px;margin-left:-6px;position:absolute;top:10px;transform:rotate(45deg)}.gp .pj-ms[data-s=done]{background:var(--color-success-soft);border:1px solid var(--color-success)}.gp .pj-ms[data-s=new]{background:var(--color-surface-3);border:1px solid var(--color-ink-3)}.gp .pj-ms[data-s=late]{background:var(--color-danger)}.gp .pj-sum{background:var(--color-ink-2);border-radius:1px;height:7px;position:absolute;top:11px}.gp .pj-sum:before,.gp .pj-sum:after{content:"";border:5px solid #0000;border-top:5px solid var(--color-ink-2);border-bottom:0;position:absolute;top:100%}.gp .pj-sum:before{left:0}.gp .pj-sum:after{right:0}.gp .pj-nodate{height:100%;font-size:var(--text-2xs);color:var(--color-ink-3);white-space:nowrap;align-items:center;gap:4px;display:flex;position:absolute;top:0}.gp .pj-overlay{pointer-events:none;z-index:1;position:absolute;top:0}.gp .pj-overlay>.popover,.gp .pj-overlay>.empty{pointer-events:auto}.gp .pj-today{border-left:1.5px solid var(--color-accent);width:0;position:absolute;top:0;bottom:0}.gp .pj-links{position:absolute;inset:0;overflow:visible}.gp .pj-links path{fill:none;stroke:var(--color-ink-2);stroke-width:1.25px;stroke-linejoin:round}.gp .pj-links path.ah{fill:var(--color-ink-2);stroke:none}.gp .pj-links .block path{stroke:var(--color-danger)}.gp .pj-links .block path.ah{fill:var(--color-danger)}.gp .pj-links text{font:600 10px var(--font-mono);fill:var(--color-ink-2);paint-order:stroke;stroke:var(--color-surface);stroke-width:3px;stroke-linejoin:round}.gp .pj-links .block text{fill:var(--color-danger)}.gp .pj-week{font-weight:600;font-size:var(--text-sm);align-items:center;gap:8px;padding:10px 2px 6px;display:flex}.gp .pj-week .cnt{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-ink-3);font-weight:500}.gp .pj-week .dows{font:500 9px var(--font-mono);color:var(--color-ink-3);text-align:center;grid-template-columns:repeat(7,14px);margin-left:auto;padding-right:15px;display:grid}.gp .pj-week .dows .now{color:var(--color-accent-text);font-weight:600}.gp .pj-strip{background:repeating-linear-gradient(90deg,transparent 0 70px,var(--color-surface-2)70px 98px);border-radius:3px;flex:none;width:98px;height:20px;position:relative;overflow:hidden}.gp .pj-strip .pj-bar{height:12px;top:4px}.gp .pj-strip .pj-ms{width:10px;height:10px;margin-left:-5px;top:5px}
