:root{--lm-navy: #20324e;--lm-yellow: #f7cf3e;--lm-muted: #748094;--lm-line: #e7ebf0;--lm-bg: #ffffff;--lm-bg-soft: #f6f8fa;--lm-success: #10b981;--lm-warning: #f59e0b;--lm-danger: #ef4444;--lm-info: #3b82f6;--lm-text: var(--lm-navy);--lm-text-weak: var(--lm-muted);--lm-text-invert: #ffffff;--lm-radius-sm: 6px;--lm-radius: 10px;--lm-radius-lg: 14px;--lm-radius-pill: 999px;--lm-space-1: 4px;--lm-space-2: 8px;--lm-space-3: 12px;--lm-space-4: 16px;--lm-space-6: 24px;--lm-space-8: 32px;--lm-space-12: 48px;--lm-font-xs: 12px;--lm-font-sm: 13px;--lm-font-base: 14px;--lm-font-md: 16px;--lm-font-lg: 18px;--lm-font-xl: 22px;--lm-shadow-sm: 0 1px 2px rgba(32, 50, 78, .06);--lm-shadow: 0 6px 18px rgba(32, 50, 78, .08);--lm-shadow-lg: 0 10px 28px rgba(32, 50, 78, .12);--lm-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--lm-bp-sm: 520px;--lm-bp-md: 768px;--lm-bp-lg: 1024px}:root{font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif;color:#20324e;background:#fff;font-synthesis:none;--page-width: 1440px;--page-gutter: 40px;--navy: #20324e;--yellow: #f7cf3e;--muted: #748094;--line: #e7ebf0}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}button{border:0;background:none}p{color:#748094;line-height:1.85}h1,h2,h3,p{margin-top:0}h2{font-size:32px;letter-spacing:-1px;line-height:1.45}h3{font-size:18px}svg{flex-shrink:0;vertical-align:middle}html{scroll-behavior:smooth;scroll-padding-top:105px}:focus-visible{outline:3px solid #2994cc;outline-offset:4px}.wrap{width:min(var(--page-width),calc(100% - var(--page-gutter) * 2));margin-inline:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 23px;min-height:48px;border:1px solid #dfe4ea;border-radius:8px;font-size:16px;font-weight:600;background:#fff}.btn.navy{background:var(--navy);color:#fff;border-color:var(--navy)}.btn.yellow{background:var(--yellow);color:var(--navy);border-color:var(--yellow)}.btn:hover{filter:brightness(.96)}.btn.small{padding:10px 16px;min-height:39px;font-size:16px}.text-btn{display:inline-flex;gap:9px;align-items:center;font-size:16px;font-weight:600;padding:10px 0}.icon{display:inline-flex;align-items:center;justify-content:center;padding:7px;border-radius:6px}.icon:hover{background:#edf1f6}.brand{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;flex-shrink:0}.brand-logo{display:block;height:37px;width:auto;max-width:160px;object-fit:contain;flex-shrink:0}.brand strong{font-size:25px;letter-spacing:-1px}.brand>span:last-child{font-size:16px;color:#6c788b}.brand-mark{display:flex;width:37px;height:37px;align-items:center;justify-content:center;background:var(--yellow);border-radius:11px 11px 11px 3px}.brand-line{height:19px;width:1px;background:#d9dfe5;margin:0 2px}.site-header{position:sticky;top:0;z-index:20;background:#ffffffed;border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.header-inner{height:82px;display:flex;justify-content:space-between;align-items:center}.site-header nav{display:flex;gap:35px;font-size:16px;height:100%;align-items:center}.site-header nav a{height:100%;display:flex;align-items:center;position:relative;color:#6a7586}.site-header nav .active{color:var(--navy);font-weight:600}.site-header nav .active:after{content:"";position:absolute;bottom:18px;height:3px;background:var(--yellow);width:23px;left:calc(50% - 12px)}.hero{background:#f7f9fc;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1.12fr;gap:55px;padding-top:63px;padding-bottom:67px;align-items:center}.hero-note{font-size:15px;color:#607287;display:flex;align-items:center;gap:9px;margin-bottom:23px}.hero-note>span,.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#d4aa24}.hero h1{font-size:clamp(38px,3.6vw,53px);letter-spacing:-2px;line-height:1.35;margin-bottom:22px;font-weight:750}.hero-copy>p{font-size:17px;line-height:1.95;margin-bottom:28px}.hero-actions{display:flex;gap:24px;align-items:center}.hero-proof{display:flex;gap:20px;margin-top:29px;font-size:15px;color:#7d8896}.hero-proof span{display:flex;align-items:center;gap:6px}.hero-proof svg{width:13px;height:13px;color:#83907d}.hero-art{position:relative;padding:14px 0 30px;min-width:0}.hero-art:before{content:"";position:absolute;right:-40px;top:1px;background:#f8dfa0;width:270px;height:270px;border-radius:50%;opacity:.55}.art-label{position:relative;display:flex;align-items:center;gap:8px;font-size:15px;margin-bottom:13px;padding:0 12px;color:#718299}.art-label>svg{margin-left:auto}.hero-browser{display:block;position:relative;padding:0;width:100%;background:#fff;border:6px solid white;border-radius:10px;box-shadow:0 18px 48px #233d6420;overflow:hidden;transform:rotate(-2deg);animation:seesaw-left 5.2s ease-in-out infinite}.browser-bar{display:flex;gap:4px;align-items:center;padding:9px 7px;background:#fbfcfd;border-bottom:1px solid #edf0f5}.browser-bar i{width:5px;height:5px;border-radius:50%;background:#dbe0e6}.browser-bar i:first-child{background:#efb0a5}.browser-bar i:nth-child(2){background:#edce6a}.browser-bar i:nth-child(3){background:#a0cfb7}.browser-bar span{font-size:13px;color:#a1a8b5;flex:1}.browser-bar>svg{color:#a1a8b5}.hero-browser img{width:100%;display:block;aspect-ratio:1.9;object-fit:cover;object-position:top}.art-ticket{position:absolute;right:-14px;bottom:6px;background:#fff;border:1px solid #e9edf3;box-shadow:0 10px 24px #26365812;border-radius:9px;padding:16px 18px;display:flex;gap:12px;align-items:center;transform:rotate(2deg);animation:seesaw-right 5.2s ease-in-out infinite}@keyframes seesaw-left{0%,to{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}@keyframes seesaw-right{0%,to{transform:rotate(2deg)}50%{transform:rotate(-2deg)}}.art-ticket strong{display:block;font-size:16px;margin-bottom:5px}.art-ticket div>span{font-size:13px;color:#8190a3}.ticket-icon{background:#fff6d7;color:#b68b1f;border-radius:8px;width:37px;height:37px;display:flex;align-items:center;justify-content:center}.green{color:#6da388}.hand-note{font-size:13px;position:absolute;bottom:-22px;left:17px;color:#8d99a8}.trust-strip{border-block:1px solid var(--line)}.trust-inner{display:flex;justify-content:space-between;align-items:center;height:78px;font-size:15px;color:#728094}.trust-inner>span{display:flex;align-items:center;gap:10px}.trust-inner svg{width:18px;color:#738298}.trust-inner strong{font-size:23px;color:var(--navy)}.catalog{background:#f3f6fa;box-shadow:0 0 0 100vmax #f3f6fa;clip-path:inset(0 -100vmax);padding-top:63px;padding-bottom:65px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:27px}.section-kicker{font-size:15px;color:#8090a2;display:flex;gap:7px;align-items:center;margin-bottom:12px}.section-heading h2{margin-bottom:9px}.section-heading p{font-size:16px;margin-bottom:0}.heading-dot{color:#e4b72c}.catalog-note{font-size:15px;color:#8993a1;display:flex;align-items:center;gap:6px;padding-bottom:6px}.filter-panel{border:1px solid var(--line);padding:21px 23px 17px;border-radius:10px}.search-row{display:flex;gap:16px}.search{display:flex;align-items:center;gap:12px;padding:0 14px;border:1px solid #e5e9ef;border-radius:7px;min-height:47px;background:#f8fafc;flex:1;color:#8994a5}.search input{border:0;outline:0;background:none;width:100%;font-size:16px;color:var(--navy)}.search input::placeholder{color:#95a0af}.search kbd{font:10px sans-serif;border:1px solid #e2e7ed;padding:4px 5px;color:#95a0af;border-radius:4px;white-space:nowrap}.select-wrap{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:7px;padding:0 14px;color:#748093}.select-wrap select{border:0;background:transparent;font-size:15px;padding:10px 0}.categories{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.categories button{font-size:15px;padding:9px 14px;border-radius:6px;color:#748094}.categories .selected{background:#fff3bf;color:#775d10;font-weight:600}.categories button span{font-size:13px;background:#f5df88;margin-left:7px;padding:1px 5px;border-radius:4px}.results-bar{display:flex;justify-content:space-between;align-items:center;font-size:15px;color:#8d96a4;margin:23px 0 17px}.results-bar strong{color:var(--navy)}.results-bar select{border:0;font-size:15px;color:#788698;background:#fff}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.project-card{border:1px solid #cdd7e4;border-radius:11px;overflow:hidden;background:#fff;box-shadow:0 2px 3px #21375906,0 7px 18px #2137590d;transition:border-color .2s,box-shadow .2s}.project-card:focus-within{border-color:#c69a21;box-shadow:0 0 0 2px #f8d44766,0 10px 26px #2137591a}@media(hover:hover)and (pointer:fine){.project-card:hover{border-color:#c69a21;box-shadow:0 0 0 1px #e6bc46,0 12px 28px #21375920}}.card-cover{display:block;position:relative;width:100%;padding:0;text-align:left;overflow:hidden}.cover-pad{background:#edf3fb;padding:22px 19px 0;height:203px;overflow:hidden}.tint-0{background:#eaf0f8}.tint-1{background:#edf3f2}.tint-2{background:#f2eef8}.tint-3{background:#f5f1e7}.cover-pad img{width:100%;height:100%;object-fit:cover;object-position:top;border:4px solid white;border-bottom:0;border-radius:5px 5px 0 0;box-shadow:0 5px 15px #16335512;display:block;transition:transform .25s}.card-cover:hover img{transform:translateY(-3px)}.featured{position:absolute;left:13px;top:12px;background:#fff9e7ef;border:1px solid #f3e4b2;color:#967220;border-radius:4px;font-size:13px;display:flex;align-items:center;gap:4px;padding:4px 7px}.photo-count{position:absolute;bottom:9px;right:11px;font-size:13px;background:#233451a8;padding:3px 6px;border-radius:4px;color:#fff}.cover-hover{position:absolute;inset:0;background:#20324e88;display:flex;align-items:center;justify-content:center;gap:8px;color:#fff;font-size:16px;opacity:0;transition:opacity .2s}.card-cover:hover .cover-hover{opacity:1}.card-body{padding:19px 21px 0}.card-meta{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#8c96a6;margin-bottom:10px}.level{font-size:13px;padding:3px 7px;border-radius:4px}.level-入门{background:#edf7f1;color:#548b6a}.level-进阶{background:#edf2fa;color:#6987b5}.level-挑战{background:#f2eef9;color:#9680b2}.title-button{width:100%;padding:0;display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left}.card-index{flex-shrink:0;width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#20324e;color:#fff;font-size:13px;font-weight:700;letter-spacing:0;font-variant-numeric:tabular-nums;line-height:1}.title-button h3{flex:1;min-width:0;font-size:18px;line-height:1.55;margin:0;letter-spacing:-.4px}.title-button>svg{color:#8b97a8}.card-summary{font-size:15px;line-height:1.95;margin:10px 0 13px;min-height:43px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{padding:4px 7px;background:#f5f7fa;border-radius:4px;color:#8290a1;font-size:13px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e3e9f1;background:#f8fafc;margin:18px -21px 0;padding:14px 21px;font-size:13px;color:#8893a1;gap:8px}.card-bottom>div{display:flex;gap:10px}.card-bottom span,.card-bottom button{display:flex;align-items:center;gap:4px}.card-bottom button{padding:0;font-size:15px;font-weight:600;color:#4a5a71}.load-more{margin:31px auto 0;display:flex;font-size:15px;padding:12px 24px}.load-more span{font-size:13px;color:#929baa;font-weight:400}.materials{background:#f7f9fc;border-block:1px solid #eef1f6;padding:64px 0}.materials-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:85px}.materials h2{margin:18px 0}.materials p{font-size:16px}.materials .text-btn{font-size:15px}.material-list{display:grid;gap:12px}.material-item{--material-accent: #a47b12;--material-tint: #fff3c4;--material-wash: #fffdf4;--material-border: #eee4bf;display:flex;align-items:center;gap:18px;padding:20px;border:1px solid var(--material-border);border-radius:12px;background:linear-gradient(105deg,var(--material-wash),#fff 75%);box-shadow:0 3px 10px #20324e03}.material-item:nth-child(2){--material-accent: #477cba;--material-tint: #e5effd;--material-wash: #f5f9ff;--material-border: #dfe8f5}.material-item:nth-child(3){--material-accent: #3f8870;--material-tint: #def3e9;--material-wash: #f4fbf7;--material-border: #dbebe2}.material-item:nth-child(4){--material-accent: #8470b4;--material-tint: #eee7fa;--material-wash: #faf7ff;--material-border: #e8e1f2}.material-item>span{width:48px;height:48px;flex-shrink:0;background:var(--material-tint);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--material-accent)}.material-item div{flex:1;min-width:0}.material-item h3{font-size:16px;margin-bottom:6px}.material-item p{font-size:16px;margin:0}.material-item>svg{color:var(--material-accent);background:var(--material-tint);border-radius:50%;padding:4px;width:24px;height:24px}.learning{padding:65px 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin-top:32px}.step{border-top:2px solid #ebeff4;padding-top:20px}.step>span{font-size:27px;color:#c4ccd7;font-weight:600}.step h3{font-size:17px;margin:13px 0 8px}.step p{font-size:15px;margin:0}.final-cta{background:#223651;color:#fff;border-radius:12px;padding:34px 39px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:54px}.final-cta>div{display:flex;gap:21px;align-items:center}.final-cta h2{font-size:25px;margin:0 0 7px;letter-spacing:-.3px}.final-cta p{font-size:15px;color:#a9b7cc;margin:0}.cta-icon{color:#f0ce62;background:#ffffff0c;padding:13px;border-radius:50%}.final-cta .btn{font-size:15px;flex-shrink:0}.site-footer{background:#fff;color:var(--muted);border-top:1px solid var(--line);padding:32px 0 28px}.site-footer-inner.has-qr{padding-right:124px}.site-footer-inner{position:relative;display:flex;align-items:center;justify-content:center;min-height:132px}.site-footer-main{width:min(920px,100%);text-align:center}.site-footer-brand{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:var(--navy)}.site-footer-brand img,.site-footer-brand .brand-mark{width:32px;height:32px;border-radius:8px;object-fit:contain}.site-footer-brand .brand-mark{background:var(--yellow);color:var(--navy)}.site-footer-brand strong{font-size:22px;letter-spacing:.5px;font-weight:700}.site-footer .footer-links{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;margin:14px 0 0;font-size:15px;height:auto}.site-footer .footer-links a{color:#55657b}.site-footer .footer-links a:hover{color:var(--navy)}.site-footer .footer-links a:not(:last-child):after{content:"|";margin:0 12px;color:#c5ccd6}.site-footer-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;margin-top:10px;font-size:13px;color:var(--muted)}.site-footer-copy{margin:8px 0 0;font-size:13px;color:#8a94a3}.site-footer-copy a{color:inherit;text-decoration:underline;text-underline-offset:3px}.site-footer-qr{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--muted);font-size:13px}.site-footer-qr img{width:92px;height:92px;padding:4px;border:1px solid var(--line);border-radius:8px;background:#fff;object-fit:contain}.side-actions{position:fixed;right:16px;top:50%;transform:translateY(-50%);width:68px;padding:8px 5px;border-radius:12px;background:#fff;display:flex;flex-direction:column;align-items:center;box-shadow:0 7px 30px #20324e1c;z-index:50}.side-action{width:100%;min-height:76px;padding:9px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#737984;font-size:13px;white-space:nowrap}.side-action+.side-action{border-top:1px solid #edf0f3}.side-action:hover,.side-action[aria-expanded=true]{color:#f56b18}.side-action-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:8px;color:#fff}.side-action-icon.consult{background:#ffbb4c}.side-action-icon.resource{background:#49a8f5}.resource-qr-panel{position:absolute;right:calc(100% + 12px);top:50%;transform:translateY(-50%);width:184px;padding:16px 18px 12px;border-radius:12px;background:#fff;box-shadow:0 7px 30px #20324e24;text-align:center}.resource-qr-image{width:146px;height:146px;margin:auto}.resource-qr-image img{width:100%;height:100%;object-fit:contain;background:#fff}.resource-qr-placeholder{display:grid;place-items:center;width:146px;height:146px;margin:auto;border:1px dashed #d9e0e9;border-radius:8px;color:#9ba7b6;font-size:13px;background:#f7f9fc}.resource-qr-panel p{margin:8px 0 0;color:#717987;font-size:13px;line-height:1.5}.empty{padding:65px 20px;text-align:center;color:#8793a6}.empty h3{margin-top:20px}.empty p{font-size:16px}.image-empty{min-height:180px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px;color:#8592a5;background:#f0f3f7}.overlay{position:fixed;inset:0;background:#182b4c88;backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100;padding:30px}.modal{position:relative;background:#fff;border-radius:17px;width:490px;max-width:100%;max-height:90dvh;overflow:auto;padding:35px;box-shadow:0 25px 90px #12234033;outline:0}.modal.wide{width:1040px}.close{position:absolute;top:12px;right:12px;z-index:2;background:#f4f6f9}.detail-heading{padding-right:18px}.detail-heading :is(h1,h2){display:flex;align-items:center;gap:10px;margin-bottom:10px}.detail-heading :is(h1,h2) .card-index{width:30px;height:30px;font-size:15px}.detail-heading p{font-size:16px;max-width:760px}.detail-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:28px;margin-top:25px}.gallery{border:1px solid var(--line);border-radius:9px;overflow:hidden}.gallery-image{display:block;width:100%;padding:0;position:relative;background:#f3f6fa}.gallery-image>img{width:100%;height:290px;object-fit:contain;display:block}.gallery-image>svg{position:absolute;right:10px;bottom:10px;color:#60738f;background:#fff;border-radius:4px;padding:2px}.gallery-control{display:flex;align-items:center;justify-content:space-between;padding:3px 10px;font-size:15px;color:#8894a5}.thumbnails{display:flex;gap:8px;margin:12px 0 25px}.thumbnails button{width:85px;padding:2px;border:2px solid transparent;border-radius:5px}.thumbnails button.active{border-color:var(--yellow)}.thumbnails img{width:100%;height:45px;object-fit:cover;display:block}.detail-grid h3{font-size:17px;margin:20px 0 12px}.detail-tags span{font-size:15px;padding:7px 10px}.features{display:flex;gap:14px;flex-wrap:wrap;font-size:15px;color:#76869d}.features span{display:flex;align-items:center;gap:6px}.features svg{color:#85a38c}.tech-stack{font-size:15px;margin:20px 0 0}.detail-aside{background:#f7f9fc;border:1px solid var(--line);border-radius:10px;padding:24px;height:fit-content}.aside-icon{display:inline-flex;background:#fff0b8;border-radius:9px;color:#9c7b1d;padding:11px}.detail-aside p{font-size:15px}.detail-aside ul{list-style:none;padding:0;margin:24px 0;font-size:15px;display:grid;gap:15px}.detail-aside li{display:flex;gap:10px;align-items:center}.detail-aside li svg{color:#81a58a}.detail-aside .btn{width:100%;padding:13px 10px;font-size:15px}.detail-aside small{display:block;text-align:center;font-size:13px;color:#9aa5b4;margin-top:13px}.zoom-img{width:100%;display:block;margin-top:20px}.contact{text-align:center}.contact-icon{display:inline-flex;padding:13px;background:#fff3c7;color:#9a7616;border-radius:14px;margin-bottom:18px}.contact h2{font-size:26px;line-height:1.5}.contact p{font-size:15px}.contact-project{display:flex;align-items:center;justify-content:center;gap:6px;font-size:15px;color:#8090a3;background:#f5f7fa;padding:10px;border-radius:5px;margin:20px 0}.qr{display:block;width:190px;height:190px;object-fit:contain;margin:15px auto}.qr-placeholder{width:190px;height:190px;border:2px dashed #d9e0e9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;margin:20px auto;background:#f7f9fc;border-radius:10px;color:#a5b1c1}.qr-placeholder strong{font-size:16px;color:#8898ad}.qr-placeholder span{font-size:13px}.contact .btn{margin:13px auto}.contact small{font-size:13px;color:#9ba7b6;display:block;line-height:1.8}.wechat{display:block;font-size:16px}.placeholder-note{background:#fff9e7;padding:10px;color:#9b8450!important;border-radius:6px}.login-page{min-height:100vh;background:#f5f7fb;display:grid;place-items:center;padding:25px}.login-card{padding:42px;background:#fff;border:1px solid var(--line);border-radius:15px;width:430px;max-width:100%}.login-card h1{font-size:27px;margin:30px 0 10px}.login-card p{font-size:15px}.login-card form{display:grid;gap:17px;margin:26px 0}.login-card>a:last-child{font-size:15px;color:#8694a7}form label{display:flex;flex-direction:column;gap:8px;font-size:15px;color:#627087}form input:not([type=checkbox]),form textarea,form select{border:1px solid #dce3ec;border-radius:6px;padding:11px 12px;width:100%;background:#fff;color:var(--navy);font-size:16px}form input:disabled{background:#f2f4f8}form textarea{min-height:95px;resize:vertical}form p{font-size:15px}.alert{background:#fff0f0;border:1px solid #f3cdcd;color:#b15555;border-radius:6px;padding:13px;font-size:16px;margin:10px 0}.notice{background:#eff8f1;border:1px solid #d8eadc;color:#4e7f58;border-radius:7px;padding:10px 14px;margin-bottom:20px;font-size:16px;display:flex;justify-content:space-between;align-items:center}.admin-shell{min-height:100vh;background:#f7f9fc;display:flex}.admin-sidebar{width:245px;position:fixed;top:0;bottom:0;padding:29px 23px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:20px}.admin-sidebar .brand{flex-wrap:wrap;gap:7px}.admin-sidebar .brand strong{font-size:22px}.admin-sidebar .brand>span:last-child{font-size:15px}.admin-sidebar .brand-line{display:none}.admin-nav{display:grid;gap:10px;margin-top:35px}.admin-nav button{display:flex;gap:11px;align-items:center;padding:14px;border-radius:8px;font-size:16px;text-align:left}.admin-nav .selected{background:#fff4c8;color:#866716}.admin-sidebar>a:not(.brand){margin-top:auto;display:flex;align-items:center;gap:10px;font-size:15px;color:#778499}.admin-sidebar>.text-btn{font-size:15px;color:#778499}.admin-main{margin-left:245px;width:calc(100% - 245px);padding:40px;max-width:1600px}.admin-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.admin-top h1{font-size:30px;margin:0}.admin-stats{display:flex;gap:40px;margin-bottom:28px;font-size:16px;color:#8491a4}.admin-stats strong{font-size:27px;color:var(--navy);margin-right:7px}.admin-search{max-width:600px;background:#fff;margin-bottom:22px}.admin-projects{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.admin-row{display:flex;align-items:center;gap:19px;padding:18px;border-bottom:1px solid var(--line);font-size:15px}.admin-row:last-child{border-bottom:0}.admin-row>img{width:82px;height:51px;object-fit:cover;border-radius:5px;border:1px solid #edf0f4}.admin-row-name{flex:1;min-width:130px}.admin-row-name strong{display:block;font-size:16px}.admin-row-name small{display:block;font-size:13px;color:#99a3b1;margin-top:7px}.admin-row>span{color:#8190a4;white-space:nowrap}.status{background:#f2f4f7;padding:5px 8px;border-radius:4px;font-size:13px}.status.live{background:#eaf5ed;color:#659372}.danger{color:#b65f65}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.editor{display:grid;gap:19px}.editor h2{font-size:25px;margin:0}.editor h3{margin:0}.editor p{margin:-7px 0 0}.editor-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:15px;border-top:1px solid var(--line)}.checks{display:flex;align-items:center;gap:25px}.checks label{flex-direction:row;align-items:center}.upload-button{display:inline-flex!important;flex-direction:row!important;align-items:center;justify-content:center;border:1px dashed #bcc8d7;border-radius:8px;background:#f7f9fc;padding:18px;cursor:pointer;position:relative}.upload-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.edit-images{display:flex;gap:12px;flex-wrap:wrap}.edit-images>div{border:1px solid var(--line);border-radius:6px;overflow:hidden;width:145px}.edit-images img{width:100%;height:85px;object-fit:cover}.edit-images>div>div{display:flex;justify-content:center}.settings-form{max-width:780px;display:grid;gap:20px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:30px}.settings-form h2{font-size:21px;margin:0}.settings-form p{margin:0}.settings-form>.btn{justify-self:start}.confirm h2{font-size:24px;margin-top:10px}.confirm p{font-size:16px}.btn.delete{background:#ad4855;color:#fff;border-color:#ad4855}@media(min-width:1500px){.hero-grid{padding-top:78px;padding-bottom:80px}.hero h1{font-size:56px}}@media(max-width:1100px){.wrap{width:calc(100% - 48px)}.hero-grid{gap:25px}.hero-actions{gap:14px;flex-wrap:wrap}.hero h1{font-size:45px}.hero-proof{gap:12px}.cover-pad{height:175px;padding:19px 13px 0}.card-body{padding:16px 16px 0}.project-grid{gap:17px}.title-button h3{font-size:17px}.final-cta{padding:30px}.final-cta h2{font-size:22px}.admin-row{gap:12px}.admin-row>span:nth-of-type(4){display:none}.admin-main{padding:28px}.admin-sidebar{width:210px;padding:25px 17px}.admin-main{margin-left:210px;width:calc(100% - 210px)}}@media(max-width:800px){.brand-line,.header-inner .brand>span:last-child{display:none}.site-header nav{gap:18px;font-size:15px}.header-inner{height:70px}.hero-grid{grid-template-columns:1fr;padding-top:40px;padding-bottom:48px;gap:30px}.hero h1{font-size:49px}.hero-copy>p{font-size:16px}.hero-art{width:85%;margin:auto}.hero-actions{flex-wrap:nowrap}.trust-inner{flex-wrap:wrap;height:auto;padding-block:20px;gap:20px}.trust-inner>span{width:45%;font-size:15px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cover-pad{height:185px}.section-heading h2{font-size:28px}.catalog-note{display:none}.materials-grid{gap:30px;grid-template-columns:1fr 1.2fr}.materials h2{font-size:27px}.material-item{gap:12px}.material-item>svg{display:none}.steps{grid-template-columns:1fr 1fr;row-gap:30px}.final-cta{flex-direction:column;align-items:flex-start;gap:24px}.final-cta>.btn{margin-left:67px}.site-footer{padding:28px 0 24px}.site-footer-inner,.site-footer-inner.has-qr{flex-direction:column;gap:24px;padding-right:0}.site-footer-qr{position:static;transform:none}.detail-grid{grid-template-columns:1fr}.detail-aside{padding:22px}.detail-aside ul{display:grid;grid-template-columns:1fr 1fr}.gallery-image>img{height:auto;max-height:380px}.admin-sidebar{position:static;width:100%;flex-direction:row;flex-wrap:wrap;align-items:center;border-right:0;border-bottom:1px solid var(--line);gap:12px;padding:15px 20px}.admin-nav{display:flex;margin:0}.admin-sidebar>a:not(.brand){margin:0}.admin-shell{display:block}.admin-main{margin:0;width:100%;padding:25px}.admin-row>span:first-of-type{display:none}.admin-row>img{width:65px;height:43px}}@media(max-width:540px){.wrap{width:calc(100% - 36px)}.site-header nav{display:none}.header-inner>.btn{font-size:15px;padding:9px 12px;min-height:35px}.brand strong{font-size:23px}.brand-mark{width:32px;height:32px}.brand-logo{height:32px}.hero-grid{padding-top:34px}.hero h1{font-size:42px;letter-spacing:-1.7px}.hero-note{font-size:13px;margin-bottom:18px}.hero-copy>p{font-size:15px}.hero-actions{gap:16px;flex-wrap:wrap}.hero-actions>.btn{padding:13px 17px;font-size:15px}.hero-actions>.text-btn{font-size:15px}.hero-proof{font-size:13px;gap:13px;margin-top:22px}.hero-art{width:95%;padding-bottom:30px}.art-ticket{padding:11px 12px;right:-4px}.art-ticket strong{font-size:15px}.art-ticket div>span{font-size:13px}.art-label,.hand-note{font-size:13px}.trust-inner{gap:16px}.trust-inner>span{font-size:13px;gap:7px}.trust-inner strong{font-size:19px}.catalog{padding-top:38px;padding-bottom:38px}.section-heading{margin-bottom:20px}.section-heading h2{font-size:25px;letter-spacing:-.7px}.section-heading p{font-size:15px}.section-kicker{font-size:13px}.filter-panel{padding:13px}.search-row{gap:8px}.search{padding:0 9px;min-height:43px;gap:7px}.search input{font-size:15px}.search kbd{display:none}.search svg{width:17px}.select-wrap{padding:0 6px;gap:4px}.select-wrap>svg{display:none}.select-wrap select{font-size:13px;max-width:75px}.categories{gap:3px;margin-top:10px}.categories button{font-size:13px;padding:8px 9px}.categories button span,.results-bar{font-size:13px}.project-grid{grid-template-columns:1fr;gap:20px}.cover-pad{height:210px;padding:21px 20px 0}.card-body{padding:18px 21px 0}.title-button h3{font-size:19px}.card-summary{font-size:15px;min-height:0}.tags span{font-size:13px}.card-bottom,.card-bottom button,.card-meta{font-size:15px}.materials{padding:38px 0}.materials-grid{grid-template-columns:1fr;gap:22px}.materials h2{font-size:29px}.materials-grid>div:first-child>p br{display:none}.materials-grid>div:first-child>p{font-size:15px}.material-item p{font-size:13px}.material-item h3{font-size:16px}.learning{padding:38px 0}.learning .section-heading{display:block}.learning .section-heading>p{margin-top:12px}.steps{gap:24px;margin-top:24px}.step h3{font-size:16px}.step p{font-size:15px}.final-cta{padding:24px 20px;margin-bottom:30px;gap:22px}.cta-icon{display:none}.final-cta h2{font-size:19px}.final-cta p{font-size:13px}.final-cta>.btn{margin:0;font-size:15px}.side-actions{right:12px;width:62px}.side-action{min-height:68px;font-size:12px}.resource-qr-panel{right:calc(100% + 8px)}.site-footer{padding:24px 0 20px}.site-footer-brand strong{font-size:19px}.site-footer .footer-links{gap:10px 0}.overlay{padding:12px}.modal{padding:29px 20px 24px;max-height:94dvh;border-radius:12px}.detail-heading :is(h1,h2){font-size:25px;margin-top:18px}.detail-heading p{font-size:15px}.contact h2{font-size:23px}.contact p{font-size:15px}.detail-grid{gap:15px}.detail-aside ul{gap:13px;font-size:15px}.admin-main{padding:20px 14px}.admin-sidebar .brand{margin-right:auto}.admin-nav{width:100%;order:2;gap:7px}.admin-nav button{font-size:15px;padding:11px}.admin-sidebar>.text-btn{font-size:15px}.admin-sidebar>a:not(.brand){font-size:13px}.admin-top h1{font-size:25px}.admin-stats{gap:20px;font-size:13px}.admin-stats strong{font-size:22px}.admin-row{padding:12px 10px;gap:9px;flex-wrap:wrap}.admin-row>img{width:60px;height:40px}.admin-row-name{min-width:100px}.admin-row-name strong{font-size:15px}.admin-row>.status{display:none}.admin-row .btn{font-size:15px;padding:7px 9px;min-height:32px}.form-grid{grid-template-columns:1fr;gap:16px}.settings-form{padding:20px}.login-card{padding:30px 24px}.editor h2{font-size:23px}.checks{padding:10px 0}.edit-images>div{width:125px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}.hero-copy>p{font-size:17px;line-height:1.85}.card-summary,.material-item p,.step p,.detail-heading p,.contact p{font-size:16px;line-height:1.75}.card-summary{min-height:49px}.tags span{font-size:13px;line-height:1.5;color:#63738a}.card-meta,.card-bottom,.results-bar,.catalog-note,.hero-proof{color:#64748b}.card-bottom{flex-wrap:wrap;row-gap:10px}.hero-proof{flex-wrap:wrap}.hero-actions{flex-wrap:wrap;gap:16px 22px}.browser-bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-art{padding-bottom:80px}.hero-slides{position:relative;aspect-ratio:1.9;overflow:hidden;background:#f3f6fa}.hero-browser .hero-slides img{position:absolute;inset:0;height:100%;opacity:0;transition:opacity .7s ease;pointer-events:none}.hero-browser .hero-slides img.is-current{opacity:1}.art-ticket{bottom:63px}.carousel-controls{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:7px}.carousel-controls .icon{width:36px;height:36px}.carousel-dots{display:flex;gap:2px}.carousel-dots button{display:grid;place-items:center;width:28px;height:36px;padding:0}.carousel-dots button span{width:6px;height:6px;border-radius:4px;background:#b9c4d2;transition:width .25s ease,background .25s ease}.carousel-dots button[aria-current] span{width:21px;background:#c69a16}.carousel-count{font-size:13px;color:#627389;padding-inline:5px}@media(max-width:800px){.hero-art{padding-bottom:80px}.trust-inner>span{width:calc(50% - 12px)}}@media(max-width:540px){.hero-art{width:100%;padding-bottom:80px}.hero-copy>p{font-size:16px}.hero-actions{gap:8px 14px}.hero-actions>.text-btn{font-size:15px}.art-ticket{right:0;bottom:62px}.art-ticket strong{font-size:15px}.art-ticket div>span{font-size:13px}.art-label{font-size:13px;padding-inline:0}.trust-inner{column-gap:14px}.trust-inner>span{font-size:13px;gap:6px;align-items:flex-start;line-height:1.6}.trust-inner svg{width:15px}.search-row{flex-wrap:wrap}.search-row .search{flex-basis:100%}.search input{font-size:17px}.select-wrap select{max-width:none;font-size:15px}.categories button{font-size:15px}.card-bottom{flex-wrap:nowrap}.learning .section-heading h2{font-size:25px}.final-cta p{font-size:15px}.modal .detail-aside ul{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.hero-browser .hero-slides img,.carousel-dots button span{transition:none}}@media(max-width:540px){.material-item{padding:16px 14px;gap:13px}.material-item>span{width:43px;height:43px;border-radius:10px}.material-item h3{font-size:16px}}.material-item{transition:transform .22s ease,box-shadow .22s ease}.material-item>span{transition:transform .22s ease}.steps{gap:20px}.step{--step-accent: #ae8418;--step-tint: #fff3c9;--step-border: #f0e4bd;padding:24px 22px;border:1px solid var(--step-border);border-top:3px solid var(--step-accent);border-radius:12px;background:linear-gradient(155deg,#fff,#fffdf6);transition:transform .22s ease,box-shadow .22s ease}.step:nth-child(2){--step-accent: #5586be;--step-tint: #e8f1fd;--step-border: #e0e9f5;background:linear-gradient(155deg,#fff,#f6faff)}.step:nth-child(3){--step-accent: #51967b;--step-tint: #e4f4ec;--step-border: #deece5;background:linear-gradient(155deg,#fff,#f5fbf8)}.step:nth-child(4){--step-accent: #917bb9;--step-tint: #f0eafb;--step-border: #e9e2f4;background:linear-gradient(155deg,#fff,#faf8ff)}.step>span{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;font-size:23px;border-radius:12px;color:var(--step-accent);background:var(--step-tint);transition:transform .22s ease}.step h3{margin-top:20px}.step p{font-size:16px}.trust-strip{background:#203650;border:0}.trust-inner{height:auto;min-height:130px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding-block:28px}.selling-point{display:flex;align-items:center;gap:13px;padding:8px 22px;border-right:1px solid #ffffff24}.selling-point:first-child{padding-left:0}.selling-point:last-child{border:0;padding-right:0}.selling-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;border:1px solid #f7cf3e40;background:#f7cf3e15;border-radius:11px}.trust-inner .selling-icon svg{width:21px;height:21px;color:#f7d45c}.trust-inner .selling-point strong{display:block;font-size:19px;line-height:1.5;color:#fff1b8;font-weight:650;margin-bottom:6px}.selling-point div>span{display:block;font-size:13px;line-height:1.7;color:#c2ccdb}.original-image{margin-top:10px;font-size:15px}@media(hover:hover)and (pointer:fine){.material-item:hover,.step:hover{transform:translateY(-4px);box-shadow:0 10px 24px #20324e10}.material-item:hover>span{transform:rotate(-5deg) scale(1.06)}.step:hover>span{transform:translateY(-2px) rotate(-4deg)}}@media(max-width:1100px){.selling-point{padding-inline:14px;gap:10px}.trust-inner .selling-point strong{font-size:17px}.selling-icon{width:35px;height:35px}}@media(max-width:800px){.trust-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 18px}.selling-point{padding:0;border:0}}@media(max-width:540px){.trust-inner{padding-block:25px;gap:24px 18px}.selling-point{align-items:flex-start;gap:8px}.selling-icon{width:28px;height:28px;border-radius:8px}.trust-inner .selling-icon svg{width:16px;height:16px}.trust-inner .selling-point strong{font-size:16px}.selling-point div>span{font-size:13px}.steps{gap:14px}.step{padding:18px 14px}.step h3{font-size:16px}.step p{font-size:15px}}@media(prefers-reduced-motion:reduce){.material-item:hover,.step:hover,.material-item:hover>span,.step:hover>span{transform:none}}.thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.thumbnails button{width:auto;min-width:0;position:relative}.thumbnails img{height:auto;aspect-ratio:1.8;object-fit:contain;background:#edf2f7}.thumbnail-index{position:absolute;right:3px;bottom:3px;font-size:11px;line-height:1.5;padding:0 4px;border-radius:3px;background:#20324ecc;color:#fff}.modal.wide:has(.zoom-img){width:min(1600px,96vw)}.skip-link{position:fixed;left:16px;top:-100px;z-index:100;padding:12px;background:var(--yellow);color:var(--navy)}.skip-link:focus{top:12px}.site-header .desktop-navigation{gap:22px}.site-header .brand>span:last-child,.site-header .brand-line{display:none}.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.header-search{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;color:#6a7586}.header-search:hover,.header-search[aria-current=page]{color:var(--navy);background:#f4f6f8}.header-search svg{display:block}.mobile-navigation{display:none}.portal-section{padding:64px 0}.portal-tint{background:#f7f9fc}.portal-heading{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:28px}.portal-heading h2{margin:0 0 8px}.portal-heading p{margin:0;max-width:640px}.portal-heading>a{flex-shrink:0;font-size:16px;text-decoration:underline;text-underline-offset:5px}.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.portal-card{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;min-width:0}.portal-card-body{padding:24px}.portal-card h2,.portal-card h3{font-size:23px;line-height:1.5;margin:10px 0}.portal-card p{font-size:16px;margin-bottom:12px}.portal-card a:hover{text-decoration:underline;text-underline-offset:4px}.portal-card img{width:100%;height:190px;object-fit:cover}.portal-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:15px;color:#55657b}.portal-tag{display:inline-block;padding:4px 10px;background:#f1f4f8;border-radius:6px;font-size:13px}.portal-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:26px}.portal-intro{padding:52px 0 36px}.portal-intro h1{font-size:clamp(32px,5vw,52px);line-height:1.3;margin:16px 0}.portal-intro p{max-width:720px;color:#55657b}.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:15px;height:auto;color:#55657b}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.learning-hero{padding:72px 0;background:#f7f9fc}.learning-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}.learning-hero h1{font-size:clamp(38px,4.6vw,62px);line-height:1.25;letter-spacing:-2px;margin:16px 0 24px}.learning-hero .lead{font-size:19px;max-width:580px;color:#55657b}.study-board{background:#fff;border:1px solid var(--line);border-top:5px solid var(--yellow);border-radius:16px;padding:32px;box-shadow:0 18px 50px #20324e0a}.study-board h2{font-size:24px}.study-board a{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-top:1px solid var(--line);gap:16px}.study-board a span{font-size:15px;color:#55657b}.learning-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;list-style:none;gap:24px}.learning-path li{border-top:2px solid var(--line);padding-top:20px}.learning-path .step-number{color:#55657b;font-size:15px}.learning-path h3{margin:14px 0 10px}.learning-path p{font-size:16px}.skill-feature{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.skill-file-list{background:#20324e;color:#fff;border-radius:16px;padding:32px;line-height:2;overflow:auto}.skill-file-list p{color:#ccd5e1;font-size:16px;margin:14px 0 0}.demo-notice{border-left:4px solid var(--yellow);padding:16px 20px;background:#f7f9fc;color:#42566b;line-height:1.8;margin:20px 0}.resource-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.resource-links a{padding:20px 0;border-top:1px solid var(--line)}.resource-links p{font-size:16px}.resource-links small{color:#55657b}.portal-cta{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:36px;background:#f7f9fc;border-radius:16px;margin-bottom:64px}.portal-cta h2{font-size:27px;margin-bottom:8px}.portal-cta p{margin:0}.resource-page{max-width:900px;min-height:60vh;padding-bottom:80px}.resource-page h2{font-size:26px;margin-top:36px}.skill-detail{max-width:880px;padding-bottom:72px}.skill-detail section{margin-top:34px}.skill-detail h2{font-size:26px}.skill-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:22px;background:#f7f9fc;border-radius:12px}.skill-detail li{line-height:1.9}.article-categories{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0;height:auto}.article-categories a{padding:8px 14px;border:1px solid var(--line);border-radius:8px;font-size:16px}.article-categories a[aria-current]{background:var(--yellow);color:var(--navy)}.pagination{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px;height:auto;align-items:center}.pagination a,.pagination span{display:block;padding:9px 14px;border:1px solid var(--line);border-radius:6px}.pagination [aria-current]{background:var(--yellow)}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:56px;align-items:start;padding-bottom:72px}.article-body{min-width:0;max-width:860px}.article-body header{margin-bottom:28px}.article-body h1{font-size:clamp(32px,4vw,46px);line-height:1.4;margin:22px 0}.article-subcategories{margin-top:-8px;gap:8px}.article-subcategories a{padding:6px 12px;font-size:15px;background:#f7f9fc;border-color:transparent}.article-subcategories a[aria-current]{background:var(--yellow);border-color:var(--yellow)}.article-categories .count{margin-left:6px;font-size:13px;color:#8392a5}.article-categories a[aria-current] .count{color:inherit}.article-tag-cloud{margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}.article-tag-cloud h2{font-size:20px;margin:0 0 16px}.article-tag-cloud div{display:flex;flex-wrap:wrap;gap:10px}.article-tag-cloud a{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:1px solid var(--line);border-radius:999px;font-size:15px;color:#42566b}.article-tag-cloud a:hover{border-color:var(--yellow);background:#fff9dc}.article-tag-cloud a[aria-current]{background:var(--yellow);border-color:var(--yellow);color:var(--navy)}.article-tag-cloud .count{font-size:13px;color:#8392a5}.article-aside{position:sticky;top:110px;display:flex;flex-direction:column;gap:28px;border-left:1px solid var(--line);padding-left:22px;font-size:16px}.article-aside strong{display:block;margin-bottom:12px}.article-tags div{display:flex;flex-wrap:wrap;gap:8px}.article-tags a{display:inline-block;padding:6px 11px;border:1px solid var(--line);border-radius:999px;font-size:14px;line-height:1.3;color:#42566b}.article-tags a:hover{border-color:var(--yellow);background:#fff9dc}.article-subjects a{font-size:14px;line-height:1;padding:7px 12px;border:1px solid var(--line);border-radius:999px;color:#42566b}.article-subjects a:hover{border-color:var(--yellow);background:#fff9dc}.article-subjects{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:0}.article-subjects span{font-size:14px;line-height:1;padding:7px 12px;border:1px solid var(--line);border-radius:999px;color:#42566b}.article-summary{padding:20px;border-left:4px solid var(--yellow);background:#f7f9fc;color:#42566b}.article-cover{width:100%;height:auto;max-height:440px;object-fit:cover;border-radius:14px}.article-prose{font-size:18px;line-height:1.95;overflow-wrap:anywhere;color:#293c55}.article-prose p{color:inherit}.article-prose h2{font-size:28px;margin-top:2em}.article-prose h3{font-size:23px;margin-top:1.8em}.article-prose img{max-width:100%;height:auto}.article-prose pre{overflow:auto;max-width:100%;padding:18px;background:#f7f9fc}.article-prose table{display:block;max-width:100%;overflow:auto}.article-prose a,.article-source a{color:#22549c;text-decoration:underline}.article-toc{font-size:16px}.article-toc ol{padding:0;list-style:none}.article-toc li{margin:12px 0;line-height:1.6}.article-toc .nested{padding-left:14px}.article-source{font-size:16px;margin-top:28px}.article-related{border-top:1px solid var(--line);padding-top:30px;margin-top:40px}.article-related h2{font-size:26px}.article-related li{line-height:1.9;margin:10px 0}.page-catalog h1{font-size:clamp(32px,4vw,46px);margin:0 0 14px}.course-card .badge-featured{position:static;margin-bottom:12px;display:inline-block}@media(max-width:1100px){.site-header .desktop-navigation{gap:14px}.learning-hero-grid{gap:28px}.article-layout{gap:28px;grid-template-columns:minmax(0,1fr) 220px}}@media(max-width:900px){.site-header .desktop-navigation{display:none}.mobile-navigation{display:block}.mobile-navigation summary{cursor:pointer;padding:12px;list-style:none;border:1px solid var(--line);border-radius:8px}.mobile-navigation[open] nav{display:flex;position:absolute;left:0;right:0;top:100%;height:auto;background:#fff;box-shadow:0 12px 24px #20324e12;padding:18px 24px;flex-direction:column;align-items:stretch;gap:0}.mobile-navigation nav a{padding:12px;height:auto}.learning-hero-grid,.skill-feature{grid-template-columns:1fr}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.article-layout{display:flex;flex-direction:column}.article-toc{position:static;order:-1;width:100%;margin-top:10px}.learning-path{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.portal-section,.learning-hero{padding:40px 0}.learning-hero h1{letter-spacing:-1px}.study-board{padding:22px}.study-board a{align-items:start;flex-direction:column;gap:5px}.portal-grid,.resource-links{grid-template-columns:1fr}.portal-heading{align-items:start;flex-direction:column}.portal-cta{padding:24px;align-items:start;flex-direction:column}.portal-intro{padding-top:32px}.portal-card-body{padding:20px}.learning-path{gap:18px}.learning-path h3{font-size:18px}.portal-actions .btn{padding:12px 16px}.article-toc{padding-left:16px}.portal-section h2{font-size:28px}}.portal-card-body>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.article-list .portal-card h2{font-size:19px;line-height:1.45;letter-spacing:0;height:2.9em;margin:10px 0 8px;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;word-break:break-word}.article-list .portal-card-body>p{-webkit-line-clamp:2;line-clamp:2;line-height:1.6;height:3.2em;margin-bottom:0}.article-list .article-cover-block{display:grid;place-items:center;height:190px;overflow:hidden;background:linear-gradient(135deg,#397cec,#1bbecb)}.article-list .portal-card:nth-child(5n+2) .article-cover-block{background:linear-gradient(135deg,#ff8936,#f44848)}.article-list .portal-card:nth-child(5n+3) .article-cover-block{background:linear-gradient(135deg,#6656d7,#a649d7)}.article-list .article-cover-block img{width:100%;height:100%;object-fit:cover}.article-list .article-cover-block>span{color:#fff;font-size:21px;font-weight:700;line-height:1.4;max-height:calc(1.4em * 3);padding:24px;text-align:center;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.course-pagination{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:2px 16px;margin-top:36px;font-size:13px;font-weight:400;line-height:24px}.course-pagination a,.course-pagination button,.course-pagination .page-text{min-width:0;height:auto;padding:0;border:0;background:transparent;border-radius:0;color:#4d555d;font-size:13px;font-weight:400;line-height:24px;text-decoration:none}.course-pagination a,.course-pagination button{cursor:pointer}.course-pagination .page-num{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 4px;border-radius:50%}.course-pagination a.page-text:hover,.course-pagination a.page-num:hover:not(.current),.course-pagination .page-text:hover:not(:disabled),.course-pagination .page-num:hover:not(.current){color:#1c1f21}.course-pagination .page-num.current,.course-pagination .page-num.current:hover{background:#f7cf3e;color:#283343}.course-pagination button:disabled,.course-pagination [aria-disabled=true]{color:#c8cdd2;cursor:not-allowed}.course-pagination .ellipsis{padding:0;color:#c8cdd2}.article-body{width:100%;overflow-wrap:anywhere}.article-toc{overflow-wrap:anywhere}.article-toc-mobile{display:none}.article-prose :where(img,section,div,span){max-width:100%}.article-summary{overflow-wrap:anywhere}@media(max-width:900px){.article-toc{display:none}.article-toc-mobile{display:block;padding:16px 20px;background:#f7f9fc;border:1px solid var(--line);border-radius:10px;margin:24px 0;overflow-wrap:anywhere}.article-toc-mobile summary{cursor:pointer;font-weight:600}.article-toc-mobile ol{padding-left:20px;font-size:16px;line-height:1.9}}.news-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.news-heading h2{display:flex;align-items:center;gap:10px;margin:0;font-size:24px;letter-spacing:0}.news-heading h2:before{content:"";width:4px;height:18px;border-radius:2px;background:var(--yellow)}.news-heading a{flex-shrink:0;color:#e67a1a;font-size:16px;font-weight:600}.news-heading a:hover{text-decoration:underline;text-underline-offset:4px}.news-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px}.news-item{display:grid;grid-template-columns:168px minmax(0,1fr);gap:16px;min-width:0;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff;transition:box-shadow .2s,border-color .2s}.news-item:hover{border-color:#d7e0ea;box-shadow:0 8px 24px #20324e12}.news-item:hover h3{color:#1b4f9c}.news-thumb{display:grid;place-items:center;width:168px;height:108px;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#397cec,#1bbecb)}.news-item:nth-child(5n+2) .news-thumb{background:linear-gradient(135deg,#ff8936,#f44848)}.news-item:nth-child(5n+3) .news-thumb{background:linear-gradient(135deg,#6656d7,#a649d7)}.news-thumb img{display:block;width:100%;height:100%;object-fit:cover}.news-thumb-title{color:#fff;font-size:16px;font-weight:700;line-height:1.35;padding:10px 12px;text-align:center;display:-webkit-box;-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.news-body{display:flex;flex-direction:column;min-width:0;min-height:108px}.news-body h3{margin:0 0 6px;font-size:17px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-body p{margin:0;color:#7b8797;font-size:15px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.news-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:auto;padding-top:8px;color:#9aa4b2;font-size:13px}.news-meta span,.news-meta time{display:inline-flex;align-items:center;gap:4px}@media(max-width:900px){.news-grid{grid-template-columns:1fr}}@media(max-width:540px){.news-item{grid-template-columns:112px minmax(0,1fr);gap:12px;padding:12px}.news-thumb{width:112px;height:78px}.news-thumb-title{font-size:13px;padding:8px;-webkit-line-clamp:3;line-clamp:3}.news-body{min-height:78px}.news-body h3{font-size:16px}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.article-listing-intro{padding:28px 0 8px}.article-listing-intro .article-categories{margin:16px 0 0}:root{--navy: var(--lm-navy);--yellow: var(--lm-yellow);--muted: #647287;--line: #e3e9ef;--site-surface: #f4f7fa;--site-text: #526176;--site-shadow: 0 8px 28px rgb(32 50 78 / 6%);--page-width: 1320px;--page-gutter: 40px;font-family:PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;color:var(--navy);background:#fff;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}::selection{color:var(--navy);background:#fceba4}p{color:var(--site-text)}h1,h2,h3{font-weight:650}h1,h2{letter-spacing:-.035em;text-wrap:balance}:focus-visible{outline:3px solid #38638b;outline-offset:4px}.wrap{width:min(var(--page-width),calc(100% - var(--page-gutter) * 2))}.btn{border-color:#dbe3eb;border-radius:9px;font-weight:600;line-height:1.5;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}.btn:hover{filter:none;border-color:#a9b9ca}.btn.navy:hover{background:#2d4564;border-color:#2d4564}.btn.yellow:hover{background:#f4c829;border-color:#f4c829}.text-btn{text-underline-offset:5px}.text-btn:hover{text-decoration:underline}.site-header{background:#fffffff5;border-bottom:1px solid var(--line);box-shadow:0 2px 12px #20324e08;backdrop-filter:blur(18px)}.site-header .header-inner{height:80px;gap:24px}.site-header .brand{gap:10px}.site-header .brand strong{font-size:23px;font-weight:750;letter-spacing:-.04em}.site-header .brand-logo{height:34px;max-width:120px}.site-header .header-inner .desktop-navigation{gap:clamp(14px,1.45vw,23px);font-size:15px;white-space:nowrap}.site-header nav a{color:#526176;transition:color .18s ease}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--navy)}.site-header .desktop-navigation a.active{font-weight:650}.site-header .desktop-navigation a.active:after{width:24px;height:3px;bottom:18px;left:calc(50% - 12px);border-radius:2px}.site-header .header-actions{gap:12px}.site-header .header-search{width:36px;height:36px}.site-header .header-search:hover{background:var(--site-surface)}.site-header .member-entry{width:auto;min-width:120px;gap:14px;font-size:14px}.site-header .member-entry .member-register{padding:9px 17px;border-radius:7px}.site-header .member-entry .member-register:hover{background:#f4c829}.site-header .mobile-navigation summary{padding:9px 13px;font-size:14px;border-radius:7px}.site-header .mobile-navigation summary::-webkit-details-marker{display:none}.site-header .mobile-navigation[open] summary{background:var(--site-surface)}.site-footer{padding:52px 0 36px;background:var(--navy);border-top:0}.site-footer .site-footer-inner{justify-content:space-between;gap:36px;align-items:start}.site-footer .site-footer-inner.has-qr{padding-right:0}.site-footer .site-footer-main{width:auto;flex:1;text-align:left}.site-footer .site-footer-brand{color:#fff;justify-content:start}.site-footer .site-footer-brand img{background:#fff;border-radius:50%}.site-footer .site-footer-brand strong{font-size:23px;letter-spacing:-.02em}.site-footer .footer-links{justify-content:flex-start;gap:12px 24px;margin-top:24px;font-size:14px}.site-footer .footer-links a{color:#dce4ef;line-height:1.7}.site-footer .footer-links a:hover{color:var(--yellow)}.site-footer .footer-links a:not(:last-child):after{content:none}.site-footer .site-footer-meta{justify-content:start;margin-top:24px;color:#b6c3d4;line-height:1.8}.site-footer .site-footer-copy{color:#afbdd0;margin-top:12px;line-height:1.8}.site-footer .site-footer-friends{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:10px;color:#afbdd0;font-size:13px;line-height:1.8}.site-footer .site-footer-friends a{color:#dce4ef}.site-footer .site-footer-friends a:hover{color:var(--yellow)}.site-footer .site-footer-qr{position:static;transform:none;gap:10px;color:#c8d3e1;flex-shrink:0}.site-footer .site-footer-qr img{width:108px;height:108px;padding:6px;border:0;border-radius:9px}.side-actions{border:1px solid var(--line);box-shadow:var(--site-shadow);border-radius:13px}.side-action{color:var(--site-text)}.side-action:hover,.side-action[aria-expanded=true]{color:var(--navy);background:var(--site-surface);border-radius:7px}.side-action-icon.consult{color:var(--navy);background:#fce99b}.side-action-icon.resource{color:var(--navy);background:#e5edf6}.resource-qr-panel{border:1px solid var(--line);box-shadow:var(--site-shadow)}.modal{border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 80px #0d223b2e}.overlay{background:#14263e75}.modal .auth-mark{background:#fbf3d1}@media(max-width:1496px)and (min-width:1181px){:root{--page-gutter: 88px}.site-header .wrap{width:calc(100% - 64px)}}@media(max-width:1180px){:root{--page-gutter: 32px}.site-header .header-inner .desktop-navigation{display:none}.site-header .mobile-navigation{display:block}.site-header .mobile-navigation[open] nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:absolute;top:100%;left:0;right:0;height:auto;padding:20px 32px;gap:6px 16px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 16px 28px #20324e14}.site-header .mobile-navigation nav a{height:auto;padding:12px;border-radius:6px}.site-header .mobile-navigation nav a[aria-current=page]{background:#fbf3d1;font-weight:600}.side-actions{right:12px;width:60px}}@media(max-width:760px){:root{--page-gutter: 20px}.site-header .header-inner{height:68px;gap:12px}.site-header .brand{gap:7px}.site-header .brand-logo{height:29px;max-width:80px}.site-header .brand strong{font-size:21px}.site-header .header-actions{gap:8px}.site-header .member-entry{min-width:0;gap:9px}.site-header .member-entry .member-register{padding:8px 12px}.site-header .header-search{width:30px;height:36px}.site-header .mobile-navigation[open] nav{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 20px}.site-footer{padding:36px 0 100px}.site-footer .site-footer-inner{flex-direction:column;gap:28px}.site-footer .footer-links{gap:10px 20px}.site-footer .site-footer-qr{align-items:start}.side-actions{top:auto;bottom:12px;right:12px;transform:none;width:auto;flex-direction:row;padding:4px;border-radius:12px}.side-action{width:65px;min-height:56px;gap:4px;font-size:11px;padding:6px 4px}.side-action+.side-action{border-top:0;border-left:1px solid var(--line)}.side-action-icon{width:25px;height:25px}.resource-qr-panel{top:auto;bottom:calc(100% + 12px);right:0;transform:none}}@media(max-width:380px){:root{--page-gutter: 16px}.site-header .header-inner{gap:6px}.site-header .header-actions{gap:3px}.site-header .brand strong{font-size:19px}.site-header .brand-logo{height:25px}.site-header .member-entry{gap:5px;font-size:13px}.site-header .member-entry .member-register{padding-inline:9px}.site-header .mobile-navigation summary{padding-inline:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.site-header nav a{transition:none}}.page-catalog,.project-detail,.article-layout,.skill-detail,.resource-page{color:#20324e}.portal-intro .breadcrumbs,.project-detail .breadcrumb,main.course-page .crumb{color:#526176;font-size:13px;line-height:1.7}.portal-intro:not(.article-listing-intro){padding-top:40px;padding-bottom:30px}.portal-intro h1{font-size:clamp(30px,3.3vw,44px);letter-spacing:-.035em;line-height:1.4;margin-block:20px 16px}.portal-intro>p,.skill-detail p,.resource-page p{color:#526176}.page-catalog .course-filters,.page-catalog .filter-panel{padding:18px 20px;border:1px solid #e3e9ef;border-radius:12px;background:#f4f7fa}.page-catalog .filter-row{padding:9px 0;gap:20px}.page-catalog .filter-options button,.page-catalog .categories button{color:#526176;border-radius:6px;transition:background-color .18s,color .18s}.page-catalog .filter-options button:hover,.page-catalog .categories button:hover{color:#20324e;background:#e9eef4}.page-catalog .filter-options button.active,.page-catalog .categories .selected{color:#20324e;background:#f7cf3e;font-weight:600}.page-catalog .category-popover{border:1px solid #e3e9ef;box-shadow:0 12px 32px #20324e12}.page-catalog .search,.page-catalog .select-wrap{background:#fff;border-color:#dbe3ec}.page-catalog .search:focus-within{outline:2px solid #20324e;outline-offset:3px}.page-catalog .result-heading,.page-catalog .results-bar{margin-top:32px;margin-bottom:20px;color:#526176}.page-catalog .result-heading{color:#20324e;font-size:20px}.page-catalog .result-heading small,.page-catalog .course-card-body .course-meta,.page-catalog .course-card-foot,.page-catalog .card-meta,.page-catalog .card-summary,.page-catalog .card-bottom{color:#526176}.page-catalog .course-browser .course-card,.page-catalog .project-card,.article-list .portal-card{border-color:#e3e9ef;border-radius:12px;box-shadow:none;transition:border-color .18s,box-shadow .18s}.page-catalog .course-browser .course-card:hover,.page-catalog .project-card:hover,.article-list .portal-card:hover{border-color:#b8c7d8;box-shadow:0 6px 20px #20324e09;transform:none}.page-catalog .project-card:focus-within{border-color:#20324e;box-shadow:0 0 0 2px #20324e1a}.page-catalog .course-card-body{padding:20px}.page-catalog .course-card-body h3{color:#20324e;font-size:17px;font-weight:600;line-height:1.55;height:auto;min-height:3.1em}.page-catalog .course-card-foot{padding-top:14px;border-top:1px solid #edf1f5}.page-catalog .course-card-foot strong{color:#20324e;font-size:18px;font-variant-numeric:tabular-nums}.page-catalog .cover-pad{background:#edf2f7}.page-catalog .level,.project-detail .level{background:#edf2f7;color:#526176}.page-catalog .tags span,.project-detail .tags span{background:#f4f7fa;color:#526176}.page-catalog .card-bottom{background:#fff}.page-catalog.catalog{background:#f4f7fa;box-shadow:0 0 0 100vmax #f4f7fa;padding-top:56px}.hero:has(.hero-proof){background:#f4f7fa}.hero:has(.hero-proof) .hero-art:before{background:#e5edf5;opacity:.8}.hero:has(.hero-proof) .hero-browser,.hero:has(.hero-proof) .art-ticket{transform:none;animation:none;border-color:#e3e9ef;box-shadow:0 10px 32px #20324e0c}.hero:has(.hero-proof) .hero-note,.hero:has(.hero-proof) .hero-proof,.hero:has(.hero-proof) .art-label{color:#526176}.hero:has(.hero-proof) .ticket-icon{background:#edf2f7;color:#526176}.materials .material-item:nth-child(n){--material-accent: #526176;--material-tint: #edf2f7;background:#fff;border-color:#e3e9ef;box-shadow:none}.project-detail .detail-heading :is(h1,h2){font-size:clamp(30px,3vw,42px);line-height:1.4;letter-spacing:-.035em}.project-detail .detail-heading p,.project-detail .features,.project-detail .tech-stack,.project-detail .detail-aside p,.project-detail .detail-aside small{color:#526176}.project-detail .detail-grid{gap:36px;margin-top:32px}.project-detail .gallery{border-color:#e3e9ef;border-radius:12px}.project-detail .gallery-image{background:#f4f7fa}.project-detail .detail-aside{padding:30px;background:#f4f7fa;border-color:#e3e9ef;border-radius:12px}.project-detail .aside-icon{color:#20324e;background:#e7edf4}.project-detail .features svg,.project-detail .detail-aside li svg{color:#5d758f}main.course-page{background:#f4f7fa;padding-top:32px}main.course-page .course-hero,main.course-page .content,main.course-page .aside-card{border-color:#e3e9ef;box-shadow:none;border-radius:12px}main.course-page .intro{padding:26px 32px}main.course-page .intro h1{font-size:clamp(26px,2.3vw,34px);line-height:1.45;letter-spacing:-.025em}main.course-page .subtitle,main.course-page .meta,main.course-page .summary,main.course-page .teacher-card p,main.course-page .assurances{color:#526176}main.course-page .meta{padding-block:14px;margin-top:18px}main.course-page .course-price strong,main.course-page .related small{color:#20324e}main.course-page .course-price strong.free{color:#326b53}main.course-page .panel{padding:36px}main.course-page .section-head i,main.course-page .highlights li,main.course-page .help{background:#f4f7fa}main.course-page .section-head i{color:#20324e;border-radius:9px}main.course-page .section-head h2,main.course-page .catalog-head h2,main.course-page .reviews-title{font-size:24px;letter-spacing:-.025em}main.course-page .highlights li{border-left-color:#c8d4e2}main.course-page .highlights b,main.course-page .chapters summary>span{color:#526176}main.course-page .chapters summary,main.course-page .review-head{background:#f4f7fa}main.course-page .chapters li .lesson-trial{border-color:#d5dfe9;color:#20324e;background:#f4f7fa}main.course-page .chapters li .lesson-trial:hover{background:#f7cf3e;border-color:#f7cf3e}.article-listing-intro{padding-top:32px;padding-bottom:28px}.article-listing-intro .article-categories{margin-top:22px;gap:8px}.article-listing-intro .article-categories a{border-color:#e3e9ef;color:#526176;font-size:15px;padding:9px 16px}.article-listing-intro .article-categories a:hover{border-color:#bdccdc;background:#f4f7fa}.article-listing-intro .article-categories a[aria-current]{background:#f7cf3e;border-color:#f7cf3e;color:#20324e}.article-list .portal-card-body{padding:24px}.article-list .portal-card h2{font-size:19px;line-height:1.6;height:auto;min-height:3.2em}.article-list .portal-meta,.article-list .portal-card-body>p{color:#526176}.article-list .portal-meta{font-size:13px}.article-layout{max-width:1200px;gap:64px}.article-body h1{margin-top:8px;font-size:clamp(30px,3.1vw,42px);line-height:1.5;letter-spacing:-.025em}.article-body .portal-meta{font-size:13px;color:#526176;gap:12px 20px}.article-body header{padding-bottom:24px;border-bottom:1px solid #e3e9ef}.article-summary{padding:22px 24px;border-left:3px solid #aebfd2;background:#f4f7fa;color:#526176;border-radius:0 8px 8px 0;line-height:1.9}.article-body .article-prose{color:#33445a;font-size:17px;line-height:2}.article-prose h2,.article-prose h3{color:#20324e;line-height:1.6;letter-spacing:-.02em}.article-prose h2{font-size:27px}.article-prose h3{font-size:22px}.article-prose pre,.skill-detail pre{border:1px solid #e3e9ef;border-radius:10px;background:#f4f7fa;font-size:.88em;line-height:1.8}.article-prose blockquote{margin-inline:0;padding:12px 24px;border-left:3px solid #aebfd2;background:#f4f7fa}.article-prose :is(th,td){border:1px solid #e3e9ef;padding:12px 16px}.article-prose th{background:#f4f7fa;color:#20324e}.article-aside{color:#526176;font-size:14px;border-left-color:#e3e9ef;padding-left:24px}.article-aside strong{color:#20324e;font-size:15px}.article-toc a:hover{color:#20324e;text-decoration:underline;text-underline-offset:4px}.article-tag-cloud a,.article-tags a,.article-subjects a{background:#f4f7fa;border-color:#e3e9ef;color:#526176}.skill-detail>section{padding-top:28px;border-top:1px solid #e3e9ef}.skill-detail .demo-notice,.portal-intro .demo-notice{border-left-color:#aebfd2;background:#f4f7fa;color:#526176}div.curriculum-page{background:#f4f7fa}.curriculum-page .curriculum-hero{padding-top:38px;padding-bottom:34px}.curriculum-page .curriculum-heading h1{font-size:clamp(28px,3vw,42px);line-height:1.4;letter-spacing:-.035em}.curriculum-page .curriculum-total{border-left-color:#ced9e5}.curriculum-page .curriculum-navigation{box-shadow:0 3px 12px #20324e05;border-color:#e3e9ef}.curriculum-page .curriculum-modules a{font-size:13px;padding:9px 10px;color:#526176;line-height:1.65}.curriculum-page .curriculum-modules a[aria-current=location]{color:#fff;background:#20324e}.curriculum-page .curriculum-module{border-color:#e3e9ef;border-radius:12px;padding:36px;margin-bottom:24px}.curriculum-page .curriculum-number{font-size:44px;color:#68829f;text-decoration:none;font-variant-numeric:tabular-nums}.curriculum-page .curriculum-chapter h3{min-width:0;margin-bottom:14px;line-height:1.7;overflow-wrap:anywhere}.curriculum-page .curriculum-chapter h3>span{flex-shrink:0}.curriculum-page .curriculum-module-heading>div{min-width:0;overflow-wrap:anywhere}.curriculum-page .curriculum-chapter ul{color:#526176;line-height:1.95}.curriculum-page .curriculum-chapter li::marker{color:#8fa4bc}.curriculum-page .curriculum-module-footer button{background:#f4f7fa;border:1px solid #dbe3ec;color:#20324e}.curriculum-page .curriculum-module-footer button:hover{background:#f7cf3e;border-color:#f7cf3e}div.landing{--lp-muted: #526176}div.landing .lp-hero{padding-top:26px;padding-bottom:64px;background:#f4f7fa;border-bottom-color:#e3e9ef}div.landing h1{font-size:clamp(36px,4vw,56px);letter-spacing:-.045em;line-height:1.35}div.landing h2{font-size:clamp(28px,3vw,36px);letter-spacing:-.025em}div.landing .lp-label,div.landing .cp-assurance,div.landing .cp-select-mark,div.landing .cp-channels small,div.landing .cp-steps li>span{color:#526176}div.landing .lp-lead{line-height:1.9}div.landing .lp-button{background:#f7cf3e;color:#20324e;border-color:#f7cf3e;border-radius:8px;transition:background-color .18s,border-color .18s}div.landing .lp-button:hover{background:#eac235;border-color:#eac235}div.landing .kb-preview,div.landing .qb-demo,div.landing .cp-intake{border:1px solid #dbe3ec;box-shadow:0 10px 32px #20324e08;border-radius:12px;transform:none}div.landing .kb-preview-bar,div.landing .qb-demo-footer{background:#f9fafc;border-color:#e3e9ef}div.landing .kb-preview-bar i{background:#7a91ab}div.landing .qb-demo-top>span:first-child{color:#fff}div.landing .qb-subjects{color:#526176;gap:10px 18px}div.landing .qb-benefits article>span{background:#edf2f7;color:#526176;border-radius:10px}div.landing .qb-product-visual,div.landing .cp-wechat,div.landing .cp-unavailable,div.landing .cp-flow{background:#f4f7fa}div.landing .cp-options button{border-color:#dbe3ec}div.landing .cp-options button:hover{background:#f4f7fa;border-color:#aebfd2}div.landing .cp-options button[aria-pressed=true]{background:#fff9df;border-color:#e1bf44}div.landing .cp-steps li,div.landing .cp-channels>a,div.landing .kb-paths>a{border-color:#dbe3ec}div.landing .lp-band .lp-label{color:#d3dce8}div.kb-page .catalog{background:#fff;box-shadow:none;clip-path:none}div.kb-page .cat-item{border-color:#e3e9ef}div.kb-page .cat-item .title{font-size:15px}div.kb-page .cat-item .cat-body{color:#526176}div.kb-page .cat-head:hover{color:#466586}:is(.page-catalog,.project-detail,.article-layout,.skill-detail,.curriculum-page,.landing,.course-page) :is(a,button,summary,select):focus-visible{outline:2px solid #20324e;outline-offset:4px}div.landing .lp-band :is(a,button):focus-visible{outline-color:#f7cf3e}@media(max-width:1100px){.article-layout{gap:32px}.page-catalog .course-card-body{padding:16px}main.course-page .panel{padding:30px}.curriculum-page .curriculum-modules a{font-size:12px;padding:7px}}@media(max-width:760px){.portal-intro:not(.article-listing-intro),.article-listing-intro{padding-top:24px;padding-bottom:24px}.page-catalog .course-filters,.page-catalog .filter-panel{padding:12px 14px}.page-catalog .filter-row{gap:10px}.page-catalog .course-card-body{padding:14px 12px}.page-catalog .course-card-body h3{font-size:15px}.page-catalog .course-card-foot{gap:8px;flex-wrap:wrap}.page-catalog.catalog{padding-top:36px}.project-detail .detail-grid{gap:24px}.project-detail .detail-aside{padding:24px}main.course-page{padding-top:22px}main.course-page .intro,main.course-page .panel{padding:24px 20px}main.course-page .intro h1{font-size:27px}main.course-page .section-head h2,main.course-page .catalog-head h2{font-size:22px}.article-listing-intro .article-categories a{padding:8px 12px;font-size:14px}.article-list .portal-card-body{padding:20px}.article-summary{padding:18px 20px}.article-body .article-prose{font-size:16px;line-height:1.95}.article-prose h2{font-size:24px}div.landing .lp-hero{padding-top:22px;padding-bottom:40px}div.landing h1{font-size:clamp(32px,8vw,42px);letter-spacing:-.035em}div.landing .qb-demo{margin-right:0}.curriculum-page .curriculum-hero{padding-top:26px;padding-bottom:24px}.curriculum-page .curriculum-module{padding:22px}.curriculum-page .curriculum-number{font-size:34px}}@media(prefers-reduced-motion:reduce){.page-catalog .course-card,.page-catalog .project-card,.article-list .portal-card,div.landing .lp-button{transition:none}}.member-entry{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:16px}.member-entry>button{white-space:nowrap;padding:9px 4px}.member-entry .member-register{background:var(--yellow);border-radius:8px;padding:10px 17px;font-weight:600}.member-name{display:flex;align-items:center;gap:6px;max-width:130px;overflow:hidden;white-space:nowrap}.member-status{position:absolute;right:20px;top:100%;font-size:13px;background:#fff}.member-status:empty{display:none}.member-auth{color:var(--navy)}.auth-heading{display:flex;align-items:center;gap:12px;margin-bottom:22px;padding-right:36px}.auth-heading-text{min-width:0}.member-auth h2{font-size:24px;letter-spacing:0;margin:0;line-height:1.3}.auth-mark{display:inline-flex;flex-shrink:0;background:#fff6cc;border-radius:12px;padding:11px}.member-auth .auth-intro{font-size:16px;margin:4px 0 0}.auth-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:22px;gap:28px}.auth-tabs button{padding:0 0 12px;font-size:16px;color:#66758a}.auth-tabs [aria-pressed=true]{color:var(--navy);border-bottom:3px solid var(--yellow);font-weight:600}.member-auth fieldset{border:0;padding:0;margin:0;min-width:0}.member-auth label{display:block;font-size:15px;font-weight:600;margin:16px 0 8px}.member-auth input:not([type=checkbox]){width:100%;min-width:0;height:46px;border:1px solid #d9dfe8;border-radius:8px;padding:0 13px;background:#fff;color:var(--navy);font-size:16px}.member-auth input::placeholder{color:#8792a2}.member-auth input:focus{outline:2px solid #20324e;outline-offset:2px}.member-auth button:focus-visible,.member-entry button:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.auth-phone,.auth-password,.auth-code{display:flex;align-items:center;gap:10px}.auth-phone{border:1px solid #d9dfe8;border-radius:8px;gap:0}.auth-phone>span{padding:0 12px;border-right:1px solid var(--line);font-size:16px}.member-auth .auth-phone input{border:0}.auth-password{position:relative}.auth-password input{padding-right:48px!important}.auth-password button{position:absolute;right:10px;display:flex;padding:6px}.auth-code>button{flex-shrink:0;background:#f3f5f8;border-radius:8px;min-width:120px;height:46px;font-size:15px;font-weight:600}.member-auth small{display:block;font-size:13px;color:#68758a;line-height:1.6;margin-top:8px}.member-auth .auth-choice{display:flex;gap:8px;align-items:center;font-weight:400}.auth-choice input{accent-color:var(--navy);width:16px;height:16px}.auth-challenge{background:#f7f9fc;border:1px solid var(--line);border-radius:10px;padding:12px;margin-top:16px}.auth-challenge label{margin-top:0}.auth-code .captcha-image{padding:0;overflow:hidden;width:130px}.captcha-image img{width:100%;height:46px;object-fit:contain}.auth-send{font-size:15px;text-decoration:underline;padding:10px 0 0}.auth-submit{width:100%;background:var(--yellow);color:var(--navy);border-radius:8px;height:48px;margin-top:24px;font-weight:600}.member-auth .auth-error{font-size:15px;line-height:1.6;color:#b42318;background:#fff3f1;border-radius:6px;padding:10px 12px;margin:16px 0 -8px}.member-auth .auth-message{font-size:15px;color:#24613e;margin:16px 0 -8px}.auth-forgot{display:flex;justify-content:space-between;gap:12px;margin-top:15px;font-size:13px}.auth-forgot button{padding:0}.auth-forgot span{color:#68758a}.auth-switch{border-top:1px solid var(--line);margin-top:26px;padding-top:20px;text-align:center;font-size:16px;color:#68758a}.auth-switch button{font-weight:600;color:var(--navy);margin-left:7px}.site-header .desktop-navigation{gap:16px}@media(max-width:1100px)and (min-width:901px){.site-header .desktop-navigation{gap:10px;font-size:15px}}@media(max-width:540px){.member-entry{gap:8px}.member-entry .member-register{padding:8px 10px}.member-name{max-width:95px;font-size:13px}.modal:has(.member-auth){padding:25px 22px}.auth-heading{gap:10px}.member-auth h2{font-size:22px}.auth-forgot{flex-wrap:wrap}.auth-code>button{min-width:105px}.auth-code .captcha-image{width:115px}}.member-entry{width:176px;justify-content:flex-end}.member-entry-loading{display:block;width:130px;height:16px;border-radius:8px;background:#edf0f4}@media(max-width:540px){.member-entry{width:115px}.member-entry-loading{width:95px}}.auth-existing-login{margin-left:8px;text-decoration:underline;font-weight:600;color:var(--navy)}.auth-logout-actions{display:flex;gap:12px;margin-top:24px}.auth-logout-actions>button{flex:1;height:46px;border-radius:8px;background:#f3f5f8}.auth-logout-actions>.auth-submit{margin:0;background:var(--yellow)}.auth-oauth{margin-top:20px;text-align:center}.auth-oauth>span{display:flex;align-items:center;gap:12px;color:#8792a2;font-size:13px}.auth-oauth>span:before,.auth-oauth>span:after{content:"";flex:1;border-top:1px solid var(--line)}.auth-oauth>button{width:100%;height:46px;margin-top:14px;border:1px solid #07c160;border-radius:8px;color:#07843f;font-size:15px;font-weight:600;background:#f2fbf6}.auth-oauth>button:disabled{opacity:.6}.wechat-callback{display:flex;justify-content:center;padding:56px 16px}.wechat-callback .member-auth{width:100%;max-width:440px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:32px}.wechat-back{display:flex;align-items:center;justify-content:center}.member-header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.member-header-actions .header-cart-button{display:inline-flex;align-items:center;gap:6px;padding:9px 4px;white-space:nowrap;font-size:14px;color:var(--navy)}.header-cart-icon{display:inline-flex;position:relative}.header-cart-button:hover{color:#997500}.header-cart-button:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.header-cart-icon .cart-badge{position:absolute;top:-10px;right:-10px;min-width:16px;padding:1px 4px;border-radius:10px;background:var(--yellow);color:var(--navy);font-size:10px;font-style:normal;line-height:14px;text-align:center}@media(max-width:540px){.member-header-actions{gap:8px}.header-cart-button>span:last-child{display:none}}.member-name .member-avatar-small{display:block;width:24px;height:24px;min-width:24px;max-width:24px;max-height:24px;flex:0 0 24px;object-fit:cover;object-position:center;border-radius:50%;overflow:hidden}.learning-resources[data-astro-cid-ctg3m53h]{position:relative;flex-shrink:0}.learning-resources[data-astro-cid-ctg3m53h]>summary[data-astro-cid-ctg3m53h]{display:flex;align-items:center;justify-content:center;list-style:none;gap:5px;height:80px;white-space:nowrap;font-size:15px;position:relative;cursor:pointer;color:#6a7586}.learning-resources[data-astro-cid-ctg3m53h]>summary[data-astro-cid-ctg3m53h]::-webkit-details-marker{display:none}.learning-resources[data-astro-cid-ctg3m53h][open]>summary[data-astro-cid-ctg3m53h],.learning-resources[data-astro-cid-ctg3m53h]>summary[data-astro-cid-ctg3m53h].resource-active{color:var(--navy)}.learning-resources[data-astro-cid-ctg3m53h]>summary[data-astro-cid-ctg3m53h].resource-active:after{content:"";position:absolute;bottom:0;left:0;right:18px;height:3px;background:var(--yellow)}.learning-resources[data-astro-cid-ctg3m53h][open]>summary[data-astro-cid-ctg3m53h]>svg[data-astro-cid-ctg3m53h]{transform:rotate(180deg)}.learning-resources[data-astro-cid-ctg3m53h]>summary[data-astro-cid-ctg3m53h]:focus-visible{outline:2px solid var(--navy);outline-offset:3px}.site-header[data-astro-cid-ctg3m53h] .resource-dropdown[data-astro-cid-ctg3m53h]{height:auto;align-items:stretch;position:absolute;left:0;top:100%;width:176px;padding:6px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 40px #20324e20;z-index:30;display:flex;flex-direction:column;gap:2px}.site-header[data-astro-cid-ctg3m53h] .resource-dropdown[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:7px;height:auto;color:var(--navy)}.resource-dropdown[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:hover,.resource-dropdown[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h][aria-current=page]{background:#f4f6f9}.resource-dropdown[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:focus-visible{outline:2px solid var(--navy);outline-offset:-2px}.resource-dropdown[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h] strong[data-astro-cid-ctg3m53h]{display:block;font-size:15px;font-weight:600}.resource-dropdown[data-astro-cid-ctg3m53h] a[data-astro-cid-ctg3m53h]:after{display:none!important}.mobile-resource-group[data-astro-cid-ctg3m53h]{display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line);margin-top:8px;padding-top:10px}.mobile-resource-group[data-astro-cid-ctg3m53h]>strong[data-astro-cid-ctg3m53h]{font-size:13px;color:#7a8698;padding:8px 12px}.mobile-resource-group[data-astro-cid-ctg3m53h]>a[data-astro-cid-ctg3m53h]{display:flex;align-items:center;gap:6px}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media(prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}[data-astro-transition-scope]{animation:none!important}}.support-launch{position:fixed;right:0;bottom:0;z-index:1001;display:flex;align-items:center;gap:9px;min-width:198px;height:40px;padding:0 12px;border:0;border-radius:8px 0 0;background:#1267ce;color:#fff;box-shadow:0 8px 30px #102f5960;cursor:pointer;font-size:14px;font-weight:700}.support-launch>span{flex:1;text-align:left}.support-unread{border-radius:15px;background:#ef4444;color:#fff;padding:2px 7px;font-size:11px}.support-backdrop{position:fixed;inset:0;z-index:1002;pointer-events:none}.support-backdrop.expanded{display:grid;place-items:center;padding:24px;background:#091d36a8;pointer-events:auto}.support-chat{position:absolute;right:0;bottom:0;display:flex;flex-direction:column;width:min(360px,100vw);height:min(450px,calc(100dvh - 24px));overflow:hidden;border:1px solid #ccd8e5;border-bottom:0;border-radius:8px 0 0;background:#fff;color:#17304d;box-shadow:0 12px 48px #071f4055;pointer-events:auto;text-align:left;font-family:inherit}.support-chat.expanded{position:relative;right:auto;bottom:auto;width:min(1040px,calc(100vw - 48px));height:min(680px,calc(100dvh - 48px));border:0;border-radius:12px}.support-header{display:flex;align-items:center;gap:7px;flex:0 0 36px;padding:3px 7px;background:#1476db;color:#fff}.support-avatar{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:50%;background:#f9d74c;color:#142d46;font-size:14px;font-weight:800}img.support-avatar{object-fit:contain;background:#fff}.support-heading{min-width:0;flex:1}.support-heading h2{overflow:hidden;margin:0;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.2}.support-header button{display:grid;place-items:center;width:26px;height:26px;border:0;background:transparent;color:#fff;cursor:pointer}.support-header button:hover{background:#ffffff2b}.support-columns{display:flex;min-height:0;flex:1}.support-main{display:flex;min-width:0;min-height:0;flex:1;flex-direction:column}.support-phone{display:flex;align-items:center;gap:5px;min-height:32px;padding:3px 6px;border-bottom:1px solid #e2e8f0;font-size:10px}.support-phone span{display:flex;align-items:center;gap:3px;white-space:nowrap}.support-phone input{min-width:0;flex:1;height:24px;padding:0 5px;border:1px solid #d1dce8;border-radius:3px;font:inherit;font-size:12px}.support-phone input::placeholder{color:#8190a4;font-size:12px;opacity:1}.support-phone button{height:24px;padding:0 6px;border:0;border-radius:3px;background:#e43c4a;color:#fff;white-space:nowrap;cursor:pointer;font-size:11px;font-weight:700}.support-phone button:disabled{opacity:.5}.support-notice{margin:0;padding:6px 10px;background:#effaf3;color:#197043;font-size:11px}.support-history{min-height:0;flex:1;overflow:auto;padding:12px 14px;overscroll-behavior:contain}.support-message{display:flex;flex-direction:column;align-items:flex-start;margin:0 0 15px}.support-message.mine{align-items:flex-end}.support-message small{margin:3px 0;color:#7890a6;font-size:10px}.support-message time{margin-left:5px}.support-message>div{max-width:90%;padding:8px 11px;border-radius:3px 11px 11px;background:#eff5fa;overflow-wrap:anywhere;white-space:pre-wrap;font-size:12px;line-height:1.6}.support-message.mine>div{border-radius:11px 3px 11px 11px;background:#dceefa}.support-message img{display:block;max-width:100%;max-height:200px;border-radius:3px}.support-message-image{display:grid;place-items:center;min-width:40px;min-height:40px;padding:0;border:0;background:transparent;cursor:zoom-in}.support-message-image img{display:block}.support-image-preview{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:48px 24px;background:#07182de8;pointer-events:auto}.support-image-preview>img{display:block;min-width:min(180px,60vw);min-height:min(180px,60dvh);max-width:min(96vw,1200px);max-height:calc(100dvh - 96px);object-fit:contain;background:#fff;border-radius:4px;box-shadow:0 12px 50px #0006}.support-image-preview-close{position:absolute;top:14px;right:16px;display:grid;place-items:center;width:36px;height:36px;border:1px solid #ffffff80;border-radius:50%;background:#ffffff1c;color:#fff;cursor:pointer}.support-link,.support-retry{align-self:center;padding:6px;border:0;background:transparent;color:#1771c8;cursor:pointer;font-size:11px}.support-wechat{position:relative;display:flex;align-items:center;gap:10px;padding:6px 13px;border-top:1px solid #edf1f5;font-size:11px}.support-wechat img{width:72px;height:72px;object-fit:contain}.support-wechat button{position:absolute;top:4px;right:5px;border:0;background:transparent;cursor:pointer}.support-guidance{margin:0;padding:8px 10px;border-top:1px solid #f6dfb5;background:#fff9ee;color:#75501b;font-size:11px;line-height:1.45}.support-error{margin:0;padding:6px 10px;background:#fff1f1;color:#ad2636;font-size:11px}.support-actions{padding:6px 9px;border-top:1px solid #e7ecf3;border-bottom:1px solid #e7ecf3}.support-actions>div{display:flex;gap:5px;overflow:auto;scrollbar-width:thin}.support-actions button{flex:none;padding:3px 9px;border:1px solid #ccd8e8;border-radius:15px;background:#fff;color:#35516f;cursor:pointer;font-size:11px;line-height:1.4}.support-actions button:hover{border-color:#1476db;color:#1476db}.support-compose{display:flex;flex-direction:column;min-height:90px}.support-compose textarea{min-height:48px;width:100%;flex:1;resize:none;padding:8px 11px;border:0;outline:none;background:#fff;color:#17304d;font:inherit;font-size:12px}.support-compose>div{display:flex;align-items:center;gap:8px;padding:4px 9px 8px}.support-compose small{flex:1;color:#8b9cae;font-size:10px}.support-compose button{display:flex;align-items:center;gap:4px;padding:5px 12px;border:0;border-radius:3px;background:#1476db;color:#fff;cursor:pointer;font-size:11px}.support-compose button:disabled{opacity:.5;cursor:not-allowed}.support-about{width:30%;min-width:220px;overflow:auto;padding:22px 20px;border-left:1px solid #e0e8f0;background:#fbfdff}.support-about h3{margin:0 0 20px;padding-bottom:10px;border-bottom:1px solid #d9e6f3;font-size:17px}.support-about p{margin:0 0 18px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.7}.support-about a{color:#1476db}.support-about>img{display:block;max-width:100%;margin:12px auto;border-radius:4px}.support-about-qr{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:25px;padding-top:20px;border-top:1px solid #d9e6f3;font-size:12px}.support-about-qr img{width:140px;max-width:100%}.support-chat.expanded .support-phone{padding:5px 12px}.support-chat.expanded .support-phone span{font-size:11px}.support-chat.expanded .support-history{padding:18px}.support-chat.expanded .support-message>div{font-size:13px}.support-chat.expanded .support-compose{min-height:135px}@media(max-width:700px){.support-launch{right:0;bottom:0;min-width:190px}.support-chat{right:0;width:min(360px,100vw);height:min(450px,calc(100dvh - 12px))}.support-backdrop.expanded{padding:8px}.support-chat.expanded{width:100%;height:calc(100dvh - 16px)}.support-about{width:38%;min-width:0;padding:16px 10px}.support-about h3{font-size:14px}.support-about p{font-size:11px}.side-actions{left:10px!important;right:auto!important}}@media(max-width:480px){.support-chat.expanded .support-about{display:none}.support-phone span{font-size:9px}.support-compose small{display:none}}.resource-promo-trigger{position:fixed;right:14px;bottom:68px;z-index:55;width:130px;padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 8px 12px rgb(54 37 18 / 18%));transition:transform .18s ease}.resource-promo-trigger:hover{transform:translateY(-4px) scale(1.03)}.resource-promo-trigger:focus-visible{outline:3px solid #2563eb;outline-offset:3px;border-radius:12px}.resource-promo-trigger img{display:block;width:100%;height:auto}.resource-promo-overlay{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:24px;background:#0c1321a8}.resource-promo-dialog{position:relative;width:min(1100px,96vw,calc((100dvh - 48px) * 1509 / 1042))}.resource-promo-art{position:relative;width:100%}.resource-promo-background{display:block;width:100%;height:auto}.resource-promo-qr{position:absolute;left:67.8%;top:52.8%;width:21.2%;aspect-ratio:1;object-fit:contain;background:#fff}.resource-promo-qr-empty{display:grid;place-items:center;color:#a8a8a8;font-size:clamp(8px,1.3vw,16px)}.resource-promo-close{position:absolute;right:1%;top:1%;z-index:1;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:#fff;color:#28323d;cursor:pointer;box-shadow:0 3px 12px #0003}.resource-promo-close:focus-visible{outline:3px solid #2563eb}@media(max-width:760px){.resource-promo-trigger{right:12px;bottom:84px;width:92px}.resource-promo-overlay{padding:8px}.resource-promo-dialog{width:min(96vw,calc((100dvh - 20px) * 1509 / 1042))}.resource-promo-close{width:30px;height:30px;right:0;top:0}}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}
