/* LiveLoop Git panel (public/liveloop-git.js). Self-contained: every rule is
   scoped to #liveloop-git-panel, so nothing here can move LiveLoop's layout.
   right sits clear of SaryOS's right-hand tool column (--portal-side-w):
   the panel used to sit under it, at a lower z-index, so its own Close
   button was covered and unclickable (owner, 2026-09-28). */
#liveloop-git-panel{position:fixed;top:72px;right:calc(var(--portal-side-w, 58px) + 16px);z-index:10050;width:min(440px,calc(100vw - 32px));max-height:calc(100vh - 96px);
  display:flex;flex-direction:column;background:#0b0b0d;color:#e5e7eb;border:1px solid #27272a;border-radius:12px;
  box-shadow:0 18px 48px rgba(0,0,0,.55);font:13px/1.45 system-ui,-apple-system,Segoe UI,sans-serif}
#liveloop-git-panel[hidden]{display:none}
#liveloop-git-panel .llg-head{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid #27272a}
#liveloop-git-panel .llg-head b{font-size:14px}
#liveloop-git-panel .llg-head button{margin-left:auto}
#liveloop-git-panel .llg-body{overflow:auto;padding:10px 12px 12px}
#liveloop-git-panel .llg-sec{padding:8px 0;border-bottom:1px solid #1f1f23}
#liveloop-git-panel .llg-sec:last-of-type{border-bottom:0}
#liveloop-git-panel h4{margin:0 0 6px;font-size:12px;font-weight:600;color:#a1a1aa;display:flex;align-items:center;gap:8px}
#liveloop-git-panel h4 button{margin-left:auto}
#liveloop-git-panel .llg-row{display:flex;gap:6px;align-items:center;margin:4px 0;flex-wrap:wrap}
#liveloop-git-panel .llg-row select,#liveloop-git-panel .llg-row input:not([type=checkbox]){flex:1 1 140px;min-width:0}
#liveloop-git-panel select,#liveloop-git-panel input:not([type=checkbox]),#liveloop-git-panel textarea{background:#131316;color:inherit;border:1px solid #2e2e33;
  border-radius:8px;padding:6px 8px;font:inherit}
#liveloop-git-panel textarea{width:100%;box-sizing:border-box;resize:vertical;margin:4px 0}
#liveloop-git-panel button{background:#18181b;color:inherit;border:1px solid #2e2e33;border-radius:8px;padding:5px 10px;font:inherit;cursor:pointer}
#liveloop-git-panel button:hover:not(:disabled){border-color:#52525b}
#liveloop-git-panel button:disabled{opacity:.5;cursor:default}
#liveloop-git-panel button:focus-visible,#liveloop-git-panel select:focus-visible,#liveloop-git-panel input:focus-visible,#liveloop-git-panel textarea:focus-visible{outline:2px solid #60a5fa;outline-offset:1px}
#liveloop-git-panel .llg-primary{background:#2563eb;color:#fff;border-color:#2563eb;font-weight:600}
#liveloop-git-panel button,#liveloop-git-panel select,#liveloop-git-panel input{min-height:0;height:auto;box-sizing:border-box}
#liveloop-git-panel .llg-dim{color:#8b8b93;font-size:12px}
#liveloop-git-panel .llg-check{display:flex;align-items:center;gap:4px;font-size:12px}
#liveloop-git-panel .llg-account{display:flex;align-items:center;gap:10px}
#liveloop-git-panel .llg-account span{display:flex;align-items:center;gap:6px;font-weight:600}
#liveloop-git-panel .llg-account img{border-radius:50%}
#liveloop-git-panel .llg-account a{color:#60a5fa;font-size:12px}
#liveloop-git-panel .llg-account button{margin-left:auto}
#liveloop-git-panel ul{list-style:none;margin:0;padding:0;max-height:180px;overflow:auto}
#liveloop-git-panel .llg-changes button{all:unset;display:block;width:100%;padding:2px 4px;border-radius:6px;cursor:pointer;
  font:12px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#liveloop-git-panel .llg-changes button:hover{background:#18181b}
