*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100dvh;margin:0}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#f5f7f6;background:#101412}@media(prefers-color-scheme:dark){:root{color:#ffffffde;background:#101412}body{background:#101412}}html,body,#root{min-height:100dvh;background:#101412}body{margin:0}.login{--login-primary: #1b4332;--login-primary-hover: #2d6a4f;--login-accent: #f4a261;--login-text: #ffffff;--login-text-muted: rgba(255, 255, 255, .78);--login-glass-bg: rgba(12, 12, 12, .34);--login-glass-border: rgba(255, 255, 255, .14);position:relative;min-height:100vh;min-height:100dvh;width:100%;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;color:var(--login-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.login__background{position:fixed;inset:0;background:url(/login-bg.jpg) center 38% / cover no-repeat,#1a1208;z-index:0}.login__overlay{position:fixed;inset:0;background:linear-gradient(105deg,#00000057,#0000001f 42%,#00000085);z-index:1}.login__language.language-dropdown{position:fixed;top:1.35rem;right:2rem;z-index:30}.login__header{position:fixed;top:1.25rem;left:1.75rem;z-index:40;max-width:calc(100% - 12rem);overflow:visible}.login__brand{display:flex;align-items:center;gap:.85rem;min-width:0;padding:.52rem .95rem .52rem .72rem;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#00000085;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:visible}.login__brand-logo-shell{position:relative;flex:0 0 2.75rem;width:2.75rem;height:2.75rem;flex-shrink:0}.login__brand-logo{position:absolute;left:50%;top:50%;width:6rem;height:6rem;transform:translate(-44%,-50%);object-fit:contain;filter:drop-shadow(0 3px 12px rgba(0,0,0,.45))}.login__brand-copy{display:flex;flex-direction:column;gap:.18rem;min-width:0}.login__brand-name{font-size:1.2rem;font-weight:800;letter-spacing:-.02em;line-height:1.05;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.45);white-space:nowrap}.login__brand-tagline{font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;line-height:1.1;color:#b7e4c7;text-shadow:0 1px 8px rgba(0,0,0,.4);white-space:nowrap}.login__layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) min(440px,100%);align-items:center;gap:4rem;min-height:auto;flex:1;padding:5rem 4.5rem 2rem 5rem}.login__hero{align-self:center;max-width:36rem;padding-top:1rem;padding-right:2rem}.login__hero-kicker{margin:0 0 1.25rem;font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#ffffffd1}.login__hero-title{margin:0;max-width:14ch;font-size:clamp(2.5rem,5vw,4rem);line-height:1.04;font-weight:700;letter-spacing:-.03em;text-shadow:0 8px 28px rgba(0,0,0,.28)}.login__hero-subtitle{margin:1rem 0 0;color:#e1c550;font-size:clamp(1.15rem,2.2vw,1.45rem);font-weight:600;line-height:1.4;text-shadow:0 4px 18px rgba(0,0,0,.32)}.login__hero-title-accent{color:#fffffffa}.login-panel{width:100%;max-width:440px;justify-self:end;padding:2.5rem 2.35rem;border-radius:20px;background:var(--login-glass-bg);border:1px solid var(--login-glass-border);box-shadow:0 28px 70px #00000047,inset 0 1px #ffffff14;backdrop-filter:blur(36px) saturate(125%);-webkit-backdrop-filter:blur(36px) saturate(125%)}.login-panel__header{margin-bottom:2rem}.login-panel__title-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-panel__title{margin:0;font-size:1.95rem;font-weight:700;letter-spacing:-.03em;color:var(--login-text)}.login-panel__subtitle{margin:.85rem 0 0;color:var(--login-text-muted);font-size:1rem;line-height:1.6}.login-panel__step-hint{margin:0 0 1.15rem;color:var(--login-text-muted);font-size:.9rem;line-height:1.55}.login-help{position:relative;flex-shrink:0}.login-help__trigger{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#ffffff14;color:#ffffffe0;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.login-help__trigger:hover,.login-help__trigger[aria-expanded=true]{background:#ffffff24;border-color:#ffffff47;color:#fff}.login-help__trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #ffffff24}.login-help__icon{width:1.125rem;height:1.125rem;fill:currentColor}.login-help__popover{position:absolute;top:calc(100% + 10px);right:0;z-index:20;width:min(22rem,calc(100vw - 40px));padding:16px;border-radius:14px;background:#0a0a0ac7;border:1px solid rgba(255,255,255,.14);box-shadow:0 20px 48px #00000061;backdrop-filter:blur(24px) saturate(130%);-webkit-backdrop-filter:blur(24px) saturate(130%)}.login-help__popover:before{content:"";position:absolute;top:-6px;right:14px;width:12px;height:12px;background:#0a0a0ac7;border-top:1px solid rgba(255,255,255,.14);border-left:1px solid rgba(255,255,255,.14);transform:rotate(45deg)}.login-help__title{margin:0 0 10px;font-size:14px;font-weight:600;color:#fff}.login-help__steps{margin:0;padding-left:1.15rem;color:#ffffffd1;font-size:13px;line-height:1.55}.login-help__steps li+li{margin-top:8px}.login-help__note{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.1);color:#ffffff9e;font-size:12px;line-height:1.5}.login-panel__form,.login-field{display:flex;flex-direction:column}.login-panel__form .login-field+.login-button,.login-panel__form .login-field+.login-field{margin-top:1.15rem}.login-field label{font-size:.875rem;margin-bottom:.5rem;font-weight:500;color:#ffffffeb}.login-field input{padding:.95rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:#ffffff14;color:#fff;font-size:.98rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.login-field input::placeholder{color:#ffffff6b}.login-field input:focus{outline:none;border-color:#ffffff52;background:#ffffff1c;box-shadow:0 0 0 4px #ffffff14}.login-button{margin-top:1.5rem;padding:.98rem 1rem;border:none;border-radius:12px;background:var(--login-primary);color:#fff;font-size:.98rem;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .2s ease,transform .15s ease,box-shadow .2s ease;box-shadow:0 12px 28px #1b433252}.login-button:hover:not(:disabled){background:var(--login-primary-hover);transform:translateY(-1px);box-shadow:0 16px 32px #1b433261}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.52;cursor:not-allowed;box-shadow:none;transform:none}.login-error{margin:1rem 0 0;color:#fecaca;font-size:.875rem;line-height:1.45}@media(max-width:960px){.login__layout{display:flex;flex-direction:column;justify-content:center;align-items:stretch;min-height:max(26rem,calc(100dvh - 20rem));padding:6.5rem 1.25rem 1.5rem;gap:1.75rem}.login__hero{display:block;align-self:stretch;max-width:none;padding:0;margin:0;text-align:center}.login__hero-title{max-width:none;margin-inline:auto;font-size:clamp(1.9rem,8vw,2.65rem)}.login__hero-subtitle{font-size:clamp(1.05rem,4.5vw,1.25rem)}.login-panel{justify-self:center;width:100%;max-width:440px}}@media(max-width:480px){.login__header{top:.85rem;left:.75rem;max-width:calc(100% - 8.75rem)}.login__brand{gap:.65rem;padding:.48rem .72rem .48rem .58rem}.login__brand-logo-shell{flex-basis:2.35rem;width:2.35rem;height:2.35rem}.login__brand-logo{width:4.75rem;height:4.75rem;transform:translate(-42%,-50%)}.login__brand-name{font-size:1.02rem}.login__brand-tagline{font-size:.64rem;letter-spacing:.12em}.login__layout{min-height:max(24rem,calc(100dvh - 23rem));padding:5.75rem 1rem 1rem;gap:1.35rem}.login__hero{padding-top:.5rem}.login__hero-title{font-size:clamp(1.75rem,9vw,2.15rem);line-height:1.08}.login__hero-subtitle{margin-top:.75rem;font-size:1.05rem}.login-panel{padding:2rem 1.5rem;border-radius:18px}.login__language.language-dropdown{top:1rem;right:1rem}}.language-dropdown{position:relative}.language-dropdown__trigger{display:inline-flex;align-items:center;gap:.55rem;min-height:2.55rem;padding:.45rem .8rem .45rem .65rem;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:#0f17148c;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:background .15s ease,border-color .15s ease}.language-dropdown__trigger:hover,.language-dropdown__trigger[aria-expanded=true]{background:#0f1714b8;border-color:#ffffff47}.language-dropdown__trigger:focus-visible{outline:none;box-shadow:0 0 0 3px #2d6a4f73}.language-dropdown__flag{display:inline-flex;align-items:center;justify-content:center;width:1.35rem;height:1.35rem;font-size:1.35rem;line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;filter:drop-shadow(0 1px 2px rgba(0,0,0,.22))}.language-dropdown__label,.language-dropdown__option-label{white-space:nowrap}.language-dropdown__chevron{width:1rem;height:1rem;fill:currentColor;opacity:.85;transition:transform .15s ease}.language-dropdown__chevron--open{transform:rotate(180deg)}.language-dropdown__menu{position:absolute;top:calc(100% + .55rem);right:0;min-width:100%;margin:0;padding:.4rem;list-style:none;border-radius:14px;background:#0f1714eb;border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 40px #00000059;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.language-dropdown--login{width:auto}.language-dropdown--login .language-dropdown__trigger{min-width:0;padding:.52rem .9rem .52rem .72rem;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#ffffff0f;box-shadow:none;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.language-dropdown--login .language-dropdown__trigger:hover,.language-dropdown--login .language-dropdown__trigger[aria-expanded=true]{background:#ffffff1a;border-color:#ffffff2e}.app-header--hero .language-dropdown--login .language-dropdown__trigger{border:none;background:#00000024;color:#ffffff9e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.app-header--hero .language-dropdown--login .language-dropdown__trigger:hover,.app-header--hero .language-dropdown--login .language-dropdown__trigger[aria-expanded=true]{background:#00000038;border-color:transparent;color:#ffffffe0}.language-dropdown--login .language-dropdown__menu{width:230px;min-width:230px;padding:.45rem;border-radius:14px;background:#0a0a0ab8;border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 48px #00000057,inset 0 1px #ffffff14;backdrop-filter:blur(28px) saturate(140%);-webkit-backdrop-filter:blur(28px) saturate(140%)}.language-dropdown--login .language-dropdown__option{gap:.65rem;padding:.68rem .75rem;border-radius:10px}.language-dropdown--login .language-dropdown__flag{width:1.45rem;height:1.45rem;font-size:1.45rem}.language-dropdown--login .language-dropdown__option--selected{background:#ffffff1a;color:#fff;box-shadow:inset 0 0 0 1px #ffffff1f}.language-dropdown__option{display:flex;align-items:center;gap:.45rem;width:100%;padding:.55rem .7rem;border:none;border-radius:8px;background:transparent;color:#ffffffe0;font-size:.875rem;text-align:left;cursor:pointer;transition:background .15s ease}.language-dropdown__option:hover{background:#ffffff14}.language-dropdown__option--selected{background:#2d6a4f59;color:#fff}.language-dropdown--header .language-dropdown__trigger{border-color:#ebecf0;background:#f4f5f7;color:#172b4d;backdrop-filter:none;-webkit-backdrop-filter:none}.language-dropdown--header .language-dropdown__trigger:hover,.language-dropdown--header .language-dropdown__trigger[aria-expanded=true]{background:#fff;border-color:#dfe1e6}.language-dropdown--header .language-dropdown__menu{background:#fff;border-color:#ebecf0;box-shadow:0 12px 32px #091e421f}.language-dropdown--header .language-dropdown__option{color:#172b4d}.language-dropdown--header .language-dropdown__option:hover{background:#f4f5f7}.language-dropdown--header .language-dropdown__option--selected{background:#1b43321f;color:#1b4332}.language-dropdown--header .language-dropdown__flag{filter:none}.mastery-grid{position:relative;z-index:2;width:min(920px,calc(100% - 4rem));margin:-1rem auto 0;padding:0 0 2rem}.mastery-grid__loading{margin:0;text-align:center;color:#ffffffb8;font-size:.9rem}.mastery-grid__hint{margin:0 0 .85rem;text-align:center;color:#ffffff85;font-size:.92rem;font-weight:600;letter-spacing:.02em;line-height:1.4}.mastery-grid__hint-highlight{color:#49c991;font-weight:700}.mastery-grid__carousel{display:flex;align-items:center;gap:.35rem;overflow:visible}.mastery-grid__viewport{display:flex;flex:1;min-width:0;overflow-x:auto;overflow-y:visible;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none}.mastery-grid__viewport::-webkit-scrollbar{display:none}.mastery-grid__page{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;box-sizing:border-box;flex:0 0 100%;width:100%;min-width:100%;max-width:100%;scroll-snap-align:start;scroll-snap-stop:always}.mastery-card{position:relative;display:flex;width:100%;min-width:0;flex-direction:column;align-items:stretch;gap:.6rem;outline:none}.mastery-grid__nav{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;flex:0 0 2.5rem;width:2.5rem;padding:.25rem;border:none;background:transparent;color:#49c991;cursor:pointer;transition:opacity .2s ease,transform .2s ease}.mastery-grid__nav--next{flex-basis:4.75rem;width:4.75rem}.mastery-grid__nav--hidden{visibility:hidden;pointer-events:none}.mastery-grid__nav svg{width:2rem;height:2rem;fill:currentColor;filter:drop-shadow(0 2px 8px rgba(0,0,0,.28))}.mastery-grid__nav:hover{transform:translate(2px)}.mastery-grid__nav--prev:hover{transform:translate(-2px)}.mastery-grid__nav-label{max-width:4.5rem;text-align:center;font-size:.62rem;font-weight:700;line-height:1.25;color:#ffffff94}.mastery-grid__progress{display:flex;justify-content:center;gap:.4rem;margin-top:.85rem}.mastery-grid__progress-dot{width:2.75rem;height:3px;padding:0;border:none;border-radius:999px;background:#ffffff2e;cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.mastery-grid__progress-dot:hover{background:#49c99173;transform:scaleY(1.8)}.mastery-grid__progress-dot:focus-visible{outline:none;box-shadow:0 0 0 3px #49c9913d}.mastery-grid__progress-dot--active{background:#49c991;box-shadow:0 0 12px #49c99173}.mastery-grid__progress-dot--active:hover{background:#74c69d;transform:scaleY(1.8)}.mastery-card__media{position:relative;width:100%;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#080c108c;border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px #ffffff0f,0 10px 24px #00000038;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,filter .22s ease}.mastery-card--highlight .mastery-card__media{border-color:#52b788d9;box-shadow:0 0 0 1px #52b7884d,0 0 16px #52b78838}.mastery-card--locked .mastery-card__media{background:#06080ac7;border-color:#ffffff0d}.mastery-card__avatar{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;filter:brightness(.92) saturate(.95);transition:transform .22s ease,filter .22s ease}.mastery-card--hovered .mastery-card__media{transform:scale(1.06) translateY(-3px);z-index:5;border-color:#95d5b2bf;box-shadow:0 14px 32px #0000006b,0 0 0 1px #95d5b259}.mastery-card--hovered .mastery-card__avatar{transform:scale(1.08);filter:brightness(1.12) contrast(1.08) saturate(1.12)}.mastery-card__preview{position:fixed;z-index:100;width:16.5rem;padding:.65rem;border-radius:18px;background:#080c10eb;border:1px solid rgba(149,213,178,.45);box-shadow:0 22px 48px #00000085;pointer-events:none;transform:translate(-50%,calc(-100% - 12px))}.mastery-card__preview:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:8px solid transparent;border-top-color:#95d5b273}.mastery-card__preview img{display:block;width:100%;aspect-ratio:1;object-fit:cover;object-position:center center;border-radius:12px}.mastery-card__preview-name{display:block;margin-top:.55rem;text-align:center;color:#fff;font-size:.82rem;font-weight:700;line-height:1.25}.mastery-card__lock{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(180deg,#ffffff08,#00000052)}.mastery-card__lock-icon{width:1.85rem;height:1.85rem;fill:#ffffff47}.mastery-card__number{position:absolute;top:.5rem;left:.5rem;min-width:1.65rem;height:1.65rem;padding:0 .35rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:#00000094;color:#ffffffeb;font-size:.72rem;font-weight:700;line-height:1}.mastery-card__name{margin:0;width:100%;text-align:center;color:#ffffffad;font-size:.78rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s ease}.mastery-card--hovered .mastery-card__name{color:#fffffff2}.mastery-card--locked .mastery-card__name{color:#fff6}@media(max-width:960px){.login .login__layout{min-height:auto;padding-bottom:1rem}.mastery-grid{width:calc(100% - 2rem);margin-top:.75rem;padding-bottom:1rem}.mastery-grid__hint{font-size:.98rem;color:#ffffffad;padding:0 .25rem}}@media(max-width:480px){.mastery-grid{width:calc(100% - 1.25rem);margin-top:.5rem}.mastery-grid__hint{font-size:1.02rem;margin-bottom:.95rem}.mastery-grid__page{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.mastery-card__name{font-size:.68rem}.mastery-card__preview{width:13rem}.mastery-grid__nav svg{width:1.65rem;height:1.65rem}.mastery-grid__nav-label{font-size:.58rem;max-width:3.75rem}}.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f4f6f8;padding:20px;flex-direction:column}.tasks-page{--brand-primary: #1b4332;--brand-primary-hover: #2d6a4f;--brand-accent: #52b788;--surface-dark: #0d1210;--surface-card: #171c19;--surface-elevated: #1f2522;--text-primary: #f5f7f6;--text-secondary: rgba(245, 247, 246, .62);--border-soft: rgba(255, 255, 255, .08);--row-red: #ef4444;--row-blue: #3b82f6;--row-yellow: #eab308;--row-gray: #94a3b8;--row-red-soft: rgba(239, 68, 68, .14);--row-blue-soft: rgba(59, 130, 246, .14);--row-yellow-soft: rgba(234, 179, 8, .14);--row-gray-soft: rgba(148, 163, 184, .12);min-height:100dvh;position:relative;isolation:isolate;background:var(--surface-dark);color:var(--text-primary)}.tasks-page:before{content:"";position:fixed;inset:0;z-index:-2;background:url(/recurring-hero-boxing.jpg) center 42% / cover no-repeat,#0a0a0c}.tasks-page:after{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse 80% 55% at 50% 52%,#080a0c2e,#080a0c9e),linear-gradient(180deg,#080a0cb8,#080a0c47 42%,#0d1210e0 88%,#0d1210fa)}.tasks-page__body{position:relative;z-index:1;max-width:1480px;margin:0 auto;padding:calc(72px + 1.5rem) 2rem 4rem}.tasks-page__state{padding:3rem 2rem;text-align:center;color:var(--text-secondary)}.task-board{display:flex;flex-direction:column;gap:.85rem}.task-priority-row{display:flex;flex-direction:column;gap:.65rem;padding:.75rem .85rem .85rem;border-radius:16px;border:1px solid var(--border-soft);background:#ffffff06;box-shadow:0 10px 28px #0000002e}.task-priority-row--important_urgent{background:linear-gradient(90deg,var(--row-red-soft) 0%,rgba(255,255,255,.02) 42%);border-color:#ef444447;box-shadow:inset 3px 0 0 var(--row-red),0 10px 28px #0000002e}.task-priority-row--important{background:linear-gradient(90deg,var(--row-blue-soft) 0%,rgba(255,255,255,.02) 42%);border-color:#3b82f647;box-shadow:inset 3px 0 0 var(--row-blue),0 10px 28px #0000002e}.task-priority-row--urgent{background:linear-gradient(90deg,var(--row-yellow-soft) 0%,rgba(255,255,255,.02) 42%);border-color:#eab30847;box-shadow:inset 3px 0 0 var(--row-yellow),0 10px 28px #0000002e}.task-priority-row--none{background:linear-gradient(90deg,var(--row-gray-soft) 0%,rgba(255,255,255,.02) 42%);border-color:#94a3b83d;box-shadow:inset 3px 0 0 var(--row-gray),0 10px 28px #0000002e}.task-priority-row__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 .15rem}.task-priority-row__title-wrap{display:inline-flex;align-items:center;gap:.65rem}.task-priority-row__icon{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:7px}.task-priority-row__icon-svg{width:.95rem;height:.95rem}.task-priority-row--important_urgent .task-priority-row__icon{background:#ef444429;color:#f87171}.task-priority-row--important .task-priority-row__icon{background:#3b82f629;color:#93c5fd}.task-priority-row--urgent .task-priority-row__icon{background:#eab30829;color:#fde047}.task-priority-row--none .task-priority-row__icon{background:#94a3b829;color:#cbd5e1}.task-priority-row__title{margin:0;font-size:.9375rem;font-weight:700}.task-priority-row--important_urgent .task-priority-row__title{color:#fca5a5}.task-priority-row--important .task-priority-row__title{color:#93c5fd}.task-priority-row--urgent .task-priority-row__title{color:#fde047}.task-priority-row--none .task-priority-row__title{color:#cbd5e1}.task-priority-row__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;height:1.75rem;padding:0 .5rem;border-radius:999px;background:#ffffff14;border:1px solid var(--border-soft);font-size:.8125rem;font-weight:700;color:var(--text-secondary)}.task-priority-row__columns{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:.75rem;overflow-x:auto}.task-column{display:flex;flex-direction:column;gap:.55rem;min-height:7.5rem;padding:.75rem;border-radius:12px;background:var(--surface-card);border:1px solid var(--border-soft)}.task-priority-row--important_urgent .task-column--drag-over{outline:2px dashed var(--row-red);background:#ef444414}.task-priority-row--important .task-column--drag-over{outline:2px dashed var(--row-blue);background:#3b82f614}.task-priority-row--urgent .task-column--drag-over{outline:2px dashed var(--row-yellow);background:#eab30814}.task-priority-row--none .task-column--drag-over{outline:2px dashed var(--row-gray);background:#94a3b814}.task-column__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.45rem;border-bottom:1px solid var(--border-soft)}.task-column__title{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#f5f7f67a}.task-column__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;border-radius:999px;background:#ffffff0f;font-size:.75rem;font-weight:700;color:#f5f7f6b8}.task-priority-row--important_urgent .task-column__count{background:#ef444424;color:#fca5a5}.task-priority-row--important .task-column__count{background:#3b82f624;color:#93c5fd}.task-priority-row--urgent .task-column__count{background:#eab30824;color:#fde047}.task-priority-row--none .task-column__count{background:#94a3b824;color:#cbd5e1}.task-column__cards{display:flex;flex-direction:column;gap:.55rem;flex:1}.task-column__empty{margin:0;padding:.65rem .35rem;text-align:center;font-size:.8125rem;color:#f5f7f661}.task-card{padding:.8rem .85rem;border-radius:10px;background:var(--surface-elevated);border:1px solid rgba(255,255,255,.06);box-shadow:0 8px 20px #0000002e;cursor:grab;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.task-priority-row--important_urgent .task-card{border-left:3px solid rgba(239,68,68,.55)}.task-priority-row--important .task-card{border-left:3px solid rgba(59,130,246,.55)}.task-priority-row--urgent .task-card{border-left:3px solid rgba(234,179,8,.55)}.task-priority-row--none .task-card{border-left:3px solid rgba(148,163,184,.45)}.task-card:hover{transform:translateY(-2px);border-color:#ffffff1f;box-shadow:0 14px 28px #0000003d}.task-card--dragging{opacity:.45;cursor:grabbing}.task-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.task-card__title{margin:0;font-size:.95rem;font-weight:700;line-height:1.35;color:var(--text-primary);flex:1}.task-card__actions{display:flex;flex-shrink:0;gap:.2rem}.task-card__action{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:8px;background:transparent;color:#f5f7f67a;cursor:pointer;transition:background .15s ease,color .15s ease}.task-card__action:disabled{opacity:.5;cursor:not-allowed}.task-card__action--delete:hover:not(:disabled){background:#ef44441f;color:#f87171}.task-priority-row--important_urgent .task-card__action--edit:hover:not(:disabled){background:#ef44441f;color:#fca5a5}.task-priority-row--important .task-card__action--edit:hover:not(:disabled){background:#3b82f61f;color:#93c5fd}.task-priority-row--urgent .task-card__action--edit:hover:not(:disabled){background:#eab3081f;color:#fde047}.task-priority-row--none .task-card__action--edit:hover:not(:disabled){background:#94a3b81f;color:#cbd5e1}.task-card__action-icon{width:.95rem;height:.95rem;fill:currentColor}.task-card__description{margin:0 0 .5rem;font-size:.875rem;line-height:1.55;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.task-card__deadline{display:inline-flex;align-items:center;gap:.375rem;margin-top:.25rem;padding:.3125rem .5rem;border-radius:6px;font-size:.6875rem;font-weight:700;letter-spacing:.02em;border:1px solid transparent}.task-card__deadline-tag{padding:.125rem .375rem;border-radius:4px;font-size:.625rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.task-card__deadline-date{white-space:nowrap}.task-card__deadline--green{background:#52b78824;color:#79f2c0;border-color:#52b7883d}.task-card__deadline--green .task-card__deadline-tag{background:#1b4332;color:#79f2c0}.task-card__deadline--yellow{background:#eab3081f;color:#fde047;border-color:#eab30838}.task-card__deadline--yellow .task-card__deadline-tag{background:#eab30847;color:#172b4d}.task-card__deadline--orange{background:#f973161f;color:#fdba74;border-color:#f9731638}.task-card__deadline--orange .task-card__deadline-tag{background:#f9731659;color:#fff}.task-card__deadline--red{background:#ef444429;color:#fca5a5;border-color:#ef444447}.task-card__deadline--red .task-card__deadline-tag{background:#ef4444;color:#fff}.tasks-page__fab{position:fixed;right:2rem;bottom:2rem;z-index:900;display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;padding:0;border:none;border-radius:999px;background:var(--brand-primary);color:#fff;box-shadow:0 16px 36px #1b433261,0 0 0 8px #52b7881f;cursor:pointer;transition:transform .15s ease,background .2s ease,box-shadow .2s ease}.tasks-page__fab:hover{background:var(--brand-primary-hover);transform:translateY(-2px);box-shadow:0 20px 42px #1b433273,0 0 0 10px #52b78829}.tasks-page__fab:active{transform:translateY(0)}.tasks-page__fab-icon{width:1.85rem;height:1.85rem;fill:currentColor}@media(max-width:900px){.tasks-page__body{padding-left:1rem;padding-right:1rem}.task-priority-row__columns{grid-template-columns:repeat(4,minmax(180px,1fr))}.tasks-page__fab{right:1.25rem;bottom:1.25rem}}@media(max-width:560px){.task-priority-row__columns{grid-template-columns:repeat(4,minmax(160px,1fr))}}.create-task-modal{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1rem}.create-task-modal__backdrop{position:absolute;inset:0;border:none;padding:0;background:#091e4273;cursor:pointer}.create-task-modal__dialog{position:relative;width:100%;max-width:520px;max-height:calc(100vh - 2rem);overflow-y:auto;padding:1.5rem;border-radius:12px;background:#fff;box-shadow:0 16px 40px #091e4240}.create-task-modal__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.create-task-modal__title{margin:0;font-size:1.25rem;font-weight:700;color:#172b4d}.create-task-modal__close{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border:none;border-radius:6px;background:transparent;color:#5e6c84;font-size:1.5rem;line-height:1;cursor:pointer}.create-task-modal__close:hover{background:#f4f5f7;color:#172b4d}.create-task-modal__form{display:flex;flex-direction:column;gap:1rem}.create-task-modal__row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.create-task-modal__field{display:flex;flex-direction:column;gap:.375rem}.create-task-modal__field label{font-size:.875rem;font-weight:600;color:#42526e}.create-task-modal__field input,.create-task-modal__field textarea,.create-task-modal__field select{padding:.75rem;border:1px solid #dfe1e6;border-radius:8px;font:inherit;color:#172b4d;background:#fff}.create-task-modal__field input:focus,.create-task-modal__field textarea:focus,.create-task-modal__field select:focus{outline:none;border-color:#0052cc;box-shadow:0 0 0 3px #0052cc26}.create-task-modal__field textarea{resize:vertical;min-height:6rem}.create-task-modal__error{margin:0;font-size:.875rem;color:#bf2600}.create-task-modal__state{margin:0;font-size:.875rem;color:#5e6c84}.create-task-modal__message{margin:0 0 1.25rem;font-size:.9375rem;line-height:1.5;color:#42526e}.create-task-modal__message strong{color:#172b4d}.create-task-modal__button--danger{background:#de350b;color:#fff}.create-task-modal__button--danger:hover:not(:disabled){background:#bf2600}.create-task-modal__actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.create-task-modal__button{padding:.625rem 1rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer}.create-task-modal__button:disabled{opacity:.6;cursor:not-allowed}.create-task-modal__button--secondary{background:#f4f5f7;color:#42526e}.create-task-modal__button--secondary:hover:not(:disabled){background:#ebecf0}.create-task-modal__button--primary{background:#0052cc;color:#fff}.create-task-modal__button--primary:hover:not(:disabled){background:#0747a6}@media(prefers-color-scheme:dark){.create-task-modal__dialog{background:#22272b;box-shadow:0 16px 40px #00000080}.create-task-modal__title{color:#ffffffe6}.create-task-modal__close{color:#fff9}.create-task-modal__close:hover{background:#282e33;color:#ffffffe6}.create-task-modal__field label{color:#ffffffb3}.create-task-modal__field input,.create-task-modal__field textarea,.create-task-modal__field select{border-color:#454f59;background:#1d2125;color:#ffffffe6}.create-task-modal__button--secondary{background:#282e33;color:#fffc}.create-task-modal__button--secondary:hover:not(:disabled){background:#454f59}.create-task-modal__message{color:#ffffffbf}.create-task-modal__message strong{color:#fffffff2}}@media(max-width:560px){.create-task-modal__row{grid-template-columns:1fr}}.create-task-modal--premium{--modal-primary: #1b4332;--modal-primary-hover: #2d6a4f;--modal-accent: #52b788;--modal-surface: #141a17;--modal-elevated: #1c2420;--modal-text: #f5f7f6;--modal-text-muted: rgba(245, 247, 246, .62);--modal-border: rgba(255, 255, 255, .1)}.create-task-modal--premium .create-task-modal__backdrop{background:#040806b8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.create-task-modal--premium .create-task-modal__dialog{padding:0;border-radius:20px;background:linear-gradient(145deg,#161e1afa,#0c100efa);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff14,0 24px 56px #00000085,0 0 0 1px #52b78814;overflow:hidden}.create-task-modal--premium .create-task-modal__dialog:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#74c69d59,#ffffff0d 42%,#52b7881f);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.create-task-modal--premium .create-task-modal__header{margin:0;padding:1.35rem 1.5rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.08);background:#0000002e}.create-task-modal--premium .create-task-modal__header-copy{display:flex;flex-direction:column;gap:.35rem;min-width:0}.create-task-modal--premium .create-task-modal__eyebrow{margin:0;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--modal-accent)}.create-task-modal--premium .create-task-modal__title{font-size:1.35rem;font-weight:800;letter-spacing:-.02em;color:var(--modal-text)}.create-task-modal--premium .create-task-modal__close{width:2.35rem;height:2.35rem;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#ffffffb8;font-size:1.35rem}.create-task-modal--premium .create-task-modal__close:hover{background:#52b7881f;border-color:#52b78847;color:#fff}.create-task-modal--premium .create-task-modal__form,.create-task-modal--premium .create-task-modal__message,.create-task-modal--premium .create-task-modal__state,.create-task-modal--premium .create-task-modal__error,.create-task-modal--premium .create-task-modal__actions{margin-left:1.5rem;margin-right:1.5rem}.create-task-modal--premium .create-task-modal__form{padding:1.25rem 0 1.5rem}.create-task-modal--premium .create-task-modal__state{padding:0 1.5rem 1.5rem;color:var(--modal-text-muted)}.create-task-modal--premium .create-task-modal__message{padding:0 1.5rem;margin-bottom:1.25rem;color:var(--modal-text-muted)}.create-task-modal--premium .create-task-modal__message strong{color:var(--modal-text)}.create-task-modal--premium .create-task-modal__field label{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#ffffff85}.create-task-modal--premium .create-task-modal__field input,.create-task-modal--premium .create-task-modal__field textarea,.create-task-modal--premium .create-task-modal__field select{padding:.85rem .95rem;border-radius:12px;border:1px solid var(--modal-border);background:#ffffff0a;color:var(--modal-text);box-shadow:inset 0 1px #ffffff0a;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.create-task-modal--premium .create-task-modal__field input[type=datetime-local]{color-scheme:dark}.create-task-modal--premium .create-task-modal__field input::placeholder,.create-task-modal--premium .create-task-modal__field textarea::placeholder{color:#ffffff47}.create-task-modal--premium .create-task-modal__field input:focus,.create-task-modal--premium .create-task-modal__field textarea:focus,.create-task-modal--premium .create-task-modal__field select:focus{border-color:#52b7888c;background:#52b7880f;box-shadow:0 0 0 3px #52b78829,inset 0 1px #ffffff0f}.create-task-modal--premium .create-task-modal__field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,rgba(255,255,255,.55) 50%),linear-gradient(135deg,rgba(255,255,255,.55) 50%,transparent 50%);background-position:calc(100% - 1.1rem) calc(50% + .1rem),calc(100% - .75rem) calc(50% + .1rem);background-size:.35rem .35rem;background-repeat:no-repeat;padding-right:2.25rem}.create-task-modal--premium .create-task-modal__field select option{background:#141a17;color:#f5f7f6}.create-task-modal--premium .create-task-modal__error{color:#fca5a5}.create-task-modal--premium .create-task-modal__dialog>.create-task-modal__error{padding:0 1.5rem 1.5rem}.create-task-modal--premium .create-task-modal__actions{padding-bottom:1.5rem;margin-top:.25rem}.create-task-modal--premium .create-task-modal__button{min-width:6.5rem;padding:.72rem 1.15rem;border-radius:12px;font-weight:700}.create-task-modal--premium .create-task-modal__button--secondary{border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#ffffffc7}.create-task-modal--premium .create-task-modal__button--secondary:hover:not(:disabled){background:#ffffff14;color:#fff}.create-task-modal--premium .create-task-modal__button--primary{background:linear-gradient(180deg,#2d6a4f 0%,var(--modal-primary) 100%);color:#fff;box-shadow:0 8px 20px #1b43326b,inset 0 1px #ffffff24}.create-task-modal--premium .create-task-modal__button--primary:hover:not(:disabled){background:linear-gradient(180deg,#40916c 0%,var(--modal-primary-hover) 100%)}.create-task-modal--premium .create-task-modal__button--danger{background:linear-gradient(180deg,#ef4444,#dc2626);box-shadow:0 8px 20px #dc262647,inset 0 1px #ffffff1f}.create-task-modal--premium .create-task-modal__button--danger:hover:not(:disabled){background:linear-gradient(180deg,#f87171,#ef4444)}@media(max-width:560px){.create-task-modal--premium .create-task-modal__header,.create-task-modal--premium .create-task-modal__form,.create-task-modal--premium .create-task-modal__message,.create-task-modal--premium .create-task-modal__state,.create-task-modal--premium .create-task-modal__error,.create-task-modal--premium .create-task-modal__actions{margin-left:1rem;margin-right:1rem}.create-task-modal--premium .create-task-modal__header{padding-left:1rem;padding-right:1rem}}.recurring-tasks-page{--brand-primary: #1b4332;--brand-primary-hover: #2d6a4f;--brand-accent: #52b788;--surface-dark: #0d1210;--surface-card: #171c19;--surface-elevated: #1f2522;--text-primary: #f5f7f6;--text-secondary: rgba(245, 247, 246, .62);--border-soft: rgba(255, 255, 255, .08);--row-red: #ef4444;--row-green: #52b788;--row-blue: #3b82f6;--row-yellow: #eab308;--row-red-soft: rgba(239, 68, 68, .14);--row-green-soft: rgba(82, 183, 136, .14);--row-blue-soft: rgba(59, 130, 246, .14);--row-yellow-soft: rgba(234, 179, 8, .14);min-height:100dvh;background:var(--surface-dark);color:var(--text-primary);display:flow-root}.recurring-hero{position:relative;overflow:hidden;margin-top:-72px;padding-top:72px;display:flex;flex-direction:column;min-height:auto;box-sizing:border-box;background-color:#0a0a0c;background-image:url(/recurring-hero-boxing.jpg);background-repeat:no-repeat;background-size:cover;background-position:center 42%}.recurring-hero__overlay{position:absolute;inset:0;background:radial-gradient(ellipse 80% 55% at 50% 52%,#080a0c2e,#080a0c9e),linear-gradient(180deg,#080a0cb8,#080a0c47 42%,#0d1210e0 88%,#0d1210fa)}.recurring-hero__content{position:relative;z-index:1;flex:0 0 auto;display:flex;flex-direction:column;justify-content:flex-start;max-width:1480px;width:100%;margin:0 auto;padding:2.75rem 2rem .85rem}.recurring-hero__greeting{margin:0;font-size:clamp(1.75rem,3vw,2.35rem);font-weight:700;letter-spacing:-.03em;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.45)}.recurring-hero__summary{margin:.55rem 0 0;font-size:1rem;color:#ffffffd1;text-shadow:0 1px 10px rgba(0,0,0,.4)}.recurring-hero__tagline{margin:.35rem 0 0;font-size:.95rem;font-weight:600;color:var(--brand-accent)}.mastery-profile{display:grid;grid-template-columns:auto minmax(0,1.05fr) minmax(22rem,28rem);gap:1.35rem 1.75rem;align-items:center;margin-top:0}.mastery-profile__portrait{display:flex;justify-content:center;margin-top:0}.mastery-profile__avatar-ring{display:grid;place-items:center;width:clamp(14.5rem,17vw,17.5rem);height:clamp(14.5rem,17vw,17.5rem);border-radius:50%;padding:.45rem;background:linear-gradient(145deg,#74c69d,#1b4332);box-shadow:0 0 0 8px #0d1210b8,0 0 42px #52b78847,0 22px 48px #0000006b}.mastery-profile__avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center center;background:#1f2522}.mastery-profile__avatar--fallback{background:linear-gradient(145deg,#40916c,#1b4332)}.mastery-profile__level-info{padding-top:0}.mastery-profile__level-label{margin:0;font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--brand-accent)}.mastery-profile__level-name{margin:.35rem 0 0;font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;letter-spacing:-.03em;line-height:1.05;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.35)}.mastery-profile__progress-text{margin:.75rem 0 .45rem;font-size:.95rem;font-weight:600;color:#ffffffb8}.mastery-profile__progress-bar{height:.55rem;border-radius:999px;background:#ffffff1a;overflow:hidden}.mastery-profile__progress-fill{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#52b788,#1b4332)}.mastery-profile__next-level{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;margin-top:1.5rem}.mastery-profile__next-label{font-size:.82rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#ffffff94}.mastery-profile__next-preview{display:inline-flex;align-items:center;gap:.95rem;padding:.65rem 1.15rem .65rem .65rem;border-radius:18px;background:#0a0e0cb8;border:1px solid rgba(255,255,255,.16);box-shadow:0 10px 28px #00000047}.mastery-profile__next-avatar{width:4.5rem;height:4.5rem;border-radius:50%;object-fit:cover;border:2px solid rgba(82,183,136,.45);box-shadow:0 0 18px #52b78838}.mastery-profile__next-avatar--fallback{background:#2d6a4f}.mastery-profile__next-copy{display:flex;flex-direction:column;gap:.15rem}.mastery-profile__next-level-num{font-size:clamp(1.05rem,1.6vw,1.35rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;color:#fff}.mastery-profile__max-level{margin:.75rem 0 0;font-size:.95rem;font-weight:600;color:var(--brand-accent)}.mastery-profile__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;align-self:center;margin-top:0;width:100%}.mastery-stat-card{display:flex;flex-direction:column;gap:.3rem;min-height:7.85rem;padding:1.15rem 1.35rem;border-radius:16px;background:#0a0e0c9e;border:1px solid rgba(255,255,255,.14);box-shadow:0 12px 32px #00000047;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.mastery-stat-card__icon{display:inline-flex;align-items:center;justify-content:center;width:2.45rem;height:2.45rem;margin-bottom:.2rem;border-radius:11px}.mastery-stat-card__icon-svg{width:1.2rem;height:1.2rem;fill:currentColor}.mastery-stat-card__icon--flame{background:#f9731633;color:#fb923c}.mastery-stat-card__icon--crown{background:#eab3082e;color:#fde047}.mastery-stat-card__icon--star{background:#3b82f62e;color:#93c5fd}.mastery-stat-card__icon--trophy{background:#52b7882e;color:#79f2c0}.mastery-stat-card__label{font-size:.86rem;font-weight:600;color:#ffffffb8}.mastery-stat-card__value{font-size:1.85rem;font-weight:800;letter-spacing:-.03em;line-height:1.1;color:#fff}.mastery-path{position:relative;margin:0 0 .45rem;padding:1.1rem 1.15rem .85rem;border-radius:20px;background:linear-gradient(145deg,#121815eb,#0a0e0cc7);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff14,0 18px 44px #00000057,0 0 0 1px #52b7880f;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);overflow:hidden}.mastery-path:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,#74c69d59,#ffffff0f 38%,#52b7881f);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.mastery-path__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.mastery-path__heading{display:flex;flex-direction:column;gap:.2rem}.mastery-path__title{margin:0;font-size:.82rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:#ffffffd1}.mastery-path__subtitle{margin:0;font-size:.82rem;font-weight:600;color:#ffffff75}.mastery-path__progress-chip{display:inline-flex;align-items:baseline;gap:.15rem;padding:.45rem .8rem;border-radius:999px;background:#52b7881f;border:1px solid rgba(82,183,136,.28);box-shadow:inset 0 1px #ffffff0f}.mastery-path__progress-chip-value{font-size:1.05rem;font-weight:800;color:var(--brand-accent)}.mastery-path__progress-chip-sep,.mastery-path__progress-chip-total{font-size:.82rem;font-weight:700;color:#ffffff6b}.mastery-path__track-shell{position:relative;padding:.35rem 0 .15rem}.mastery-path__page{position:relative;display:flex;flex:0 0 100%;min-width:100%;gap:1rem;justify-content:space-between;align-items:flex-start;scroll-snap-align:start;box-sizing:border-box;padding:0 .75rem}.mastery-path__page-rail{position:absolute;left:2.85rem;right:2.85rem;top:2.35rem;height:.55rem;z-index:0;pointer-events:none}.mastery-path__rail-track{position:absolute;inset:0;border-radius:999px;background:linear-gradient(180deg,#0000006b,#ffffff12 48%,#00000057),#ffffff0a;border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 2px 5px #00000061,0 0 18px #52b78814}.mastery-path__rail-track:before{content:"";position:absolute;inset:1px;border-radius:inherit;background:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0,rgba(255,255,255,.05) 1px,transparent 1px,transparent 12px);opacity:.45}.mastery-path__rail-track:after{content:"";position:absolute;inset:0;border-radius:inherit;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),rgba(255,255,255,.08) calc(20% - 1px),rgba(255,255,255,.08) 20%)}.mastery-path__rail-fill{position:relative;display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1b4332,#40916c 28%,#52b788 55%,#95d5b2 78%,#52b788);background-size:220% 100%;animation:mastery-path-rail-shimmer 4.5s ease-in-out infinite;box-shadow:0 0 16px #52b7888c,0 0 32px #52b78838,inset 0 1px #ffffff47;transition:width .45s ease}.mastery-path__rail-fill:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,#ffffff57,#ffffff0f 42%,#0000001f)}.mastery-path__rail-fill:after{content:"";position:absolute;top:50%;right:0;width:.72rem;height:.72rem;border-radius:50%;transform:translate(50%,-50%);background:radial-gradient(circle at 35% 35%,#fff,#95d5b2 45%,#52b788);box-shadow:0 0 0 3px #52b78847,0 0 14px #52b788d9,0 0 28px #95d5b273;animation:mastery-path-rail-pulse 2.8s ease-in-out infinite}@keyframes mastery-path-rail-shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes mastery-path-rail-pulse{0%,to{transform:translate(50%,-50%) scale(1);opacity:1}50%{transform:translate(50%,-50%) scale(1.12);opacity:.88}}@media(prefers-reduced-motion:reduce){.mastery-path__rail-fill{animation:none}.mastery-path__rail-fill:after{animation:none}}.mastery-path__track{position:relative;z-index:1;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:.15rem 0 .55rem;scrollbar-width:thin;scrollbar-color:rgba(82,183,136,.45) rgba(255,255,255,.06)}.mastery-path__pager{display:flex;justify-content:center;gap:.4rem;margin-top:.35rem}.mastery-path__pager-dot{width:2.25rem;height:3px;padding:0;border:none;border-radius:999px;background:#ffffff2e;cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}.mastery-path__pager-dot:hover{background:#52b78873;transform:scaleY(1.8)}.mastery-path__pager-dot:focus-visible{outline:none;box-shadow:0 0 0 3px #52b7883d}.mastery-path__pager-dot--active{background:var(--brand-accent);box-shadow:0 0 12px #52b78873}.mastery-path__pager-dot--active:hover{background:#74c69d;transform:scaleY(1.8)}.mastery-path__track::-webkit-scrollbar{height:6px}.mastery-path__track::-webkit-scrollbar-track{margin:0 .5rem;border-radius:999px;background:#ffffff0d}.mastery-path__track::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(90deg,#40916c,#52b788)}.mastery-path__node{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1 1 0;min-width:4.5rem;outline:none}.mastery-path__node--hovered .mastery-path__bubble{transform:scale(1.06) translateY(-3px);z-index:2;border-color:#95d5b2bf;box-shadow:0 14px 32px #0000006b,0 0 0 1px #95d5b259}.mastery-path__node--hovered.mastery-path__node--current .mastery-path__bubble{transform:scale(1.04) translateY(-3px)}.mastery-path__node--hovered .mastery-path__avatar{transform:scale(1.08);filter:brightness(1.12) contrast(1.08) saturate(1.12)}.mastery-path__bubble{position:relative;display:grid;place-items:center;width:4.25rem;height:4.25rem;border-radius:50%;background:#ffffff0a;border:2px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff14,0 8px 18px #00000038;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.mastery-path__node--completed,.mastery-path__node--current,.mastery-path__node--next,.mastery-path__node--preview{cursor:pointer}.mastery-path__node--completed .mastery-path__bubble{border-color:#52b7886b;background:#52b78814}.mastery-path__node--next .mastery-path__bubble{border-color:#fde0478c;background:#eab30814;box-shadow:inset 0 1px #ffffff1a,0 0 0 3px #eab3081a,0 10px 22px #0000003d}.mastery-path__node--preview .mastery-path__bubble{border-color:#ffffff24;background:#ffffff0a;box-shadow:inset 0 1px #ffffff0f,0 8px 18px #0003}.mastery-path__node--preview .mastery-path__avatar{opacity:.72;filter:brightness(.88) saturate(.82)}.mastery-path__node--current .mastery-path__bubble{width:4.85rem;height:4.85rem;border-color:var(--brand-accent);background:#52b7881f;box-shadow:inset 0 1px #ffffff1f,0 0 0 5px #52b78829,0 0 28px #52b78859,0 12px 28px #00000047;transform:translateY(-2px)}.mastery-path__node--locked .mastery-path__bubble{width:3.85rem;height:3.85rem;border-color:#ffffff0f;background:#ffffff06;box-shadow:inset 0 1px #ffffff0a}.mastery-path__pulse{position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(82,183,136,.55);animation:mastery-path-pulse 2.4s ease-out infinite;pointer-events:none}@keyframes mastery-path-pulse{0%{transform:scale(.92);opacity:.75}70%{transform:scale(1.12);opacity:0}to{transform:scale(1.12);opacity:0}}.mastery-path__avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;object-position:center center;transition:transform .22s ease,filter .22s ease}.mastery-path__lock-shell{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:linear-gradient(145deg,#ffffff0f,#ffffff05)}.mastery-path__lock{width:1.05rem;height:1.05rem;fill:#ffffff47}.mastery-path__number{display:inline-flex;align-items:center;justify-content:center;min-width:1.55rem;padding:.12rem .4rem;border-radius:999px;font-size:.72rem;font-weight:800;letter-spacing:.02em;color:#ffffff75;background:#ffffff0a;border:1px solid rgba(255,255,255,.06)}.mastery-path__node--completed .mastery-path__number{color:#95d5b2e0;border-color:#52b7882e;background:#52b78814}.mastery-path__node--next .mastery-path__number{color:#fde047;border-color:#eab30838;background:#eab30814}.mastery-path__node--preview .mastery-path__number{color:#ffffff61;border-color:#ffffff14;background:#ffffff08}.mastery-path__node--preview.mastery-path__node--hovered .mastery-path__avatar{opacity:1}.mastery-path__node--current .mastery-path__number{color:#fff;border-color:#52b7886b;background:#52b7882e;box-shadow:0 0 12px #52b78838}.mastery-path__node--locked .mastery-path__number{color:#ffffff3d;background:transparent;border-color:#ffffff0a}.mastery-path__preview{position:fixed;z-index:1100;width:9.5rem;padding:.45rem;border-radius:14px;background:#080c10eb;border:1px solid rgba(149,213,178,.45);box-shadow:0 18px 40px #0000007a;pointer-events:none;transform:translate(-50%,calc(-100% - 8px))}.mastery-path__preview:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:7px solid transparent;border-top-color:#95d5b273}.mastery-path__preview img{display:block;width:100%;aspect-ratio:1;object-fit:cover;object-position:center center;border-radius:10px}.mastery-path__preview-name{display:block;margin-top:.45rem;text-align:center;color:#fff;font-size:.68rem;font-weight:600;line-height:1.25}.recurring-tasks-page__state--hero{padding:4rem 0 2rem;color:#ffffffb8}.recurring-tasks-page__state--error{color:#f87171;font-weight:600}.recurring-tasks-page__notice{margin:0 0 .65rem;padding:.75rem 1rem;border-radius:12px;background:#f59e0b1f;border:1px solid rgba(245,158,11,.22);color:#fde047;font-size:.875rem;font-weight:600}.recurring-page__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin:0 0 .65rem}.recurring-stat-card{position:relative;display:flex;flex-direction:column;gap:.25rem;min-height:7.5rem;padding:.95rem 1.05rem;border-radius:14px;background:#0a0e0c9e;border:1px solid rgba(255,255,255,.14);box-shadow:0 12px 32px #00000047;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.recurring-stat-card__icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:2.15rem;height:2.15rem;margin-bottom:.15rem;border-radius:9px}.recurring-stat-card__icon{width:1.05rem;height:1.05rem}.recurring-stat-card__icon-wrap--green{background:#52b7882e;color:#79f2c0}.recurring-stat-card__icon-wrap--red{background:#ef44442e;color:#f87171}.recurring-stat-card__icon-wrap--blue{background:#3b82f62e;color:#93c5fd}.recurring-stat-card__icon-wrap--yellow{background:#eab3082e;color:#fde047}.recurring-stat-card__icon-wrap--orange{background:#f9731633;color:#fb923c}.recurring-stat-card__label{font-size:.8125rem;font-weight:600;color:#ffffffb8}.recurring-stat-card__value{font-size:1.75rem;font-weight:700;letter-spacing:-.03em;color:#fff;line-height:1.1}.recurring-stat-card__hint{margin-top:auto;font-size:.75rem;font-weight:600;color:var(--brand-accent)}.recurring-stat-card--score .recurring-stat-card__hint{color:#ffffff94;font-weight:500;line-height:1.45}.recurring-stat-card--warm{border-color:#ffab0038}.recurring-stat-card--warm .recurring-stat-card__value{color:#ffb347}.recurring-stat-card--good{border-color:#52b7883d}.recurring-stat-card--good .recurring-stat-card__value{color:#79f2c0}.recurring-stat-card--great{border-color:#52b78852}.recurring-stat-card--great .recurring-stat-card__value{color:#52b788}.recurring-stat-card--legend{border-color:#8777d947}.recurring-stat-card--legend .recurring-stat-card__value{color:#c4b5fd}.daily-reset-banner{position:relative;margin:0 0 .55rem;padding:.7rem .95rem .65rem;border-radius:18px;overflow:hidden;background:linear-gradient(145deg,#121815f5,#0a0e0ce0);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff14,0 20px 48px #00000057;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.daily-reset-banner:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(90deg,#ffffff1a,#ffffff0d,#ffffff1a);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.daily-reset-banner__top{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:clamp(1.25rem,3vw,2.5rem);width:100%;margin-bottom:0;padding:.45rem 1.1rem;border-radius:14px;background:radial-gradient(circle at 50% 0%,#ffffff14,#ffffff05 58%);border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px #ffffff0f}.daily-reset-banner__top--notice-only{grid-template-columns:minmax(0,1fr)}.daily-reset-banner__status{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;justify-self:end;min-width:0;text-align:right}.daily-reset-banner__status-detail{margin:0;font-size:.76rem;font-weight:600;line-height:1.25;color:#f5f7f6c7}.daily-reset-banner__badge{display:inline-flex;align-items:center;gap:.35rem;min-height:1.65rem;padding:.22rem .55rem;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#f5f7f67a;flex-shrink:0;transition:color .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.daily-reset-banner__badge--success,.daily-reset-banner__badge--warning{white-space:nowrap}.daily-reset-banner__badge-icon{width:.85rem;height:.85rem;flex-shrink:0}.daily-reset-banner__badge--success.daily-reset-banner__badge--active{color:#86efac;border-color:#52b78857;background:#52b7881a;box-shadow:none}.daily-reset-banner__badge--warning.daily-reset-banner__badge--active{color:#fca5a5;border-color:#ef444457;background:#ef44441a;box-shadow:none}.daily-reset-banner__notice{display:flex;align-items:center;justify-content:flex-start;gap:.55rem;min-width:0;justify-self:start}.daily-reset-banner__notice-text{margin:0;font-size:.76rem;font-weight:600;line-height:1.2;white-space:nowrap;color:#f5f7f6c7}.recurring-tasks-page__body{max-width:1480px;margin:0 auto;padding:.35rem 2rem 4rem}.recurring-tasks-page--compact .recurring-tasks-page__body{padding-bottom:2.75rem}.recurring-tasks-page--compact .mastery-path{margin-bottom:.25rem}.recurring-board--compact{gap:.55rem}.recurring-tasks-page__state{padding:3rem 2rem;text-align:center;color:var(--text-secondary)}.recurring-board{display:flex;flex-direction:column;gap:.65rem}.recurring-frequency-row{display:flex;flex-direction:column;gap:.65rem;padding:.75rem .85rem;border-radius:16px;border:1px solid var(--border-soft);background:#ffffff06;box-shadow:0 10px 28px #0000002e}.recurring-frequency-row--daily{background:linear-gradient(90deg,#ef44440d,#ffffff05 16%);border-color:var(--border-soft);box-shadow:inset 2px 0 #ef44446b,0 10px 28px #0000002e}.recurring-frequency-row--daily.recurring-frequency-row--all-done{background:linear-gradient(90deg,#52b7880d,#ffffff05 16%);border-color:var(--border-soft);box-shadow:inset 2px 0 #52b7886b,0 10px 28px #0000002e}.recurring-frequency-row--weekly{background:linear-gradient(90deg,var(--row-blue-soft) 0%,rgba(255,255,255,.02) 42%);border-color:#3b82f647;box-shadow:inset 3px 0 0 var(--row-blue),0 10px 28px #0000002e}.recurring-frequency-row--monthly{background:linear-gradient(90deg,var(--row-yellow-soft) 0%,rgba(255,255,255,.02) 42%);border-color:#eab30847;box-shadow:inset 3px 0 0 var(--row-yellow),0 10px 28px #0000002e}.recurring-frequency-row__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0 .15rem}.recurring-frequency-row__title-wrap{display:inline-flex;align-items:center;gap:.65rem}.recurring-frequency-row__icon{display:inline-flex;align-items:center;justify-content:center;width:1.65rem;height:1.65rem;border-radius:7px}.recurring-frequency-row__icon-svg{width:.95rem;height:.95rem}.recurring-frequency-row--daily .recurring-frequency-row__title{color:#fca5a5d1}.recurring-frequency-row--daily.recurring-frequency-row--all-done .recurring-frequency-row__title{color:#86efacd1}.recurring-frequency-row--weekly .recurring-frequency-row__icon{background:#3b82f629;color:#93c5fd}.recurring-frequency-row--monthly .recurring-frequency-row__icon{background:#eab30829;color:#fde047}.recurring-frequency-row__title{margin:0;font-size:.9375rem;font-weight:700}.recurring-frequency-row--weekly .recurring-frequency-row__title{color:#93c5fd}.recurring-frequency-row--monthly .recurring-frequency-row__title{color:#fde047}.recurring-frequency-row__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;height:1.75rem;padding:0 .5rem;border-radius:999px;background:#ffffff14;border:1px solid var(--border-soft);font-size:.8125rem;font-weight:700;color:var(--text-secondary)}.recurring-frequency-row__columns{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:.75rem;overflow-x:auto}.recurring-column{display:flex;flex-direction:column;gap:.55rem;min-height:7.5rem;padding:.75rem;border-radius:12px;background:var(--surface-card);border:1px solid var(--border-soft)}.recurring-frequency-row--daily .recurring-column--drag-over{outline-color:#ef444473;background:#ef44440a}.recurring-frequency-row--weekly .recurring-column--drag-over{outline-color:var(--row-blue);background:#3b82f614}.recurring-frequency-row--monthly .recurring-column--drag-over{outline-color:var(--row-yellow);background:#eab30814}.recurring-column--drag-over{outline:2px dashed var(--brand-accent);background:#52b78814}.recurring-column__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.45rem;border-bottom:1px solid var(--border-soft)}.recurring-column__title{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#f5f7f67a}.recurring-column__count{display:inline-flex;align-items:center;justify-content:center;min-width:1.5rem;height:1.5rem;padding:0 .4rem;border-radius:999px;background:#ffffff0f;font-size:.75rem;font-weight:700;color:#f5f7f6b8}.recurring-frequency-row--weekly .recurring-column__count{background:#3b82f624;color:#93c5fd}.recurring-frequency-row--monthly .recurring-column__count{background:#eab30824;color:#fde047}.recurring-column__cards{display:flex;flex-direction:column;gap:.85rem;flex:1;min-height:8rem}.recurring-column__empty{display:flex;flex:1;align-items:center;justify-content:center;margin:0;min-height:6rem;padding:.65rem .35rem;text-align:center;font-size:.8125rem;color:#f5f7f661}.recurring-card{padding:.8rem .85rem;border-radius:10px;background:var(--surface-elevated);border:1px solid rgba(255,255,255,.06);box-shadow:0 8px 20px #0000002e;cursor:grab;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.recurring-frequency-row--weekly .recurring-card{border-left:3px solid rgba(59,130,246,.55)}.recurring-frequency-row--monthly .recurring-card{border-left:3px solid rgba(234,179,8,.55)}.recurring-card:hover{transform:translateY(-2px);border-color:#ffffff1f;box-shadow:0 14px 28px #0000003d}.recurring-card--dragging{opacity:.45;cursor:grabbing}.recurring-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.recurring-card__title{margin:0;font-size:.95rem;font-weight:700;line-height:1.35;letter-spacing:-.01em;color:var(--text-primary);flex:1}.recurring-card__actions{display:flex;flex-shrink:0;gap:.2rem}.recurring-card__action{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;border:none;border-radius:8px;background:transparent;color:#f5f7f67a;cursor:pointer;transition:background .15s ease,color .15s ease}.recurring-card__action:disabled{opacity:.5;cursor:not-allowed}.recurring-frequency-row--weekly .recurring-card__action--edit:hover:not(:disabled){background:#3b82f61f;color:#93c5fd}.recurring-frequency-row--monthly .recurring-card__action--edit:hover:not(:disabled){background:#eab3081f;color:#fde047}.recurring-card__action--delete:hover:not(:disabled){background:#ef44441f;color:#f87171}.recurring-card__action-icon{width:.95rem;height:.95rem;fill:currentColor}.recurring-card__description{margin:0 0 .75rem;font-size:.875rem;line-height:1.55;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.recurring-card__streak{display:inline-flex;align-items:center;gap:.45rem;margin-top:.15rem;padding:.42rem .7rem;border-radius:999px;font-size:.75rem;font-weight:700;border:1px solid transparent}.recurring-card__streak-tag{font-size:.6875rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.recurring-card__streak-value{font-size:.875rem;white-space:nowrap}.recurring-card__streak--none{background:#ffffff0f;color:var(--text-secondary);border-color:var(--border-soft)}.recurring-card__streak--none .recurring-card__streak-tag{color:#f5f7f68c}.recurring-card__streak--warm{background:#ffab001f;color:#ffb347;border-color:#ffab0038}.recurring-card__streak--good{background:#ffc4001a;color:#ffd666;border-color:#ffc4002e}.recurring-card__streak--great{background:#52b78824;color:#79f2c0;border-color:#52b7883d}.recurring-card__streak--legend{background:#a78bfa24;color:#c4b5fd;border-color:#a78bfa3d}.recurring-card__reset{display:inline-flex;align-items:center;gap:.4rem;margin:.75rem 0 0;font-size:.75rem;color:#f5f7f67a}.recurring-card__reset-icon{width:.9rem;height:.9rem;fill:currentColor;flex-shrink:0}.recurring-tasks-page__fab{position:fixed;right:2rem;bottom:2rem;z-index:900;display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;padding:0;border:none;border-radius:999px;background:var(--brand-primary);color:#fff;box-shadow:0 16px 36px #1b433261,0 0 0 8px #52b7881f;cursor:pointer;transition:transform .15s ease,background .2s ease,box-shadow .2s ease}.recurring-tasks-page__fab:hover{background:var(--brand-primary-hover);transform:translateY(-2px);box-shadow:0 20px 42px #1b433273,0 0 0 10px #52b78829}.recurring-tasks-page__fab:active{transform:translateY(0)}.recurring-tasks-page__fab-icon{width:1.85rem;height:1.85rem;fill:currentColor}@media(max-width:1100px){.recurring-page__stats,.mastery-profile{grid-template-columns:1fr;justify-items:center;text-align:center}.mastery-path__header{flex-direction:column;align-items:flex-start}.mastery-profile__level-info{width:100%;max-width:34rem}.mastery-profile__next-level{align-items:center}.mastery-profile__stats{width:100%;align-self:center;margin-top:.5rem}}@media(max-width:900px){.recurring-hero{background-size:100% auto;background-position:65% 36%}.recurring-hero__content,.recurring-tasks-page__body{padding-left:1rem;padding-right:1rem}.recurring-frequency-row__columns{grid-template-columns:repeat(3,minmax(220px,1fr))}.daily-reset-banner__top{grid-template-columns:1fr;row-gap:.85rem;column-gap:0;padding:.65rem .85rem}.daily-reset-banner__badge,.daily-reset-banner__notice,.daily-reset-banner__status{justify-self:center}.daily-reset-banner__status{flex-direction:column;align-items:center;text-align:center}.daily-reset-banner__notice{justify-content:center}.daily-reset-banner__notice-text,.daily-reset-banner__status-detail{white-space:normal}.recurring-tasks-page__fab{right:1.25rem;bottom:1.25rem}}@media(max-width:560px){.recurring-page__stats,.mastery-profile__stats{grid-template-columns:1fr}.recurring-frequency-row__columns{grid-template-columns:repeat(3,minmax(200px,1fr))}}.app-header{position:fixed;top:0;left:0;width:100%;height:72px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1.5rem;padding:0 2rem;background:#081410eb;border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px) saturate(130%);-webkit-backdrop-filter:blur(14px) saturate(130%);box-shadow:0 8px 32px #0000001f;z-index:1000}.app-header--hero{background:transparent;border-bottom:none;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.app-header__brand{justify-self:start;display:inline-flex;align-items:center;gap:.85rem;min-width:0;padding:.52rem .95rem .52rem .72rem;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#00000085;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);overflow:visible;text-decoration:none;color:#fff}.app-header__brand-logo-shell{position:relative;flex:0 0 2.75rem;width:2.75rem;height:2.75rem;flex-shrink:0}.app-header__brand-logo{position:absolute;left:50%;top:50%;width:6rem;height:6rem;transform:translate(-44%,-50%);object-fit:contain;filter:drop-shadow(0 3px 12px rgba(0,0,0,.45))}.app-header__brand-copy{display:flex;flex-direction:column;gap:.18rem;min-width:0}.app-header__brand-name{font-size:1.2rem;font-weight:800;letter-spacing:-.02em;line-height:1.05;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.45);white-space:nowrap}.app-header__brand-tagline{font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;line-height:1.1;color:#b7e4c7;text-shadow:0 1px 8px rgba(0,0,0,.4);white-space:nowrap}.app-header__nav{display:inline-flex;align-items:center;gap:.4rem;padding:.38rem;border-radius:14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}.app-header--hero .app-header__nav{gap:.4rem;padding:.38rem;border-radius:14px;background:#00000029;border:none}.app-header__nav-link{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1.2rem;border-radius:10px;color:#ffffffb8;font-size:.875rem;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;background:transparent;transition:background-color .15s ease,color .15s ease,box-shadow .15s ease}.app-header--hero .app-header__nav-link:not(.app-header__nav-link--active){color:#ffffff85;background:transparent}.app-header__nav-link:hover:not(.app-header__nav-link--active){color:#ffffffeb;background:#ffffff14}.app-header--hero .app-header__nav-link:hover:not(.app-header__nav-link--active){color:#ffffffc7;background:#ffffff0f}.app-header__nav-link--active,.app-header__nav-link--active:hover,.app-header__nav-link--active:focus-visible{color:#fff!important;font-weight:700;background-color:#1b4332!important;box-shadow:0 4px 16px #1b43328c,inset 0 1px #ffffff24}.app-header--hero .app-header__nav-link--active,.app-header--hero .app-header__nav-link--active:hover,.app-header--hero .app-header__nav-link--active:focus-visible{color:#fff!important;background-color:#1b4332!important;box-shadow:0 4px 18px #00000059,inset 0 1px #ffffff29}.app-header__actions{justify-self:end;display:inline-flex;align-items:center;gap:.65rem}.app-header__language{position:static}.app-header__logout{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff0f;color:#ffffffd9;cursor:pointer;box-shadow:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.app-header--hero .app-header__logout{background:#00000024;border:none;color:#ffffff9e}.app-header__logout-icon{width:1.2rem;height:1.2rem;fill:currentColor}.app-header__logout:hover{background:#ffffff1a;color:#fff}.app-header--hero .app-header__logout:hover{background:#00000038;color:#ffffffe0}@media(max-width:900px){.app-header{grid-template-columns:auto 1fr auto;gap:.75rem;padding:0 1rem}.app-header__brand{gap:.65rem;padding:.48rem .72rem .48rem .58rem}.app-header__brand-logo-shell{flex-basis:2.35rem;width:2.35rem;height:2.35rem}.app-header__brand-logo{width:4.75rem;height:4.75rem;transform:translate(-42%,-50%)}.app-header__brand-copy{display:none}.app-header__brand-name{font-size:1.02rem}.app-header__brand-tagline{font-size:.64rem;letter-spacing:.12em}.app-header__nav{justify-self:center;max-width:100%;overflow-x:auto;scrollbar-width:none}.app-header__nav::-webkit-scrollbar{display:none}.app-header__nav-link{padding:.45rem .85rem;font-size:.8125rem}}
