*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f0faf7;color:#1a1a2e;min-height:100vh}#root{max-width:100%;margin:0;padding:0;text-align:left}.loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:1.1rem;color:#6da9e4}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#f0faf7,#e8f4f8)}.login-form{background:#fff;padding:2.5rem;border-radius:12px;border:2px solid #ADE4DB;width:100%;max-width:380px;box-shadow:0 4px 20px #0000000f}.login-form h1{font-size:1.5rem;color:#1a1a2e;margin-bottom:.25rem}.login-subtitle{color:#888;font-size:.85rem;margin-bottom:1.5rem}.login-form input{display:block;width:100%;padding:.7rem .9rem;margin-bottom:.75rem;border:2px solid #ADE4DB;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .2s}.login-form input:focus{border-color:#6da9e4}.login-form button{width:100%;padding:.7rem;background:#6da9e4;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;margin-top:.5rem;transition:background .2s}.login-form button:hover{background:#5a95d0}.login-form button:disabled{opacity:.6;cursor:not-allowed}.error{background:#fff0f0;color:#c0392b;padding:.6rem .8rem;border-radius:6px;font-size:.85rem;margin-bottom:.75rem;border:1px solid #f5c6cb}.admin{padding:1.5rem 2rem;max-width:1400px;margin:0 auto}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #ADE4DB}.header-left{display:flex;align-items:center;gap:1rem}.header-left h1{font-size:1.4rem;color:#1a1a2e}.user-badge{background:#6da9e4;color:#fff;padding:.3rem .7rem;border-radius:6px;font-size:.8rem;font-weight:600}.header-right{display:flex;gap:.5rem}.btn-refresh,.btn-logout{padding:.45rem 1rem;border:2px solid #ADE4DB;border-radius:8px;font-size:.85rem;font-weight:500;cursor:pointer;background:#fff;color:#1a1a2e;transition:all .2s}.btn-refresh:hover{background:#ade4db}.btn-logout{border-color:#e74c3c;color:#e74c3c}.btn-logout:hover{background:#e74c3c;color:#fff}.stats-row{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:1.5rem}.stat{background:#fff;border:2px solid #ADE4DB;border-radius:10px;padding:1rem;text-align:center}.stat-value{font-size:1.8rem;font-weight:700;color:#6da9e4}.stat-label{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-top:.2rem}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem}.project-card{background:#fff;border:2px solid #ADE4DB;border-radius:10px;padding:1.2rem;transition:box-shadow .2s}.project-card:hover{box-shadow:0 4px 16px #6da9e426}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.8rem}.card-title-row{display:flex;align-items:center;gap:.5rem}.card-title-row h3{font-size:1.05rem;color:#1a1a2e}.health-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.health-dot.green{background:#27ae60}.health-dot.red{background:#e74c3c}.health-dot.gray{background:#bbb}.health-dot.yellow{background:#f39c12}.tier-badge{padding:.2rem .6rem;border-radius:4px;font-size:.7rem;font-weight:600;color:#fff;white-space:nowrap}.card-details{margin-bottom:.8rem}.detail-row{display:flex;justify-content:space-between;padding:.3rem 0;font-size:.85rem;border-bottom:1px solid #f0f0f0}.detail-row:last-child{border-bottom:none}.detail-row .label{color:#888;font-weight:500}.mono{font-family:SF Mono,Fira Code,monospace;font-size:.8rem;color:#555}.card-actions{display:flex;justify-content:space-between;align-items:center;padding-top:.6rem;border-top:1px solid #f0f0f0}.btn-open{padding:.35rem 1rem;background:#6da9e4;color:#fff;border-radius:6px;font-size:.8rem;font-weight:600;text-decoration:none;transition:background .2s}.btn-open:hover{background:#5a95d0}.status-badge{padding:.2rem .6rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.status-badge.active{background:#e8f8f0;color:#27ae60}.status-badge.development{background:#fff8e1;color:#f39c12}.status-badge.planned{background:#f0f0f0;color:#888}.status-badge.paused{background:#fce4ec;color:#e74c3c}@media(max-width:768px){.admin{padding:1rem}header{flex-direction:column;gap:.75rem;align-items:flex-start}.stats-row{grid-template-columns:repeat(3,1fr)}.projects-grid{grid-template-columns:1fr}}@media(max-width:480px){.stats-row{grid-template-columns:repeat(2,1fr)}.login-form{margin:1rem}}
