@layer app {
  .dashboard-playful { --ink: #151515; --muted: #636363; --primary: #171717; --blue: #eaf4ff; --line: #e4e4e2; --line-strong: #b8b8b4; --fun-lime: #d6fc76; --fun-blue: #eaf4ff; background: #dddeda; color: var(--ink); }
  .dashboard-playful::before { content: ""; position: fixed; z-index: -1; width: 36vw; height: 36vw; left: -17vw; top: -18vw; background: #edffb3; border-radius: 43% 57% 67% 33%; transform: rotate(18deg); }
  .dashboard-playful .app-layout { max-width: 1540px; margin: 28px auto; min-height: calc(100vh - 56px); grid-template-columns: 76px minmax(0, 1fr); gap: 36px; padding: 32px; background: #f5f5f3; border: 2px solid white; border-radius: 48px; }
  .dashboard-playful .app-layout:has(.app-sidebar.is-collapsed) { grid-template-columns: 76px minmax(0, 1fr); }
  .dashboard-playful .app-sidebar { background: #080808; border-radius: 44px; top: 32px; padding: 20px 10px; min-height: 580px; height: calc(100vh - 120px); max-height: 850px; overflow: visible; }
  .dashboard-playful .app-sidebar-header { justify-content: center; }
  .dashboard-playful .app-sidebar .brand { padding: 4px; }
  .dashboard-playful .app-sidebar .brand img { filter: invert(1); width: 38px; height: 38px; }
  .dashboard-playful .app-sidebar .brand span, .dashboard-playful .sidebar-toggle, .dashboard-playful .app-sidebar-plan { display: none; }
  .dashboard-playful .app-sidebar-nav { gap: 18px; margin-top: 42px; }
  .dashboard-playful .app-nav-link { width: 52px; height: 52px; justify-content: center; padding: 14px; border-radius: 50%; color: white; }
  .dashboard-playful .app-nav-link img { filter: invert(1); width: 22px; height: 22px; }
  .dashboard-playful .app-sidebar-nav .app-nav-link.active:nth-child(1) { view-transition-name: sidebar-today; }
  .dashboard-playful .app-sidebar-nav .app-nav-link.active:nth-child(2) { view-transition-name: sidebar-courses; }
  .dashboard-playful .app-sidebar-nav .app-nav-link.active:nth-child(3) { view-transition-name: sidebar-calendar; }
  .dashboard-playful .app-sidebar-nav .app-nav-link.active:nth-child(4) { view-transition-name: sidebar-settings; }
  .dashboard-playful .app-nav-link.active { background: white; color: #080808; }
  .dashboard-playful .app-nav-link.active img { filter: none; }
  .dashboard-playful .app-nav-link:hover { background: #303030; }
  .dashboard-playful .app-nav-link.active:hover { background: var(--fun-lime); }
  .dashboard-playful .app-nav-link span { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  ::view-transition-group(*) { animation: none; }
  ::view-transition-old(*), ::view-transition-new(*) { animation-duration: 160ms; animation-timing-function: ease; }
  ::view-transition-old(*):only-child { animation: sidebar-dissolve 180ms cubic-bezier(0.23, 1, 0.32, 1) both; }
  ::view-transition-new(*):only-child { animation: sidebar-bloom 280ms cubic-bezier(0.23, 1, 0.32, 1) both; }
  ::view-transition-old(root) { animation: none; opacity: 0; }
  ::view-transition-new(root) { animation: none; }
  @keyframes sidebar-dissolve {
    from { opacity: 1; transform: scale(1); clip-path: circle(75%); }
    to { opacity: 0; transform: scale(0.9); clip-path: circle(12%); }
  }
  @keyframes sidebar-bloom {
    from { opacity: 0; transform: scale(0.9); clip-path: circle(12%); }
    65% { opacity: 1; transform: scale(1.08); clip-path: circle(75%); }
    to { opacity: 1; transform: scale(1); clip-path: circle(75%); }
  }
  @media (prefers-reduced-motion: reduce) {
    .dashboard-playful .app-sidebar-nav .app-nav-link { view-transition-name: none; }
  }
  .dashboard-playful .dashboard { width: 100%; padding: 4px 12px 28px 0; }
  .dashboard-playful .dashboard .dashboard-header { gap: 20px; align-items: center; margin-bottom: 28px; }
  .dashboard-playful .dashboard .dashboard-greeting { font-size: clamp(24px, 2.6vw, 34px); color: var(--ink); font-weight: 800; letter-spacing: -.04em; margin: 0; }
  .dashboard-playful .dashboard-greeting span { display: inline-block; margin-left: 5px; }
  .dashboard-playful .dashboard-account-link { border: 0; background: white; padding: 8px; border-radius: 50%; }
  .dashboard-playful .button { background: #151515; color: white; border-color: #151515; border-radius: 30px; box-shadow: none; font-weight: 650; }
  .dashboard-playful .button:hover { background: #333; border-color: #333; }
  .dashboard-playful .button.secondary { background: white; color: #151515; border-color: #e0e0dc; }
  .dashboard-playful .button:focus-visible, .dashboard-playful a:focus-visible, .dashboard-playful summary:focus-visible { outline: 3px solid #668619; outline-offset: 4px; }
  /* The snapshot sits under the day's topics now, so it reads as a supporting stat row rather
     than the headline: shorter cards, smaller figures. */
  .dashboard-playful .study-snapshot { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 24px 0; }
  .dashboard-playful .snapshot-card { position: relative; overflow: hidden; isolation: isolate; min-height: 116px; padding: 18px; display: flex; align-items: flex-end; background: white; border-radius: 26px 32px 24px 30px; }
  .dashboard-playful .snapshot-card strong { display: block; font-size: clamp(22px, 2.2vw, 30px); font-weight: 650; line-height: 1.1; letter-spacing: -.055em; }
  .dashboard-playful .snapshot-card strong span { margin-left: .15em; font-size: 15px; letter-spacing: -.035em; }
  .dashboard-playful .snapshot-card p { margin-top: 6px; font-size: 12px; }
  .dashboard-playful .snapshot-icon { position: absolute; top: 18px; left: 23px; display: grid; place-items: center; border-radius: 50%; width: 33px; height: 33px; background: var(--fun-lime); font-size: 20px; }
  .dashboard-playful .snapshot-progress .snapshot-icon { background: #b9dcff; }
  .dashboard-playful .snapshot-squiggle { z-index: -1; position: absolute; top: -50px; right: -32px; width: 136px; height: 150px; border: 19px solid #e8ffad; border-radius: 39% 64% 40% 60%; background: var(--fun-lime); box-shadow: 0 0 0 14px #f2ffc9; transform: rotate(23deg); }
  .dashboard-playful .snapshot-progress .snapshot-squiggle { background: #126fc4; border-color: #b9dcff; box-shadow: 0 0 0 14px #eaf4ff; transform: rotate(-24deg); }
  .dashboard-playful .snapshot-sources { border: 1.5px dashed #999b92; background: transparent; border-radius: 42px; }
  .dashboard-playful .snapshot-sources strong { font-size: 30px; }
  .dashboard-playful .snapshot-sources .snapshot-icon { background: #fff; }
  .dashboard-playful .snapshot-arrow { position: absolute; top: 22px; right: 22px; font-size: 23px; }
  .dashboard-playful .study-today { margin: 0; }
  .dashboard-playful #study-calendar { display: block; }
  .dashboard-playful .study-board { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
  .dashboard-playful .study-board-main, .dashboard-playful .study-board-side { display: grid; gap: 24px; min-width: 0; }
  .dashboard-playful .study-board-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-playful .calendar-paper, .dashboard-playful .today-paper { background: white; border-radius: 36px; padding: 25px; }
  .dashboard-playful .calendar-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
  .dashboard-playful .calendar-heading p { font-size: 12px; color: var(--muted); margin-bottom: 5px; }
  .dashboard-playful .calendar-heading h2 { font-size: 23px; letter-spacing: -.04em; }
  .dashboard-playful .calendar-stamp { font-size: 38px; transform: rotate(-14deg); }
  .dashboard-playful .study-preferences { border: 0; padding: 0; margin: 10px 0 0; }
  .dashboard-playful .study-preferences summary { font-size: 12px; font-weight: 500; color: var(--muted); }
  .dashboard-playful .study-week { margin: 20px 0 0; gap: 5px; grid-template-columns: repeat(7, minmax(0, 1fr)); }
  .dashboard-playful .study-day { padding: 13px 1px; border: 0; border-radius: 24px; background: #f6f6f4; gap: 6px; }
  .dashboard-playful .study-day.today { background: var(--fun-lime); color: #151515; }
  .dashboard-playful .study-day.selected { box-shadow: inset 0 0 0 2px var(--ink); }
  .dashboard-playful .study-day strong { font-size: 26px; font-weight: 650; }
  .dashboard-playful .study-day span { font-size: 11px; }
  .dashboard-playful .study-day small { font-size: 9px; color: #53534d; }
  .dashboard-playful .today-paper .study-section-heading { margin-bottom: 20px; }
  .dashboard-playful .study-section-heading h2 { font-size: 25px; letter-spacing: -.05em; }
  .dashboard-playful .study-topic-list { margin: 0; gap: 14px; }
  .dashboard-playful .study-topic { padding: 24px; border-radius: 20px; gap: 28px; background: #f6f6f4; border: 0; }
  .dashboard-playful .study-topic:nth-child(even) { background: #f1f5e9; }
  .dashboard-playful .study-topic .eyebrow { font-size: 12px; font-weight: 500; letter-spacing: 0; text-transform: none; color: #63635c; }
  .dashboard-playful .study-topic h3 { max-width: 56ch; margin-bottom: 0; font-size: 18px; line-height: 1.4; letter-spacing: -.035em; text-wrap: pretty; }
  .dashboard-playful .study-topic-origin { margin-top: 10px; font-size: 12px; color: var(--muted); }
  .dashboard-playful .study-session-actions { flex-shrink: 0; min-width: 230px; gap: 8px; }
  .dashboard-playful .study-session-actions .button { font-size: 13px; min-height: 44px; padding: 10px 16px; border-radius: 12px; }
  .dashboard-playful .study-session-start {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    width: 100%;
    justify-content: space-between;
    gap: 24px;
    background: linear-gradient(115deg, var(--fun-lime), #b5f5a2);
    border-color: transparent;
    color: var(--ink);
    box-shadow: 0 4px 0 #a2c85a;
    transition: transform 160ms cubic-bezier(0.23, 1, 0.32, 1);
  }
  .dashboard-playful .study-session-start::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: -50% 0;
    background: linear-gradient(105deg, transparent 35%, #ffffffb3 50%, transparent 65%);
    transform: translateX(-120%);
    animation: lesson-ready-shine 2400ms cubic-bezier(0.77, 0, 0.175, 1) 3;
    pointer-events: none;
  }
  .dashboard-playful .study-session-start .study-session-start-label { font-weight: 800; }
  .dashboard-playful .study-session-start .study-session-start-arrow {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    border-radius: 50%;
    background: var(--ink);
    color: var(--fun-lime);
    font-size: 20px;
    line-height: 1;
    transition: transform 160ms cubic-bezier(0.23, 1, 0.32, 1);
  }
  .dashboard-playful .study-session-start:hover { background: linear-gradient(115deg, var(--fun-lime), #b5f5a2); border-color: transparent; }
  .dashboard-playful .study-session-start:active { transform: translateY(2px) scale(0.97); }
  @keyframes lesson-ready-shine {
    0%, 15% { transform: translateX(-120%); opacity: 0; }
    25% { opacity: 1; }
    65%, 100% { transform: translateX(120%); opacity: 0; }
  }
  @media (hover: hover) and (pointer: fine) {
    .dashboard-playful .study-session-start:hover { transform: translateY(-2px); }
    .dashboard-playful .study-session-start:hover .study-session-start-arrow { transform: rotate(45deg); }
    .dashboard-playful .study-session-start:active { transform: translateY(2px) scale(0.97); }
  }
  @media (prefers-reduced-motion: reduce) {
    .dashboard-playful .study-session-start::before { animation: none; }
    .dashboard-playful .study-session-start, .dashboard-playful .study-session-start .study-session-start-arrow { transition: none; }
    .dashboard-playful .study-session-start:hover, .dashboard-playful .study-session-start:active, .dashboard-playful .study-session-start:hover .study-session-start-arrow { transform: none; }
  }
  .dashboard-playful .study-session-actions form { margin: 0; }
  .dashboard-playful .study-completed { justify-self: center; padding-block: 6px; background: transparent; color: #4e6819; }
  .dashboard-playful .study-empty { background: #f5f5f2; padding: 20px; border-radius: 23px; margin: 0; }
  .dashboard-playful .study-warning { margin-bottom: 16px; background: #eaf4ff; font-size: 13px; }
  .dashboard-playful .nova-nudge { position: relative; background: var(--fun-lime); border-radius: 38px 42px 48px 35px; padding: 26px; overflow: hidden; }
  .dashboard-playful .nova-nudge img { display: block; width: 134px; height: 134px; object-fit: contain; margin: -8px auto 15px; transform: rotate(-8deg); }
  .dashboard-playful .nova-nudge h2, .dashboard-playful .exam-nudge h2 { font-size: 27px; font-weight: 650; line-height: 1.12; letter-spacing: -.05em; }
  .dashboard-playful .nova-nudge p { font-size: 12px; line-height: 1.7; margin: 15px 0 20px; }
  .dashboard-playful .nova-nudge .button { width: 100%; font-size: 13px; }
  .dashboard-playful .nudge-star { position: absolute; right: 21px; top: 20px; font-size: 26px; }
  .dashboard-playful .exam-nudge { background: var(--fun-blue); border-radius: 43px 34px 40px 37px; padding: 27px; position: relative; }
  .dashboard-playful .exam-icon { position: absolute; top: 22px; right: 22px; font-size: 24px; }
  .dashboard-playful .exam-nudge p { font-size: 12px; line-height: 1.7; margin: 13px 0; }
  .dashboard-playful .exam-nudge h2 { margin: 17px 0 12px; }
  .dashboard-playful .exam-nudge strong { font-size: 28px; display: block; }
  .dashboard-playful .exam-nudge a { display: inline-block; background: white; border-radius: 22px; font-size: 12px; padding: 10px 15px; margin-top: 9px; }
  .dashboard-playful .dashboard .dashboard-courses { padding: 25px; background: white; border-radius: 36px; margin-top: 24px; }
  .dashboard-playful .dashboard .course-progress-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .dashboard-playful .dashboard .course-progress-item { border: 0; background: #f5f5f2; border-radius: 22px; padding: 16px; min-height: 90px; gap: 15px; }
  .dashboard-playful .dashboard .course-progress-copy strong { font-size: 16px; }
  .dashboard-playful .dashboard .course-progress-item > .course-emoji { border-radius: 50%; }
  .dashboard-playful .dashboard .home-course-tools { gap: 12px; }
  .dashboard-playful .home-view-link { color: #151515; font-size: 12px; }
  .dashboard-playful .home-empty { background: white; border-radius: 36px; }
  .next-class-reminder { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 24px; margin-block: 24px; padding: 13px 18px; border-radius: 18px; background: #eaf4ff; }
  .next-class-reminder .eyebrow { margin-bottom: 3px; font-size: .6rem; letter-spacing: .08em; }
  .next-class-reminder strong { font-size: .92rem; overflow-wrap: anywhere; }
  .next-class-reminder time { font-size: .78rem; font-weight: 700; }
  .next-class-reminder .button { gap: 12px; font-size: .8rem; white-space: nowrap; }
  @media (max-width: 800px) {
    .next-class-reminder { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 20px; }
    .next-class-reminder time { grid-column: 1; }
    .next-class-reminder .button { grid-column: 2; grid-row: 1 / 3; }
  }
  @media (max-width: 600px) {
    .next-class-reminder { grid-template-columns: minmax(0, 1fr); padding: 20px; }
    .next-class-reminder .button { grid-column: 1; grid-row: auto; justify-self: start; margin-top: 8px; }
  }
  .home-setup { display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; align-items: center; margin-top: 24px; padding: clamp(24px, 4vw, 56px); border-radius: 36px; background: white; }
  .home-setup-intro h2 { margin-top: 16px; font-size: clamp(30px, 3.5vw, 48px); line-height: 1.12; letter-spacing: -.045em; }
  .home-setup-intro > p:not(.eyebrow) { max-width: 42ch; margin-top: 20px; font-size: .95rem; line-height: 1.65; }
  .home-setup-intro .button { margin-top: 28px; gap: 20px; }
  .home-setup-intro > p.home-setup-note { font-size: .8rem; color: var(--muted); }
  .home-setup-preview { padding: 32px; border-radius: 28px; background: #eaf4ff; }
  .home-setup-preview h3 { font-size: 1.55rem; line-height: 1.25; letter-spacing: -.035em; }
  .home-setup-preview ol { display: grid; gap: 24px; margin: 28px 0 0; padding: 0; list-style: none; }
  .home-setup-preview li { display: flex; align-items: flex-start; gap: 16px; }
  .home-setup-preview li > span { display: grid; width: 36px; height: 36px; flex-shrink: 0; place-items: center; border-radius: 50%; background: #d6fc76; color: #151515; font-size: .75rem; font-weight: 800; }
  .home-setup-preview strong { display: block; font-size: .88rem; }
  .home-setup-preview li p { margin-top: 5px; font-size: .8rem; line-height: 1.5; }
  @media (max-width: 800px) {
    .home-setup { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    .home-setup-preview { padding: 24px; }
  }
  @media (max-width: 1100px) {
    .dashboard-playful .app-layout { padding: 24px; gap: 24px; }
    .dashboard-playful .study-board { gap: 18px; }
    .dashboard-playful .calendar-paper, .dashboard-playful .today-paper { padding: 20px; }
    .dashboard-playful .nova-nudge, .dashboard-playful .exam-nudge { padding: 23px; }
    .dashboard-playful .study-snapshot { gap: 16px; }
    .dashboard-playful .snapshot-card { padding: 18px; min-height: 116px; }
    .dashboard-playful .snapshot-squiggle { right: -67px; }
  }
  @media (max-width: 900px) {
    .dashboard-playful .app-layout { display: block; margin: 0; padding: 0; border: 0; border-radius: 0; }
    .dashboard-playful .app-sidebar { display: none; }
    .dashboard-playful .dashboard { padding: 26px 20px; }
    .dashboard-playful .app-mobile-header { background: #f5f5f3; border-color: #e6e6e1; }
    .dashboard-playful .nova-nudge img { width: 100px; height: 100px; }
    .dashboard-playful .nova-nudge h2 br, .dashboard-playful .exam-nudge h2 br { display: none; }
  }
  @media (max-width: 600px) {
    .dashboard-playful .dashboard { padding: 25px 16px; }
    .dashboard-playful .dashboard .dashboard-header { flex-direction: row; align-items: center; }
    .dashboard-playful .dashboard .dashboard-tools { width: auto; }
    .dashboard-playful .dashboard .dashboard-tools > .button { display: none; }
    .dashboard-playful .study-snapshot { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
    .dashboard-playful .snapshot-card { min-height: 104px; padding: 16px; border-radius: 22px; }
    .dashboard-playful .snapshot-card strong { font-size: 22px; }
    .dashboard-playful .snapshot-card strong span { font-size: 14px; }
    .dashboard-playful .snapshot-card p { font-size: 11px; }
    .dashboard-playful .snapshot-sources { grid-column: 1 / -1; min-height: 90px; align-items: center; padding-left: 65px; border-radius: 26px; }
    .dashboard-playful .snapshot-sources strong { font-size: 23px; }
    .dashboard-playful .snapshot-sources .snapshot-icon { left: 18px; top: 27px; }
    .dashboard-playful .snapshot-sources p { margin-top: 4px; }
    .dashboard-playful .calendar-paper, .dashboard-playful .today-paper { border-radius: 29px; padding: 19px; }
    .dashboard-playful .calendar-heading h2 { font-size: 21px; }
    .dashboard-playful .study-week { gap: 3px; }
    .dashboard-playful .study-day { padding: 12px 0; border-radius: 17px; }
    .dashboard-playful .study-day strong { font-size: 21px; }
    .dashboard-playful .study-day span { font-size: 9px; }
    .dashboard-playful .study-day small { font-size: 7px; }
    .dashboard-playful .study-topic { padding: 18px; border-radius: 20px; gap: 12px; }
    .dashboard-playful .study-session-actions { min-width: 0; grid-template-columns: minmax(0, 1fr); }
    .dashboard-playful .study-board-side { grid-template-columns: minmax(0, 1fr); }
    .dashboard-playful .nova-nudge { padding: 25px; }
    .dashboard-playful .dashboard .course-progress-list { grid-template-columns: 1fr; }
    .dashboard-playful .dashboard .dashboard-courses { padding: 20px; border-radius: 29px; }
    .dashboard-playful .dashboard .dashboard-panel-heading { flex-wrap: wrap; gap: 12px; }
  }
}

@layer app {
  .dashboard-playful .app-main > .container { width: 100%; padding-inline: 0 12px; }
  .dashboard-playful .app-main .library-page,
  .dashboard-playful .app-main .settings-page,
  .dashboard-playful .app-main .course-page,
  .dashboard-playful .app-main .study-page { max-width: none; padding-top: 12px; }
  .dashboard-playful .app-main .library-header h1,
  .dashboard-playful .app-main .settings-header h1,
  .dashboard-playful .app-main .course-hero h1 { font-size: clamp(28px, 3vw, 38px); letter-spacing: -.045em; }
  .dashboard-playful .app-main .course-progress-item,
  .dashboard-playful .app-main .summary-library-card,
  .dashboard-playful .app-main .dashboard-panel,
  .dashboard-playful .app-main .settings-panel,
  .dashboard-playful .app-main .course-setup-card,
  .dashboard-playful .app-main .course-materials,
  .dashboard-playful .app-main .study-exams,
  .dashboard-playful .app-main .study-records,
  .dashboard-playful .app-main .study-preferences { border-radius: 30px; border-color: transparent; background: white; }
  .dashboard-playful .app-main .course-progress-item { padding: 24px; height: 200px; }
  .dashboard-playful .app-main .course-progress-item--blue { background: #dcecff; }
  .dashboard-playful .app-main .course-progress-item--lime { background: #eaffb5; }
  .dashboard-playful .app-main .course-progress-item--gray { background: white; }
  .dashboard-playful .app-main .course-progress-item--empty { border: 1px dashed #92998b; }
  .dashboard-playful .app-main .dashboard .course-progress-item { height: auto; background: #f5f5f2; }
  .dashboard-playful .app-main .course-study-start { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-block: 24px; padding: 24px 28px; background: white; border-radius: 24px; }
  .dashboard-playful .course-study-start h2 { font-size: 1.2rem; }
  .dashboard-playful .course-study-start p { margin-top: 6px; font-size: .88rem; }
  .dashboard-playful .course-study-start .button { flex-shrink: 0; }
  @media (max-width: 600px) { .dashboard-playful .app-main .course-study-start { align-items: stretch; flex-direction: column; padding: 22px; } }
  .dashboard-playful .app-main .settings-group { padding: 30px; gap: 24px; grid-template-columns: 140px minmax(0, 1fr); }
  .dashboard-playful .app-main .settings-panel fieldset { border: 1px solid var(--line); border-radius: 18px; padding: 16px; }
  .dashboard-playful .app-main .settings-panel select { width: 100%; min-height: 44px; background: white; color: var(--ink); border: 1px solid var(--line); border-radius: 12px; padding: 8px; font: inherit; }
  .dashboard-playful .app-main .settings-plan { border-radius: 22px; }
  .dashboard-playful .app-main .course-setup { max-width: 720px; }
  .dashboard-playful .app-main .lesson-page,
  .dashboard-playful .app-main .summary-page { background: white; border-radius: 30px; padding: 28px; }
  .dashboard-playful .app-main .lesson-page { max-width: none; }
  @media (max-width: 1100px) {
    .dashboard-playful .app-main .settings-layout { grid-template-columns: minmax(0, 1fr); }
    .dashboard-playful .app-main .settings-sidebar { position: static; }
    .dashboard-playful .app-main .lesson-layout { grid-template-columns: minmax(0, 1fr); }
    .dashboard-playful .app-main .nova-panel { position: static; max-height: none; }
  }
  @media (max-width: 900px) {
    .dashboard-playful .app-main > .container { width: calc(100% - 32px); padding-inline: 0; }
    .dashboard-playful .app-main > .dashboard { width: 100%; padding-inline: 16px; }
  }
  @media (max-width: 600px) {
    .dashboard-playful .app-main .settings-group { grid-template-columns: minmax(0, 1fr); padding: 22px; gap: 18px; }
    .dashboard-playful .app-main .lesson-page,
    .dashboard-playful .app-main .summary-page { padding: 20px; }
  }
  @media print {
    .dashboard-playful { background: white; }
    .dashboard-playful::before { display: none; }
    .dashboard-playful .app-layout { display: block; border: 0; padding: 0; margin: 0; min-height: 0; border-radius: 0; }
    .dashboard-playful .app-sidebar, .dashboard-playful .app-mobile-header { display: none !important; }
    .dashboard-playful .app-main .lesson-page,
    .dashboard-playful .app-main .summary-page { padding: 0; width: 100%; }
  }
}
