*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f8f9fc;--bg-card:#fff;--bg-hover:#f1f3f9;--border:#e2e5ed;--text:#1a1d2e;--text-muted:#6b7085;--primary:#4f46e5;--primary-hover:#4338ca;--success:#16a34a;--danger:#dc2626;--warning:#d97706;--radius:8px;--shadow:0 1px 3px #00000014}body{background:var(--bg);color:var(--text);min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5}a{color:var(--primary);text-decoration:none}.app-layout{min-height:100vh;display:flex}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);flex-shrink:0;width:240px;padding:1.5rem 0}.sidebar h2{margin-bottom:2rem;padding:0 1.5rem;font-size:1.1rem}.sidebar nav a{color:var(--text-muted);padding:.7rem 1.5rem;font-size:.9rem;transition:all .15s;display:block}.sidebar nav a:hover,.sidebar nav a.router-link-active{color:var(--text);background:var(--bg-hover)}.main-content{flex:1;padding:2rem;overflow-y:auto}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-header h1{font-size:1.5rem;font-weight:600}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:1rem;padding:1.5rem}.card h3{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem;font-size:1rem}.btn{border-radius:var(--radius);cursor:pointer;border:none;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:all .15s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-outline{border:1px solid var(--border);color:var(--text);background:0 0}.btn-outline:hover{background:var(--bg-hover)}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.form-group{margin-bottom:1rem}.form-group label{color:var(--text-muted);margin-bottom:.35rem;font-size:.85rem;display:block}.form-group input,.form-group select{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);width:100%;color:var(--text);padding:.6rem .8rem;font-size:.9rem}.form-group input:focus,.form-group select:focus{border-color:var(--primary);outline:none}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{width:100%;max-width:400px}.auth-card h1{text-align:center;margin-bottom:.5rem}.auth-card p{text-align:center;color:var(--text-muted);margin-bottom:2rem}.plans-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.plan-card{border:2px solid var(--border);border-radius:var(--radius);cursor:pointer;padding:1.5rem;transition:all .2s}.plan-card:hover,.plan-card.selected{border-color:var(--primary);transform:translateY(-2px)}.plan-card h3{margin-bottom:.5rem;font-size:1.2rem}.plan-card .price{margin-bottom:1rem;font-size:2rem;font-weight:700}.plan-card .price small{color:var(--text-muted);font-size:.9rem;font-weight:400}.plan-card ul{margin-bottom:1rem;list-style:none}.plan-card ul li{padding:.3rem 0;font-size:.9rem}.plan-card ul li:before{content:"✓ ";color:var(--success)}.status-badge{border-radius:999px;padding:.2rem .6rem;font-size:.75rem;font-weight:500;display:inline-block}.status-active,.status-running{color:var(--success);background:#16a34a1f}.status-pending,.status-deploying{color:var(--warning);background:#d977061f}.status-trial{color:var(--primary);background:#4f46e51f}.status-inactive,.status-failed,.status-stopped,.status-cancelled{color:var(--danger);background:#dc26261f}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:.75rem .5rem;font-size:.9rem}th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:500}.empty-state{text-align:center;color:var(--text-muted);padding:3rem}
