.approval-extension{width:min(820px,100%);margin:0 auto;display:grid;grid-template-rows:0fr;opacity:0;transform:translateY(12px);transition:grid-template-rows .26s ease,opacity .22s ease,transform .26s ease;pointer-events:none}
.approval-extension.open{grid-template-rows:1fr;opacity:1;transform:translateY(0);pointer-events:auto}
.approval-extension>div{min-height:0;overflow:hidden}
.approval-panel{background:#141619;border:1px solid #34383d;border-bottom:0;border-radius:20px 20px 0 0;overflow:hidden;color:#e8ebef}
.composer-dock:has(.approval-extension.open) .chat-composer{border-radius:0 0 27px 27px;border-color:#34383d}
.approval-heading,.approval-actions{display:flex;align-items:center;gap:10px;padding:12px 16px}
.approval-heading strong{font-size:13px;font-weight:600;flex:1}.approval-count{font-size:11px;color:#98a3b3}
.approval-tabs{display:flex;gap:5px;overflow:auto;padding:0 12px 9px}.approval-tabs button{white-space:nowrap;border:1px solid #30353d;background:#1b1e23;color:#aab5c5;border-radius:8px;padding:6px 9px;font-size:11px;cursor:pointer}.approval-tabs button[aria-selected=true]{background:#27313d;color:#d4e8ff;border-color:#536b86}
.approval-code{max-height:min(36vh,320px);overflow:auto;background:#101215;border-block:1px solid #292e35;font:12px/1.65 Consolas,'Courier New',monospace;tab-size:4}
.approval-line{display:flex;min-width:max-content;min-height:20px;white-space:pre;padding-right:16px}.approval-line.add{background:#173327}.approval-line.delete{background:#3a2025}.approval-line.add .approval-sign{color:#71e4a0}.approval-line.delete .approval-sign{color:#ff8794}
.approval-number{display:inline-block;width:38px;text-align:right;color:#72808f;flex-shrink:0;padding-right:8px;user-select:none}.approval-sign{width:22px;text-align:center;flex-shrink:0}.approval-line code{font:inherit;color:#d2d8e1}
.approval-token-keyword{color:#c8a4ff}.approval-token-string{color:#a8d392}.approval-token-comment{color:#7a8994;font-style:italic}.approval-token-number{color:#efbd88}.approval-token-builtin{color:#8acdf0}.approval-token-function{color:#e6d28d}.approval-token-punctuation{color:#a5b3c5}
.approval-actions{justify-content:flex-end}.approval-actions button{border:1px solid #455366;background:#202a37;color:#e7efff;border-radius:9px;padding:7px 16px;font-size:12px;cursor:pointer}.approval-actions .approval-accept{background:#d9eaff;color:#14283f;border-color:#d9eaff}.approval-actions button:disabled{opacity:.4;cursor:default}.approval-note{margin-right:auto;font-size:11px;color:#9ba9b9;max-width:65%}.approval-note.error{color:#ff9aa6}.approval-empty{padding:16px;color:#aab5c5;white-space:pre-wrap}
.approval-panel button:focus-visible{outline:2px solid #91bcf1;outline-offset:2px}
@media(max-width:650px){.approval-heading,.approval-actions{padding:10px}.approval-count{display:none}.approval-number{width:28px}.approval-code{font-size:11px}.approval-note{max-width:50%}}
@media(prefers-reduced-motion:reduce){.approval-extension{transition:none;transform:none}}
.activity-pill.approved i{border:0;background:#69e7a1;box-shadow:0 0 0 3px rgba(105,231,161,.1)}
.activity-pill.rejected i{border:0;background:#ff505e;box-shadow:0 0 0 3px rgba(255,80,94,.1)}
