/* Canonical shared learning-app UI layer. App-specific colors come from local theme tokens. */
/* Shared canvas and component geometry. */
.learning-app-shell{width:min(920px,calc(100% - 32px));margin:24px auto;color:var(--ink,var(--text,#0f172a));font:16px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.learning-app-shell .topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line,var(--border,#e2e8f0));border-radius:20px;background:rgba(255,255,255,.9);box-shadow:0 18px 55px rgba(15,23,42,.10);backdrop-filter:blur(12px)}
.learning-app-shell .dashboard-card,.learning-app-shell .home-card{margin-top:18px;padding:30px;border:1px solid var(--line,var(--border,#e2e8f0));border-radius:26px;background:rgba(255,255,255,.9);box-shadow:0 18px 55px rgba(15,23,42,.10)}
.learning-app-shell .hero,.learning-app-shell .home-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.learning-app-shell h1{margin:0;font-size:clamp(2rem,5vw,3rem);line-height:1.05;letter-spacing:-.035em}
.learning-app-shell .hero-mark,.learning-app-shell .home-mark{width:84px;height:84px;object-fit:contain}
.learning-app-shell .analytics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:14px}
.learning-app-shell .analytics-card{min-height:112px;padding:14px;border:1px solid var(--line,var(--border,#e2e8f0));border-radius:16px;background:var(--surface-soft,#fbfffc);background-image:none;transition:transform .18s ease,box-shadow .18s ease}
.learning-app-shell .analytics-card span{display:block!important;color:var(--muted)!important;font-size:.7rem!important;line-height:1.2!important;font-weight:900!important;letter-spacing:.07em!important;text-transform:uppercase!important}
.learning-app-shell .analytics-card strong{display:block!important;margin:8px 0 2px!important;font-size:1.45rem!important;line-height:1.1!important}
.learning-app-shell .analytics-card small{display:block!important;color:var(--muted)!important;font-size:.78rem!important;line-height:1.2!important}
.learning-app-shell .analytics-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(15,23,42,.12)}
.learning-app-shell .vertex-overview-cards,.learning-app-shell .home-overview{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0}
.learning-app-shell .vertex-overview-cards article,.learning-app-shell .home-overview-card{min-height:100px;padding:16px;border:1px solid var(--line,var(--border,#e2e8f0));border-radius:16px;background:var(--surface-soft,#fbfffc);transition:transform .18s ease,box-shadow .18s ease}
.learning-app-shell .vertex-overview-cards article:hover,.learning-app-shell .home-overview-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(15,23,42,.12)}
.learning-app-shell .module-empty{padding:28px;border:1px dashed var(--line,#a7cbb0);border-radius:18px;background:var(--surface-soft,#fbfffc)}
@media(max-width:720px){.learning-app-shell{width:calc(100% - 20px);margin:12px auto}.learning-app-shell .analytics-grid{grid-template-columns:repeat(2,1fr)}.learning-app-shell .vertex-overview-cards,.learning-app-shell .home-overview{grid-template-columns:1fr}}
.learning-app-shell .level-switch{display:inline-flex;margin:22px 0 18px;padding:4px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft,#fbfffc)}
.learning-app-shell .level-tab{border:0;border-radius:10px;padding:10px 16px;background:transparent;color:var(--muted);font-weight:850;cursor:pointer;transition:transform .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease}
.learning-app-shell .level-tab:hover{transform:translateY(-2px);background:var(--brand-soft,#f1faf3)}
.learning-app-shell .level-tab.is-active{background:var(--surface,#fff);color:var(--brand-strong,var(--brand));box-shadow:0 4px 12px rgba(20,83,45,.08)}
.learning-app-shell .home-actions{display:flex;gap:10px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.learning-app-shell .home-start-btn,.learning-app-shell .home-settings-btn{min-height:46px}
.learning-app-shell .home-start-btn:disabled{opacity:.55;cursor:not-allowed}
.learning-app-shell .dashboard-analytics{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.learning-app-shell .modal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.learning-app-shell .modal-heading h2{margin:0;letter-spacing:-.03em}
.learning-app-shell .modal-heading p{margin:6px 0 0;color:var(--muted)}
.learning-app-shell .premium-request-divider{display:flex;align-items:center;gap:10px;margin:16px 0 10px;color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.learning-app-shell .premium-request-divider:before,.learning-app-shell .premium-request-divider:after{content:"";height:1px;flex:1;background:var(--line)}
.learning-app-shell .premium-request-toggle{width:100%;justify-content:center}
.learning-app-shell .premium-request-form{display:grid;gap:12px;margin-top:12px;padding:13px;border:1px solid var(--line);border-radius:14px;background:var(--brand-soft,#f7fdf8)}
.learning-app-shell .premium-request-form label{display:grid;gap:6px}
.learning-app-shell .premium-request-form input{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff);color:var(--ink)}
.learning-app-shell .premium-request-form button{width:100%;justify-content:center}
.learning-app-shell .feedback-modal,.learning-app-shell .modal.compact{width:min(540px,100%);padding:20px;border-radius:20px;background:var(--surface,#fff);box-shadow:0 24px 60px rgba(0,0,0,.28)}
/* Cross-app shell parity: Claro keeps its legacy DOM/runtime IDs, but its visible
   shell follows the same geometry as Vertex.  Brand tokens remain app-specific. */
.app.learning-app-shell{width:min(920px,calc(100% - 32px));margin:24px auto;display:flex;flex-direction:column;gap:18px}
.app.learning-app-shell .topbar{position:sticky;top:14px;z-index:40;min-height:70px;padding:14px 16px;border-radius:20px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px)}
.app.learning-app-shell .brand{display:flex;flex-direction:row;align-items:center;gap:0;min-width:0}
.app.learning-app-shell .brand-switcher{position:relative}
.app.learning-app-shell .brand-switcher-button{display:flex;align-items:center;gap:10px;min-height:42px;padding:0;border:0;background:transparent;color:var(--text,#0f172a)}
.app.learning-app-shell .brand-switcher-button .brand-mark{width:42px;height:42px;object-fit:contain}
.app.learning-app-shell .claro-brand-copy{display:grid;line-height:1.1}
.app.learning-app-shell .claro-brand-copy strong{font-size:1.15rem}
.app.learning-app-shell .claro-brand-copy #headerLevel{font-size:.77rem;color:var(--muted);font-weight:700}
.app.learning-app-shell .claro-chevron{font-size:1rem;color:var(--muted);transform:none}
.app.learning-app-shell .brand>.subtitle{display:none}
.app.learning-app-shell .top-actions{gap:10px}
.app.learning-app-shell #activeModuleChip{display:none}
.app.learning-app-shell #premiumBtn,.app.learning-app-shell #settingsBtn{height:48px;min-width:0;border-radius:12px}
.app.learning-app-shell #premiumBtn{width:auto;padding:10px 14px;font-size:16px;background:#fff;color:var(--primary-2,#1d4ed8);border:1px solid var(--keyhint-border,#bfdbfe);box-shadow:none}
.app.learning-app-shell #settingsBtn{width:auto;padding:10px 14px;font-size:16px;background:#fff;color:var(--text,#0f172a);border:1px solid var(--keyhint-border,#bfdbfe);box-shadow:none}
.app.learning-app-shell #premiumBtn:hover,.app.learning-app-shell #settingsBtn:hover{background:var(--keyhint-bg,#eff6ff);box-shadow:0 10px 20px rgba(37,99,235,.12)}
.app.learning-app-shell .brand-switcher-button:hover{transform:none;box-shadow:none;background:transparent}
.app.learning-app-shell #dashboardAnalytics .analytics-card{background:var(--surface-2,#fbfffc);background-image:none;box-shadow:none}
.app.learning-app-shell #dashboardAnalytics .analytics-card:hover{box-shadow:0 12px 24px rgba(15,23,42,.10)}
.app.learning-app-shell button.btn,.app.learning-app-shell button.icon-btn,.app.learning-app-shell button.icon-button{font:inherit;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}
.app.learning-app-shell button.btn.primary,.app.learning-app-shell button.primary{border-radius:12px;padding:10px 14px;font-weight:800}
.app.learning-app-shell button.btn.ghost,.app.learning-app-shell button.secondary,.app.learning-app-shell button.icon-btn{border-radius:12px;background:#fff;color:var(--text,#0f172a);border:1px solid var(--border,#e2e8f0)}
.app.learning-app-shell button.btn:hover,.app.learning-app-shell button.icon-btn:hover,.app.learning-app-shell button.icon-button:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(15,23,42,.12)}
.app.learning-app-shell button.btn:active,.app.learning-app-shell button.icon-btn:active,.app.learning-app-shell button.icon-button:active{transform:translateY(1px)}
.app.learning-app-shell .feedback-fab,.app.learning-app-shell #feedbackButton{position:fixed;left:18px;bottom:18px;border:1px solid var(--keyhint-border,#bfdbfe);border-radius:99px;padding:10px 14px;background:#fff;color:var(--primary-2,#1d4ed8);box-shadow:0 8px 20px rgba(15,23,42,.14);font-weight:850;cursor:pointer}
.app.learning-app-shell .modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--border,#e2e8f0)}
.app.learning-app-shell .modal-head>div:first-child{display:grid;gap:4px}
.app.learning-app-shell .modal-head [id$="Title"]{font-size:1.4rem;line-height:1.1;letter-spacing:-.03em}
.app.learning-app-shell .modal-actions,.app.learning-app-shell .feedback-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.app.learning-app-shell .home-card{margin-top:0;padding:30px;border-radius:26px;border:1px solid var(--border,#e2e8f0);background:rgba(255,255,255,.9);box-shadow:0 18px 55px rgba(15,23,42,.10)}
.app.learning-app-shell .home-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.app.learning-app-shell .home-hero h1{margin:0;font-size:clamp(2rem,5vw,3rem);line-height:1.05;letter-spacing:-.035em}
.app.learning-app-shell .home-intro{margin:10px 0 0;color:var(--muted);max-width:52ch}
.app.learning-app-shell .home-mark{width:84px;height:84px;object-fit:contain}
.app.learning-app-shell .home-overview{margin:22px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.app.learning-app-shell .home-overview-card{padding:16px;border:1px solid var(--border,#e2e8f0);border-radius:16px;background:var(--surface-2,#fbfffc)}
.app.learning-app-shell .home-overview-card strong{display:block;margin:8px 0 3px;font-size:1.05rem}
.app.learning-app-shell .home-overview-card small{color:var(--muted)}
.app.learning-app-shell .home-help{margin-top:18px;padding:14px 16px;border-radius:16px;background:var(--brand-soft,#f1f5ff)}
@media(max-width:720px){.app.learning-app-shell{width:min(100% - 20px,920px);margin:12px auto}.app.learning-app-shell .topbar{align-items:flex-start}.app.learning-app-shell .top-actions{flex-wrap:wrap;justify-content:flex-end}.app.learning-app-shell .home-overview{grid-template-columns:1fr}}
/* Final shared geometry wins over legacy app styles. */
.learning-app-shell .analytics-grid{grid-template-columns:repeat(5,1fr);gap:12px}
.learning-app-shell .analytics-card{min-height:112px;padding:14px;border-radius:16px;background:var(--surface-soft,#fbfffc)!important;background-image:none!important;box-shadow:none}
.learning-app-shell .analytics-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(15,23,42,.12)}
.learning-app-shell .home-overview,.learning-app-shell .vertex-overview-cards{grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0}
.learning-app-shell .home-overview-card,.learning-app-shell .vertex-overview-cards article{min-height:100px;padding:16px;border-radius:16px;background:var(--surface-soft,#fbfffc)!important;transition:transform .18s ease,box-shadow .18s ease}
.learning-app-shell .home-overview-card:hover,.learning-app-shell .vertex-overview-cards article:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(15,23,42,.12)}
@media(max-width:720px){.learning-app-shell .analytics-grid{grid-template-columns:repeat(2,1fr)}.learning-app-shell .home-overview,.learning-app-shell .vertex-overview-cards{grid-template-columns:1fr}}
body:has(.learning-app-shell){padding:0!important}
.learning-app-shell .brand-switcher-button,.learning-app-shell .brand-button{font:16px/24px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.learning-app-shell .brand-switcher-button .claro-brand-copy strong,.learning-app-shell .brand-copy strong{font-size:1.15rem!important;line-height:1.1!important}
.learning-app-shell .brand-switcher-button .claro-brand-copy #headerLevel,.learning-app-shell .brand-copy span{font-size:.77rem!important;line-height:1.1!important}
.learning-app-shell #premiumBtn,.learning-app-shell #premiumButton,.learning-app-shell #settingsBtn{height:46px!important;min-height:46px!important;font-size:16px!important;line-height:24px!important;padding:10px 14px!important}
.learning-app-shell #settingsBtn{width:auto!important}
.learning-app-shell .home-hero{padding:0!important}
.learning-app-shell .home-start-btn,.learning-app-shell .home-settings-btn,.learning-app-shell #enterPracticeBtn,.learning-app-shell #homeSettingsBtn{height:46px!important;min-height:46px!important;padding:10px 14px!important;font-size:16px!important;line-height:24px!important;font-weight:800!important;border-radius:12px!important}
.learning-app-shell #classSwitcherButton,.learning-app-shell #dashboardSwitcherButton{height:40px!important;min-height:40px!important;font-size:16px!important;line-height:24px!important}
.learning-app-shell .level-tab{height:44px!important;min-height:44px!important;line-height:24px!important}
.learning-app-shell .level-tab span{display:inline!important;font-size:inherit!important;line-height:inherit!important}
.learning-app-shell .feedback-fab,.learning-app-shell #feedbackButton{height:46px!important;min-height:46px!important;font:850 16px/24px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.feedback-fab,#feedbackButton{height:46px!important;min-height:46px!important;font:850 16px/24px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;border-radius:99px!important;padding:10px 14px!important;transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important}
.modal-overlay .modal{width:min(540px,100%);padding:20px;border-radius:20px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.28)}
.modal-overlay .modal.compact{width:min(460px,100%)}
.modal-overlay .modal-heading,.modal-overlay .modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:13px;border-bottom:1px solid var(--line,var(--border,#e2e8f0))}
.modal-overlay .modal-heading h2,.modal-overlay .modal-head [id$="Title"]{margin:0;font-size:1.4rem;line-height:1.1;letter-spacing:-.03em}
.modal-overlay .modal-heading p{margin:6px 0 0;color:var(--muted)}
.modal-overlay .modal-actions,.modal-overlay .feedback-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}
.app-switcher-menu,.app-switcher{width:300px!important}
.learning-app-shell .level-switch{display:none!important}
.learning-app-shell .analytics-card{display:block!important}
.modal-overlay .claro-premium-modal,.modal-overlay #premiumOverlay .modal{width:min(460px,100%)!important}
.modal-overlay .premium-field input,.modal-overlay #premiumPassword,.modal-overlay #premiumRequestName,.modal-overlay #premiumRequestEmail{min-height:42px;padding:10px 12px;border-radius:10px}
.modal-overlay .claro-premium-modal .icon-button,.modal-overlay #premiumOverlay .icon-button{width:38px;height:38px;border-radius:10px}
.learning-app-shell .hero p:not(.eyebrow),.learning-app-shell .home-intro{margin-bottom:12px!important;font-size:16px!important;line-height:24px!important}
.learning-app-shell .analytics-card-accuracy,.learning-app-shell .analytics-card-correct{border-color:#bde8c8!important}
.learning-app-shell .analytics-card-streak,.learning-app-shell .analytics-card-best{border-color:#f5d6b3!important}
.learning-app-shell .analytics-card-sessions{border-color:#bfd7ff!important}
.learning-app-shell .dashboard-section-heading{gap:16px!important;margin-bottom:0!important}
.learning-app-shell .session-history{margin-top:26px!important;padding-top:22px!important}
.feedback-fab,#feedbackButton{display:inline-flex!important;align-items:center!important;gap:7px!important}
.dashboard-switcher-button,#classSwitcherButton{font:800 16px/24px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
#premiumBtn,#premiumButton{min-width:101px!important}
.app-shell.learning-app-shell .home-actions{border-bottom:0!important}
.app-shell.learning-app-shell .dashboard-analytics{border-top:0!important}
@media(max-width:620px){.learning-app-shell .home-actions{display:grid}.learning-app-shell .home-start-btn,.learning-app-shell .home-settings-btn{width:100%}.learning-app-shell .level-switch{margin-top:12px}}
/* Final polish pass: one restrained elevation and rhythm system across both apps. */
.learning-app-shell .topbar{box-shadow:0 14px 36px rgba(15,23,42,.08)!important}
.learning-app-shell .dashboard-card,.learning-app-shell .home-card{box-shadow:0 18px 48px rgba(15,23,42,.08)!important;overflow:hidden}
.learning-app-shell .home-actions{display:flex;align-items:center;gap:12px!important;padding-bottom:0!important;border-bottom:0!important}
.learning-app-shell .dashboard-analytics{margin-top:26px!important;padding-top:0!important;border-top:0!important}
.learning-app-shell .dashboard-section-heading h2{font-size:1.4rem!important;line-height:1.15!important;letter-spacing:-.035em!important}
.learning-app-shell .home-overview-card,.learning-app-shell .vertex-overview-cards article{box-shadow:0 4px 14px rgba(15,23,42,.04)}
.learning-app-shell .home-overview-card strong,.learning-app-shell .vertex-overview-cards article strong{line-height:1.25!important}
@media(max-width:620px){.learning-app-shell .home-actions{display:grid;gap:10px!important}.learning-app-shell .dashboard-analytics{margin-top:24px!important}}
/* Modal parity: both apps use the same control rhythm and motion; only theme
   tokens and copy are app-specific. */
.learning-app-shell .modal-overlay .modal form,
.learning-app-shell .modal-overlay .premium-form,
.learning-app-shell .modal-overlay .feedback-form{display:grid;gap:13px;margin-top:16px}
.learning-app-shell .modal-overlay .modal label,
.learning-app-shell .modal-overlay .feedback-field,
.learning-app-shell .modal-overlay .premium-field{display:grid;gap:6px;color:var(--muted,#475569);font:900 .76rem/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.04em;text-transform:uppercase}
.learning-app-shell .modal-overlay .modal input,
.learning-app-shell .modal-overlay .modal select,
.learning-app-shell .modal-overlay .modal textarea,
.learning-app-shell .modal-overlay .feedback-field input,
.learning-app-shell .modal-overlay .feedback-field select,
.learning-app-shell .modal-overlay .feedback-field textarea,
.learning-app-shell .modal-overlay .premium-field input{width:100%;min-height:42px;padding:10px 12px;border:1px solid var(--line,var(--border,#cbd5e1));border-radius:10px;background:var(--surface-soft,#fbfcff);color:var(--ink,var(--text,#0f172a));font:400 16px/24px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:0;text-transform:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.learning-app-shell .modal-overlay .modal textarea{min-height:118px;resize:vertical}
.learning-app-shell .modal-overlay .modal input:focus,
.learning-app-shell .modal-overlay .modal select:focus,
.learning-app-shell .modal-overlay .modal textarea:focus{border-color:var(--focus,#818cf8);background:var(--surface,#fff);box-shadow:0 0 0 4px color-mix(in srgb,var(--focus,#818cf8) 18%,transparent);outline:none}
.learning-app-shell .modal-overlay .modal-actions button,
.learning-app-shell .modal-overlay .feedback-form-actions button{min-height:46px;padding:10px 14px;border-radius:12px;font:800 16px/24px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}
/* Mobile layout (<=640px only). Tablet and desktop geometry is untouched. */
@media(max-width:640px){
  body:has(.learning-app-shell){padding:0!important;overflow-x:hidden}
  .learning-app-shell,.app.learning-app-shell{width:calc(100% - 20px)!important;max-width:none;margin:10px auto!important;gap:12px!important}
  .learning-app-shell .topbar{position:sticky;top:6px;min-height:0;padding:11px 12px!important;border-radius:16px;gap:10px;flex-wrap:wrap;align-items:center}
  .learning-app-shell .brand-switcher-button,.learning-app-shell .brand-button{min-width:0;gap:8px}
  .learning-app-shell .brand-switcher-button .brand-mark,.learning-app-shell .brand-mark{width:38px!important;height:38px!important}
  .learning-app-shell .brand-switcher-button .claro-brand-copy strong,.learning-app-shell .brand-copy strong{font-size:1rem!important}
  .learning-app-shell .brand-switcher-button .claro-brand-copy #headerLevel,.learning-app-shell .brand-copy span{font-size:.7rem!important}
  .learning-app-shell .top-actions{margin-left:auto;gap:7px!important;flex-wrap:nowrap!important}
  .learning-app-shell #premiumBtn,.learning-app-shell #premiumButton,.learning-app-shell #settingsBtn{height:42px!important;min-height:42px!important;padding:8px 10px!important;font-size:.88rem!important;border-radius:11px!important}
  .learning-app-shell #settingsBtn{font-size:0!important}
  .learning-app-shell #settingsBtn::after{content:"Modules";font-size:.88rem}
  .learning-app-shell #classSwitcherButton,.learning-app-shell #dashboardSwitcherButton{height:38px!important;min-height:38px!important;padding:7px 10px!important;font-size:.86rem!important}
  .learning-app-shell .app-switcher-menu,.learning-app-shell .app-switcher{left:0;right:auto;width:min(300px,calc(100vw - 20px))!important}
  .learning-app-shell .dashboard-switcher-menu{right:0;width:min(260px,calc(100vw - 20px))}
  .learning-app-shell .home-card,.learning-app-shell .dashboard-card{margin-top:0!important;padding:22px 16px!important;border-radius:20px}
  .learning-app-shell .home-hero,.learning-app-shell .hero{gap:14px!important}
  .learning-app-shell .home-hero h1,.learning-app-shell h1{font-size:clamp(1.8rem,9vw,2.5rem)!important;line-height:1.08!important}
  .learning-app-shell .home-intro,.learning-app-shell .hero p:not(.eyebrow){margin-top:8px!important;font-size:.95rem!important;line-height:1.4!important}
  .learning-app-shell .home-mark,.learning-app-shell .hero-mark{width:58px!important;height:58px!important}
  .learning-app-shell .home-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;margin-top:16px}
  .learning-app-shell .home-start-btn,.learning-app-shell .home-settings-btn,.learning-app-shell #enterPracticeBtn,.learning-app-shell #homeSettingsBtn{width:100%!important;height:46px!important;min-height:46px!important}
  .learning-app-shell .dashboard-analytics{margin-top:22px!important}
  .learning-app-shell .analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .learning-app-shell .analytics-card{min-height:96px!important;padding:12px!important;border-radius:14px!important}
  .learning-app-shell .analytics-card strong{font-size:1.3rem!important}
  .learning-app-shell .analytics-card small{font-size:.72rem!important}
  .learning-app-shell .home-overview,.learning-app-shell .vertex-overview-cards{grid-template-columns:1fr!important;gap:10px!important;margin:18px 0!important}
  .learning-app-shell .home-overview-card,.learning-app-shell .vertex-overview-cards article{min-height:0!important;padding:14px!important}
  .learning-app-shell .module-empty{padding:20px!important}
  .learning-app-shell .session-history{margin-top:20px!important;padding-top:18px!important}
  .learning-app-shell .feedback-fab,.learning-app-shell #feedbackButton{left:12px!important;bottom:12px!important;height:42px!important;min-height:42px!important;padding:8px 12px!important;font-size:.9rem!important}
  .learning-app-shell .modal-overlay{padding:10px!important}
  .learning-app-shell .modal-overlay .modal{width:100%!important;max-height:calc(100vh - 20px);overflow:auto;padding:16px!important;border-radius:16px!important}
  .learning-app-shell .modal-overlay .modal-heading,.learning-app-shell .modal-overlay .modal-head{gap:10px!important;padding-bottom:11px!important}
  .learning-app-shell .modal-overlay .modal-heading h2,.learning-app-shell .modal-overlay .modal-head [id$="Title"]{font-size:1.2rem!important}
  .learning-app-shell .modal-overlay .modal-actions,.learning-app-shell .modal-overlay .feedback-form-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .learning-app-shell .modal-overlay .modal-actions button,.learning-app-shell .modal-overlay .feedback-form-actions button{width:100%!important}
}

.shared-prompt{position:fixed;right:20px;bottom:20px;z-index:100;display:flex;align-items:center;gap:18px;width:min(520px,calc(100vw - 32px));padding:16px 18px;border:1px solid color-mix(in srgb,var(--brand,#166534) 22%,#fff);border-radius:18px;background:color-mix(in srgb,#fff 88%,var(--brand-soft,#f1faf3));box-shadow:0 18px 50px rgba(15,23,42,.18);opacity:0;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease}.shared-prompt.is-visible{opacity:1;transform:translateY(0)}.shared-prompt strong{display:block;font-size:.98rem;color:var(--ink,#0f172a)}.shared-prompt p{margin:3px 0 0;color:var(--muted,#475569);font-size:.86rem;line-height:1.35}.shared-prompt-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.shared-prompt button{min-height:38px;padding:8px 11px;border-radius:10px;font:800 .82rem/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}.shared-prompt-primary{border:1px solid var(--brand,#166534);background:var(--brand,#166534);color:#fff}.shared-prompt-dismiss{border:1px solid var(--line,#e2e8f0);background:#fff;color:var(--muted,#475569)}
@media(max-width:640px){.shared-prompt{right:10px;bottom:10px;display:grid;gap:12px;padding:14px}.shared-prompt-actions{display:grid;grid-template-columns:1fr 1fr}.shared-prompt button{width:100%}}

.study-question-previous-star{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin:8px 8px 0 0;padding:8px 11px;border:1px solid var(--brand,#2563eb);border-radius:10px;background:var(--brand-soft,#eff6ff);color:var(--brand-strong,var(--brand,#2563eb));font:700 .84rem/1 system-ui,sans-serif;cursor:pointer}.study-question-previous-star:disabled{background:#f8fafc;color:#64748b;border-color:var(--line,#dbe4de);cursor:default}.study-question-previous-star[hidden]{display:none!important}
