        @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');
        :root{--azul-profundo:#0E2586;--azul-claro:#3498db;--marron-oscuro:#4E110B;--gris-fondo:#f4f7f9;--gris-claro:#e2e8f0;--blanco:#ffffff;--texto-oscuro:#2d3748;--texto-claro:#718096;--border-color:#cbd5e0;--amarillo:#FFD100;--color-manada:#FFD100;--color-tropa:#00853F;--color-compania:#00853F;--color-pioneros:#0055A5;--color-caminantes:#E31837;--verde:#00853F;--rojo:#E31837;--naranja:#e67e22;--morado:#8b5cf6;--success:#2ecc71;--warning:#f39c12;--danger:#E31837;--info:#3498db;--area-corp:#3498db;--area-crea:#f1c40f;--area-cara:#E31837;--area-afec:#e67e22;--area-soci:#9b59b6;--area-espi:#2ecc71;}
        *{margin:0;padding:0;box-sizing:border-box;font-family:'Poppins',sans-serif;}
        body{background:var(--gris-fondo);min-height:100vh;}
        .topbar{background:var(--azul-profundo);color:white;padding:14px 22px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
        .topbar h1{font-size:1rem;font-weight:600;flex:1;}
        .topbar p{font-size:0.76rem;opacity:0.7;}
        .content{max-width:1200px;margin:0 auto;padding:18px 14px 60px;}

        /* Filtros */
        .filtros{display:flex;gap:10px;margin-bottom:18px;flex-wrap:wrap;align-items:center;}
        .filtros select,.filtros input{padding:9px 13px;border:2px solid var(--gris-claro);border-radius:9px;font-size:0.88rem;outline:none;font-family:inherit;background:white;transition:0.18s;}
        .filtros select:focus,.filtros input:focus{border-color:var(--azul-claro);}
        .btn{padding:9px 18px;border:none;border-radius:9px;font-size:0.86rem;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:0.18s;}
        .btn-p{background:var(--azul-profundo);color:white;}.btn-p:hover{background:#1a36a8;}
        .btn-sm{padding:6px 12px;font-size:0.79rem;}

        /* Stats */
        .stats-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px;}
        .stat{background:white;border-radius:11px;padding:13px 15px;text-align:center;box-shadow:0 2px 8px rgba(0,0,0,0.05);}
        .stat .n{font-size:1.5rem;font-weight:700;line-height:1;}.stat .l{font-size:0.73rem;color:var(--texto-claro);margin-top:2px;}
        .stat.az .n{color:var(--azul-claro);}.stat.vd .n{color:var(--verde);}.stat.am .n{color:#FFD100;}.stat.na .n{color:var(--naranja);}.stat.mo .n{color:var(--morado);}

        /* Grid de tarjetas */
        .grid-jovenes{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;}
        .jcard{background:white;border-radius:13px;padding:18px;box-shadow:0 2px 10px rgba(0,0,0,0.06);cursor:pointer;transition:0.18s;border:2px solid transparent;}
        .jcard:hover{border-color:var(--azul-claro);transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,0.1);}
        .jcard.selected{border-color:var(--azul-profundo);box-shadow:0 6px 20px rgba(14,37,134,0.15);}
        .jh{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
        .av{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;color:white;flex-shrink:0;}
        .jh-info h3{font-size:0.92rem;font-weight:700;}
        .jh-info p{font-size:0.78rem;color:var(--texto-claro);}
        .etapa-badge{display:inline-block;padding:3px 10px;border-radius:18px;font-size:0.73rem;font-weight:700;margin-top:5px;}

        /* Barra de progreso áreas */
        .areas-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px;}
        .area-bar{display:flex;flex-direction:column;gap:2px;}
        .area-bar .lbl{font-size:0.7rem;color:var(--texto-claro);display:flex;justify-content:space-between;}
        .bar-track{height:6px;background:#f0f4f8;border-radius:6px;overflow:hidden;}
        .bar-fill{height:100%;border-radius:6px;transition:width 0.5s ease;}

        /* Panel detalle */
        .detalle-panel{background:white;border-radius:13px;padding:22px;box-shadow:0 3px 12px rgba(0,0,0,0.07);margin-top:18px;display:none;}
        .detalle-panel.show{display:block;}
        .detalle-header{display:flex;align-items:center;gap:14px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--gris-claro);}
        .detalle-header .av-lg{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700;color:white;flex-shrink:0;}

        .tabs-det{display:flex;gap:3px;background:#f0f4f8;border-radius:10px;padding:3px;margin-bottom:18px;}
        .tab-det{flex:1;padding:8px;border:none;border-radius:7px;font-size:0.82rem;font-weight:500;cursor:pointer;background:transparent;color:var(--texto-claro);transition:0.16s;}
        .tab-det.act{background:white;color:var(--azul-profundo);font-weight:700;box-shadow:0 2px 7px rgba(0,0,0,0.08);}
        .tab-pane-det{display:none;}.tab-pane-det.show{display:block;}

        /* Etapas stepper */
        .etapas-stepper{display:flex;gap:0;overflow-x:auto;margin-bottom:18px;padding-bottom:4px;}
        .etapa-step{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;min-width:80px;position:relative;}
        .etapa-step:not(:last-child)::after{content:'';position:absolute;top:18px;left:50%;width:100%;height:2px;background:var(--gris-claro);z-index:0;}
        .etapa-step.done::after{background:var(--verde);}
        .etapa-circle{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.9rem;border:2px solid var(--gris-claro);background:white;position:relative;z-index:1;transition:0.2s;}
        .etapa-step.done .etapa-circle{background:var(--verde);border-color:var(--verde);color:white;}
        .etapa-step.current .etapa-circle{background:var(--azul-profundo);border-color:var(--azul-profundo);color:white;box-shadow:0 0 0 4px rgba(14,37,134,0.15);}
        .etapa-lbl{font-size:0.68rem;color:var(--texto-claro);text-align:center;white-space:nowrap;}
        .etapa-step.current .etapa-lbl{color:var(--azul-profundo);font-weight:700;}
        .etapa-step.done .etapa-lbl{color:var(--verde);}

        /* Objetivos por área */
        .areas-detalle{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;}
        .area-card{border:1px solid var(--gris-claro);border-radius:10px;padding:14px;}
        .area-card h4{font-size:0.84rem;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:7px;}
        .obj-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;border-bottom:1px solid #f0f4f8;font-size:0.8rem;color:var(--texto-oscuro);}
        .obj-item:last-child{border-bottom:none;}
        .obj-check{width:18px;height:18px;border-radius:4px;border:2px solid var(--gris-claro);display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:0.16s;margin-top:1px;}
        .obj-check.done{background:var(--verde);border-color:var(--verde);color:white;}
        .obj-txt{flex:1;line-height:1.4;}
        .obj-txt.done{text-decoration:line-through;color:var(--texto-claro);}

        /* Especialidades */
        .esp-grid{display:flex;flex-wrap:wrap;gap:8px;}
        .esp-tag{background:#f0f7ff;border:1px solid #bfdbfe;border-radius:8px;padding:5px 12px;font-size:0.79rem;font-weight:600;color:var(--azul-claro);display:flex;align-items:center;gap:5px;}
        .esp-tag i{color:var(--amarillo);}
        .esp-add{display:flex;gap:8px;margin-top:12px;}
        .esp-add input{flex:1;padding:8px 11px;border:2px solid var(--gris-claro);border-radius:8px;font-size:0.86rem;outline:none;font-family:inherit;transition:0.16s;}
        .esp-add input:focus{border-color:var(--azul-claro);}

        .etapa-selector{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px;}
        .etapa-btn{padding:5px 13px;border-radius:18px;border:2px solid var(--gris-claro);font-size:0.79rem;font-weight:600;cursor:pointer;background:white;color:var(--texto-oscuro);transition:0.16s;}
        .etapa-btn:hover{border-color:var(--azul-claro);}
        .etapa-btn.act{background:var(--azul-profundo);color:white;border-color:var(--azul-profundo);}

        .empty{text-align:center;padding:36px;color:var(--texto-claro);}
        .empty i{font-size:2.5rem;margin-bottom:10px;display:block;}
        .loading{text-align:center;padding:36px;color:var(--azul-profundo);}

        @media(max-width:600px){.stats-row{grid-template-columns:repeat(3,1fr);}.areas-grid{grid-template-columns:1fr;}}
