:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.card{padding:2em}#app{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #09090b;--surface: #18181b;--border: #27272a;--text: #fafafa;--muted: #71717a;--accent: #3b82f6;--green: #22c55e;--red: #ef4444}body{font-family:system-ui,sans-serif;background:var(--bg);color:var(--text)}.app{min-height:100vh}header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-bottom:1px solid var(--border)}.logo{font-weight:600;font-size:1.25rem}.import-btn{padding:.5rem 1rem;background:var(--accent);border:none;border-radius:6px;color:#fff;font-weight:500;cursor:pointer}.import-btn:hover{background:#2563eb}main{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 60px)}.hero{text-align:center}.hero h1{font-size:2.5rem;font-weight:600;margin-bottom:.5rem}.hero p{color:var(--muted);margin-bottom:2rem}.links{display:flex;gap:1rem;justify-content:center}.links a{padding:.5rem 1rem;border:1px solid var(--border);border-radius:6px;color:var(--text);text-decoration:none}.links a:hover{border-color:var(--accent)}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border)}.modal-header h2{font-size:1.125rem}.close{background:none;border:none;color:var(--muted);font-size:1.5rem;cursor:pointer}.modal-body{padding:1.5rem;overflow-y:auto}.modal-body.repos{padding:1rem}.field{margin-bottom:1rem}.field label{display:block;font-size:.875rem;color:var(--muted);margin-bottom:.5rem}.field input{width:100%;padding:.625rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:.875rem}.field input:focus{outline:none;border-color:var(--accent)}.field a{font-size:.75rem;color:var(--accent);text-decoration:none}.field.row{display:flex;gap:1rem;align-items:flex-end}.field.row .field{flex:1;margin-bottom:0}.field.row a{white-space:nowrap;padding-bottom:.625rem}button.primary{width:100%;padding:.625rem;background:var(--accent);border:none;border-radius:6px;color:#fff;font-weight:500;cursor:pointer;margin-top:.5rem}button.primary:hover{background:#2563eb}button.primary:disabled{opacity:.5;cursor:not-allowed}.error{color:var(--red);font-size:.875rem;margin-top:.5rem}.repo-list{max-height:300px;overflow-y:auto;margin-bottom:1rem;border:1px solid var(--border);border-radius:8px}.owner-group{border-bottom:1px solid var(--border)}.owner-group:last-child{border-bottom:none}.owner{display:flex;justify-content:space-between;padding:.5rem .75rem;background:var(--bg);font-weight:500;font-size:.875rem;cursor:pointer}.owner span{color:var(--muted);font-weight:400}.repo{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem .5rem 1.5rem;cursor:pointer;font-size:.875rem;border-top:1px solid var(--border)}.repo:hover{background:var(--bg)}.repo.selected{background:#3b82f61a}.repo.done{background:#22c55e1a}.repo.error{background:#ef44441a}.repo .check{width:16px;color:var(--accent)}.repo.done .check{color:var(--green)}.repo.error .check{color:var(--red)}.repo .name{flex:1}.repo .badge{font-size:.75rem;color:var(--muted);background:var(--border);padding:.125rem .375rem;border-radius:4px}
