@font-face{font-family:Caveat YUNIK;src:url(/_astro/Caveat-subset.VNSsKOpY.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}.y-moment .is-hand{letter-spacing:0;font-family:Caveat YUNIK,Segoe Print,Comic Sans MS,cursive;font-weight:700}.y-seal{color:var(--y-done);transform:rotate(var(--y-m-stamp-tilt,-6deg));white-space:nowrap;border:2px solid;border-radius:999px;align-items:center;gap:.45rem;padding:.3rem .8rem .3rem .3rem;font-weight:700;line-height:1;display:inline-flex}.y-seal-ring{border:2px solid;border-radius:50%;place-items:center;width:1.9rem;height:1.9rem;font-size:1.05rem;display:inline-grid}.y-seal-word{letter-spacing:.02em;font-size:.9375rem;line-height:1.25rem}.y-moment-stamp{display:inline-flex}.calendar-detail-header{position:relative}.calendar-detail-header>.y-moment-stamp{pointer-events:none;position:absolute;inset-block-start:0;inset-inline-end:0}.grade-calendar .day-next:has(.y-moment-stamp){flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.y-moment-mark{border:1px solid var(--y-line);border-radius:var(--y-radius-card);background:var(--y-paper);box-shadow:inset 4px 0 0 -3px var(--y-margin);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.25rem 1rem;padding:.9rem 1.1rem;display:grid}.y-moment-mark .y-moment-over{color:var(--y-pen);grid-column:1/-1;margin:0;font-size:1.5rem;line-height:1.75rem}.y-moment-figures{align-items:flex-end;gap:.35rem;display:inline-flex}.y-moment-new{align-items:flex-start;display:inline-flex;position:relative}.y-mark.is-big{width:2.625rem;height:3.5rem}.y-mark.is-big .y-mark-stroke{stroke-width:2.4px}.y-mark.is-big.is-crossed{opacity:.75;width:2rem;height:2.7rem}.y-mark.is-gold .y-mark-stroke{stroke:var(--y-gold-ink)}.y-mark-star.is-big{width:1.6rem;height:1.6rem;transform:rotate(var(--y-m-star-tilt,-8deg));margin:-.4rem 0 0 -.35rem}.y-moment-words{gap:.1rem;min-width:0;display:grid}.y-moment-words p{margin:0}.y-moment-caption{font-size:1.0625rem;font-weight:600;line-height:1.625rem}.y-moment-caption.is-hand{color:var(--y-pen);font-size:1.5rem;line-height:1.75rem}.is-pencil .y-moment-caption{color:var(--y-ink)}.y-moment-score{font-variant-numeric:tabular-nums}.y-moment-title{color:var(--y-muted);font-size:.9375rem;line-height:1.375rem}.y-moment-filled{gap:.75rem;max-width:40rem;display:grid;position:relative}.y-moment-sheet{perspective:1400px;border:1px solid var(--y-line);border-radius:var(--y-radius-card);background:var(--y-paper);gap:.5rem;padding:1rem 1.25rem 1.25rem 2.5rem;display:grid;position:relative}.y-moment-sheet:before{content:"";background:var(--y-margin);width:1px;position:absolute;top:0;bottom:0;left:1.6rem}.y-moment-sheet .y-moment-over{color:var(--y-pen);margin:0;font-size:1.5rem;line-height:1.75rem}.y-moment-sheet .y-diary-section{margin:0}.y-moment-finals{margin:0;padding:0;list-style:none;display:grid}.y-moment-finals li{border-bottom:1px solid var(--y-rule);grid-template-columns:auto minmax(0,1fr) 2.75rem;align-items:center;gap:.5rem;min-height:2.75rem;display:grid}.y-moment-subject{overflow-wrap:anywhere;min-width:0;font-size:.9375rem;font-weight:600;line-height:1.25rem}.y-moment-final{justify-items:center;display:inline-grid}.y-moment-nofinal{color:var(--y-done);font-size:1.3rem;font-weight:700}.y-moment-seal{justify-content:flex-end;padding-top:.5rem;display:flex}.y-moment-seal .y-seal{color:var(--y-check);white-space:normal;text-align:left}.y-moment-seal .y-seal-word{font-size:.8125rem;line-height:1.125rem}.y-moment-book,.y-moment-sky{display:none}:root[data-yunik-theme=night] .y-moment-sky{justify-self:center;width:100%;max-width:32rem;height:auto;display:block}.y-moment-sky-lines line{stroke:var(--y-gold);stroke-width:.8px;opacity:.45}.y-moment-sky-stars circle{fill:var(--y-gold)}@media (width>=1024px){.y-moment-mark .y-moment-over,.y-moment-caption.is-hand,.y-moment-sheet .y-moment-over{font-size:1.75rem;line-height:2rem}}@media (prefers-reduced-motion:no-preference){.y-diary-marks.is-new .y-mark:not(.is-crossed) .y-mark-stroke,.y-moment-new .y-mark-stroke{stroke-dasharray:1;animation:y-m-write var(--y-m-pen-write,.7s) cubic-bezier(.45, .05, .35, 1) both}.y-diary-marks.is-new .y-mark-star,.y-moment-new .y-mark-star{animation:y-m-star var(--y-m-star-pop,.2s) var(--y-ease) both;animation-delay:calc(var(--y-m-pen-write,.7s) + var(--y-m-star-delay,.3s))}.is-fixed .y-mark.is-crossed .y-mark-strike{stroke-dasharray:1;animation:y-m-write var(--y-m-strike,.3s) ease-out both}.is-fixed .y-moment-new .y-mark-stroke{animation:y-m-write var(--y-m-pen-write,.7s) cubic-bezier(.45, .05, .35, 1) both, y-m-gold var(--y-m-gold-shimmer,.6s) ease-in-out both;animation-delay:var(--y-m-strike,.3s), calc(var(--y-m-strike,.3s) + var(--y-m-pen-write,.7s))}.is-fixed .y-moment-new .y-mark-star{animation-delay:calc(var(--y-m-strike,.3s) + var(--y-m-pen-write,.7s) + var(--y-m-star-delay,.3s))}.is-fixed .y-moment-over{animation:y-m-fade var(--y-m-words-fade,.2s) var(--y-ease) both;animation-delay:calc(var(--y-m-strike,.3s) + var(--y-m-pen-write,.7s))}.y-moment-mark .y-moment-words{animation:y-m-fade var(--y-m-words-fade,.2s) var(--y-ease) both;animation-delay:calc(var(--y-m-pen-write,.7s) * .6)}.y-moment-stamp.is-fresh .y-seal{animation:y-m-stamp var(--y-m-stamp-pop,.2s) var(--y-ease) both;animation-delay:var(--y-m-block-fill,.48s)}.grade-calendar .day-task.is-done.y-moment-fill{animation:y-m-fill var(--y-m-block-fill,.48s) ease-out backwards}.grade-calendar .day-task.is-done.y-moment-fill .day-task-done-mark{animation:y-m-tick var(--y-m-tick-draw,.3s) ease-out backwards;animation-delay:calc(var(--y-m-block-fill,.48s) * .5);display:inline-block}.y-moment-filled.is-playing .y-moment-book{z-index:2;pointer-events:none;transform-style:preserve-3d;display:block;position:absolute;inset:0}.y-moment-filled.is-playing .y-moment-leaf{border:1px solid var(--y-line);border-radius:var(--y-radius-card);background:var(--y-paper);opacity:0;transform-origin:0;backface-visibility:hidden;animation:y-m-leaf var(--y-m-page-flip,1.2s) cubic-bezier(.45, .05, .35, 1) both;position:absolute;inset:0}.y-moment-filled.is-playing .y-moment-leaf:nth-child(2){animation-delay:calc(var(--y-m-page-flip,1.2s) * .12)}.y-moment-filled.is-playing .y-moment-leaf:nth-child(3){animation-delay:calc(var(--y-m-page-flip,1.2s) * .24)}.y-moment-filled.is-playing .y-moment-finals .y-mark-stroke{stroke-dasharray:1;animation:y-m-write var(--y-m-final-write,.7s) cubic-bezier(.45, .05, .35, 1) both;animation-delay:calc(var(--y-m-page-flip,1.2s) + var(--y-m-index,0) * var(--y-m-final-stagger,.12s))}.y-moment-filled.is-playing .y-moment-final .y-mark-stamp,.y-moment-filled.is-playing .y-moment-nofinal{animation:y-m-fade var(--y-m-final-write,.7s) ease-out both;animation-delay:calc(var(--y-m-page-flip,1.2s) + var(--y-m-index,0) * var(--y-m-final-stagger,.12s))}.y-moment-filled.is-playing .y-moment-seal .y-seal{animation:y-m-stamp var(--y-m-stamp-pop,.2s) var(--y-ease) both;animation-delay:calc(var(--y-m-page-flip,1.2s) + var(--y-m-rows,1) * var(--y-m-final-stagger,.12s) + var(--y-m-final-write,.7s))}.y-moment-filled.is-playing .y-moment-sky-stars circle{animation:y-m-light var(--y-m-star-light,.4s) ease-out both;animation-delay:calc(var(--y-m-page-flip,1.2s) + var(--y-m-index,0) * var(--y-m-star-stagger,.15s))}.y-moment-filled.is-playing .y-moment-sky-lines line{animation:y-m-light-line var(--y-m-star-light,.4s) ease-out both;animation-delay:calc(var(--y-m-page-flip,1.2s) + var(--y-m-index,0) * var(--y-m-star-stagger,.15s))}}@keyframes y-m-write{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes y-m-gold{0%{stroke:var(--y-pen)}50%{stroke:var(--y-gold)}to{stroke:var(--y-gold-ink)}}@keyframes y-m-star{0%{opacity:0;transform:rotate(var(--y-m-star-tilt,-8deg)) scale(.4)}1%{opacity:1}60%{opacity:1;transform:rotate(var(--y-m-star-tilt,-8deg)) scale(var(--y-m-pop,1.15))}to{opacity:1;transform:rotate(var(--y-m-star-tilt,-8deg)) scale(1)}}@keyframes y-m-stamp{0%{opacity:0;transform:rotate(var(--y-m-stamp-tilt,-6deg)) scale(1)}1%{opacity:1}50%{opacity:1;transform:rotate(var(--y-m-stamp-tilt,-6deg)) scale(var(--y-m-pop,1.15))}to{opacity:1;transform:rotate(var(--y-m-stamp-tilt,-6deg)) scale(1)}}@keyframes y-m-fill{0%{background-color:color-mix(in srgb, var(--y-done) 28%, var(--y-done-tint))}}@keyframes y-m-tick{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes y-m-fade{0%{opacity:0}to{opacity:1}}@keyframes y-m-leaf{0%{opacity:1;transform:rotateY(0)}85%{opacity:1}to{opacity:0;transform:rotateY(-180deg)}}@keyframes y-m-light{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@keyframes y-m-light-line{0%{opacity:0}to{opacity:.45}}.y-moment-sky-stars circle{transform-box:fill-box;transform-origin:50%}.y-diary-moment:empty,.y-diary-filled:empty,#blume-content>article:has(.grade-calendar)>h1:first-child{display:none}.grade-calendar{width:min(100%,70rem);color:var(--blume-foreground);margin:.25rem auto 3rem}.grade-calendar [hidden]{display:none!important}.learning-heading{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.15rem;display:flex}.learning-heading h1{margin:.1rem 0 0}.learning-eyebrow{color:var(--blume-accent);letter-spacing:.13em;margin:0;font-size:.7rem;font-weight:800}.grade-calendar .program-toolbar{align-items:center;gap:.45rem;margin:0;display:flex}.grade-calendar .semester-switch{border-radius:999px;gap:.12rem;padding:.18rem}.grade-calendar .semester-switch button{border-radius:999px;min-height:2.25rem;padding:.42rem .7rem;font-size:.8rem}.grade-calendar .program-settings-button{border-radius:999px;min-height:2.75rem;padding:0 .9rem;font-size:.85rem;font-weight:650}.learning-next{border:1px solid color-mix(in srgb, var(--blume-accent) 24%, var(--blume-border));border-radius:var(--y-radius-card);background:var(--y-surface);justify-content:space-between;align-items:center;gap:1.5rem;min-height:8.5rem;padding:clamp(1.1rem,3vw,1.65rem);display:flex}.learning-next h2{letter-spacing:-.045em;margin:.18rem 0 .2rem;font-size:clamp(1.7rem,4vw,2.35rem);line-height:1}.learning-next-copy>p:last-child{color:var(--blume-muted-foreground);margin:0;font-size:.92rem}.learning-next-summary{min-height:1.5em;line-height:1.5}.learning-continue{background:var(--blume-accent);min-height:3rem;color:var(--blume-accent-foreground);transition:background-color var(--y-duration) var(--y-ease);border-radius:.75rem;flex:none;justify-content:center;align-items:center;gap:.7rem;padding:.7rem 1.05rem;font-size:.92rem;font-weight:800;text-decoration:none;display:inline-flex}.learning-continue:hover{color:var(--blume-accent-foreground);background:color-mix(in srgb, var(--y-accent) 88%, var(--y-ink))}.grade-calendar .calendar-progress{background:0 0;border:0;border-radius:.75rem;grid-template-columns:auto minmax(8rem,1fr) auto;gap:.8rem;margin:.65rem 0 1.25rem;padding:.65rem .8rem;display:grid}.calendar-progress-copy{white-space:nowrap;align-items:baseline;gap:.35rem;display:flex}.grade-calendar .calendar-progress-copy span{font-size:.78rem}.grade-calendar .calendar-progress-track{height:.42rem}.grade-calendar .program-overview{background:0 0;border:0;padding:0}.grade-calendar .program-overview:not(.is-ready){visibility:hidden;animation:0s 4s forwards program-overview-reveal}@keyframes program-overview-reveal{to{visibility:visible}}.grade-calendar .program-overview-heading{align-items:baseline;margin-bottom:.65rem}.grade-calendar :is(.learning-today,.program-overview-heading) h2{letter-spacing:-.015em;font-size:1.25rem;font-weight:700;line-height:1.625rem}@media (width>=1024px){.grade-calendar :is(.learning-today,.program-overview-heading) h2{font-size:1.375rem;line-height:1.75rem}}.grade-calendar .program-overview-heading p{margin:0;font-size:.75rem}.grade-calendar .program-day-date{white-space:nowrap;text-overflow:ellipsis;min-width:0;color:var(--blume-muted-foreground);margin:0;font-size:.75rem;font-weight:500;overflow:hidden}.grade-calendar .program-day-date-short{display:none}.grade-calendar .program-block{border:1px solid var(--y-line);border-radius:var(--y-radius-card);background:var(--yunik-surface);min-width:0;min-height:14rem;box-shadow:none;flex-direction:column;gap:.75rem;padding:.95rem;display:flex}.grade-calendar .program-block:hover,.grade-calendar .program-block:focus-visible{border-color:color-mix(in srgb, var(--blume-accent) 55%, var(--blume-border));box-shadow:none;transform:translateY(-1px)}.grade-calendar .program-block-number{white-space:normal;overflow-wrap:anywhere;width:auto;min-width:0;height:auto;color:var(--blume-foreground);letter-spacing:-.05em;background:0 0;border-radius:0;margin-bottom:.1rem;font-size:1.45rem;font-weight:820;line-height:1.15;display:block}.program-block-top,.program-block-footer{justify-content:space-between;align-items:center;gap:.4rem;display:flex}.program-block-status{color:var(--blume-accent);text-align:right;flex-shrink:0;font-size:.65rem;line-height:1.2}.grade-calendar .program-block.is-next{border-color:var(--blume-accent);box-shadow:inset 0 3px var(--blume-accent)}.grade-calendar .program-block-subjects .program-subject{align-items:center;gap:.5rem;display:flex}.program-block-footer{border-top:1px solid var(--blume-border);margin-top:auto;padding-top:.65rem}.program-block-ticks{gap:3px;display:flex}.grade-calendar .program-block-skeleton{background:color-mix(in srgb, var(--blume-muted) 45%, var(--yunik-surface));pointer-events:none;border-style:dashed}.program-block-ticks i{background:var(--blume-border);border-radius:3px;width:.7rem;height:.25rem}.program-block-ticks i.is-done{background:var(--blume-accent)}.day-exercises{color:var(--blume-muted-foreground);margin:1rem 0 0;font-size:.9rem}.grade-calendar .day-task-heading>.subject-icon{width:2.5rem;height:2.5rem}.grade-calendar .day-task-heading>.subject-icon svg{width:1.5rem;height:1.5rem}.grade-calendar .program-block-subjects{color:var(--blume-foreground);gap:.4rem;font-size:.82rem;font-weight:500;line-height:1.4;display:grid}.grade-calendar .program-subject>span:last-child{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.grade-calendar .program-block.is-complete{border-color:color-mix(in srgb, var(--y-done) 45%, var(--y-line));background:var(--y-done-tint)}.grade-calendar .program-block.is-complete .program-block-number{color:var(--y-done);background:0 0}.grade-calendar .program-block.is-complete .program-block-number:after{background:var(--y-done);width:1rem;height:1rem;color:var(--y-on-done);content:"✓";vertical-align:.24rem;border-radius:50%;place-items:center;margin-left:.35rem;font-size:.62rem;display:inline-grid}.grade-calendar .program-block.is-complete .program-block-status{color:var(--y-done);font-weight:750}.calendar-save-note{background:color-mix(in srgb, var(--calendar-error-color) 9%, transparent);border-radius:.7rem;max-width:52rem;margin:0 auto .75rem;padding:.7rem .85rem;line-height:1.5}.grade-calendar .calendar-save-note[data-tone=info]{background:var(--blume-muted);color:var(--blume-muted-foreground)}.calendar-retry{background:var(--y-surface);min-height:2.75rem;color:inherit;cursor:pointer;font:inherit;border:1px solid;border-radius:999px;margin:.15rem 0 .15rem .35rem;padding:.35rem .95rem;font-weight:700}.calendar-retry:hover{background:var(--blume-muted)}a.calendar-retry{align-items:center;text-decoration:none;display:inline-flex}.grade-calendar .calendar-detail{border-radius:var(--y-radius-card);width:min(100%,58rem);margin:0 auto;padding:clamp(1rem,4vw,2rem);scroll-margin-top:6rem}.grade-calendar [data-block-kind=review]{--block-fill:var(--y-accent-soft);--block-ink:var(--y-accent)}.grade-calendar :is([data-block-kind=rest],[data-block-kind=holiday],[data-block-kind=reserve]){--block-fill:var(--y-surface);--block-ink:var(--y-muted)}.grade-calendar .program-block[data-block-kind]:not([data-block-kind=study]){--blume-accent:var(--block-ink)}.grade-calendar [data-block-kind] .subject-icon:is([data-subject=rest],[data-subject=holiday],[data-subject=review],[data-subject=study]){--subject-ink:var(--block-ink)}.grade-calendar .program-block[data-block-kind]:not([data-block-kind=study]):not(.is-complete),.grade-calendar .calendar-detail[data-block-kind]:not([data-block-kind=study]){background:var(--block-fill)}.grade-calendar .day-task-book{color:var(--blume-foreground);font-weight:700}.grade-calendar .day-task-notice,.grade-calendar .day-task-verification{border-left:2px solid var(--y-line);color:var(--blume-muted-foreground);padding-left:.55rem}.grade-calendar .day-task-verification{border-left-color:color-mix(in srgb, var(--y-accent) 45%, var(--y-line))}.calendar-detail-header{gap:1.4rem;display:grid}.grade-calendar .calendar-back{border-radius:.6rem;align-items:center;width:fit-content;min-height:2.75rem;margin:-.5rem 0 -.5rem -.25rem;padding:0 .75rem 0 .25rem;font-size:.95rem;display:inline-flex}.grade-calendar .calendar-detail-date{font-size:.86rem}.grade-calendar .day-tasks{grid-template-columns:1fr;gap:.75rem;margin:1.6rem 0;display:grid}.grade-calendar .day-task{border-radius:var(--y-radius-card);background:var(--y-surface);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"heading heading""copy done";align-items:end;gap:.85rem 1.25rem;min-height:0;padding:1rem;transition:border-color .15s,background-color .15s;display:grid;position:relative}.grade-calendar .day-task.is-done{background:var(--y-done-tint)}.grade-calendar .day-task-heading{grid-area:heading;align-items:center;gap:.75rem;min-width:0;display:flex}.grade-calendar button:disabled,.grade-calendar input:disabled{cursor:wait}.grade-calendar .day-task>.day-task-copy{grid-area:copy;align-content:start;align-self:start;gap:.8rem;min-width:0;display:grid}.grade-calendar .day-task-done{white-space:nowrap;user-select:none;-webkit-tap-highlight-color:transparent;border:2px solid #0000;grid-area:done;gap:.45rem;min-width:10rem;min-height:3rem;font-size:1.0625rem;line-height:1.2;transition:background-color .15s,border-color .15s,color .15s}.grade-calendar .day-task-done.y-btn--primary{width:auto}.grade-calendar .day-task-done.y-btn--outline{border-color:color-mix(in srgb, var(--blume-accent) 55%, var(--blume-border));background:var(--y-surface);color:var(--blume-foreground)}.grade-calendar .day-task-done.y-btn--outline:hover{border-color:var(--blume-accent);background:color-mix(in srgb, var(--blume-accent) 8%, var(--blume-background))}.grade-calendar .day-task-done.is-done{background:var(--y-done);color:var(--y-on-done)}.grade-calendar .day-task-done-mark{font-weight:800}.grade-calendar .day-task-done:focus-visible{outline:2px solid var(--blume-accent);outline-offset:2px}.grade-calendar .day-task-done:disabled{cursor:wait;opacity:.6}.grade-calendar .day-task-done.is-saving:disabled{opacity:1;cursor:progress}.grade-calendar .day-task-done.is-pending{visibility:hidden}.grade-calendar .day-task-error{color:var(--calendar-error-color);grid-column:1/-1;margin:0;font-size:.9375rem;font-weight:600}.grade-calendar .day-task-title{margin:0;font-size:1.05rem;line-height:1.35}.grade-calendar .day-task-reading{gap:.65rem;display:grid}.grade-calendar .day-task-copy p{margin:0}.grade-calendar .day-task-instruction{font-size:1.12rem;font-weight:750;line-height:1.45}.grade-calendar .day-task-step{font-size:.92rem;line-height:1.45}.grade-calendar .day-task-topics{overflow-wrap:anywhere;gap:.3rem;margin:0;padding-left:1.2rem;font-size:.95rem;line-height:1.4;display:grid}.grade-calendar .day-task-part{color:var(--blume-muted-foreground);font-size:.8rem}.grade-calendar .day-task strong{font-size:1.02rem;line-height:1.2}.grade-calendar .day-task small{font-size:.76rem;line-height:1.3}.grade-calendar .day-next{justify-content:flex-end;scroll-margin-bottom:1rem;display:flex}.grade-calendar .day-next .learning-continue{text-align:center;border-radius:1.5rem;width:auto;min-width:16rem;min-height:3rem;padding:.7rem 1.4rem;font-size:1.0625rem;line-height:1.3}.grade-calendar .day-next .learning-continue.y-btn--outline{border:2px solid color-mix(in srgb, var(--blume-accent) 55%, var(--blume-border));background:var(--y-surface);color:var(--blume-foreground);box-shadow:none}.grade-calendar .day-rest{margin:1.6rem 0;font-size:1.25rem;font-weight:700;line-height:1.35}@media (width<=720px){.grade-calendar .program-day-date-full{display:none}.grade-calendar .program-day-date-short{display:inline}.learning-heading{flex-direction:column;align-items:stretch}.grade-calendar .program-toolbar{flex-direction:row;justify-content:space-between;width:100%}.grade-calendar .semester-switch{flex:1;width:auto;min-width:0}.grade-calendar .semester-switch button{white-space:nowrap;flex:1;padding-inline:.4rem;font-size:.75rem}.learning-next{flex-direction:column;align-items:stretch;min-height:0}.learning-next-summary{min-height:3em}.learning-continue{width:100%}.grade-calendar .calendar-progress{grid-template-columns:1fr auto}.grade-calendar .calendar-progress-track{grid-area:2/1/auto/-1}.calendar-progress-copy{white-space:normal}.grade-calendar .program-overview-heading{flex-direction:row;align-items:baseline}.grade-calendar .day-tasks{grid-template-columns:1fr}.grade-calendar .day-task{grid-template-columns:minmax(0,1fr);grid-template-areas:"heading""copy""done";min-height:0}.grade-calendar .day-task-done,.grade-calendar .day-task-done.y-btn--primary{width:100%}.grade-calendar .day-next .learning-continue{width:100%;min-width:0}.grade-calendar .program-block{gap:.8rem;padding:.8rem}.grade-calendar .program-block-number{font-size:1.2rem}.grade-calendar .program-block-top .program-block-status{display:none}.grade-calendar .program-block-subjects{font-size:.75rem}.grade-calendar .program-block-subjects .program-subject{gap:.35rem}.program-subject .subject-icon{border-radius:.4rem;width:1.4rem;height:1.4rem}.program-subject .subject-icon svg{width:.92rem;height:.92rem}}@media (prefers-reduced-motion:reduce){.learning-continue,.grade-calendar .program-block,.grade-calendar .day-task{transition:none}.learning-continue:hover,.grade-calendar .program-block:hover,.grade-calendar .day-task:hover{transform:none}.grade-calendar .day-task-done{transition:none}}.grade-calendar .program-block{position:relative}.grade-calendar .program-day-today{background:var(--blume-accent);color:var(--blume-accent-foreground);border-radius:999px;padding:.1rem .5rem;font-size:.68rem;font-weight:750;line-height:1.45;position:absolute;top:0;right:.8rem;transform:translateY(-50%)}.grade-calendar .calendar-sync-note{z-index:5;border:1px solid var(--blume-border);background:var(--y-surface);max-width:52rem;color:var(--blume-muted-foreground);border-radius:.7rem;margin:.75rem auto 0;padding:.55rem .85rem;font-size:.9rem;line-height:1.5;position:sticky;bottom:.75rem}.grade-calendar .calendar-sync-note[data-tone=error]{color:var(--blume-foreground);border-color:color-mix(in srgb, var(--calendar-error-color) 45%, var(--blume-border))}.grade-calendar .calendar-sync-note .calendar-retry{min-height:2.25rem}.grade-calendar .calendar-quiet-action{text-underline-offset:.2em;background:0 0;border-color:#0000;text-decoration:underline}.grade-calendar .calendar-detail h1[data-block-heading]:focus{outline:none}.grade-calendar .calendar-detail h1[data-block-heading]:focus-visible{outline:2px solid var(--blume-accent);outline-offset:4px;border-radius:.25rem}.grade-calendar .program-block{gap:.6rem;min-height:8.5rem}.grade-calendar .program-block-top{justify-content:flex-start}.grade-calendar .program-day-title{color:var(--blume-foreground);font-size:1rem;font-weight:750;line-height:1.3}.grade-calendar .program-block-lines{color:var(--blume-foreground);gap:.45rem;font-size:.9rem;font-weight:500;line-height:1.35;display:grid}.grade-calendar .program-line{align-items:flex-start;gap:.5rem;min-width:0;display:flex}.grade-calendar .program-line .subject-icon{border-radius:.4rem;flex-shrink:0;width:1.5rem;height:1.5rem}.grade-calendar .program-line .subject-icon svg{width:1rem;height:1rem}.grade-calendar .program-line-text{overflow-wrap:anywhere;min-width:0;padding-top:.1rem}.grade-calendar .program-line.is-done .program-line-text:before{content:"✓ ";color:var(--y-done);font-weight:800}.grade-calendar .program-line-skeleton{background:color-mix(in srgb, var(--blume-muted) 70%, var(--yunik-surface));border-radius:.4rem;height:1.5rem;display:block}.grade-calendar .program-line-skeleton:nth-child(2){width:85%}.grade-calendar .program-line-skeleton:nth-child(3){width:70%}@media (prefers-reduced-motion:no-preference){.grade-calendar .program-block-lines.is-pending .program-line-skeleton{animation:1.2s ease-in-out infinite alternate yunik-skeleton}}@keyframes yunik-skeleton{0%{opacity:.55}to{opacity:1}}.grade-calendar .program-block.is-complete .program-line-text{color:var(--blume-foreground)}.grade-calendar .program-toolbar{align-items:center;gap:.5rem;display:flex}.grade-calendar .learning-heading .learning-title{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.grade-calendar .learning-heading{justify-content:flex-end}.grade-calendar a.program-settings-button{align-items:center;text-decoration:none;display:inline-flex}.grade-calendar .learning-today{margin:0 0 1.6rem}.grade-calendar .learning-today h2{margin:0 0 .7rem}.grade-calendar .today-cards{grid-template-columns:minmax(0,1fr);gap:.8rem;max-width:720px;display:grid}.grade-calendar .today-cards .program-block{border-width:2px;border-color:color-mix(in srgb, var(--blume-accent) 55%, var(--blume-border));min-height:0;padding:1.1rem}.grade-calendar .today-cards .program-block-lines{font-size:1rem}.grade-calendar .today-cards .program-block-skeleton{min-height:9.75rem}.grade-calendar .today-error{color:var(--blume-foreground);margin:.7rem 0 0}.grade-calendar .program-overview-heading{flex-wrap:wrap;align-items:center;gap:.3rem .8rem;display:flex}.grade-calendar .program-to-today{border:1px solid var(--blume-border);background:var(--yunik-surface);min-height:2.75rem;color:var(--blume-foreground);font:inherit;cursor:pointer;border-radius:999px;margin-left:auto;padding:0 .9rem;font-size:.85rem;font-weight:650}.grade-calendar .learning-today,.grade-calendar .program-overview-heading{scroll-margin-top:7.5rem}@media (width>=700px){.grade-calendar .learning-today,.grade-calendar .program-overview-heading{scroll-margin-top:5.5rem}}.grade-calendar .calendar-settings .semester-switch{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.5rem;margin:0 0 1rem;display:grid}.grade-calendar .calendar-settings .semester-switch button{min-height:2.75rem}.grade-calendar .day-heading{grid-template-columns:2.75rem minmax(0,1fr) 2.75rem;align-items:center;gap:.5rem;display:grid}.grade-calendar .day-heading h1{text-align:center;margin:0;font-size:1.75rem;line-height:2.125rem}@media (width>=1024px){.grade-calendar .day-heading h1{font-size:2.125rem;line-height:2.5rem}}.grade-calendar .day-step{width:2.75rem;height:2.75rem;color:var(--blume-foreground);background:var(--blume-muted);border-radius:999px;place-items:center;font-size:1.5rem;font-weight:700;line-height:1;text-decoration:none;display:inline-grid}.grade-calendar .day-step:hover{color:var(--blume-accent)}.grade-calendar .day-step:focus-visible{outline:2px solid var(--blume-accent);outline-offset:2px}.grade-calendar .day-step.is-empty{background:0 0}.grade-calendar .calendar-detail-date{color:var(--blume-muted-foreground);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin:0;font-size:.9375rem;display:flex}.grade-calendar .calendar-detail-date .y-chip--overdue{margin-left:0}.grade-calendar .calendar-toast{z-index:40;background:var(--blume-foreground);max-width:calc(100vw - 2rem);color:var(--blume-background);border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .5rem .4rem 1rem;font-weight:650;display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%)}.grade-calendar .calendar-toast[hidden]{display:none}.grade-calendar .calendar-toast-undo{min-height:2.75rem;color:inherit;font:inherit;text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 .9rem;text-decoration:underline}@media (width<=419px){.grade-calendar .day-heading{grid-template-areas:"title title title""previous.next";row-gap:.5rem}.grade-calendar .day-heading h1{grid-area:title;font-size:1.5rem}.grade-calendar .day-heading .day-step{z-index:1;position:relative}.grade-calendar .day-heading .day-step.is-previous{grid-area:previous}.grade-calendar .day-heading .day-step.is-next{grid-area:next}.grade-calendar .day-heading+.calendar-detail-date{min-height:2.75rem;margin-top:-4.15rem;padding-inline:3.25rem}}.grade-calendar .day-checks{margin-top:0}.grade-calendar .day-tasks>.day-checks{display:contents}.grade-calendar .day-task.is-check{border-top:.3rem solid var(--y-check);background-image:linear-gradient(90deg, color-mix(in srgb, var(--y-check) 14%, transparent) 1px, transparent 1px), linear-gradient(color-mix(in srgb, var(--y-check) 14%, transparent) 1px, transparent 1px);background-position:0 0;background-repeat:repeat-x;background-size:1.25rem 1.25rem}.grade-calendar .day-task.is-check .day-task-title{color:var(--y-check)}.grade-calendar .day-task.is-check .day-task-title:before{content:"✎ "}.grade-calendar .day-task-start{border:2px solid #0000;border-radius:999px;justify-content:center;justify-self:start;align-items:center;width:auto;min-width:8.5rem;min-height:3rem;padding:0 1.25rem;font-weight:750;text-decoration:none;display:inline-flex}.grade-calendar .day-task-start.y-btn--outline{border-color:color-mix(in srgb, var(--blume-accent) 55%, var(--blume-border));background:var(--y-surface);color:var(--blume-foreground)}.grade-calendar .day-task-practice{min-height:2.75rem;color:var(--blume-accent);align-items:center;font-weight:650;text-decoration:none;display:inline-flex}@media (width<=640px){.grade-calendar .day-task-start{width:100%}.grade-calendar .day-task.is-check .day-task-heading>.subject-icon{display:none}}[data-yunik-grade-calendar][data-screen=today] [data-program-overview],[data-yunik-grade-calendar][data-screen=plan] [data-learning-today]{display:none}.learning-today .today-title{margin:0;font-size:1.75rem;line-height:2.125rem}.learning-today .today-meta,.learning-today .today-rule,.learning-today .today-pace,.learning-today .today-next-line{color:var(--y-ink-muted,inherit);margin:4px 0 0;font-size:.9375rem}.learning-today .today-subheading{align-items:center;gap:8px;margin:20px 0 8px;font-size:.9375rem;display:flex}.learning-today .today-tasks,.learning-today .today-more{margin-top:12px}.learning-today .today-more>summary{border:1px solid var(--y-line,#7f7f7f59);cursor:pointer;border-radius:12px;align-items:center;gap:8px;min-height:44px;padding:8px 14px;font-size:.9375rem;list-style:none;display:flex}.learning-today .today-more>summary::-webkit-details-marker{display:none}.learning-today .today-more>summary:after{content:"▾";transition:transform var(--y-dur,.16s) var(--y-ease,ease);margin-inline-start:auto}.learning-today .today-more[open]>summary:after{transform:rotate(180deg)}.learning-today .day-block-divider{border:0;border-top:1px solid var(--y-line,#7f7f7f4d);margin:20px 0 8px}.learning-today .today-catch-up{background:var(--y-overdue-tint,transparent);border-radius:12px;margin-top:12px;padding:12px 16px}.learning-today .today-catch-up p{margin:0 0 8px}.learning-today .today-catch-up-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.learning-today .today-done-title{margin:8px 0 0;font-size:1.25rem;line-height:1.625rem}.learning-today .today-stamp{justify-self:start;width:max-content;margin:16px 0 0}.learning-today .today-rest{margin:12px 0 0}.learning-today .today-ahead,.learning-today .today-overdue-more{align-items:center;min-height:44px;margin-top:8px;display:inline-flex}.calendar-detail .day-block{scroll-margin-top:88px}.calendar-detail .day-block-divider{border:0;border-top:1px solid var(--y-line,#7f7f7f4d);margin:20px 0}.learning-today .week-strip{margin-top:20px}.learning-today .week-strip-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.learning-today .week-cell{min-width:44px;min-height:56px;color:inherit;border-radius:12px;align-content:center;justify-items:center;gap:1px;font-size:.8125rem;line-height:1.1;text-decoration:none;display:grid}.learning-today .week-cell-letter{color:var(--y-ink-muted,inherit)}.learning-today .week-cell-number{font-size:.9375rem;font-weight:700}.learning-today .week-cell-mark{min-height:1em;font-weight:800}.learning-today .week-cell.is-done{background:var(--y-done-tint)}.learning-today .week-cell.is-done .week-cell-mark{color:var(--y-done)}.learning-today .week-cell.is-off .week-cell-mark{color:var(--y-ink-muted,inherit)}.learning-today .week-cell.is-overdue .week-cell-mark:before{content:"";background:var(--y-overdue-line);border-radius:50%;width:8px;height:8px;display:inline-block}.learning-today .week-cell.is-today{box-shadow:inset 0 0 0 2px var(--y-accent)}.learning-today a.week-cell:focus-visible{outline:2px solid var(--y-accent);outline-offset:2px}.grade-calendar .week-review{display:block}.grade-calendar .week-review-title{margin:0 0 8px}.grade-calendar .week-review-lines{gap:8px;margin:0;padding:0;list-style:none;display:grid}.grade-calendar .week-review-line{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;display:grid}.grade-calendar .week-review-line .day-task-done{grid-area:auto;width:auto;min-width:0;min-height:44px;margin:0;padding-inline:14px;font-size:.9375rem}.grade-calendar .week-review-text{min-width:0;font-size:.9375rem}.plan-view{gap:14px;min-width:0;display:grid}.plan-skeleton{border-radius:var(--y-radius-cell);background:var(--y-surface-2);height:56px;display:block}.plan-head{gap:8px;display:grid}.program-strip{gap:1px;max-width:100%;height:14px;display:flex;overflow:hidden}.program-strip-cell{background:var(--y-line);border-radius:1px;flex:0 0 3px}.program-strip-cell.is-done{background:var(--y-done)}.program-strip-cell.is-overdue{background:var(--y-overdue-line)}.plan-summary{color:var(--y-muted);margin:0;font-size:.875rem;line-height:1.35}.plan-actions{flex-wrap:wrap;gap:8px;display:flex}.plan-action{min-height:44px;padding:0 14px;font-size:.9375rem}.plan-action--overdue{border-color:var(--y-overdue-line)}.plan-month-nav{align-items:center;gap:4px;display:flex}.plan-month-title{text-align:center;min-width:9.5em;margin:0 4px;font-size:1.0625rem;font-weight:700}.plan-month-title:focus{outline:none}.plan-month-step{width:44px;height:44px;color:var(--y-ink);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:1.375rem;text-decoration:none;display:inline-grid}.plan-month-step:hover:not(:disabled,.is-off){background:var(--y-surface-2)}.plan-month-step.is-off{color:var(--y-line);cursor:default}.plan-week-nav .plan-month-title{flex:auto;min-width:0;font-size:1rem}.plan-calendar{gap:14px;min-width:0;display:grid}.plan-weekdays{display:none}.plan-week{gap:6px;display:grid}.plan-week-title{color:var(--y-muted);margin:0;font-size:.8125rem;font-weight:600}.plan-days{gap:6px;margin:0;padding:0;list-style:none;display:grid}.plan-day-item.is-other-month{display:none}.plan-day{border:1px solid var(--y-line);border-radius:var(--y-radius-cell);background:var(--y-surface);min-height:48px;color:var(--y-ink);grid-template-columns:3.4em minmax(0,1fr) auto;align-items:center;gap:4px 10px;padding:8px 12px;font-size:.875rem;line-height:1.35;text-decoration:none;display:grid}a.plan-day:hover{border-color:var(--y-accent)}a.plan-day:focus-visible{outline:2px solid var(--y-accent);outline-offset:2px}.plan-day-date{white-space:nowrap;grid-column:1}.plan-day-weekday{color:var(--y-muted)}.plan-day-number{font-weight:700}.plan-day-items{overflow-wrap:break-word;grid-column:2;min-width:0}.plan-day-line{white-space:normal}.plan-day-sep{color:var(--y-muted)}.plan-day-state{white-space:nowrap;color:var(--y-muted);background:var(--y-surface-2);border-radius:999px;grid-column:3;justify-self:end;padding:2px 8px;font-size:.75rem;font-weight:600}.plan-day:not(:has(.plan-day-items)) .plan-day-state{background:0 0;grid-column:2/4;justify-self:start;padding:0}.plan-day-state.is-done{color:var(--y-done);background:var(--y-done-tint)}.plan-day-state.is-overdue{color:var(--y-overdue);background:var(--y-overdue-tint)}.plan-day-state.is-today{color:var(--y-accent);background:var(--y-accent-soft)}.plan-day.is-done{background:var(--y-done-tint);border-color:#0000}.plan-day.is-overdue{border-color:var(--y-overdue-line)}.plan-day.is-today{box-shadow:inset 0 0 0 2px var(--y-accent);border-color:#0000}.plan-day:is(.is-rest,.is-holiday,.is-free,.is-review){background:0 0;min-height:44px}.plan-day.is-outside{opacity:.55;border-style:dashed}.plan-weeks{gap:10px}.plan-fold{gap:10px;display:grid}.plan-fold-toggle{border:1px solid var(--y-line);border-radius:var(--y-radius-cell);background:var(--y-surface);width:100%;min-height:48px;color:var(--y-ink);font:inherit;text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:6px 14px;font-size:.875rem;font-weight:600;line-height:1.35;display:flex}.plan-fold-toggle:hover{border-color:var(--y-accent)}.plan-fold-toggle:focus-visible{outline:2px solid var(--y-accent);outline-offset:2px}.plan-fold-toggle:after{content:"▾";color:var(--y-muted);flex:none}.plan-fold-toggle[aria-expanded=true]:after{content:"▴"}.plan-fold-weeks{gap:14px;display:grid}.plan-fold-weeks[hidden]{display:none}@media (width>=1024px){.plan-calendar{gap:6px}.plan-weekdays{color:var(--y-muted);text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;font-size:.75rem;font-weight:600;display:grid}.plan-week-title{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.plan-days{grid-template-columns:repeat(7,minmax(0,1fr))}.plan-day-item.is-other-month{visibility:hidden;display:block}.plan-day-item{min-width:0}.plan-day{flex-direction:column;align-items:stretch;gap:4px;height:100%;min-height:96px;padding:8px;font-size:.8125rem;display:flex}.plan-day-weekday{display:none}.plan-day-items{flex-direction:column;gap:2px;display:flex}.plan-day-sep{display:none}.plan-day-state{white-space:normal;align-self:flex-start;margin-top:auto}.plan-day:not(:has(.plan-day-items)) .plan-day-state{padding:0}}dialog.y-sheet.y-sheet--plan-print{padding-bottom:0}.y-sheet--plan-print .plan-print-tiles{margin-bottom:0}.plan-print-actions{z-index:1;padding:.75rem 0 calc(.75rem + env(safe-area-inset-bottom,0px));background:var(--y-surface);position:sticky;bottom:0}.plan-print-actions .y-btn{width:100%}@media screen{.plan-print-root{display:none}}@page yunik-plan{size:A4 landscape;margin:10mm}@media print{html[data-plan-printing],html[data-plan-printing] body{background:#fff!important}html[data-plan-printing] body>:not(.plan-print-root){display:none!important}.plan-print-root{page:yunik-plan;color:#000;font:10pt/1.3 var(--y-font-text,system-ui, sans-serif);background:#fff;display:block}.plan-print-page{break-after:page;flex-direction:column;min-height:188mm;display:flex}.plan-print-page:last-child{break-after:auto}.plan-print-title{color:#000;margin:0 0 3mm;font-size:15pt;line-height:1.2}.plan-print-weeks{flex:1;grid-auto-rows:minmax(0,1fr);gap:4mm;display:grid}.plan-print-week{break-inside:avoid;border:.3mm solid #000;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.plan-print-day{border-left:.2mm solid #777;min-width:0;padding:1.5mm 2mm}.plan-print-day:first-child{border-left:0}.plan-print-date{margin:0 0 1.5mm;font-size:11pt;font-weight:700}.plan-print-day.is-outside .plan-print-date,.plan-print-day.is-other-month .plan-print-date{color:#777}.plan-print-note{margin:0 0 1mm;font-style:italic}.plan-print-lines{gap:1.2mm;margin:0;padding:0;list-style:none;display:grid}.plan-print-line{overflow-wrap:break-word;align-items:baseline;gap:1.5mm;display:flex}.plan-print-box{flex:none;font-size:12pt;line-height:1}.plan-print-foot{color:#555;text-align:right;margin:2mm 0 0;font-size:8pt}.plan-print-root[data-plan-print=month]{font-size:9pt}}
