/* Academia Yamilet · Shell funcional hermano de Academia AG · v21 */
body:has(.dashboard:not(.hidden)) .dashboard-main::before{display:none!important}
body:has(.dashboard:not(.hidden)) .dashboard-main{grid-template-columns:minmax(0,1fr) 320px!important;padding-top:0!important}.academy-topbar{grid-column:1/-1;min-height:76px;margin:0 -34px 12px;padding:0 34px;display:grid;grid-template-columns:minmax(180px,.65fr) minmax(320px,1.25fr) minmax(190px,.55fr);align-items:center;gap:20px;position:sticky;top:0;z-index:40;background:rgba(255,255,255,.91);border-bottom:1px solid rgba(18,63,53,.08);backdrop-filter:blur(22px) saturate(140%)}.academy-topbar-brand small{display:block;color:#0c6551;font-size:9px;font-weight:900;letter-spacing:.17em;text-transform:uppercase}.academy-topbar-brand strong{display:block;margin-top:4px;font:500 16px Georgia,"Times New Roman",serif;color:#303b35}.academy-search-wrap{position:relative}.academy-search{width:100%;height:44px;padding:0 45px 0 42px;border:1px solid rgba(18,63,53,.11);border-radius:14px;background:#fff;color:#303b35;font-size:13px;box-shadow:0 5px 18px rgba(18,63,53,.025)}.academy-search-wrap::before{content:"⌕";position:absolute;left:15px;top:8px;color:#718078;font-size:21px;z-index:2}.academy-search-clear{position:absolute;right:8px;top:8px;width:28px;height:28px;border:0;border-radius:9px;background:transparent;color:#718078;cursor:pointer;font-size:18px}.academy-search-results{position:absolute;left:0;right:0;top:51px;z-index:80;max-height:380px;overflow:auto;padding:8px;border:1px solid rgba(18,63,53,.10);border-radius:16px;background:#fff;box-shadow:0 22px 55px rgba(18,63,53,.15)}.academy-search-result{display:grid;gap:2px;width:100%;padding:11px 12px;border:0;border-radius:11px;background:transparent;text-align:left;cursor:pointer;color:#35423b}.academy-search-result:hover{background:#f2f7f3}.academy-search-result strong{font-size:13px}.academy-search-result small{font-size:10px;color:#7a857e;text-transform:uppercase;letter-spacing:.06em}.academy-topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px}.academy-icon-btn{width:39px;height:39px;border:1px solid rgba(18,63,53,.10);border-radius:50%;background:#fff;color:#123f35;display:grid;place-items:center;cursor:pointer;font-weight:800}.academy-avatar{width:41px;height:41px;border-radius:50%;border:2px solid rgba(18,63,53,.24);background:#123f35;color:#fff;display:grid;place-items:center;font:600 15px Georgia,serif;overflow:hidden}.academy-avatar img{width:100%;height:100%;object-fit:cover}.sidebar nav>.nav-item{display:none!important}.sidebar nav>.shell-nav-item{display:flex!important}.sidebar::after{display:none!important}.shell-sidebar-label{margin:7px 11px 5px;color:#8a968f;font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.shell-nav-item{position:relative;align-items:center;gap:12px;min-height:47px;width:100%;padding:10px 12px!important;border:1px solid transparent!important;border-radius:14px!important;background:transparent!important;color:#526057!important;text-align:left;font:680 13px Inter,system-ui,sans-serif;cursor:pointer;transition:.18s ease}.shell-nav-item:hover,.shell-nav-item.active{background:#fff!important;border-color:rgba(18,63,53,.15)!important;color:#27372f!important;box-shadow:0 10px 24px rgba(18,63,53,.065);transform:translateX(2px)}.shell-nav-item.active::after{content:"";position:absolute;left:-15px;top:11px;bottom:11px;width:3px;border-radius:99px;background:#123f35}.shell-nav-icon{width:29px;height:29px;flex:0 0 29px;display:grid;place-items:center;border:1px solid rgba(18,63,53,.11);border-radius:9px;background:#f6fbf8;color:#0c6551}.shell-nav-icon svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.shell-nav-item.active .shell-nav-icon{background:#123f35;color:#fff;border-color:#123f35;box-shadow:0 6px 15px rgba(18,63,53,.17)}.shell-nav-secondary{margin-top:12px!important;border-color:rgba(216,164,58,.22)!important;background:#fffdf7!important}.shell-nav-secondary .shell-nav-icon{color:#9a7623;background:#fff9e8}.shell-nav-admin{margin-top:7px!important;border-color:rgba(18,63,53,.09)!important;background:rgba(255,255,255,.58)!important}.side-brand{margin-bottom:2px!important}.shell-page{grid-column:1/-1;margin:0!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.shell-page.hidden{display:none!important}.shell-page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin:6px 0 23px}.shell-page-heading h2{margin:5px 0 7px!important;font-size:clamp(38px,4.6vw,62px)!important;line-height:.96!important;letter-spacing:-.035em;color:#303a35}.shell-page-heading p{margin:0;color:#707a73;line-height:1.55;max-width:760px}.shell-summary{display:flex;gap:11px;flex-wrap:wrap}.shell-summary article{min-width:120px;padding:14px 17px;border:1px solid rgba(18,63,53,.09);border-radius:17px;background:#fff;box-shadow:0 10px 25px rgba(18,63,53,.05);text-align:center}.shell-summary strong{display:block;font:600 25px Georgia,serif;color:#123f35}.shell-summary span{display:block;margin-top:3px;color:#7d867f;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.shell-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.shell-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.shell-card{position:relative;padding:20px;border:1px solid rgba(18,63,53,.09);border-radius:20px;background:#fff;box-shadow:0 13px 32px rgba(18,63,53,.055);overflow:hidden}.shell-card h3{margin:7px 0 7px;font-size:21px;color:#303a35}.shell-card p{margin:0;color:#747d77;font-size:13px;line-height:1.55}.shell-card .eyebrow{color:#b28527}.shell-card-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px}.shell-pill{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;background:#eef5f0;color:#315a49;font-size:10px;font-weight:850}.shell-pill.gold{background:#fff5da;color:#8d6c20}.shell-pill.muted{background:#f1f2ef;color:#737a75}.shell-empty{min-height:170px;display:grid;place-items:center;text-align:center;padding:28px;border:1px dashed rgba(18,63,53,.16);border-radius:20px;background:rgba(255,255,255,.54);color:#747d77}.shell-empty strong{display:block;margin-bottom:7px;font:500 22px Georgia,serif;color:#3a4840}.shell-action{min-height:40px;padding:0 15px;border:1px solid rgba(18,63,53,.12);border-radius:12px;background:#fff;color:#123f35;font-weight:800;cursor:pointer}.shell-action.primary{background:#123f35;color:#fff;border-color:#123f35}.shell-action:disabled{opacity:.5;cursor:not-allowed}.shell-status-line{font-size:12px;color:#6f7a73;margin-top:10px}.shell-status-line.ok{color:#26704e}.shell-status-line.error{color:#9a4e38}.library-card{display:grid;grid-template-columns:72px minmax(0,1fr);gap:15px;align-items:center}.library-icon{width:68px;height:82px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(145deg,#123f35,#2f6657);color:#f4d172;font:600 24px Georgia,serif}.library-meta{font-size:10px;color:#8a928c;text-transform:uppercase;letter-spacing:.07em}.calendar-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:20px}.calendar-day{min-height:78px;padding:11px;border:1px solid rgba(18,63,53,.08);border-radius:14px;background:#fff}.calendar-day.today{border-color:rgba(216,164,58,.5);background:#fffaf0}.calendar-day strong{display:block;font:600 22px Georgia,serif;color:#123f35}.calendar-day span{font-size:9px;color:#818a84;text-transform:uppercase;letter-spacing:.08em}.calendar-event{display:grid;grid-template-columns:94px 1fr auto;gap:15px;align-items:center;padding:16px 18px;border:1px solid rgba(18,63,53,.09);border-radius:17px;background:#fff}.calendar-event-date{font:600 18px Georgia,serif;color:#123f35}.calendar-event small{display:block;color:#808981;margin-top:3px}.profile-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.profile-identity{text-align:center}.profile-big-avatar{width:108px;height:108px;margin:4px auto 15px;border-radius:28px;background:#123f35;color:#fff;display:grid;place-items:center;font:600 36px Georgia,serif;overflow:hidden}.profile-big-avatar img{width:100%;height:100%;object-fit:cover}.profile-form{display:grid;gap:14px}.profile-form label{font-size:11px}.profile-form input{background:#fff}.admin-launcher{cursor:pointer;transition:.18s ease}.admin-launcher:hover{transform:translateY(-3px);box-shadow:0 20px 40px rgba(18,63,53,.10)}.admin-launcher-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:#e6f0ea;color:#123f35;font-size:20px;margin-bottom:14px}.dashboard-main.shell-route-mode>.dash-head,.dashboard-main.shell-route-mode>.stats,.dashboard-main.shell-route-mode>#continuar,.dashboard-main.shell-route-mode>#mis-cursos,.dashboard-main.shell-route-mode>#reservas{display:none!important}.dashboard-main.shell-route-mode>.shell-page:not(.hidden){display:block!important}.dashboard-main.shell-route-mode>.content-admin:not(.hidden),.dashboard-main.shell-route-mode>.students-admin:not(.hidden),.dashboard-main.shell-route-mode>[data-course-view]:not(.hidden),.dashboard-main.shell-route-mode>[data-lesson-view]:not(.hidden){grid-column:1/-1!important;margin:0!important}.dashboard-main.shell-courses-mode>.dash-head,.dashboard-main.shell-courses-mode>.stats,.dashboard-main.shell-courses-mode>#continuar,.dashboard-main.shell-courses-mode>#reservas{display:none!important}.dashboard-main.shell-courses-mode>#mis-cursos{grid-column:1/-1!important;display:block!important;margin:0!important}@media(max-width:1080px){.academy-topbar{grid-template-columns:1fr minmax(280px,1.2fr)}.academy-topbar-actions{display:none}.shell-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-shell{grid-template-columns:1fr}.dashboard-main{grid-template-columns:1fr!important}#reservas{grid-column:1!important;grid-row:auto!important}}@media(max-width:900px){.academy-topbar{margin:0 -20px 12px;padding:0 20px;grid-template-columns:1fr}.academy-topbar-brand{display:none}.academy-search-wrap{width:100%}.shell-page-heading{align-items:flex-start;flex-direction:column}.shell-grid,.shell-grid.two{grid-template-columns:1fr}.calendar-strip{grid-template-columns:repeat(4,1fr)}}@media(max-width:580px){.academy-topbar{margin:0 -14px 12px;padding:0 14px;min-height:66px}.calendar-strip{grid-template-columns:repeat(2,1fr)}.calendar-event{grid-template-columns:1fr}.shell-page-heading h2{font-size:38px!important}}