#liveloop-git-panel .llg-changes b[data-k=A]{color:#4ade80}
#liveloop-git-panel .llg-changes b[data-k=M]{color:#fbbf24}
#liveloop-git-panel .llg-changes b[data-k=D]{color:#f87171}
#liveloop-git-panel .llg-history li{padding:3px 0;font-size:12px}
#liveloop-git-panel .llg-history a{color:#60a5fa}
#liveloop-git-panel .llg-diffview{margin-top:6px;border:1px solid #27272a;border-radius:8px;overflow:hidden}
#liveloop-git-panel .llg-diffview header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:#131316}
#liveloop-git-panel .llg-diffview pre{margin:0;padding:6px 8px;max-height:260px;overflow:auto;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre}
#liveloop-git-panel .llg-diffview span[data-op=add]{color:#4ade80}
#liveloop-git-panel .llg-diffview span[data-op=del]{color:#f87171}
#liveloop-git-panel .llg-msg{margin:8px 0 0;font-size:12px}
#liveloop-git-panel .llg-msg[hidden]{display:none}
#liveloop-git-panel .llg-msg[data-kind=error]{color:#f87171}
#liveloop-git-panel .llg-msg[data-kind=ok]{color:#4ade80}
html.light-mode #liveloop-git-panel{background:#fff;color:#18181b;border-color:#e4e4e7;box-shadow:0 18px 48px rgba(0,0,0,.18)}
html.light-mode #liveloop-git-panel .llg-head,html.light-mode #liveloop-git-panel .llg-sec{border-color:#ececef}
html.light-mode #liveloop-git-panel select,html.light-mode #liveloop-git-panel input:not([type=checkbox]),html.light-mode #liveloop-git-panel textarea,
html.light-mode #liveloop-git-panel button{background:#f4f4f5;border-color:#d4d4d8}
html.light-mode #liveloop-git-panel .llg-primary{background:#18181b;color:#fff;border-color:#18181b}
html.light-mode #liveloop-git-panel .llg-changes button:hover,html.light-mode #liveloop-git-panel .llg-diffview header{background:#f4f4f5}
@media (max-width:600px){#liveloop-git-panel{top:auto;bottom:12px;right:calc(var(--portal-side-w, 46px) + 12px);left:12px;width:auto;max-height:70vh}}
@media (prefers-reduced-motion:reduce){#liveloop-git-panel *{transition:none!important}}
/* The window: moved by its header, minimized to it (liveloop-git.js). Once
   moved, its left/top replace the default top-right anchor; the !important
   outranks the LiveLoop layout's top. */
#liveloop-git-panel .llg-head{cursor:grab;user-select:none;touch-action:none}
#liveloop-git-panel.llg-moving,#liveloop-git-panel.llg-moving .llg-head{cursor:grabbing;user-select:none}
#liveloop-git-panel .llg-head button[data-act=minimize]{margin-left:auto;padding:5px 8px}
#liveloop-git-panel .llg-head button[data-act=minimize] + button{margin-left:0}
#liveloop-git-panel.llg-placed{left:var(--llg-x)!important;top:var(--llg-y)!important;right:auto!important;bottom:auto!important}
#liveloop-git-panel.llg-min{width:min(320px,calc(100vw - 32px))}
#liveloop-git-panel.llg-min .llg-head{border-bottom:0}
#liveloop-git-panel.llg-min .llg-body{display:none}
#liveloop-git-panel .llg-mini{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#8b8b93}
#liveloop-git-panel .llg-mini[data-kind=error]{color:#f87171}
#liveloop-git-panel .llg-mini[data-kind=ok]{color:#4ade80}
@media (max-width:600px){#liveloop-git-panel.llg-placed{width:min(440px,calc(100vw - 24px))}#liveloop-git-panel.llg-placed.llg-min{width:min(320px,calc(100vw - 24px))}}
