/* AlcocerMed student home */
.campus-dashboard{max-width:1300px;margin:0 auto;padding:32px 34px 72px;background:transparent;color:#192742}
.campus-greeting{min-height:156px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 27px;padding:0 4px;border-bottom:1px solid #dbe4ec}.campus-greeting>div:first-child{min-width:0}.campus-greeting>div:first-child>span{font-size:12px;letter-spacing:1.5px;font-weight:800;color:#258cbd}.campus-greeting h1{font-size:clamp(34px,3.2vw,48px);letter-spacing:-1.7px;margin:9px 0 7px;line-height:1.08}.campus-greeting h1 span{color:#238dbe}.campus-greeting p{font-size:17px;margin:0 0 25px;color:#5d6e85}.greeting-symbol{height:118px;width:118px;border-radius:30px;background:linear-gradient(140deg,#fdf9e6,#e9f4f7);display:grid;place-items:center;flex:none;border:1px solid #e4e7dc;transform:rotate(-5deg)}.greeting-symbol img{width:101px;height:101px;object-fit:contain;transform:rotate(5deg)}
.dashboard-columns{grid-template-columns:minmax(0,1fr) 318px;gap:22px}.dashboard-main{display:flex;flex-direction:column;gap:18px}.dashboard-launch{background:#fff;border:1px solid #dce5ee;border-radius:25px;padding:28px 28px 30px;box-shadow:0 12px 35px #1c29420a}.dashboard-launch-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:23px}.dashboard-eyebrow,.dashboard-progress-heading span{font-size:11px;letter-spacing:1.6px;font-weight:800;color:#218bc1}.dashboard-launch h2{font-size:30px;line-height:1.15;letter-spacing:-.7px;margin:7px 0 0;color:#192742}.dashboard-launch-hint{font-size:13px;color:#718097;text-align:right;max-width:190px;line-height:1.35}.dashboard-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.dashboard-activity{position:relative;min-width:0;min-height:186px;border:1px solid #e1e7ec;border-radius:20px;padding:20px 22px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;cursor:pointer;color:#192742;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;font:inherit;overflow:hidden}.dashboard-activity:hover,.dashboard-more button:hover{transform:translateY(-4px);box-shadow:0 16px 28px #1c294218;border-color:#9fcce0}.dashboard-activity:focus-visible,.dashboard-more button:focus-visible{outline:3px solid #218bc1;outline-offset:3px}.dashboard-activity img{height:77px;width:77px;object-fit:contain;margin:-5px 0 -2px}.dashboard-activity .study-tool-icon{height:65px;width:65px;margin:3px 0 2px;color:#44845d}.dashboard-activity span{display:flex;flex-direction:column;gap:4px;max-width:90%}.dashboard-activity strong{font-size:20px;font-weight:800;line-height:1.18}.dashboard-activity small{font-size:13px;color:#52647a;line-height:1.3}.dashboard-activity>i{position:absolute;right:22px;bottom:24px;font-size:14px;color:#6d8294}.dashboard-activity-gold{background:linear-gradient(145deg,#fffaf0,#fff4d8)}.dashboard-activity-blue{background:linear-gradient(145deg,#f5fbff,#e7f3fa)}.dashboard-activity-olive{background:linear-gradient(145deg,#f8fbf4,#edf4e4)}.dashboard-activity-navy{background:linear-gradient(145deg,#f7f9ff,#e9edf8)}
.dashboard-more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.dashboard-more button{min-height:92px;border-radius:18px;background:#fff;border:1px solid #dce5ee;padding:15px 18px;display:flex;align-items:center;gap:13px;color:#192742;font:inherit;text-align:left;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.dashboard-more img,.dashboard-more .study-tool-icon{height:52px;width:52px;object-fit:contain;flex:none;color:#218bc1}.dashboard-more button>span:nth-of-type(1){display:flex;flex-direction:column;flex:1;gap:4px;min-width:0}.dashboard-more strong{font-size:16px;line-height:1.15}.dashboard-more small{font-size:12px;color:#677990}.dashboard-more button>span:last-child{font-size:23px;color:#218bc1}
.dashboard-main .free-account-banner{margin:0 0 2px}.dashboard-progress{border-radius:24px;padding:25px;border:1px solid #dce5ee;box-shadow:0 12px 35px #1c29420a;position:sticky;top:22px}.dashboard-progress-heading{margin-bottom:20px}.dashboard-progress-heading h2{margin:6px 0 0;font-size:25px;letter-spacing:-.5px}.dashboard-progress .progress-card{padding:0;background:transparent;border:0;margin:0 0 20px}.dashboard-progress .progress-stats-row{display:grid;grid-template-columns:repeat(3,1fr);background:#f3f8fb;border:1px solid #e1ebf0;border-radius:16px;padding:16px 5px}.dashboard-progress .prog-divider{display:none}.dashboard-progress .prog-stat-box{min-width:0;border-right:1px solid #dbe6ec}.dashboard-progress .prog-stat-box:last-child{border:0}.dashboard-progress .prog-num{font-size:29px;font-weight:800;color:#218bc1}.dashboard-progress .prog-label{font-size:12px;color:#647890}.dashboard-progress .prog-materia-row{margin:16px 0 13px;padding:11px 13px;background:#f8fafc;border-radius:11px;color:#516377;font-size:13px}.dashboard-progress .prog-bar-wrap{height:9px;border-radius:20px;background:#e3eaf1;overflow:hidden}.dashboard-progress .prog-bar-fill{background:linear-gradient(90deg,#f6a11a,#ffe45a)}.dashboard-progress .prog-bar-labels{font-size:11px;color:#647890;margin-top:9px}.dashboard-progress .daily-goal-card{background:#fffaf0;border:1px solid #f2e7cb;border-radius:17px;padding:17px;margin:0;box-shadow:none;min-height:0}.dashboard-progress .daily-goal-card::before{display:none}.dashboard-progress .daily-goal-title{font-size:14px;color:#283951}.dashboard-progress .daily-goal-count{color:#bc7712}.dashboard-progress .daily-goal-msg{text-align:left;font-size:13px;margin:14px 0}.dashboard-progress .daily-streak-row{margin-top:14px}.dashboard-progress .daily-milestones{display:flex}.dashboard-progress .daily-bar-track{background:#efe5cb}
@media(max-width:1100px){.campus-dashboard{max-width:850px}.dashboard-columns{grid-template-columns:1fr}.dashboard-progress{position:static}.dashboard-progress .progress-section{display:grid;grid-template-columns:1fr 1fr;gap:16px}.dashboard-progress .progress-card,.dashboard-progress .daily-goal-card{margin:0}}
@media(max-width:650px){.campus-dashboard{padding:15px 14px 76px}.campus-greeting{min-height:0;margin:0 0 20px;padding:8px 2px 16px}.campus-greeting h1{font-size:36px}.campus-greeting p{font-size:15px;margin-bottom:0}.greeting-symbol{width:70px;height:70px;border-radius:20px}.greeting-symbol img{width:65px;height:65px}.dashboard-launch{padding:20px 16px;border-radius:19px}.dashboard-launch h2{font-size:26px}.dashboard-launch-hint{display:none}.dashboard-activity-grid{gap:10px}.dashboard-activity{min-height:165px;padding:12px 12px 15px;border-radius:15px}.dashboard-activity img{height:64px;width:64px}.dashboard-activity .study-tool-icon{height:54px;width:54px}.dashboard-activity span{max-width:100%}.dashboard-activity strong{font-size:16px}.dashboard-activity small{font-size:11px}.dashboard-activity>i{display:none}.dashboard-more{grid-template-columns:1fr;gap:10px}.dashboard-more button{min-height:76px}.dashboard-progress{padding:20px}.dashboard-progress .progress-section{display:block}.dashboard-progress .progress-card{margin-bottom:17px}}
@media(prefers-reduced-motion:reduce){.dashboard-activity,.dashboard-more button{transition:none}.dashboard-activity:hover,.dashboard-more button:hover{transform:none}}

.sidebar .nav-icon-arena{color:#ffb43c;background:#352d2a;border-radius:10px}.sidebar a[href="/juegos/jugar"]:hover .nav-icon-arena{color:#fff;background:#bd7411}

/* Un solo trazo y una escala común para todo el menú lateral. */
.sidebar .nav-icon{width:38px;height:38px;border-radius:12px;background:#ffffff0b;border:1px solid #ffffff16;color:#d5deeb;box-shadow:none;transition:background .18s,border-color .18s,transform .18s}
.sidebar .sidebar-tool-icon{width:23px;height:23px;display:block;fill:none}
.sidebar .nav-icon-inicio,.sidebar .nav-icon-anki{color:#ffd078;background:#f2a6291e;border-color:#f2a62932}
.sidebar .nav-icon-map,.sidebar .nav-icon-banco{color:#86d6eb;background:#2592bb1c;border-color:#2592bb32}
.sidebar .nav-icon-fire,.sidebar .nav-icon-eval{color:#d3c4ff;background:#8668bf1c;border-color:#8668bf32}
.sidebar .nav-icon-sim,.sidebar .nav-icon-quiz{color:#ffbd90;background:#df78321c;border-color:#df783232}
.sidebar .nav-icon-hang,.sidebar .nav-icon-arena{color:#a8e2b5;background:#47a86b1c;border-color:#47a86b32}
.sidebar .nav-icon-admin{color:#d4dce9;background:#ffffff0b;border-color:#ffffff16}
.dashboard-activity .dashboard-lock{position:absolute;top:15px;right:15px;display:inline-flex;flex-direction:row;align-items:center;gap:6px;max-width:none;padding:7px 10px;border:1px solid #e6ad4c;border-radius:999px;background:#fff7e6;color:#754c09;font-size:12px;font-weight:800;box-shadow:0 3px 10px #a2661515}
.dashboard-activity .dashboard-lock i,.dashboard-more-lock i{font-size:12px}
.dashboard-more .dashboard-more-lock{display:inline-flex;align-items:center;justify-content:center;width:33px;height:33px;flex:none;border:1px solid #e6ad4c;border-radius:10px;background:#fff7e6;color:#754c09}
@media(max-width:650px){.dashboard-activity .dashboard-lock{top:9px;right:9px;padding:5px 7px;font-size:10px}.dashboard-activity .dashboard-lock i{font-size:10px}}
.sidebar .nav-item>a:hover .nav-icon{transform:translateY(-1px);background:#ffffff1b;border-color:#ffffff40}
.sidebar .nav-item-active>a .nav-icon{color:#26344a;background:#fff4d6;border-color:#ffe08b}
.sidebar .nav-item>a:focus-visible{outline:2px solid #ffce60;outline-offset:2px}

/* El progreso conserva sus datos, con un estado inicial legible. */
.dashboard-progress{border-top:4px solid #f3ac2e;padding-top:22px}
.dashboard-progress-heading{padding-bottom:17px;border-bottom:1px solid #e6edf3}
.dashboard-progress-heading span{letter-spacing:1.2px}
.dashboard-progress-heading h2{font-size:26px}
.dashboard-progress .progress-stats-row{background:#f6f9fc;border-color:#e4ebf2;padding:18px 4px}
.dashboard-progress .prog-num{font-size:31px}
.dashboard-progress .prog-materia-row{background:#eef7fb;margin:17px 0 12px;font-weight:650}
.dashboard-progress .prog-materia-row #prog-materia-label{color:#28566c;font-size:13px;font-weight:650;text-transform:none}
.dashboard-progress .topic-dot{width:8px;height:8px;border-radius:50%;background:#2594c5;flex:none}
.dashboard-progress:not(.has-topic-progress) .prog-bar-wrap{display:none}
.dashboard-progress .prog-bar-labels{font-size:12px;margin-top:10px}
.dashboard-progress .prog-bar-labels span{font-size:12px;color:#65778b}
.dashboard-progress .daily-goal-card{background:linear-gradient(145deg,#fff9e8,#fffdf8);border-color:#f2dfb2;padding:18px;gap:12px}
.dashboard-progress .daily-goal-title{font-size:14px;font-weight:750;text-transform:none;letter-spacing:0}
.dashboard-progress .daily-goal-count{font-size:20px;color:#9e650e}
.dashboard-progress .daily-sep{color:#ae9974}
.dashboard-progress .daily-bar-track{height:9px;background:#f0e4c9;overflow:hidden}
.dashboard-progress .daily-bar-glow{display:none!important}
.dashboard-progress .daily-goal-msg{margin:0;font-size:13px;line-height:1.45;min-height:0}
.dashboard-progress .daily-milestones{display:none}
.dashboard-progress .daily-streak-row{margin:3px 0 0;padding:10px 0 0;border:0;border-top:1px solid #ebdfc4;background:transparent}
.dashboard-progress .streak-label{font-size:12px;color:#687589}
@media(max-width:650px){.sidebar .nav-icon{width:38px;height:38px}.dashboard-progress{padding:20px}}
@media(prefers-reduced-motion:reduce){.sidebar .nav-icon{transition:none}.sidebar .nav-item>a:hover .nav-icon{transform:none}}
