* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif; background:#0f172a; color:#e2e8f0; min-height:100vh; }
.container { max-width:900px; margin:0 auto; padding:1.5rem; }

/* Nav */
.nav { background:rgba(255,255,255,0.03); border-bottom:1px solid rgba(255,255,255,0.08); padding:0.8rem 1.5rem; }
.nav-inner { max-width:960px; margin:0 auto; display:flex; justify-content:space-between; align-items:center; }
.nav-logo { font-size:1.4rem; font-weight:800; background:linear-gradient(135deg,#818cf8,#c084fc); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.nav-links { display:flex; align-items:center; gap:1rem; }
.creditos-badge { background:rgba(251,191,36,0.1); border:1px solid rgba(251,191,36,0.2); color:#fcd34d; padding:0.2rem 0.6rem; border-radius:999px; font-size:0.8rem; font-weight:600; }

/* Buttons */
.btn { display:inline-block; padding:0.6rem 1.2rem; border-radius:8px; font-weight:600; font-size:0.85rem; cursor:pointer; border:none; transition:all 0.2s; text-decoration:none; }
.btn-primary { background:linear-gradient(135deg,#818cf8,#c084fc); color:white; }
.btn-primary:hover { transform:translateY(-1px); }
.btn-outline { background:transparent; border:1px solid rgba(255,255,255,0.15); color:#e2e8f0; }
.btn-sm { padding:0.3rem 0.8rem; font-size:0.8rem; }

/* Tabs */
.tabs { display:flex; gap:0.5rem; margin-bottom:2rem; flex-wrap:wrap; }
.tab { padding:0.6rem 1.2rem; border-radius:8px; border:1px solid rgba(255,255,255,0.1); background:transparent; color:#94a3b8; cursor:pointer; font-size:0.85rem; transition:all 0.2s; }
.tab:hover { border-color:#818cf8; color:#e2e8f0; }
.tab.active { background:rgba(129,140,248,0.15); border-color:#818cf8; color:#818cf8; }
.tab-content { display:none; }
.tab-content.active { display:block; }

/* Forms */
.form-group { margin-bottom:1rem; }
.form-group label { display:block; font-size:0.8rem; color:#94a3b8; margin-bottom:0.3rem; }
.form-group input, .form-group textarea, .form-group select, .form-input {
    width:100%; padding:0.7rem 0.8rem; border-radius:8px; border:1px solid rgba(255,255,255,0.1);
    background:rgba(255,255,255,0.05); color:#e2e8f0; font-size:0.9rem; font-family:inherit;
}
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { outline:none; border-color:#818cf8; }
.form-group select option { background:#1e293b; color:#e2e8f0; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }

/* Cards */
.vaga-card { background:rgba(255,255,255,0.03); border:1px solid rgba(255,255,255,0.08); border-radius:0.8rem; padding:1rem; margin-bottom:0.8rem; }
.vaga-card h3 { font-size:0.95rem; margin-bottom:0.2rem; }
.meta { font-size:0.8rem; color:#94a3b8; }
.tag { display:inline-block; padding:0.15rem 0.5rem; border-radius:4px; font-size:0.7rem; font-weight:600; }
.tag-aberta { background:rgba(52,211,153,0.15); color:#6ee7b7; }
.tag-fechada { background:rgba(239,68,68,0.15); color:#fca5a5; }
.tag-rascunho { background:rgba(148,163,184,0.15); color:#94a3b8; }
.tag-excluida { background:rgba(239,68,68,0.15); color:#dc2626; }

/* Messages */
.msg-success { background:rgba(52,211,153,0.1); border:1px solid rgba(52,211,153,0.2); color:#6ee7b7; padding:0.8rem; border-radius:8px; font-size:0.85rem; }
.msg-error { background:rgba(239,68,68,0.1); border:1px solid rgba(239,68,68,0.2); color:#fca5a5; padding:0.8rem; border-radius:8px; font-size:0.85rem; }

/* Stats */
.stat-card { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); border-radius:1rem; padding:1.5rem; text-align:center; }
.stat-card .num { font-size:2rem; font-weight:700; background:linear-gradient(135deg,#818cf8,#c084fc); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.stat-card .label { color:#94a3b8; font-size:0.85rem; margin-top:0.3rem; }
