:root {
    --bg-color: #1f1f1f;
    --surface: #282828;
    --surface-hover: #303030;
    --border: rgba(255, 255, 255, 0.08);
    --border-hover: rgba(0, 240, 255, 0.3);

    --accent: #00f0ff;
    --accent-glow: rgba(0, 240, 255, 0.15);
    --accent2: #ff6b35;
    --hero-gradient-start: #00e5ff;
    --hero-gradient-end: #68f04c;
    --button-green: #b4f000;

    --text-primary: #ffffff;
    --text-secondary: #9aa4b0;
    --text-tertiary: #6b7280;

    --ia-bg: linear-gradient(135deg, #9dbe15, #012601);
    --ia-border-color: #9dbe154d;
    --ia-shadow: #9dbe1526;
}

@keyframes aviso-shine{
    0% {background-position: -200% 0;}
    100% {background-position: 200% 0;}
}

@keyframes pulse-ring{
    0% {box-shadow: 0 0 0 0 rgba(94, 234, 212, 0.5);}
    70% {box-shadow: 0 0 0 12px rgba(94, 234, 212, 0);}
    100% {box-shadow: 0 0 0 0 rgba(94, 234, 212, 0);}
}
@keyframes fadeIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }

.carreira-container {background-color: var(--bg-color);color: var(--text-primary);font-family: 'Montserrat', sans-serif;min-height: 100vh;overflow-x: hidden;-webkit-font-smoothing: antialiased;}

/* Grid de Fundo Premium */
.carreira-container::before { content: ''; position: fixed; inset: 0; background-image: linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px); background-size: 80px 80px; pointer-events: none; z-index: 0; mask-image: linear-gradient(to bottom, black 20%, transparent 100%); -webkit-mask-image: linear-gradient(to bottom, black 20%, transparent 100%);}
.top-glow {position: absolute; top: -200px; left: 50%; transform: translateX(-50%);max-width: 100%; width: 800px; height: 400px; background: radial-gradient(ellipse at center, rgba(0, 240, 255, 0.08) 0%, transparent 70%);pointer-events: none; z-index: 0;}

