@font-face{font-family:Advento Baskervville;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/baskervville-medium-CJ_ZEfg8.woff2)format("woff2")}@font-face{font-family:Advento Baskervville;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/baskervville-italic-Bv57sJ8w.woff2)format("woff2")}#topo.ad-site{--paper:#f7f4ed;--ink:#202529;--muted:#505451;--line:#d9d5c9;--rust:#a43e21;--dark:#192528;--serif:"Advento Baskervville", Georgia, serif}.ad-site,.ad-product{--paper:#f8f6ef;--ink:#262922;--muted:#565a51;--line:#d9d6c9;--rust:#a54125;--dark:#222925;--green:#365944;--sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--serif:"Baskervville", Georgia, "Times New Roman", serif;--mono:"SFMono-Regular", Consolas, "Liberation Mono", monospace;font:16px/1.6 var(--sans);background:var(--paper);color:var(--ink)}.ad-wrap{width:min(1200px,100% - clamp(40px,10vw,144px));margin-inline:auto}.ad-site :where(h1,h2){font-family:var(--serif);letter-spacing:-.055em;text-wrap:balance;font-weight:500;line-height:1.04}.ad-site h1{font-size:clamp(3.1rem,4.86vw,4.45rem)}.ad-site h2{font-size:clamp(2.6rem,4.25vw,4rem)}.ad-site h3{font:650 1.14rem/1.3 var(--sans);letter-spacing:-.035em}.ad-site h1 i,.ad-site h2 i{color:var(--rust);font-weight:400}.ad-site p{color:var(--muted)}.ad-site a{color:inherit;text-underline-offset:.24em}.ad-site :where(a,button,summary):focus-visible{outline-offset:4px;outline:3px solid #bd572f}.ad-site :where(a,button,summary){transition:background-color .15s,color .15s,border-color .15s}.ad-site a:hover{color:var(--rust)}.ad-site section[id]{scroll-margin-top:24px}.ad-site svg{flex-shrink:0}.ad-sr,.ad-skip:not(:focus){clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ad-skip:focus{z-index:4;color:var(--ink);background:#fff;padding:10px 18px;position:absolute;top:12px;left:12px}.ad-header{border-bottom:1px solid var(--line)}.ad-header-inner,.ad-brand,.ad-header nav,.ad-session,.ad-menu,.ad-hero-actions,.ad-secondary,.ad-button,.ad-link{align-items:center;display:flex}.ad-header-inner{justify-content:space-between;gap:28px;min-height:77px}.ad-brand{font:700 1.46rem/1 var(--serif);letter-spacing:-.065em;flex-shrink:0;gap:10px;text-decoration:none}.ad-brand i{font-weight:500}.ad-header nav{flex:1;justify-content:flex-end;gap:clamp(16px,2.2vw,38px)}.ad-header nav a{font:550 .88rem/1.3 var(--sans);color:var(--ink);text-decoration:none}.ad-header nav a:hover{color:var(--rust);text-decoration:underline}.ad-session{border-left:1px solid var(--line);gap:22px;margin-left:clamp(0px,2vw,34px);padding-left:clamp(14px,3.2vw,48px)}.ad-site .ad-button,.ad-site .ad-secondary,.ad-link{justify-content:center;gap:13px;display:inline-flex}.ad-site .ad-button,.ad-site .ad-secondary{min-height:46px;font:600 .92rem/1.4 var(--sans);border-radius:5px;padding:10px 19px;text-decoration:none}.ad-site .ad-button{color:#fffaf2;background:var(--rust);border:1px solid var(--rust)}.ad-site .ad-button:hover{color:#fff;background:#89331b;border-color:#89331b;text-decoration:none}.ad-site .ad-button:active{background:#702d1c;transform:translateY(1px)}.ad-header .ad-button{gap:12px;min-height:40px;padding:8px 15px;font-size:.86rem}.ad-button.ad-pending{opacity:.8}.ad-site .ad-secondary{border:1px solid #bdbdaf}.ad-site .ad-secondary:hover{background:#efede3;border-color:#a6a599}.ad-menu{border:1px solid var(--line);min-height:44px;color:var(--ink);background:0 0;border-radius:4px;gap:7px;padding:9px 12px;display:none}.ad-site .ad-label{color:var(--rust);font:650 .7rem/1.5 var(--mono);letter-spacing:.11em;text-transform:uppercase;align-items:center;gap:11px;display:flex}.ad-label>span{background:currentColor;width:23px;height:2px}.ad-hero-section{border-bottom:1px solid var(--line)}.ad-hero{grid-template-columns:1.13fr 1fr;align-items:center;gap:clamp(32px,4.5vw,72px);padding-block:clamp(64px,6.2vw,90px) clamp(45px,4vw,62px);display:grid}.ad-hero-copy{min-width:0}.ad-hero h1{letter-spacing:-.065em;text-wrap:initial;margin:23px 0;font-size:clamp(3.2rem,5.05vw,4.65rem);line-height:1.02}.ad-hero h1 i,.ad-trail h2 i,.ad-final h2 i{display:block}.ad-hero-copy>p:not(.ad-label){max-width:45ch;font-size:1.08rem;line-height:1.62}.ad-hero-actions{flex-wrap:wrap;gap:12px;margin-top:28px}.ad-hero-actions :is(.ad-button,.ad-secondary){min-height:48px}.ad-support{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-block:0;padding:18px 0;list-style:none;display:grid}.ad-support li{color:var(--muted);font:.78rem/1.5 var(--mono);justify-content:center;align-items:center;gap:10px;display:flex}.ad-support li+li{border-left:1px solid var(--line)}.ad-support svg{color:var(--rust)}.ad-preview{min-width:0;margin:0}.ad-paper{isolation:isolate;background-color:#e9d9bd;background-image:linear-gradient(#65533a17 1px,#0000 1px),linear-gradient(90deg,#65533a17 1px,#0000 1px);background-size:17px 17px;border:1px solid #cfc1a8;border-radius:6px;padding:61px 44px 48px 30px;position:relative}.ad-tearoff{z-index:-1;width:87px;color:var(--rust);background:#fffcf3;border:1px solid #ceb58f;justify-items:center;padding:0 0 6px;display:grid;position:absolute;top:-18px;right:22px;transform:rotate(9deg);box-shadow:2px 3px #bdaa8c}.ad-tearoff span{text-align:center;background:var(--rust);color:#fff;width:100%;font:bold .57rem/2 var(--mono);letter-spacing:.1em;text-transform:uppercase}.ad-tearoff b{font:500 2.8rem/.98 var(--serif);letter-spacing:-.08em;margin-top:4px}.ad-editor{color:#f7f4ed;background:#202b2e;border:1px solid #172224;border-radius:6px;position:relative;overflow:hidden;box-shadow:5px 6px #7d6b4f3d}.ad-file{background:#293539;border-bottom:1px solid #4c5756;justify-content:space-between;align-items:stretch;display:flex}.ad-file>span:first-child{font:.8rem/1.4 var(--mono);color:#fff2dd;border-bottom:2px solid #f19669;align-items:center;gap:9px;padding:11px 16px;display:inline-flex}.ad-file svg{color:#eeb38d}.ad-language{color:#cbd1cd;font:.68rem var(--mono);align-self:center;padding:0 14px}.ad-source{white-space:pre;font:clamp(.84rem,1.03vw,.96rem)/1.85 var(--mono);background:0 0;border-radius:0;margin:0;padding:18px 8px 19px 0;overflow:auto}.ad-source code{font:inherit}.ad-code-line{white-space:pre;height:1.85em;display:block}.ad-code-line b,.ad-code-line i,.ad-code-line strong{font-style:normal;font-weight:400}.ad-code-line b{color:#f3a587}.ad-code-line i{color:#edcb85}.ad-code-line strong{color:#bad2b4}.ad-code-line .syntax-comment{color:#a9b7b3;font-style:italic}.ad-line-no{text-align:right;color:#9eada9;-webkit-user-select:none;user-select:none;width:2.45em;margin-right:1em;display:inline-block}.ad-output{background:#182326;border-top:1px solid #414e50;padding:12px 16px 15px}.ad-output>span{font:.65rem/1.6 var(--mono);text-transform:uppercase;letter-spacing:.09em;color:#c3ceca;align-items:center;gap:7px;display:flex}.ad-output samp{color:#d6e7c3;font:.91rem/1.5 var(--mono);margin-top:3px;display:block}.ad-origami{pointer-events:none;filter:drop-shadow(1px 6px 2px #4d342533);width:clamp(112px,13.5vw,196px);height:auto;position:absolute;bottom:0;right:-8px}.ad-crab{width:78px;height:auto;position:absolute;top:-12px;right:19px}.ad-preview figcaption{color:#55584e;font:.68rem/1.5 var(--mono);align-items:center;gap:8px;margin-top:11px;display:flex}.ad-ticks{background:repeating-linear-gradient(90deg,#928d7e 0 1px,#0000 1px 4px);width:96px;height:6px;margin-left:auto}.ad-section{padding-block:clamp(58px,6.3vw,94px)}.ad-section>.ad-label,.ad-calendar-intro>.ad-label,.ad-trail-intro>.ad-label,.ad-faq .ad-label{margin-bottom:18px}.ad-how{background:#fcfaf5}.ad-section-head{grid-template-columns:1fr .85fr;align-items:end;gap:50px;display:grid}.ad-section-head p{max-width:50ch;padding-bottom:4px}.ad-steps{grid-template-columns:repeat(4,1fr);gap:clamp(16px,3vw,48px);margin:42px 0 0;padding:0;list-style:none;display:grid}.ad-step-track{color:var(--rust);align-items:center;gap:12px;margin-bottom:16px;display:flex}.ad-step-track>span:first-child{font:500 1rem/1 var(--mono)}.ad-step-rule{background:#c9c5b6;flex:1;height:1px}.ad-steps p{margin-top:8px;font-size:.91rem;line-height:1.65}.ad-how-note{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:28px;padding-top:17px;font-size:.81rem;display:flex}.ad-trail{background:var(--dark);color:#f4f1e7}.ad-trail .ad-label,.ad-trail h2 i{color:#edac85}.ad-trail p{color:#c3c8bc}.ad-trail-layout{grid-template-columns:1fr 1fr;gap:clamp(24px,7vw,110px);display:grid}.ad-trail-intro>p:not(.ad-label){max-width:39ch;margin-top:21px}.ad-trail .ad-lab-link{color:#edc5a5;margin-top:18px}.ad-trail .ad-lab-link:hover{color:#fff}.ad-track{margin:0;padding:0;list-style:none}.ad-track li{gap:19px;padding-bottom:26px;display:flex;position:relative}.ad-track li:not(:last-child):before{content:"";border-left:1px dashed #697a79;position:absolute;top:30px;bottom:0;left:15px}.ad-track li:last-child{padding:0}.ad-node{height:31px;font:.75rem var(--mono);color:#ebe8dd;border:1px solid #667776;border-radius:50%;flex:0 0 31px;place-content:center;display:grid}.ad-track li:nth-child(n+3) .ad-node{color:#ffbf99;border-color:#bc805f}.ad-track h3{color:#f4f1e7;margin-bottom:6px;padding-top:4px}.ad-track p{font-size:.94rem}.ad-track-state{color:#ffd1ad;font:.69rem/1.6 var(--mono);border:1px solid #746e5e;border-radius:3px;margin:8px 0 0;padding:2px 8px;display:inline-block}.ad-calendar,.ad-faq{grid-template-columns:.86fr 1.18fr;align-items:center;gap:clamp(35px,7vw,110px);display:grid}.ad-calendar-intro p:not(.ad-label){margin-top:18px}.ad-calendar-intro .ad-opening{font-size:.89rem;font-weight:600}.ad-link{font-size:.92rem;font-weight:650;-webkit-text-decoration:underline #ad9f88;text-decoration:underline #ad9f88}.ad-calendar-intro .ad-link{margin-top:20px}.ad-calendar-board{background:#fdfcf7;border:1px solid #cfcabc;border-radius:7px;overflow:hidden}.ad-cal-head{border-bottom:1px solid var(--line);background:#f0eee3;justify-content:space-between;align-items:center;gap:14px;padding:14px 21px;display:flex}.ad-cal-head span:first-child{align-items:center;gap:9px;font-weight:650;display:flex}.ad-cal-head span:last-child{font:.74rem var(--mono);color:var(--muted);white-space:nowrap}.ad-days{grid-template-columns:repeat(6,1fr);gap:6px;margin:0;padding:17px;list-style:none;display:grid}.ad-days li{min-height:45px;font:1rem var(--mono);border:1px solid var(--line);color:#5c6056;border-radius:3px;justify-content:center;align-items:center;gap:6px;display:flex}.ad-days .open,.ad-days .practice,.ad-days .completed{color:#325640;background:#e6ecdf;border-color:#b9c9b5}.ad-days li a{justify-content:center;align-items:center;gap:inherit;width:100%;height:100%;min-height:inherit;text-underline-offset:3px;border-radius:2px;text-decoration:underline;display:flex}.ad-days li a:hover{color:#243d2b;background:#d2e1ce}.ad-days li a:focus-visible{outline-offset:0}.ad-days .scheduled{color:#8c4225;background:#f5ebdf;border-color:#d9bfa8}.ad-days .preparing{border-style:dashed}.ad-legend{flex-wrap:wrap;gap:5px 15px;margin:0;padding:0 17px 16px;list-style:none;display:flex}.ad-legend li{font:.71rem/1.5 var(--sans);align-items:center;gap:4px;display:flex}.ad-cal-status{padding:0 17px 16px;font-size:.86rem}.ad-cal-status button{color:var(--rust);background:0 0;border:0;padding:4px;text-decoration:underline}.ad-modes{border-block:1px solid var(--line);background:#efeee5}.ad-modes h2{max-width:21ch}.ad-mode-columns{grid-template-columns:repeat(2,1fr);gap:8%;margin-top:34px;display:grid}.ad-mode-columns article{border-top:1px solid #b9b9a9;padding-top:21px}.ad-mode-columns article>svg{color:var(--rust)}.ad-mode-columns article:nth-child(2)>svg{color:var(--green)}.ad-mode-columns h3{margin-top:9px}.ad-mode-columns p{max-width:53ch;margin:10px 0 17px}.ad-faq{align-items:start}.ad-faq details{border-block-start:1px solid var(--line)}.ad-faq details:last-child{border-block-end:1px solid var(--line)}.ad-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:15px;padding:18px 3px;font-weight:600;line-height:1.4;list-style:none;display:flex}.ad-faq summary::-webkit-details-marker{display:none}.ad-faq summary svg{color:var(--rust)}.ad-faq details[open] summary svg{transform:rotate(45deg)}.ad-faq summary:hover{color:var(--rust)}.ad-faq details p{padding:0 26px 19px 3px;font-size:.94rem}.ad-final{color:#fff7e4;background:#a54125}.ad-final-inner{justify-content:space-between;align-items:center;gap:30px;padding-block:clamp(42px,5vw,76px);display:flex}.ad-final .ad-button:focus-visible{outline-color:#fff}.ad-final h2 i{color:#ffe0c1}.ad-final p{color:#ffecdb;margin-top:15px}.ad-final .ad-button{color:#76321f;background:#f8f2e5;border-color:#f8f2e5;flex-shrink:0}.ad-final .ad-button:hover{color:#76321f;background:#fff}.ad-footer{background:#efede3;padding-top:53px}.ad-foot-grid{grid-template-columns:1.4fr 1fr 1fr;gap:8%;display:grid}.ad-foot-grid p{max-width:32ch;margin:17px 0;font-size:.9rem}.ad-foot-grid h2{font:650 .75rem/1.4 var(--mono);letter-spacing:.07em;text-transform:uppercase;margin-bottom:12px}.ad-foot-grid>div:not(:first-child) a{width:fit-content;color:var(--muted);align-items:center;gap:5px;padding-block:3px;font-size:.9rem;text-decoration:none;display:flex}.ad-foot-grid>div a:hover{color:var(--rust);text-decoration:underline}.ad-foot-base{color:var(--muted);font:.72rem/1.6 var(--mono);border-top:1px solid #cbc9ba;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px 22px;margin-top:35px;padding:17px 0;display:flex}.ad-foot-base span{margin-right:auto}.ad-foot-base a:last-child{margin-left:auto}.ad-article{max-width:760px;padding-block:clamp(55px,6vw,88px)}.ad-article h1{margin:18px 0}.ad-lead{font-size:1.17rem}.ad-prose{border-top:1px solid var(--line);margin-top:27px}.ad-prose h2{margin:35px 0 12px;font-size:clamp(1.9rem,3vw,2.6rem)}.ad-prose p+p{margin-top:10px}.ad-score-examples{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:20px 0;display:grid}.ad-score-examples div{padding:13px 5px}.ad-score-examples dt{font:.72rem/1.6 var(--mono)}.ad-score-examples dd{font:1.25rem/1.4 var(--serif);color:var(--rust);margin:2px 0 0}.ad-article-actions{flex-wrap:wrap;align-items:center;gap:20px;margin-top:31px;display:flex}@media (width<=1040px){.ad-header nav{gap:18px}.ad-session{gap:14px;margin-left:0;padding-left:17px}.ad-paper{padding:56px 16px 37px}.ad-support{column-gap:10px}}@media (width<=860px){.ad-header-inner{flex-wrap:wrap;gap:0;min-height:65px}.ad-brand{padding-block:12px}.ad-menu{display:flex}.ad-header nav{flex:0 0 100%;display:none}.ad-header nav.is-open{border-top:1px solid var(--line);justify-content:stretch;gap:0;padding:8px 0 17px;display:grid}.ad-header nav>a{padding:12px 5px}.ad-session{border:0;border-top:1px solid var(--line);justify-content:space-between;margin-top:6px;padding:13px 0 0}.ad-session>a:first-child{padding:10px 5px}.ad-hero{grid-template-columns:1fr 1fr;gap:25px}.ad-hero h1{font-size:clamp(2.35rem,5.25vw,3.1rem)}.ad-hero-copy>p:not(.ad-label){font-size:1rem}.ad-hero-actions{gap:8px}.ad-hero-actions :is(.ad-secondary,.ad-button){gap:6px;padding-inline:12px;font-size:.82rem}.ad-source{font-size:.72rem}.ad-steps{grid-template-columns:repeat(2,1fr);gap:29px}.ad-calendar,.ad-faq{grid-template-columns:.85fr 1.1fr;gap:29px}.ad-days{gap:4px;padding:12px}.ad-days li{min-height:38px}.ad-days li svg{width:10px}}@media (width<=700px){.ad-wrap{width:min(100% - 40px,530px)}.ad-hero,.ad-section-head,.ad-trail-layout,.ad-calendar,.ad-faq{grid-template-columns:1fr}.ad-header-inner{min-height:63px}.ad-header .ad-brand img{width:33px;height:33px}.ad-hero{gap:36px;padding-block:47px 39px}.ad-hero h1{margin:15px 0 18px;font-size:clamp(2.5rem,8.35vw,3.75rem)}.ad-hero-actions{margin:23px 0 4px}.ad-hero-actions :is(.ad-secondary,.ad-button){gap:9px;padding-inline:14px;font-size:.87rem}.ad-paper{padding:52px 21px 34px}.ad-tearoff{width:72px;top:-16px;right:17px}.ad-tearoff b{font-size:2.3rem}.ad-source{padding-block:14px;font-size:clamp(.72rem,2.8vw,.92rem)}.ad-origami{width:124px;right:-4px}.ad-support{column-gap:0;padding-block:14px}.ad-support li{text-align:center;flex-direction:column;gap:5px;padding-inline:6px;font-size:.67rem}.ad-section{padding-block:48px}.ad-section-head{gap:14px}.ad-steps{margin-top:25px}.ad-track{margin-top:10px}.ad-calendar,.ad-faq{gap:25px}.ad-calendar-intro h2{max-width:15ch}.ad-mode-columns{grid-template-columns:1fr;gap:24px}.ad-final-inner{flex-direction:column;align-items:flex-start;gap:22px}.ad-foot-grid{grid-template-columns:1fr 1.15fr;gap:23px 14px}.ad-foot-grid>div:first-child{grid-column:1/-1}.ad-foot-grid p{margin:6px 0 0}.ad-footer{padding-top:25px}.ad-foot-base{gap:10px 14px}.ad-foot-base span{flex-basis:100%}}@media (width<=420px){.ad-wrap{width:calc(100% - 32px)}.ad-hero h1{font-size:clamp(2.2rem,11.15vw,2.9rem)}.ad-section-head h2 br,.ad-faq h2 br{display:none}.ad-hero-actions{gap:8px}.ad-hero-actions :is(.ad-button,.ad-secondary){gap:6px;padding-inline:10px;font-size:.83rem}.ad-steps{grid-template-columns:1fr;gap:19px}.ad-steps li{grid-template-columns:43px 1fr;gap:0 12px;display:grid}.ad-step-track{grid-row:span 2;margin:0;display:block}.ad-step-track svg{display:none}.ad-steps p{margin-top:5px}.ad-how-note{align-items:flex-start}.ad-how-note svg{margin-top:3px}.ad-source{font-size:.78rem}.ad-line-no{width:2em;margin-right:.65em}.ad-days li{gap:3px;font-size:.88rem}}@media (prefers-reduced-motion:reduce){.ad-site *,.ad-site :before,.ad-site :after{scroll-behavior:auto;transition:none}}:root{--background:#f7f5ef;--surface:#fffefa;--ink:#213b33;--muted:#556760;--border:#cdd2c6;--accent:#225441;--on-accent:#fff;--status-background:#fff2e7;--unavailable:#a64a28;color:var(--ink);background:var(--background);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.55}*{box-sizing:border-box}body{min-width:300px;margin:0}h1,h2,h3,p{margin:0}a{color:var(--accent);text-underline-offset:.2em}button,a,input,textarea{touch-action:manipulation}:focus-visible{outline-offset:3px;outline:3px solid #b95930}button{font:inherit;cursor:pointer}button:disabled{opacity:.55;cursor:wait}.mast{border-bottom:1px solid var(--border);background:var(--surface)}.mast-inner{justify-content:space-between;align-items:center;gap:18px;max-width:1168px;margin:auto;padding:18px 32px;display:flex}.mast a{text-decoration:none}.brand{letter-spacing:-.03em;align-items:center;gap:.65rem;font-size:1.13rem;font-weight:750;display:flex}.brand span{background:var(--accent);color:#fff;border-radius:5px;padding:9px 6px;font:700 17px/1 monospace}nav{align-items:center;gap:clamp(12px,3vw,35px);display:flex}nav a{color:var(--muted);font-size:.92rem}nav a[aria-current],nav a:hover{color:var(--accent);text-decoration:underline}.account-link{border:1px solid var(--border);border-radius:5px;padding:5px 16px}.page{max-width:1168px;margin:auto;padding:clamp(28px,6vw,76px) 32px}.page-title{margin:0 0 32px}h1,h2,h3{line-height:1.15}h1,h2{letter-spacing:-.045em;font-family:Baskervville,Georgia,serif;font-weight:500}h1{font-size:clamp(2.4rem,5vw,4.25rem)}.page-title p{color:var(--muted);max-width:70ch;margin-top:14px}.challenge-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:minmax(220px,.85fr) 1.15fr;display:grid;overflow:hidden}.poster{background-color:#194f40;background-image:linear-gradient(32deg,#0000 48%,#ffffff08 49% 51%,#0000 52%),linear-gradient(-32deg,#0000 48%,#ffffff08 49% 51%,#0000 52%);background-size:32px 20px;place-items:center;min-height:300px;display:grid;position:relative;overflow:hidden}.parcel{aspect-ratio:1.25;background:repeating-linear-gradient(128deg,#d47249 0 8px,#d87951 8px 14px);border-radius:3px;width:46%;position:relative;transform:rotate(-9deg);box-shadow:9px 13px #072e23}.parcel:before{content:"";background:#ec996a;width:108%;height:22%;position:absolute;top:-6%;left:-4%;box-shadow:0 5px #a95133}.parcel:after{content:"";background:#eedaa0;width:19%;position:absolute;top:-6%;bottom:0;left:41%}.parcel i,.parcel b{border:8px solid #eedaa0;border-radius:60% 65% 0 70%;width:35%;height:36%;position:absolute;bottom:104%;right:49%;transform:skew(18deg)}.parcel b{left:49%;right:auto;transform:scaleX(-1)skew(18deg)}.brief{align-self:center;padding:clamp(25px,4vw,56px)}.day-tag{letter-spacing:.09em;text-transform:uppercase;color:#9b421c;font:600 .8rem/1.4 ui-monospace,monospace}.brief h2{margin:12px 0;font-size:clamp(2.2rem,4vw,3.35rem)}.brief p{color:var(--muted);max-width:48ch;margin-bottom:24px}.button,.secondary{background:var(--accent);color:#fff;border:1px solid var(--accent);border-radius:5px;align-items:center;gap:18px;padding:.64rem 1.05rem;font-size:.93rem;font-weight:600;text-decoration:none;display:inline-flex}.secondary{color:var(--ink);border-color:var(--border);background:var(--surface)}.button:hover,.secondary:hover{filter:brightness(.93)}.progress-line{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:24px;margin-top:30px;padding:20px 0;display:flex}.progress-line h2{margin-right:auto;font-size:1.6rem}.empty,.table-wrap,.statement,.workbench{border:1px solid var(--border);background:var(--surface);border-radius:10px}.empty{padding:36px}.empty p{margin:12px 0 20px}.table-wrap{padding:2px 16px;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{border-bottom:1px solid var(--border);padding:12px 10px}th{color:var(--muted);font-size:.85rem}tr:last-child td{border-bottom:0}.back{font-size:.91rem;text-decoration:none}.lab{max-width:1380px;padding-top:28px}.lab h1{margin:14px 0;font-size:clamp(2rem,4vw,3.4rem)}.lab-grid{grid-template-columns:minmax(260px,.76fr) minmax(0,1.55fr);align-items:start;gap:22px;display:grid}.statement,.controls,.results{padding:22px}.statement h2,.results h2{font-size:1.65rem}.statement h3{margin:24px 0 12px;font-size:.99rem}.statement p,.results p{margin-top:12px}.statement th,.statement td{padding:8px 1px;font-size:.85rem}code{font:.9em ui-monospace,monospace}.workbench{overflow:hidden}.filebar{color:#fff;background:#263a33;justify-content:space-between;padding:12px 18px;display:flex}.filebar strong{font:.9rem ui-monospace,monospace}.filebar small{color:#d5e0d4}.editor-canvas{height:310px}.controls label{margin-bottom:6px;font-weight:600;display:block}.controls textarea{border:1px solid var(--border);resize:vertical;background:#fafaf6;border-radius:5px;width:100%;min-height:52px;padding:10px;font:.92rem/1.5 ui-monospace,monospace}.actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.results{border-top:1px solid var(--border)}.results h2{margin-bottom:14px}pre,.case dd{white-space:pre-wrap;overflow-wrap:anywhere;max-height:22rem;overflow:auto}pre{background:#f1f2eb;border-radius:4px;padding:12px}.hint{color:var(--muted);font-size:.85rem}.notice{color:#91451e}.case{border-top:1px solid var(--border);margin-top:14px;padding-top:12px}.case dl{grid-template-columns:auto 1fr;gap:4px 14px;font-size:.9rem;display:grid}.case dd{margin:0;font-family:monospace}.feature form button{justify-self:start}@media (width<=760px){.mast-inner{flex-wrap:wrap;padding:12px 16px}.page{padding:30px 16px}.lab-grid,.challenge-card{grid-template-columns:1fr}.poster{min-height:190px}.parcel{width:125px}.page-title{margin-bottom:22px}nav{gap:12px}.account-link{padding:4px 8px}}.calendar-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:24px;display:grid}.day-card,.mode-bar,.snapshot{border:1px solid var(--border);background:var(--surface);border-radius:9px;padding:20px}.day-card{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.day-card h2{font-size:1.55rem}.day-card small,.day-card p{color:var(--muted)}.day-card a{margin-top:auto;font-weight:650}.day-card.open{border-top:4px solid var(--accent)}.day-card.preparing{background:0 0}.day-card.preparing h2{letter-spacing:normal;font-family:inherit;font-size:1.05rem}.filters,.mode-bar,.attempts,.snapshot{margin:20px 0}.filters{flex-wrap:wrap;gap:12px;display:flex}.filters label{gap:3px;display:grid}select,.actions button:not(.button),.attempts button,.table-wrap button,.snapshot button{border:1px solid var(--border);font:inherit;color:var(--ink);background:var(--surface);border-radius:5px;padding:6px 10px}.my-rank{background:#e5eee2}.attempts .table-wrap,.snapshot pre{overflow:auto}.table-wrap{max-width:100%}.attempts code{overflow-wrap:anywhere}#root:has(.application-shell){padding:0;display:block}.application-shell{width:100%}.application-shell .welcome{margin:3rem auto;padding:0 1.25rem}.feature-nav{border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;gap:1.25rem;padding:1.1rem 2rem;display:flex}.feature-nav a{color:var(--accent);text-decoration:none}.feature-nav a:hover{text-decoration:underline}.feature{width:min(100%,960px);margin:2rem auto;padding:1.5rem}.feature h1{margin-bottom:1.5rem}.feature p{margin:1rem 0;line-height:1.6}.feature form{gap:1rem;max-width:640px;margin:1.5rem 0;display:grid}.feature label{gap:.4rem;font-weight:600;display:grid}.feature small{color:var(--muted);font-weight:400}.feature input,.feature textarea,.feature select{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--ink);border-radius:.4rem;padding:.65rem}.feature input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:var(--accent)}.feature textarea{resize:vertical;min-height:8rem}.feature button{font:inherit;cursor:pointer;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);border-radius:.4rem;padding:.65rem 1rem}.feature button:disabled{opacity:.6;cursor:wait}.feature table{border-collapse:collapse;width:100%;margin:1rem 0}.feature th,.feature td{text-align:left;border-bottom:1px solid var(--border);overflow-wrap:anywhere;padding:.7rem}.feature dl{grid-template-columns:minmax(120px,1fr) 3fr;gap:.75rem;display:grid}.feature dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.feature .actions{flex-wrap:wrap;align-items:center;gap:1rem;margin:1rem 0;display:flex}.form-errors{background:var(--status-background);border:1px solid var(--unavailable);color:var(--ink);border-radius:.4rem;padding:.75rem}.form-errors p{margin:0}.feature a{color:var(--accent);text-decoration:underline}.feature :focus-visible,.feature-nav :focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media (width<=600px){.feature{margin:1rem auto;padding:1rem}.feature-nav{gap:1rem;padding:1rem}.feature table{display:block;overflow-x:auto}.feature dl{grid-template-columns:1fr}.feature dd{margin-bottom:.5rem}}
