.gp{--gp-accent:var(--p600);color:var(--text)}
.gp button,.gp input,.gp select,.gp textarea{font:inherit}.gp button{cursor:pointer}.gp button:disabled{cursor:wait;opacity:.6}.gp button:focus-visible,.gp a:focus-visible{outline:3px solid var(--p600);outline-offset:4px}
.gp-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:26px}.gp-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.8px;text-transform:uppercase;color:var(--p600);margin-bottom:10px}.gp h1{font-size:30px;letter-spacing:-1px;margin:0 0 10px}.gp h2{font-size:20px;margin:0}.gp h3{font-size:16px;margin:0}.gp p{line-height:1.65}.gp-sub{color:var(--text2);margin:0;max-width:650px;font-size:13px}.gp-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.gp-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 15px;min-height:40px;border:1px solid var(--border2);border-radius:9px;background:var(--bg);color:var(--text);font-size:12px!important;font-weight:650!important;text-decoration:none}.gp-btn.primary{background:var(--p600);border-color:var(--p600);color:white}.gp-btn.danger{color:var(--r600)}.gp-btn.quiet{border-color:transparent;background:transparent}.gp-btn.small{padding:6px 10px;min-height:32px;font-size:11px!important}
.gp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:26px}.gp-stat{border:1px solid var(--border);border-radius:12px;padding:18px 20px;background:var(--bg)}.gp-stat strong{display:block;font-size:27px;letter-spacing:-1px;margin-bottom:6px}.gp-stat span{font-size:12px;color:var(--text2)}
.gp-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:22px}.gp-segments{display:flex;padding:4px;border-radius:10px;background:var(--bg2);border:1px solid var(--border);gap:4px}.gp-segments button{border:0;background:transparent;color:var(--text2);border-radius:7px;padding:9px 15px;font-size:12px;font-weight:650}.gp-segments button[aria-pressed=true]{background:var(--bg);color:var(--text);box-shadow:0 1px 4px #00000012}.gp-filters{display:flex;gap:8px;flex-wrap:wrap}.gp input:not([type=checkbox]),.gp select,.gp textarea{width:100%;box-sizing:border-box;border:1px solid var(--border2);border-radius:8px;background:var(--bg);color:var(--text);padding:10px 12px;font-size:13px;min-width:0}.gp textarea{resize:vertical;min-height:95px}.gp-filters input{width:220px!important}.gp-filters select{width:auto}.gp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}.gp-card{text-align:left;display:flex;flex-direction:column;gap:18px;padding:23px;border:1px solid var(--border);border-radius:15px;background:var(--bg);color:var(--text);min-height:300px;transition:transform .16s,box-shadow .16s,border-color .16s;position:relative;overflow:hidden}.gp-card:before{content:'';position:absolute;inset:0 0 auto;height:3px;background:var(--p600);opacity:.55}.gp-card:hover{transform:translateY(-3px);border-color:var(--p600);box-shadow:0 12px 28px #0000000b}.gp-card h3{font-size:19px;line-height:1.35;letter-spacing:-.4px}.gp-card p{margin:8px 0 0;color:var(--text2);font-size:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gp-card-top,.gp-between{display:flex;justify-content:space-between;align-items:center;gap:10px}.gp-type{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text2)}.gp-type i{font-size:21px;color:var(--p600)}.gp-chip{display:inline-flex;align-items:center;gap:5px;background:var(--bg2);border:1px solid var(--border);border-radius:99px;padding:5px 9px;font-size:10px;white-space:nowrap;font-weight:650}.gp-chip.active,.gp-chip.accepted,.gp-chip.done{color:var(--p600);background:var(--p50,var(--bg2))}.gp-chip.blocked,.gp-chip.changes,.gp-overdue{color:var(--r600)}.gp-chip.review,.gp-chip.pending{color:var(--a600)}.gp-meter{height:6px;background:var(--bg3,var(--border));border-radius:99px;overflow:hidden;margin:10px 0}.gp-meter span{display:block;height:100%;background:var(--p600);border-radius:inherit}.gp-small{font-size:11px;color:var(--text2)}.gp-card-progress{margin-top:auto}.gp-card-footer{border-top:1px solid var(--border);padding-top:15px;display:flex;justify-content:space-between;align-items:center;gap:8px}.gp-avatars{display:flex;align-items:center}.gp-avatar{display:inline-flex;align-items:center;justify-content:center;background:var(--p50,var(--bg2));color:var(--p600);border:2px solid var(--bg);border-radius:50%;width:29px;height:29px;flex-shrink:0;font-size:10px;font-weight:750}.gp-avatars .gp-avatar+.gp-avatar{margin-left:-6px}.gp-empty{padding:65px 24px;text-align:center;border:1px dashed var(--border2);border-radius:16px;grid-column:1/-1;background:var(--bg)}.gp-empty>i{font-size:36px;color:var(--p600);display:block;margin-bottom:18px}.gp-empty p{font-size:13px;color:var(--text2);max-width:460px;margin:12px auto 20px}.gp-error{color:var(--r600);font-size:12px;line-height:1.6;white-space:pre-wrap}.gp-notice{border:1px solid var(--border);background:var(--bg2);padding:12px 15px;border-radius:9px;font-size:12px;color:var(--text2);line-height:1.6;margin-bottom:18px}
.gp-modal .modal-box{width:1100px;max-width:calc(100vw - 40px)!important;padding:0!important;overflow:auto;border-radius:18px;max-height:calc(100dvh - 48px)!important}.gp-modal .modal-dismiss{z-index:5}.gp-modal-head{padding:30px 60px 24px 30px;border-bottom:1px solid var(--border);background:var(--bg)}.gp-modal-head h2{font-size:26px;line-height:1.3;letter-spacing:-.6px;margin:12px 0}.gp-modal-body{padding:26px 30px}.gp-task-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:28px}.gp-panel{border:1px solid var(--border);border-radius:12px;padding:19px;margin-bottom:18px;background:var(--bg)}.gp-panel h3{margin-bottom:14px}.gp-copy{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;color:var(--text2);line-height:1.75}.gp-team-row{display:flex;align-items:center;gap:9px;padding:10px 0;border-bottom:1px solid var(--border);font-size:12px}.gp-team-row:last-child{border:0}.gp-team-row>div{min-width:0;overflow-wrap:anywhere}.gp-team-row small{display:block;margin-top:4px;color:var(--text2);line-height:1.5}.gp-form{display:grid;gap:17px}.gp-form label,.gp-label{display:block;font-size:12px;font-weight:650;line-height:1.5}.gp-form label>input,.gp-form label>textarea,.gp-form label>select{margin-top:6px}.gp-form small{display:block;color:var(--text2);font-size:11px;font-weight:400;margin-top:5px;line-height:1.6}.gp-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gp-members{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.gp-members label{display:flex;align-items:center;gap:8px;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:9px 12px;font-weight:500}.gp-members input{accent-color:var(--p600)}.gp-form-footer{display:flex;justify-content:flex-end;gap:8px;padding-top:15px;border-top:1px solid var(--border)}.gp-form fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:17px}.gp-form legend{font-size:12px;font-weight:650;margin-bottom:8px}.gp-entry{padding:18px 0;border-bottom:1px solid var(--border)}.gp-entry:last-child{border-bottom:0}.gp-entry h4{margin:10px 0 7px;font-size:14px}.gp-entry img{display:block;width:100%;max-height:260px;object-fit:contain;background:var(--bg2);border-radius:10px;margin:12px 0}.gp-entry audio,.gp-entry video{width:100%;max-height:260px;margin-top:12px}.gp-entry .gp-copy{font-size:12px}.gp-review{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.gp-chat-list{max-height:380px;overflow:auto;display:flex;flex-direction:column;gap:15px;margin:18px 0}.gp-message{background:var(--bg2);border:1px solid var(--border);border-radius:2px 12px 12px;padding:12px 14px;max-width:94%;align-self:flex-start}.gp-message.mine{align-self:flex-end;border-radius:12px 2px 12px 12px;background:var(--p50,var(--bg2))}.gp-message .gp-copy{font-size:13px;margin-top:6px}.gp-chat-form{display:flex;align-items:flex-end;gap:10px}.gp-chat-form textarea{min-height:70px}.gp-plan{background:var(--bg);border:1px solid var(--border);border-radius:16px;padding:25px;margin-bottom:20px}.gp-plan-header{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.gp-plan-header h2{margin:7px 0 9px}.gp-plan .gp-sub{white-space:pre-wrap}.gp-plan-progress{margin:22px 0 28px}.gp-road{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:15px}.gp-stage{position:relative;padding:17px;background:var(--bg2);border:1px solid var(--border);border-radius:12px;min-width:0}.gp-stage-number{width:27px;height:27px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--p600);color:#fff;font-size:11px;margin-bottom:15px}.gp-stage h3{line-height:1.45;min-height:44px;font-size:14px}.gp-stage-tasks{display:flex;flex-direction:column;gap:8px;margin-top:15px}.gp-stage-task{font-size:11px!important;text-align:left;border:1px solid var(--border);background:var(--bg);border-radius:7px;padding:9px;color:var(--text);line-height:1.5;overflow-wrap:anywhere}.gp-stage-editor{padding:18px;border:1px solid var(--border);border-radius:12px;background:var(--bg2);display:grid;gap:13px}.gp-stage-editor .gp-members{max-height:180px;overflow:auto}.gp-stage-editor .gp-members label{background:var(--bg)}.gp-modal [hidden],.gp [hidden]{display:none!important}
/* Status colors communicate workflow state independently of the workspace palette. */
.gp{--gp-green-fg:#166534;--gp-green-bg:#ecfdf3;--gp-green-border:#a7dfb9;--gp-green-accent:#22a35a;--gp-yellow-fg:#795300;--gp-yellow-bg:#fff8d6;--gp-yellow-border:#ead17a;--gp-yellow-accent:#d5a10d;--gp-purple-fg:#6b21a8;--gp-purple-bg:#f5edff;--gp-purple-border:#dbc0f4;--gp-purple-accent:#a16ae0;--gp-red-fg:#b42332;--gp-red-bg:#fff0f1;--gp-red-border:#f3bbc1;--gp-red-accent:#e05464;--gp-gray-fg:#525b69;--gp-gray-bg:#f0f2f5;--gp-gray-border:#d5dae2;--gp-gray-accent:#8792a2}
.dm .gp{--gp-green-fg:#8ee4ad;--gp-green-bg:#173b2a;--gp-green-border:#2d6746;--gp-green-accent:#62ce8c;--gp-yellow-fg:#f8d76b;--gp-yellow-bg:#40351a;--gp-yellow-border:#786126;--gp-yellow-accent:#e7c04f;--gp-purple-fg:#d6b5fb;--gp-purple-bg:#352344;--gp-purple-border:#654680;--gp-purple-accent:#bd91ef;--gp-red-fg:#ffadb5;--gp-red-bg:#44252a;--gp-red-border:#7d414b;--gp-red-accent:#ee8290;--gp-gray-fg:#c2c9d3;--gp-gray-bg:#2d323a;--gp-gray-border:#4a525e;--gp-gray-accent:#9ca8b8}
.gp-chip.done,.gp-chip.accepted{--gp-status-fg:var(--gp-green-fg);--gp-status-bg:var(--gp-green-bg);--gp-status-border:var(--gp-green-border)}
.gp-chip.active{--gp-status-fg:var(--gp-yellow-fg);--gp-status-bg:var(--gp-yellow-bg);--gp-status-border:var(--gp-yellow-border)}
.gp-chip.review,.gp-chip.pending{--gp-status-fg:var(--gp-purple-fg);--gp-status-bg:var(--gp-purple-bg);--gp-status-border:var(--gp-purple-border)}
.gp-chip.blocked,.gp-chip.changes{--gp-status-fg:var(--gp-red-fg);--gp-status-bg:var(--gp-red-bg);--gp-status-border:var(--gp-red-border)}
.gp-chip.todo{--gp-status-fg:var(--gp-gray-fg);--gp-status-bg:var(--gp-gray-bg);--gp-status-border:var(--gp-gray-border)}
.gp-chip:is(.todo,.active,.review,.pending,.done,.accepted,.blocked,.changes){color:var(--gp-status-fg);background:var(--gp-status-bg);border-color:var(--gp-status-border)}
.gp-overdue{color:var(--gp-red-fg)}
.gp-card:has(.gp-chip.done),.gp-modal:has(.gp-modal-head .gp-chip.done){--gp-task-accent:var(--gp-green-accent)}
.gp-card:has(.gp-chip.active),.gp-modal:has(.gp-modal-head .gp-chip.active){--gp-task-accent:var(--gp-yellow-accent)}
.gp-card:has(.gp-chip.review),.gp-modal:has(.gp-modal-head .gp-chip.review){--gp-task-accent:var(--gp-purple-accent)}
.gp-card:has(.gp-chip.blocked),.gp-modal:has(.gp-modal-head .gp-chip.blocked){--gp-task-accent:var(--gp-red-accent)}
.gp-card:has(.gp-chip.todo),.gp-modal:has(.gp-modal-head .gp-chip.todo){--gp-task-accent:var(--gp-gray-accent)}
.gp-card:before{background:var(--gp-task-accent,var(--p600));opacity:.85}
.gp-card .gp-meter span,.gp-modal .gp-meter span{background:var(--gp-task-accent,var(--p600))}
@media(prefers-reduced-motion:reduce){.gp-card{transition:none}.gp-card:hover{transform:none}}
@media(max-width:760px){.gp-head{flex-direction:column}.gp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-stat{padding:14px}.gp-task-layout{grid-template-columns:1fr}.gp-segments{flex-wrap:wrap}.gp-segments button{flex:1;padding:9px 10px}.gp-task-layout>aside .gp-panel{margin-bottom:8px}.gp-modal-head{padding:24px 50px 22px 20px}.gp-modal-body{padding:20px}.gp-modal .modal-box{max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 24px)!important}.gp h1{font-size:25px}.gp-modal-head h2{font-size:22px}.gp-filters{width:100%}.gp-filters input{width:100%!important}.gp-filters select{flex:1}.gp-toolbar{align-items:stretch}.gp-grid{grid-template-columns:minmax(0,1fr)}.gp-card{min-height:285px}.gp-form-grid{grid-template-columns:1fr}.gp-road{grid-template-columns:1fr}.gp-plan{padding:18px}.gp-modal input,.gp-modal select,.gp-modal textarea{font-size:16px!important}.gp-plan-header .gp-actions{width:100%}.gp-chat-form{flex-direction:column;align-items:stretch}.gp-card-top{flex-wrap:wrap}}
