.rfa{--color-ground:#0b0c0e;--color-canvas:#0b0c0e;--color-paper:#0f1115;--color-surface:#14161b;--color-surface-2:#191c22;--color-surface-3:#20242c;--color-ink:#eceef2;--color-ink-2:#c3c7d1;--color-ink-3:#8e93a1;--color-ink-4:#868c9c;--color-line:#272d3b;--color-line-strong:#333b4c;--color-brand-400:#f73;--color-brand-500:#f50;--color-accent:#f50;--color-accent-400:#f73;--color-on-accent:#14100e;--color-error:#f33;--rf-radius:14px;--rf-radius-sm:10px;--dur-instant:.15s;--dur-quick:.3s;--dur-move:.5s;--dur-reveal:.8s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-inout:cubic-bezier(.65, 0, .35, 1);--font-display:var(--font-unbounded,"Unbounded"), system-ui, sans-serif;--font-text:var(--font-manrope,"Manrope"), system-ui, sans-serif;--font-mono:var(--font-jbmono,"JetBrains Mono"), ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.rfa,.rfa *{box-sizing:border-box;margin:0;padding:0}.rfa{background-color:var(--color-ground);color:var(--color-ink);font-family:var(--font-text);font-size:1rem;line-height:1.6;overflow-x:hidden}.rfa h1,.rfa h2,.rfa h3,.rfa h4,.rfa .display{font-family:var(--font-display);letter-spacing:-.03em;font-weight:600;line-height:1.05}.rfa a{color:var(--color-ink);text-decoration:none}.rfa ul{list-style:none}.rfa button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}.rfa :focus-visible{outline:2px solid var(--color-brand-400);outline-offset:4px;border-radius:2px}.rfa[data-edition=customer] [data-staff-only]{display:none!important}.rfa .container{padding:0 4vw}.rfa .grid-main{grid-template-columns:repeat(12,1fr);gap:2vw;display:grid}.rfa .site-header{z-index:100;transition:background-color var(--dur-quick) var(--ease-out), padding var(--dur-quick) var(--ease-out);justify-content:space-between;align-items:center;padding:1.5rem 4vw;display:flex;position:fixed;top:0;left:0;right:0}.rfa .site-header.is-scrolled{background:color-mix(in srgb, var(--color-canvas) 86%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--color-line);padding-block:1rem}.rfa .logo-link{align-items:center;min-height:44px;display:inline-flex}.rfa .logo-link img{width:auto;height:34px;display:block}.rfa .nav-desktop{align-items:center;gap:2rem;display:flex}.rfa .nav-link{align-items:center;min-height:44px;font-size:.875rem;font-weight:500;display:inline-flex;position:relative}.rfa .nav-link:after{content:"";background:var(--color-accent-400);width:0%;height:1px;transition:width var(--dur-quick) var(--ease-out);position:absolute;bottom:8px;left:0}.rfa .nav-link:hover:after,.rfa .nav-link:focus-visible:after{width:100%}.rfa .btn{background:var(--color-brand-500);color:var(--color-on-accent);border-radius:var(--rf-radius-sm);min-height:44px;transition:transform var(--dur-instant) var(--ease-out), filter var(--dur-instant);white-space:normal;text-align:center;justify-content:center;align-items:center;gap:.5rem;padding:0 1.5rem;font-weight:700;display:inline-flex}.rfa .btn:hover,.rfa .btn:focus-visible{filter:brightness(1.1);outline:2px solid var(--color-brand-400);outline-offset:2px;transform:scale(.97)}.rfa .btn-outline{color:var(--color-ink);border:1px solid var(--color-line-strong);background:0 0}.rfa .btn-outline:hover,.rfa .btn-outline:focus-visible{border-color:var(--color-brand-400);color:var(--color-brand-400)}.rfa .staff-toggle-wrapper{align-items:center;gap:.5rem;min-height:44px;display:flex}.rfa .staff-toggle{background:var(--color-surface-3);border:1px solid var(--color-line-strong);border-radius:12px;width:44px;height:24px;position:relative}.rfa .staff-toggle:after{content:"";background:var(--color-ink-3);width:18px;height:18px;transition:transform var(--dur-quick) var(--ease-out);border-radius:50%;position:absolute;top:2px;left:2px}.rfa[data-edition=staff] .staff-toggle{background:var(--color-brand-500);border-color:var(--color-brand-500)}.rfa[data-edition=staff] .staff-toggle:after{background:var(--color-on-accent);transform:translate(20px)}.rfa .staff-label-text{color:var(--color-ink-3);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.rfa .mobile-menu-btn{justify-content:center;align-items:center;min-width:44px;min-height:44px;display:none}.rfa dialog{background:0 0;border:none;max-width:100vw;max-height:100vh;margin:0;padding:0}.rfa dialog::backdrop{background:color-mix(in srgb, var(--color-ground) 80%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.rfa .dialog-content{background:var(--color-surface);flex-direction:column;width:100vw;height:100vh;padding:1.5rem 4vw;display:flex}.rfa .drawer-content{border-left:1px solid var(--color-line);width:400px;max-width:100vw;margin-left:auto}.rfa .dialog-header{justify-content:space-between;align-items:center;margin-bottom:3rem;display:flex}.rfa .dialog-close{background:var(--color-surface-2);border-radius:var(--rf-radius-sm);border:1px solid var(--color-line);justify-content:center;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.rfa .dialog-close:hover{background:var(--color-surface-3)}.rfa .mobile-nav-list{flex-direction:column;flex-grow:1;gap:.5rem;padding-bottom:2rem;display:flex;overflow-y:auto}.rfa .nav-item.display{font-family:var(--font-display);text-align:left;justify-content:flex-start;align-items:center;min-height:44px;font-size:2rem;font-weight:600;display:inline-flex}.rfa .mobile-sub-link{min-height:44px;color:var(--color-ink-2);align-items:center;font-size:1.125rem;display:inline-flex}.rfa .mobile-sub-link:hover{color:var(--color-brand-400)}.rfa .menu-divider{background:var(--color-line);border:none;width:100%;height:1px;margin:1rem 0}.rfa .glossary-list{flex-direction:column;gap:2rem;padding-bottom:4rem;display:flex;overflow-y:auto}.rfa .glossary-term{color:var(--color-ink);align-items:center;gap:.75rem;margin-bottom:.25rem;font-size:1.25rem;font-weight:700;display:flex}.rfa .glossary-def{color:var(--color-ink-2);text-wrap:pretty;font-size:.9375rem}.rfa .staff-chip{background:color-mix(in srgb, var(--color-brand-500) 15%, transparent);color:var(--color-brand-400);font-family:var(--font-mono);border:1px solid color-mix(in srgb, var(--color-brand-500) 30%, transparent);text-transform:uppercase;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.rfa .hero{border-bottom:1px solid var(--color-line);padding:24vh 4vw 12vh;position:relative}.rfa .hero-content{grid-column:1/10}.rfa .hero h1{text-wrap:balance;opacity:.1;margin-bottom:2rem;font-size:clamp(3rem,1rem + 5vw,6.5rem)}.rfa .hero-lead{color:var(--color-ink-2);text-wrap:pretty;max-width:45ch;margin-bottom:3rem;font-size:clamp(1.125rem,1rem + 1vw,1.5rem)}.rfa .progress-dashboard{background:var(--color-surface-2);border:1px solid var(--color-line-strong);border-radius:var(--rf-radius);flex-direction:column;grid-column:10/13;justify-content:center;padding:2rem;display:flex}.rfa .progress-label{color:var(--color-ink-3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.875rem;font-weight:700}.rfa .progress-val{font-family:var(--font-display);color:var(--color-brand-400);margin-bottom:1.5rem;font-size:3rem;line-height:1}.rfa .next-lesson-box{background:var(--color-surface);border-radius:var(--rf-radius-sm);border:1px solid var(--color-line);padding:1rem}.rfa .next-lesson-box p{color:var(--color-ink-2);font-size:.875rem}.rfa .next-lesson-box strong{color:var(--color-ink);font-family:var(--font-display);margin-top:.25rem;display:block}.rfa .rules-section{background:var(--color-paper);border-bottom:1px solid var(--color-line);padding:12vh 4vw}.rfa .rules-grid{grid-template-columns:3fr 9fr}.rfa .rules-title{margin-bottom:2rem;font-size:clamp(2rem,3vw,3rem)}.rfa .rules-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:3rem;display:grid}.rfa .rule-item{border-top:2px solid var(--color-line-strong);padding-top:1.5rem;position:relative}.rfa .rule-item:before{content:"";background:var(--color-brand-500);width:40px;height:2px;position:absolute;top:-2px;left:0}.rfa .rule-item h3{margin-bottom:.5rem;font-size:1.25rem}.rfa .rule-item p{color:var(--color-ink-3);font-size:.9375rem}.rfa .lessons-section{padding:12vh 4vw}.rfa .section-header{grid-column:1/-1;margin-bottom:8vh}.rfa .lesson-article{opacity:0;grid-column:1/-1;grid-template-columns:repeat(12,1fr);gap:4vw;margin-bottom:16vh;display:grid}.rfa .lesson-meta{grid-column:1/5;align-self:start;position:sticky;top:120px}.rfa .lesson-num{font-family:var(--font-mono);color:var(--color-brand-500);margin-bottom:1rem;font-size:1.25rem;display:block}.rfa .lesson-title{text-wrap:balance;margin-bottom:1.5rem;font-size:clamp(2rem,3vw,3.5rem)}.rfa .status-row{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.rfa .status-word{border:1px solid var(--color-line-strong);border-radius:20px;padding:.35rem .75rem;font-size:.875rem;font-weight:700}.rfa .status-word.ready{background:var(--color-surface-2);color:var(--color-ink)}.rfa .status-word.tested{color:var(--color-ink-3);background:0 0}.rfa .time-word{font-family:var(--font-mono);color:var(--color-ink-4);font-size:.875rem}.rfa .lesson-action .btn{text-align:left;justify-content:space-between;width:100%}.rfa .lesson-content{flex-direction:column;grid-column:5/13;gap:4rem;display:flex}.rfa .diagram-stage{aspect-ratio:16/9;background:var(--color-surface-2);border-radius:var(--rf-radius);border:1px solid var(--color-line);justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.rfa .parts-grid{grid-template-columns:1fr 1fr;gap:3rem;display:grid}.rfa .part-block h4{font-family:var(--font-mono);color:var(--color-ink-4);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.75rem}.rfa .part-block p,.rfa .part-block li{color:var(--color-ink-2);text-wrap:pretty;margin-bottom:.5rem;font-size:1.125rem}.rfa .part-block.full{grid-column:1/-1}.rfa .part-block ol{counter-reset:steps;flex-direction:column;gap:1rem;list-style:none;display:flex}.rfa .part-block ol li{padding-left:2.5rem;position:relative}.rfa .part-block ol li:before{counter-increment:steps;content:counter(steps);background:var(--color-surface-3);width:24px;height:24px;color:var(--color-ink);font-family:var(--font-mono);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex;position:absolute;top:2px;left:0}.rfa .mistake-box{background:color-mix(in srgb, var(--color-error) 10%, transparent);border-left:2px solid var(--color-error);border-radius:0 var(--rf-radius-sm) var(--rf-radius-sm) 0;padding:1.5rem}.rfa .mistake-box h4{color:var(--color-error)}.rfa .mistake-box p{color:var(--color-ink);margin:0;font-size:1rem}.rfa .art-svg{width:100%;height:100%}.rfa .art-grid{stroke:var(--color-line-strong);stroke-width:1px}.rfa .art-accent{stroke:var(--color-brand-500);fill:color-mix(in srgb, var(--color-brand-500) 20%, transparent)}.rfa .art-ink{stroke:var(--color-ink);fill:none}.rfa .art-error{stroke:var(--color-error);fill:color-mix(in srgb, var(--color-error) 20%, transparent)}.rfa .art-glass{fill:color-mix(in srgb, var(--color-surface) 60%, transparent);stroke:var(--color-line);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.rfa .formats-section{background:var(--color-paper);border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);padding:12vh 4vw}.rfa .formats-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;display:grid}.rfa .format-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--rf-radius);transition:transform var(--dur-quick) var(--ease-out), border-color var(--dur-quick);flex-direction:column;padding:2rem;display:flex}.rfa .format-card:hover{border-color:var(--color-brand-400);transform:translateY(-4px)}.rfa .format-card h3{margin-bottom:1rem;font-size:1.5rem}.rfa .format-card p{color:var(--color-ink-3);flex-grow:1;margin-bottom:2rem;font-size:.9375rem}.rfa .format-link{font-family:var(--font-mono);color:var(--color-brand-400);align-items:center;gap:.5rem;min-height:44px;padding:.5rem 0;font-size:.875rem;font-weight:500;display:inline-flex}.rfa .format-card:hover .format-link svg{transition:transform var(--dur-quick);transform:translate(4px)}.rfa footer{background:var(--color-ground);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:2rem;padding:6vh 4vw;display:flex}.rfa .footer-brand p{color:var(--color-ink-4);margin-top:1rem;font-size:.875rem}.rfa .footer-links{gap:4vw;display:flex}.rfa .footer-links a{min-height:44px;color:var(--color-ink-3);transition:color var(--dur-instant);align-items:center;font-weight:500;display:flex}.rfa .footer-links a:hover{color:var(--color-brand-400)}.rfa .footer-col{flex-direction:column;display:flex}.rfa .skip-link{background:var(--color-brand-500);color:var(--color-on-accent);z-index:1000;min-height:44px;padding:12px;transition:top .2s;position:absolute;top:-50px;left:0}.rfa .skip-link:focus{top:0}@media (max-width:1024px){.rfa .lesson-article{grid-template-columns:1fr;gap:2rem;margin-bottom:12vh}.rfa .lesson-meta{grid-column:1/-1;position:relative;top:0}.rfa .lesson-content{grid-column:1/-1}.rfa .hero h1{font-size:clamp(2.5rem,8vw,4rem)}.rfa .hero-content{grid-column:1/-1;margin-bottom:2rem}.rfa .progress-dashboard{grid-column:1/-1}.rfa .rules-grid{grid-template-columns:1fr}}@media (max-width:768px){.rfa .nav-desktop{display:none}.rfa .mobile-menu-btn{display:inline-flex}.rfa .parts-grid{grid-template-columns:1fr;gap:2rem}.rfa .diagram-stage{border-radius:var(--rf-radius-sm)}}@media (prefers-reduced-motion:reduce){.rfa .btn,.rfa .format-card,.rfa .staff-toggle:after,.rfa .nav-link:after{transition:none;transform:none!important}.rfa .hero h1,.rfa .lesson-article{opacity:1!important;transform:none!important}}.rfa button.staff-toggle-wrapper{min-height:44px;padding:0 .25rem}.rfa .dialog-content{height:100dvh;max-height:100dvh;overflow:hidden}.rfa .mobile-nav-list{flex:auto;min-height:0}.rfa #mobile-menu .staff-toggle-wrapper{flex:none;padding-top:.75rem}.rfa .mark-done.is-done{background:var(--color-surface-2);color:var(--color-ink-3);border-color:var(--color-line)}html:has(.rfa dialog[open]){overflow:hidden}
