/* Elevare Academy — experiência visual pós-login.
   Isolada da landing pública e das regras de negócio. */

/* A página pública precisa desaparecer de verdade depois do login. */
#authScreen.elevare-premium-entry.hidden{display:none!important}

/* Shell interno */
#appShell{
  --lp-sidebar:var(--sidebar);
  grid-template-columns:var(--lp-sidebar) minmax(0,1fr);
  background:
    radial-gradient(circle at 82% 0%,rgba(46,210,203,.035),transparent 28rem),
    linear-gradient(180deg,#07131f 0%,#081522 100%);
  transition:grid-template-columns .24s ease;
}
#appShell .sidebar{
  width:var(--lp-sidebar);
  transition:width .24s ease,padding .24s ease;
  background:
    radial-gradient(circle at 30% 0%,rgba(48,221,212,.05),transparent 20rem),
    linear-gradient(180deg,#091827 0%,#06111d 100%);
  box-shadow:18px 0 50px rgba(0,0,0,.08);
}
#appShell.sidebar-collapsed{--lp-sidebar:82px}
#appShell.sidebar-collapsed .sidebar{padding-left:10px;padding-right:10px}
#appShell.sidebar-collapsed .side-brand>div:last-child,
#appShell.sidebar-collapsed .nav-item b,
#appShell.sidebar-collapsed .sidebar-plan{display:none}
#appShell.sidebar-collapsed .side-brand{justify-content:center;padding-left:0;padding-right:0}
#appShell.sidebar-collapsed .nav-item{justify-content:center;padding-left:6px;padding-right:6px}
#appShell.sidebar-collapsed .nav-item span{width:38px;height:38px}
#appShell.sidebar-collapsed .workspace{min-width:0}

#appShell .topbar{
  min-height:72px;height:auto;
  padding:10px clamp(18px,2.6vw,34px);
  background:rgba(6,18,30,.82);
  border-bottom:1px solid rgba(92,154,184,.13);
  box-shadow:0 12px 32px rgba(0,0,0,.10);
}
#appShell .topbar-left{display:flex;align-items:center;gap:13px;min-width:0}
#appShell .sidebar-toggle{
  width:40px;height:40px;flex:0 0 auto;
  display:grid;place-items:center;
  border:1px solid #24425a;border-radius:13px;
  background:#0b1d2e;color:#7dded7;
  cursor:pointer;transition:.2s;
}
#appShell .sidebar-toggle:hover{border-color:#35617d;background:#10263a;color:#fff}
#appShell .sidebar-toggle span{font-size:1rem;line-height:1}
#appShell .top-identity small{color:#64849a}
#appShell .top-identity strong{font-size:.96rem;color:#edf8ff}
#appShell .search-trigger{
  border-color:#1d3b52;background:rgba(8,26,41,.78);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)
}
#appShell .icon-btn,#appShell .avatar{border-radius:14px}
#appShell .content{
  width:100%;
  max-width:1560px;
  padding:clamp(22px,3vw,42px);
}

/* Página interna não repete a landing pública */
#appShell .lp-home-hidden{display:none!important}

