/* Everyday UP pages. The confirmed AixyunOS study layout has its own styles. */
body:not(.desk-mode) { background: #f5f7fb; }
body:not(.desk-mode) .wrap { width: min(1180px, calc(100% - 64px)); }
.site-header { height: 72px; padding-inline: max(28px, calc((100vw - 1240px)/2)); }
.brand { font-size: 18px; }
.brand small { letter-spacing: 0; font-size: 11px; }
.site-header nav a { border-radius: 10px; padding-inline: 14px; }
.account-button { max-width: 160px; }
.account-button #account-label { max-width: 94px; }
body:not(.desk-mode) :is(.y-page-head, .page-heading) { padding: 34px 0 24px; }
body:not(.desk-mode) :is(.y-page-head, .page-heading) h1 { font-size: clamp(26px, 3vw, 34px); margin: 0 0 9px; }
body:not(.desk-mode) :is(.y-page-head, .page-heading) p { font-size: 14px; margin: 0; }
body:not(.desk-mode) :is(.button, .panel, .y-disclosure) { border-radius: 12px; }
body:not(.desk-mode) .y-section-heading { margin-bottom: 16px; }
body:not(.desk-mode) .y-section-heading h2 { font-size: 19px; }
body:not(.desk-mode) .y-text-link { font-size: 13px; gap: 7px; }
body:not(.desk-mode) .y-private-line { margin-top: 24px; }
body:not(.desk-mode) .y-private-line + .y-page-head { padding-top: 18px; }
body:not(.desk-mode) .y-empty { padding: 26px 18px; min-height: 0; border-radius: 12px; }
body:not(.desk-mode) .y-empty h3 { font-size: 17px; margin-bottom: 8px; }
body:not(.desk-mode) .y-empty p { font-size: 13px; }
body:not(.desk-mode) .y-empty-large { min-height: 230px; }
body:not(.desk-mode) .site-footer { width: min(1180px, calc(100% - 64px)); margin-top: 44px; padding: 24px 0; }

/* The wallpaper stays personal; the work surface stays quiet and readable. */
body:not(.desk-mode) .fp-dashboard { padding: 30px 0 12px; }
.fp-dashboard::before { content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(180deg, #142d4433 0, #f5f7fb44 300px, #f5f7fbf5 600px, #f5f7fb 850px); }
.fp-page-heading { margin-bottom: 24px; }
.fp-page-heading h1 { font-size: 32px; letter-spacing: -.5px; margin: 0 0 8px; }
.fp-page-heading p { margin: 0; font-size: 14px; }
.fp-page-heading .button { font-size: 13px; background: #ffffffec; border-color: #ffffffb3; }
.fp-overview { margin-bottom: 22px; border-radius: 16px; }
.fp-overview > :is(div, a) { padding: 16px 22px; gap: 3px; }
.fp-overview span { font-size: 13px; display: flex; align-items: center; gap: 6px; }
.fp-overview span .ui-icon { width: 14px; height: 14px; }
.fp-overview strong { font-size: 30px; }
.fp-overview small { font-size: 12px; color: #66758a; }
.fp-space-grid { grid-template-columns: minmax(0, 1fr) 264px; grid-template-rows: min-content 1fr; gap: 20px; }
.fp-main { grid-column: 1; grid-row: 1 / span 2; }
.fp-space-grid > .fp-launch { grid-column: 2; grid-row: 1; }
.fp-side { grid-column: 2; grid-row: 2; }
.fp-side { gap: 16px; }
.fp-planner, .fp-reading, .fp-shortcuts { padding: 22px; border-radius: 16px; }
.fp-section-head { margin-bottom: 18px; }
.fp-section-head h2 { margin: 0; font-size: 21px; }
.fp-section-head .button { font-size: 13px; min-height: 44px; }
.fp-toolbar { margin-bottom: 12px; }
.fp-toolbar > .y-icon-button { width: 40px; height: 40px; }
.fp-view-switch button { min-height: 38px; font-size: 13px; padding: 7px 12px; }
.fp-filter select { min-height: 44px; padding: 8px 24px 8px 10px; font-size: 13px; }
.fp-plan-summary { font-size: 12px; margin-bottom: 16px; }
.fp-task { border-radius: 12px; box-shadow: none; }
.fp-task h3 { font-size: 14px; line-height: 1.7; font-weight: 650; overflow-wrap: anywhere; }
.fp-task.is-done h3 { text-decoration: line-through; color: #748296; }
.fp-task .fp-edit { width: auto; min-width: 40px; height: 32px; font-size: 12px; color: #697991; border-radius: 7px; }
.fp-task .fp-edit:hover { color: #364f91; background: #eef2fa; }
.fp-complete { width: 22px; height: 22px; margin-top: 2px; }
.fp-complete:after { inset: -10px; }
.fp-task-subject { color: #5b6c82; font-size: 12px; margin: 3px 0 5px 30px; }
.fp-task-meta { font-size: 12px; margin: 8px 0; }
.fp-task-meta .ui-icon { width: 13px; height: 13px; }
.fp-task-progress small { font-size: 11px; color: #697a91; }
.fp-task-bottom { color: #66758a; font-size: 11px; }
.fp-task-bottom button { padding: 8px 12px; min-height: 40px; font-size: 12px; border: 1px solid #dce4f1; background: #f5f7fd; border-radius: 9px; white-space: nowrap; }
.fp-task-bottom button:hover { background: #eaf0fb; }
.fp-list { gap: 10px; }
.fp-list .fp-task { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "top bottom" "subject bottom" "meta bottom" "progress bottom"; column-gap: 20px; row-gap: 2px; padding: 14px 16px; }
.fp-list .fp-task-top { grid-area: top; align-items: center; }
.fp-list .fp-task h3 { font-size: 15px; }
.fp-list .fp-task-subject { grid-area: subject; margin: 0 0 0 30px; }
.fp-list .fp-task-meta { grid-area: meta; margin: 4px 0 3px 30px; }
.fp-list .fp-task-progress { grid-area: progress; margin: 3px 0 0 30px; max-width: 300px; }
.fp-list .fp-task-bottom { grid-area: bottom; margin: 0; align-self: center; flex-direction: column; gap: 8px; }
.fp-list .fp-task-bottom button { min-height: 44px; }
.fp-list > .fp-empty { min-height: 150px; font-size: 13px; padding: 20px; }
.fp-empty button { min-height: 44px; font-size: 13px; }
.fp-quadrant header span, .fp-quadrant-hint { font-size: 12px; }
.fp-quadrant header .y-icon-button { width: 40px; height: 40px; }
.fp-quadrant-tasks .fp-task { padding: 14px; }
.fp-footnote { font-size: 12px; margin-top: 16px; color: #748197; }
.fp-footnote summary { min-height: 32px; cursor: pointer; }
.fp-footnote p { margin: 6px 0 0; }
.fp-launch { border: 1px solid #d8e2f3; border-radius: 16px; padding: 24px; background: #f5f8ffff; color: #243c61; }
.fp-launch-icon { width: 40px; height: 40px; border: 1px solid #dbe5f3; background: #fff; border-radius: 12px; display: grid; place-items: center; color: #364f91; }
.fp-launch h2 { margin: 16px 0 18px; font-size: 20px; }
.fp-launch h3 { font-size: 15px; line-height: 1.7; margin: 0 0 5px; overflow-wrap: anywhere; }
.fp-launch p { font-size: 13px; color: #64758b; line-height: 1.8; margin: 0 0 12px; overflow-wrap: anywhere; }
.fp-launch-time { display: block; font-size: 20px; font-weight: 650; margin: 10px 0 18px; }
.fp-launch .button { width: 100%; justify-content: center; }
.fp-launch small { display: block; font-size: 12px; color: #6f7f94; line-height: 1.8; margin-top: 14px; }
.fp-shortcuts h2 { font-size: 15px; margin-bottom: 14px; }
.fp-shortcuts b { font-size: 13px; }
.fp-shortcuts small { font-size: 12px; line-height: 1.7; }
.fp-private-note { color: #66778f; padding: 0 4px; }
.fp-private-note p { font-size: 12px; }
.fp-reading { margin-top: 18px; }
.fp-reading .y-reading-card { border-radius: 12px; }
.fp-reading .y-empty { background: #f9fafd; border: 1px dashed #dbe2ef; }
.fp-reading .y-empty-symbol { display: none; }
.fp-form-heading h2 { font-size: 24px; margin: 0 0 22px; }
#focus-task-form .fp-subject-fields { background: #f5f8fd; border-color: #dce4f1; }
#focus-task-form .fp-subject-fields legend { color: #364f91; }
#focus-task-form .fp-subject-fields p { color: #6b7b91; }
#focus-task-form :is(.fp-required, .fp-optional, .fp-quadrant-options small) { font-size: 12px; }
#focus-task-form .fp-quadrant-options b { font-size: 13px; }

/* Named destinations instead of slogans and repeated category labels. */
.up-welcome { display: grid; grid-template-columns: 1.15fr 1fr; gap: 80px; align-items: center; padding: 66px 0 56px; }
.up-welcome h1 { font-size: clamp(34px, 4vw, 54px); margin: 18px 0; line-height: 1.3; }
.up-welcome p { color: #65748b; font-size: 16px; line-height: 1.9; }
.up-welcome > div > .y-text-link { margin-left: 18px; }
.up-welcome-plan { padding: 32px; background: #fff; border: 1px solid #e0e7f2; border-radius: 20px; box-shadow: 0 12px 40px #263e6810; }
.up-welcome-plan > span { font-size: 18px; font-weight: 650; }
.up-welcome-plan > div { display: grid; grid-template-columns: 26px 1fr; gap: 3px 14px; border-top: 1px solid #e8edf4; padding-top: 20px; margin-top: 20px; font-size: 16px; font-weight: 600; }
.up-welcome-plan > div .ui-icon { color: #364f91; }
.up-welcome-plan small { grid-column: 2; color: #6b7b91; font-size: 13px; font-weight: 400; }
.up-welcome-plan p { font-size: 13px; margin: 25px 0 0; }
.up-entry-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.up-entry-grid a { display: flex; align-items: center; gap: 14px; padding: 22px; background: #fff; border: 1px solid #e0e7f2; border-radius: 16px; }
.up-entry-grid a > div { flex: 1; min-width: 0; }
.up-entry-grid h2 { font-size: 17px; margin: 0 0 6px; }
.up-entry-grid p { font-size: 13px; color: #6b7b91; margin: 0; }
.up-entry-grid a > .ui-icon { width: 17px; color: #364f91; }
.y-discover-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.y-discover-card { min-height: 180px; padding: 24px; border: 1px solid #e0e7f2; border-radius: 16px; background: #fff; display: flex; align-items: flex-start; flex-wrap: wrap; gap: 16px; }
.y-discover-card > div { flex: 1; min-width: 0; }
.y-discover-card h2 { font-size: 19px; margin: 4px 0 10px; max-width: none; }
.y-discover-card p { font-size: 13px; color: #6b7b91; margin: 0; }
.y-discover-card > .ui-icon { position: static; width: 18px; height: 18px; margin-left: auto; align-self: center; color: #364f91; }
.y-space-card { padding: 18px; border-radius: 14px; }
.y-space-card h3 { font-size: 15px; }
.y-space-card p { font-size: 12px; }
.y-space-group { margin-top: 28px; }
.y-space-group h2 { font-size: 19px; margin-bottom: 16px; }
.y-space-toolbar { margin-bottom: 14px; }
.y-learning-stats { border: 1px solid #e0e7f2; border-radius: 14px; background: #fff; padding: 20px 0; margin-bottom: 28px; }
.y-learning-stats strong { font-size: 30px; }
.y-learning-stats span { font-size: 13px; }
.y-learning-columns { margin-top: 24px; }
.y-learning-columns > section, .y-followups { padding: 24px; border-radius: 16px; }
.y-learning-columns h2 { font-size: 21px; }
.university-lenses > summary { font-size: 14px; font-weight: 600; color: #364f91; cursor: pointer; min-height: 44px; display: flex; align-items: center; gap: 10px; }
.university-lenses > summary::after { content: "+"; margin-left: auto; font-size: 20px; }
.university-lenses[open] > summary::after { content: "−"; }
.university-lenses .row { margin-top: 18px; }
.university-lenses h3 { font-size: 18px; }
.people-hero h1 { font-size: clamp(28px, 3vw, 38px); }
.y-card-identity { padding: 24px; margin-bottom: 22px; border-radius: 16px; }
.y-card-identity h2 { font-size: 26px; }
.y-card-word { font-size: 48px; }
.y-journal-entry > summary { padding: 24px; }
.y-writing-prompt { padding: 24px; border-radius: 16px; }
.y-writing-prompt h3 { font-size: 23px; }
@media (max-width: 1000px) {
  .fp-space-grid { grid-template-columns: minmax(0, 1fr) 238px; }
  .fp-planner, .fp-reading, .fp-shortcuts { padding: 18px; }
  .fp-launch { padding: 20px; }
  .up-welcome { gap: 40px; }
  .up-entry-grid { grid-template-columns: 1fr; }
  .y-discover-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 850px) {
  .fp-space-grid { grid-template-columns: 1fr; grid-template-rows: none; }
  .fp-main, .fp-side, .fp-space-grid > .fp-launch { grid-column: 1; grid-row: auto; }
  .fp-side { grid-template-columns: 1fr 1fr; }
  .fp-private-note { grid-column: 1/-1; }
  .fp-launch h2 { margin: 12px 0; }
}
@media (max-width: 760px) {
  body:not(.desk-mode) .wrap, body:not(.desk-mode) .site-footer { width: calc(100% - 36px); }
  .site-header { height: 68px; padding-inline: 18px; }
  .site-header nav { position: fixed; bottom: 0; left: 0; top: auto; width: 100%; height: calc(68px + env(safe-area-inset-bottom)); padding: 5px 8px calc(5px + env(safe-area-inset-bottom)); border-top: 1px solid #e0e6ef; border-radius: 0; background: #fffffff5; justify-content: space-around; gap: 4px; }
  .site-header nav a { padding: 6px 3px; flex: 1; min-height: 54px; font-size: 12px; flex-direction: column; gap: 2px; }
  .brand { font-size: 17px; }
  .brand img { width: 32px; height: 29px; }
  .brand small { font-size: 10px; }
  body:not(.desk-mode) { padding-bottom: calc(68px + env(safe-area-inset-bottom)); }
  body:not(.desk-mode) :is(.y-page-head, .page-heading) { gap: 14px; padding: 26px 0 20px; }
  body:not(.desk-mode) :is(.y-page-head, .page-heading) h1 { font-size: 28px; }
  body:not(.desk-mode) :is(.y-page-head, .page-heading) p { font-size: 13px; }
  .fp-overview > :is(div, a) { padding: 14px; }
  .fp-overview small { font-size: 11px; }
  .fp-overview span { font-size: 12px; }
  .fp-page-heading h1 { font-size: 28px; }
  .fp-page-heading p { font-size: 13px; }
  .fp-page-heading .button { font-size: 12px; padding: 9px 12px; min-height: 44px; margin-top: 0; }
  .fp-page-heading .button .ui-icon { display: none; }
  .fp-side { grid-template-columns: 1fr; }
  .fp-launch { display: grid; grid-template-columns: 1fr auto; column-gap: 16px; }
  .fp-launch-icon { display: none; }
  .fp-launch h2 { grid-column: 1; font-size: 18px; margin: 0 0 12px; }
  .fp-launch h3, .fp-launch p, .fp-launch small { grid-column: 1/-1; }
  .fp-launch small { display: none; }
  .fp-launch-time { grid-column: 1; margin: 10px 0 0; font-size: 18px; align-self: center; }
  .fp-launch .button { grid-column: 2; grid-row: auto; width: auto; min-width: 112px; margin-top: 8px; }
  .fp-shortcuts { display: block; }
  .fp-shortcuts small { font-size: 12px; }
  .up-welcome { grid-template-columns: 1fr; gap: 30px; padding: 36px 0; }
  .up-welcome h1 { font-size: 38px; }
  .up-welcome p { font-size: 14px; }
  .up-welcome-plan { padding: 24px; }
  .y-discover-card { padding: 20px; min-height: 170px; gap: 12px; }
  .y-discover-card .y-icon-tile { width: 38px; height: 38px; border-radius: 11px; }
  .y-discover-card h2 { font-size: 18px; }
  .y-discover-card p { font-size: 13px; }
  .y-learning-stats strong { font-size: 27px; }
  .y-learning-stats span { font-size: 11px; }
  .y-focus-mini { bottom: calc(80px + env(safe-area-inset-bottom)); }
}
@media (max-width: 560px) {
  .fp-overview { grid-template-columns: 1fr 1fr; }
  .fp-list .fp-task { grid-template-areas: "top top" "subject subject" "meta meta" "progress progress" "bottom bottom"; gap: 4px 10px; padding: 14px; }
  .fp-list .fp-task-progress { margin-top: 5px; }
  .fp-list .fp-task-bottom { flex-direction: row; justify-content: space-between; }
  .fp-task h3, .fp-list .fp-task h3 { font-size: 14px; }
  .fp-task .fp-edit { height: 40px; }
  .fp-task-subject { font-size: 12px; }
  .fp-list .fp-task-meta { margin-left: 30px; }
  .fp-task-progress { flex-wrap: wrap; }
  .fp-task-progress > div { min-width: 45px; }
  .fp-task-progress small { white-space: normal; }
  .fp-view-switch button { padding-inline: 8px; font-size: 12px; gap: 4px; }
  .fp-filter select { padding-inline: 8px 20px; font-size: 12px; }
  .fp-toolbar { gap: 6px; flex-wrap: wrap; }
  .fp-toolbar > .y-icon-button { width: 38px; height: 40px; }
  .fp-plan-summary { font-size: 12px; justify-content: flex-start; gap: 6px 16px; }
  .fp-section-head { align-items: center; }
  .fp-section-head h2 { font-size: 19px; }
  .fp-section-head .button { margin-top: 0; font-size: 12px; }
  .y-discover-grid { grid-template-columns: 1fr; gap: 12px; }
  .y-discover-card { min-height: 120px; flex-wrap: nowrap; align-items: center; }
  .y-discover-card h2 { margin: 0 0 7px; }
  .y-space-card { padding: 16px; }
  .up-welcome > div > .y-text-link { margin-left: 10px; }
  .up-welcome h1 { font-size: 34px; }
}
@media (prefers-reduced-motion: reduce) {
  body:not(.desk-mode) *, body:not(.desk-mode) *::before, body:not(.desk-mode) *::after { animation: none !important; transition: none !important; }
}