/* Hero */
.carreira-container header {position: relative;z-index: 10;padding: 40px 24px;text-align: center;max-width: 900px;margin: 0 auto;}
.carreira-container h1 {font-family: 'Montserrat', sans-serif;font-size: clamp(3rem, 10vw, 80px);font-weight: 800;line-height: 1.1;margin-bottom: 30px;background: linear-gradient(to right, var(--hero-gradient-start), var(--hero-gradient-end));-webkit-background-clip: text;-webkit-text-fill-color: transparent;letter-spacing: -1px;}
.subtitle {font-size: 1.25rem;color: var(--text-primary);font-weight: 400;line-height: 1.5;max-width: 700px;margin: 0 auto 21px;font-family: 'Montserrat', sans-serif;}
.carreira-container main {position: relative; z-index: 10; width: 1000px; max-width: 100%; margin: 50px auto 100px; padding: 0 24px; box-sizing: border-box; border-radius: 12px; font-family: 'Poppins'; display: flex; flex-direction: column; gap: 50px;}
.trilhas-destaque-list {display: grid;grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));gap: 15px;}
.trilha-image-wrapper img {height: 100%;width: 100%;position: absolute;right: 0;object-fit: cover;}
.trilha-block {display: flex;flex-direction: column;align-items: stretch;padding: 0px;background: var(--bg-main-2);border: 1px solid var(--bg-alt-1);border-radius: 12px;text-decoration: none;color: var(--text-main-1);transition: all 0.3s;position: relative;overflow: hidden;height: 100%;}
.trilha-block:hover {background: var(--bg-main-3);border-color: rgba(0, 240, 255, 0.3);transform: translateY(-2px);box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);}
.trilha-image-wrapper {width: 100%;height: 125px;flex-shrink: 0;background: linear-gradient(135deg, rgba(255, 255, 255, 0.05) 0%, rgba(255, 255, 255, 0.02) 100%);border-bottom: 1px solid var(--bg-alt-1);border-radius: 0;display: flex;align-items: center;justify-content: center;font-family: 'Space Mono', monospace;font-size: 0.75rem;text-align: center;overflow: hidden;position: relative;box-sizing: border-box;}
.trilha-main {flex: 1;display: flex;flex-direction: column;justify-content: flex-start;gap: 15px;padding: 15px 20px 25px;position: relative;}
.trilha-title {font-size: 20px;letter-spacing: 1px;font-weight: 700;line-height: 1.3em;font-family: 'Space Mono', monospace;font-family: 'Consolas';color: #f6f7fa;}
.trilha-header-top {display: flex;justify-content: space-between;align-items: center;flex: 1 0 auto;position: relative;z-index: 1;max-width: 70%;text-align: left;height: 100%;margin-right: auto;padding: 20px 0 20px 20px;background: linear-gradient(90deg, black, transparent);box-sizing: border-box;}
.trilha-dados {font-family: Montserrat, sans-serif;font-size: 12px;display: flex;flex-wrap: wrap;gap: 12px;align-items: center;color: var(--text-main-2);}
.trilha-dados > * {opacity: 0.9;}
.trilha-dados span {display: flex;align-items: center;gap: 4px;}
.trilha-dados strong {font-weight: 600;}
.tech-tags {display: flex;flex-wrap: wrap;gap: 8px;}
.tech-badge {background: rgb(255 255 255 / 9%);border: 1px solid currentColor;padding: 2px 8px;border-radius: 6px;font-size: 10px;font-family: 'Montserrat', monospace;color: var(--text-main-3);}
.trilha-cta {background: var(--btn-bg-1);box-shadow: 0 8px 26px rgba(0, 240, 255, 0.15);color: #1f1f1f;align-self: flex-start;padding: 6px 20px;border-radius: 50px;font-size: 14px;font-weight: 600;margin-top: auto;transition: all .2s linear;opacity: 0.8;}
.trilha-block:hover .trilha-cta {transform: translateY(-4px);opacity: 1;}
.icon-ai-str {height: 1em;width: 1em;margin-bottom: -2px;margin-right: 3px;}

.tabs-wrapper {position: relative;z-index: 10;display: flex;justify-content: center;margin: 0px auto 30px;flex-wrap: wrap;padding: 0 20px;}
.tabs-container {display: grid;grid-template-columns: repeat(auto-fit , minmax(200px, 1fr));background: rgba(255, 255, 255, 0.03);border: 1px solid var(--border);border-radius: 30px;padding: 6px;backdrop-filter: blur(10px);gap: 15px 4px;justify-content: space-around;width: 1200px;max-width: 100%;box-sizing: border-box;}
.tabs-container:has(> :nth-child(4)):not(:has(> :nth-child(5))) { width: 1000px; }
.tab-btn {font-family: 'Montserrat', sans-serif;font-size: 0.95rem;font-weight: 600;color: var(--text-secondary);background: transparent;border: none;padding: 12px 24px;border-radius: 20px;cursor: pointer;transition: all 0.3s ease;text-decoration: none;display: flex;flex-direction: column;gap: 5px;text-align: left;position: relative;}
.tab-btn:hover { color: #ffffff; }
.tab-btn.active { background: #303030; color: #00f0ff; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2), inset 0 0 0 1px rgba(0, 240, 255, 0.2); }
.tab-btn.continue-btn {cursor: default;}
.tab-btn-subtitulo {color: #7f7f7f;font-weight: 500; font-size: 12px;}
.tab-btn:is(:hover, .active) .tab-btn-subtitulo {color: #bbbbbb;}
.tab-btn-tag {position: absolute;bottom: calc(100% - 5px);background: #00f0ff;color: black;border: 1px solid rgba(0, 240, 255, 0.2);padding: 1px 4px;border-radius: 3px;font-size: 9px;border-bottom: 0;letter-spacing: 0.5px;text-transform: uppercase;font-weight: 700; box-shadow: 2px 2px 4px #0000009e;}
.tab-btn-icon {stroke-linecap: round;stroke-linejoin: round;fill: transparent;stroke: currentColor;aspect-ratio: 1/1;width: 1em;margin: 0 3px -2px 0;}
.tab-btn.objetivo {background: linear-gradient(0deg, #00f0ff12, transparent 80%);}
.tab-btn.objetivo:is(:hover, .active) {background: linear-gradient(0deg, #00f0ff38, transparent 80%);}
.checkpoint {display: flex;align-items: center;gap: 16px;margin: 0px 0 -10px;position: relative;z-index: 2;}
.checkpoint-line {flex: 1;height: 1px;background: linear-gradient(90deg, var(--accent), transparent);opacity: 0.5;}
.checkpoint-text {color: var(--accent);font-family: 'Space Mono', monospace;font-size: 16px;letter-spacing: 4px;text-transform: uppercase;}
.trilha-grupos {display: flex;flex-direction: column;gap: 40px;}
.trilha-dados .dot { font-size: 8px; opacity: 0.3; }
@media (max-width: 768px) {
    .carreira-container header { padding: 80px 20px 40px; }
}

@media (max-width: 639px) {
	.tabs-wrapper {margin: 0px auto 0; padding: 0;}
}
@media (max-width: 500px) {
	.tabs-container {flex-direction: column;width: 100%;}
	.tabs-container .tab-btn {width: 100%;}
}