/* Boas-vindas da área do aluno */
#appShell .lp-home-intro{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.55fr);
  gap:16px;
  margin-bottom:16px;
}
#appShell .lp-welcome-card,
#appShell .lp-next-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(94,169,196,.18);
  box-shadow:0 26px 65px rgba(0,0,0,.16),inset 0 1px 0 rgba(255,255,255,.035);
}
#appShell .lp-welcome-card{
  min-height:355px;
  border-radius:29px;
  padding:clamp(26px,3vw,44px);
  background:
    radial-gradient(circle at 88% 18%,rgba(46,222,211,.14),transparent 22rem),
    radial-gradient(circle at 70% 130%,rgba(95,180,255,.08),transparent 28rem),
    linear-gradient(145deg,#10283d 0%,#0b1d2e 50%,#081724 100%);
}
#appShell .lp-welcome-card:before{
  content:"";
  position:absolute;right:-110px;top:-120px;width:360px;height:360px;border-radius:50%;
  border:1px solid rgba(54,221,214,.16);
  box-shadow:0 0 0 52px rgba(47,212,200,.018),0 0 0 105px rgba(47,212,200,.012);
  pointer-events:none;
}
#appShell .lp-welcome-card:after{
  content:"E";
  position:absolute;right:8%;top:17%;
  font-size:8rem;font-weight:1000;line-height:1;color:rgba(53,222,213,.055);
  transform:rotate(-5deg);
  pointer-events:none;
}
#appShell .lp-welcome-top{display:flex;justify-content:space-between;align-items:center;gap:12px;position:relative;z-index:2}
#appShell .lp-status-chip{
  border:1px solid rgba(73,220,213,.18);
  background:rgba(43,211,202,.06);
  color:#80dcd7;border-radius:999px;padding:7px 10px;
  font-size:.49rem;letter-spacing:.12em;font-weight:950
}
#appShell .lp-welcome-card h1{
  position:relative;z-index:2;
  margin:20px 0 12px;
  max-width:760px;
  font-size:clamp(2.15rem,4vw,4rem);
  line-height:.94;
  letter-spacing:-.058em;
  color:#f5fbff;
}
#appShell .lp-welcome-card h1 span{
  background:linear-gradient(90deg,#49ddd4,#90e7ff);
  -webkit-background-clip:text;background-clip:text;color:transparent
}
#appShell .lp-welcome-card>p{
  position:relative;z-index:2;
  max-width:690px;margin:0;
  color:#94aebe;font-size:.78rem;line-height:1.65
}
#appShell .lp-welcome-actions{position:relative;z-index:2;display:flex;gap:9px;margin-top:22px;flex-wrap:wrap}
#appShell .lp-stat-row{
  position:relative;z-index:2;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;max-width:640px;margin-top:28px
}
#appShell .lp-stat-row>div{
  min-height:78px;padding:12px 14px;border-radius:16px;
  border:1px solid rgba(105,170,197,.13);
  background:rgba(4,19,31,.38);
  backdrop-filter:blur(10px)
}
#appShell .lp-stat-row small{display:block;color:#5f8097;font-size:.48rem;letter-spacing:.1em;font-weight:950}
#appShell .lp-stat-row b{display:inline-block;margin-top:5px;color:#f7fcff;font-size:1.18rem}
#appShell .lp-stat-row span{margin-left:5px;color:#6f8ba0;font-size:.55rem}

#appShell .lp-next-card{
  min-height:355px;
  border-radius:29px;padding:24px;
  display:flex;flex-direction:column;
  background:
    radial-gradient(circle at 90% 5%,rgba(86,191,255,.09),transparent 16rem),
    linear-gradient(155deg,#0d2235,#091827)
}
#appShell .lp-next-header{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
#appShell .lp-next-header h3{margin:8px 0 0;font-size:1.2rem;letter-spacing:-.025em}
#appShell .lp-progress-ring{
  width:84px;height:84px;border-radius:50%;flex:0 0 auto;
  display:grid;place-items:center;
  background:conic-gradient(var(--accent) var(--lp-progress),#173248 0);
  box-shadow:0 14px 35px rgba(0,0,0,.16);
  position:relative
}
#appShell .lp-progress-ring:before{
  content:"";position:absolute;width:68px;height:68px;border-radius:50%;background:#0b1e30
}
#appShell .lp-progress-ring div{position:relative;z-index:2;text-align:center}
#appShell .lp-progress-ring b{display:block;font-size:1rem;color:#fff}
#appShell .lp-progress-ring small{display:block;color:#65859a;font-size:.48rem;margin-top:1px}
#appShell .lp-next-course{
  width:100%;margin-top:auto;
  display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;text-align:left;
  border:1px solid #21435b;border-radius:17px;padding:13px;
  background:linear-gradient(145deg,#10283c,#0b1d2e);color:#dff4fb;cursor:pointer
}
#appShell .lp-next-course:hover{border-color:#33708a;background:linear-gradient(145deg,#133148,#0c2235)}
#appShell .lp-next-icon{
  width:46px;height:46px;border-radius:14px;display:grid;place-items:center;
  background:rgba(47,212,200,.10);border:1px solid rgba(47,212,200,.17);color:var(--accent)
}
#appShell .lp-next-course small{display:block;color:#5a8198;font-size:.48rem;letter-spacing:.1em;font-weight:950}
#appShell .lp-next-course b{display:block;margin-top:4px;font-size:.75rem}
#appShell .lp-next-course em{display:block;margin-top:4px;font-style:normal;color:#6f8ba0;font-size:.56rem}
#appShell .lp-next-course i{font-style:normal;color:#60ddd5;font-size:1.1rem}
#appShell .lp-next-summary{
  display:flex;justify-content:space-between;align-items:center;gap:12px;
  padding-top:13px;margin-top:12px;border-top:1px solid #19354b
}
#appShell .lp-next-summary>span{color:#6f879b;font-size:.56rem}

/* Atalhos existentes viram um hub mais limpo */
#appShell[data-lp-page="home"] .quick-actions{
  gap:11px;margin:0 0 10px
}
#appShell[data-lp-page="home"] .quick-action{
  min-height:100px;padding:16px;border-radius:18px;
  border-color:#1d3b52;background:linear-gradient(150deg,#0d2032,#0a1928);
  transition:.2s ease
}
#appShell[data-lp-page="home"] .quick-action:hover{transform:translateY(-2px);border-color:#32627d;background:#10263a}
#appShell[data-lp-page="home"] .quick-action span{margin-bottom:9px;width:34px;height:34px}

