#app[data-v-c3641c38]{min-height:100vh}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}:root{--color-surface:#fff;--color-text:#111;--color-text-muted:#747474;--color-rule:#ddd;--color-blue:#78a2ed;--color-orange:#f05a2a;--color-yellow:#efe373;--color-green:#2faf87;--color-magenta:#de67b5;--font-heavy:"AlibabaPuHuiTi-3", -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--font-body:"AlibabaPuHuiTi-3", -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--space:clamp(1.5rem, 4vw, 3rem);--max-w:1200px;--paper:var(--color-surface);--paper-white:var(--color-surface);--white:var(--color-surface);--ink:var(--color-text);--rule:var(--color-rule);--muted:var(--color-text-muted);--accent-blue:var(--color-blue);--accent-yellow:var(--color-yellow);--accent-orange:var(--color-orange);--accent-green:var(--color-green);--accent-magenta:var(--color-magenta);--blue-light:var(--color-blue);--red-stamp:var(--color-orange);--gray-text:var(--color-text-muted)}body{background:var(--color-surface);min-width:320px;color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6}button,input,textarea,select{font:inherit}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--color-text);outline-offset:3px}.skip-link{z-index:100;color:var(--color-surface);background:var(--color-text);padding:.6rem .8rem;transition:transform .18s;position:fixed;top:.75rem;left:.75rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.container{width:min(100% - (var(--space) * 2), var(--max-w));margin-inline:auto}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.home-page{--home-paper:var(--color-surface);--home-white:var(--color-surface);--home-ink:var(--color-text);--home-muted:var(--color-text-muted);--home-rule:var(--color-rule);--home-blue:var(--color-blue);--home-orange:var(--color-orange);--home-yellow:var(--color-yellow);--home-green:var(--color-green);--home-magenta:var(--color-magenta);--home-spot-01:#2d63d6;--home-spot-02:#c4ad18;--home-spot-03:#f05a2a;--home-spot-04:#2f9b79;--home-spot-05:#c84f91;--home-spot-06:#657fdb;--home-spot-07:#b57d1f;--home-spot-08:#5550a8;--home-spot-09:#168fa0;--home-spot-10:#c9672f;--home-spot-11:#708f2d;--home-spot-12:#b44d57;--home-spot-13:#8059a4;--home-spot-14:#287766;--home-spot-15:#a77f43;--home-spot-16:#4c718f;--home-spot-17:#cb7186;--home-spot-18:#566770;--home-column-gap:clamp(3rem, 5vw, 5rem);--home-mobile-gap:2rem;--section-anchor-offset:clamp(2rem, 10vh, 8rem);background:var(--home-paper);min-height:100vh;color:var(--home-ink);font-family:var(--font-body)}.home-page :is(h1,h2,h3,p,dl,dd,dt,ol){margin:0}.home-page a{color:inherit}.home-page .home-shell{background:var(--home-paper);grid-template-columns:28px minmax(0,1fr);min-height:100vh;display:grid}.home-page .home-index{z-index:30;background:0 0;align-self:start;width:28px;min-height:100vh;padding:0;position:sticky;top:0;overflow:visible}.home-page .index-nav{flex-direction:column;gap:clamp(.75rem,1.35vh,1.1rem);width:max-content;height:66.666vh;margin:0;display:flex;position:absolute;top:clamp(1.5rem,4vh,3rem);left:0}.home-page .index-link{width:12px;min-height:0;color:var(--home-ink);background:var(--tab-color);border:0;flex-direction:row;flex:1 1 0;align-items:center;gap:.35rem;margin:0;padding:.45rem .3rem;text-decoration:none;transition:filter .18s;display:flex;position:relative;overflow:visible}.home-page .index-link:first-child{--tab-color:var(--home-yellow)}.home-page .index-link:nth-child(2){--tab-color:var(--home-blue)}.home-page .index-link:nth-child(3){--tab-color:var(--home-orange)}.home-page .index-link:nth-child(4){--tab-color:var(--home-green)}.home-page .index-link:nth-child(5){--tab-color:var(--home-magenta)}.home-page .index-link:nth-child(6){--tab-color:var(--home-yellow)}.home-page .index-link:nth-child(7){--tab-color:var(--home-blue)}.home-page .index-link:nth-child(8){--tab-color:var(--home-orange)}.home-page .index-link:nth-child(9){--tab-color:var(--home-green)}.home-page .index-link:nth-child(10){--tab-color:var(--home-magenta)}.home-page .index-link:hover,.home-page .index-link:focus-visible,.home-page .index-link.is-active{background:var(--tab-color);filter:saturate(1.05)brightness(.98);border:0;width:12px}.home-page .index-copy{width:max-content;color:var(--tab-ink,var(--home-muted));white-space:nowrap;pointer-events:none;transform-origin:50%;align-items:center;gap:.35rem;display:inline-flex;position:absolute;top:50%;left:calc(100% + .38rem);transform:translate(-50%,-50%)rotate(90deg)}.home-page .index-link.is-active .index-copy,.home-page .index-link:hover .index-copy,.home-page .index-link:focus-visible .index-copy{color:var(--home-ink)}.home-page .index-label{color:inherit;font-family:var(--font-body);letter-spacing:.03em;white-space:nowrap;font-size:.64rem;line-height:1.15;display:inline-block}.home-page .home-main{background:var(--home-paper);min-width:0}.home-page .home-section{background:var(--home-paper);scroll-margin-top:var(--section-anchor-offset);padding:clamp(5rem,10vw,10rem) clamp(3.5rem,4vw,4.5rem);position:relative}.home-page .section-grid{gap:var(--home-column-gap);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}.home-page .section-grid>*,.home-page .section-title-column,.home-page .section-copy-column{min-width:0}.home-page .section-title-column{flex-direction:column;align-items:flex-start;display:flex}.home-page .overview-grid,.home-page .section-intro-grid,.home-page .rules-header-grid,.home-page .calendar-header-grid{padding-top:clamp(2.75rem,5vw,5rem)}.home-page .section-copy-column{min-width:0}.home-page .overview-copy,.home-page .retrospective-copy,.home-page .city-copy,.home-page .calendar-copy{justify-content:space-between;gap:var(--home-column-gap);flex-direction:column;display:flex}.home-page .overview-copy{gap:1rem}.home-page .eyebrow,.home-page .panel-label,.home-page .micro-copy,.home-page .title-note,.home-page .course-facts dt,.home-page .rules-facts dt{font-family:var(--font-body)}.home-page .eyebrow,.home-page .panel-label{color:var(--home-muted);letter-spacing:.07em;text-transform:uppercase;font-size:.7rem;font-weight:500;line-height:1.35}.home-page .eyebrow{margin-bottom:1.25rem}.home-page .micro-copy,.home-page .title-note,.home-page .course-facts dt,.home-page .rules-facts dt{color:var(--home-muted);letter-spacing:.07em;font-size:.7rem;line-height:1.35}.home-page h1,.home-page h2{font-family:var(--font-heavy);margin:0;font-weight:700}.home-page h1{letter-spacing:.02em;font-size:clamp(4.2rem,9vw,9rem);line-height:1.05}.home-page h2{letter-spacing:.01em;font-size:clamp(3.4rem,7vw,7rem);line-height:1.08}.home-page .title-note{text-transform:none;letter-spacing:0;max-width:12rem;margin-top:2rem;font-size:.7rem}.home-page .lead-copy{max-width:44rem;font-family:var(--font-heavy);letter-spacing:.015em;line-break:strict;text-wrap:pretty;font-size:clamp(1.05rem,1.45vw,1.3rem);line-height:1.78}.home-page .overview-thesis{max-width:34rem;margin-top:clamp(3rem,5vw,5rem)}.home-page .overview-thesis .thesis-line{font-family:var(--font-heavy);letter-spacing:.02em;text-wrap:balance;font-size:clamp(1.45rem,2.3vw,2.2rem);font-weight:700;line-height:1.35}.home-page .overview-thesis .thesis-copy{color:var(--home-ink);font-family:var(--font-body);line-break:strict;text-wrap:pretty;margin-top:1.5rem;font-size:clamp(.95rem,1.2vw,1.08rem);line-height:1.85}.home-page .overview-thesis em{font-style:italic}.home-page .overview-team{gap:1.35rem;display:grid}.home-page .overview-course-heading{font-family:var(--font-body);letter-spacing:.02em;margin:0 0 .35rem;padding-bottom:clamp(2.5rem,4vw,4rem);font-size:clamp(1.05rem,1.55vw,1.3rem);font-weight:600;line-height:1.35}.home-page .overview-course-heading-en,.home-page .overview-course-heading-zh{display:block}.home-page .overview-course-heading-en{color:var(--home-muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.35rem;font-size:.68rem;font-weight:500;line-height:1.2}.home-page .overview-team-group{min-width:0}.home-page .overview-team-role{color:var(--home-muted);font-family:var(--font-body);letter-spacing:.06em;margin:0 0 .35rem;font-size:.72rem;font-weight:500;line-height:1.35}.home-page .overview-team-names{font-family:var(--font-body);margin:0;font-size:clamp(.95rem,1.25vw,1.12rem);font-weight:500;line-height:1.65}.home-page .overview-meta{border-top:1px solid var(--home-rule);flex-direction:column;gap:0;margin:0;display:flex}.home-page .overview-team+.overview-meta{margin-top:clamp(2rem,4vw,4rem)}.home-page .overview-meta-item{border-bottom:1px solid var(--home-rule);grid-template-columns:minmax(0,.8fr) minmax(0,1.4fr);gap:1rem;min-width:0;padding:1rem 0 1.25rem;display:grid}.home-page .overview-meta dt{color:var(--home-muted);font-family:var(--font-body);letter-spacing:.05em;font-size:.7rem;font-weight:500;line-height:1.35}.home-page .overview-meta dd{font-family:var(--font-body);flex-direction:column;gap:.3rem;margin:0;font-size:clamp(.95rem,1.35vw,1.2rem);font-weight:600;line-height:1.4;display:flex}.home-page .overview-schedule{gap:.7rem;font-size:clamp(.9rem,1.2vw,1.05rem);line-height:1.45}.home-page .overview-schedule-phase{flex-direction:column;gap:.16rem;display:flex}.home-page .overview-schedule-label{color:var(--home-muted);letter-spacing:.04em;font-size:.72rem;font-weight:500}.home-page .overview-meta-note{color:var(--home-muted);font-size:.76rem;font-weight:400;line-height:1.5}.home-page .full-span{grid-column:1/-1}.home-page .showcase-frame,.home-page .calendar-frame{margin-top:clamp(4rem,8vw,8rem)}.home-page .showcase-frame .shelf-showcase,.home-page .calendar-frame .calendar-container{background:var(--home-paper)!important;border:0!important}.home-page .calendar-frame .calendar-container{box-shadow:none!important}.home-page .calendar-frame .calendar-nav{border-bottom-color:var(--home-rule);background:var(--home-paper)}.home-page .calendar-frame .calendar-cell.empty{background:var(--home-paper)}.home-page .rules-body-grid{align-items:start;padding-top:clamp(2rem,4vw,4rem)}.home-page .method-panel{background:var(--home-paper);border:0;min-height:100%;padding:0}.home-page .method-list{gap:.4rem;padding:0;list-style:none;display:grid;margin:1.5rem 0!important}.home-page .method-list li{font-family:var(--font-heavy);letter-spacing:.02em;border:0;align-items:center;gap:.85rem;padding:.55rem 0;font-size:clamp(1.25rem,2.4vw,2rem);line-height:1.35;display:flex;position:relative}.home-page .method-list li:before{content:"";background:var(--home-blue);flex:none;width:.55rem;height:.55rem}.home-page .method-list li:nth-child(2):before{background:var(--home-yellow)}.home-page .method-list li:nth-child(3):before{background:var(--home-orange)}.home-page .method-list li:nth-child(4):before{background:var(--home-green)}.home-page .method-list li:nth-child(5):before{background:var(--home-magenta)}.home-page .method-list li:nth-child(6):before{background:var(--home-blue)}.home-page .method-list li:nth-child(7):before{background:var(--home-yellow)}.home-page .method-list li:nth-child(8):before{background:var(--home-orange)}.home-page .method-list span{width:1.75rem;font-family:var(--font-body);color:var(--home-muted);font-size:.7rem}.home-page .rules-detail{gap:3rem;display:grid}.home-page .rules-facts{border-top:1px solid var(--home-rule);grid-template-columns:1fr;gap:0;display:grid}.home-page .rules-facts>div{border-bottom:1px solid var(--home-rule);min-width:0;padding:.8rem 0 .9rem}.home-page .rules-facts dd{margin-top:.35rem;font-size:.95rem;line-height:1.55}.home-page .rules-work-mode{flex-direction:column;gap:.22rem;max-width:34rem;display:flex}.home-page .rules-work-mode strong{font-family:var(--font-heavy);font-size:1.05rem;font-weight:700}.home-page .rules-output{flex-direction:column;gap:.22rem;max-width:34rem;display:flex}.home-page .rules-output strong{font-family:var(--font-heavy);font-size:1.05rem;font-weight:700}.home-page .grading-summary{border-top:0}.home-page .grading-summary .panel-label{padding:.8rem 0;display:block}.home-page .grading-chart{grid-template-columns:minmax(0,1.2fr) minmax(9rem,.8fr);align-items:start;gap:clamp(1.5rem,3vw,3rem);padding-top:1rem;display:grid}.home-page .grading-donut{aspect-ratio:1;place-self:start end;place-items:center;width:min(100%,14rem);display:grid;position:relative}.home-page .grading-donut-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible;transform:rotate(-90deg)}.home-page .grading-donut-track,.home-page .grading-segment{fill:none;stroke-linecap:butt}.home-page .grading-donut-track{stroke:var(--home-rule);stroke-width:6px}.home-page .grading-segment{stroke-width:8px;opacity:.82;cursor:pointer;transition:opacity .18s,stroke-width .18s}.home-page .grading-segment.is-active{stroke-width:8px;opacity:1}.home-page .grading-segment.is-muted{opacity:.18}.home-page .grading-donut-hole{aspect-ratio:1;width:56%;color:var(--home-ink);background:var(--home-paper);font-family:var(--font-heavy);border-radius:50%;place-items:center;font-size:clamp(1.3rem,2.5vw,2rem);line-height:1;display:grid}.home-page .grading-donut-hole small{font-family:var(--font-body);margin-left:.08em;font-size:.5em;font-weight:500}.home-page .grading-donut-hole>span{align-items:baseline;display:flex}.home-page .grading-legend{min-width:0}.home-page .grading-legend-item{width:100%;min-height:2.6rem;color:var(--home-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:.55rem minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.55rem 0;font-size:.9rem;line-height:1.35;transition:opacity .18s,color .18s,background-color .18s;display:grid}.home-page .grading-swatch{width:.55rem;height:.55rem}.home-page .grading-legend-label{min-width:0}.home-page .grading-legend-item strong{font-family:var(--font-heavy);font-weight:700}.home-page .grading-legend-item.is-active{color:var(--home-ink);background:#0000000b}.home-page .grading-legend-item.is-muted{opacity:.35}.home-page .grading-legend-item:focus-visible{z-index:1;background:#00000014;outline:none;position:relative}.home-page .text-link{border-bottom:1px solid var(--home-ink);min-height:44px;font-family:var(--font-heavy);align-self:flex-start;align-items:center;padding-bottom:.2rem;font-size:.85rem;text-decoration:none;display:inline-flex}.home-page .rules-header-grid .section-copy-column{flex-direction:column;display:flex}.home-page .rules-header-grid .rules-cta{color:#9a9a9a;font-family:var(--font-body);letter-spacing:.02em;border-bottom:0;gap:1.1rem;margin-top:clamp(3rem,6vw,6rem);margin-bottom:0;padding:0;font-size:clamp(1.1rem,1.8vw,1.5rem);font-weight:400;transition:color .18s}.home-page .rules-cta-arrow{color:currentColor;flex:none;width:clamp(3.2rem,5.5vw,4.5rem);height:clamp(3.2rem,5.5vw,4.5rem);transition:transform .18s;display:block;overflow:visible;transform:translateY(-.02em)}.home-page .rules-cta-arrow circle,.home-page .rules-cta-arrow path{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.home-page .rules-cta-arrow circle{stroke-width:2.5px}.home-page .rules-cta-arrow path{stroke-width:3px}.home-page .rules-cta:hover .rules-cta-arrow,.home-page .rules-cta:focus-visible .rules-cta-arrow{transform:translate(.18rem,-.02em)}.home-page .text-link:hover{color:var(--home-orange);border-bottom-color:var(--home-orange)}.home-page .rules-header-grid .rules-cta:hover{color:var(--home-ink);border-bottom-color:#0000}.home-page .section-title-lockup{align-items:flex-start;gap:clamp(.7rem,1.6vw,1.25rem);display:flex}.home-page .site-nav{column-gap:var(--home-column-gap);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;row-gap:.4rem;min-height:44px;padding:0;display:grid}.home-page .site-nav a{min-height:44px;color:var(--home-muted);font-family:var(--font-body);letter-spacing:.04em;flex-direction:column;justify-content:center;align-items:flex-start;gap:.18rem;padding:.45rem 0;font-size:clamp(.8rem,1.1vw,.95rem);font-weight:500;line-height:1.1;text-decoration:none;transition:color .18s,font-weight .18s;display:inline-flex}.home-page .site-nav a:first-child{grid-area:1/1/2/2;justify-self:start}.home-page .site-nav a:nth-child(2){grid-area:1/2/2/3;justify-self:start}.home-page .site-nav a:nth-child(3){grid-area:1/2/2/3;justify-self:end}.home-page .site-nav-en,.home-page .site-nav-zh{display:block}.home-page .site-nav-en{color:var(--home-muted);letter-spacing:.1em;text-transform:uppercase;font-size:.64rem;font-weight:500;line-height:1.1}.home-page .site-nav-en-short{display:none}.home-page .site-nav-zh{letter-spacing:.04em;font-size:clamp(.8rem,1.1vw,.95rem)}.home-page .site-nav a:hover,.home-page .site-nav a:focus-visible,.home-page .site-nav a.is-current{color:var(--home-ink);font-weight:700}@media (width>=768px){.home-page .overview-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}.home-page .overview-section{padding-top:clamp(1.5rem,4vh,3rem)}}@media (width<=1023px) and (width>=768px){.home-page .home-shell{grid-template-columns:28px minmax(0,1fr)}.home-page .home-index{width:28px}.home-page .section-grid{gap:3.5rem}}@media (width<=767px){.home-page .home-shell{display:block}.home-page .home-index{display:none}.home-page .home-section{padding:clamp(4rem,14vw,6rem) 1rem;scroll-margin-top:0}.home-page .overview-section{padding-top:2.5rem}.home-page .section-grid{grid-template-columns:1fr;gap:3rem}.home-page .overview-grid,.home-page .section-intro-grid,.home-page .rules-header-grid,.home-page .calendar-header-grid,.home-page .rules-body-grid{padding-top:2.25rem}.home-page h1{font-size:clamp(3.8rem,19vw,6.5rem)}.home-page h2{font-size:clamp(3.2rem,16vw,5.5rem)}.home-page .overview-meta{width:100%}.home-page .overview-team+.overview-meta{margin-top:1.5rem}.home-page .overview-course-heading{padding-bottom:1.5rem}.home-page .overview-meta-item{grid-template-columns:1fr;gap:.45rem}.home-page .showcase-frame,.home-page .calendar-frame{margin-top:4rem}.home-page .site-nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem 0;width:100%}.home-page .site-nav a{width:100%}.home-page .site-nav a:first-child{text-align:left;grid-area:auto;justify-self:start;align-items:flex-start}.home-page .site-nav a:nth-child(2){text-align:center;grid-area:auto;justify-self:center;align-items:center}.home-page .site-nav a:nth-child(3){text-align:right;grid-area:auto;justify-self:end;align-items:flex-end}.home-page .site-nav-en-full{display:none}.home-page .site-nav-en-short{display:block}}
