@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";:root{--bg:#050505;--bg-alt:#0b0b0b;--panel:#101010;--panel-strong:#151515;--text:#f5f5f5;--muted:#9e9e9e;--line:#252525;--primary:#fff;--primary-deep:#e3e3e3;--danger:#ff7f7f;--success:#65d6a2;--shadow:0 24px 60px #00000073;--mono:"IBM Plex Mono", monospace;--sans:"Space Grotesk", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--sans);color:var(--text);background:radial-gradient(circle at 20% -20%, #202020, transparent 32%), radial-gradient(circle at 90% 0%, #191919, transparent 28%), linear-gradient(140deg, var(--bg), var(--bg-alt))}h1,h2,h3,h4,p{margin:0}.screen{min-height:100vh;padding:2rem;position:relative}.shell{max-width:1500px;margin:0 auto}.loading-shell{place-items:center;display:grid}.loading-text{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:999px;padding:1rem 1.4rem;font-size:1.2rem;font-weight:600}.auth-screen{place-items:center;display:grid}.auth-card{border:1px solid var(--line);background:var(--panel);width:min(620px,100%);box-shadow:var(--shadow);border-radius:26px;padding:2rem}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:.5rem;font-size:.76rem}.lead{color:var(--muted);margin-top:.7rem;margin-bottom:1.4rem}.auth-switch{background:var(--panel-strong);border:1px solid var(--line);border-radius:14px;grid-template-columns:1fr 1fr;gap:.3rem;margin-bottom:1.1rem;padding:.3rem;display:grid}.auth-switch button{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:.55rem .8rem;font-weight:600;transition:all .18s}.auth-switch button.active{color:#111;background:linear-gradient(130deg,#fefefe,#d4d4d4)}.form-grid{gap:.9rem;display:grid}.compact{margin-bottom:1rem}label{gap:.4rem;font-size:.9rem;font-weight:500;display:grid}input{border:1px solid var(--line);width:100%;font:inherit;background:var(--panel-strong);color:var(--text);border-radius:12px;outline:none;padding:.7rem .85rem;transition:border-color .18s,box-shadow .18s}input:focus{border-color:#727272;box-shadow:0 0 0 3px #ffffff1a}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;padding:.65rem 1rem;font-weight:600;transition:transform .16s,filter .16s}.btn:hover{transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.btn-primary{color:#101010;background:linear-gradient(135deg, var(--primary), var(--primary-deep))}.btn-ghost{color:var(--text);border-color:var(--line);background:var(--panel-strong)}.error-text{color:var(--danger);font-size:.86rem}.success-text{color:var(--success);font-size:.86rem}.muted{color:var(--muted)}.mono{font-family:var(--mono)}.dim{opacity:.68}.topbar{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:20px;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.2rem;padding:1rem 1.2rem;display:flex}.topbar-actions{align-items:center;gap:.65rem;display:flex}.user-chip{font-family:var(--mono);background:var(--panel-strong);border:1px solid var(--line);border-radius:999px;padding:.4rem .8rem;font-size:.8rem}.page-grid{grid-template-columns:1fr 2fr;gap:1rem;display:grid}.page-grid.single{grid-template-columns:1fr}.page-grid.projects-layout{grid-template-columns:1.25fr 1fr}.panel{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:20px;flex-direction:column;gap:.9rem;min-height:calc(100vh - 170px);padding:1rem;display:flex}.panel-head{justify-content:space-between;align-items:baseline;gap:.7rem;display:flex}.panel-head h3{font-size:1.05rem}.list-wrap{align-content:start;gap:.65rem;padding-right:.1rem;display:grid;overflow:auto}.list-item{border:1px solid var(--line);background:var(--panel-strong);text-align:left;cursor:pointer;border-radius:14px;gap:.45rem;padding:.7rem;transition:border-color .18s,transform .18s;display:grid}.list-item:hover{transform:translateY(-1px)}.list-item.active{border-color:#6f6f6f;box-shadow:0 0 0 3px #ffffff17}.project-card{gap:.7rem}.project-card-head{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.project-card-info{gap:.35rem;display:grid}.project-github{overflow-wrap:anywhere}.item-title{color:#f2f2f2;font-weight:600}.item-pill{color:var(--muted);font-size:.76rem}.preview-link{color:#8bb4f7;overflow-wrap:anywhere;font-weight:500;text-decoration:none;transition:color .18s,-webkit-text-decoration .18s,text-decoration .18s;display:inline-block}.preview-link:hover{color:#b3cfff;text-underline-offset:3px;text-decoration:underline}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.stats-grid article{border:1px solid var(--line);background:var(--panel-strong);border-radius:12px;gap:.3rem;padding:.65rem;display:grid}.stats-grid h4{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.stat{color:#f0f0f0;font-size:.86rem;font-weight:600}.project-name{color:#f5f5f5;font-size:1rem;font-weight:700}.terminal{border:1px solid var(--line);color:#d2f3d4;background:#070707;border-radius:12px;max-height:270px;padding:.75rem;overflow:auto}.terminal.terminal-full{flex:1;max-height:none}.terminal-title{text-transform:uppercase;letter-spacing:.08em;color:#bdbdbd;margin-bottom:.6rem;font-size:.76rem}.terminal .muted{color:#c4d5c4}.terminal .dim{opacity:.92;color:#9ec8a0}.log-line{grid-template-columns:auto 1fr;align-items:baseline;gap:.45rem;margin-bottom:.35rem;font-size:.8rem;display:grid}.reveal{animation:.46s both reveal-up}.reveal-delay-1{animation:.56s both reveal-up}.modal-backdrop{z-index:30;background:#000000b8;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line);width:min(520px,100%);box-shadow:var(--shadow);background:#111;border-radius:16px;gap:.8rem;padding:1rem;display:grid}.note-text{color:#d7d7d7;font-size:.92rem}.modal-actions{justify-content:flex-end;gap:.6rem;display:flex}@keyframes reveal-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=1200px){.page-grid{grid-template-columns:1fr}.panel{min-height:auto}}@media (width<=720px){.screen{padding:1rem}.auth-card,.topbar,.panel{border-radius:16px}.topbar{flex-direction:column;align-items:flex-start}.topbar-actions{justify-content:space-between;width:100%}.stats-grid,.log-line{grid-template-columns:1fr}}
