@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#f5f6f8;--surface:#fff;--panel:#fff;--soft:#f4f5f7;--text:#16191f;--muted:#78808c;--border:#e6e8ec;--shadow:0 14px 40px rgba(18,25,38,.055);--black:#17191d;--radius:17px;--accent:#276acb;--red:#ed5265;--blue:#3f7cef;--yellow:#e5a72f;--green:#2ca77b;--orange:#ec8e46;--purple:#8a61db}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font:14px/1.5 'DM Sans',sans-serif;color:var(--text)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}.app{display:flex;min-height:100vh}.side{width:244px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:26px 15px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{height:83px;display:flex;align-items:center;padding:4px 12px;margin-bottom:20px}.brand img{width:190px;max-height:78px;object-fit:contain}.section-tag{font-size:10px;font-weight:800;letter-spacing:1.7px;color:var(--muted);margin:20px 12px 8px}.nav{display:flex;flex-direction:column;gap:5px}.nav button{border:0;text-align:left;color:#777e88;background:none;border-radius:11px;padding:12px 13px;display:flex;align-items:center;gap:13px;font-weight:700}.nav button:hover,.nav button.active{background:var(--soft);color:var(--black)}.nav button.active{box-shadow:inset 3px 0 0 #222}.nav svg,.icon{width:19px;height:19px;stroke-width:1.9;flex-shrink:0}.side-bottom{margin-top:auto}.user-mini{border-top:1px solid var(--border);padding:17px 8px 0;display:flex;align-items:center;gap:10px}.avatar{background:#15171c;color:#fff;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-weight:800;flex-shrink:0}.main{flex:1;min-width:0}.top{padding:20px 32px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:var(--surface);gap:15px}.crumb{color:var(--muted);font-size:13px}.crumb strong{color:var(--text)}.top-right{display:flex;align-items:center;gap:10px}.icon-btn{height:36px;width:36px;display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);border-radius:10px;color:var(--text)}.icon-btn:hover{background:var(--soft)}.pill{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:20px;background:#f6ecdb;color:#a36b20;font-size:11px;font-weight:800}.content{max-width:1300px;margin:auto;padding:32px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;text-transform:uppercase;color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-family:Manrope,sans-serif;font-size:30px;line-height:1.25;letter-spacing:-1.15px;margin-bottom:8px}h2{font-family:Manrope,sans-serif;font-size:18px;letter-spacing:-.5px;margin-bottom:7px}h3{font-size:14px;margin-bottom:6px}.subtitle{color:var(--muted);font-size:13px}.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grid{display:grid;gap:18px}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.span2{grid-column:span 2}.span3{grid-column:span 3}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.mini-card{border:1px solid var(--border);background:var(--surface);padding:16px;border-radius:13px}.muted{color:var(--muted)}.small{font-size:12px}.tiny{font-size:10px}.statnum{font-family:Manrope,sans-serif;font-size:27px;font-weight:800;line-height:1.25;letter-spacing:-1px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 17px;border-radius:10px;background:#17191d;color:white;border:1px solid #17191d;font-weight:800;font-size:12px;white-space:nowrap;min-height:41px}.btn:hover{filter:brightness(1.1)}.btn.secondary{color:var(--text);background:var(--surface);border-color:var(--border)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text)}.btn.tint{background:#eaf0fc;color:#295bb0;border-color:#eaf0fc}.btn.sm{padding:7px 11px;min-height:32px}.hero{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.hero-art{width:78px;height:78px;background:#181b20;border-radius:18px;color:#fff;display:grid;place-items:center}.hero-art svg{width:36px;height:36px}.meter{height:7px;border-radius:10px;background:var(--soft);overflow:hidden;margin:10px 0}.meter span{height:100%;display:block;border-radius:10px;background:var(--accent)}.mission{background:#191c23;color:#fff;border:0}.mission .muted{color:#adb3bf}.mission h2{color:#fff}.mission .btn{background:#fff;color:#17191d;border-color:#fff}.label-chip{display:inline-flex;align-items:center;gap:6px;font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:800;color:var(--muted)}.round{width:42px;height:42px;border-radius:12px;background:var(--soft);display:grid;place-items:center}.round svg{width:21px;height:21px}.folder{position:relative;min-height:175px;cursor:pointer;transition:transform .15s,border-color .15s}.folder:hover{transform:translateY(-2px);border-color:#acb2bc}.folder:before{content:"";position:absolute;width:40px;height:5px;border-radius:4px;background:var(--color);left:22px;top:0}.folder .round{color:var(--color);background:color-mix(in srgb,var(--color) 12%,var(--surface))}.progress-line{display:flex;align-items:center;gap:12px}.progress-line .meter{flex:1}.tag{display:inline-flex;gap:5px;align-items:center;border-radius:7px;background:var(--soft);padding:4px 8px;font-size:11px;font-weight:700;color:var(--muted)}.tag.good{background:#e8f8ef;color:#188355}.tag.warn{background:#fff1dd;color:#a9700e}.tag.bad{background:#fff0f0;color:#b84c4c}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--border)}.list-row:last-child{border:0}.ring{height:70px;width:70px;border-radius:50%;background:conic-gradient(var(--green) 0 45%,var(--soft) 45%);display:grid;place-items:center;position:relative}.ring:after{content:"";width:52px;height:52px;border-radius:50%;background:var(--surface);position:absolute}.ring span{position:relative;z-index:1;font-weight:800;font-size:17px}.tabs{display:flex;gap:7px;overflow:auto;padding-bottom:5px;margin:16px 0}.tabs button{border:1px solid var(--border);border-radius:10px;padding:8px 12px;background:var(--surface);color:var(--muted);font-weight:700;white-space:nowrap}.tabs button.active{background:#191b20;color:#fff;border-color:#191b20}.section-gap{margin-top:23px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:16px}.field label{font-size:12px;font-weight:800}.field input,.field select,.field textarea{background:var(--surface);color:var(--text);border:1px solid #d9dde3;border-radius:9px;padding:11px 12px;width:100%;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:#6c7f9a;box-shadow:0 0 0 3px rgba(83,108,157,.09)}.field textarea{min-height:100px;resize:vertical}.color-dot{border-radius:50%;width:27px;height:27px;border:3px solid var(--surface);box-shadow:0 0 0 1px var(--border);display:inline-block;cursor:pointer}.color-dot.chosen{box-shadow:0 0 0 2px var(--text)}.empty{text-align:center;padding:30px;color:var(--muted)}.modal-backdrop{position:fixed;z-index:100;inset:0;background:rgba(16,20,28,.58);display:grid;place-items:center;padding:20px}.modal{width:min(520px,100%);max-height:90vh;overflow:auto;background:var(--surface);border-radius:18px;padding:26px;box-shadow:0 24px 100px #0004}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.toast{position:fixed;bottom:22px;right:22px;z-index:110;background:#1b1f26;color:white;border-radius:11px;padding:12px 17px;box-shadow:0 10px 38px #0003;font-size:13px;max-width:90vw}.choice{border:1px solid var(--border);padding:13px 15px;border-radius:10px;width:100%;text-align:left;background:var(--surface);color:var(--text);margin-bottom:9px;display:flex;gap:11px;align-items:center}.choice:hover{border-color:#97a8c4}.choice.selected{border-color:#5c8adc;background:#edf3ff;color:#1f4d97}.choice.correct{border-color:#2d9d76;background:#edfff5;color:#116e48}.choice.wrong{border-color:#dc7c7c;background:#fff1f1;color:#af3b3b}.stepper{display:flex;gap:6px}.stepper i{display:block;height:5px;flex:1;background:var(--soft);border-radius:4px}.stepper i.done{background:var(--green)}.chat{display:flex;flex-direction:column;gap:12px;min-height:335px;max-height:420px;overflow:auto;margin:15px 0}.bubble{max-width:86%;padding:13px 15px;border-radius:14px;background:var(--soft);align-self:flex-start;font-size:13px}.bubble.mine{background:#1d2027;color:white;align-self:flex-end}.bubble small{display:block;margin-top:7px;font-size:10px;opacity:.75}.chat-compose{display:flex;gap:9px}.chat-compose input{flex:1;border:1px solid var(--border);padding:12px;border-radius:10px;background:var(--surface);color:var(--text);min-width:0}.segmented{display:inline-flex;padding:3px;background:var(--soft);border-radius:10px;gap:3px}.segmented button{padding:7px 12px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-weight:700;font-size:12px}.segmented button.active{background:var(--surface);color:var(--text);box-shadow:0 1px 6px #0001}.timeline{border-left:2px solid var(--border);padding-left:20px;margin-left:10px}.timeline-item{position:relative;margin-bottom:24px}.timeline-item:before{content:"";position:absolute;width:11px;height:11px;border-radius:50%;background:var(--green);left:-27px;top:4px;border:3px solid var(--surface)}.mobile-nav{display:none}.credits{font-size:11px;color:var(--muted);margin:20px 0}.mock-badge{background:#f6f0dd;color:#856321;border-radius:7px;padding:6px 9px;font-weight:700;font-size:11px}.file-drop{border:2px dashed var(--border);background:var(--soft);border-radius:13px;padding:25px;text-align:center}.file-drop input{max-width:100%}.alert{padding:11px 14px;background:#fff4e5;color:#936519;border:1px solid #f2e0c5;border-radius:10px;font-size:12px}.toggle{display:flex;align-items:center;gap:10px}.toggle input{accent-color:#21252a;width:17px;height:17px}.mobile-only{display:none}
body.dark{--bg:#111418;--surface:#1b2026;--panel:#20262d;--soft:#272e36;--text:#eef0f3;--muted:#a0a9b4;--border:#333b44;--shadow:0 10px 30px #0002;--black:#fff;color-scheme:dark}body.dark .nav button.active{box-shadow:inset 3px 0 0 #eee}body.dark .mission{background:#080a0d}body.dark .btn.secondary{background:var(--surface)}body.dark .tabs button.active{background:#f6f7f9;color:#181a1e}body.dark .tag.good{background:#123b2d;color:#7de0ae}body.dark .tag.warn{background:#40301b;color:#e8b766}body.dark .tag.bad{background:#48282a;color:#f8a3a3}body.dark .alert{background:#352b1d;color:#f5cb8d;border-color:#604b2f}body.dark .brand img,body.dark .mobile-brand{filter:invert(1)}body.dark .choice.selected{background:#243858;color:#bdd5ff}body.dark .choice.correct{background:#1b4033;color:#c0f5d8}body.dark .choice.wrong{background:#48282a;color:#ffd0d0}body.dark .pill{background:#3f331d;color:#e9bd71}
@media(max-width:1080px){.side{width:212px}.brand img{width:165px}.content{padding:24px}.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.side{display:none}.top{padding:14px 17px}.content{padding:20px 15px 100px}.hero{align-items:flex-start}.hero-art{display:none}.mobile-only{display:block}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--surface);border-top:1px solid var(--border);padding:9px 6px calc(10px + env(safe-area-inset-bottom));z-index:50;justify-content:space-around;box-shadow:0 -8px 20px #00000008}.mobile-nav button{border:0;background:transparent;color:var(--muted);display:flex;align-items:center;flex-direction:column;gap:4px;font-size:10px;font-weight:700;min-width:54px}.mobile-nav button.active{color:var(--text)}.mobile-nav button svg{width:20px;height:20px}.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g2{grid-template-columns:1fr}.span2,.span3{grid-column:span 1}.card{padding:17px}.grid{gap:11px}h1{font-size:25px}.statnum{font-size:24px}.top .pill{display:none}.top-right{gap:7px}.folder{min-height:160px}.modal{padding:20px}.credits{padding-bottom:8px}}@media(max-width:370px){.g3,.g4{grid-template-columns:1fr}.top{padding:11px}.content{padding:15px 12px 100px}}

/* Identidad original Formando: logo opaco y visible en escritorio + móvil */
.brand{height:102px;padding:8px 4px;margin-bottom:14px}.brand img{display:block;width:100%;max-width:205px;max-height:95px;height:auto;object-fit:contain;object-position:left center}.mobile-brand{display:none}
@media(max-width:760px){.mobile-brand{display:block;width:132px;max-height:44px;height:auto;object-fit:contain;object-position:left center}.crumb-word{display:none}.crumb{display:flex;gap:12px;align-items:center}.brand{display:none}}
@media(max-width:400px){.mobile-brand{width:104px}.top{gap:6px}.crumb{gap:6px}.crumb strong{font-size:11px}}
