.learner-app{--learner-bg:var(--app-color-surface-subtle);--learner-surface:var(--white);--learner-ink:var(--app-color-learner-ink);--learner-muted:var(--app-color-learner-muted);--learner-line:var(--app-color-learner-line);--learner-coral:var(--app-color-coral);min-height:100svh;display:grid;grid-template-columns:var(--app-sidebar-learner-width) minmax(0,1fr);color:var(--learner-ink);background:var(--learner-bg)}.learner-icon{width:var(--app-space-5);height:var(--app-space-5);flex:0 0 auto}.learner-app-sidebar{position:sticky;z-index:var(--z-sidebar);top:0;height:100svh;display:flex;flex-direction:column;gap:var(--app-space-8);padding:var(--app-space-5) var(--app-space-4);border-right:1px solid color-mix(in srgb,var(--green) 18%,var(--line));background:var(--app-color-surface-subtle);box-shadow:inset -1px 0 0 rgb(255 255 255/72%)}.learner-primary-nav,.learner-sidebar-footer{display:grid;gap:var(--app-space-2)}.learner-primary-nav a,.learner-sidebar-footer a{min-height:var(--app-space-12);display:flex;align-items:center;gap:var(--app-space-3);padding:0 var(--app-space-3);border-radius:var(--app-space-3);color:var(--learner-muted);font-size:var(--app-label);line-height:var(--app-label-line-height);letter-spacing:var(--app-label-letter-spacing);font-weight:var(--fw-semibold);transition:color .18s,background .18s,transform .18s}.learner-primary-nav a:hover,.learner-sidebar-footer a:hover{color:var(--green);background:#edf3ef;transform:translateX(2px)}.learner-primary-nav a.is-active{color:var(--green);background:#e4f1e9}.learner-sidebar-footer{margin-top:auto;padding-top:var(--app-space-4);border-top:1px solid var(--learner-line)}.learner-sidebar-footer a{min-height:var(--app-space-11);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing)}.learner-app-main{min-width:0}.workspace-topbar{--workspace-accent:var(--green);--workspace-badge:var(--app-color-coral);--workspace-ink:var(--ink);--workspace-line:var(--line);--workspace-muted:var(--muted);width:100%;height:var(--app-topbar-height);min-height:var(--app-topbar-height);position:sticky;z-index:var(--z-header);top:0;display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-6);padding:var(--app-space-3) var(--app-space-page);border-bottom:1px solid var(--workspace-line);background:color-mix(in srgb,var(--white) 94%,transparent);backdrop-filter:blur(var(--app-space-4))}.workspace-topbar-learner{--workspace-badge:var(--learner-coral);--workspace-ink:var(--learner-ink);--workspace-line:var(--learner-line);--workspace-muted:var(--learner-muted)}.workspace-topbar-admin,.workspace-topbar-teacher{--workspace-accent:var(--staff-accent)}.workspace-topbar-leading{min-width:0;display:flex;flex:1 1 auto;align-items:center}.workspace-topbar>.workspace-sidebar-brand.is-mobile{display:none}.workspace-topbar-actions{min-width:0;display:flex;flex:0 0 auto;align-items:center;gap:var(--app-space-3);margin-left:auto}.workspace-topbar-icon{width:var(--app-space-5);height:var(--app-space-5);flex:0 0 auto}.workspace-notification-button{width:var(--app-space-11);height:var(--app-space-11);position:relative;display:grid;flex:0 0 var(--app-space-11);place-items:center;border:1px solid var(--workspace-line);border-radius:50%;color:var(--workspace-muted);background:var(--white)}.workspace-notification-button span{box-sizing:border-box;min-width:var(--app-space-5);min-height:var(--app-space-5);position:absolute;top:calc(var(--app-space-1) * -1);right:calc(var(--app-space-1) * -1);display:grid;place-items:center;padding:0 var(--app-space-1);border:2px solid var(--white);border-radius:var(--app-radius-pill);color:var(--white);background:var(--workspace-badge);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing);font-weight:var(--fw-bold)}.workspace-notification-menu{position:relative}.workspace-notification-menu>summary{cursor:pointer;list-style:none}.workspace-notification-menu>summary::-webkit-details-marker{display:none}.workspace-notification-menu[open]>.workspace-notification-button{border-color:var(--green);color:var(--green);background:var(--mint);box-shadow:var(--app-focus-ring)}.workspace-notification-popover{width:min(27.5rem,calc(100vw - (var(--app-space-4) * 2)));position:absolute;z-index:var(--z-dropdown);top:calc(100% + var(--app-space-3));right:0;overflow:hidden;border:1px solid var(--workspace-line);border-radius:var(--app-space-5);background:var(--white);box-shadow:var(--app-shadow-raised)}.workspace-notification-popover>header{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-4);padding:var(--app-space-5);border-bottom:1px solid var(--workspace-line)}.workspace-notification-popover header p{margin:0 0 var(--app-space-1);color:var(--green);font-size:var(--app-caption);line-height:var(--app-caption-line-height);font-weight:var(--fw-bold);letter-spacing:var(--app-kicker-letter-spacing)}.workspace-notification-popover header h2{margin:0;font-size:var(--app-card-title);line-height:var(--app-card-title-line-height)}.workspace-notification-popover header b{padding:var(--app-space-1) var(--app-space-3);border-radius:var(--app-radius-pill);color:var(--green);background:var(--mint);font-size:var(--app-caption)}.workspace-notification-tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--app-space-1);margin:var(--app-space-4) var(--app-space-5);padding:var(--app-space-1);border-radius:var(--app-space-3);background:#f0f4f1}.workspace-notification-tabs button{min-height:var(--app-control-height);border:0;border-radius:var(--app-space-2);color:var(--muted);background:transparent;font-weight:var(--fw-semibold);cursor:pointer}.workspace-notification-tabs button.is-active{color:var(--white);background:var(--green)}.workspace-notification-items{max-height:22rem;overflow-y:auto;padding:0 var(--app-space-5)}.workspace-notification-items article{display:flex;align-items:start;gap:var(--app-space-2);border-top:1px solid var(--workspace-line)}.workspace-notification-open{min-width:0;display:grid;flex:1;grid-template-columns:var(--app-space-10) minmax(0,1fr);align-items:start;gap:var(--app-space-3);padding:var(--app-space-4) 0;border:0;color:inherit;background:transparent;cursor:pointer;text-align:left}.workspace-notification-open:hover strong{color:var(--green)}.workspace-notification-open[aria-disabled=true]{cursor:wait}.workspace-notification-open>span{width:var(--app-space-9);height:var(--app-space-9);display:grid;place-items:center;border-radius:var(--app-space-3);color:var(--green);background:var(--mint)}.workspace-notification-items article .app-icon{width:var(--app-space-5)}.workspace-notification-items article strong{display:block;font-size:var(--app-helper);line-height:var(--app-helper-line-height)}.workspace-notification-items article p{display:-webkit-box;overflow:hidden;margin:var(--app-space-1) 0 0;color:var(--muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height);-webkit-box-orient:vertical;-webkit-line-clamp:2}.workspace-notification-meta{display:flex!important;flex-wrap:wrap;gap:var(--app-space-1) var(--app-space-3);margin-top:var(--app-space-2)!important;-webkit-line-clamp:unset!important}.workspace-notification-meta span,.workspace-notification-meta time{min-width:0;display:inline-flex;align-items:center;gap:var(--app-space-1);color:var(--muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.workspace-notification-meta span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-notification-meta .app-icon{width:var(--app-space-4)!important;height:var(--app-space-4);flex:0 0 auto}.workspace-notification-items article>button:last-child{width:var(--app-control-height);height:var(--app-control-height);display:grid;flex:0 0 var(--app-control-height);place-items:center;margin-top:var(--app-space-4);border:0;border-radius:50%;color:var(--green);background:transparent;cursor:pointer}.workspace-notification-items article>button:last-child:hover{background:var(--mint)}.workspace-notification-empty{display:grid;justify-items:center;padding:var(--app-space-8) var(--app-space-4);text-align:center}.workspace-notification-empty>.app-icon{width:var(--app-space-8);height:var(--app-space-8);margin-bottom:var(--app-space-3);color:var(--green)}.workspace-notification-empty p{max-width:31ch;margin:var(--app-space-2) 0 0;color:var(--muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.workspace-notification-detail{min-height:var(--app-space-12);display:flex;align-items:center;justify-content:center;gap:var(--app-space-2);margin-top:var(--app-space-3);border-top:1px solid var(--workspace-line);color:var(--green);font-size:var(--app-helper);font-weight:var(--fw-bold)}.workspace-notification-detail .app-icon{width:var(--app-space-4)}.workspace-account-menu{width:var(--app-account-menu-width);min-width:var(--app-account-menu-width);position:relative;flex:0 0 var(--app-account-menu-width)}.workspace-account-menu summary{width:100%;min-height:var(--app-space-12);display:flex;align-items:center;gap:var(--app-space-3);padding:var(--app-space-1) var(--app-space-2) var(--app-space-1) var(--app-space-1);border-radius:var(--app-space-3);cursor:pointer;list-style:none}.workspace-account-menu summary::-webkit-details-marker{display:none}.workspace-account-menu summary>span,.workspace-account-popover header>span{width:var(--app-space-10);height:var(--app-space-10);display:grid;flex:0 0 var(--app-space-10);place-items:center;border-radius:50%;color:var(--white);background:var(--workspace-accent);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);font-weight:var(--fw-bold)}.workspace-account-menu summary>div,.workspace-account-popover header>div{min-width:0;display:grid;gap:2px}.workspace-account-menu summary strong{max-width:9.625rem;overflow:hidden;color:var(--workspace-ink);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);text-overflow:ellipsis;white-space:nowrap}.workspace-account-menu summary small,.workspace-account-popover small{max-width:9.625rem;overflow:hidden;color:var(--workspace-muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing);text-overflow:ellipsis;white-space:nowrap}.workspace-account-popover{width:min(18.75rem,calc(100vw - (var(--app-space-4) * 2)));position:absolute;z-index:var(--z-dropdown);top:calc(100% + var(--app-space-3));right:0;display:grid;gap:var(--app-space-1);padding:var(--app-space-3);border:1px solid var(--workspace-line);border-radius:var(--app-radius);background:var(--white);box-shadow:var(--app-shadow-raised)}.workspace-account-popover header{display:flex;align-items:center;gap:var(--app-space-3);margin-bottom:var(--app-space-2);padding:var(--app-space-2) var(--app-space-2) var(--app-space-4);border-bottom:1px solid var(--workspace-line)}.workspace-account-popover header strong{color:var(--workspace-ink);font-size:var(--app-label);line-height:var(--app-label-line-height);letter-spacing:var(--app-label-letter-spacing)}.workspace-account-popover header p{max-width:13.75rem;margin:var(--app-space-1) 0 0;overflow:hidden;color:var(--workspace-muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing);text-overflow:ellipsis;white-space:nowrap}.workspace-account-popover a,.workspace-account-popover button{min-height:var(--app-space-11);display:flex;align-items:center;gap:var(--app-space-3);padding:0 var(--app-space-3);border:0;border-radius:var(--app-space-3);color:var(--workspace-ink);background:transparent;cursor:pointer;font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);text-align:left}.workspace-account-popover a:hover,.workspace-account-popover button:hover{background:#f0f5f2}.workspace-account-popover button{color:#b64f3b}.workspace-account-popover header img,.workspace-account-trigger img{width:100%;height:100%;border-radius:50%;object-fit:cover}.workspace-account-switcher{display:grid;gap:var(--app-space-1);padding:var(--app-space-2) 0;border-top:1px solid var(--workspace-line);border-bottom:1px solid var(--workspace-line)}.workspace-account-popover .workspace-account-switcher button{color:var(--workspace-ink)}.workspace-account-popover .workspace-account-switcher button[aria-current=page]{color:var(--green);background:var(--mint);cursor:default;opacity:1}.workspace-account-error{margin:var(--app-space-1) var(--app-space-3);color:var(--app-color-danger);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.learner-course-switcher{min-width:13.75rem;width:min(22.5rem,42vw);max-width:22.5rem;display:flex;flex:0 1 22.5rem;align-items:center;gap:var(--app-space-3);padding:0 var(--app-space-3);border:1px solid var(--learner-line);border-radius:var(--app-space-3);background:var(--app-color-surface-subtle)}.learner-course-switcher>span{display:grid;place-items:center;color:var(--green)}.learner-course-switcher .learner-icon{width:var(--app-space-5)}.learner-course-switcher select{min-width:0;width:100%;height:var(--app-control-height);overflow:hidden;border:0;outline:0;color:var(--learner-ink);background:transparent;font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);font-weight:var(--fw-regular);text-overflow:ellipsis}.learner-course-switcher>span:last-child{min-width:0}.learner-course-switcher>span:last-child button{min-height:var(--app-space-11);padding-inline:0;border:0;background:transparent;box-shadow:none;font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);font-weight:var(--fw-regular)}.learner-app-content{min-width:0}.learner-app-content .learner-page{min-height:calc(100svh - var(--app-topbar-height));padding:var(--app-space-page) var(--app-space-page) var(--app-space-20);background:transparent}.learner-app-content .learner-page>.shell{width:100%;max-width:76.25rem}.learner-mobile-nav{display:none}.learner-dashboard-shell{width:100%;max-width:77.5rem;display:grid;gap:var(--app-space-9);margin-inline:auto}.learner-dashboard-heading{min-height:var(--app-space-18);display:flex;align-items:end;justify-content:space-between;gap:var(--app-space-8)}.learner-dashboard-heading h1{margin:0;font-size:var(--app-title);line-height:var(--app-title-line-height);letter-spacing:var(--app-title-letter-spacing)}.learner-dashboard-heading h1 strong{color:var(--learner-ink)}.learner-dashboard-shell>section:not(:first-of-type){padding-top:var(--app-space-9);border-top:1px solid var(--learner-line)}.learner-quiet-link{flex:0 0 auto;display:flex;align-items:center;gap:var(--app-space-3);padding-bottom:var(--app-space-1);color:var(--green);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);font-weight:var(--fw-semibold)}.learner-card-kicker{margin:0;color:var(--green);font-size:var(--app-caption);line-height:var(--app-caption-line-height);font-weight:var(--fw-bold);letter-spacing:var(--app-caption-letter-spacing)}.learner-focus-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(16.875rem,.7fr);gap:var(--app-space-5);scroll-margin-top:calc(var(--app-topbar-height) + var(--app-space-8))}.learner-focus-card{min-height:21.875rem;position:relative;display:grid;overflow:hidden;padding:var(--app-space-card-wide);border-radius:var(--app-space-6);color:var(--white);background:linear-gradient(125deg,color-mix(in srgb,var(--level-accent) 72%,#102d25) 0,var(--level-accent) 70%,color-mix(in srgb,var(--level-accent) 75%,var(--white)));box-shadow:0 var(--app-space-6) var(--app-space-13) #123d3021}.learner-focus-card .learner-card-kicker{color:#d7ef81}.learner-focus-content{width:min(100%,37.5rem);min-height:100%;position:relative;z-index:var(--z-raised);display:grid;grid-template-rows:auto 1fr;gap:var(--app-space-8)}.learner-focus-copy{align-self:start}.learner-focus-copy h2{max-width:33.75rem;margin:var(--app-space-5) 0 var(--app-space-3);font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing);text-wrap:balance}.learner-focus-copy>p:not(.learner-card-kicker){max-width:32.5rem;margin:0;color:#e5f0eb;font-size:var(--app-label);letter-spacing:var(--app-label-letter-spacing);line-height:var(--app-label-line-height);text-wrap:pretty}.learner-focus-footer{align-self:end;display:grid;justify-items:start;gap:var(--app-space-4)}.learner-focus-meta{display:flex;flex-wrap:wrap;gap:var(--app-space-2) var(--app-space-5);margin:0;color:#d9e9e3;font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.learner-focus-action{min-height:var(--app-space-11);display:inline-flex;align-items:center;justify-content:center;gap:var(--app-space-7);padding:0 var(--app-space-5);border-radius:var(--app-space-3);color:var(--green-dark);background:var(--white);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);font-weight:var(--fw-bold);box-shadow:0 var(--app-space-3) var(--app-space-6) #092e2524}.learner-focus-action .app-icon{width:var(--app-space-4);height:var(--app-space-4)}.learner-focus-decoration{width:18.75rem;height:18.75rem;position:absolute;top:50%;right:calc(var(--app-space-14) * -1);display:grid;place-items:center;border:1px solid #ffffff28;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffffff38,#ffffff08 55%,transparent 56%);transform:translateY(-50%)}.learner-focus-decoration:after,.learner-focus-decoration:before{position:absolute;border:1px solid #ffffff20;border-radius:50%;content:""}.learner-focus-decoration:before{width:13.75rem;height:13.75rem}.learner-focus-decoration:after{width:8.75rem;height:8.75rem}.learner-focus-decoration span{color:#ffffff22;font-size:var(--app-display-title);line-height:var(--app-display-title-line-height);letter-spacing:var(--app-display-title-letter-spacing);font-weight:var(--fw-bold)}.learner-loop-card{min-height:21.875rem;padding:var(--app-space-7);border:1px solid var(--learner-line);border-radius:var(--app-space-6);background:var(--white);box-shadow:0 var(--app-space-3) var(--app-space-8) #17352e0a}.learner-loop-card header{display:flex;justify-content:space-between;gap:var(--app-space-4)}.learner-loop-card h2{margin:var(--app-space-2) 0 0;font-size:var(--app-card-title);line-height:var(--app-card-title-line-height);letter-spacing:var(--app-card-title-letter-spacing)}.learner-loop-card header>span{color:var(--green);font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing);font-weight:var(--fw-bold)}.learner-overall-progress{height:var(--app-space-2);overflow:hidden;margin:var(--app-space-6) 0 var(--app-space-6);border-radius:var(--app-radius-pill);background:#e9efeb}.learner-overall-progress span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--green),#70aa75);transition:width .3s ease}.learner-loop-card dl{display:grid;gap:0;margin:0}.learner-loop-card dl>div{display:flex;justify-content:space-between;gap:var(--app-space-4);padding:var(--app-space-3) 0;border-top:1px solid var(--app-color-neutral-soft)}.learner-loop-card dt{display:flex;align-items:center;gap:var(--app-space-2);color:var(--learner-muted);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing)}.learner-loop-card dt i{width:var(--app-space-2);height:var(--app-space-2);border-radius:50%;background:var(--green)}.learner-loop-card dt i.is-coral{background:var(--learner-coral)}.learner-loop-card dt i.is-blue{background:#55769f}.learner-loop-card dd{margin:0;font-size:var(--app-label);line-height:var(--app-label-line-height);letter-spacing:var(--app-label-letter-spacing);font-weight:var(--fw-bold)}.learner-loop-card>p{margin:var(--app-space-4) 0 0;color:var(--learner-muted);font-size:var(--app-caption);letter-spacing:var(--app-caption-letter-spacing);line-height:var(--app-caption-line-height)}.learner-dashboard-section-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--app-space-8);margin-bottom:var(--app-space-4)}.learner-dashboard-section-heading h2{margin:var(--app-space-2) 0 0;font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing)}.learner-dashboard-section-heading>p{max-width:24.375rem;margin:0;color:var(--learner-muted);font-size:var(--app-helper);letter-spacing:var(--app-helper-letter-spacing);line-height:var(--app-helper-line-height)}.learner-classes-section,.learner-feedback-section{scroll-margin-top:calc(var(--app-topbar-height) + var(--app-space-8))}.learner-feedback-section{padding-bottom:var(--app-space-8)}.learner-classes-section{padding-top:var(--app-space-8)}.learner-feedback-list{display:grid;gap:var(--app-space-2)}.learner-feedback-list>a{min-height:var(--app-space-20);display:grid;grid-template-columns:var(--app-space-11) minmax(0,1fr) auto;align-items:center;gap:var(--app-space-4);padding:var(--app-space-3) var(--app-space-4);border:1px solid var(--learner-line);border-radius:var(--app-space-4);background:var(--white);transition:border-color .18s,transform .18s}.learner-feedback-list>a:hover{border-color:#9fb9aa;transform:translateY(-1px)}.learner-feedback-list>a>span{width:var(--app-space-11);height:var(--app-space-11);display:grid;place-items:center;border-radius:var(--app-space-3);color:var(--level-accent);background:var(--level-soft);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing);font-weight:var(--fw-bold)}.learner-feedback-list small,.learner-feedback-list strong{display:block}.learner-feedback-list strong{margin-bottom:var(--app-space-1);font-size:var(--app-label);line-height:var(--app-label-line-height);letter-spacing:var(--app-label-letter-spacing)}.learner-feedback-list small{color:var(--learner-muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.learner-feedback-list b{color:var(--green);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing)}.learner-feedback-empty{min-height:var(--app-space-21);display:flex;align-items:center;gap:var(--app-space-4);padding:var(--app-space-4) var(--app-space-5);border:1px dashed #b9ccc0;border-radius:var(--app-space-4);background:var(--app-color-surface-subtle)}.learner-feedback-empty>span{width:var(--app-space-10);height:var(--app-space-10);display:grid;flex:0 0 auto;place-items:center;border-radius:50%;color:var(--green);background:#e3f2e8;font-weight:var(--fw-bold)}.learner-feedback-empty strong{font-size:var(--app-label);line-height:var(--app-label-line-height);letter-spacing:var(--app-label-letter-spacing)}.learner-feedback-empty p{margin:var(--app-space-1) 0 0;color:var(--learner-muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.learner-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--app-space-4)}.learner-course-grid:has(>:only-child){grid-template-columns:minmax(18rem,31rem)}.learner-course-card{min-height:16.875rem;display:flex;flex-direction:column;justify-content:space-between;padding:var(--app-space-5);overflow:hidden;border:1px solid color-mix(in srgb,var(--level-accent) 24%,#dce5df);border-radius:var(--app-space-5);background:linear-gradient(155deg,var(--level-soft),var(--white) 52%);transition:transform .18s,box-shadow .18s,border-color .18s}.learner-course-card:hover{transform:translateY(-3px);border-color:var(--level-accent);box-shadow:0 var(--app-space-4) var(--app-space-8) #17352e12}.learner-course-card footer>div:first-child,.learner-course-card header{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-4)}.learner-course-card header>span{width:var(--app-space-11);height:var(--app-space-11);display:grid;place-items:center;border-radius:var(--app-space-3);color:var(--white);background:var(--level-accent);font-weight:var(--fw-bold)}.learner-course-card header b,.learner-course-card header>span{font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.learner-course-card header b{padding:var(--app-space-2) var(--app-space-2);border-radius:var(--app-radius-pill);color:var(--app-color-warning);background:var(--app-color-warning-soft)}.learner-course-card header b.is-complete{color:var(--green);background:#e4f2e8}.learner-course-card h3{margin:var(--app-space-6) 0 0;color:var(--level-accent);font-size:var(--app-card-title);line-height:var(--app-card-title-line-height);letter-spacing:var(--app-card-title-letter-spacing)}.learner-course-card p{display:-webkit-box;overflow:hidden;margin:var(--app-space-2) 0 0;color:var(--learner-muted);font-size:var(--app-caption);letter-spacing:var(--app-caption-letter-spacing);line-height:var(--app-caption-line-height);text-wrap:pretty;-webkit-box-orient:vertical;-webkit-line-clamp:2}.learner-course-card footer{margin-top:var(--app-space-6)}.learner-course-card footer span{color:var(--learner-muted)}.learner-course-card footer span,.learner-course-card footer strong{font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.learner-course-card footer strong{color:var(--level-accent)}.learner-course-metadata{display:grid;gap:var(--app-space-2);margin:var(--app-space-4) 0 0}.learner-course-metadata>div{display:grid;grid-template-columns:minmax(7rem,auto) minmax(0,1fr);gap:var(--app-space-2);font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.learner-course-metadata dt{display:inline-flex;align-items:center;gap:var(--app-space-1);color:var(--learner-muted)}.learner-course-metadata dt .app-icon{width:var(--app-space-4);height:var(--app-space-4);color:var(--level-accent)}.learner-course-metadata dd{min-width:0;margin:0;overflow-wrap:anywhere;color:var(--ink)}.learner-course-progress{height:var(--app-space-2);overflow:hidden;margin-top:var(--app-space-2);border-radius:var(--app-radius-pill);background:#e8eeea}.learner-course-progress span{height:100%;display:block;border-radius:inherit;background:var(--level-accent)}.learner-dashboard-loading{display:grid;grid-template-columns:1.65fr .7fr;gap:var(--app-space-5)}.learner-dashboard-loading div{min-height:21.875rem;animation:pulse 1.6s ease-in-out infinite;border-radius:var(--app-space-6);background:#fff9}.learner-dashboard-loading div:last-child{grid-column:1/-1;min-height:14.375rem}.learner-dashboard-error{background:var(--white)}.learner-onboarding{display:grid;gap:var(--app-space-5)}.learner-onboarding-primary{min-height:25rem;display:grid;grid-template-columns:minmax(0,.75fr) minmax(23.75rem,1fr);align-items:center;gap:var(--app-space-onboarding-gap);padding:var(--app-space-hero);overflow:hidden;border:1px solid #cfe0d5;border-radius:var(--app-radius-lg);background:radial-gradient(circle at 5% 5%,#e5f2e8,transparent 38%),var(--white);box-shadow:var(--app-shadow);scroll-margin-top:calc(var(--app-topbar-height) + var(--app-space-8))}.learner-onboarding-primary h2{margin:var(--app-space-3) 0 var(--app-space-4);font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing)}.learner-onboarding-primary>div>p:not(.learner-card-kicker){margin:0 0 var(--app-space-6);color:var(--learner-muted);font-size:var(--app-label);letter-spacing:var(--app-label-letter-spacing);line-height:var(--app-label-line-height)}.learner-onboarding-primary .learner-focus-action{color:var(--white);background:var(--green)}.learner-onboarding-primary ol{display:grid;gap:var(--app-space-3);margin:0;padding:0;list-style:none}.learner-onboarding-primary li{min-height:var(--app-space-23);display:grid;grid-template-columns:var(--app-space-10) minmax(0,1fr) auto;align-items:center;gap:var(--app-space-3);padding:var(--app-space-4);border:1px solid var(--learner-line);border-radius:var(--app-space-4);color:#74827e;background:var(--app-color-surface-subtle)}.learner-onboarding-primary li.is-current{border-color:#8fbaa2;color:var(--learner-ink);background:#eef7f1}.learner-onboarding-primary li.is-done{border-color:color-mix(in srgb,var(--green) 24%,var(--learner-line));color:var(--learner-ink);background:var(--app-color-surface-subtle)}.learner-onboarding-primary li>span{width:var(--app-space-9);height:var(--app-space-9);display:grid;place-items:center;border:1px solid #cbd7cf;border-radius:50%;font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);font-weight:var(--fw-bold)}.learner-onboarding-primary li.is-current>span{border-color:var(--green);color:var(--white);background:var(--green)}.learner-onboarding-primary li.is-done>span{border-color:var(--green);color:var(--green);background:var(--mint)}.learner-onboarding-primary li small,.learner-onboarding-primary li strong{display:block}.learner-onboarding-primary li strong{margin-bottom:var(--app-space-1);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing)}.learner-onboarding-primary li b,.learner-onboarding-primary li small{font-size:var(--app-caption);letter-spacing:var(--app-caption-letter-spacing);line-height:var(--app-caption-line-height)}.learner-onboarding-primary li b{padding:var(--app-space-1) var(--app-space-2);border-radius:var(--app-radius-pill);color:var(--green);background:var(--mint)}.learner-onboarding-help{display:flex;align-items:flex-start;gap:var(--app-space-4);padding:var(--app-space-5) var(--app-space-6);border:1px solid #e8d4a9;border-radius:var(--app-radius);background:#fff9e9;scroll-margin-top:calc(var(--app-topbar-height) + var(--app-space-8))}.learner-onboarding-help>span{width:var(--app-space-8);height:var(--app-space-8);display:grid;flex:0 0 auto;place-items:center;border-radius:50%;color:#8c630f;background:#f7e6ba;font-weight:var(--fw-bold)}.learner-onboarding-help strong{font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing)}.learner-onboarding-help p{margin:var(--app-space-1) 0 var(--app-space-2);color:#75684d}.learner-onboarding-help a,.learner-onboarding-help p{font-size:var(--app-caption);letter-spacing:var(--app-caption-letter-spacing);line-height:var(--app-caption-line-height)}.learner-onboarding-help a{color:var(--green);font-weight:var(--fw-bold)}.learner-applications{scroll-margin-top:calc(var(--app-topbar-height) + var(--app-space-6))}.learner-dashboard-section-heading>.learner-quiet-link{padding:0;border:0;background:transparent;cursor:pointer}.learner-application-list{display:grid;gap:var(--app-space-3)}.learner-application-list>article{min-width:0;display:grid;grid-template-columns:var(--app-space-12) minmax(0,1fr) auto;align-items:center;gap:var(--app-space-4);padding:var(--app-space-4);border:1px solid color-mix(in srgb,var(--level-accent) 20%,var(--learner-line));border-radius:var(--app-space-4);background:linear-gradient(115deg,var(--level-soft),var(--white) 24%)}.learner-application-level{width:var(--app-space-12);height:var(--app-space-12);display:grid;place-items:center;border-radius:var(--app-space-3);color:var(--white);background:var(--level-accent);font-size:var(--app-helper);line-height:var(--app-helper-line-height);font-weight:var(--fw-bold)}.learner-application-copy{min-width:0}.learner-application-copy>div{display:flex;align-items:center;flex-wrap:wrap;gap:var(--app-space-2) var(--app-space-3)}.learner-application-copy strong{font-size:var(--app-label);line-height:var(--app-label-line-height)}.learner-application-copy p,.learner-application-copy small{display:block;margin:var(--app-space-1) 0 0;color:var(--learner-muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.learner-application-copy small{color:var(--app-color-danger)}.learner-application-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--app-space-2)}.learner-application-actions .button{min-height:var(--app-control-height)}.learner-application-actions .text-link{color:var(--app-color-danger)}.learner-app a:focus-visible,.learner-app button:focus-visible,.learner-app select:focus-visible,.learner-app summary:focus-visible{outline:.1875rem solid color-mix(in srgb,var(--green) 40%,transparent);outline-offset:.1875rem}@media (prefers-reduced-motion:reduce){.learner-app *,.learner-app :after,.learner-app :before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:1120px){.learner-app{grid-template-columns:var(--app-sidebar-learner-compact-width) minmax(0,1fr)}.learner-app-sidebar{padding-inline:var(--app-space-3)}.learner-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learner-focus-grid{grid-template-columns:1fr}.learner-loop-card{min-height:auto}.learner-loop-card dl{grid-template-columns:repeat(3,1fr);gap:var(--app-space-3)}.learner-loop-card dl>div{padding:var(--app-space-4);border:1px solid var(--app-color-neutral-soft);border-radius:var(--app-space-3)}.learner-onboarding-primary{grid-template-columns:1fr}}@media (max-width:840px){.learner-app{display:block;padding-bottom:calc(var(--app-mobile-nav-height) + env(safe-area-inset-bottom))}.learner-app-sidebar{display:none}.workspace-topbar{height:var(--app-topbar-height);min-height:var(--app-topbar-height);padding:var(--app-space-2) var(--app-space-4)}.workspace-topbar>.workspace-sidebar-brand.is-mobile{min-width:0;min-height:var(--app-control-height);max-width:calc(100% - 7.5rem);display:flex;flex:0 1 auto;gap:var(--app-space-2);padding:0}.workspace-topbar>.workspace-sidebar-brand.is-mobile img{width:var(--app-space-8);height:var(--app-space-8);flex-basis:var(--app-space-8)}.workspace-topbar>.workspace-sidebar-brand.is-mobile strong{font-size:var(--app-helper);line-height:var(--app-helper-line-height)}.workspace-topbar>.workspace-sidebar-brand.is-mobile small{max-width:8rem;overflow:hidden;font-size:var(--app-micro);text-overflow:ellipsis}.learner-course-switcher{min-width:0;width:min(20rem,58vw)}.workspace-account-menu{width:var(--app-control-height);min-width:var(--app-control-height);flex-basis:var(--app-control-height)}.workspace-account-menu summary{min-height:var(--app-control-height);padding:0}.workspace-account-menu summary>div{display:none}.workspace-account-menu summary>span{width:var(--app-control-height);height:var(--app-control-height)}.learner-app-content .learner-page{min-height:calc(100svh - var(--app-topbar-height));padding:var(--app-space-6) var(--app-space-4) var(--app-space-12)}.learner-mobile-nav{height:calc(var(--app-mobile-nav-height) + env(safe-area-inset-bottom));position:fixed;z-index:var(--z-sidebar);right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(4,1fr);padding:var(--app-space-1) var(--app-space-2) max(var(--app-space-1),env(safe-area-inset-bottom));border-top:1px solid var(--learner-line);background:var(--white);box-shadow:0 -.625rem 1.875rem #17352e10}.learner-mobile-nav a{min-width:0;display:grid;place-items:center;align-content:center;gap:var(--app-space-1);border-radius:var(--app-space-3);color:var(--learner-muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing);font-weight:var(--fw-semibold);white-space:nowrap}.learner-mobile-nav a.is-active{color:var(--green);background:var(--app-color-neutral-soft)}.learner-mobile-nav .learner-icon{width:var(--app-space-5);height:var(--app-space-5)}}@media (max-width:640px){.learner-dashboard-shell{gap:var(--app-space-7)}.learner-dashboard-heading{min-height:0;display:block}.learner-dashboard-heading h1{font-size:var(--app-title);line-height:var(--app-title-line-height);letter-spacing:var(--app-title-letter-spacing)}.learner-dashboard-shell>section:not(:first-of-type){padding-top:var(--app-space-7)}.learner-quiet-link{margin-top:var(--app-space-3)}.learner-focus-card{min-height:24.375rem;padding:var(--app-space-7) var(--app-space-6)}.learner-focus-content{max-width:100%}.learner-focus-copy h2{max-width:88%;font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing)}.learner-focus-copy>p:not(.learner-card-kicker){font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing)}.learner-focus-decoration{width:13.75rem;height:13.75rem;top:auto;right:calc(var(--app-space-18) * -1);bottom:calc(var(--app-space-13) * -1);transform:none}.learner-focus-decoration:before{width:10rem;height:10rem}.learner-focus-decoration:after{width:6.25rem;height:6.25rem}.learner-focus-decoration span{font-size:var(--app-display-title);line-height:var(--app-display-title-line-height);letter-spacing:var(--app-display-title-letter-spacing)}.learner-loop-card{padding:var(--app-space-6)}.learner-loop-card dl{grid-template-columns:1fr;gap:0}.learner-loop-card dl>div{padding:var(--app-space-3) 0;border:0;border-top:1px solid var(--app-color-neutral-soft);border-radius:0}.learner-application-list>article{grid-template-columns:var(--app-space-10) minmax(0,1fr);align-items:start;padding:var(--app-space-4)}.learner-application-level{width:var(--app-space-10);height:var(--app-space-10)}.learner-application-actions{grid-column:1/-1;justify-content:stretch}.learner-application-actions .button{flex:1}.learner-dashboard-section-heading{display:block}.learner-dashboard-section-heading>p{margin-top:var(--app-space-2)}.learner-feedback-list>a{grid-template-columns:var(--app-space-10) minmax(0,1fr)}.learner-feedback-list>a>b{grid-column:2;font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.learner-course-grid{grid-template-columns:1fr}.learner-course-card{min-height:15.625rem}.learner-onboarding-primary{min-height:0;gap:var(--app-space-9);padding:var(--app-space-8) var(--app-space-6)}.learner-onboarding-primary h2{font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing)}.learner-onboarding-primary li{grid-template-columns:var(--app-space-9) minmax(0,1fr)}.learner-onboarding-primary li b{grid-column:2;width:fit-content}.learner-dashboard-loading{grid-template-columns:1fr}.learner-dashboard-loading div,.learner-dashboard-loading div:last-child{grid-column:auto;min-height:16.25rem}}.account-security-page{min-height:calc(100svh - var(--app-header-height));padding:var(--app-space-page) 0 var(--app-space-20)}.account-security-shell{width:min(100% - var(--app-space-8),80rem);display:grid;gap:var(--app-space-7);margin-inline:auto}.account-page-heading{max-width:45rem}.account-page-heading .page-lead{margin-bottom:0}.account-security-layout{display:grid;grid-template-columns:minmax(0,1fr) 15rem;align-items:start;gap:var(--app-space-5)}.account-settings-nav{position:sticky;top:calc(var(--app-header-height) + var(--app-space-5));display:grid;gap:var(--app-space-2);padding:var(--app-space-3);border:1px solid var(--line);border-radius:var(--app-radius);background:rgb(255 255 255/94%);box-shadow:var(--app-shadow);backdrop-filter:blur(var(--app-space-3))}.account-settings-nav a{min-height:var(--app-control-height);display:flex;align-items:center;gap:var(--app-space-3);padding:0 var(--app-space-4);border-radius:var(--app-control-radius);color:var(--muted);font-size:var(--app-helper);line-height:var(--app-helper-line-height);font-weight:var(--fw-semibold);text-decoration:none}.account-settings-nav a:focus-visible,.account-settings-nav a:hover{color:var(--green);background:var(--mint)}.account-settings-nav .app-icon{width:var(--app-space-5);height:var(--app-space-5);flex:0 0 auto}.account-security-grid{display:grid;gap:var(--app-space-5)}.security-section{padding:var(--app-space-card);border:1px solid var(--line);border-radius:var(--app-radius);background:var(--white);box-shadow:var(--app-shadow)}.security-section>header{display:flex;align-items:flex-start;gap:var(--app-space-4);margin-bottom:var(--app-space-6)}.security-section>header>span{width:var(--app-space-10);height:var(--app-space-10);display:grid;flex:0 0 auto;place-items:center;border-radius:var(--app-space-3);color:var(--green);background:var(--mint);font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing)}.security-section h2{margin:0}.security-section header p{margin:var(--app-space-1) 0 0;color:var(--muted);font-size:var(--app-label);letter-spacing:var(--app-label-letter-spacing);line-height:var(--app-label-line-height)}.security-form{width:100%;max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--app-space-4)}.security-form label{display:grid;gap:var(--app-space-2);color:var(--ink);font-size:var(--app-label);letter-spacing:var(--app-label-letter-spacing);line-height:var(--app-label-line-height);font-weight:var(--fw-medium)}.security-form label:first-child{grid-column:1/-1}.security-form input{width:100%}.security-form input:focus{border-color:var(--green);box-shadow:var(--app-focus-ring)}.security-form .button{width:fit-content}.security-inline-message{grid-column:1/-1}.security-list{gap:var(--app-space-3)}.security-session{padding:var(--app-space-4) var(--app-space-5);border-radius:var(--app-space-3);background:var(--app-color-surface-subtle)}.security-session strong{font-size:var(--app-body);line-height:var(--app-body-line-height);letter-spacing:var(--app-body-letter-spacing)}.security-session p{margin:var(--app-space-1) 0}.security-pagination{display:flex;align-items:center;justify-content:center;gap:var(--app-space-3);margin-top:var(--app-space-5)}.security-pagination .button{width:var(--app-control-height);min-width:var(--app-control-height);padding:0}.security-pagination span{min-width:10rem;color:var(--muted);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);text-align:center}.account-settings-card{padding:0;overflow:hidden}.account-settings-block{padding:var(--app-space-card);scroll-margin-top:calc(var(--app-header-height) + var(--app-space-5))}.account-settings-block+.account-settings-block{border-top:1px solid var(--line)}.account-settings-block>header{display:flex;align-items:flex-start;gap:var(--app-space-4);margin-bottom:var(--app-space-6)}.account-settings-block>header>span{width:var(--app-space-10);height:var(--app-space-10);display:grid;flex:0 0 auto;place-items:center;border-radius:var(--app-space-3);color:var(--green);background:var(--mint);font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing)}.account-settings-block>header>span .app-icon{width:var(--app-space-5);height:var(--app-space-5)}.account-settings-block>header h2{margin:0}.account-settings-block>header p{margin:var(--app-space-1) 0 0;color:var(--muted);font-size:var(--app-label);letter-spacing:var(--app-label-letter-spacing);line-height:var(--app-label-line-height)}.account-profile-summary{display:grid;gap:var(--app-space-6);background:linear-gradient(135deg,var(--mint),var(--white) 72%)}.account-profile-heading{display:flex;align-items:center;gap:var(--app-space-5)}.account-profile-heading>span{width:var(--app-space-14);height:var(--app-space-14);display:grid;flex:0 0 auto;place-items:center;overflow:hidden;border-radius:50%;color:var(--white);background:var(--green);font-weight:var(--fw-bold)}.account-profile-heading>span img{width:100%;height:100%;object-fit:cover}.account-profile-summary .eyebrow{margin-bottom:var(--app-space-1)}.account-profile-summary h2{margin:0}.account-profile-summary p:last-child{margin:var(--app-space-1) 0 0;color:var(--muted);overflow-wrap:anywhere}.account-profile-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;gap:var(--app-space-4);padding-top:var(--app-space-5);border-top:1px solid color-mix(in srgb,var(--green) 14%,var(--line))}.account-profile-form label,.account-profile-form>div{min-width:0;display:grid;gap:var(--app-space-2);color:var(--ink);font-size:var(--app-label);line-height:var(--app-label-line-height);letter-spacing:var(--app-label-letter-spacing);font-weight:var(--fw-medium)}.account-profile-form input{width:100%}.account-profile-form small{color:var(--muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing);font-weight:var(--fw-regular)}.account-profile-form .file-picker{min-width:0}.account-profile-form .file-picker>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-upload-control{min-width:0;display:flex;align-items:center;gap:var(--app-space-3)}.avatar-upload-control>span{min-width:0;overflow:hidden;color:var(--muted);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-helper-letter-spacing);font-weight:var(--fw-regular);text-overflow:ellipsis;white-space:nowrap}.account-profile-form>.button{width:fit-content}.account-activity{background:linear-gradient(145deg,var(--white),color-mix(in srgb,var(--mint) 34%,var(--white)))}.account-activity-toolbar{display:flex;align-items:end;justify-content:space-between;gap:var(--app-space-5);margin-bottom:var(--app-space-5)}.account-activity-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--app-space-5);margin-left:calc(var(--app-space-7) + var(--app-space-2))}.account-activity-summary p{min-width:0;display:flex;align-items:baseline;gap:var(--app-space-2);margin:0}.account-activity-summary p+p{padding-left:var(--app-space-5);border-left:1px solid color-mix(in srgb,var(--green) 18%,var(--line))}.account-activity-summary strong{color:var(--green);font-size:var(--app-card-title);line-height:var(--app-card-title-line-height);letter-spacing:var(--app-card-title-letter-spacing)}.account-activity-summary span{color:var(--muted)}.account-activity-summary span,.account-activity-year{font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.account-activity-year{min-width:9rem;display:grid;flex:0 0 auto;gap:var(--app-space-2);color:var(--ink);font-weight:var(--fw-medium)}.account-activity-year-select{width:100%}.account-activity-message{margin:calc(var(--app-space-2) * -1) 0 var(--app-space-3)}.account-activity-scroll{max-width:100%;overflow-x:auto;padding:var(--app-space-2) 0 var(--app-space-3);scrollbar-color:color-mix(in srgb,var(--green) 30%,var(--line)) transparent}.account-activity-scroll:focus-visible{outline:.1875rem solid color-mix(in srgb,var(--green) 26%,transparent);outline-offset:var(--app-space-1)}.account-activity-chart{width:max-content;display:grid;grid-template-columns:var(--app-space-7) auto;grid-template-rows:var(--app-space-6) auto;gap:var(--app-space-2)}.account-activity-months{min-width:0;grid-column:2;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));color:var(--muted);font-size:var(--app-micro);line-height:var(--app-micro-line-height);letter-spacing:var(--app-micro-letter-spacing)}.account-activity-months span{min-width:0;overflow:visible;text-align:center;white-space:nowrap}.account-activity-weekdays{grid-template-rows:repeat(7,var(--app-space-3));color:var(--muted);font-size:var(--app-micro);line-height:var(--app-space-3);text-align:right}.account-activity-cells,.account-activity-weekdays{grid-row:2;display:grid;gap:calc(var(--app-space-1) / 2)}.account-activity-cells{grid-column:2;grid-template-rows:repeat(7,var(--app-space-3));grid-auto-columns:var(--app-space-3);grid-auto-flow:column}.activity-cell{width:var(--app-space-3);height:var(--app-space-3);display:block;border:1px solid color-mix(in srgb,var(--line) 74%,transparent);border-radius:var(--app-space-1);background:var(--app-color-neutral-soft)}.activity-cell[tabindex="0"]{cursor:help}.activity-cell[tabindex="0"]:focus-visible{outline:.125rem solid var(--green);outline-offset:.125rem}.activity-cell.intensity-1{border-color:color-mix(in srgb,var(--green) 14%,var(--line));background:color-mix(in srgb,var(--green) 24%,var(--white))}.activity-cell.intensity-2{border-color:color-mix(in srgb,var(--green) 24%,var(--line));background:color-mix(in srgb,var(--green) 46%,var(--white))}.activity-cell.intensity-3{border-color:color-mix(in srgb,var(--green) 42%,var(--line));background:color-mix(in srgb,var(--green) 72%,var(--white))}.activity-cell.intensity-4{border-color:var(--green);background:var(--green)}.activity-cell.is-outside{border-color:transparent;background:transparent}.account-activity-legend{display:flex;align-items:center;justify-content:flex-end;gap:var(--app-space-1);margin-top:var(--app-space-3);color:var(--muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.account-activity-legend span:first-child{margin-right:var(--app-space-1)}.account-activity-legend span:last-child{margin-left:var(--app-space-1)}.account-activity-tooltip{max-width:min(18rem,calc(100vw - var(--app-space-8)));position:fixed;z-index:var(--z-dropdown);padding:var(--app-space-2) var(--app-space-3);border-radius:var(--app-control-radius);color:var(--white);background:var(--ink);box-shadow:var(--app-shadow-raised);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing);pointer-events:none;text-align:center;transform:translate(-50%,-100%)}.certificate-group+.certificate-group{margin-top:var(--app-space-7)}.certificate-group-heading{display:flex;align-items:center;gap:var(--app-space-2);margin-bottom:var(--app-space-4)}.certificate-group-heading h3{margin:0;font-size:var(--app-card-title);line-height:var(--app-card-title-line-height);letter-spacing:var(--app-card-title-letter-spacing)}.certificate-group-heading>span{min-width:var(--app-space-7);height:var(--app-space-7);display:grid;place-items:center;padding-inline:var(--app-space-2);border-radius:var(--app-radius-pill);color:var(--green);background:var(--mint);font-size:var(--app-caption);line-height:var(--app-caption-line-height);font-weight:var(--fw-semibold)}.certificate-list{display:grid;gap:var(--app-space-3)}.certificate-card{min-width:0;position:relative;display:grid;grid-template-columns:var(--app-space-13) minmax(0,1fr) auto;align-items:center;gap:var(--app-space-4);overflow:hidden;padding:var(--app-space-5);border:1px solid color-mix(in srgb,var(--level-accent) 24%,var(--line));border-left:var(--app-space-1) solid var(--level-accent);border-radius:var(--app-space-4);color:var(--ink);background:linear-gradient(115deg,var(--level-soft),var(--white) 34%);text-decoration:none}.certificate-card:after{width:var(--app-space-14);height:var(--app-space-14);position:absolute;right:calc(var(--app-space-5) * -1);bottom:calc(var(--app-space-6) * -1);border:1px solid color-mix(in srgb,var(--level-accent) 18%,transparent);border-radius:50%;content:"";pointer-events:none}.certificate-level{width:var(--app-space-13);height:var(--app-space-13);display:grid;place-items:center;align-content:center;gap:calc(var(--app-space-1) / 2);border-radius:50%;color:var(--white);background:var(--level-accent);font-size:var(--app-caption);line-height:var(--app-caption-line-height);font-weight:var(--fw-bold)}.certificate-level .app-icon{width:var(--app-space-5);height:var(--app-space-5)}.certificate-card>div{min-width:0}.certificate-card p{margin:0 0 var(--app-space-1);color:var(--level-accent);font-size:var(--app-micro);line-height:var(--app-micro-line-height);letter-spacing:var(--app-kicker-letter-spacing);font-weight:var(--fw-bold)}.certificate-card h4{margin:0 0 var(--app-space-1);font-size:var(--app-label);line-height:var(--app-label-line-height);letter-spacing:var(--app-label-letter-spacing)}.certificate-card>div>span{color:var(--muted);font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.certificate-card>b{z-index:1;color:var(--level-accent)}.certificate-card>b .app-icon{width:var(--app-space-5);height:var(--app-space-5)}.certificate-card .button{z-index:1}.certificate-empty{min-height:10rem;display:grid;place-items:center;align-content:center;gap:var(--app-space-2);padding:var(--app-space-6);border:1px dashed var(--line);border-radius:var(--app-space-4);color:var(--muted);text-align:center}.certificate-empty>.app-icon{width:var(--app-space-8);height:var(--app-space-8);color:var(--green)}.certificate-empty p{max-width:34rem;margin:0;font-size:var(--app-helper);line-height:var(--app-helper-line-height)}.certificate-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--app-space-4)}.certificate-thumbnail-link{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--app-space-4);color:var(--ink);background:var(--white);box-shadow:var(--app-shadow);transition:border-color .2s,box-shadow .2s,transform .2s}.certificate-thumbnail-link:hover{border-color:var(--green);box-shadow:var(--app-shadow-raised);transform:translateY(calc(var(--app-space-1) * -1))}.certificate-thumbnail-link:focus-visible{outline:0;box-shadow:var(--app-focus-ring),var(--app-shadow-raised)}.certificate-thumbnail-stage{container-type:inline-size;aspect-ratio:1.414/1;overflow:hidden;padding:var(--app-space-2);border-bottom:1px solid var(--line);background:var(--app-color-surface-subtle)}.certificate-thumbnail-caption{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--app-space-3);padding:var(--app-space-3)}.certificate-thumbnail-caption>span{min-width:var(--app-space-9);height:var(--app-space-9);display:grid;place-items:center;padding-inline:var(--app-space-2);border-radius:var(--app-radius-pill);color:var(--white);background:var(--level-accent);font-size:var(--app-caption);line-height:var(--app-caption-line-height);font-weight:var(--fw-bold)}.certificate-thumbnail-caption>div{min-width:0}.certificate-thumbnail-caption h4,.certificate-thumbnail-caption p{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap}.certificate-thumbnail-caption p{color:var(--muted);font-size:var(--app-micro);line-height:var(--app-micro-line-height);letter-spacing:var(--app-kicker-letter-spacing);font-weight:var(--fw-semibold)}.certificate-thumbnail-caption h4{font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.certificate-thumbnail-caption small{color:var(--muted);font-size:var(--app-micro);line-height:var(--app-micro-line-height)}.certificate-thumbnail-caption>.app-icon{width:var(--app-space-4);height:var(--app-space-4);color:var(--green)}.certificate-viewer-page{min-height:calc(100svh - var(--app-header-height));display:grid;gap:var(--app-space-5);padding:var(--app-space-8) var(--app-space-page) var(--app-space-16);background:var(--app-color-surface-subtle)}.certificate-viewer-actions{width:min(100%,70rem);display:flex;justify-content:space-between;gap:var(--app-space-3);margin-inline:auto}.certificate-viewer-canvas{width:min(100%,70rem);overflow-x:auto;margin-inline:auto;border-radius:var(--app-radius-xs);scrollbar-color:color-mix(in srgb,var(--green) 38%,var(--line)) transparent}.certificate-viewer-canvas:focus-visible{outline:0;box-shadow:var(--app-focus-ring)}.certificate-document{width:min(100%,70rem);aspect-ratio:1.414/1;position:relative;display:grid;overflow:hidden;margin-inline:auto;padding:var(--app-space-4);border:1px solid color-mix(in srgb,var(--green) 28%,var(--line));color:var(--ink);background:linear-gradient(145deg,var(--white),var(--cream));box-shadow:var(--app-shadow-raised)}.certificate-document:before{width:34%;left:0;background:var(--green)}.certificate-document:after,.certificate-document:before{height:var(--app-space-2);position:absolute;top:0;content:""}.certificate-document:after{width:18%;right:0;background:var(--level-accent)}.certificate-corner{position:absolute;z-index:0;border:1px solid color-mix(in srgb,var(--green) 16%,transparent);border-radius:50%;pointer-events:none}.certificate-corner-top{width:24%;aspect-ratio:1;top:-16%;left:-9%;box-shadow:0 0 0 var(--app-space-4) color-mix(in srgb,var(--green) 4%,transparent)}.certificate-corner-bottom{width:30%;aspect-ratio:1;right:-11%;bottom:-22%;border-color:color-mix(in srgb,var(--level-accent) 18%,transparent);box-shadow:0 0 0 var(--app-space-5) color-mix(in srgb,var(--level-accent) 4%,transparent)}.certificate-document-inner{z-index:1;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:var(--app-space-7) var(--app-space-10);border:1px solid color-mix(in srgb,var(--green) 70%,var(--line));box-shadow:inset 0 0 0 var(--app-space-1) var(--cream),inset 0 0 0 calc(var(--app-space-1) + 1px) color-mix(in srgb,var(--green) 22%,var(--line));text-align:center}.certificate-document-header{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-6)}.certificate-brand{display:flex;align-items:center;gap:var(--app-space-3)}.certificate-brand-logo{width:var(--app-space-15);height:var(--app-space-15);object-fit:contain}.certificate-brand-copy{display:grid;justify-items:start}.certificate-brand-copy strong{font-size:var(--app-card-title);line-height:var(--app-card-title-line-height)}.certificate-brand-copy small,.certificate-document-footer small,.certificate-reference small{color:var(--muted);font-size:var(--app-micro);line-height:var(--app-micro-line-height);letter-spacing:var(--app-kicker-letter-spacing);font-weight:var(--fw-semibold)}.certificate-reference{display:grid;justify-items:end;gap:var(--app-space-1);text-align:right}.certificate-reference strong{color:var(--green);font-size:var(--app-caption);line-height:var(--app-caption-line-height);letter-spacing:var(--app-caption-letter-spacing)}.certificate-document-body{min-height:0;display:grid;place-items:center;align-content:center;gap:var(--app-space-2);padding-block:var(--app-space-3)}.certificate-kicker{margin:0;color:var(--level-accent);font-size:var(--app-helper);line-height:var(--app-helper-line-height);letter-spacing:var(--app-kicker-letter-spacing);font-weight:var(--fw-bold)}.certificate-document h1{margin:0;color:var(--green);font-size:var(--app-title);line-height:var(--app-title-line-height);letter-spacing:var(--app-title-letter-spacing);text-transform:uppercase}.certificate-achievement,.certificate-presented{margin:0;color:var(--muted);font-size:var(--app-helper);line-height:var(--app-helper-line-height)}.certificate-document h2{min-width:44%;max-width:80%;margin:0;padding:0 var(--app-space-6) var(--app-space-2);border-bottom:1px solid color-mix(in srgb,var(--level-accent) 44%,var(--line));font-size:var(--app-section-title);line-height:var(--app-section-title-line-height);letter-spacing:var(--app-section-title-letter-spacing)}.certificate-document h3{max-width:46rem;margin:0;color:var(--level-accent);font-size:var(--app-card-title);line-height:var(--app-card-title-line-height);letter-spacing:var(--app-card-title-letter-spacing)}.certificate-class-meta{display:flex;align-items:center;justify-content:center;gap:var(--app-space-3)}.certificate-class-meta span{padding:var(--app-space-1) var(--app-space-3);border-radius:var(--app-radius-pill);color:var(--white);background:var(--level-accent);font-weight:var(--fw-bold)}.certificate-class-meta p,.certificate-class-meta span{font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.certificate-class-meta p{margin:0;color:var(--muted)}.certificate-document-footer{width:100%;display:grid;grid-template-columns:minmax(0,1fr) var(--app-space-20) minmax(0,1fr);align-items:end;gap:var(--app-space-6)}.certificate-issued,.certificate-record{display:grid;gap:var(--app-space-1);padding-top:var(--app-space-3);border-top:1px solid color-mix(in srgb,var(--green) 26%,var(--line));text-align:left}.certificate-record{justify-items:end;text-align:right}.certificate-issued strong,.certificate-record strong{overflow-wrap:anywhere;font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.certificate-record span{color:var(--muted);font-size:var(--app-micro);line-height:var(--app-micro-line-height)}.certificate-seal{width:var(--app-space-20);height:var(--app-space-20);display:grid;place-items:center;align-content:center;gap:calc(var(--app-space-1) / 2);border:1px solid var(--green);border-radius:50%;color:var(--white);background:var(--green);box-shadow:0 0 0 var(--app-space-1) var(--cream),0 0 0 calc(var(--app-space-1) + 1px) var(--green)}.certificate-seal .app-icon{width:var(--app-space-6);height:var(--app-space-6)}.certificate-seal b{font-size:var(--app-micro);line-height:var(--app-micro-line-height)}.certificate-seal small{color:var(--white);letter-spacing:var(--app-caption-letter-spacing)}.certificate-document-preview{width:100cqw;height:70.72cqw;margin:0;padding:1.2cqw;border:0;box-shadow:none}.certificate-document-preview:after,.certificate-document-preview:before{height:.7cqw}.certificate-document-preview .certificate-corner-top{box-shadow:0 0 0 1cqw color-mix(in srgb,var(--green) 4%,transparent)}.certificate-document-preview .certificate-corner-bottom{box-shadow:0 0 0 1.2cqw color-mix(in srgb,var(--level-accent) 4%,transparent)}.certificate-document-preview .certificate-document-inner{padding:2.2cqw 3.2cqw;box-shadow:inset 0 0 0 .4cqw var(--cream),inset 0 0 0 calc(.4cqw + 1px) color-mix(in srgb,var(--green) 22%,var(--line))}.certificate-document-preview .certificate-document-header{gap:2cqw}.certificate-document-preview .certificate-brand{gap:1cqw}.certificate-document-preview .certificate-brand-logo{width:5.2cqw;height:5.2cqw}.certificate-document-preview .certificate-brand-copy strong{font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.certificate-document-preview .certificate-brand-copy small,.certificate-document-preview .certificate-document-footer small,.certificate-document-preview .certificate-reference small{font-size:var(--app-micro)}.certificate-document-preview .certificate-reference{gap:.2cqw}.certificate-document-preview .certificate-reference strong{font-size:var(--app-micro)}.certificate-document-preview .certificate-document-body{gap:.6cqw;padding-block:.6cqw}.certificate-document-preview .certificate-achievement,.certificate-document-preview .certificate-kicker,.certificate-document-preview .certificate-presented{font-size:var(--app-micro);line-height:var(--app-micro-line-height)}.certificate-document-preview h1{font-size:var(--app-card-title);line-height:var(--app-card-title-line-height)}.certificate-document-preview h2{padding:0 2cqw .5cqw;font-size:var(--app-helper);line-height:var(--app-helper-line-height)}.certificate-document-preview h3{font-size:var(--app-caption);line-height:var(--app-caption-line-height)}.certificate-document-preview .certificate-class-meta{gap:1cqw}.certificate-document-preview .certificate-class-meta span{padding:.25cqw 1cqw;font-size:var(--app-micro)}.certificate-document-preview .certificate-class-meta p{font-size:var(--app-micro)}.certificate-document-preview .certificate-document-footer{grid-template-columns:minmax(0,1fr) 6.2cqw minmax(0,1fr);gap:2cqw}.certificate-document-preview .certificate-issued,.certificate-document-preview .certificate-record{gap:.25cqw;padding-top:.7cqw}.certificate-document-preview .certificate-issued strong,.certificate-document-preview .certificate-record span,.certificate-document-preview .certificate-record strong{font-size:var(--app-micro)}.certificate-document-preview .certificate-seal{width:6.2cqw;height:6.2cqw;gap:0;box-shadow:0 0 0 .35cqw var(--cream),0 0 0 calc(.35cqw + 1px) var(--green)}.certificate-document-preview .certificate-seal .app-icon{width:1.6cqw;height:1.6cqw}.certificate-document-preview .certificate-seal b,.certificate-document-preview .certificate-seal small{font-size:var(--app-micro)}.certificate-viewer-loading{width:min(100%,70rem);aspect-ratio:1.414/1;margin-inline:auto;border-radius:var(--app-radius);background:linear-gradient(90deg,var(--white),var(--app-color-neutral-soft),var(--white));background-size:200% 100%;animation:pulse 1.4s ease-in-out infinite}.payment-order-list{display:grid;gap:var(--app-space-3)}.payment-order{display:grid;grid-template-columns:var(--app-space-10) minmax(0,1fr) auto;align-items:center;gap:var(--app-space-4);padding:var(--app-space-4);border:1px solid var(--line);border-radius:var(--app-space-4);background:var(--app-color-surface-subtle)}.payment-order>span{width:var(--app-space-10);height:var(--app-space-10);display:grid;place-items:center;border-radius:var(--app-space-3);color:var(--green);background:var(--mint)}.payment-order>span .app-icon{width:var(--app-space-5);height:var(--app-space-5)}.payment-order p{margin:var(--app-space-1) 0;font-size:var(--app-helper);line-height:var(--app-helper-line-height)}.payment-order p,.payment-order small{color:var(--muted)}.payment-order>div:last-child{display:grid;justify-items:end;gap:var(--app-space-2)}.payment-order-status{padding:var(--app-space-1) var(--app-space-3);border-radius:var(--app-radius-pill);color:var(--app-color-warning);background:var(--app-color-warning-soft);font-size:var(--app-caption);line-height:var(--app-caption-line-height);font-weight:var(--fw-semibold)}.payment-order-status.paid{color:var(--app-color-success);background:var(--app-color-success-soft)}.payment-order-status.cancelled,.payment-order-status.rejected{color:var(--app-color-danger);background:var(--app-color-danger-soft)}.payment-order-empty{min-height:12rem;display:grid;place-items:center;align-content:center;gap:var(--app-space-2);padding:var(--app-space-6);border:1px dashed var(--line);border-radius:var(--app-space-4);color:var(--muted);text-align:center}.payment-order-empty .app-icon{width:var(--app-space-8);height:var(--app-space-8);color:var(--green)}.payment-order-empty p{margin:0}.account-security-loading{display:grid;gap:var(--app-space-4)}.account-security-loading div{height:13.125rem;border-radius:var(--app-radius);background:linear-gradient(90deg,var(--white),var(--app-color-neutral-soft),var(--white));background-size:200% 100%;animation:pulse 1.4s ease-in-out infinite}.account-security-loading div:last-child{height:23.75rem}.attempt-shell .save-indicator.conflict{color:var(--app-color-warning);background:var(--app-color-warning-soft)}.attempt-shell .save-conflict{align-items:flex-start}.attempt-shell .save-conflict .editor-actions{flex-wrap:wrap;justify-content:flex-end}@media (max-width:900px){.account-security-layout{grid-template-columns:1fr}.account-settings-nav{position:static;grid-row:1;grid-auto-flow:column;grid-auto-columns:minmax(max-content,1fr);overflow-x:auto}.account-settings-nav a{justify-content:center;white-space:nowrap}.certificate-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.attempt-shell .save-retry{align-items:stretch;flex-direction:column}.attempt-shell .save-retry .editor-actions{justify-content:stretch}.attempt-shell .save-retry .button{flex:1 1 auto}.account-security-shell{width:min(100% - var(--app-space-7),80rem)}.security-form{grid-template-columns:1fr}.security-form label:first-child{grid-column:auto}.account-settings-nav{grid-auto-columns:max-content}.payment-order{grid-template-columns:var(--app-space-10) minmax(0,1fr)}.payment-order>div:last-child{grid-column:2;justify-items:start}.account-profile-form{grid-template-columns:1fr}.account-profile-heading{align-items:flex-start}.avatar-upload-control{align-items:flex-start;flex-direction:column}.account-activity-toolbar{align-items:stretch;flex-direction:column}.account-activity-summary{align-items:flex-start;flex-direction:column;gap:var(--app-space-2)}.account-activity-summary p+p{padding-top:var(--app-space-2);padding-left:0;border-top:1px solid color-mix(in srgb,var(--green) 18%,var(--line));border-left:0}.account-activity-year{width:min(100%,12rem);margin-left:calc(var(--app-space-7) + var(--app-space-2))}.certificate-card{grid-template-columns:var(--app-space-11) minmax(0,1fr);align-items:start;padding:var(--app-space-4)}.certificate-level{width:var(--app-space-11);height:var(--app-space-11)}.certificate-card .button{width:100%;grid-column:1/-1}.certificate-card>b{align-self:center}.certificate-gallery{grid-template-columns:1fr}.certificate-viewer-page{padding:var(--app-space-5) var(--app-space-3) var(--app-space-10)}.certificate-viewer-actions{align-items:stretch;flex-direction:column}.certificate-viewer-actions .button{width:100%}.certificate-viewer-canvas .certificate-document{min-width:44rem}}@media print{.certificate-viewer-actions,.site-header,.skip-link{display:none!important}.certificate-viewer-page{min-height:0;display:block;padding:0;background:var(--white)}.certificate-viewer-canvas{width:auto;overflow:visible;border-radius:0}.certificate-document{width:297mm;height:210mm;min-width:0!important;aspect-ratio:auto;padding:8mm;border:0;box-shadow:none;print-color-adjust:exact}.certificate-document-inner{padding:10mm 16mm}@page{size:A4 landscape;margin:0}}