/* Cabeçalhos próprios de cada página */
#appShell .lp-page-head{
  position:relative;overflow:hidden;
  align-items:center;
  min-height:155px;
  padding:26px 28px;margin-bottom:22px;
  border:1px solid rgba(96,160,190,.15);border-radius:25px;
  background:linear-gradient(145deg,#0d2235,#091827);
  box-shadow:0 20px 50px rgba(0,0,0,.11)
}
#appShell .lp-page-head:after{
  content:"";position:absolute;right:-70px;top:-110px;width:300px;height:300px;border-radius:50%;
  border:1px solid rgba(48,216,209,.10);box-shadow:0 0 0 50px rgba(48,216,209,.018)
}
#appShell .lp-page-head>div,#appShell .lp-page-head>.head-actions,#appShell .lp-page-head>button{position:relative;z-index:2}
#appShell .lp-page-head h1{font-size:clamp(1.8rem,3vw,2.75rem)}
#appShell[data-lp-page="courses"] .lp-page-head{background:radial-gradient(circle at 88% 12%,rgba(46,213,204,.11),transparent 20rem),linear-gradient(145deg,#0f293d,#091827)}
#appShell[data-lp-page="ebooks"] .lp-page-head{background:radial-gradient(circle at 88% 12%,rgba(99,167,255,.10),transparent 20rem),linear-gradient(145deg,#10243a,#091827)}
#appShell[data-lp-page="news"] .lp-page-head{background:radial-gradient(circle at 88% 12%,rgba(67,226,197,.08),transparent 20rem),linear-gradient(145deg,#0d2834,#091827)}
#appShell[data-lp-page="community"] .lp-page-head{background:radial-gradient(circle at 88% 12%,rgba(147,123,255,.09),transparent 20rem),linear-gradient(145deg,#14223b,#091827)}
#appShell[data-lp-page="ai"] .lp-page-head{background:radial-gradient(circle at 88% 12%,rgba(77,226,218,.12),transparent 20rem),linear-gradient(145deg,#0d2936,#091827)}
#appShell[data-lp-page="profile"] .lp-page-head{background:radial-gradient(circle at 88% 12%,rgba(99,181,255,.09),transparent 20rem),linear-gradient(145deg,#102337,#091827)}

/* Melhoria visual global sem mudar conteúdo */
#appShell .card,
#appShell .course-card,
#appShell .ebook-card,
#appShell .news-card,
#appShell .path-card{
  border-color:#1d3a50;
  box-shadow:0 14px 38px rgba(0,0,0,.09);
}
#appShell .section-head{margin-top:34px}
#appShell .section-head h2{font-size:1.2rem}
#appShell .section-head small{color:#67849a}
#appShell .filter-bar{
  padding:8px;border:1px solid #1c394f;border-radius:17px;
  background:rgba(8,24,38,.52)
}
#appShell .course-grid{gap:16px}
#appShell .course-grid .course-card{border-radius:20px}
#appShell .student-social-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:24px}
#appShell .student-panel{padding:18px;border:1px solid #1e3b52;border-radius:22px;background:#0b1b2a}

@media(min-width:941px){
  #appShell:not(.sidebar-collapsed) .sidebar{width:var(--sidebar)}
}
@media(max-width:940px){
  #appShell{display:block}
  #appShell .sidebar{display:none}
  #appShell .sidebar-toggle{display:none}
  #appShell .workspace{grid-column:auto}
  #appShell .lp-home-intro{grid-template-columns:1fr}
  #appShell .lp-welcome-card,#appShell .lp-next-card{min-height:auto}
  #appShell .lp-welcome-card:after{font-size:6rem;right:3%}
  #appShell .student-social-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  #appShell .content{padding:16px 14px 88px}
  #appShell .topbar{padding:9px 14px}
  #appShell .top-identity small{display:none}
  #appShell .lp-welcome-card{padding:24px 20px;border-radius:23px}
  #appShell .lp-welcome-card h1{font-size:2.35rem}
  #appShell .lp-welcome-card>p{font-size:.72rem}
  #appShell .lp-stat-row{grid-template-columns:1fr 1fr 1fr}
  #appShell .lp-stat-row>div{padding:10px;min-height:70px}
  #appShell .lp-stat-row span{display:block;margin-left:0;margin-top:2px}
  #appShell .lp-next-card{padding:20px;border-radius:23px}
  #appShell .lp-page-head{min-height:0;padding:22px 19px;border-radius:21px}
  #appShell .lp-page-head .head-actions{margin-top:14px}
  #appShell .lp-page-head{display:block}
}