.yu-app {
  --yu-ink: #1b2b30;
  --yu-muted: #708079;
  --yu-paper: #fafaf4;
  --yu-line: #dce2d8;
  --yu-rust: #af502e;
  --yu-navy: #1b3435;
  --yu-serif: Georgia, 'Times New Roman', serif;
  color: var(--yu-ink);
  width: 100%;
  min-width: 0;
  padding-bottom: 44px;
}
.yu-app *, .yu-app *::before, .yu-app *::after { box-sizing: border-box; }
.yu-app [hidden] { display: none !important; }
.yu-app button, .yu-app a { -webkit-tap-highlight-color: transparent; }
.yu-app button { font: inherit; }
.yu-app button:disabled { cursor: default; opacity: .45; }
.yu-app :is(button, a, input, textarea):focus-visible { outline: 3px solid #d79957; outline-offset: 4px; }
.yu-app h2, .yu-app h3, .yu-app p { margin-top: 0; }
.yu-app h2, .yu-app h3 { color: var(--yu-ink); }
.yu-app .yu-icon { display: inline-block; width: 20px; height: 20px; flex-shrink: 0; vertical-align: middle; }
.yu-app .yu-eyebrow { display: inline-flex; align-items: center; gap: 10px; font: 750 10px/1.4 Inter, 'Segoe UI', sans-serif; letter-spacing: .15em; text-transform: uppercase; }
.yu-app .yu-small { font-size: 12px; line-height: 1.5; }
.yu-app .yu-muted { color: var(--yu-muted); }
.yu-app .yu-rust { color: var(--yu-rust); }
.yu-app .yu-separator { padding: 0 6px; opacity: .5; }
.yu-app :is(.yu-primary,.yu-secondary,.yu-watch,.yu-link,.yu-add-day,.yu-add-material) { display: inline-flex; justify-content: center; align-items: center; gap: 9px; min-height: 43px; padding: 11px 18px; border: 1px solid transparent; border-radius: 10px; font-size: 13px; font-weight: 700; line-height: 1.35; text-decoration: none; transition: background .15s, border-color .15s; }
.yu-app .yu-primary { background: var(--yu-rust); color: #fff; box-shadow: 0 3px 0 #0000000c; }
.yu-app .yu-primary:hover { background: #914225; }
.yu-app .yu-secondary { background: #fff; border-color: #d6ded6; color: var(--yu-ink); }
.yu-app .yu-secondary:hover { background: #f1f4ec; border-color: #9daf9c; }
.yu-app .yu-icon-button { display: inline-flex; flex-shrink: 0; align-items: center; justify-content: center; border: 1px solid transparent; background: transparent; border-radius: 8px; width: 40px; height: 40px; padding: 8px; color: var(--yu-muted); }
.yu-app .yu-icon-button:hover { background: #eceee6; }
.yu-app .yu-danger:hover { background: #fbebe7; color: #ab422e; }
.yu-app .yu-hero { display: grid; grid-template-columns: 1.25fr 1fr; overflow: hidden; border-radius: 22px; min-height: 335px; background: var(--yu-navy); color: #f1f0dc; position: relative; }
.yu-app .yu-hero-copy { padding: clamp(26px, 4vw, 48px); position: relative; z-index: 1; }
.yu-app .yu-hero-copy .yu-eyebrow { color: #d9dfcb; letter-spacing: .12em; margin-bottom: 28px; font-size: 9px; flex-wrap: wrap; }
.yu-app .yu-mark { display: inline-flex; align-items: center; justify-content: center; width: 27px; height: 27px; font: 22px var(--yu-serif); background: #ecedda; color: var(--yu-navy); border-radius: 5px; }
.yu-app .yu-hero-divider { height: 14px; width: 1px; background: #c0c9b866; margin: 0 3px; }
.yu-app .yu-hero h2 { color: #f4f2e0; font: 400 clamp(36px, 4.2vw, 58px)/1.02 var(--yu-serif); letter-spacing: -.025em; margin-bottom: 17px; }
.yu-app .yu-hero h2 em { color: #c4ce9d; font-weight: 400; }
.yu-app .yu-hero-description { color: #c2cdbc; font-size: 13px; line-height: 1.75; margin-bottom: 25px; }
.yu-app .yu-hero .yu-primary { background: #e7e9cf; color: var(--yu-navy); }
.yu-app .yu-hero .yu-primary:hover { background: #fffde7; }
.yu-app .yu-hero-side { position: relative; border-left: 1px solid #b6c9a526; display: flex; flex-direction: column; justify-content: space-between; padding: 33px; overflow: hidden; background: #ffffff02; }
.yu-app .yu-private { display: inline-flex; align-items: center; align-self: flex-start; gap: 7px; color: #d8e0ca; font-size: 10px; padding: 8px 12px; border-radius: 100px; border: 1px solid #bdcbb84d; line-height: 1.4; }
.yu-app .yu-private .yu-icon { width: 13px; height: 13px; }
.yu-app .yu-hero-monogram { position: absolute; bottom: 55px; right: 34px; font: 230px/.8 var(--yu-serif); letter-spacing: -.12em; color: #bfcca31c; pointer-events: none; user-select: none; }
.yu-app .yu-hero-monogram span { position: relative; top: 30px; font-size: .62em; }
.yu-app .yu-hero-side::after { content: ''; width: 210px; height: 210px; position: absolute; border: 1px solid #b4c7ac22; border-radius: 50%; right: -60px; top: -50px; box-shadow: 0 0 0 25px #b4c7ac06,0 0 0 50px #b4c7ac04; pointer-events: none; }
.yu-app .yu-hero-stats { display: flex; gap: 28px; z-index: 1; }
.yu-app .yu-hero-stats div { display: flex; flex-direction: column; gap: 5px; }
.yu-app .yu-hero-stats strong { font: 400 32px/1 var(--yu-serif); color: #e5e8d3; }
.yu-app .yu-hero-stats span { color: #afc2af; font-size: 10px; }
.yu-app .yu-catalog { margin-top: 39px; }
.yu-app .yu-catalog-top { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 19px; }
.yu-app .yu-catalog-top h2 { font-size: 24px; font-weight: 700; letter-spacing: -.035em; margin: 8px 0 0; }
.yu-app .yu-catalog-top h2 span { font-size: 12px; font-weight: 500; color: var(--yu-muted); vertical-align: middle; border: 1px solid #ccd7c9; border-radius: 100px; padding: 2px 7px; margin-left: 7px; }
.yu-app .yu-search { display: flex; align-items: center; gap: 10px; color: var(--yu-muted); padding-left: 14px; border: 1px solid #d1dcd2; border-radius: 11px; background: #ffffffb5; width: min(285px,45%); }
.yu-app .yu-search input { margin: 0; border: 0; border-radius: 10px; background: transparent; min-width: 0; padding: 12px 10px 12px 0; font-size: 12px; }
.yu-app .yu-search input:focus { box-shadow: none; }
.yu-app .yu-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 22px; }
.yu-app .yu-filters button { padding: 8px 13px; font-size: 11px; line-height: 1.35; color: #607267; border: 1px solid transparent; background: transparent; border-radius: 8px; }
.yu-app .yu-filters button[aria-pressed=true] { background: #e5ebdf; border-color: #cfdbc8; color: #314936; font-weight: 700; }
.yu-app .yu-course-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(280px,100%),1fr)); gap: 21px; }
.yu-app .yu-course { overflow: hidden; border: 1px solid #d9dfd5; border-radius: 15px; background: #fefef9; display: flex; flex-direction: column; min-width: 0; transition: border-color .15s, transform .15s; }
.yu-app .yu-course:hover { border-color: #a8b89e; transform: translateY(-2px); }
.yu-app .yu-course-cover { background: #dfe8d4; min-height: 140px; display: flex; justify-content: space-between; align-items: flex-start; padding: 17px 20px; position: relative; overflow: hidden; }
.yu-app .yu-course-cover[data-tone="1"] { background: #efe0cb; }
.yu-app .yu-course-cover[data-tone="2"] { background: #dbe6e8; }
.yu-app .yu-cover-number { font: 400 70px/1.15 var(--yu-serif); color: #2d422e; opacity: .8; position: absolute; bottom: 8px; left: 20px; }
.yu-app .yu-cover-type { display: inline-flex; align-items: center; gap: 6px; margin-left: auto; font-size: 9px; letter-spacing: .1em; z-index: 1; color: #46574b; }
.yu-app .yu-cover-type .yu-icon { width: 12px; height: 12px; }
.yu-app .yu-cover-lines { position: absolute; width: 145px; height: 145px; border: 1px solid #43614340; border-radius: 50%; right: -15px; bottom: -48px; box-shadow: 0 0 0 16px #4361430a,0 0 0 32px #43614309,0 0 0 48px #43614308; transform: rotate(-20deg); }
.yu-app .yu-course-body { padding: 23px; display: flex; flex-direction: column; flex: 1; }
.yu-app .yu-course h3 { margin: 13px 0 10px; font-size: 20px; line-height: 1.3; letter-spacing: -.035em; overflow-wrap: anywhere; }
.yu-app .yu-course h3 button { display: block; width: 100%; padding: 0; border: 0; text-align: left; color: inherit; background: none; font-weight: 700; }
.yu-app .yu-course-description { font-size: 12px; color: #728071; line-height: 1.7; margin-bottom: 17px; overflow-wrap: anywhere; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.yu-app .yu-course-audience { display: block; color: #71806c; font-size: 10px; margin-top: auto; margin-bottom: 19px; white-space: nowrap; text-overflow: ellipsis; overflow: hidden; }
.yu-app .yu-course-progress { display: flex; justify-content: space-between; gap: 10px; font-size: 10px; color: #778172; margin-bottom: 8px; }
.yu-app .yu-course-progress strong { color: #41563c; font-weight: 700; }
.yu-app .yu-progress { height: 4px; width: 100%; border-radius: 100px; background: #e4e9dc; overflow: hidden; }
.yu-app .yu-progress>span { display: block; background: #688154; height: 100%; border-radius: inherit; transition: width .2s; }
.yu-app .yu-course-start { display: flex; align-items: center; justify-content: space-between; width: 100%; margin-top: 20px; padding: 15px 0 0; border: 0; border-top: 1px solid #e4e8df; background: none; color: #354e37; font-size: 12px; font-weight: 700; text-align: left; }
.yu-app .yu-empty { text-align: center; background: #fcfdf7; border: 1px dashed #c9d2c3; border-radius: 17px; padding: 50px 22px; }
.yu-app .yu-empty>.yu-icon { width: 39px; height: 39px; color: #718368; margin-bottom: 19px; }
.yu-app .yu-empty h3 { font: 400 27px var(--yu-serif); margin-bottom: 12px; }
.yu-app .yu-empty p { color: var(--yu-muted); font-size: 13px; line-height: 1.8; max-width: 400px; margin: 0 auto 21px; }
.yu-app .yu-breadcrumb { display: flex; align-items: center; gap: 15px; font-size: 11px; margin-bottom: 19px; color: var(--yu-muted); }
.yu-app .yu-breadcrumb button { border: 0; background: none; padding: 4px 0; font-size: 12px; font-weight: 600; color: #425e47; display: flex; align-items: center; gap: 5px; }
.yu-app .yu-breadcrumb>span { padding-left: 15px; border-left: 1px solid #b9c8b5; }
.yu-app .yu-training-hero { border-radius: 19px; background: var(--yu-navy); padding: clamp(24px,3vw,38px); display: flex; justify-content: space-between; align-items: center; gap: 24px; color: #d4dfc9; }
.yu-app .yu-training-hero>div:first-child { min-width: 0; }
.yu-app .yu-training-hero .yu-eyebrow { margin-bottom: 18px; color: #b2c8a7; font-size: 9px; }
.yu-app .yu-training-hero h2 { font: 400 clamp(28px,3.2vw,43px)/1.12 var(--yu-serif); color: #f0f0db; margin-bottom: 15px; overflow-wrap: anywhere; }
.yu-app .yu-training-hero p:not(.yu-eyebrow) { font-size: 12px; line-height: 1.7; color: #c0ccbb; margin-bottom: 17px; max-width: 620px; white-space: pre-wrap; overflow-wrap: anywhere; }
.yu-app .yu-training-hero .yu-private { font-size: 10px; overflow-wrap: anywhere; }
.yu-app .yu-training-progress { display: flex; flex-direction: column; width: 140px; flex-shrink: 0; gap: 8px; }
.yu-app .yu-training-progress strong { color: #e4e8c9; font: 400 40px/1 var(--yu-serif); }
.yu-app .yu-training-progress>span { color: #bdcbb2; font-size: 10px; margin: 2px 0 5px; }
.yu-app .yu-training-progress .yu-progress { background: #57705c; }
.yu-app .yu-training-progress .yu-progress>span { background: #c8d3a0; }
.yu-app .yu-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; padding: 19px 0; margin-bottom: 12px; gap: 14px; border-bottom: 1px solid var(--yu-line); }
.yu-app .yu-toolbar>div { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.yu-app .yu-access-note { display: flex; align-items: center; gap: 7px; font-size: 10px; line-height: 1.7; color: #6b7b68; margin: 0; }
.yu-app .yu-access-note .yu-icon { width: 13px; height: 13px; }
.yu-app .yu-draft-state { font-size: 11px; color: #92743d; margin-right: 6px; }
.yu-app .yu-learning-layout { display: grid; grid-template-columns: 218px minmax(0,1fr); gap: 30px; align-items: start; }
.yu-app .yu-syllabus { min-width: 0; position: sticky; top: 22px; padding-top: 11px; }
.yu-app .yu-syllabus-title { display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 0 9px 15px; color: var(--yu-muted); font-size: 10px; }
.yu-app .yu-days { display: grid; gap: 5px; max-height: calc(100vh - 240px); overflow-y: auto; padding: 3px; }
.yu-app .yu-day-tab { display: flex; gap: 11px; align-items: center; text-align: left; border: 1px solid transparent; border-radius: 10px; background: none; padding: 12px 10px; color: #576c56; min-height: 61px; width: 100%; }
.yu-app .yu-day-tab:hover { background: #eff2e9; }
.yu-app .yu-day-tab.is-active { background: #e6ebdd; border-color: #d4ddc9; color: #30472f; }
.yu-app .yu-day-index { display: inline-flex; align-items: center; justify-content: center; font: 400 18px var(--yu-serif); width: 31px; height: 31px; color: #758669; flex-shrink: 0; }
.yu-app .yu-day-index.is-done { border: 1px solid #b1c19c; background: #dce7ce; border-radius: 50%; }
.yu-app .yu-day-index.is-done .yu-icon { width: 15px; height: 15px; }
.yu-app .yu-day-tab>span:nth-child(2) { display: flex; flex-direction: column; gap: 5px; }
.yu-app .yu-day-tab strong { font-size: 12px; font-weight: 700; }
.yu-app .yu-day-tab small { font-size: 10px; color: #89937f; }
.yu-app .yu-day-tab>.yu-icon { width: 13px; height: 13px; margin-left: auto; color: #83927b; }
.yu-app .yu-add-day { background: transparent; border: 1px dashed #bdcbb1; width: 100%; color: #5d7451; margin: 16px 0 13px; font-size: 11px; }
.yu-app .yu-day-content { min-width: 0; padding-top: 10px; }
.yu-app .yu-day-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 21px; }
.yu-app .yu-day-heading h2 { font-size: 26px; letter-spacing: -.04em; margin: 10px 0 0; display: flex; gap: 15px; align-items: center; flex-wrap: wrap; }
.yu-app .yu-day-heading h2>span { font: 11px Inter,'Segoe UI',sans-serif; color: #829078; letter-spacing: 0; }
.yu-app .yu-material { padding: 25px; background: #fffffa; border: 1px solid #d9dfd3; border-radius: 13px; margin-bottom: 18px; transition: border-color .15s; }
.yu-app .yu-material.is-completed { border-color: #b7c9a6; }
.yu-app .yu-material-top { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }
.yu-app .yu-material-top .yu-eyebrow { font-size: 9px; }
.yu-app .yu-resource-icon { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; background: #eef1e4; color: #6a8154; border-radius: 9px; flex-shrink: 0; }
.yu-app .yu-resource-icon .yu-icon { width: 16px; height: 16px; }
.yu-app .yu-material-state { margin-left: auto; display: inline-flex; align-items: center; gap: 4px; color: #5b784a; font-size: 10px; }
.yu-app .yu-material-state .yu-icon { width: 13px; height: 13px; }
.yu-app .yu-material h3 { font-size: 21px; line-height: 1.35; font-weight: 650; letter-spacing: -.03em; margin-bottom: 13px; overflow-wrap: anywhere; }
.yu-app .yu-material-description { white-space: pre-wrap; overflow-wrap: anywhere; font-size: 13px; line-height: 1.85; color: #657460; margin-bottom: 23px; }
.yu-app .yu-resource-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.yu-app .yu-watch { color: #fff; background: var(--yu-navy); padding: 10px 15px; min-height: 40px; font-size: 11px; }
.yu-app .yu-watch:hover { background: #2e5147; }
.yu-app .yu-watch .yu-icon { width: 14px; height: 14px; }
.yu-app .yu-link { color: #6d7f60; background: none; padding: 7px 0; min-height: 32px; font-size: 11px; }
.yu-app .yu-link .yu-icon { width: 13px; height: 13px; }
.yu-app .yu-url { display: block; color: #9aa18f; font-size: 10px; line-height: 1.7; margin-top: 10px; overflow-wrap: anywhere; text-decoration: none; }
.yu-app .yu-url:hover { text-decoration: underline; color: #586e4d; }
.yu-app .yu-player { aspect-ratio: 16/9; background: #172626; border-radius: 10px; overflow: hidden; margin-top: 21px; }
.yu-app .yu-player iframe { width: 100%; height: 100%; border: 0; }
.yu-app .yu-material-footer { margin-top: 24px; padding-top: 16px; border-top: 1px solid #e7eadf; }
.yu-app .yu-complete { display: flex; align-items: center; gap: 9px; border: 0; padding: 3px 0; background: none; color: #75836b; font-size: 11px; }
.yu-app .yu-complete-circle { display: inline-flex; align-items: center; justify-content: center; width: 23px; height: 23px; border: 1px solid #c3cdb9; border-radius: 50%; }
.yu-app .yu-complete-circle .yu-icon { opacity: 0; width: 13px; height: 13px; }
.yu-app .yu-complete[aria-pressed=true] { color: #526f3f; }
.yu-app .yu-complete[aria-pressed=true] .yu-complete-circle { background: #e2ebd4; border-color: #a9bc95; }
.yu-app .yu-complete[aria-pressed=true] .yu-icon { opacity: 1; }
.yu-app .yu-day-navigation { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--yu-line); }
.yu-app .yu-day-navigation .yu-secondary { font-size: 11px; padding: 10px 12px; }
.yu-app .yu-empty-day { text-align: center; padding: 42px 18px; border: 1px dashed #c7d1ba; border-radius: 13px; background: #f7f9f0; }
.yu-app .yu-empty-day>span { display: flex; justify-content: center; align-items: center; margin: 0 auto 17px; width: 53px; height: 53px; border-radius: 50%; background: #e9eedc; color: #84976d; }
.yu-app .yu-empty-day h3 { font: 400 26px var(--yu-serif); margin-bottom: 12px; }
.yu-app .yu-empty-day p { font-size: 12px; color: #859176; line-height: 1.8; }
.yu-app .yu-edit-fieldset { margin: 0; padding: 0; min-width: 0; border: 0; }
.yu-app .yu-settings { border: 1px solid #d6dfcc; border-radius: 11px; background: #f9fbf2; margin: 5px 0 27px; }
.yu-app .yu-settings summary { list-style: none; padding: 15px 18px; display: flex; align-items: center; justify-content: space-between; font-size: 12px; color: #4c6444; font-weight: 650; cursor: pointer; }
.yu-app .yu-settings summary::-webkit-details-marker { display: none; }
.yu-app .yu-settings summary .yu-icon { width: 14px; height: 14px; transition: transform .2s; }
.yu-app .yu-settings[open] summary .yu-icon { transform: rotate(90deg); }
.yu-app .yu-settings>div { padding: 4px 21px 22px; }
.yu-app label:not(.yu-group,.yu-mode,.yu-search) { display: block; color: #58694e; font-size: 11px; font-weight: 650; line-height: 1.6; margin-bottom: 17px; }
.yu-app input:not([type=radio],[type=checkbox],[type=search]), .yu-app textarea { background: #ffffffdb; border: 1px solid #d6decf; border-radius: 9px; padding: 12px 13px; font-size: 12px; line-height: 1.6; color: #253a26; margin-top: 7px; width: 100%; min-width: 0; font-weight: 400; }
.yu-app input::placeholder, .yu-app textarea::placeholder { color: #9aa38d; }
.yu-app textarea { min-height: 92px; }
.yu-app .yu-editor-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 17px; }
.yu-app .yu-editor-row strong { display: flex; align-items: center; gap: 11px; font-size: 12px; font-weight: 650; }
.yu-app .yu-edit-number { font: 400 22px var(--yu-serif); color: #7f936c; }
.yu-app .yu-editor-hint { color: #8b977e; font-size: 11px; line-height: 1.8; margin-top: -9px; }
.yu-app .yu-material-editor { background: #fffff9; padding: 22px; border: 1px solid #d7e0cc; border-radius: 12px; margin-bottom: 18px; }
.yu-app .yu-material-editor>label:last-child { margin-bottom: 0; }
.yu-app .yu-input-icon { display: block; position: relative; }
.yu-app .yu-input-icon>.yu-icon { position: absolute; left: 12px; top: 21px; width: 15px; height: 15px; color: #9ba98a; }
.yu-app .yu-input-icon input { padding-left: 36px; }
.yu-app .yu-add-material { border: 1px dashed #b5c6a6; background: #f2f6e9; width: 100%; color: #657e52; font-size: 12px; padding: 16px; }
.yu-app .yu-audience { border: 0; padding: 0; margin: 23px 0 0; min-width: 0; }
.yu-app .yu-audience legend { font-size: 11px; color: #576d4b; font-weight: 650; margin-bottom: 10px; }
.yu-app .yu-mode-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.yu-app .yu-mode { display: flex; align-items: center; gap: 10px; padding: 14px; border: 1px solid #d9e1d1; border-radius: 10px; color: #526846; cursor: pointer; background: #fffffa; position: relative; }
.yu-app .yu-mode:has(input:checked) { border-color: #9eb58a; background: #edf3e3; }
.yu-app .yu-mode input, .yu-app .yu-group input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.yu-app .yu-mode:has(input:focus-visible), .yu-app .yu-group:has(input:focus-visible) { outline: 3px solid #d79957; outline-offset: 3px; }
.yu-app .yu-choice-circle { width: 17px; height: 17px; border: 1px solid #b3c1a5; background: #fff; border-radius: 50%; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; }
.yu-app .yu-mode input:checked+.yu-choice-circle::after { content: ''; width: 7px; height: 7px; background: #5b7844; border-radius: 50%; }
.yu-app .yu-mode>span:last-child { display: grid; grid-template-columns: 18px 1fr; align-items: center; gap: 3px 6px; min-width: 0; }
.yu-app .yu-mode>span:last-child>.yu-icon { width: 14px; height: 14px; }
.yu-app .yu-mode strong { font-size: 11px; }
.yu-app .yu-mode small { font-size: 9px; font-weight: 400; color: #8b997d; grid-column: 2; }
.yu-app .yu-audience-groups { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 13px; }
.yu-app .yu-group { border: 1px solid #d0ddc5; padding: 9px 12px; display: inline-flex; align-items: center; gap: 8px; border-radius: 100px; position: relative; cursor: pointer; font-size: 11px; color: #6c7d5c; background: #fffefa; }
.yu-app .yu-group:has(input:checked) { background: #e7efdc; border-color: #a7bf90; color: #486238; }
.yu-app .yu-group .yu-icon { width: 10px; height: 10px; opacity: 0; }
.yu-app .yu-group input:checked+.yu-choice-circle { background: #667f4d; border-color: #667f4d; color: white; }
.yu-app .yu-group input:checked+.yu-choice-circle>.yu-icon { opacity: 1; }
.yu-app .yu-audience>.yu-access-note { margin-top: 14px; }
.yu-app .yu-dialog { width: min(570px,calc(100% - 28px)); max-height: calc(100dvh - 36px); overflow-y: auto; padding: 30px; border: 1px solid #bfcbb1; border-radius: 18px; background: #fbfcf5; color: var(--yu-ink); box-shadow: 0 24px 100px #172d2760; }
.yu-app .yu-dialog::backdrop { background: #172d296e; backdrop-filter: blur(4px); }
.yu-app .yu-dialog h2 { font: 400 32px/1.2 var(--yu-serif); margin-bottom: 12px; }
.yu-app .yu-dialog p:not(.yu-access-note) { font-size: 12px; line-height: 1.8; }
.yu-app .yu-dialog .yu-editor-row { margin-bottom: 11px; }
.yu-app .yu-dialog-footer { border-top: 1px solid #dfe6d5; margin-top: 25px; padding-top: 21px; display: flex; justify-content: space-between; align-items: center; gap: 14px; }
.yu-app .yu-dialog-footer>span { color: #8b977f; font-size: 10px; }
.sp-workouts ul { list-style:none; margin:0; padding:0; }
.sp-workouts .sp-workout-row { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px 18px; padding:15px 0; border-bottom:1px solid #d5e1d9; }
.sp-workout-row>div { display:grid; gap:4px; flex:1 1 145px; min-width:0; overflow-wrap:anywhere; }
.sp-workout-row small, .sp-workouts .yu-muted { color:#53675c; }
.sp-workouts summary { padding:14px 0; cursor:pointer; }
.sp-workout-time { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr)); gap:0 12px; }
.sp-workout-dialog fieldset { min-width:0; padding:0; border:0; margin:12px 0; }
.sp-workout-dialog .sp-weekdays:not([hidden]) { display:flex; flex-wrap:wrap; gap:6px; }
.sp-weekdays legend { margin-bottom:8px; }
.yu-app .sp-weekdays label { position:relative; margin:0; display:inline-flex; }
.yu-app .sp-weekdays input { position:absolute; opacity:0; width:1px; height:1px; }
.sp-weekdays span { display:grid; min-height:44px; min-width:44px; place-items:center; border:1px solid #b5c6bb; border-radius:9px; cursor:pointer; }
.sp-weekdays input:checked+span { border-color:#2e634c; background:#2e634c; color:white; }
.sp-weekdays input:focus-visible+span { outline:3px solid #b15b2e; outline-offset:2px; }
.yu-app .yu-day-heading:has(.yu-copy-day) { flex-wrap:wrap; justify-content:flex-start; }
.yu-app .yu-day-heading .yu-copy-day { margin-inline-start:auto; }
.yu-app :is(.yu-copy-day,.sp-workouts button,.sp-workout-dialog button,.sp-workout-dialog select) { min-height:44px; }
.yu-app .sp-workout-dialog select { width:100%; padding:8px 12px; border:1px solid #b5c6bb; border-radius:8px; background:white; color:inherit; font:inherit; }
.yu-app .yu-delete-button { background: #a94634; }
.yu-app .yu-inline-error { padding: 14px 16px; margin: 14px 0 20px; border: 1px solid #e4bb9e; background: #fff4e8; color: #944726; font-size: 12px; line-height: 1.7; border-radius: 10px; white-space: pre-line; overflow-wrap: anywhere; }
.yu-app .yu-inline-error button { margin: 12px 0 0; display: block; }
.yu-app .yu-loading { padding: 60px 20px; text-align: center; font-size: 14px; color: #677e5a; }
.yu-app[aria-busy=true] { cursor: progress; }
@media (max-width: 1060px) {
  .yu-app .yu-learning-layout { grid-template-columns: 175px minmax(0,1fr); gap: 20px; }
  .yu-app .yu-hero-side { padding: 27px; }
  .yu-app .yu-hero-stats { gap: 20px; }
}
@media (max-width: 700px) {
  .yu-app .yu-hero { grid-template-columns: 1fr; }
  .yu-app .yu-hero-copy { padding: 28px; }
  .yu-app .yu-hero-copy .yu-eyebrow { margin-bottom: 24px; font-size: 8px; gap: 7px; }
  .yu-app .yu-hero h2 { font-size: 46px; }
  .yu-app .yu-hero-side { border: 0; border-top: 1px solid #b6c9a526; min-height: 90px; padding: 24px 28px; }
  .yu-app .yu-hero-side>.yu-private { display: none; }
  .yu-app .yu-hero-stats { gap: 33px; }
  .yu-app .yu-hero-monogram { font-size: 130px; bottom: -2px; right: 20px; }
  .yu-app .yu-hero-stats strong { font-size: 27px; }
  .yu-app .yu-catalog-top { flex-wrap: wrap; }
  .yu-app .yu-search { width: 100%; margin-top: 5px; }
  .yu-app .yu-course-grid { grid-template-columns: 1fr; }
  .yu-app .yu-course-cover { min-height: 128px; }
  .yu-app .yu-training-hero { flex-direction: column; align-items: flex-start; gap: 22px; padding: 25px; }
  .yu-app .yu-training-progress { width: 100%; display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 6px 13px; }
  .yu-app .yu-training-progress strong { font-size: 31px; }
  .yu-app .yu-training-progress .yu-progress { grid-column: 1/-1; }
  .yu-app .yu-toolbar { gap: 13px; padding-bottom: 17px; margin-bottom: 5px; }
  .yu-app .yu-toolbar>div { width: 100%; }
  .yu-app .yu-toolbar .yu-primary, .yu-app .yu-toolbar .yu-secondary { font-size: 11px; padding: 10px 12px; }
  .yu-app .yu-draft-state { width: 100%; margin: 0 0 2px; }
  .yu-app .yu-learning-layout { grid-template-columns: minmax(0,1fr); gap: 19px; }
  .yu-app .yu-syllabus { position: static; }
  .yu-app .yu-syllabus-title { padding-bottom: 8px; }
  .yu-app .yu-days { display: flex; flex-wrap: nowrap; overflow-x: auto; max-height: none; gap: 6px; padding-bottom: 7px; }
  .yu-app .yu-day-tab { width: auto; min-width: 130px; flex-shrink: 0; padding: 10px; }
  .yu-app .yu-day-tab>.yu-icon { display: none; }
  .yu-app .yu-day-tab small { font-size: 9px; }
  .yu-app .yu-add-day { margin: 8px 0 0; min-height: 36px; padding: 8px; }
  .yu-app .yu-syllabus>.yu-small { display: none; }
  .yu-app .yu-material { padding: 21px; }
  .yu-app .yu-material h3 { font-size: 20px; }
  .yu-app .yu-material-editor { padding: 17px; }
  .yu-app .yu-mode { padding: 12px 9px; gap: 8px; }
  .yu-app .yu-mode>span:last-child { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; }
  .yu-app .yu-mode small { font-size: 8px; }
  .yu-app .yu-mode>span:last-child>.yu-icon { display: none; }
  .yu-app .yu-dialog { padding: 22px; }
  .yu-app .yu-dialog h2 { font-size: 28px; }
  .yu-app .yu-dialog-footer { flex-wrap: wrap; }
  .yu-app .yu-dialog-footer>span { width: 100%; }
  .yu-app .yu-day-navigation .yu-icon { width: 14px; height: 14px; }
  .yu-app .yu-day-navigation .yu-secondary { font-size: 10px; padding: 9px; gap: 4px; }
}
@media (prefers-reduced-motion: reduce) { .yu-app *, .yu-app *::before, .yu-app *::after { transition: none !important; scroll-behavior: auto !important; } }

.yu-app .yu-training.is-editing .yu-toolbar { position: sticky; top: 12px; z-index: 10; padding: 12px 15px; background: #f8faf2f5; border: 1px solid #d6dfcc; border-radius: 11px; box-shadow: 0 6px 22px #263f2510; backdrop-filter: blur(8px); margin: 16px 0; }
.yu-app .yu-take-card { margin-top: 14px; border: 1px solid #b9c9a9; color: #46643b; background: #eef4e5; border-radius: 8px; padding: 10px; font-size: 11px; display: flex; justify-content: center; align-items: center; gap: 7px; }
.yu-app .yu-take-card .yu-icon { width: 15px; height: 15px; }
.yu-app .yu-passage-state { color: #738669; font-size: 10px; margin-top: 13px; }
.yu-app .yu-passage-banner { margin: 20px 0 6px; padding: 21px 24px; border: 1px solid #c7d5bc; border-radius: 13px; background: #f1f6e8; display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.yu-app .yu-passage-banner h3 { font-size: 18px; letter-spacing: -.025em; margin: 8px 0; }
.yu-app .yu-passage-banner p { color: #76886a; font-size: 12px; line-height: 1.6; margin-bottom: 3px; }
.yu-app .yu-passage-banner .yu-link { font-size: 10px; }
.yu-app .yu-passage-banner.is-completed { background: #eaf2df; border-color: #b3ca9e; }
.yu-app .yu-passage-banner-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.yu-app .yu-day-close { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; margin-top: 21px; }
.yu-app .yu-day-close>span { color: #8b987f; font-size: 10px; }
.yu-app .yu-pause-note { font-size: 11px; color: #8c987d; margin: 21px 0; }
.yu-app .yu-take-plan { padding: 16px; border: 1px solid #d5dec9; border-radius: 10px; background: #f1f5e9; }
.yu-app .yu-take-plan strong { font-size: 12px; color: #536c43; }
.yu-app .yu-take-plan p { margin: 9px 0 0; color: #81916f; }
.yu-app.yu-control { padding: 28px; border: 1px solid #d2ddc8; border-radius: 17px; background: #fbfcf5; margin-top: 22px; }
.yu-app .yu-control-title { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 21px; }
.yu-app .yu-control-title h2 { font-size: 23px; letter-spacing: -.03em; margin: 9px 0 0; }
.yu-app .yu-control-title h2>span { color: #879a75; font-size: 13px; margin-left: 8px; }
.yu-app .yu-control-empty { color: #829374; font-size: 13px; line-height: 1.7; margin: 0; }
.yu-app .yu-control-course { border: 1px solid #d5dfcc; border-radius: 11px; overflow: hidden; background: #fffffb; margin: 12px 0; }
.yu-app .yu-control-course>summary { list-style: none; display: flex; gap: 12px; align-items: center; padding: 19px; cursor: pointer; }
.yu-app .yu-control-course>summary::-webkit-details-marker { display: none; }
.yu-app .yu-control-icon { display: flex; justify-content: center; align-items: center; width: 38px; height: 38px; background: #eaf1e0; border-radius: 10px; color: #5c7b46; flex-shrink: 0; }
.yu-app .yu-control-course>summary>span:nth-child(2) { min-width: 0; }
.yu-app .yu-control-course>summary strong { display: block; font-size: 16px; font-weight: 650; overflow-wrap: anywhere; }
.yu-app .yu-control-course>summary small { display: block; color: #8b987c; font-size: 10px; margin-top: 6px; line-height: 1.6; }
.yu-app .yu-control-percent { margin-left: auto; font: 400 24px var(--yu-serif); color: #5e7b45; }
.yu-app .yu-control-course>summary>.yu-icon { width: 15px; height: 15px; color: #9ba98d; transition: transform .15s; }
.yu-app .yu-control-course[open]>summary>.yu-icon { transform: rotate(90deg); }
.yu-app .yu-control-body { padding: 0 20px 20px; }
.yu-app .yu-control-body>.yu-progress { margin: 0 0 20px; }
.yu-app .yu-control-days { display: grid; gap: 4px; }
.yu-app .yu-control-day { display: flex; gap: 12px; align-items: flex-start; padding: 14px 0; border-bottom: 1px solid #e9eee0; }
.yu-app .yu-control-day-number { font: 400 20px var(--yu-serif); color: #7a9068; width: 28px; flex-shrink: 0; }
.yu-app .yu-control-day.is-closed .yu-control-day-number { color: #58813c; }
.yu-app .yu-control-day>div:nth-child(2) { flex: 1; min-width: 0; }
.yu-app .yu-control-day a { color: #496a3a; font-size: 13px; font-weight: 650; text-decoration: none; }
.yu-app .yu-control-day a:hover { text-decoration: underline; }
.yu-app .yu-control-day small { color: #8f9c82; display: block; margin-top: 4px; font-size: 10px; }
.yu-app .yu-control-day ul, .yu-app .yu-focus-materials { color: #7a8a6d; padding-left: 16px; font-size: 11px; line-height: 1.8; margin: 8px 0 0; overflow-wrap: anywhere; }
.yu-app .yu-control-day.is-empty { opacity: .65; }
.yu-app .yu-control-day .yu-day-close { margin: 0 0 0 auto; }
.yu-app .yu-control-day .yu-day-close button { min-height: 34px; padding: 9px 11px; font-size: 10px; }
.yu-app .yu-control-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 20px; }
.yu-app .yu-control-footer .yu-secondary { font-size: 11px; }
.yu-app .yu-control-completed { margin-top: 23px; border-top: 1px solid #d7e0cb; padding-top: 18px; }
.yu-app .yu-control-completed>summary { color: #758b63; cursor: pointer; font-size: 13px; }
.yu-app .yu-control-completed>summary span { margin-left: 8px; font-size: 11px; }
.yu-app.yu-focus-day { background: #fbfdf6; border: 1px solid #bfcfae; border-left: 4px solid #79985b; border-radius: 12px; padding: 21px; margin: 9px 0; }
.yu-app .yu-focus-label { display: flex; gap: 9px; align-items: center; flex-wrap: wrap; color: #6c8656; font-size: 9px; font-weight: 700; letter-spacing: .08em; }
.yu-app .yu-focus-label>.yu-icon { width: 16px; height: 16px; }
.yu-app .yu-focus-label>span { font-size: 10px; font-weight: 600; letter-spacing: 0; border-left: 1px solid #c3d2b4; padding-left: 9px; }
.yu-app .yu-focus-label .yu-overdue { color: #a0623a; }
.yu-app.yu-focus-day h3 { font-size: 19px; margin: 12px 0 9px; letter-spacing: -.025em; overflow-wrap: anywhere; }
.yu-app.yu-focus-day>p:not(.yu-passage-error) { color: #869875; font-size: 11px; margin-bottom: 0; }
.yu-app .yu-focus-actions { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin-top: 17px; gap: 12px; }
.yu-app .yu-focus-actions .yu-day-close { margin: 0; }
.yu-app .yu-focus-actions .yu-day-close button { min-height: 36px; font-size: 11px; }
.yu-app .yu-passage-error { font-size: 12px; line-height: 1.8; color: #9e4d32; padding: 12px; background: #fff1e8; border-radius: 8px; margin-top: 14px; }
.yu-app .yu-passage-error button { margin-left: 12px; min-height: 30px; padding: 6px 12px; font-size: 10px; }
@media(max-width:700px) {
  .control-focus-page>.main-goals-intro { flex-direction: column; align-items: flex-start; gap: 16px; }
  .yu-app .yu-passage-banner { flex-direction: column; align-items: flex-start; padding: 20px; }
  .yu-app .yu-passage-banner-actions { justify-content: flex-start; }
  .yu-app.yu-control { padding: 18px; }
  .yu-app .yu-control-title { flex-direction: column; align-items: flex-start; gap: 7px; }
  .yu-app .yu-control-title h2 { font-size: 21px; }
  .yu-app .yu-control-course>summary { padding: 15px 12px; gap: 9px; }
  .yu-app .yu-control-course>summary strong { font-size: 14px; }
  .yu-app .yu-control-icon { width: 30px; height: 30px; }
  .yu-app .yu-control-percent { font-size: 20px; }
  .yu-app .yu-control-body { padding: 0 13px 15px; }
  .yu-app .yu-control-day { flex-wrap: wrap; gap: 9px; }
  .yu-app .yu-control-day>div:nth-child(2) { flex-basis: calc(100% - 45px); }
  .yu-app .yu-control-day .yu-day-close { margin: 4px 0 0 37px; }
  .yu-app.yu-focus-day { padding: 17px; }
}

/* Sport uses the same library rhythm, with a field-green palette and clear exercise rows. */
.yu-app.sport-library { --yu-rust:#326c58; --yu-navy:#193d33; --yu-paper:#f7faf5; --yu-line:#d5e1d7; }
.sport-library .yu-primary:hover { background:#245442; }
.sp-home,.sp-zone-page { display:grid; gap:28px; }
.sp-hero { position:relative; display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:24px; padding:42px; border:1px solid #d3e2d5; border-radius:24px; background:#eef4eb; overflow:hidden; }
.sp-hero h2 { margin:20px 0; font:700 clamp(36px,4vw,62px)/1.08 var(--yu-serif); letter-spacing:-.03em; }
.sp-hero h2 em { font-weight:400; color:#44745e; }
.sp-hero p { color:#607768; line-height:1.7; }
.sp-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.sp-track { position:relative; padding:22px; align-self:stretch; border:1px solid #b8cdbb; border-radius:130px; color:#607d63; overflow:hidden; display:grid; align-content:center; justify-content:center; }
.sp-track::before,.sp-track::after { content:''; position:absolute; inset:12px; border:1px solid #c5d6c5; border-radius:120px; }
.sp-track::after { inset:25px; }
.sp-track span { position:absolute; top:36px; left:50%; font:500 13px monospace; }
.sp-track strong { font:850 29px/.98 'Segoe UI',sans-serif; letter-spacing:-.04em; color:#2f5844; transform:rotate(-9deg); }
.sp-hero-stats { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:30px; padding-top:25px; border-top:1px solid #cfddcd; color:#63786a; font-size:12px; }
.sp-hero-stats strong { display:block; margin-bottom:6px; color:#214734; font:700 28px var(--yu-serif); }
.sp-section { padding:26px; border:1px solid #dbe3d8; border-radius:20px; background:#fcfdf9; }
.sp-section-title { display:flex; align-items:center; flex-wrap:wrap; gap:16px; justify-content:space-between; margin-bottom:22px; }
.sp-section-title h2 { font:650 26px var(--yu-serif); margin:6px 0 0; }
.sp-section-title h2 span { margin-left:8px; color:#7f9586; font-size:18px; }
.sp-zone-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:16px; }
.sp-zone-card { padding:23px; border:1px solid #cfdece; border-radius:15px; background:#f1f5ed; min-width:0; }
.sp-zone-number { display:block; margin-bottom:18px; color:#8aa087; font:500 11px monospace; }
.sp-zone-card h3 { margin-bottom:14px; }
.sp-zone-card h3 button { display:flex; align-items:start; justify-content:space-between; gap:20px; width:100%; padding:0; border:0; background:none; color:#294835; text-align:left; font:700 22px var(--yu-serif); cursor:pointer; overflow-wrap:anywhere; }
.sp-zone-card p { color:#71806f; font-size:13px; line-height:1.65; white-space:pre-wrap; overflow-wrap:anywhere; }
.sp-zone-card footer { display:grid; gap:9px; margin-top:22px; font-size:12px; color:#748571; }
.sp-zone-card footer small { color:#456a4b; }
.sp-program-tools { display:flex; align-items:center; flex-wrap:wrap; gap:16px; justify-content:space-between; margin-bottom:20px; }
.sp-program-tools .yu-filters { margin:0; }
.sp-zone-hero { display:flex; gap:20px; justify-content:space-between; align-items:start; padding:32px; border:1px solid #cfdece; border-radius:20px; background:#eef4eb; }
.sp-zone-hero h2 { margin:16px 0; font:700 clamp(30px,4vw,46px) var(--yu-serif); overflow-wrap:anywhere; }
.sp-zone-hero p { color:#607768; white-space:pre-wrap; line-height:1.7; }
.sp-zone-controls { display:flex; gap:8px; flex-wrap:wrap; flex-shrink:0; }
.sp-zone-badge { display:inline-flex; padding:5px 9px; margin-bottom:10px; border:1px solid #c9dac9; border-radius:6px; background:#edf4e9; color:#416b48; font-size:11px; font-weight:650; text-align:left; }
button.sp-zone-badge { cursor:pointer; }
.sp-resource-grid { display:grid; gap:16px; }
.sp-resource { padding:23px; border:1px solid var(--yu-line); border-radius:14px; background:#fff; min-width:0; }
.sp-resource-top { display:flex; gap:14px; align-items:start; justify-content:space-between; }
.sp-resource-top h3 { font-size:18px; overflow-wrap:anywhere; }
.sp-resource p { white-space:pre-wrap; line-height:1.75; color:#5d7265; overflow-wrap:anywhere; }
.sp-resource-links { display:flex; flex-wrap:wrap; gap:10px; }
.sp-resource-links a { display:inline-flex; gap:9px; align-items:center; padding:10px 13px; max-width:100%; border:1px solid #d3dfd2; border-radius:9px; background:#f5f8f0; color:#376047; text-decoration:none; font-size:12px; overflow-wrap:anywhere; }
.sp-link-fields { display:grid; gap:12px; }
.sp-link-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr) auto; gap:10px; align-items:end; }
.sp-link-row .yu-icon-button { margin-bottom:2px; }
.sp-exercise-fields { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:16px; }
.sp-exercise header { display:flex; align-items:center; flex-wrap:wrap; gap:15px; margin-bottom:16px; }
.sp-exercise header h3 { margin:0; flex:1; min-width:120px; }
.sp-exercise-number { color:#86a28c; font:500 12px monospace; }
.sp-repetitions { padding:7px 12px; border:1px solid #bcd3b9; border-radius:8px; color:#2b6741; background:#edf5e8; font-weight:750; font-size:17px; }
.sp-empty { padding:30px 20px; border:1px dashed #cddbc9; border-radius:14px; color:#7d8e79; line-height:1.7; }
.sp-empty h3 { font:650 23px var(--yu-serif); }
.yu-passage-history { margin:18px 0; padding:14px 18px; border:1px solid var(--yu-line); border-radius:12px; color:var(--yu-muted); font-size:13px; }
.yu-passage-history summary { cursor:pointer; }
.yu-passage-history p { display:flex; flex-wrap:wrap; gap:14px; justify-content:space-between; padding-top:15px; margin:0; }
.yu-app .yu-material-description,.yu-app .yu-course-description { white-space:pre-wrap; }
@media(max-width:760px){
 .sp-hero { grid-template-columns:minmax(0,1fr); padding:25px; }
 .sp-track { display:none; }
 .sp-hero-stats { gap:20px; }
 .sp-section { padding:18px; }
 .sp-section-title { align-items:start; }
 .sp-zone-hero { padding:23px; flex-direction:column; }
 .sp-zone-controls { flex-shrink:1; }
 .sp-exercise-fields,.sp-link-row { grid-template-columns:minmax(0,1fr); }
 .sp-link-row { position:relative; padding:12px; border:1px solid var(--yu-line); border-radius:10px; }
 .sp-link-row>.yu-icon-button { justify-self:end; }
 .sp-program-tools .yu-search { width:100%; }
}

/* A learning day stays current until its explicit closure, including rest. */
.yu-app .yu-day-tab strong { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.yu-app .yu-day-state { padding:3px 6px; border-radius:5px; background:#edf2e6; color:#64804f; font:600 8px/1.2 var(--yu-sans, 'Segoe UI', sans-serif); letter-spacing:0; }
.yu-app .yu-day-tab.is-current-day .yu-day-state { background:#dfead2; color:#496a36; }
.yu-app .yu-day-tab.is-current-day:not(.is-active) { box-shadow:inset 3px 0 #9ab47d; }
.yu-app .yu-rest-day { padding:42px 28px; border:1px solid #d8e0cd; border-radius:15px; background:linear-gradient(145deg,#f7f8ef,#edf3e4); }
.yu-app .yu-rest-day>span { display:inline-grid; place-items:center; width:62px; height:62px; margin-bottom:10px; border:1px solid #d1dec1; border-radius:50%; background:#f9fbf4; color:#7b925f; }
.yu-app .yu-rest-day>span .yu-icon { width:28px; height:28px; }
.yu-app .yu-rest-day h3 { color:#405635; font:500 27px/1.2 var(--yu-serif); margin:10px 0 13px; }
.yu-app .yu-rest-day p { max-width:400px; margin:0 auto 20px; color:#697d59; font-size:14px; line-height:1.8; }
.yu-app.sport-library .yu-rest-day { border-color:#ccded1; background:linear-gradient(145deg,#f3f8f0,#e8f2e9); }
.yu-app .yu-day-close.is-preview { padding:14px 16px; border:1px dashed #d4ddc9; border-radius:10px; background:#fafbf5; }
.yu-app .yu-day-close.is-preview>span { flex:1; min-width:170px; line-height:1.7; color:#78866b; }
.yu-app .yu-day-close.is-preview button:disabled { opacity:.5; cursor:default; }
.yu-app .yu-day-waiting { display:inline-block; padding:7px 9px; border:1px solid #dce4d3; border-radius:7px; color:#8b997e; font-size:10px; line-height:1.4; white-space:nowrap; }
.yu-app .yu-control-day.is-current-day { margin:0 -9px; padding-left:9px; padding-right:9px; border-radius:9px; background:#f2f6e9; }
.yu-app .yu-control-day.is-current-day small { color:#5f7d43; font-weight:650; }
.yu-app .yu-control-day.is-rest .yu-control-day-number { color:#8b9d78; }
.yu-app .yu-rest-copy { margin:8px 0 0; font-size:12px; line-height:1.8; color:#718361; }
.yu-app.yu-focus-day>.yu-rest-copy { max-width:480px; font-size:13px; color:#617a4d; }
.yu-app .yu-focus-label>.yu-focus-state { padding:4px 7px; border:0; border-radius:5px; color:#5c7648; background:#eaf1df; font-size:9px; }
.yu-app.yu-focus-day.is-next-day { border-left-color:#c7d5b8; background:#fcfdf9; }
.yu-app.yu-focus-day.is-next-day .yu-focus-label>.yu-focus-state { color:#80916d; background:#f0f4e9; }
.yu-next-days .yu-next-intro { max-width:680px; margin:0 0 18px; color:#7c8d70; font-size:13px; line-height:1.7; }
@media(max-width:700px) {
 .yu-app .yu-rest-day { padding:30px 20px; }
 .yu-app .yu-rest-day h3 { font-size:24px; }
 .yu-app .yu-control-day>.yu-day-waiting { margin-left:37px; }
 .yu-app .yu-day-close.is-preview { align-items:flex-start; }
}

/* Direct resources in Control Center: opening a link never completes a lesson. */
.yu-app .yu-direct-material-links{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 9px}
.yu-app .yu-direct-material-links a{display:inline-flex;align-items:center;gap:7px;min-height:44px;max-width:100%;padding:8px 11px;border:1px solid #d4dfc9;border-radius:9px;background:#f7faef;color:#456334;font-size:11px;font-weight:650;text-decoration:none;line-height:1.5;box-sizing:border-box}
.yu-app .yu-direct-material-links a:hover{background:#ebf2df;border-color:#9fb58b;text-decoration:none}
.yu-app .yu-direct-material-links a:focus-visible{outline:3px solid #9b7d43;outline-offset:3px}
.yu-app .yu-direct-material-links a>svg{width:15px;height:15px;flex:none}.yu-app .yu-direct-material-links a>span{min-width:0;overflow-wrap:anywhere}.yu-app .yu-direct-material-links .yu-direct-external{margin-left:3px;color:#82966f;flex:none}

/* Per-item progress in both Control Center projections. */
.yu-app .yu-control-material-toggle{min-height:44px;max-width:100%;padding:8px 0;text-align:left;color:#4d6542;font-size:12px}.yu-app .yu-control-material-toggle:disabled{cursor:default;opacity:.65}.yu-app [data-yu-control-material]{margin-bottom:12px}.yu-app [data-yu-control-material].is-completed>.yu-focus-material-title{color:#48633c}.yu-app [data-yu-control-material].is-completed>.spotlight-card-tail>.spotlight-card-entry{display:none}.yu-app .yu-control-material-toggle .yu-complete-circle{flex-shrink:0}
