:root{--site-dir-w:300px}.site-dir-toggle{color:#19b879;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;margin:0;padding:0;font-size:13px;font-weight:700;line-height:1.2;text-decoration:underline;display:inline-flex}.site-dir-toggle:hover{color:#148a5c}.site-dir-overlay{display:none}.site-dir-drawer__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.site-dir-drawer__close{color:#19b879;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;flex-shrink:0;margin:0;padding:4px 2px;font-size:13px;font-weight:700;line-height:1.2;text-decoration:underline}.site-dir-drawer__close:hover{color:#148a5c}.site-dir-drawer{z-index:60;width:var(--site-dir-w);max-width:100vw;height:100dvh;box-shadow:none;visibility:hidden;pointer-events:none;background:#f7f8f8;border-left:1px solid #e4ebe7;border-right:none;border-radius:18px 0 0 18px;flex-direction:column;margin:0;transition:transform .28s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;inset:0 0 0 auto;transform:translate(104%)}.site-dir-drawer.is-open{visibility:visible;pointer-events:auto;transform:translate(0)}body.site-dir-open{padding-left:0;padding-right:0}body.site-dir-open .site-header,body.site-dir-open .page-main{box-sizing:border-box;width:calc(100% - var(--site-dir-w));max-width:none;margin-left:0;margin-right:var(--site-dir-w);transition:margin-left .28s cubic-bezier(.22,1,.36,1),margin-right .28s cubic-bezier(.22,1,.36,1),width .28s cubic-bezier(.22,1,.36,1)}body.site-dir-open .site-header__inner{width:min(100% - 1.25rem,1440px);padding-inline:.25rem}body.site-dir-open .brand-en{display:none}.site-dir-drawer__top{background:#f7f8f8;flex-shrink:0;padding:16px 14px 8px}.site-dir-drawer__title{color:#1f2a26;letter-spacing:.02em;margin:0 4px 0 0;font-size:17px;font-weight:800}.site-dir-drawer__body{-webkit-overflow-scrolling:touch;flex:1;padding:6px 12px 28px;overflow-y:auto}.site-dir-group+.site-dir-group{margin-top:14px}.site-dir-group__label{letter-spacing:.06em;color:#8a9490;margin:0 0 8px 4px;font-size:11px;font-weight:800}.site-dir-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.site-dir-item{background:#fff;border:1px solid #e8efeb;border-radius:14px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s;display:grid}.site-dir-item:hover{transform:translateY(-1px);box-shadow:0 4px 14px #21302b0f}.site-dir-item.is-active{background:#effaf5;border-color:#9ed9bf;box-shadow:0 2px 10px #19b8791a}.site-dir-item__icon{width:44px;height:44px;color:inherit;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.site-dir-item__icon svg{width:20px;height:20px;display:block}.site-dir-item__text{flex-direction:column;gap:2px;min-width:0;display:flex}.site-dir-item__text strong{color:#24352f;font-size:14px;font-weight:800;line-height:1.3}.site-dir-item.is-active .site-dir-item__text strong{color:#148a5c}.site-dir-item__text span{color:#7d8784;font-size:12px;line-height:1.4}.site-dir-item--mint .site-dir-item__icon{color:#1a6b45;background:#9ee5b8}.site-dir-item--sky .site-dir-item__icon{color:#1a5a7a;background:#9ed8f5}.site-dir-item--lilac .site-dir-item__icon{color:#5a3d7a;background:#d4b4f8}.site-dir-item--coral .site-dir-item__icon{color:#8a3220;background:#ffb39e}.site-dir-item--rose .site-dir-item__icon{color:#8a3d5e;background:#f5b8d0}.site-dir-item--lemon .site-dir-item__icon{color:#6b4e00;background:#ffe566}.site-dir-item--amber .site-dir-item__icon{color:#7a4e12;background:#ffc966}.site-dir-item--peach .site-dir-item__icon{color:#8a4a20;background:#ffd4b8}.site-header__inner{gap:.75rem}.site-header__lead{align-items:center;gap:10px;min-width:0;display:flex}.site-header__dir{flex-shrink:0;align-items:center;display:flex}@media (width<=1366px){:root{--site-dir-w:236px}.site-dir-drawer{border-left:1px solid #e4ebe7;border-right:none;border-radius:18px 0 0 18px;transform:translate(104%);left:auto!important;right:0!important}.site-dir-drawer.is-open{transform:translate(0)}body.site-dir-open .site-header,body.site-dir-open .page-main{margin-left:0!important;margin-right:var(--site-dir-w)!important;width:calc(100% - var(--site-dir-w))!important}body.site-dir-has-rail .site-dir-rail{display:none!important}body.site-dir-has-rail .site-dir-drawer{display:flex!important}body.site-dir-has-rail.site-dir-open .site-header,body.site-dir-has-rail.site-dir-open .page-main{width:calc(100% - var(--site-dir-w))!important;margin-left:0!important;margin-right:var(--site-dir-w)!important}body.site-dir-has-rail .wb-main-grid,body.site-dir-open .wb-main-grid{grid-template-columns:1fr!important}body.site-dir-open .page-main .hero__kicker{font-size:.72rem}body.site-dir-open .page-main .hero__title{font-size:clamp(24px,4.2cqi,32px)}body.site-dir-open .page-main .hero__lead{font-size:.88rem}body.site-dir-open .page-main .hero__checks li{font-size:.82rem}body.site-dir-open .page-main .hero__cta .btn{padding:.5rem .85rem;font-size:.84rem}body.site-dir-open .page-main .panel__head h2{font-size:17px}body.site-dir-open .brand-mark{font-size:.88rem}body.site-dir-open .site-nav a,body.site-dir-open .site-nav__item{font-size:12px}.site-dir-drawer__top{padding:14px 12px 6px}.site-dir-drawer__title{font-size:15px}.site-dir-drawer__body{padding:4px 10px 20px}.site-dir-group+.site-dir-group{margin-top:12px}.site-dir-list{gap:6px}.site-dir-item{border-radius:12px;grid-template-columns:32px minmax(0,1fr);gap:10px;padding:8px 10px}.site-dir-item__icon{border-radius:9px;width:32px;height:32px}.site-dir-item__icon svg{width:16px;height:16px}.site-dir-item__text strong{font-size:12px}.site-dir-item__text span{display:none}.site-dir-group__label{font-size:10px}}@media (width<=1024px) and (width>=701px){:root{--site-dir-w:220px}}@media (width<=700px){:root{--site-dir-w:min(280px, 82vw)}.site-dir-toggle{font-size:12px}body.site-dir-open .site-header,body.site-dir-open .page-main,body.site-dir-has-rail.site-dir-open .site-header,body.site-dir-has-rail.site-dir-open .page-main{width:100%!important;margin-right:0!important}body.site-dir-open{overflow:hidden}.site-dir-overlay{z-index:59;opacity:0;visibility:hidden;pointer-events:none;background:#1f292447;border:none;margin:0;padding:0;transition:opacity .28s,visibility .28s;display:block;position:fixed;inset:0}.site-dir-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}.site-dir-drawer{z-index:61;box-shadow:-8px 0 28px #21302b1a}}.site-dir-rail__panel{background:#f7f8f8;border:1px solid #e4ebe7;border-radius:18px;flex-direction:column;max-height:calc(100vh - 104px);display:flex;overflow:hidden;box-shadow:0 4px 16px #21302b0a}.site-dir-rail .site-dir-drawer__top{padding:14px 14px 6px}.site-dir-rail .site-dir-drawer__body{flex:1;padding:4px 10px 12px;overflow-y:auto}.site-dir-rail__hide{color:#19b879;text-underline-offset:3px;cursor:pointer;text-align:left;background:#fff;border:none;border-top:1px solid #e4ebe7;flex-shrink:0;margin:0;padding:10px 14px 14px;font-size:13px;font-weight:700;text-decoration:underline}.site-dir-rail__hide:hover{color:#148a5c}@media (width>=1367px){body.site-dir-has-rail .site-dir-drawer,body.site-dir-has-rail .site-dir-overlay{display:none!important}body.site-dir-has-rail.site-dir-open .site-header,body.site-dir-has-rail.site-dir-open .page-main{width:100%;margin-left:0;margin-right:0}body.site-dir-has-rail.site-dir-open .wb-main-grid{grid-template-columns:minmax(0,1fr) minmax(260px,300px)}body.site-dir-has-rail:not(.site-dir-open) .wb-main-grid{grid-template-columns:1fr}}:root{--ink:#1f2933;--ink-soft:#52606d;--muted:#7b8794;--paper:#f7f5f0;--paper-card:#fff;--line:#1f293314;--sage:#dce9df;--sage-deep:#b7d0bf;--lavender:#e4e7f2;--lavender-deep:#c9cfe3;--mint:#2f8f6b;--mint-soft:#e7f5ee;--mustard:#d4a017;--orange:#e08a3c;--blue:#4a7ec7;--purple:#7a6bb5;--red:#c45c5c;--teal:#3d9a8b;--radius:16px;--radius-lg:24px;--radius-xl:32px;--shadow:0 10px 30px #1f29330f;--shadow-lg:0 18px 48px #1f29331a;--font-display:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-body:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-serif:"Songti SC", "STSong", "SimSun", "Noto Serif SC", serif;--max:1180px;--header-h:72px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--ink);font-family:var(--font-body);background:radial-gradient(900px 420px at 8% -8%, #dce9dfe6, transparent 55%), radial-gradient(800px 380px at 95% 0%, #e4e7f2cc, transparent 50%), var(--paper);margin:0;font-size:16px;line-height:1.65}@media (width<=1099px){body{font-size:14px;line-height:1.65}.brand-mark{font-size:.92rem}.brand-en{font-size:.7rem}.site-nav a,.site-nav__item,.back-link{font-size:13px}}@media (width<=700px){.brand-mark{font-size:.88rem}.brand-en{font-size:.68rem}.site-nav a,.site-nav__item,.back-link{font-size:12px}.container-wide,.container{width:min(100% - 1.1rem,880px)}}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit;cursor:pointer}.container-wide{width:min(100% - 2rem,880px);margin-inline:auto}.container{width:min(100% - 2rem,760px);margin-inline:auto}.site-header{z-index:50;backdrop-filter:blur(12px);background:#f7f5f0e6;border-bottom:1px solid #1f29330d;position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;min-height:64px;display:flex}.brand-link{flex-direction:column;gap:.05rem;min-width:0;display:inline-flex}.brand-mark{letter-spacing:.01em;font-size:1.02rem;font-weight:700;line-height:1.2}.brand-en{color:var(--muted);letter-spacing:0;text-transform:none;font-size:.75rem;font-weight:500}.site-nav{align-items:center;gap:1rem;display:flex}.site-nav a{color:var(--ink-soft);font-size:.9rem;font-weight:500;transition:color .2s}.site-nav a:hover,.site-nav a.is-active{color:var(--ink)}.header-actions{display:none}.btn{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.88rem;font-weight:600;transition:transform .2s,background .2s,border-color .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-ghost{border-color:var(--line);color:var(--ink-soft);background:#fff}.btn-primary{background:var(--mint);color:#fff}.page-main{padding-bottom:0;container:page-main/inline-size}body.wb-desktop{background:#fefefe}body.wb-desktop .container-wide{width:min(100% - 20px,1440px)}body.wb-desktop .site-header{background:#fefefef5}body.wb-desktop .site-header__inner{min-height:56px}body.wb-desktop .brand-mark{color:#1f6b35;font-size:1.05rem}body.wb-desktop .btn-primary{background:#2f7d73}.back-link{color:#2e8b7d;background:linear-gradient(#f4fbf8 0%,#dff3ee 100%);border:1.5px solid #bfe5db;border-radius:9999px;align-items:center;gap:.5rem;margin:.75rem 0 1rem;padding:.5rem 1rem .5rem .625rem;font-size:.875rem;font-weight:700;line-height:1.35;text-decoration:none;transition:color .28s,background .28s,border-color .28s,box-shadow .28s,transform .28s;display:inline-flex;box-shadow:0 1px 5px #2e8b7d14}.back-link__icon{color:#2e8b7d;background:#bfe5dbbf;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;width:1.625rem;height:1.625rem;font-size:.875rem;font-weight:800;line-height:1;transition:background-color .28s,color .28s,transform .28s;display:inline-flex;box-shadow:inset 0 1px #ffffff8c}.back-link__text{min-width:0}.back-link:hover{color:#267a6e;background:linear-gradient(#f7fcfa 0%,#e8f7f2 100%);border-color:#a8d9cc;transform:translate(-3px);box-shadow:0 4px 14px #2e8b7d1f}.back-link:hover .back-link__icon{color:#fff;background:#2e8b7d;transform:translate(-1px)}.back-link:active{transform:translate(-2px);box-shadow:0 2px 8px #2e8b7d1a}.back-link--toolbar{margin:0}.site-header--writing .brand-link{flex-shrink:0}.site-header--writing .back-link--header{min-width:0;margin:0;padding:.22rem .8rem .22rem .38rem;font-size:.82rem}.site-header--writing .back-link--header .back-link__icon{width:1.4rem;height:1.4rem}.site-header--writing .back-link--header .back-link__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.t1-map-pin{color:#2f7d73;cursor:pointer;background:linear-gradient(#f4fbf8 0%,#dff3ee 100%);border:1.5px solid #bfe5db;border-radius:999px;align-items:center;gap:.35rem;margin:0 0 0 auto;padding:.3rem .75rem .3rem .35rem;font-size:12px;font-weight:800;line-height:1.35;display:inline-flex;box-shadow:0 1px 4px #2f7d7314}.t1-map-pin__icon{background:#bfe5dbbf;border-radius:999px;justify-content:center;align-items:center;width:1.4rem;height:1.4rem;display:inline-flex}.t1-map-pin svg{width:14px;height:14px}.t1-map-pin:hover{background:linear-gradient(#f7fcfa 0%,#e8f7f2 100%);border-color:#a8d9cc;box-shadow:0 2px 8px #2f7d731f}.t1-chart-pin{z-index:35;color:#2f7d73;cursor:pointer;background:linear-gradient(#f4fbf8 0%,#dff3ee 100%);border:1.5px solid #bfe5db;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .8rem .35rem .4rem;font-size:12px;font-weight:800;line-height:1.35;display:inline-flex;position:fixed;bottom:18px;right:16px;box-shadow:0 1px 4px #2f7d7314}.t1-chart-pin__icon{background:#bfe5dbbf;border-radius:999px;justify-content:center;align-items:center;width:1.4rem;height:1.4rem;display:inline-flex}.t1-chart-pin svg{width:14px;height:14px}.t1-chart-pin:hover{background:linear-gradient(#f7fcfa 0%,#e8f7f2 100%);border-color:#a8d9cc;box-shadow:0 2px 8px #2f7d731f}.module-hero{margin-bottom:1.5rem}.module-hero h1{margin:0 0 .45rem;font-size:clamp(1.55rem,3vw,2rem);font-weight:700;line-height:1.25}.module-hero p{color:var(--ink-soft);max-width:40rem;margin:0}.article-list{gap:.85rem;margin:0 0 3rem;padding:0;list-style:none;display:grid}.article-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-card);box-shadow:var(--shadow);padding:1.1rem 1.25rem;transition:transform .2s,border-color .2s;display:block}.article-card:hover{border-color:#2f8f6b59;transform:translateY(-2px)}.article-card h2{margin:0 0 .3rem;font-size:1.02rem}.article-card p{color:var(--muted);margin:0;font-size:.9rem}.prose{max-width:42rem;padding-bottom:3rem}.prose-wide{max-width:52rem}.prose table{border-collapse:collapse;width:100%;margin:1rem 0 1.25rem;font-size:.92rem}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.65rem .75rem}.prose th{background:#2f8f6b14;font-weight:650}.prose pre{border:1px solid var(--line);color:var(--ink-soft);background:#fff;border-radius:12px;padding:.85rem 1rem;font-size:.88rem;line-height:1.6;overflow-x:auto}.prose :first-child{margin-top:0}.prose h2{margin:1.8rem 0 .7rem;font-size:1.3rem}.prose h3{margin:1.35rem 0 .45rem;font-size:1.05rem}.prose p,.prose ul,.prose ol{color:var(--ink-soft)}.prose li+li{margin-top:.3rem}.prose code{background:#efece5;border-radius:5px;padding:.1em .35em;font-size:.9em}.prose blockquote{border-left:3px solid var(--mint);background:var(--mint-soft);color:var(--ink-soft);border-radius:0 12px 12px 0;margin:1.2rem 0;padding:.8rem 1rem}.prose blockquote p{margin:0}.site-footer{border-top:1px solid var(--line);background:#ffffff73;margin-top:2rem;padding:2.5rem 0 2rem}.footer-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem;display:grid}.footer-item{flex-direction:column;gap:.35rem;display:flex}.footer-item__icon{background:var(--mint-soft);width:2.2rem;height:2.2rem;color:var(--mint);border-radius:10px;place-items:center;margin-bottom:.25rem;display:grid}.footer-item strong{font-size:.95rem}.footer-item span{color:var(--muted);font-size:.84rem;line-height:1.5}.fade-in{animation:.55s both fadeUp}.fade-in-delay{animation:.65s 80ms both fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.site-header--writing{backdrop-filter:none;background:#fff;border-bottom:1px solid #eef1ef}body.wb-desktop:has(.site-header--writing){--header-h:57px}.site-header--writing .site-header__inner{min-height:56px}.site-header--writing .site-header__actions{display:flex}.site-header--writing .brand-mark--ielts{color:#148a68;letter-spacing:.06em;font-size:1.28rem;font-weight:800;line-height:1.15}.site-header--writing .brand-en--compact{color:#75817b;font-size:.72rem;font-weight:500}.site-header__actions{flex-shrink:0;align-items:center;gap:12px;margin-left:auto;display:flex}.site-header__member{color:#148a68;white-space:nowrap;background:#f4fbf8;border:1px solid #dcefe7;border-radius:999px;align-items:center;padding:8px 18px;font-size:.85rem;font-weight:600;transition:background .2s,border-color .2s;display:inline-flex}.site-header__member:hover{background:#eef9f5;border-color:#bfe5db}.site-header__access-group{align-items:center;gap:8px;display:inline-flex}.site-header__access{color:#2f7d73;font:inherit;cursor:pointer;background:#f4fbf8;border:1px solid #d7ebe4;border-radius:999px;align-items:center;padding:8px 16px;font-size:.85rem;font-weight:600;display:inline-flex}.site-header__access--quiet{opacity:.45}.site-header__access-phone{color:#52606d;font-size:.82rem}.access-shell{grid-template-columns:180px minmax(0,460px);justify-content:center;align-items:center;gap:28px;width:min(860px,100% - 32px);margin:48px auto 72px;display:grid}.access-shell__art{width:180px;height:auto}.access-card{background:#fff;border:1px solid #2f7d7329;border-radius:18px;padding:28px 28px 24px;box-shadow:0 10px 30px #1f29330f}.access-card h1{color:#1f2933;margin:6px 0 8px;font-size:1.7rem}.access-card__kicker{color:#2f7d73;margin:0;font-size:.85rem;font-weight:700}.access-card__lead{color:#52606d;margin:0 0 18px;line-height:1.6}.access-form{gap:14px;display:grid}.access-form__field{color:#36443f;gap:6px;font-size:.92rem;font-weight:600;display:grid}.access-form__field input{color:#1f2933;height:46px;font:inherit;background:#fbfefd;border:1px solid #d7e4df;border-radius:14px;padding:0 14px;font-weight:500}.access-form__error{color:#9a4d3c;margin:0;font-size:.9rem}.access-form__submit{justify-content:center;width:100%}.access-form__switch{color:#2f7d73;text-align:center;font-size:.9rem}@media (width<=720px){.access-shell{grid-template-columns:1fr;justify-items:center}.access-shell__art{width:120px}}.site-header__avatar{background:#eef1ef;border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;line-height:1;display:inline-flex}@media (width<=899px){.site-header--writing .site-header__inner{min-height:auto;padding-block:10px}.site-header--writing .brand-mark--ielts{font-size:1.1rem}.site-header--writing .site-header__member{padding:6px 12px;font-size:.78rem}.site-header--writing .site-header__avatar{width:30px;height:30px;font-size:.88rem}}@media (width<=720px){.site-header__inner{align-items:center;gap:.35rem .75rem;min-height:auto;padding-block:.55rem}.brand-en{font-size:.68rem}.site-header--writing .site-header__member{display:none}}@media (width<=900px){.footer-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=560px){.btn-ghost span{display:none}.footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.fade-in,.fade-in-delay,.btn,.module-tile,.back-link{transition:none;animation:none}}
