:root{--bg: #f6f7f9;--bg-elev: #ffffff;--bg-elev-2: #f0f2f5;--bg-select: #e8effd;--border: #e3e6ea;--border-strong: #c8ced6;--text: #1a1f26;--text-dim: #545c68;--text-mute: #8590a0;--accent: #2563eb;--accent-dim: #1d4ed8;--accent-soft: #e8effd;--warn: #b7791f;--warn-bg: #fef4d8;--err: #c53030;--err-bg: #fde8e8;--ok: #2f855a;--ok-bg: #e0f2e9;--pr: #8250df;--ghost: #edf0f3;--radius: 8px;--radius-sm: 5px;--shadow: 0 1px 2px rgb(15 23 42 / 4%);color:var(--text);background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;font-synthesis:none;font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;padding:0;height:100%}body{min-width:320px;overflow:hidden}button,input,select{font:inherit}button{background:none;border:0;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid var(--bg-elev)}::-webkit-scrollbar-track{background:transparent}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell{display:grid;grid-template-rows:52px auto 1fr;height:100vh}.topbar{display:flex;align-items:center;gap:16px;padding:0 16px;border-bottom:1px solid var(--border);background:var(--bg-elev)}.brand{display:flex;align-items:center;gap:8px;padding-right:16px;border-right:1px solid var(--border);height:100%}.brand-mark{width:26px;height:26px;border-radius:6px;overflow:hidden;display:grid;place-items:center;background:var(--bg-elev)}.brand-mark img{width:100%;height:100%;object-fit:cover;display:block}.brand-text{font-weight:600;font-size:13px}.brand-text small{color:var(--text-mute);font-weight:400;margin-left:6px;font-size:11px}.top-stats{display:flex;gap:14px;color:var(--text-dim);font-size:12px;flex:1;flex-wrap:wrap}.top-stat{display:inline-flex;align-items:center;gap:5px}.top-stat strong{color:var(--text);font-weight:600;font-size:13px}.top-stat--warn strong{color:var(--warn)}.top-stat--err strong{color:var(--err)}.dot{width:6px;height:6px;border-radius:50%;background:currentColor}.dot--mute{color:var(--text-mute)}.dot--issue{color:var(--accent)}.dot--pr{color:var(--pr)}.top-search{display:flex;align-items:center;gap:6px;background:var(--bg-elev-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 10px;width:280px}.top-search input{background:transparent;border:0;outline:0;color:var(--text);width:100%}.top-search input::placeholder{color:var(--text-mute)}.top-search .search-icon{color:var(--text-mute)}.top-right{display:flex;align-items:center;gap:8px}.chip{padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;background:var(--bg-elev-2);color:var(--text-dim);border:1px solid var(--border);white-space:nowrap}.chip--fresh{color:var(--ok);border-color:var(--ok-bg);background:var(--ok-bg)}.chip--stale{color:var(--warn);border-color:var(--warn-bg);background:var(--warn-bg)}.chip--muted{color:var(--text-mute)}.logout-button{padding:5px 10px;border-radius:var(--radius-sm);color:var(--text-dim);border:1px solid var(--border);font-size:12px;background:transparent}.logout-button:hover{color:var(--text);border-color:var(--border-strong);background:var(--bg-elev-2)}.refresh-button{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:var(--radius-sm);color:var(--text-dim);border:1px solid var(--border);font-size:12px;background:transparent}.refresh-button:hover:not(:disabled){color:var(--text);border-color:var(--border-strong);background:var(--bg-elev-2)}.refresh-button:disabled{opacity:.5;cursor:default}.repo-block-head-right{display:flex;align-items:center;gap:12px;min-width:0}.repo-refresh,.repo-open{flex-shrink:0;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-mute);border:1px solid var(--border);background:var(--bg-elev);font-size:13px;line-height:1;text-decoration:none}.repo-refresh:hover:not(:disabled),.repo-open:hover{color:var(--text);border-color:var(--border-strong);background:var(--bg-elev-2)}.repo-refresh:disabled{opacity:.5;cursor:default}.logout-button:focus-visible,.refresh-button:focus-visible,.repo-refresh:focus-visible,.repo-open:focus-visible,.top-search input:focus-visible,.filter-chip:focus-visible,.repo-item:focus-visible,.repo-all:focus-visible,.item-row:focus-visible,.primary-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar-warning{margin:0;padding:8px 16px;border-bottom:1px solid var(--warn-bg);background:var(--warn-bg);color:var(--warn);font-size:12px;font-weight:600}.panes{display:grid;grid-template-columns:280px 1fr;grid-template-rows:1fr;grid-row:3;min-height:0;overflow:hidden}.pane{display:flex;flex-direction:column;min-height:0;background:var(--bg-elev);border-right:1px solid var(--border)}.pane:last-child{border-right:0}.pane-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;border-bottom:1px solid var(--border);background:var(--bg-elev);height:42px;flex-shrink:0}.pane-body{overflow-y:auto;flex:1;min-height:0}.repo-all{padding:10px 12px;display:flex;justify-content:space-between;align-items:center;width:100%;border-bottom:1px solid var(--border);cursor:pointer;font-weight:600;font-size:13px;background:var(--bg-elev-2);color:var(--text);text-align:left;position:relative}.repo-all:hover{background:var(--ghost)}.repo-all.is-selected{background:var(--bg-select);color:var(--accent)}.repo-all.is-selected:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent)}.repo-all-count{color:var(--text-mute);font-weight:400;font-size:12px}.repo-all.is-selected .repo-all-count{color:var(--accent)}.repo-item{display:block;width:100%;text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);cursor:pointer;position:relative;transition:background .1s;color:var(--text)}.repo-item:hover{background:var(--bg-elev-2)}.repo-item.is-selected{background:var(--bg-select)}.repo-item.is-selected:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent)}.repo-item.has-attention .repo-item-name:after{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--warn);margin-left:6px;vertical-align:middle}.repo-item.has-error{background:var(--err-bg)}.repo-item.has-error:hover{background:#fbd7d7}.repo-item.has-error:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--err)}.repo-item-head{display:flex;align-items:center;justify-content:space-between;gap:6px}.repo-item-name{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.repo-item-meta{display:flex;gap:10px;font-size:11px;color:var(--text-mute);margin-top:3px}.repo-item-meta strong{color:var(--text-dim);font-weight:500}.repo-item-attention{color:var(--warn);margin-left:auto}.repo-item-attention strong{color:var(--warn);font-weight:600}.repo-item-error{display:block;font-size:11px;color:var(--err);margin-top:4px}.repo-item-empty{display:block;font-size:11px;color:var(--text-mute);font-style:italic;margin-top:3px}.provider-tag{font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;background:var(--ghost);color:var(--text-mute);letter-spacing:.02em;flex-shrink:0;white-space:nowrap}.provider-tag[data-provider=github]{background:#ddf4ff;color:#0969da}.provider-tag[data-provider=gitlab]{background:#fce9e0;color:#d84a2b}.items-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filter-chip{padding:4px 10px;border-radius:999px;background:var(--bg-elev-2);color:var(--text-dim);font-size:11px;border:1px solid var(--border);cursor:pointer}.filter-chip:hover{color:var(--text)}.filter-chip.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.items-feed{background:var(--bg)}.feed-empty{padding:40px 20px;text-align:center;color:var(--text-mute);font-size:12px}.repo-block{background:var(--bg-elev);border:1px solid var(--border);margin:14px 14px 0;box-shadow:var(--shadow);scroll-margin-top:14px}.repo-block:last-child{margin-bottom:14px}.repo-block.has-error .repo-block-head{background:var(--err-bg);border-bottom-color:#c5303033}.repo-block.has-error .repo-block-name{color:var(--err)}.repo-block-sticky{position:sticky;top:0;z-index:3;background:var(--bg-elev)}.repo-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:var(--bg-select);border-bottom:1px solid var(--border-strong);border-left:3px solid var(--accent)}.repo-block-head[data-provider=github]{background:#ddf4ff;border-left-color:#0969da}.repo-block-head[data-provider=gitlab]{background:#fce9e0;border-left-color:#d84a2b}.repo-block-head[data-provider=github] .provider-tag{border:1px solid #0969da}.repo-block-head[data-provider=gitlab] .provider-tag{border:1px solid #d84a2b}.repo-block-head-left{display:flex;align-items:center;gap:8px;min-width:0}.repo-block-name{font-weight:600;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.repo-block-summary{display:flex;gap:10px;align-items:center;font-size:11px;color:var(--text-mute)}.repo-block-summary strong{color:var(--text-dim);font-weight:500}.repo-block-attention{color:var(--warn)}.repo-block-attention strong{color:var(--warn);font-weight:600}.repo-block-subheads{display:grid;grid-template-columns:1fr 1fr;background:var(--bg-elev);border-bottom:1px solid var(--border)}.repo-block-subheads.is-single{grid-template-columns:1fr}.repo-block-subheads .col-subhead+.col-subhead{border-left:1px solid var(--border)}.col-subhead{display:flex;align-items:center;justify-content:space-between;padding:5px 12px;background:var(--bg-elev);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-mute)}.col-subhead-label{display:inline-flex;align-items:center;gap:5px;font-weight:700}.col-subhead-label[data-kind=issue]{color:var(--accent)}.col-subhead-label[data-kind=pr]{color:var(--pr)}.col-subhead-label .dot-sq{width:8px;height:8px;border-radius:2px;background:currentColor}.col-subhead-count{font-size:11px;color:var(--text-mute);text-transform:none;letter-spacing:0;font-weight:400}.repo-block-body{display:grid;grid-template-columns:1fr 1fr}.repo-block-body.is-single{grid-template-columns:1fr}.repo-block-body .col{min-height:60px;min-width:0}.repo-block-body .col+.col{border-left:1px solid var(--border)}.col-empty{padding:14px;text-align:center;color:var(--text-mute);font-size:11px;font-style:italic}.repo-block-error{padding:10px 14px;color:var(--err);font-size:12px}.repo-block-empty{padding:14px;color:var(--text-mute);font-size:12px;font-style:italic;text-align:center}.item-row{display:block;padding:8px 12px;border-bottom:1px solid var(--border);cursor:pointer;transition:background .08s;color:inherit;text-decoration:none}.item-row:last-child{border-bottom:0}.item-row:hover{background:var(--bg-elev-2)}.item-row.is-attention{border-left:3px solid var(--warn);padding-left:9px}.item-title{font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}.item-num{color:var(--text-mute);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:400}.item-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.item-ext{color:var(--text-mute);font-size:11px;margin-left:auto;flex-shrink:0}.item-meta{font-size:11px;color:var(--text-mute);display:flex;gap:8px;margin-top:3px;align-items:center;flex-wrap:wrap}.label-pill{background:var(--ghost);color:var(--text-dim);font-size:10px;padding:1px 5px;border-radius:3px}.attn-mini{font-size:10px;color:var(--warn);background:var(--warn-bg);padding:1px 5px;border-radius:3px}.state-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.state-panel{min-height:320px;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--text-dim);text-align:center}.state-panel p{margin:0}.error-panel h1{margin:0;font-size:clamp(1.4rem,3vw,1.8rem);color:var(--text)}.loading-dot{width:22px;height:22px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .85s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.login-shell{display:grid;min-height:100vh;place-items:center;padding:24px;background:var(--bg)}.login-card{width:min(100%,520px);padding:clamp(28px,5vw,48px);border:1px solid var(--border);border-radius:14px;background:var(--bg-elev);box-shadow:0 18px 48px #25345c14}.eyebrow{color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.1em;margin:0 0 8px;text-transform:uppercase}.login-card h1{margin:0 0 12px;font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;letter-spacing:-.02em}.login-description{max-width:420px;color:var(--text-dim);line-height:1.5}.primary-button{margin-top:16px;color:#fff;border:0;border-radius:var(--radius-sm);background:var(--accent);padding:10px 16px;font-weight:600}.primary-button:hover{background:var(--accent-dim)}.login-note{margin:18px 0 0;color:var(--text-mute);font-size:.78rem;line-height:1.5}@media(max-width:1000px){.panes{grid-template-columns:240px 1fr}.top-search{width:200px}}@media(max-width:767px){.panes{grid-template-columns:1fr}.pane-repos{display:none}.repo-block-body{grid-template-columns:1fr}.repo-block-body .col+.col{border-left:0;border-top:1px solid var(--border)}.repo-block-body .col{border-bottom:1px solid var(--border)}.repo-block-subheads{grid-template-columns:1fr}.repo-block-subheads .col-subhead+.col-subhead{border-left:0;border-top:1px solid var(--border)}.top-search,.top-stats{display:none}}@media(prefers-reduced-motion:reduce){.loading-dot{animation:none}.item-row,.repo-item{transition:none}}
