:root{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:#e6edf3;background-color:#0b0f14;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{margin:0;min-width:320px;background:#0b0f14;overflow-x:hidden;overflow-y:auto}html[data-theme=light],html[data-theme=light] body{background:#e9f0f8;color:#1f2a37}#root{width:100%;overflow-x:hidden}.container{width:100%;min-height:1080px;box-sizing:border-box;padding:24px;max-width:1920px;margin:0 auto;color:#e6edf3;overflow-x:hidden}.header h1{margin:0;font-size:34px}.theme-btn{border:1px solid #375071;background:#18273bc2;color:#c6def7;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;margin-top:0}.theme-btn-icon{display:inline-block;font-size:14px;line-height:1}.theme-btn:hover{border-color:#5f88b7}.theme-icon-btn{width:30px;height:30px;min-width:30px;border-radius:999px;padding:0;display:inline-flex;align-items:center;justify-content:center}.theme-btn-text{display:none}.summary{margin-top:16px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.summary-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.sticky-dashboard-header{position:fixed;top:0;left:0;right:0;z-index:8;background:#040d19;padding:8px 24px 10px;box-sizing:border-box;border-bottom:1px solid rgba(47,64,83,.45)}.content-with-fixed-header{margin-top:0}.tabs{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}.tab-btn{border:1px solid #2d3f56;color:#8fa8c4;background:#151f2da6;border-radius:999px;padding:8px 18px;cursor:pointer;font-size:14px;font-weight:600}.tab-btn:hover{border-color:#4b6e98}.tab-btn.active{border-color:#2f81f7;background:#2f81f733;color:#cbe3ff}.summary-stat{border:1px solid #2f4053;background:#212f4259;color:#b6cae1;border-radius:999px;padding:6px 12px;font-size:13px}.overview-grid{margin-top:18px;display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:12px}.overview-card{border:1px solid #2c3a4a;border-radius:14px;padding:14px;text-align:center}.overview-card.total{background:#9bb7e233}.overview-card.normal{background:#a8cda433}.overview-card.warning{background:#e6c38033}.overview-card.critical{background:#e6879333}.overview-card.pending{background:#b5bdc833}.overview-value{font-size:44px;line-height:1;font-weight:800;color:#dbe8f7}.overview-label{margin-top:10px;font-size:15px;color:#b7c8dd;font-weight:700}.action-btn{color:#58a6ff;border:1px solid #30363d;background:#0d1117;padding:8px 12px;border-radius:8px;cursor:pointer}.action-btn:hover{border-color:#58a6ff}.panel{margin-top:16px;border:1px solid #30363d;border-radius:12px;background:#0d1117;padding:14px}.error{color:#ff7b72}.project-grid{margin-top:16px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:start}.project-card{border:1px solid #30363d;border-radius:16px;background:radial-gradient(circle at top right,#101f33,#0b1018,#090d13);padding:14px;display:flex;flex-direction:column;overflow:hidden}.project-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;min-height:46px}.project-name-box{height:46px;min-width:0;overflow:hidden;display:flex;align-items:center}.project-name{margin:0;font-size:18px;font-weight:800;line-height:1.15;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.project-name.scroll{display:flex;align-items:center;gap:48px;width:max-content;overflow:visible;text-overflow:clip;animation:project-name-marquee 12s linear infinite}.project-name.scroll span{display:inline-block;white-space:nowrap}@keyframes project-name-marquee{0%{transform:translate(0)}to{transform:translate(calc(-50% - 24px))}}.status-badge{border-radius:999px;padding:4px 10px;font-size:13px;font-weight:700;white-space:nowrap}.status-normal{color:#1f7a49;background:#56c77e2e}.status-warning{color:#a65e1f;background:#ffb55338}.status-critical{color:#cc4b66;background:#ff7e9533}.status-pending{color:#8b97a8;background:#94a3b82e}.meta-row{margin-top:10px;display:flex;justify-content:space-between;color:#a6b3c2;font-size:14px}.meta-sub{margin-top:6px;margin-bottom:0;color:#8b949e;font-size:13px}.meta-inline{margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;gap:16px}.meta-inline-item{flex:0 0 auto}.progress-track{margin-top:10px;width:100%;height:8px;border-radius:999px;background:#1b2531;overflow:hidden}.progress-track.small{height:6px}.progress-fill{height:100%;background:linear-gradient(90deg,#2f81f7,#7aa2ff)}.repo-list{--repo-item-height: 200px;--repo-gap: 10px;margin-top:16px;display:flex;flex-direction:column;gap:var(--repo-gap);max-height:calc(var(--repo-item-height) * 2 + var(--repo-gap));overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scroll-snap-type:y mandatory;padding-right:6px;scrollbar-gutter:stable}.repo-item{border:1px solid #243244;border-radius:10px;padding:10px;background:#0d1117b3;height:var(--repo-item-height);min-height:var(--repo-item-height);flex:0 0 var(--repo-item-height);scroll-snap-align:start;overflow:hidden;display:flex;flex-direction:column}.repo-head{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}.repo-main{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.repo-main .status-badge{font-size:12px;padding:3px 9px}.repo-kind{font-size:14px;font-weight:600;color:#8b949e}.repo-links{display:flex;gap:8px}.repo-line2{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.doc-btn{color:#7db4ff;border:1px solid #2c3a4b;background:#0f1722;padding:4px 10px;border-radius:8px;cursor:pointer;font-size:12px}.doc-btn:hover{border-color:#58a6ff}.doc-btn:disabled{color:#6f7a87;cursor:not-allowed;border-color:#2a313a;background:#0d1117}.repo-progress-row{margin-top:6px;display:flex;justify-content:space-between;font-size:13px;color:#9fb2c7}.repo-metrics{font-size:12px;color:#9fb2c7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.repo-hours{margin-top:6px;font-size:12px;color:#8da4be}.repo-plan-end{margin-top:6px;font-size:12px;color:#7f91a7}.repo-summary{margin-top:8px;padding-top:8px;border-top:1px solid #1f2b3a;font-size:13px;line-height:1.45;color:#c5d7ea;overflow:auto;flex:1 1 auto}.repo-progress-track{margin-top:6px}.muted{margin:0;color:#8b949e}.preview-mask{position:fixed;inset:0;background:#000000a8;display:flex;align-items:center;justify-content:center;padding:20px;z-index:10}.preview-dialog{width:min(960px,100%);max-height:90vh;overflow:auto;border:1px solid #2a3544;border-radius:14px;background:#0d1117;padding:16px}.preview-header{display:flex;justify-content:space-between;gap:10px;align-items:center}.preview-header h3{margin:0;font-size:20px}.preview-close-btn{color:#58a6ff;border:1px solid #30363d;background:#0d1117;padding:6px 10px;border-radius:8px;cursor:pointer}.preview-close-btn:hover{border-color:#58a6ff}.markdown-body{margin-top:12px;border:1px solid #263244;border-radius:10px;padding:14px;background:#0b1118;line-height:1.68}.markdown-body h1,.markdown-body h2,.markdown-body h3{border-bottom:1px solid #263244;padding-bottom:4px}.markdown-body a{color:#7db4ff}.markdown-body pre{background:#111821;border-radius:8px;padding:10px;overflow:auto}.markdown-body code{background:#111821;border-radius:6px;padding:2px 6px}.theme-light{color:#1f2a37;background:linear-gradient(180deg,#f3f8ff,#e9f0f8);border-radius:12px}.theme-light .overview-value{color:#2f4d70}.theme-light .overview-label{color:#4f6886}.theme-light .theme-btn{background:#fff;border-color:#9cb7d8;color:#30507a}.theme-light .summary-stat{border-color:#cad8ea;background:#eef4fb;color:#3f5777}.theme-light .sticky-dashboard-header{background:#f3f8ff;border-bottom-color:#9cb7d899;box-shadow:0 2px 10px #91a7c22e}.theme-light .action-btn{border-color:#b6c8df;background:#f5f9ff;color:#30507a}.theme-light .tab-btn{border-color:#b8c9e0;color:#4b627f;background:#f2f7ff}.theme-light .tab-btn.active{border-color:#5d90d6;background:#5d90d629;color:#2f5e9f}.theme-light .panel{border-color:#cadaec;background:#f7fbff}.theme-light .project-card{border-color:#c7d7eb;background:radial-gradient(circle at top right,#f5faff,#edf4fc 55%,#e8eff8)}.theme-light .status-normal{color:#12703f;background:#12703f1f}.theme-light .status-warning{color:#9a5816;background:#9a581626}.theme-light .status-critical{color:#b53f59;background:#b53f5924}.theme-light .status-pending{color:#6d7b8e;background:#6d7b8e29}.theme-light .meta-row,.theme-light .meta-sub,.theme-light .repo-kind,.theme-light .repo-progress-row,.theme-light .repo-metrics,.theme-light .repo-hours,.theme-light .repo-plan-end,.theme-light .muted{color:#51647d}.theme-light .progress-track{background:#d3deeb}.theme-light .repo-item{border-color:#bfd0e5;background:#f5f9ff}.theme-light .repo-summary{border-top-color:#d3deeb;color:#384e69}.theme-light .doc-btn{border-color:#9cb7d8;background:#fff;color:#3a689b}.theme-light .doc-btn:disabled{color:#95a5ba;border-color:#d3deeb;background:#f3f7fc}.theme-light .preview-dialog{border-color:#c7d7eb;background:#f9fcff}.theme-light .preview-close-btn{border-color:#a8c1e0;background:#fff;color:#30507a}.theme-light .markdown-body{border-color:#cad8ea;background:#fff;color:#28374b}.theme-light .markdown-body h1,.theme-light .markdown-body h2,.theme-light .markdown-body h3{border-bottom-color:#d6e3f2}.theme-light .markdown-body pre,.theme-light .markdown-body code{background:#edf4fc}@media(max-width:768px){.container{min-height:100vh;max-width:100%;padding:10px 12px 12px}.overview-grid{margin-top:8px;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;overflow-x:hidden;padding-bottom:0}.overview-value{font-size:18px}.overview-card{border-radius:8px;padding:6px 4px;min-width:0}.overview-label{margin-top:2px;font-size:11px;font-weight:600}.project-grid{grid-template-columns:1fr;gap:12px}.project-card{min-height:0;height:auto;padding:12px}.project-title-row{min-height:40px}.project-name-box{height:40px}.project-name{font-size:16px}.meta-row{font-size:13px}.theme-btn{padding:6px 12px;font-size:12px}.sticky-dashboard-header{padding:6px 12px 8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.content-with-fixed-header{margin-top:0}.summary{margin-top:8px;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.summary-actions{margin-left:0;flex:0 0 auto;gap:6px}.summary-stat{padding:4px 8px;font-size:11px;flex:0 0 auto}.action-btn{padding:5px 9px;font-size:11px;flex:0 0 auto}.tabs{margin-top:8px;gap:6px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:2px}.tab-btn{padding:6px 12px;font-size:12px;white-space:nowrap;flex:0 0 auto}.repo-list{max-height:none}}
