:root{--ink:#15171c;--ink-2:#334155;--ink-3:#475569;--ink-4:#64748b;--ink-5:#94a3b8;--line:#eef0f3;--line-strong:#e2e8f0;--accent:#7c3aed;--accent-deep:#6d28d9;--accent-bright:#8b5cf6;--accent-soft:#f5f3ff;--accent-line:#ddd6fe;--blue:#2563eb;--teal:#0d9488;--amber:#d97706;--green:#059669;--page:#f8fafc;--surface:#fff;--surface-soft:#fbfcfe;--radius-card:16px;--radius-card-lg:22px;--radius-btn:12px;--radius-chip:999px;--shadow-card:0 4px 14px #0f172a0a;--shadow-card-hover:0 14px 32px #4c1d951a, 0 4px 14px #0f172a0a;--shadow-float:0 28px 70px #4c1d9524;--font-sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", "Cascadia Code", Consolas, "Courier New", monospace;--container:1200px;--header-h:64px}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--page);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;height:auto}h1,h2,h3,h4,p{overflow-wrap:break-word}::selection{background:var(--accent-line);color:var(--accent-deep)}.container{width:min(var(--container),100% - 48px);margin:0 auto}.text-gradient{background:linear-gradient(120deg,#7c3aed 8%,#2563eb 58%,#0d9488);color:#0000;-webkit-background-clip:text;background-clip:text}.btn{border-radius:var(--radius-btn);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:11px 22px;font-size:14px;font-weight:600;line-height:1.2;transition:transform .16s,box-shadow .16s,background .16s,border-color .16s;display:inline-flex}.btn svg{width:16px;height:16px}.btn--primary{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 8px 20px #6d28d93d}.btn--primary:hover{transform:translateY(-1px);box-shadow:0 12px 26px #6d28d952}.btn--ghost{background:var(--surface);border-color:var(--line-strong);color:var(--ink-2)}.btn--ghost:hover{border-color:var(--accent-line);color:var(--accent-deep);background:var(--accent-soft)}.btn--dark{color:#fff;background:#15171c}.btn--dark:hover{background:#24272f;transform:translateY(-1px)}.btn--sm{border-radius:10px;padding:8px 14px;font-size:13px}.btn--lg{border-radius:13px;padding:13px 26px;font-size:15px}.btn--block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn--link{color:var(--accent-deep);background:0 0;border:0;padding:0;font-size:13.5px;font-weight:600}.site-header{z-index:40;-webkit-backdrop-filter:saturate(180%)blur(14px);backdrop-filter:saturate(180%)blur(14px);border-bottom:1px solid var(--line);background:#ffffffe0;position:sticky;top:0}.site-header__inner{height:var(--header-h);gap:26px}.brand,.site-header__inner{align-items:center;display:flex}.brand{letter-spacing:-.2px;color:var(--ink);flex:none;gap:10px;font-size:16px;font-weight:800}.brand__mark{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:10px;place-items:center;width:32px;height:32px;display:grid;box-shadow:0 5px 14px #6d28d942}.brand__mark svg{width:17px;height:17px}.brand__sub{color:var(--ink-5);letter-spacing:0;font-size:11px;font-weight:500;display:none}.site-nav{align-items:center;gap:2px;display:flex}.site-nav a{color:var(--ink-3);border-radius:9px;align-items:center;gap:6px;padding:7px 12px;font-size:14px;transition:color .14s,background .14s;display:inline-flex}.nav-icon{stroke-width:1.9px;flex:none;width:22px;height:22px}.nav-icon--violet{color:#7c3aed}.nav-icon--blue{color:#2563eb}.nav-icon--orange{color:#ea580c}.nav-icon--green{color:#059669}.nav-icon--cyan{color:#0891b2}.nav-icon--gold{color:#d97706}.site-nav a.router-link-active,.site-nav a:hover{background:var(--accent-soft);color:var(--accent-deep)}.site-nav a.router-link-active{font-weight:600}.site-header__spacer{flex:1}.site-header__actions{flex:none;align-items:center;gap:8px;display:flex}.header-link{color:var(--ink-4);border-radius:8px;padding:6px 10px;font-size:13px}.header-link:hover{color:var(--accent-deep);background:var(--accent-soft)}.header-user{align-items:center;gap:10px;display:flex}.avatar-wrap{flex:none;display:inline-flex;position:relative}.avatar-crown{border:1.5px solid var(--surface);color:#fff;background:#f59e0b;border-radius:50%;place-items:center;width:15px;height:15px;display:grid;position:absolute;bottom:-4px;right:-5px}.avatar-crown svg{width:8px;height:8px}.avatar{background:var(--accent-soft);border:1px solid var(--accent-line);width:30px;height:30px;color:var(--accent-deep);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.avatar img{-o-object-fit:cover;object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.header-user__name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;color:var(--ink-3);font-size:13px;overflow:hidden}.menu-toggle{border:1px solid var(--line-strong);background:var(--surface);width:38px;height:38px;color:var(--ink-2);border-radius:10px}.header-icon-btn,.menu-toggle{justify-content:center;align-items:center;display:none}.header-icon-btn{width:34px;height:34px;color:var(--ink-3);cursor:pointer;background:0 0;border:0}.header-icon-btn svg{width:21px;height:21px}.mobile-nav{border-top:1px solid var(--line);padding:8px 0 16px;display:none}.mobile-nav a{color:var(--ink-3);border-radius:9px;align-items:center;gap:6px;padding:10px 12px;font-size:14px;display:flex}.mobile-nav a.router-link-active{background:var(--accent-soft);color:var(--accent-deep);font-weight:600}.mobile-nav__auth{gap:8px;padding:10px 12px 0;display:flex}.home-hero{isolation:isolate;background:linear-gradient(#fff,#f8fafc);position:relative;overflow:hidden}.home-hero:before{content:"";z-index:-1;background:radial-gradient(circle at 12% 18%,#ffedd5d9,#0000 24%),radial-gradient(circle at 62% 8%,#dbeafecc,#0000 26%),radial-gradient(circle at 88% 62%,#ede9fed9,#0000 24%),radial-gradient(circle at 38% 72%,#ccfbf180,#0000 22%);height:120%;position:absolute;inset:-30% -10% auto}.home-hero__inner{text-align:left;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:center;gap:56px;padding:34px 0 32px;display:grid;position:relative}.home-hero__content{max-width:680px}.hero-eyebrow{border:1px solid var(--accent-line);color:var(--accent-deep);letter-spacing:.6px;background:#ffffffd1;border-radius:999px;align-items:center;padding:5px 12px;font-size:12px;font-weight:600;display:inline-flex}.home-hero h1{letter-spacing:-1px;color:var(--ink);margin:12px 0 0;font-size:calc(clamp(28px,3.2vw,40px));font-weight:800;line-height:1.16}.hero-accent{color:var(--accent-deep)}.hero__desc{max-width:560px;color:var(--ink-4);margin:12px 0 0;font-size:14.5px;line-height:1.65}.hero__actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:18px;margin-top:18px;display:flex}.hero-link{color:var(--ink-3);align-items:center;gap:5px;padding:8px 4px;font-size:14px;font-weight:600;display:inline-flex}.hero-link:hover{color:var(--accent-deep)}.hero-link svg{width:14px;height:14px}.hero-trust{color:var(--ink-5);flex-wrap:wrap;justify-content:flex-start;gap:8px 18px;margin-top:12px;font-size:12px;display:flex}.hero-side{border:1px solid var(--line);background:var(--page);border-radius:16px;padding:18px 20px}.hero-side__head{border-bottom:1px solid var(--line);color:var(--ink-5);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;font-size:12px;display:flex}.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px;margin:14px 0 0;display:grid}.stat{flex-direction:column;gap:2px;display:flex}.stat__num{letter-spacing:-.5px;color:var(--accent-deep);font-variant-numeric:tabular-nums;font-size:24px;font-weight:800;line-height:1.2}.stat__label{color:var(--ink-5);font-size:12px}.section{padding:66px 0}.section.home-section{padding:48px 0}.section--white{background:var(--surface);border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong)}.section--soft{background:linear-gradient(#f8fafc,#fff)}.section__head{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px;display:flex}.section__eyebrow{letter-spacing:1.8px;text-transform:uppercase;color:var(--accent);margin:0 0 7px;font-size:11.5px;font-weight:700}.section__title{letter-spacing:-.7px;margin:0;font-size:calc(clamp(24px,3vw,31px));line-height:1.25}.section__sub{max-width:640px;color:var(--ink-4);margin:8px 0 0;font-size:14.5px}.section__more{color:var(--accent-deep);flex:none;align-items:center;gap:5px;padding:4px 0;font-size:13px;font-weight:600;display:inline-flex}.section__more:hover{color:var(--accent)}.pill-tabs{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.pill-tab{border-radius:var(--radius-btn);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-3);padding:8px 16px;font-size:13.5px;font-weight:600;transition:all .15s}.pill-tab:hover{background:var(--page);border-color:#cbd5e1}.pill-tab--active{border-color:var(--accent-line);background:var(--accent-soft);color:#5b21b6}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.project-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;gap:12px;padding:20px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative}.project-card:hover{border-color:var(--accent-line);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.project-card__top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.project-card__icon{color:#fff;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 8px 18px #0f172a29}.project-card__icon svg{width:21px;height:21px}.lang-chip{border-radius:var(--radius-chip);background:var(--page);border:1px solid var(--line);color:var(--ink-4);padding:3px 9px;font-size:11px;font-weight:600}.project-card__name{letter-spacing:-.2px;margin:2px 0 0;font-size:16.5px;font-weight:700}.project-card__tagline{min-height:40px;color:var(--ink-4);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.8px;line-height:1.6;display:-webkit-box;overflow:hidden}.project-card__tags{flex-wrap:wrap;gap:6px;display:flex}.tag{border-radius:var(--radius-chip);background:var(--page);border:1px solid var(--line);color:var(--ink-4);padding:3px 9px;font-size:11.2px}.project-card__foot{border-top:1px solid var(--line);color:var(--ink-5);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;font-size:11.5px;display:flex}.project-card__go{color:var(--accent-deep);align-items:center;gap:4px;font-weight:600;display:inline-flex}.project-card__go svg{width:13px;height:13px;transition:transform .15s}.project-card:hover .project-card__go svg{transform:translate(2px)}.home-projects{gap:16px}.home-projects .project-card{gap:10px;padding:22px}.home-projects .project-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.home-projects .project-card__icon{width:38px;height:38px;box-shadow:none;border-radius:10px}.home-projects .project-card__icon svg{width:19px;height:19px}.home-projects .lang-chip{color:var(--ink-5);letter-spacing:.4px;background:0 0;border:0;padding:0;font-size:11px}.home-projects .project-card__tagline{min-height:38px;font-size:12.8px}.home-projects .project-card__tags .tag:nth-child(n+2){display:none}.home-projects .project-card__foot{padding-top:10px}.feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.feature{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px 22px;transition:border-color .16s,transform .16s}.feature:hover{border-color:var(--accent-line);transform:translateY(-2px)}.feature__icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent-deep);border-radius:11px;place-items:center;margin-bottom:15px;display:grid}.feature__icon svg{width:19px;height:19px}.feature h3{letter-spacing:-.2px;margin:0 0 7px;font-size:15px}.feature p{color:var(--ink-4);margin:0;font-size:13px;line-height:1.65}.series-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.series-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;padding:22px 24px;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex}.series-card:hover{border-color:var(--accent-line);box-shadow:var(--shadow-card);transform:translateY(-2px)}.series-card__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.series-card__name{color:var(--ink-4);letter-spacing:1px;text-transform:uppercase;align-items:center;gap:8px;font-size:11.5px;font-weight:700;display:inline-flex}.series-card__dot{border-radius:50%;flex:none;width:7px;height:7px}.series-card__count{color:var(--ink-5);font-variant-numeric:tabular-nums;font-size:11.5px}.series-card__title{letter-spacing:-.2px;margin:12px 0 0;font-size:17px}.series-card__desc{color:var(--ink-4);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.series-card__more{color:var(--accent-deep);align-items:center;gap:5px;margin-top:16px;font-size:12.5px;font-weight:600;display:inline-flex}.series-card__more svg{width:13px;height:13px;transition:transform .15s}.series-card:hover .series-card__more svg{transform:translate(2px)}.series-card__list{border-top:1px dashed var(--line-strong);flex-direction:column;gap:7px;padding-top:10px;display:flex}.series-link{color:var(--ink-3);align-items:center;gap:7px;font-size:12.5px;line-height:1.4;display:flex}.series-link:hover{color:var(--accent-deep)}.series-link__dot{background:var(--accent);border-radius:50%;flex:none;width:5px;height:5px}.series-link__text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.free-badge,.vip-badge{border-radius:var(--radius-chip);letter-spacing:.2px;align-items:center;gap:4px;padding:2px 8px;font-size:10.5px;font-weight:700;display:inline-flex}.free-badge{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.vip-badge{color:#6d28d9;background:linear-gradient(135deg,#f5f3ff,#ede9fe);border:1px solid #ddd6fe}.vip-badge svg{color:#d97706;flex:none;width:10px;height:10px}.path-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.path-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:24px 22px;position:relative}.path-card__step{background:var(--accent-soft);border:1px solid var(--accent-line);width:34px;height:34px;color:var(--accent-deep);border-radius:50%;place-items:center;margin-bottom:14px;font-size:13px;font-weight:800;display:inline-grid}.path-card__label{letter-spacing:1.4px;text-transform:uppercase;color:var(--ink-5);margin:0 0 4px;font-size:11px;font-weight:700}.path-card h3{margin:0 0 8px;font-size:17px}.path-card p{color:var(--ink-4);margin:0 0 14px;font-size:13px}.path-card__tags{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.path-card__link{color:var(--accent-deep);font-size:13px;font-weight:600}.vip-banner{isolation:isolate;color:#fff;box-shadow:var(--shadow-float);background:linear-gradient(115deg,#1e1b4b,#312e81 52%,#4c1d95);border-radius:26px;padding:40px;position:relative;overflow:hidden}.vip-banner:before{filter:blur(8px);background:radial-gradient(circle,#f59e0b4d,#0000 65%);width:420px;height:420px;top:-180px;right:-120px}.vip-banner:after,.vip-banner:before{content:"";border-radius:50%;position:absolute}.vip-banner:after{background:radial-gradient(circle,#8b5cf680,#0000 65%);width:360px;height:360px;bottom:-240px;left:18%}.vip-banner__inner{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:36px;display:grid;position:relative}.vip-banner__eyebrow{border-radius:var(--radius-chip);letter-spacing:1px;white-space:nowrap;background:#ffffff1f;border:1px solid #ffffff2e;align-items:center;gap:6px;padding:4px 10px;font-size:11.5px;font-weight:700;display:inline-flex}.vip-banner__eyebrow svg{color:#fbbf24;width:14px;height:14px}.vip-banner h1{letter-spacing:-.8px;margin:14px 0 0;font-size:calc(clamp(28px,3.8vw,40px));line-height:1.2}.vip-banner__desc{color:#ffffffb8;max-width:520px;margin:12px 0 0;font-size:14px}.vip-benefits{grid-template-columns:1fr 1fr;gap:8px 18px;margin:20px 0 0;padding:0;list-style:none;display:grid}.vip-benefits li{color:#ffffffe0;align-items:center;gap:7px;font-size:13px;display:flex}.vip-benefits svg{color:#fbbf24;flex:none;width:14px;height:14px}.vip-banner__actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.vip-banner .btn--primary{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 10px 24px #d9770659}.vip-mini-plans{gap:10px;display:grid}.vip-mini-plan{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border:1px solid #ffffff24;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;display:flex}.vip-mini-plan--hot{background:#ffffff24;border-color:#fbbf2473}.vip-mini-plan__name{font-size:13.5px;font-weight:600}.vip-mini-plan__note{color:#ffffff8c;margin-top:2px;font-size:11.5px}.vip-mini-plan__price{letter-spacing:-.4px;flex:none;font-size:20px;font-weight:800}.vip-mini-plan__price span{color:#fff9;margin-left:2px;font-size:11.5px;font-weight:500}.faq-grid{grid-template-columns:1fr 1fr;gap:10px 14px;display:grid}.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px}.faq-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--ink-5);flex:none;font-size:18px;font-weight:400;transition:transform .15s}.faq-item[open] summary:after{color:var(--accent);transform:rotate(45deg)}.faq-item p{color:var(--ink-4);margin:10px 0 0;font-size:13px}.final-cta{text-align:center;border:1px solid var(--accent-line);background:radial-gradient(circle at 20% 20%,#ffedd5cc,#0000 30%),radial-gradient(circle at 80% 30%,#dbeafecc,#0000 32%),linear-gradient(#fff,#faf5ff);border-radius:24px;padding:46px 32px;position:relative;overflow:hidden}.final-cta h2{letter-spacing:-.6px;margin:0;font-size:calc(clamp(24px,3vw,32px))}.final-cta p{color:var(--ink-4);margin:10px 0 0;font-size:14.5px}.final-cta .hero__actions{margin-top:24px}.site-footer{border-top:1px solid var(--line-strong);background:var(--surface);margin-top:70px}.site-footer__main{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px 32px;padding:26px 0 20px;display:flex}.site-footer__brand{align-items:center;gap:9px;font-size:15px;font-weight:800;display:flex}.site-footer__nav{flex-wrap:wrap;gap:24px;display:flex}.site-footer__nav a{color:var(--ink-3);font-size:13px}.site-footer__nav a:hover{color:var(--accent-deep)}.site-footer__bottom{border-top:1px solid var(--line);color:var(--ink-5);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:16px 0 22px;font-size:12px;display:flex}.site-footer__bottom a{color:var(--ink-5)}.library-eyebrow,.site-footer__bottom a:hover{color:var(--accent-deep)}.library-hero{border-bottom:1px solid var(--line-strong);background:radial-gradient(circle at 10% 8%,#ffedd58c,#0000 24%),radial-gradient(circle at 82% 16%,#dbeafe9e,#0000 26%),linear-gradient(#fff,#f8fafc);position:relative;overflow:hidden}.library-hero__inner{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;gap:48px;padding:42px 0 48px;display:grid}.library-hero__copy{min-width:0}.library-eyebrow{border-radius:var(--radius-chip);border:1px solid var(--accent-line);background:#ffffffd9;align-items:center;gap:7px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex;box-shadow:0 4px 14px #4c1d950f}.library-eyebrow svg{width:14px;height:14px}.library-eyebrow i{color:var(--ink-5);font-style:normal;font-weight:400}.library-hero h1{letter-spacing:-1.2px;text-wrap:balance;max-width:640px;margin:18px 0 0;font-size:calc(clamp(32px,4vw,46px));line-height:1.18}.library-hero__desc{max-width:620px;color:var(--ink-4);text-wrap:pretty;margin:16px 0 0;font-size:15.5px;line-height:1.8}.library-features{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:26px;display:grid}.library-feature{border:1px solid var(--line);text-align:left;background:#ffffffd1;border-radius:12px;gap:10px;padding:10px 12px;box-shadow:0 2px 8px #0f172a05}.library-feature,.library-feature__icon{justify-content:center;align-items:center;display:flex}.library-feature__icon{background:var(--accent-soft);width:30px;height:30px;color:var(--accent-deep);border-radius:8px;flex:none;padding:0;line-height:0}.library-feature__icon svg{flex:none;width:15px;height:15px;margin:0;display:block}.library-feature strong{color:var(--ink);font-size:12.5px;display:block}.library-feature>div>span{color:var(--ink-5);margin-top:2px;font-size:10.5px;display:block}.library-hero__meta{color:var(--ink-5);flex-wrap:wrap;gap:6px 20px;margin-top:20px;font-size:11.5px;display:flex}.library-hero__meta strong{color:var(--ink);font-size:12.5px}.library-hero__visual{min-width:0;position:relative}.library-hero__visual:before{content:"";z-index:0;filter:blur(18px);background:radial-gradient(circle,#7c3aed29,#0000 62%);position:absolute;inset:8% -6% -12%}.code-window{z-index:1;background:#0f172a;border:1px solid #94a3b829;border-radius:18px;position:relative;overflow:hidden;box-shadow:0 24px 60px #0f172a47}.code-window__bar{background:#ffffff06;border-bottom:1px solid #94a3b81f;align-items:center;gap:8px;padding:12px 16px;display:flex}.code-window__dots{gap:6px;display:flex}.code-window__dots i{background:#f87171;border-radius:50%;width:8px;height:8px}.code-window__dots i:nth-child(2){background:#fbbf24}.code-window__dots i:nth-child(3){background:#34d399}.code-window__file{color:#94a3b8;font-family:var(--font-mono);margin-left:auto;font-size:11px}.code-window__body{color:#cbd5e1;font-family:var(--font-mono);white-space:pre;margin:0;padding:18px 20px 20px;font-size:12.2px;line-height:1.9;overflow:auto}.tok-com{color:#64748b}.tok-key{color:#c084fc}.tok-str{color:#5eead4}.tok-fn{color:#93c5fd}.tok-num{color:#fbbf24}.page-hero{border-bottom:1px solid var(--line-strong);background:radial-gradient(circle at 12% 30%,#ffedd5b3,#0000 26%),radial-gradient(circle at 80% 10%,#ede9fecc,#0000 30%),linear-gradient(#fff,#f8fafc);padding:56px 0 36px;position:relative;overflow:hidden}.page-hero__crumb{color:var(--ink-5);align-items:center;gap:7px;margin-bottom:14px;font-size:12.5px;display:flex}.page-hero__crumb a:hover{color:var(--accent-deep)}.page-hero h1{letter-spacing:-.9px;margin:0;font-size:calc(clamp(30px,4vw,42px))}.page-hero__desc{max-width:700px;color:var(--ink-4);margin:12px 0 0;font-size:15px}.page-hero__stats{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.page-stat{border-radius:var(--radius-chip);border:1px solid var(--line-strong);color:var(--ink-3);background:#fffc;padding:6px 13px;font-size:12.5px}.page-stat strong{color:var(--accent-deep);font-variant-numeric:tabular-nums}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin:26px 0 22px;display:flex}.search-box{flex:1;min-width:220px;max-width:360px;position:relative}.search-box svg{width:16px;height:16px;color:var(--ink-5);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-box input{border:1px solid var(--line-strong);border-radius:var(--radius-btn);background:var(--surface);width:100%;color:var(--ink);outline:none;padding:10px 12px 10px 36px;font-size:13.5px;transition:border-color .15s,box-shadow .15s}.search-box input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px #7c3aed14}.filters{flex-wrap:wrap;gap:7px;display:flex}.chip{border-radius:var(--radius-chip);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-3);padding:8px 14px;font-size:12.8px;transition:all .15s}.chip--active,.chip:hover{border-color:var(--accent-line);color:var(--accent-deep)}.chip--active{background:var(--accent-soft);font-weight:600}.result-count{color:var(--ink-5);font-variant-numeric:tabular-nums;font-size:12.5px}.detail{padding:30px 0 70px}.detail__crumb{color:var(--ink-5);align-items:center;gap:8px;margin-bottom:16px;font-size:12.5px;display:flex}.detail__crumb a:hover{color:var(--accent-deep)}.detail__head{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card-lg);box-shadow:var(--shadow-card);align-items:flex-start;gap:18px;padding:26px;display:flex;position:relative}.detail__icon{color:#fff;border-radius:16px;flex:none;place-items:center;width:58px;height:58px;display:grid;box-shadow:0 10px 22px #0f172a2e}.detail__icon svg{width:27px;height:27px}.detail__eyebrow{color:var(--accent-deep);letter-spacing:1.2px;align-items:center;gap:8px;margin:0 0 7px;font-size:11px;font-weight:700;display:flex}.detail__eyebrow span{background:var(--accent);border-radius:50%;width:3px;height:3px}.detail__title{letter-spacing:-1px;color:var(--ink);text-wrap:balance;margin:0;font-size:32px}.detail__tagline{color:var(--ink-4);text-wrap:pretty;margin:5px 0 0;font-size:14px;line-height:1.7}.detail__meta{color:var(--ink-4);flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:12.8px;display:flex}.detail__actions{flex-wrap:wrap;flex:none;gap:8px;margin-left:auto;display:flex}.detail__metrics{align-items:center;gap:0;margin-left:auto;padding-right:4px;display:flex}.detail__metrics>div{flex-direction:column;gap:2px;padding:0 18px;display:flex}.detail__metrics>div:first-child{padding-left:0}.detail__metrics>div+div{border-left:1px solid var(--line)}.detail__metrics strong{color:var(--ink);font-size:16px;font-weight:700}.detail__metrics .stars{color:#d97706;letter-spacing:.5px;font-size:14px}.detail__metrics span{color:var(--ink-5);font-size:11px}.detail__head .detail__actions{margin-left:0}.detail__buy{flex-direction:column;flex:none;align-items:flex-end;gap:10px;margin-left:auto;display:flex}.detail__buy .detail__actions{margin-left:0}.detail__price{align-items:baseline;gap:8px;display:flex}.detail__price strong{color:var(--accent-deep);letter-spacing:-.6px;font-size:26px}.detail__price span{color:var(--ink-5);font-size:12.5px;text-decoration:line-through}.detail__price em{border-radius:var(--radius-chip);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-deep);padding:2px 8px;font-size:11px;font-style:normal;font-weight:600}.detail__owned{color:var(--green);align-items:center;gap:5px;font-size:12.5px;font-weight:600;display:inline-flex}.detail__owned svg{color:#d97706;width:14px;height:14px}.unlock-bar{border:1px solid var(--accent-line);background:linear-gradient(135deg,#faf5ff,#fff);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-bottom:4px;padding:14px 18px;display:flex}.unlock-bar__title{color:var(--accent-deep);white-space:nowrap;font-size:12.5px;font-weight:700}.unlock-bar__form{flex:1;gap:8px;min-width:240px;display:flex}.unlock-bar__form .input{flex:1;padding:8px 12px;font-size:13px}.unlock-bar__combo{color:var(--accent-deep);margin-left:auto;font-size:12.5px;font-weight:600}.unlock-bar__note{width:100%;color:var(--ink-5);margin:0;font-size:11px;line-height:1.5}.unlock-bar__message{color:#b91c1c;font-size:12px}.unlock-bar__message--ok{color:var(--green)}.tabs{border:0;border-bottom:1px solid var(--line);gap:28px;width:100%;margin:20px 0 24px;padding:0;display:flex}.tab,.tabs{background:0 0;border-radius:0}.tab{color:var(--ink-4);border:0;padding:10px 1px;font-size:14px;font-weight:500}.tab--active,.tab:hover{color:var(--accent-deep);background:0 0}.tab--active{box-shadow:inset 0 -2px 0 var(--accent);font-weight:600}.overview-grid{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.panel__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.panel__title{white-space:nowrap;margin:0;font-size:15px;font-weight:700}.panel__body{padding:18px 20px}.sidebar__hint{color:var(--ink-5);font-size:11.5px}.highlights{grid-template-columns:1fr 1fr;gap:10px 22px;margin:0;padding:0;list-style:none;display:grid}.highlights li{color:var(--ink-3);padding-left:18px;font-size:13.3px;position:relative}.highlights li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:0}.tour{border-bottom:1px solid var(--line);padding:16px 20px}.tour:last-child{border-bottom:0}.tour__title{align-items:center;gap:8px;margin:0;font-size:14.5px;display:flex}.tour__index{background:var(--accent-soft);width:22px;height:22px;color:var(--accent-deep);border-radius:7px;place-items:center;font-size:11.5px;font-weight:700;display:inline-grid}.tour__desc{color:var(--ink-4);margin:6px 0 10px;font-size:13px}.tour__files{flex-direction:column;gap:6px;display:flex}.tour-file{background:var(--page);width:100%;color:var(--ink-3);text-align:left;border:1px solid #0000;border-radius:9px;align-items:center;gap:10px;padding:7px 10px;font-size:12.5px;display:flex}.tour-file:hover{border-color:var(--accent-line);background:var(--accent-soft)}.tour-file__step{width:16px;color:var(--ink-5);font-variant-numeric:tabular-nums;flex:none}.tour-file__path{font-family:var(--font-mono);color:var(--ink-2);font-size:12px}.tour-file__note,.tour-file__path{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.tour-file__note{max-width:46%;color:var(--ink-5);flex:none;margin-left:auto;font-size:11.5px}.stack-list{flex-wrap:wrap;gap:7px;display:flex}.stack-item{border-radius:var(--radius-chip);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-deep);padding:4px 11px;font-size:12px}.detail__info{flex:1;min-width:0}.detail__tags{flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;display:flex}.detail__tag-label{color:var(--ink-5);margin-right:2px;font-size:11px}.detail__tags .tag{padding:2px 7px;font-size:10.5px}.detail__materials{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:12px;padding-top:10px;display:flex}.detail__material{color:var(--ink-4);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.detail__material svg{width:13px;height:13px;color:var(--accent);opacity:.8}.project-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:22px;display:grid}.project-doc{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card-lg);counter-reset:doc-sec;min-width:0;padding:4px 38px;box-shadow:0 8px 26px #0f172a09}.project-layout--single{grid-template-columns:minmax(0,1fr)}.project-layout--single .project-doc{width:100%;max-width:1000px;margin:0 auto}.project-doc--deep{max-width:960px;margin:0 auto}.doc-section{border-top:1px solid var(--line);counter-increment:doc-sec;padding:32px 0}.doc-section:first-child{border-top:0}.doc-section__head{justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:16px;display:flex}.doc-section__head h2{letter-spacing:-.5px;text-wrap:balance;align-items:center;gap:9px;margin:0;font-size:21px;display:flex}.doc-section__head h2:before{content:counter(doc-sec,decimal-leading-zero);background:var(--accent-soft);width:auto;min-width:25px;height:21px;color:var(--accent-deep);letter-spacing:.4px;border-radius:7px;place-items:center;padding:0 5px;font-size:10.5px;font-weight:800;display:inline-grid}.doc-section__head span{color:var(--ink-5);font-size:11.5px}.doc-points{grid-template-columns:1fr 1fr;gap:8px 28px;margin:0;padding:0;list-style:none;display:grid}.doc-points li{color:var(--ink-3);padding-left:16px;font-size:13.5px;line-height:1.8;position:relative}.doc-points li:before{content:"";background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:9px;left:0}.doc-materials{grid-template-columns:1fr 1fr;gap:20px 28px;display:grid}.doc-material{align-items:flex-start;gap:12px;display:flex}.doc-material__icon{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-deep);border-radius:10px;flex:none;place-items:center;display:grid}.doc-material__icon svg{width:17px;height:17px}.doc-material strong{font-size:13.5px;display:block}.doc-material p{color:var(--ink-4);margin:4px 0 0;font-size:12.5px;line-height:1.65}.doc-block{margin-top:22px}.doc-block:first-child{margin-top:0}.doc-block h3{margin:0 0 10px;font-size:14px}.doc-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:22px;padding:16px 0;display:grid}.doc-fact{border-left:1px solid var(--line);flex-direction:column;gap:4px;padding:0 18px;display:flex}.doc-fact:first-child{border-left:0;padding-left:0}.doc-fact span{color:var(--ink-5);font-size:11.5px}.doc-fact strong{font-size:16px;font-weight:700}.feature-roles{flex-direction:column;gap:20px;display:flex}.feature-role__head{border-bottom:1px solid var(--line);align-items:center;gap:8px;margin-bottom:8px;padding-bottom:7px;display:flex}.feature-role__head h4{letter-spacing:.2px;margin:0;font-size:14px}.feature-role__head span{border-radius:var(--radius-chip);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-deep);padding:2px 8px;font-size:10.5px;font-weight:600}.feature-role__items{grid-template-columns:1fr 1fr;gap:3px 34px;margin:0;padding:0;list-style:none;display:grid}.feature-role__items li{color:var(--ink-3);grid-template-columns:74px minmax(0,1fr);align-items:baseline;gap:8px;padding:3px 0;font-size:12.8px;line-height:1.7;display:grid}.feature-role__items strong{color:var(--accent-deep);white-space:nowrap;font-size:11.5px;font-weight:600}.feature-role__items span{min-width:0;color:var(--ink-2);line-height:1.75}.doc-roles{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.doc-role h4{align-items:center;gap:6px;margin:0 0 7px;font-size:13px;display:flex}.doc-role__count{background:var(--accent-soft);min-width:18px;height:18px;color:var(--accent-deep);border-radius:9px;place-items:center;padding:0 5px;font-size:10.5px;font-weight:700;display:inline-grid}.doc-role ul{flex-direction:column;gap:5px;margin:0;padding:0;list-style:none;display:flex}.doc-role li{color:var(--ink-3);padding-left:13px;font-size:12.5px;line-height:1.65;position:relative}.doc-role li:before{content:"";background:var(--accent-line);border-radius:50%;width:4px;height:4px;position:absolute;top:8px;left:0}.doc-arch{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.doc-arch li{border-top:1px dashed var(--line-strong);gap:14px;padding:14px 0;display:flex}.doc-arch li:first-child{border-top:0;padding-top:0}.doc-arch__index{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-deep);border-radius:50%;flex:none;place-items:center;font-size:11.5px;font-weight:800;display:grid}.doc-arch h4{margin:1px 0 4px;font-size:13px}.doc-arch p{color:var(--ink-3);margin:0;font-size:13.2px;line-height:1.75}.doc-difficulties{flex-direction:column;display:flex}.doc-difficulty{border-top:1px solid var(--line);padding:20px 0}.doc-difficulty:first-child{border-top:0;padding-top:0}.doc-difficulty h3{align-items:center;gap:9px;margin:0 0 12px;font-size:14px;display:flex}.doc-difficulty h3 span{color:var(--accent);letter-spacing:.5px;font-size:11px;font-weight:800}.doc-difficulty__grid{grid-template-columns:1fr 1fr 1.15fr;gap:22px;display:grid}.doc-difficulty__grid label{color:var(--ink-5);letter-spacing:.6px;margin-bottom:5px;font-size:11px;font-weight:700;display:block}.doc-difficulty__grid p{color:var(--ink-3);margin:0;font-size:13.2px;line-height:1.8}.doc-questions{-moz-columns:2;columns:2;-moz-column-gap:36px;color:var(--ink-3);column-gap:36px;margin:0;padding-left:18px;font-size:13px;line-height:2}.doc-questions li{-moz-column-break-inside:avoid;break-inside:avoid}.doc-questions li::marker{color:var(--accent);font-weight:700}.doc-faq details{border-top:1px solid var(--line);padding:12px 0}.doc-faq details:first-child{border-top:0;padding-top:0}.doc-faq summary{cursor:pointer;color:var(--ink);justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:600;list-style:none;display:flex}.doc-faq summary::-webkit-details-marker{display:none}.doc-faq summary:after{content:"+";color:var(--ink-5);font-size:17px;font-weight:400}.doc-faq details[open] summary:after{transform:rotate(45deg)}.doc-faq p{color:var(--ink-3);margin:8px 0 0;font-size:13.2px;line-height:1.8}.doc-tour{border-top:1px solid var(--line);padding:18px 0}.doc-tour:first-child{border-top:0;padding-top:0}.doc-tour__title{align-items:center;gap:9px;margin:0;font-size:14px;display:flex}.doc-tour__title span{background:var(--accent-soft);width:22px;height:22px;color:var(--accent-deep);border-radius:7px;place-items:center;font-size:11px;font-weight:700;display:grid}.doc-tour__desc{color:var(--ink-4);margin:6px 0 10px;font-size:12.8px}.project-side{min-width:0}.side-buy{background:var(--surface);border-color:#e9e5f4;position:sticky;top:82px;box-shadow:0 16px 42px #4c1d9514}.side-buy .buy-card__price strong{font-size:28px}.buy-card__save{border-radius:var(--radius-chip);color:#c2410c;background:#fff7ed;border:1px solid #fed7aa;padding:2px 7px;font-size:10.5px;font-weight:700}.buy-card--highlight{animation:1.6s buy-highlight}@keyframes buy-highlight{0%,to{box-shadow:var(--shadow-card)}30%{box-shadow:0 0 0 4px #7c3aed2e,0 14px 32px #4c1d9524}}.side-buy__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.buy-card__desc{color:var(--ink-4);margin:0 0 12px;font-size:12.8px;line-height:1.65}.buy-card__notice{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.buy-card__notice p{color:var(--ink-5);margin:4px 0;padding-left:12px;font-size:11.3px;line-height:1.6;position:relative}.buy-card__notice p:before{content:"·";position:absolute;left:2px}.project-side__help{text-align:center;color:var(--ink-5);margin:14px 0 0;font-size:12px}.project-side__help a{color:var(--accent-deep);font-weight:600}.source-lock-banner{border:1px dashed var(--accent-line);background:var(--accent-soft);color:#5b21b6;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 16px;font-size:12.5px;display:flex}.source-lock-banner span{flex:1;min-width:220px}.source-lock-card{border:1px dashed var(--accent-line);border-radius:var(--radius-card);text-align:center;background:linear-gradient(#faf5ff,#fff);padding:38px 24px}.source-lock-card__icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-deep);border-radius:50%;place-items:center;margin-bottom:10px;display:inline-grid}.source-lock-card__icon svg{width:20px;height:20px}.source-lock-card h3{margin:0 0 6px;font-size:17px}.source-lock-card p{max-width:460px;color:var(--ink-4);margin:0 auto 16px;font-size:13px;line-height:1.7}.project-intro{max-width:760px;color:var(--ink-2);text-wrap:pretty;margin:0 0 16px;font-size:15.5px;line-height:1.9}.materials-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.material-card{background:var(--page);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:5px;padding:15px 16px;display:flex}.material-card__icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-deep);border-radius:9px;place-items:center;margin-bottom:4px;display:grid}.material-card__icon svg{width:16px;height:16px}.material-card strong{font-size:13.5px}.material-card>span:last-child{color:var(--ink-4);font-size:12px;line-height:1.65}.detail-block{border-bottom:1px solid var(--line);padding:16px 0}.detail-block:first-child{padding-top:0}.detail-block:last-child{border-bottom:0;padding-bottom:0}.detail-block h3{margin:0 0 10px;font-size:14.5px}.detail-text{color:var(--ink-3);margin:0;font-size:13.5px}.detail-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.fact{background:var(--page);border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.fact span{color:var(--ink-5);font-size:11.5px}.fact strong{color:var(--ink);font-size:15px}.stars{color:#d97706;letter-spacing:1px}.role-block{margin-top:14px}.role-block:first-of-type{margin-top:0}.role-block h4{margin:0 0 5px;font-size:13.5px}.role-block ul{color:var(--ink-3);margin:0;padding-left:18px;font-size:13px;line-height:1.8}.arch-list{flex-direction:column;gap:10px;display:flex}.arch-item{background:var(--page);border:1px solid var(--line);border-radius:12px;gap:12px;padding:14px 16px;display:flex}.arch-item__index{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-deep);border-radius:8px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.arch-item h4{margin:0 0 4px;font-size:13.5px}.arch-item p{color:var(--ink-4);margin:0;font-size:12.8px;line-height:1.7}.difficulty-list{flex-direction:column;gap:14px;display:flex}.difficulty{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:16px}.difficulty h3{align-items:center;gap:8px;margin:0 0 10px;font-size:14px;display:flex}.difficulty__index{color:var(--accent);font-size:11.5px;font-weight:800}.difficulty-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.difficulty-grid h5{color:var(--ink-5);letter-spacing:.5px;margin:0 0 4px;font-size:11.5px;font-weight:700}.difficulty-grid p{color:var(--ink-3);margin:0;font-size:12.5px;line-height:1.7}.interview-list{color:var(--ink-3);margin:0;padding-left:20px;font-size:13.5px;line-height:2}.interview-list li::marker{color:var(--accent);font-weight:700}.buy-card{border:1px solid var(--accent-line);border-radius:var(--radius-card);background:linear-gradient(160deg,#faf5ff,#fff);padding:20px}.buy-card__eyebrow{color:var(--accent-deep);letter-spacing:1px;align-items:center;gap:6px;font-size:11.5px;font-weight:700;display:inline-flex}.buy-card__eyebrow svg{color:#d97706;width:14px;height:14px}.buy-card__price{flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:12px 0 6px;display:flex}.buy-card__original{color:var(--ink-5);font-size:12.5px;text-decoration:line-through}.buy-card__tier{border-radius:var(--radius-chip);background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--accent-deep);margin-left:auto;padding:2px 8px;font-size:11px;font-weight:600}.buy-card__redeem{flex-direction:column;gap:8px;display:flex}.buy-card__message{color:#b91c1c;margin:8px 0 0;font-size:12px;line-height:1.5}.buy-card__message--ok,.buy-card__owned{color:var(--green)}.buy-card__owned{text-align:center;margin:8px 0 0;font-size:12px}.buy-card__price strong{color:var(--accent-deep);letter-spacing:-.4px;font-size:21px}.buy-card__price span{color:var(--ink-5);font-size:12.5px}.buy-card p{color:var(--ink-4);margin:0 0 12px;font-size:12.8px;line-height:1.65}.buy-card__benefits{flex-direction:column;gap:7px;margin:0 0 16px;padding:0;list-style:none;display:flex}.buy-card__benefits li{color:var(--ink-3);align-items:center;gap:7px;font-size:12.8px;display:flex}.buy-card__benefits svg{width:14px;height:14px;color:var(--green)}.buy-card__link{color:var(--accent-deep);text-align:center;margin-top:10px;font-size:12.5px;font-weight:600;display:block}.notice-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:18px 20px}.notice-card h3{margin:0 0 10px;font-size:14px}.notice-card ul{color:var(--ink-4);margin:0;padding-left:16px;font-size:12.3px;line-height:1.8}.vip-upsell{color:#fff;background:#15171c;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.vip-upsell strong{font-size:13.5px;display:block}.vip-upsell span{color:#fff9;margin-top:2px;font-size:11.5px;display:block}.contact-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;align-items:center;gap:10px;padding:16px 18px;display:flex}.contact-card>svg{width:20px;height:20px;color:var(--accent);flex:none}.contact-card div{flex-direction:column;flex:1;gap:2px;display:flex}.contact-card strong{font-size:13px}.contact-card span{color:var(--ink-5);font-size:11.5px}.stat-tiles{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stat-tile{background:var(--page);border:1px solid var(--line);border-radius:12px;padding:14px}.stat-tile__num{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.stat-tile__label{color:var(--ink-5);margin-top:2px;font-size:11.5px}.download-card{border-radius:var(--radius-card);border:1px solid var(--accent-line);background:linear-gradient(160deg,#faf5ff,#fff);padding:20px}.download-card h3{margin:0 0 6px;font-size:15px}.download-card p{color:var(--ink-4);margin:0 0 14px;font-size:12.8px}.detail__body{grid-template-columns:300px minmax(0,1fr);align-items:start;gap:16px;display:grid}.sidebar{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);max-height:calc(100vh - 100px);box-shadow:var(--shadow-card);position:sticky;top:82px;overflow:auto}.sidebar__head{border-bottom:1px solid var(--line);color:var(--ink-2);justify-content:space-between;align-items:center;padding:14px 16px;font-size:13px;font-weight:600;display:flex}.main-col{flex-direction:column;gap:16px;min-width:0;display:flex}.tree{padding:8px 10px 12px;font-size:13px}.tree__row{width:100%;color:var(--ink-2);text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:4px 8px;display:flex}.tree__row--active,.tree__row:hover{background:var(--accent-soft)}.tree__row--active{color:var(--accent-deep);font-weight:600}.tree__row--dir{color:var(--ink-3);font-weight:500}.tree__caret{width:12px;color:var(--ink-5);flex:none;font-size:10px;transition:transform .12s}.tree__caret--open{transform:rotate(90deg)}.code-path,.tree__name{text-overflow:ellipsis;overflow:hidden}.tree__badge{color:var(--ink-5);margin-left:auto;padding-left:8px;font-size:10.5px}.tree__file-icon{width:11px;height:11px;color:var(--ink-5);flex:none}.code-panel__head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:12px 16px;display:flex}.code-path{font-family:var(--font-mono);color:var(--ink-3);white-space:nowrap;font-size:12px}.code-lang{border:1px solid var(--line);border-radius:var(--radius-chip);color:var(--ink-5);flex:none;margin-left:auto;padding:2px 9px;font-size:11px}.code-copy{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-3);border-radius:8px;flex:none;padding:4px 10px;font-size:11.5px}.code-copy:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-deep)}.code-scroll{border-radius:0 0 var(--radius-card) var(--radius-card);background:#fcfcfd;max-height:680px;overflow:auto}.code-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:12.5px;line-height:1.65;display:table}.code-line{display:table-row}.code-line__no{border-right:1px solid var(--line);color:#b6bdc9;text-align:right;white-space:nowrap;-webkit-user-select:none;user-select:none;width:1%;padding:0 12px 0 16px;display:table-cell}.code-line__text{color:#2c3440;white-space:pre;padding:0 16px;display:table-cell}.code-line:hover .code-line__no,.code-line:hover .code-line__text{background:#f3f0ff}.hljs-built_in,.hljs-keyword,.hljs-selector-tag,.hljs-tag{color:#7c3aed}.hljs-attr,.hljs-string,.hljs-template-string{color:#0f766e}.hljs-literal,.hljs-number{color:#b45309}.hljs-comment{color:#94a3b8;font-style:italic}.hljs-function .hljs-title,.hljs-name,.hljs-title,.hljs-title.function_{color:#1d4ed8}.hljs-title.class_,.hljs-type{color:#0e7490}.hljs-params,.hljs-variable{color:#334155}.hljs-meta{color:#64748b}.tutorial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.tutorial-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;gap:10px;padding:20px;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex}.tutorial-card:hover{border-color:var(--accent-line);box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.tutorial-card__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.tutorial-card__series{color:var(--series-color,var(--accent));letter-spacing:.6px;text-transform:uppercase;align-items:center;gap:6px;font-size:11.5px;font-weight:700;display:inline-flex}.series-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.tutorial-card__title{letter-spacing:-.2px;margin:0;font-size:15.5px;line-height:1.45}.tutorial-card__summary{min-height:42px;color:var(--ink-4);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.8px;line-height:1.6;display:-webkit-box;overflow:hidden}.tutorial-card__foot{border-top:1px solid var(--line);color:var(--ink-5);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:12px;font-size:11.5px;display:flex}.blog-card__foot svg,.tutorial-card__foot svg{width:13px;height:13px}.blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-bottom:10px;display:grid}.blog-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex;overflow:hidden}.blog-card:hover{border-color:var(--accent-line);box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.blog-card__cover{aspect-ratio:16/8.5;color:var(--accent-deep);letter-spacing:.4px;background:radial-gradient(circle at 20% 20%,#ffedd5e6,#0000 35%),radial-gradient(circle at 80% 30%,#ede9fee6,#0000 40%),linear-gradient(135deg,#faf5ff,#eff6ff);place-items:center;font-size:12.5px;font-weight:700;display:grid;overflow:hidden}.blog-card__cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .35s}.blog-card:hover .blog-card__cover img{transform:scale(1.035)}.blog-card__body{flex-direction:column;flex:1;gap:8px;padding:17px 19px 19px;display:flex}.blog-card__meta{color:var(--ink-5);flex-wrap:wrap;align-items:center;gap:8px;font-size:11.5px;display:flex}.blog-card__title{letter-spacing:-.2px;font-size:16px;line-height:1.45}.blog-card__summary,.blog-card__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;display:-webkit-box;overflow:hidden}.blog-card__summary{min-height:40px;color:var(--ink-4);font-size:12.8px;line-height:1.6}.blog-card__foot{border-top:1px solid var(--line);color:var(--ink-5);justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;font-size:11.5px;display:flex}.blog-card__foot svg{color:var(--accent-deep)}.pagination{justify-content:center;align-items:center;gap:12px;padding:26px 0 70px;display:flex}.page-btn{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-3);border-radius:9px;padding:7px 14px;font-size:12.5px}.page-btn:hover:not(:disabled){border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-deep)}.page-btn:disabled{opacity:.45;cursor:not-allowed}.page-info{color:var(--ink-5);font-variant-numeric:tabular-nums;font-size:12.5px}.blog-side__body{gap:12px;padding:16px 18px 18px}.blog-side__body,.blog-side__row{flex-direction:column;display:flex}.blog-side__row{gap:7px}.blog-side__label{color:var(--ink-5);font-size:11.5px}.blog-side__tags{flex-wrap:wrap;gap:6px;display:flex}.article-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;padding:26px 0 70px;display:grid}.article{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card-lg);box-shadow:var(--shadow-card);padding:38px 42px}.article-hero{display:contents}.article-back{display:none}.article__meta{color:var(--ink-5);flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:12px;font-size:12.5px;display:flex}.article__title{letter-spacing:-.7px;margin:0;font-size:calc(clamp(26px,3.4vw,36px));line-height:1.32}.article__summary{border-left:3px solid var(--accent);background:var(--accent-soft);color:var(--ink-3);border-radius:0 10px 10px 0;margin:14px 0 0;padding:14px 16px;font-size:13.5px}.article-content{color:#2c3440;overflow-wrap:anywhere;word-break:break-word;margin-top:26px;font-size:15px;line-height:1.9}.article-content h2{border-bottom:1px solid var(--line);letter-spacing:-.4px;margin:38px 0 14px;padding-bottom:8px;font-size:23px;line-height:1.4}.article-content h3{margin:28px 0 10px;font-size:18px}.article-content h4{margin:22px 0 8px;font-size:16px}.article-content p{margin:12px 0}.article-content ol,.article-content ul{margin:12px 0;padding-left:24px}.article-content li{margin:5px 0}.article-content a{color:var(--accent-deep);border-bottom:1px solid var(--accent-line)}.article-content img{box-sizing:border-box;border:1px solid var(--line);max-width:100%;height:auto;box-shadow:var(--shadow-card);border-radius:12px;margin:20px auto;display:block}.article-content figure{margin:22px 0}.article-content .wp-caption-text,.article-content figcaption{color:var(--ink-5);text-align:center;margin-top:8px;font-size:12px}.article-content iframe,.article-content video{border:1px solid var(--line);border-radius:12px;width:100%;max-width:100%;margin:20px 0;display:block}.article-content h2,.article-content h3{scroll-margin-top:calc(20px + var(--header-h))}.article-content blockquote{border-left:3px solid var(--accent-line);background:var(--page);color:var(--ink-3);margin:18px 0;padding:12px 18px}.article-content code{color:#be185d;font-family:var(--font-mono);overflow-wrap:anywhere;word-break:break-word;background:#f1f5f9;border-radius:5px;padding:2px 6px;font-size:.9em}.article-content pre{box-sizing:border-box;color:#e2e8f0;max-width:100%;font-family:var(--font-mono);white-space:pre-wrap;word-break:break-all;background:#0f172a;border-radius:12px;margin:18px 0;padding:16px 18px;font-size:12.8px;line-height:1.7;overflow:auto}.article-content pre code{color:inherit;background:0 0;padding:0}.article-content table{border-collapse:collapse;table-layout:auto;word-break:break-word;width:100%;max-width:100%;margin:18px 0;font-size:13.5px}.article-content td,.article-content th{border:1px solid var(--line-strong);text-align:left;word-break:break-word;overflow-wrap:anywhere;padding:9px 12px}.article-content td:first-child,.article-content th:first-child{white-space:nowrap;width:1%}.article-content th{background:var(--page);font-weight:600}.article-content hr{border:0;border-top:1px solid var(--line);margin:28px 0}.project-markdown h1,.project-markdown h2,.project-markdown h3{scroll-margin-top:calc(96px + var(--header-h))}.project-markdown h1{letter-spacing:-.5px;margin:4px 0 18px;font-size:calc(clamp(24px,2.4vw,30px));line-height:1.35}.project-markdown h2{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin:34px 0 14px;padding-bottom:10px;font-size:20px;line-height:1.4;display:flex}.project-markdown h2:before{content:"";background:var(--accent);border-radius:2px;flex:none;width:4px;height:16px}.project-markdown h3{margin:24px 0 10px;font-size:16px}.project-markdown img{border:1px solid var(--line);box-shadow:var(--shadow-card);border-radius:12px}.article-lock{border:1px dashed var(--accent-line);text-align:center;background:linear-gradient(#faf5ff,#fff);border-radius:16px;margin-top:18px;padding:20px;position:relative}.article-lock__icon{background:var(--accent-soft);width:44px;height:44px;color:var(--accent-deep);border-radius:50%;place-items:center;margin-bottom:10px;display:inline-grid}.article-lock__icon svg{width:20px;height:20px}.article-lock h3{margin:0 0 6px;font-size:17px}.article-lock p{max-width:440px;color:var(--ink-4);margin:0 auto 16px;font-size:13px}.article-lock__blur{max-height:220px;color:var(--ink-3);text-align:left;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:14px;line-height:1.9;overflow:hidden;-webkit-mask-image:linear-gradient(#000 10%,#0000 92%);mask-image:linear-gradient(#000 10%,#0000 92%)}.article-foot{border-top:1px solid var(--line);color:var(--ink-5);margin-top:34px;padding-top:18px;font-size:12px}.series-nav{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);position:sticky;top:82px;overflow:hidden}.series-nav__head{border-bottom:1px solid var(--line);padding:15px 18px}.series-nav__title{margin:0;font-size:14px}.series-nav__sub{color:var(--ink-5);margin:3px 0 0;font-size:11.5px}.series-nav__list{max-height:420px;padding:8px;overflow:auto}.series-nav__link{color:var(--ink-3);border-radius:8px;align-items:flex-start;gap:8px;padding:7px 9px;font-size:12.5px;line-height:1.45;display:flex}.series-nav__link--active,.series-nav__link:hover{background:var(--accent-soft);color:var(--accent-deep)}.series-nav__link--active{font-weight:600}.series-nav__index{width:16px;color:var(--ink-5);font-variant-numeric:tabular-nums;flex:none;font-size:11px}.series-nav__cta{border-top:1px solid var(--line);background:var(--surface-soft);padding:14px 18px}.series-nav__cta p{color:var(--ink-4);margin:0 0 10px;font-size:12px}.auth-page{min-height:calc(100vh - 220px - var(--header-h));background:radial-gradient(circle at 20% 20%,#ffedd5b3,transparent 26%),radial-gradient(circle at 80% 30%,#ede9fee6,transparent 30%),var(--page);justify-content:center;align-items:center;padding:56px 0 72px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);width:min(430px,100%);box-shadow:var(--shadow-float);border-radius:22px;padding:34px 32px}.auth-card__brand{align-items:center;gap:9px;margin-bottom:20px;font-weight:800;display:flex}.auth-card h1{letter-spacing:-.5px;margin:0;font-size:25px}.auth-card__desc{color:var(--ink-4);margin:7px 0 22px;font-size:13.5px}.form-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.form-field label{color:var(--ink-3);font-size:12.5px;font-weight:600}.input{border:1px solid var(--line-strong);background:var(--surface);width:100%;color:var(--ink);border-radius:11px;outline:none;padding:11px 13px;font-size:14px;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--ink-5)}.input:focus{border-color:var(--accent-line);box-shadow:0 0 0 3px #7c3aed14}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form-note{color:var(--ink-5);text-align:center;margin:14px 0 0;font-size:12px}.form-note a{color:var(--accent-deep);font-weight:600}.auth-divider{color:var(--ink-5);align-items:center;gap:12px;margin:18px 0 14px;font-size:12px;display:flex}.auth-divider:after,.auth-divider:before{content:"";background:#e2e8f0;flex:1;height:1px}.qr-login{text-align:center;margin-top:6px}.qr-login__frame{background:#fff;border:1px solid #e2e8f0;border-radius:14px;justify-content:center;align-items:center;width:196px;height:196px;padding:8px;display:inline-flex;position:relative}.qr-login__frame canvas{width:180px;height:180px;display:block}.qr-login__mask{color:var(--ink-5);background:#fffffff0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:0 12px;font-size:13px;display:flex;position:absolute;inset:0}.qr-login__hint{color:var(--ink-5);margin:12px 0 0;font-size:12.5px;line-height:1.6}.qr-login__status{color:var(--ink-5);margin:6px 0 0;font-size:12px}.form-error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin:12px 0 0;padding:10px 12px;font-size:12.5px;line-height:1.5}.account-page{padding:40px 0 70px}.account-card,.account-guest{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card)}.account-layout{grid-template-columns:264px minmax(0,1fr);align-items:start;gap:18px;display:grid}.account-side{flex-direction:column;gap:12px;display:flex;position:sticky;top:88px}.account-card{box-shadow:var(--shadow-card);padding:22px}.account-side__profile{text-align:center;flex-direction:column;align-items:center;display:flex}.avatar--lg{width:64px;height:64px;font-size:22px}.account-side__profile h2{margin:12px 0 0;font-size:17px}.account-side__email{color:var(--ink-5);overflow-wrap:anywhere;margin:3px 0 0;font-size:12.5px}.account-badge{border:1px solid var(--line);background:var(--page);color:var(--ink-3);border-radius:999px;align-items:center;gap:5px;margin-top:12px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.account-badge svg{width:13px;height:13px}.account-badge--vip{color:#b45309;background:#fffbeb;border-color:#fde68a}.account-meta{border-top:1px solid var(--line);text-align:left;flex-direction:column;gap:8px;width:100%;margin:18px 0 0;padding-top:14px;display:flex}.account-meta>div{justify-content:space-between;gap:10px;display:flex}.account-meta dt{color:var(--ink-5);flex:none;font-size:12px}.account-meta dd{color:var(--ink-3);text-align:right;margin:0;font-size:12px}.account-side__profile .btn{margin-top:18px}.account-nav{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);flex-direction:column;gap:2px;padding:8px;display:flex}.account-nav__item{color:var(--ink-3);text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:9px;padding:10px 12px;font-size:13.5px;font-weight:600;transition:all .15s;display:flex}.account-nav__item svg{width:18px;height:18px;color:var(--ink-4)}.account-nav__item:hover{background:var(--page);color:var(--ink)}.account-nav__item--active{background:var(--accent-soft);color:var(--accent-deep)}.account-nav__item--active svg{color:currentColor}.account-nav__count{background:var(--page);color:var(--ink-4);border-radius:999px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.account-nav__item--active .account-nav__count{color:var(--accent-deep);background:#fff}.account-logout{color:var(--ink-5);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:12.5px;display:inline-flex}.account-logout:hover{color:#b91c1c;background:#fef2f2}.account-logout svg{width:13px;height:13px}.account-main{min-width:0}.account-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:26px 28px}.account-panel__head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:16px;display:flex}.account-panel__head h2{letter-spacing:-.4px;margin:0;font-size:20px}.account-panel__head p{color:var(--ink-4);margin:5px 0 0;font-size:12.8px}.account-loading{color:var(--ink-5);font-size:12px}.account-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.account-stat{border:1px solid var(--line);background:var(--page);border-radius:14px;padding:16px}.account-stat__icon{border:1px solid var(--line);width:28px;height:28px;color:var(--accent);background:#fff;border-radius:9px;place-items:center;display:grid}.account-stat__icon svg{width:14px;height:14px}.account-stat strong{letter-spacing:-.5px;margin-top:10px;font-size:23px;display:block}.account-stat>span:last-child{color:var(--ink-4);font-size:12px}.member-status{border:1px solid var(--accent-line);background:linear-gradient(135deg,#faf5ff,#fff);border-radius:14px;align-items:center;gap:12px;margin-top:18px;padding:16px;display:flex}.member-status__icon{color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.member-status__icon svg{width:20px;height:20px}.member-status strong{font-size:14px;display:block}.member-status span{color:var(--ink-5);font-size:12px}.account-status{margin-top:16px}.account-status__action{margin-left:auto}.account-columns{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:14px;margin-top:16px;display:grid}.account-block{border:1px solid var(--line);border-radius:14px;padding:16px 18px}.account-block h3{margin:0 0 12px;font-size:14px}.account-block+.account-block{margin-top:14px}.account-block__note{color:var(--ink-5);margin:-6px 0 12px;font-size:12px;line-height:1.7}.account-combo-bar{border-top:1px solid var(--line);color:var(--ink-4);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.account-combo-bar strong{color:var(--accent-deep);font-size:15px}.account-combo-bar__actions{flex-wrap:wrap;gap:8px;display:flex}.account-timeline{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.account-timeline li{grid-template-columns:7px minmax(0,1fr) auto;align-items:start;gap:9px;display:grid}.account-timeline__dot{background:var(--accent);width:7px;height:7px;box-shadow:0 0 0 3px var(--accent-soft);border-radius:50%;margin-top:5px}.account-timeline strong{font-size:13px}.account-timeline p{color:var(--ink-4);overflow-wrap:anywhere;margin:2px 0 0;font-size:12px}.account-timeline time{color:var(--ink-5);white-space:nowrap;font-size:11.5px}.account-timeline--full li{border-bottom:1px solid var(--line);padding:11px 0}.account-timeline--full li:last-child{border-bottom:0}.account-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.account-links a{border:1px solid var(--line);background:var(--page);color:var(--ink-3);border-radius:9px;align-items:center;gap:7px;padding:9px 11px;font-size:12.5px;display:flex}.account-links a:hover{border-color:var(--accent-line);color:var(--accent-deep)}.account-links svg{width:14px;height:14px}.empty-state{text-align:center;color:var(--ink-5);padding:36px 20px;font-size:13px}.account-project-list{flex-direction:column;gap:10px;margin-top:18px;display:flex}.account-project{border:1px solid var(--line);background:var(--page);border-radius:14px;justify-content:space-between;align-items:center;gap:16px;padding:16px 18px;display:flex}.account-project:hover{border-color:var(--accent-line)}.account-project__main strong{font-size:15px}.account-project__main p{color:var(--ink-4);margin:4px 0 0;font-size:12.5px}.account-project__time{color:var(--ink-5);margin-top:5px;font-size:11.5px;display:block}.account-project__actions{flex:none;gap:8px;display:flex}.account-record-list{flex-direction:column;gap:10px;margin-top:18px;display:flex}.account-record{border:1px solid var(--line);background:var(--page);border-radius:12px;padding:14px 16px}.account-record__top{align-items:center;gap:10px;display:flex}.account-record__top strong{font-family:var(--font-mono);letter-spacing:.4px;font-size:13px}.account-record__top time{color:var(--ink-5);margin-left:auto;font-size:11.5px}.account-record p{color:var(--ink-4);margin:6px 0 0;font-size:12.5px}.account-record__no{font-family:var(--font-mono);color:var(--ink-5)!important;font-size:11.5px!important}.account-chip{border:1px solid var(--line);color:var(--ink-3);background:#fff;border-radius:999px;padding:2px 8px;font-size:11px}.account-table{border:1px solid var(--line);border-radius:14px;margin-top:18px;overflow:hidden}.account-table__row{border-top:1px solid var(--line);color:var(--ink-3);grid-template-columns:minmax(0,1.1fr) minmax(0,1.2fr) 150px;align-items:center;gap:14px;padding:11px 16px;font-size:12.5px;display:grid}.account-table__row:first-child{border-top:0}.account-table__row--head{background:var(--page);color:var(--ink-5);letter-spacing:.4px;text-transform:uppercase;font-size:11.5px;font-weight:700}.account-table__file{color:var(--ink-4);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-table time{color:var(--ink-5);font-size:11.5px}.account-forms{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;display:grid}.account-form{border:1px solid var(--line);background:var(--page);border-radius:14px;flex-direction:column;gap:12px;padding:18px;display:flex}.account-form h3{margin:0 0 2px;font-size:14px}.account-form label{color:var(--ink-4);flex-direction:column;gap:6px;font-size:12px;display:flex}.account-form .btn{align-self:flex-start;margin-top:2px}.account-form .input:disabled{color:var(--ink-5);background:#f1f5f9}.account-empty{color:var(--ink-5);margin:0;font-size:12.5px}.vip-intro{padding:34px 0 0}.combo-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:18px;margin-top:32px;display:grid}.combo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.combo-card{border:1px solid var(--line);background:var(--surface);text-align:left;border-radius:12px;align-items:center;gap:11px;padding:14px 15px;transition:border-color .15s,background .15s,transform .15s;display:flex;position:relative}.combo-card:hover{border-color:var(--accent-line);transform:translateY(-1px)}.combo-card--selected{border-color:var(--accent-line);background:var(--accent-soft)}.combo-card--owned{opacity:.62;cursor:default}.combo-card__check{border:1px solid var(--line-strong);background:var(--surface);width:22px;height:22px;color:var(--accent-deep);border-radius:7px;flex:none;place-items:center;display:grid}.combo-card--selected .combo-card__check{border-color:var(--accent);background:var(--accent);color:#fff}.combo-card__check svg{width:13px;height:13px}.combo-card__body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.combo-card__body strong{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.combo-card__price span,.combo-card__tier{color:var(--ink-5);font-size:11px}.combo-card__price{flex-direction:column;flex:none;align-items:flex-end;gap:1px;display:flex}.combo-card__price strong{color:var(--accent-deep);font-size:15px}.combo-card__price span{text-decoration:line-through}.combo-card__owned{color:var(--green);font-size:10px;font-weight:700;position:absolute;top:8px;right:10px}.combo-summary{border:1px solid var(--accent-line);border-radius:var(--radius-card);background:linear-gradient(160deg,#faf5ff,#fff);padding:20px;position:sticky;top:82px}.combo-summary h2{margin:0 0 10px;font-size:16px}.combo-summary__row{color:var(--ink-4);justify-content:space-between;gap:10px;padding:5px 0;font-size:12.5px;display:flex}.combo-summary__row strong{color:var(--ink-2)}.combo-summary__row--save{color:var(--green)}.combo-summary__total{border-top:1px dashed var(--accent-line);color:var(--ink-3);justify-content:space-between;align-items:baseline;gap:10px;margin:10px 0 4px;padding-top:12px;font-size:13px;display:flex}.combo-summary__total strong{color:var(--accent-deep);letter-spacing:-.8px;font-size:28px}.combo-summary__tip{color:var(--ink-5);margin:4px 0 12px;font-size:11.5px}.combo-summary__tip--ok{color:var(--green)}.combo-summary__note{color:var(--ink-4);margin:10px 0;font-size:11.5px;line-height:1.6}.plan-grid{z-index:2;grid-template-columns:1fr 1fr;gap:16px;margin-top:-38px;display:grid;position:relative}.plan-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card-lg);box-shadow:var(--shadow-card);padding:28px;position:relative}.plan-card--hot{border-color:var(--accent-line);box-shadow:var(--shadow-float)}.plan-card__badge{border-radius:var(--radius-chip);color:#fff;background:linear-gradient(135deg,#f59e0b,#d97706);padding:3px 11px;font-size:11px;font-weight:700;position:absolute;top:-11px;right:22px}.plan-card__name{color:var(--ink-3);align-items:center;gap:6px;margin:0;font-size:15px;display:flex}.plan-card__crown{color:#d97706;width:17px;height:17px}.plan-card__price{align-items:baseline;gap:5px;margin:10px 0 0;display:flex}.plan-card__price strong{letter-spacing:-1.4px;color:var(--accent-deep);font-size:40px;line-height:1}.plan-card__price span{color:var(--ink-5);font-size:13px}.plan-card__note{color:var(--ink-4);margin:8px 0 0;font-size:12.5px}.plan-list{flex-direction:column;gap:9px;margin:20px 0 22px;padding:0;list-style:none;display:flex}.plan-list li{color:var(--ink-3);align-items:center;gap:8px;font-size:13px;display:flex}.plan-list svg{width:15px;height:15px;color:var(--green);flex:none}.redeem-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card-lg);box-shadow:var(--shadow-card);margin-top:40px;padding:28px}.redeem-card__head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.redeem-card h2{margin:0;font-size:20px}.redeem-card p{color:var(--ink-4);margin:5px 0 0;font-size:13px}.redeem-form{gap:10px;max-width:560px;display:flex}.redeem-form .input{font-family:var(--font-mono);letter-spacing:1px;flex:1}.redeem-result{margin-top:12px;font-size:12.5px}.redeem-result--ok{color:var(--green)}.redeem-result--err{color:#dc2626}.benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.roadmap{flex-direction:column;gap:16px;padding:32px 0 70px;display:flex}.roadmap-item{grid-template-columns:68px minmax(0,1fr);gap:20px;display:grid}.roadmap-item__rail{flex-direction:column;align-items:center;display:flex;position:relative}.roadmap-item__num{background:var(--accent-soft);border:1px solid var(--accent-line);width:44px;height:44px;color:var(--accent-deep);border-radius:50%;flex:none;place-items:center;font-size:15px;font-weight:800;display:grid}.roadmap-item__line{background:linear-gradient(180deg,var(--accent-line),transparent);flex:1;width:2px;margin-top:8px}.roadmap-item:last-child .roadmap-item__line{display:none}.roadmap-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:24px}.roadmap-card__label{letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);margin:0;font-size:11px;font-weight:700}.roadmap-card h2{margin:6px 0 8px;font-size:21px}.roadmap-card p{color:var(--ink-4);margin:0 0 14px;font-size:13.5px}.roadmap-card__links{border-top:1px solid var(--line);flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;display:flex}.roadmap-link{border-radius:var(--radius-chip);background:var(--page);border:1px solid var(--line);color:var(--ink-3);padding:6px 12px;font-size:12.5px}.roadmap-link:hover{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-deep)}.prose-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:24px}.prose-panel h2{margin:0 0 10px;font-size:18px}.prose-panel p{color:var(--ink-3);margin:0 0 10px;font-size:13.5px}.prose-panel p:last-child{margin-bottom:0}.about-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:16px;padding:30px 0 70px;display:grid}.toast-stack{z-index:90;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:22px;right:22px}.toast{color:#fff;background:#15171c;border-radius:11px;padding:11px 16px;font-size:12.5px;box-shadow:0 12px 30px #0f172a38}.toast-enter-active,.toast-leave-active{transition:all .2s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translateY(8px)}.empty{padding:60px 0}.empty,.loading{text-align:center;color:var(--ink-5)}.loading{padding:80px 0;font-size:13.5px}.divider{background:var(--line);height:1px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1080px){.library-hero__inner{grid-template-columns:1fr;gap:28px}.library-hero__visual{max-width:620px}.home-hero__inner{grid-template-columns:1fr;gap:24px;padding:30px 0 28px}.home-hero__content{max-width:720px}.hero-side{max-width:620px}.hero-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.stat+.stat{border-left:1px solid var(--line);padding-left:16px}.benefit-grid,.blog-grid,.feature-grid,.project-grid,.project-grid--three,.series-grid,.tutorial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-grid,.account-layout,.article-layout,.detail__body,.project-layout{grid-template-columns:minmax(0,1fr)}.account-side,.side-buy{position:static}.account-nav{flex-flow:wrap}.account-nav__item{flex:0 auto}.account-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.account-forms,.overview-grid,.vip-banner__inner{grid-template-columns:1fr}.detail__head{flex-wrap:wrap}.detail__metrics{order:3;width:100%;margin-left:0}.detail__actions{margin-left:auto}.series-nav,.sidebar{max-height:420px;position:static}}@media (width<=860px){.site-header__actions,.site-header__actions .header-link,.site-header__actions .header-user__name,.site-nav{display:none}.header-search-toggle,.menu-toggle{display:inline-flex}.brand{gap:9px;font-size:17px}.brand__mark{border-radius:11px;width:34px;height:34px}.brand__mark svg{width:18px;height:18px}.menu-toggle{width:34px;height:34px;color:var(--ink-3);background:0 0;border:0}.mobile-nav--open{display:block}.account-columns,.combo-layout,.faq-grid,.path-grid,.plan-grid{grid-template-columns:1fr}.combo-summary{position:static}.account-project{flex-direction:column;align-items:flex-start}.account-project__actions{width:100%}}@media (width<=720px){.container{width:calc(100% - 32px)}.home-hero__inner{padding:26px 0 22px}.home-hero h1{letter-spacing:-.8px;font-size:30px}.account-table__row>:nth-child(2),.hero-side{display:none}.hero__desc{font-size:14.5px}.section{padding:46px 0}.section__head{flex-direction:column;align-items:flex-start;gap:10px}.benefit-grid,.blog-grid,.feature-grid,.project-grid,.project-grid--three,.series-grid,.tutorial-grid{grid-template-columns:minmax(0,1fr)}.library-features{grid-template-columns:1fr 1fr}.library-hero__inner{padding:20px 0 36px}.library-hero h1{letter-spacing:-.8px;font-size:31px}.code-window__body{font-size:11.5px}.vip-banner{border-radius:20px;padding:26px 20px}.combo-grid,.detail-facts,.difficulty-grid,.doc-difficulty__grid,.doc-facts,.doc-materials,.doc-points,.doc-roles,.feature-role__items,.highlights,.materials-grid,.vip-benefits{grid-template-columns:1fr}.detail__head{flex-wrap:wrap}.detail__actions{width:100%;margin-left:0}.detail__buy{align-items:flex-start;width:100%}.detail__metrics{flex-wrap:wrap;gap:20px;width:100%;margin-left:0}.detail__metrics>div{border-left:0;padding:0}.unlock-bar__combo{margin-left:0}.article{padding:26px 20px}.article__title{font-size:25px}.tabs{scrollbar-width:none;gap:14px;width:100%;overflow-x:auto}.tab{text-align:center;white-space:nowrap;flex:none;padding:8px 2px;font-size:12px}.panel__head{flex-wrap:wrap;gap:4px 12px}.panel__head .sidebar__hint{width:100%}.doc-questions{-moz-columns:1;columns:1}.project-doc{padding:4px 20px}.doc-fact{border-left:0;border-top:1px solid var(--line);padding:10px 0}.doc-fact:first-child{border-top:0}.account-panel__head,.redeem-form,.site-footer__main{flex-direction:column}.account-panel{padding:20px 16px}.account-panel__head{align-items:flex-start;gap:6px}.account-side__profile{padding:18px}.account-table__row{grid-template-columns:minmax(0,1fr) auto}.account-record__top{flex-wrap:wrap}.account-record__top time{width:100%;margin-left:0}.account-timeline li{grid-template-columns:7px minmax(0,1fr)}.account-timeline time{grid-column:2}.site-footer__main{align-items:flex-start;gap:16px}.site-footer__nav{gap:14px 20px}.form-row{grid-template-columns:1fr}.roadmap-item{grid-template-columns:44px minmax(0,1fr);gap:14px}}.mobile-buybar,.mobile-search,.mobile-tabbar,.project-card__price,.quick-grid{display:none}@media (width<=860px){.app-shell{padding-bottom:56px}.mobile-tabbar{z-index:45;-webkit-backdrop-filter:saturate(180%)blur(14px);backdrop-filter:saturate(180%)blur(14px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);background:#fffffff5;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-tabbar__item{color:var(--ink-5);flex-direction:column;align-items:center;gap:2px;padding:7px 0 6px;font-size:11px;display:flex}.mobile-tabbar__item svg{width:21px;height:21px}.mobile-tabbar__item--active{color:var(--accent-deep);font-weight:600}.mobile-search{padding:0 16px 10px;display:block}.toolbar .search-box{display:none}.search-box--mobile{width:100%}.quick-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px;display:grid}.quick-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);color:var(--ink-2);flex-direction:column;gap:6px;padding:12px 4px 10px;font-size:12.5px}.quick-item,.quick-item__icon{align-items:center;display:flex}.quick-item__icon{color:#fff;border-radius:14px;justify-content:center;width:40px;height:40px}.quick-item__icon svg{width:20px;height:20px}.quick-item__icon--blue{background:var(--blue)}.quick-item__icon--green{background:var(--green)}.quick-item__icon--gold{background:linear-gradient(135deg,#f59e0b,#d97706)}.quick-item__icon--orange{background:#ea580c}}@media (width<=720px){.home-projects,.project-grid,.project-grid--three{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-card{border-radius:14px;padding:12px}.project-card__tags .tag:nth-child(n+2){display:none}.project-card__tagline{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.project-card__foot{display:none}.project-card__price{justify-content:space-between;align-items:center;gap:6px;margin-top:10px;display:flex}.project-card__price-now{color:var(--accent-deep);font-size:16px;font-weight:700}.project-card__price-now--free{color:#059669}.project-card__price-go{border-radius:var(--radius-chip);background:var(--accent-soft);color:var(--accent-deep);white-space:nowrap;align-items:center;gap:4px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.project-card__price-go svg{width:12px;height:12px}.mobile-buybar{z-index:44;padding:10px 16px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:saturate(180%)blur(14px);backdrop-filter:saturate(180%)blur(14px);border-top:1px solid var(--line);background:#fffffff7;align-items:center;gap:12px;display:flex;position:fixed;bottom:56px;left:0;right:0}.mobile-buybar__price{align-items:baseline;gap:6px;margin-right:auto;display:flex}.mobile-buybar__price strong{color:var(--accent-deep);font-size:20px}.mobile-buybar__price span{color:var(--ink-5);font-size:12px;text-decoration:line-through}.mobile-buybar__owned{color:var(--green);font-size:13px;font-weight:600}.detail{padding-bottom:64px}}.home-feed,.home-mobile{display:none}@media (width<=720px){.home-desktop{display:none}.home-mobile{padding:14px 0 24px;display:block}.hm-cat-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;margin-bottom:20px;padding:16px 8px 12px;box-shadow:0 8px 24px #0f172a0a}.hm-cat-head{justify-content:space-between;align-items:baseline;padding:0 8px 12px;display:flex}.hm-cat-title{color:var(--ink);font-size:17px;font-weight:700}.hm-cat-total{color:var(--ink-5);font-size:12px}.hm-cat,.hm-cat-grid{display:flex}.hm-cat{font:inherit;cursor:pointer;background:0 0;border:0;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:5px;padding:9px 2px 7px}.hm-cat--active{background:#f5f3ff}.hm-cat__icon{border-radius:50%;place-items:center;width:44px;height:44px;font-size:17px;font-weight:700;line-height:1;display:grid}.hm-cat__name{color:var(--ink-2);white-space:nowrap;font-size:12px;font-weight:600}.hm-cat__count{color:var(--ink-5);font-size:10.5px}.hm-list-head{justify-content:space-between;align-items:baseline;margin:0 2px 12px;display:flex}.hm-list-head h2{color:var(--ink);letter-spacing:-.3px;margin:0;font-size:20px;font-weight:700}.hm-list-head span{color:var(--ink-5);font-size:12px}.hm-list{flex-direction:column;gap:12px;display:flex}.hm-project{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px;display:block;position:relative;box-shadow:0 8px 24px #0f172a0a}.hm-project__body{color:inherit;display:block}.hm-project__head{align-items:flex-start;gap:12px;display:flex}.hm-project__icon{color:#fff;letter-spacing:.2px;border-radius:14px;flex:none;place-items:center;width:52px;height:52px;font-size:12px;font-weight:800;display:grid}.hm-project__main{flex:1;min-width:0}.hm-project__tagline--wide{margin-top:10px}.hm-project__name{color:var(--ink);letter-spacing:-.2px;margin:1px 0 0;font-size:17px;font-weight:700}.hm-project__tagline{color:var(--ink-4);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.hm-project__tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.hm-project__tag{color:#64748b;background:#f1f5f9;border-radius:999px;padding:3px 9px;font-size:11.5px;line-height:1.5}.hm-project__tag--lang{color:#6d28d9;background:#f5f3ff}.hm-project__tag--free{color:#047857;background:#ecfdf5}.hm-project__tag--vip{color:#6d28d9;background:#f5f3ff}.hm-project__tag--paid{color:#b45309;background:#fff7ed}.hm-project__foot{color:var(--ink-5);font-variant-numeric:tabular-nums;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:8px;margin-top:14px;padding-top:12px;font-size:12px;display:flex}.hm-project__go{color:var(--accent-deep);white-space:nowrap;align-items:center;gap:3px;font-size:12.5px;font-weight:600;display:inline-flex}.hm-project__go svg{width:14px;height:14px}.home-hero{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.home-section{padding:10px 0 26px}.home-projects,.home-section .section__head,.home-tutorials{display:none}.home-feed{display:block}.home-feed__chips{scrollbar-width:none;gap:8px;padding-bottom:12px;display:flex;overflow-x:auto}.home-feed__chips::-webkit-scrollbar{display:none}.home-feed__chips .chip{flex:none}.library-eyebrow,.library-features,.library-hero__meta,.library-hero__visual,.site-footer__main{display:none}.library-hero,.page-hero{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-footer{margin-top:30px}.site-footer__bottom{text-align:center;white-space:nowrap;flex-wrap:nowrap;justify-content:center;gap:6px;padding:16px 0 18px;font-size:11px}}.library-mobile{display:none}@media (width<=720px){.library-desktop{display:none}.library-mobile{padding:18px 0 10px;display:block}.libm-search{background:var(--surface);border:1px solid var(--line);height:42px;color:var(--ink-5);border-radius:12px;align-items:center;gap:8px;margin-bottom:16px;padding:0 14px;display:flex}.libm-search svg{flex:none;width:18px;height:18px}.libm-search input{min-width:0;height:100%;color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:13.5px}.libm-search input::placeholder{color:var(--ink-5)}.libm-layout{align-items:flex-start;gap:10px;display:flex}.libm-rail{top:calc(12px + var(--header-h));flex-direction:column;flex:0 0 84px;gap:4px;display:flex;position:sticky}.libm-cat{width:100%;color:var(--ink-3);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;padding:12px 8px;font-size:13.5px;position:relative}.libm-cat--active{background:var(--surface);color:var(--accent-deep);font-weight:700;box-shadow:0 6px 18px #0f172a0f}.libm-cat--active:before{content:"";background:var(--accent-deep);border-radius:3px;width:3px;height:18px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.libm-content{flex:1;min-width:0}.libm-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:12px;display:flex}.libm-head h2{color:var(--ink);letter-spacing:-.3px;margin:0;font-size:20px;font-weight:700}.libm-head span{color:var(--ink-5);white-space:nowrap;font-size:12px}.libm-list{flex-direction:column;gap:12px;display:flex}.libm-list .hm-project{padding:14px}.libm-list .hm-project__name{font-size:16px}.libm-end{color:var(--ink-5);text-align:center;margin:16px 0 0;font-size:11.5px}.libm-pagination{justify-content:center;align-items:center;gap:12px;margin-top:12px;display:flex}.libm-pagination button{border:1px solid var(--line);height:32px;color:var(--ink-3);background:#fff;border-radius:8px;padding:0 14px;font-size:12px}.libm-pagination button:disabled{color:var(--ink-5);opacity:.5}.libm-pagination span{color:var(--ink-4);font-size:12px}}.detail-legacy{padding-top:0;padding-bottom:150px}.md-head{background:radial-gradient(circle at 88% 10%,#8b5cf633,#0000 40%),linear-gradient(#fff,#faf9ff);border-bottom:1px solid #eef1f6;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:16px max(16px,50vw - 50%) 18px}.md-head__title{align-items:flex-start;gap:12px;display:flex}.md-head__icon{color:#fff;letter-spacing:.5px;border-radius:14px;flex:none;place-items:center;width:48px;height:48px;font-size:13px;font-weight:800;display:grid;box-shadow:0 10px 24px #0f172a29}.md-head__info{flex:1;min-width:0}.md-head__info h1{letter-spacing:-.4px;margin:0;font-size:20px;font-weight:800}.md-head__info p{color:var(--ink-4);margin:5px 0 0;font-size:12px;line-height:1.65}.md-head__fav{color:#94a3b8;cursor:pointer;background:#fff;border:1px solid #eef1f6;border-radius:50%;flex:none;place-items:center;width:32px;height:32px;margin-left:auto;padding:0;font-size:17px;line-height:1;display:grid}.md-head__fav.is-on{color:#f59e0b;background:#fffbeb;border-color:#fde68a}.md-head__tags{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.md-tag{color:#6d28d9;background:#f5f3ff;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;line-height:1.5;display:inline-flex}.md-tag--gray{color:#64748b;background:#f1f5f9}.md-tag--free{color:#047857;background:#ecfdf5}.md-tag--paid{color:#b45309;background:#fff7ed}.md-tag--vip{color:#6d28d9;background:#f5f3ff}.md-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:12px;margin-top:10px;padding:14px}.md-card__title{align-items:baseline;gap:8px;font-size:15px;font-weight:700;display:flex}.md-card__title em{color:var(--ink-4);font-size:12px;font-style:normal;font-weight:500}.md-chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.md-chips span{color:var(--ink-3);background:#f1f4f8;border-radius:8px;padding:6px 11px;font-size:12.5px}.md-gallery__head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.md-gallery__head em{color:var(--ink-4);font-size:11px;font-style:normal}.md-gallery__grid{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.md-gallery__grid::-webkit-scrollbar{display:none}.md-gallery__item{text-align:left;cursor:zoom-in;scroll-snap-align:start;background:0 0;border:0;flex-direction:column;flex:0 0 69%;gap:6px;padding:0;display:flex}.md-gallery__item img{aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover;border:1px solid var(--line);background:#f1f5f9;border-radius:8px;width:100%}.md-gallery__item span{color:var(--ink-4);font-size:10.5px;line-height:1.5}.md-mobile-tabs{z-index:30;border:1px solid var(--line);scrollbar-width:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border-radius:10px;gap:6px;margin-top:10px;padding:4px;display:flex;position:sticky;top:68px;overflow-x:auto}.md-mobile-tabs::-webkit-scrollbar{display:none}.md-mobile-tabs button{height:34px;color:var(--ink-4);white-space:nowrap;background:0 0;border:0;border-radius:8px;flex:none;padding:0 12px;font-size:12.5px;font-weight:600}.md-mobile-tabs button.is-active{background:var(--accent-soft);color:var(--accent-deep)}.md-mobile-tabs em{color:inherit;opacity:.7;margin-left:4px;font-size:11px;font-style:normal}.detail-legacy .side-buy{position:static;top:auto}.detail-legacy .article-content{font-size:14.5px;line-height:1.85}.detail-legacy .article-content h1{letter-spacing:-.3px;margin:24px 0 12px;font-size:26px;line-height:1.3}.detail-legacy .article-content h2{margin:26px 0 10px;padding-bottom:6px;font-size:20px}.detail-legacy .article-content h3{margin:22px 0 8px;font-size:17px}.detail-legacy .article-content p{margin:10px 0}.detail-legacy .article-content ol,.detail-legacy .article-content ul{padding-left:20px}.detail-legacy .article-content pre{white-space:pre-wrap;word-break:break-word;-webkit-overflow-scrolling:touch;border-radius:10px;padding:12px 14px;overflow-x:auto}.detail-legacy .article-content table{border:1px solid var(--line);table-layout:auto;border-radius:10px;width:100%;max-width:100%;display:block;overflow:visible}.detail-legacy .article-content thead{display:none}.detail-legacy .article-content tbody,.detail-legacy .article-content td,.detail-legacy .article-content tr,.md-detail-more{width:100%;display:block}.detail-legacy .article-content tr{border-bottom:1px solid var(--line);padding:12px 14px}.detail-legacy .article-content tr:last-child{border-bottom:0}.detail-legacy .article-content td{white-space:normal;border:0;min-width:0;padding:0}.detail-legacy .article-content td:first-child{color:var(--ink-2);margin-bottom:5px;font-weight:600}.detail-legacy .article-content td:first-child code{color:inherit;overflow-wrap:anywhere;background:0 0;padding:0}.detail-legacy .article-content td+td{color:var(--ink-3);font-size:13px;line-height:1.72}.md-detail-body{position:relative}.md-detail-body.is-collapsed{max-height:1200px;overflow:hidden}.md-detail-body.is-collapsed:after{content:"";background:linear-gradient(180deg,transparent,var(--surface) 92%);pointer-events:none;height:120px;position:absolute;bottom:0;left:0;right:0}.md-detail-more{border:1px solid var(--accent-line);background:var(--accent-soft);height:42px;color:var(--accent-deep);cursor:pointer;border-radius:10px;margin-top:14px;font-size:13px;font-weight:600}.image-lightbox{z-index:80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172adb;justify-content:center;align-items:center;padding:48px;display:flex;position:fixed;inset:0}.image-lightbox__figure{flex-direction:column;gap:12px;max-width:calc(min(1100px,90vw));max-height:86vh;margin:0;display:flex}.image-lightbox__figure img{-o-object-fit:contain;object-fit:contain;background:#0f172a;border-radius:12px;max-width:100%;max-height:78vh;box-shadow:0 24px 60px #00000059}.image-lightbox__figure figcaption{color:#e2e8f0;text-align:center;font-size:13px}.image-lightbox__close{width:40px;height:40px;font-size:24px;top:20px;right:24px}.image-lightbox__close,.image-lightbox__nav{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;line-height:1;position:absolute}.image-lightbox__nav{width:48px;height:48px;font-size:30px;top:50%;transform:translateY(-50%)}.image-lightbox__nav--prev{left:24px}.image-lightbox__nav--next{right:24px}@media (width<=860px){.image-lightbox{padding:24px 12px}.image-lightbox__nav{width:36px;height:36px;font-size:22px}.image-lightbox__nav--prev{left:8px}.image-lightbox__nav--next{right:8px}.image-lightbox__close{top:12px;right:12px}}.md-intro{color:var(--ink-3);font-size:14px;line-height:1.9}.md-intro,.md-points{margin:12px 0 0}.md-points li{color:var(--ink-3);padding:4px 0 4px 16px;font-size:13px;line-height:1.7;position:relative}.md-points li:before{content:"";background:var(--accent-line);border-radius:50%;width:6px;height:6px;position:absolute;top:12px;left:2px}.md-roles{margin-top:6px}.md-role{border-bottom:1px solid var(--line)}.md-role:last-child{border-bottom:0}.md-role summary{cursor:pointer;justify-content:space-between;align-items:center;padding:13px 0;list-style:none;display:flex}.md-role summary::-webkit-details-marker{display:none}.md-role summary span{font-size:14px;font-weight:600}.md-role summary em{color:var(--accent-deep);font-variant-numeric:tabular-nums;font-size:13px;font-style:normal}.md-role ul{padding:0 0 12px}.md-role ul li{color:var(--ink-4);padding:3px 0;font-size:12.5px;line-height:1.7}.md-role ul strong{color:var(--ink-2);margin-right:6px;font-weight:600}.md-structure{background:#0f172a;border:0;box-shadow:0 18px 44px #0f172a2e}.md-structure__head{justify-content:space-between;align-items:baseline;display:flex}.md-structure__head h2{color:#94a3b8;font-family:var(--font-mono);font-size:12.5px;font-weight:500}.md-structure__head span{color:#64748b;font-family:var(--font-mono);font-size:11.5px}.md-structure__body{margin-top:14px}.md-structure__body p{font-family:var(--font-mono);gap:10px;padding:5px 0;font-size:12.5px;line-height:1.6;display:flex}.md-structure__body i{color:#475569;flex:none;font-style:normal}.md-structure__body b{color:#e2e8f0;white-space:nowrap;font-weight:600}.md-structure__body span{color:#94a3b8;text-align:right;margin-left:auto}.md-tutorials{margin-top:4px}.md-tutorial{border-bottom:1px solid var(--line);color:inherit;justify-content:space-between;align-items:center;gap:14px;padding:13px 0;text-decoration:none;display:flex}.md-tutorial:last-child{border-bottom:0}.md-tutorial span{font-size:13.5px;line-height:1.6}.md-tutorial em{color:var(--ink-5);font-variant-numeric:tabular-nums;flex:none;font-size:12px;font-style:normal}.md-empty{color:var(--ink-4);margin-top:12px;font-size:13px}.md-source-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.md-source-stats>div{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:10px;padding:12px 10px}.md-source-stats strong{color:var(--ink);letter-spacing:-.3px;font-size:17px;font-weight:800;display:block}.md-source-stats span{color:var(--ink-5);margin-top:3px;font-size:11px;display:block}.md-source-block{margin-top:20px}.md-source-block h3{color:var(--ink-2);margin:0 0 8px;font-size:13px;font-weight:700}.md-source-dirs,.md-source-exts{flex-wrap:wrap;gap:6px;display:flex}.md-source-dirs>span{border:1px solid var(--line);background:var(--surface);color:var(--ink-3);border-radius:8px;align-items:center;gap:6px;padding:6px 9px;font-size:12px;display:inline-flex}.md-source-dirs code{color:var(--ink-2);font-family:Menlo,Consolas,Courier New,monospace;font-size:11px}.md-source-dirs em,.md-source-exts em{color:var(--ink-5);font-size:11px;font-style:normal}.md-source-exts>span{background:var(--surface-soft);color:var(--ink-3);border-radius:7px;padding:5px 9px;font-size:11px}.md-source-files{gap:5px;margin:0;padding:0;list-style:none;display:grid}.md-source-files li{background:var(--surface-soft);border-radius:7px;padding:7px 10px}.md-source-files code{color:var(--ink-3);word-break:break-all;font-family:Menlo,Consolas,Courier New,monospace;font-size:11px}.md-source-note{background:var(--surface-soft);color:var(--ink-4);border-radius:9px;margin:18px 0 0;padding:10px 12px;font-size:11.5px;line-height:1.7}.md-release-list{margin-top:14px;padding-left:18px;position:relative}.md-release-list:before{content:"";background:var(--line);width:1px;position:absolute;top:5px;bottom:5px;left:4px}.md-release{padding-bottom:20px;position:relative}.md-release:last-child{padding-bottom:0}.md-release:before{content:"";border:2px solid var(--accent);background:#fff;border-radius:50%;width:7px;height:7px;position:absolute;top:4px;left:-18px}.md-release__head{align-items:baseline;gap:8px;display:flex}.md-release__head strong{color:var(--ink);font-size:13px}.md-release__head span{color:var(--ink-5);font-size:11px}.md-release h3{color:var(--ink-2);margin:5px 0 0;font-size:13px;font-weight:600}.md-release p{color:var(--ink-4);white-space:pre-line;margin:5px 0 0;font-size:12.5px;line-height:1.7}.md-custom__text{color:var(--ink-3);margin:1em 0 14px;font-size:13.5px;line-height:1.75}.md-custom__mail{color:var(--accent-deep);text-align:center;margin-top:10px;font-size:12px;display:block}.md-section-title{margin:26px 0 12px;font-size:16px;font-weight:700}.md-source .sidebar__hint{font-size:11.5px}.md-deep .doc-section{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:16px;margin-top:14px;padding:18px}.md-deep .doc-section__head{margin-bottom:12px}.md-deep .doc-section__head h2{font-size:15px}.md-notes{color:var(--ink-5);text-align:center;margin:12px 4px 0;font-size:10.5px;line-height:1.7}.md-notes p{margin:4px 0}.md-notes a{color:var(--accent-deep);font-weight:600}.md-buybar{z-index:44;border-top:1px solid var(--line);-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);background:#fffffff5;align-items:center;gap:10px;padding:8px 14px;display:flex;position:fixed;bottom:56px;left:0;right:0}.md-buybar__meta{flex:1;min-width:0}.md-buybar__meta strong{color:var(--ink-2);letter-spacing:-.2px;font-size:14px;font-weight:800;display:block}.md-buybar__meta span{color:var(--ink-5);margin-top:2px;font-size:10.5px;display:block}.md-buybar .btn{flex:none}@media (width<=720px){.tutorials-page .page-hero{clip:auto;white-space:normal;background:radial-gradient(circle at 88% 8%,#8b5cf633,#0000 40%),linear-gradient(#fff,#faf9ff);border:0;border-bottom:1px solid #eef1f6;width:auto;height:auto;margin:0;padding:24px 0 20px;position:static;overflow:visible}.tutorials-page .page-hero h1{letter-spacing:-.6px;font-size:24px}.tutorials-page .page-hero__desc{margin-top:8px;font-size:13px;line-height:1.65}.tutorials-page .page-hero__stats{display:none}.tutorials-page .toolbar{flex-direction:column;align-items:stretch;gap:10px;margin:14px 0 16px}.tutorials-page .toolbar>*{width:100%;min-width:0;max-width:100%}.tutorials-page .toolbar .search-box{display:flex}.tutorials-page .filters{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.tutorials-page .filters::-webkit-scrollbar{display:none}.tutorials-page .filters .chip{flex:none}.tutorials-page .result-count{font-size:12px}.tutorials-page .tutorial-grid{gap:10px;padding-bottom:24px!important}.tutorials-page .tutorial-card{border-radius:12px;gap:6px;padding:14px;box-shadow:0 4px 14px #0f172a08}.tutorials-page .tutorial-card:hover{transform:none;box-shadow:0 4px 14px #0f172a08}.tutorials-page .tutorial-card__series{letter-spacing:0;text-transform:none;font-size:11px}.tutorials-page .final-cta,.tutorials-page .tutorial-card__foot svg,.tutorials-page .tutorial-card__series .series-dot{display:none}.tutorials-page .tutorial-card__title{font-size:15px;line-height:1.45}.tutorials-page .tutorial-card__summary{min-height:0;font-size:12.5px}.tutorials-page .tutorial-card__foot{padding-top:9px;font-size:11px}}.pc-container{width:min(1240px,100% - 64px);margin:0 auto}.pc-topbar{color:#64748b;background:#f8fafc;border-bottom:1px solid #eef0f3;font-size:12px}.pc-topbar__inner{justify-content:space-between;align-items:center;height:30px;display:flex}.pc-topbar__links a:hover,.pc-topbar__tag{color:#6d28d9}.pc-topbar__links{align-items:center;gap:18px;display:flex}.pc-header{z-index:60;background:#fffffff0;border-bottom:1px solid #e2e8f0;height:72px;transition:height .2s,background .2s,box-shadow .2s;position:sticky;top:0}.pc-header--scrolled{-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);background:#ffffffe0;height:60px;box-shadow:0 1px #0f172a05}.pc-header__inner{align-items:center;gap:28px;height:100%;display:flex}.pc-brand{color:#15171c;flex:none;align-items:center;gap:9px;display:inline-flex}.pc-brand__mark{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:9px;place-items:center;width:32px;height:32px;display:grid;box-shadow:0 6px 16px #6d28d938}.pc-brand__mark svg{width:17px;height:17px}.pc-brand__name{letter-spacing:-.2px;font-size:16px;font-weight:800}.pc-brand__domain{color:#94a3b8;letter-spacing:.8px;margin-left:-2px;font-size:10px;font-weight:600}.pc-nav{gap:26px;margin-left:8px;display:flex}.pc-nav,.pc-nav a{align-items:center}.pc-nav a{color:#475569;white-space:nowrap;gap:5px;padding:6px 0;font-size:13.5px;display:inline-flex;position:relative}.pc-nav__icon{stroke-width:1.8px;flex:none;width:16px;height:16px}.pc-nav a.router-link-active,.pc-nav a:hover{color:#6d28d9;font-weight:600}.pc-nav a.router-link-active:after{content:"";background:#7c3aed;border-radius:2px;width:16px;height:2px;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.pc-header__right{flex:none;gap:16px;margin-left:auto}.pc-header__right,.pc-search{align-items:center;display:flex}.pc-search{color:#94a3b8;background:#fff;border:1px solid #e2e8f0;border-radius:9px;gap:8px;width:250px;height:38px;padding:0 13px}.pc-search:focus-within{border-color:#ddd6fe;box-shadow:0 0 0 3px #7c3aed14}.pc-search svg{flex:none;width:15px;height:15px}.pc-search input{color:#15171c;background:0 0;border:0;outline:none;flex:1;min-width:0;height:100%;font-size:12.5px}.pc-search input::placeholder{color:#94a3b8}.pc-auth-link{color:#475569;white-space:nowrap;font-size:13px}.pc-auth-link:hover{color:#6d28d9}.pc-auth-btn{color:#fff;white-space:nowrap;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:9px;justify-content:center;align-items:center;height:38px;padding:0 18px;font-size:13px;font-weight:600;display:inline-flex;box-shadow:0 8px 20px #6d28d93d}.pc-auth-btn:hover{background:linear-gradient(135deg,#7c3aed,#5b21b6)}.pc-user{color:#15171c;align-items:center;gap:8px;font-size:13px;display:inline-flex}.pc-user__avatar{color:#fff;background:linear-gradient(135deg,#8b5cf6,#2563eb);border-radius:50%;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid;position:relative}.pc-user__avatar img{-o-object-fit:cover;object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.pc-user__crown{color:#d97706;background:#fff8e6;border-radius:50%;place-items:center;width:15px;height:15px;display:grid;position:absolute;bottom:-3px;right:-3px}.pc-user__crown svg{width:10px;height:10px}.mobile-header{display:none}.pc-btn{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;height:42px;padding:0 20px;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s,transform .15s;display:inline-flex}.pc-btn svg{width:15px;height:15px}.pc-btn--dark{color:#fff;background:#15171c}.pc-btn--dark:hover{background:#334155}.pc-btn--primary{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 8px 20px #6d28d93d}.pc-btn--primary:hover{background:linear-gradient(135deg,#7c3aed,#5b21b6);transform:translateY(-1px);box-shadow:0 12px 26px #6d28d952}.pc-btn--ghost{color:#334155;background:#fff;border-color:#e2e8f0}.pc-btn--ghost:hover{color:#6d28d9;border-color:#ddd6fe}.pc-eyebrow{color:#6d28d9;letter-spacing:1.4px;text-transform:uppercase;align-items:center;gap:9px;font-size:11.5px;font-weight:700;display:inline-flex}.pc-eyebrow:before{content:"";background:#8b5cf6;width:24px;height:1px}.pc-project-card{background:#fff;border:1px solid #e2e8f0;border-radius:13px;flex-direction:column;min-height:214px;padding:18px 18px 0;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex}.pc-project-card:hover{border-color:#ddd6fe;transform:translateY(-2px);box-shadow:0 14px 32px #4c1d951a,0 4px 14px #0f172a0a}.pc-project-card__meta{color:#64748b;justify-content:space-between;align-items:center;gap:8px;font-size:11.5px;display:flex}.pc-project-card__meta-left{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;min-width:0;display:inline-flex;overflow:hidden}.pc-project-card__dot{border-radius:50%;flex:none;width:6px;height:6px}.pc-access{border-radius:999px;flex:none;padding:2px 8px;font-size:11px;font-weight:600;line-height:1.6}.pc-access--free{color:#047857;background:#ecfdf5}.pc-access--vip{color:#6d28d9;background:#f5f3ff}.pc-access--paid{color:#b45309;background:#fff7ed}.pc-project-card__title{color:#15171c;text-overflow:ellipsis;white-space:nowrap;margin:12px 0 0;font-size:17px;font-weight:700;line-height:1.35;overflow:hidden}.pc-project-card__tagline{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:41px;margin:8px 0 0;font-size:12.5px;line-height:1.65;display:-webkit-box;overflow:hidden}.pc-project-card__tags{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.pc-tag{color:#64748b;white-space:nowrap;background:#eef0f3;border-radius:5px;align-items:center;height:22px;padding:0 8px;font-size:10.5px;display:inline-flex}.pc-project-card__foot{color:#94a3b8;font-variant-numeric:tabular-nums;border-top:1px solid #eef0f3;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding:12px 0;font-size:11px;display:flex}.pc-project-card__link{color:#6d28d9;align-items:center;gap:4px;font-size:11.5px;font-weight:600;display:inline-flex}.pc-project-card__link svg{width:12px;height:12px}.pc-footer{background:#fff;border-top:1px solid #e2e8f0}.pc-footer__main{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;padding:52px 0 40px;display:grid}.pc-brand--footer{gap:8px}.pc-footer__brand p{color:#64748b;max-width:300px;margin:16px 0 0;font-size:12.5px;line-height:1.7}.pc-footer__contact{color:#94a3b8;gap:8px;margin-top:18px;font-size:11.5px;display:flex}.pc-footer__contact a:hover{color:#6d28d9}.pc-footer__col{flex-direction:column;gap:10px;display:flex}.pc-footer__col h4{color:#15171c;margin:0 0 4px;font-size:12px;font-weight:700}.pc-footer__col a{color:#64748b;font-size:12px}.pc-footer__col a:hover{color:#6d28d9}.pc-footer__bottom{color:#94a3b8;border-top:1px solid #eef0f3;justify-content:space-between;align-items:center;padding:16px 0 22px;font-size:11px;display:flex}.mobile-footer{display:none}@media (width<=860px){.pc-footer,.pc-header,.pc-topbar{display:none}.mobile-footer,.mobile-header{display:block}}.pc-home{background:#f8fafc}.pc-hero{background:linear-gradient(#fbfcfe,#f8fafc);border-bottom:1px solid #eef0f3}.pc-hero__inner{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);align-items:center;gap:76px;padding:74px 0 82px;display:grid}.pc-hero__copy h1{color:#15171c;letter-spacing:-1.6px;margin:20px 0 0;font-size:calc(clamp(40px,4.2vw,56px));font-weight:800;line-height:1.16}.pc-hero__accent{color:#7c3aed}.pc-hero__desc{color:#64748b;max-width:520px;margin:22px 0 0;font-size:14.5px;line-height:1.8}.pc-hero__actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.pc-hero__actions .pc-btn{height:44px;padding:0 22px}.pc-terminal{background:#0f172a;border:1px solid #ffffff0f;border-radius:16px;overflow:hidden;box-shadow:0 28px 70px #4c1d9524}.pc-terminal__bar{background:#1e293b;border-bottom:1px solid #ffffff12;align-items:center;gap:12px;height:44px;padding:0 16px;display:flex}.pc-terminal__dots{gap:6px;display:inline-flex}.pc-terminal__dots i{background:#3a3f4d;border-radius:50%;width:8px;height:8px}.pc-terminal__dots i:first-child{background:#ff5f57}.pc-terminal__dots i:nth-child(2){background:#febc2e}.pc-terminal__dots i:nth-child(3){background:#28c840}.pc-terminal__title{color:#64748b;margin-left:auto;font-family:Menlo,Consolas,monospace;font-size:10.5px}.pc-terminal__body{color:#cbd5e1;min-height:300px;padding:20px 22px;font-family:Menlo,Consolas,Courier New,monospace;font-size:11.5px;line-height:1.95}.pc-terminal__body p{white-space:pre-wrap;margin:0}.pc-terminal__prompt{color:#7c3aed}.pc-terminal__muted{color:#64748b}.pc-terminal__link{color:#8b5cf6}.pc-terminal__foot{color:#64748b;border-top:1px solid #ffffff12;justify-content:space-between;align-items:center;height:42px;padding:0 16px;font-size:10.5px;display:flex}.pc-terminal__ok{align-items:center;gap:7px;display:inline-flex}.pc-terminal__ok i{background:#34d399;border-radius:50%;width:6px;height:6px}.pc-terminal__ready{color:#34d399;letter-spacing:1px;font-family:Menlo,Consolas,monospace;font-size:9.5px}.pc-stats{background:#fff;border-bottom:1px solid #eef0f3}.pc-stats__grid{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.pc-stat{padding:26px 0}.pc-stat+.pc-stat{border-left:1px solid #eef0f3;padding-left:40px}.pc-stat strong{color:#15171c;letter-spacing:-.6px;font-variant-numeric:tabular-nums;font-size:26px;font-weight:700;display:block}.pc-stat span{color:#94a3b8;margin-top:6px;font-size:11.5px;display:block}.pc-section{padding:86px 0}.pc-home-projects{background:#f8fafc}.pc-section__head{justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.pc-section__head h2{color:#15171c;letter-spacing:-1px;margin:14px 0 0;font-size:calc(clamp(28px,2.9vw,38px));font-weight:700;line-height:1.25}.pc-section__head p{color:#64748b;max-width:680px;margin:14px 0 0;font-size:13px;line-height:1.8}.pc-section__more{color:#15171c;flex:none;align-items:center;gap:4px;margin-bottom:8px;font-size:12.5px;font-weight:600;display:inline-flex}.pc-section__more svg{width:13px;height:13px}.pc-section__more:hover{color:#6d28d9}.pc-home-projects .pc-section__head{margin-bottom:28px}.pc-card-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.pc-how{color:#fff;background:#0f172a}.pc-how__inner{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:110px;padding:82px 0 88px;display:grid}.pc-how__copy h2{letter-spacing:-.8px;margin:16px 0 0;font-size:calc(clamp(28px,2.8vw,36px));font-weight:700}.pc-how__copy p{color:#94a3b8;margin:20px 0 0;font-size:13px;line-height:1.9}.pc-how__author{align-items:center;gap:11px;margin-top:30px;display:flex}.pc-how__avatar{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:50%;place-items:center;width:34px;height:34px;font-size:13px;font-weight:700;display:grid}.pc-how__author strong{font-size:12.5px;font-weight:600;display:block}.pc-how__author span{color:#64748b;margin-top:2px;font-size:11px;display:block}.pc-how__rows{margin:0}.pc-how__rows>div{border-bottom:1px solid #ffffff14;grid-template-columns:90px minmax(0,1fr);gap:20px;padding:16px 0;display:grid}.pc-how__rows dt{color:#64748b;font-size:11px}.pc-how__rows dd{color:#cbd5e1;margin:0;font-size:12.5px;line-height:1.7}@media (width<=1180px){.pc-nav{gap:18px}.pc-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=1024px){.pc-hero__inner{grid-template-columns:1fr;gap:44px;padding:56px 0 60px}.pc-terminal{max-width:680px}.pc-how__inner{grid-template-columns:1fr;gap:46px;padding:58px 0 62px}.pc-stats__grid{grid-template-columns:1fr 1fr}.pc-stat:nth-child(3){border-left:0;padding-left:0}.pc-stat:nth-child(n+3){border-top:1px solid #eef0f3}}@media (width<=900px){.pc-brand__domain{display:none}.pc-nav{gap:14px}.pc-nav a{font-size:13px}.pc-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-section{padding:64px 0}}.pc-hero__copy h1{letter-spacing:-1.2px;font-size:calc(clamp(38px,3.45vw,48px))}.pc-section__head--split>div{max-width:900px}.pc-section__head h2{font-size:calc(clamp(28px,2.6vw,36px))}.pc-library{background:#f8fafc}.pc-library-head{background:#fff;padding:66px 0 38px}.pc-library-head h1{color:#15171c;letter-spacing:-1.6px;margin:16px 0 0;font-size:calc(clamp(44px,4.4vw,62px));font-weight:800;line-height:1.1}.pc-library-head p{color:#64748b;margin:16px 0 0;font-size:13px}.pc-filterbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;margin-bottom:26px;display:flex}.pc-filterbar__right{align-items:center;gap:16px;margin-left:auto;display:flex}.pc-library-search{width:260px;height:34px}.pc-filter-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pc-chip{color:#475569;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:18px;height:34px;padding:0 15px;font-size:12.5px;transition:background .15s,border-color .15s,color .15s}.pc-chip:hover{color:#6d28d9;border-color:#ddd6fe}.pc-chip--active{color:#fff;background:#15171c;border-color:#15171c}.pc-sort{color:#64748b;white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:inline-flex}.pc-sort svg{width:13px;height:13px}.pc-card-grid--library{grid-template-columns:repeat(4,minmax(0,1fr))}.pc-pagination{color:#94a3b8;justify-content:space-between;align-items:center;margin-top:32px;font-size:12px;display:flex}.pc-pagination__pages{align-items:center;gap:6px;display:flex}.pc-pagination__pages button{color:#475569;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;place-items:center;width:32px;height:32px;font-size:12px;display:grid}.pc-pagination__pages button:disabled{opacity:.4;cursor:default}.pc-pagination__pages button.pc-pagination__page--active{background:#15171c;border-color:#15171c}@media (width<=1180px){.pc-card-grid--library{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.pc-card-grid--library{grid-template-columns:repeat(2,minmax(0,1fr))}}.detail-legacy{display:none}.pc-detail__crumbs{color:#94a3b8;align-items:center;gap:8px;padding:22px 0 0;font-size:11.5px;display:flex}.pc-detail__crumbs a:hover{color:#6d28d9}.pc-detail__crumb-now{color:#475569}.pc-detail__hero{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:56px;padding:30px 0 44px;display:grid}.pc-detail__hero-main h1{color:#15171c;letter-spacing:-1.2px;margin:12px 0 0;font-size:calc(clamp(38px,3.6vw,50px));font-weight:800;line-height:1.15}.pc-detail__hero-main>p{color:#64748b;max-width:700px;margin:16px 0 0;font-size:14px;line-height:1.85}.pc-get-code{border:1px solid #e2e8f0;border-radius:14px;padding:20px;box-shadow:0 12px 36px #0f172a0d}.pc-get-code__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.pc-get-code__eyebrow{color:#7c3aed;letter-spacing:1.2px;font-size:10px;font-weight:700}.pc-get-code__license{color:#6d28d9;background:#f5f3ff;border-radius:4px;padding:3px 8px;font-size:10px}.pc-get-code__stats{grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;display:grid}.pc-get-code__stats strong{color:#15171c;letter-spacing:-.4px;font-variant-numeric:tabular-nums;font-size:23px;font-weight:700;display:block}.pc-get-code__stats span{color:#94a3b8;margin-top:2px;font-size:10.5px;display:block}.pc-get-code__main,.pc-get-code__sub{width:100%;margin-top:8px}.pc-get-code__sub{height:38px;font-size:12.5px}.pc-get-code__price{margin-top:16px;display:flex}.pc-get-code__price strong{color:#15171c;font-size:22px;font-weight:700}.pc-get-code__price>span{color:#94a3b8;font-size:11.5px}.pc-get-code__original{text-decoration:line-through}.pc-get-code__owned{color:#059669!important}.pc-get-code__redeem{gap:6px;margin-top:12px;display:flex}.pc-get-code__redeem input{background:#fff;border:1px solid #e2e8f0;border-radius:7px;outline:none;flex:1;min-width:0;height:34px;padding:0 10px;font-size:11.5px}.pc-get-code__redeem button{color:#fff;cursor:pointer;background:#15171c;border:0;border-radius:7px;flex:none;height:34px;padding:0 12px;font-size:11.5px}.pc-detail-tabs{z-index:30;-webkit-backdrop-filter:saturate(180%)blur(8px);backdrop-filter:saturate(180%)blur(8px);background:#fffffff7;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;scroll-margin-top:60px;position:sticky;top:60px;box-shadow:0 6px 16px #0f172a0a}.pc-detail-tabs__inner{align-items:center;gap:34px;display:flex}.pc-detail-tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;height:52px;font-size:13px;position:relative}.pc-detail-tabs button span{color:#94a3b8;font-size:11px}.pc-detail-tabs button.is-active{color:#15171c;font-weight:600}.pc-detail-tabs button.is-active:after{content:"";background:#7c3aed;border-radius:2px;height:2px;position:absolute;bottom:0;left:0;right:0}.pc-detail__layout{grid-template-columns:minmax(0,1fr) 286px;align-items:start;gap:46px;padding:44px 0 72px;display:grid}.pc-detail__layout--source{grid-template-columns:minmax(0,1fr)}.pc-detail__article .pc-doc-section:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0}.pc-doc-section{border-bottom:1px solid #e2e8f0;margin-bottom:38px;padding:0 0 38px}.pc-doc-section:last-child{border-bottom:0;margin-bottom:0}.pc-doc-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;display:flex}.pc-doc-head h2{color:#15171c;letter-spacing:-.5px;margin:0;font-size:23px;font-weight:700}.pc-doc-head>span{color:#94a3b8;font-size:11px}.pc-doc-lead{color:#475569;margin:0;font-size:13.5px;line-height:1.9}.pc-doc-points{margin:16px 0 0;padding:0;list-style:none}.pc-doc-points li{color:#64748b;margin-top:8px;padding-left:16px;font-size:12.5px;line-height:1.8;position:relative}.pc-doc-points li:before{content:"";background:#ddd6fe;border-radius:50%;width:5px;height:5px;position:absolute;top:10px;left:0}.pc-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pc-feature-card{background:#fff;border:1px solid #e2e8f0;border-radius:11px;padding:16px}.pc-feature-card__head{border-bottom:1px solid #eef0f3;justify-content:space-between;align-items:baseline;gap:8px;padding-bottom:10px;display:flex}.pc-feature-card__head h3{color:#15171c;margin:0;font-size:13px;font-weight:700}.pc-feature-card__head span{color:#7c3aed;font-size:10.5px}.pc-feature-card ul{margin:10px 0 0;padding:0;list-style:none}.pc-feature-card li{color:#64748b;margin-top:6px;font-size:11.5px;line-height:1.65}.pc-feature-card li strong{color:#475569;font-weight:600;display:block}.pc-tree-window{color:#cbd5e1;background:#0f172a;border-radius:12px;font-family:Menlo,Consolas,Courier New,monospace;font-size:11.5px;overflow:hidden}.pc-tree-window__bar{color:#64748b;border-bottom:1px solid #ffffff12;justify-content:space-between;align-items:center;padding:11px 16px;font-size:10.5px;display:flex}.pc-tree-window__body{padding:14px 16px 16px}.pc-tree-row{color:#cbd5e1;justify-content:space-between;gap:20px;padding:5px 0;display:flex}.pc-tree-row__desc{color:#64748b}.pc-tree-row--more{color:#a78bfa;text-align:left;cursor:pointer;background:0 0;border:0;width:100%;margin-top:8px;padding:0;font-family:inherit;font-size:10.5px}.pc-tutorial-list{border-top:1px solid #e2e8f0}.pc-tutorial-row{border-bottom:1px solid #eef0f3;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 2px;display:grid}.pc-tutorial-row:hover{color:#6d28d9}.pc-tutorial-row__index{color:#94a3b8;font-variant-numeric:tabular-nums;font-size:11px}.pc-tutorial-row__title{color:#334155;font-size:12.5px}.pc-tutorial-row__time{color:#94a3b8;font-size:10.5px}.pc-doc-empty{color:#94a3b8;margin:0;font-size:12px}.pc-source-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.pc-source-stats>div{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px 18px}.pc-source-stats strong{color:#15171c;letter-spacing:-.5px;font-size:24px;font-weight:800;display:block}.pc-source-stats span{color:#94a3b8;margin-top:4px;font-size:11px;display:block}.pc-source-block{margin-top:24px}.pc-source-block h3{color:#334155;margin:0 0 10px;font-size:13px;font-weight:700}.pc-source-dirs{flex-wrap:wrap;gap:8px;display:flex}.pc-source-dirs>span{color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:9px;align-items:center;gap:8px;padding:7px 11px;font-size:11.5px;display:inline-flex}.pc-source-dirs code{color:#334155;font-family:Menlo,Consolas,Courier New,monospace;font-size:11px}.pc-source-dirs em{color:#94a3b8;font-size:10.5px;font-style:normal}.pc-source-exts{flex-wrap:wrap;gap:8px;display:flex}.pc-source-exts>span{color:#475569;background:#f1f5f9;border-radius:8px;padding:6px 10px;font-size:11px}.pc-source-exts em{color:#94a3b8;margin-left:4px;font-style:normal}.pc-source-files{gap:6px;margin:0;padding:0;list-style:none;display:grid}.pc-source-files li{background:#f8fafc;border-radius:8px;padding:8px 12px}.pc-source-files code{color:#475569;font-family:Menlo,Consolas,Courier New,monospace;font-size:11px}.pc-source-note{color:#94a3b8;background:#f8fafc;border-radius:10px;margin:20px 0 0;padding:12px 14px;font-size:11.5px;line-height:1.7}.pc-release-list{padding-left:22px;position:relative}.pc-release-list:before{content:"";background:#e2e8f0;width:1px;position:absolute;top:6px;bottom:6px;left:5px}.pc-release{padding-bottom:24px;position:relative}.pc-release:last-child{padding-bottom:0}.pc-release:before{content:"";background:#fff;border:2px solid #7c3aed;border-radius:50%;width:9px;height:9px;position:absolute;top:5px;left:-22px}.pc-release__head{align-items:baseline;gap:10px;display:flex}.pc-release__head strong{color:#15171c;font-size:14px}.pc-release__head span{color:#94a3b8;font-size:11px}.pc-release h3{color:#334155;margin:6px 0 0;font-size:13px;font-weight:600}.pc-release p{color:#64748b;white-space:pre-line;margin:6px 0 0;font-size:12px;line-height:1.75}.pc-faq-list{gap:8px;display:grid}.pc-faq-list details{background:#fff;border:1px solid #e2e8f0;border-radius:9px;padding:13px 16px}.pc-faq-list summary{color:#334155;cursor:pointer;font-size:12.5px}.pc-faq-list p{color:#64748b;margin:9px 0 0;font-size:12px;line-height:1.75}.pc-source-layout{grid-template-columns:260px minmax(0,1fr);gap:14px;min-height:420px;display:grid}.pc-source-tree{max-height:520px;padding:10px;overflow:auto}.pc-source-main,.pc-source-tree{background:#fff;border:1px solid #e2e8f0;border-radius:10px}.pc-source-main{min-width:0;overflow:hidden}.pc-source-path{color:#94a3b8;border-bottom:1px solid #eef0f3;padding:9px 12px;font-family:Menlo,Consolas,monospace;font-size:10.5px}.pc-source-lock{text-align:center;padding:48px 24px}.pc-source-lock h3{color:#334155;margin:0;font-size:16px}.pc-source-lock p{color:#64748b;max-width:420px;margin:10px auto 18px;font-size:12px;line-height:1.75}.pc-detail__side{flex-direction:column;gap:12px;display:flex}.pc-side-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:18px}.pc-side-card h3{color:#15171c;align-items:center;gap:6px;margin:0 0 10px;font-size:13px;font-weight:700;display:flex}.pc-side-card__icon{color:#7c3aed;flex:none;display:inline-flex}.pc-side-card__icon,.pc-side-card__icon svg{width:14px;height:14px}.pc-side-card p{color:#64748b;margin:0;font-size:11.5px;line-height:1.8}.pc-side-card ul{margin:0;padding:0;list-style:none}.pc-side-card li{color:#64748b;margin-top:7px;padding-left:12px;font-size:11.5px;line-height:1.65;position:relative}.pc-side-card li:before{content:"·";color:#94a3b8;position:absolute;top:-1px;left:0}.pc-side-card--purple{background:#f5f3ff;border-color:#ddd6fe}.pc-side-card--purple h3{color:#6d28d9}.pc-side-card--amber{background:#fffaf0;border-color:#fdeccb}.pc-side-card--amber h3{color:#b45309}.pc-reading-list{margin:0;padding:0;list-style:none}.pc-reading-list li{border-top:1px solid #eef0f3;grid-template-columns:20px minmax(0,1fr);gap:8px;padding:8px 0;display:grid}.pc-reading-list li:first-child{border-top:0;padding-top:0}.pc-reading-list>li>span{color:#94a3b8;font-variant-numeric:tabular-nums;font-size:10.5px}.pc-reading-list strong{color:#475569;font-size:11.5px;font-weight:600;display:block}.pc-reading-list p{color:#94a3b8;margin:2px 0 0;font-size:10.5px;line-height:1.55}.pc-other-list{flex-direction:column;display:flex}.pc-other-list a{color:#475569;border-top:1px solid #eef0f3;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:11.5px;display:flex}.pc-other-list a:first-child{border-top:0;padding-top:0}.pc-other-list a:hover{color:#6d28d9}.pc-other-list em{font-size:10.5px;font-style:normal}.pc-custom-card{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:16px;justify-content:space-between;align-items:center;gap:40px;padding:34px 38px;display:flex}.pc-custom-card h3{color:#15171c;letter-spacing:-.5px;margin:10px 0 0;font-size:26px;font-weight:700}.pc-custom-card p{color:#64748b;max-width:640px;margin:8px 0 0;font-size:12px;line-height:1.7}.pc-custom-card__actions{flex-direction:column;flex:none;align-items:flex-end;gap:8px;display:flex}.pc-custom-card__actions a:last-child{color:#7c3aed;font-size:11.5px}@media (width<=1100px){.pc-detail__hero{grid-template-columns:minmax(0,1fr) 300px;gap:34px}.pc-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-detail__layout{grid-template-columns:minmax(0,1fr) 260px;gap:28px}}@media (width<=860px){.detail-pc{display:none}.detail-legacy{display:block}}.pc-detail__heading{align-items:center;gap:16px;margin-top:12px;display:flex}.pc-detail__heading h1{margin:0}.pc-detail__icon{color:#fff;border-radius:14px;flex:none;place-items:center;width:56px;height:56px;font-size:14px;font-weight:800;display:grid}.pc-brand,.pc-detail__crumbs a,.pc-footer a,.pc-nav a,.pc-project-card{text-decoration:none}.pc-about-hero,.pc-custom-hero{background:#fff;border-bottom:1px solid #eef0f3;padding:72px 0 46px}.pc-about-hero h1,.pc-custom-hero h1{color:#15171c;letter-spacing:-1.5px;margin:18px 0 0;font-size:calc(clamp(40px,4vw,56px));font-weight:800;line-height:1.18}.pc-about-hero>.pc-container>p,.pc-custom-hero>.pc-container>p{color:#64748b;max-width:700px;margin:20px 0 0;font-size:14px;line-height:1.85}.pc-custom-hero .pc-hero__actions{margin-top:28px}.pc-info-section+.pc-info-section{padding-top:6px}.pc-info-section h2{color:#15171c;letter-spacing:-.8px;margin:0;font-size:calc(clamp(26px,2.6vw,34px));font-weight:700}.pc-info-sub{color:#64748b;margin:12px 0 0;font-size:12.5px}.pc-scope-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:26px;display:grid}.pc-scope-grid article{background:#fff;border:1px solid #e2e8f0;border-radius:11px;padding:18px}.pc-scope-grid h3{color:#15171c;margin:0;font-size:13px;font-weight:700}.pc-scope-grid p{color:#64748b;margin:9px 0 0;font-size:11.5px;line-height:1.75}.pc-step-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin-top:30px;display:grid}.pc-step-grid article>span{color:#7c3aed;font-size:11px;font-weight:700}.pc-step-grid h3{color:#15171c;margin:12px 0 0;font-size:13px;font-weight:700}.pc-step-grid p{color:#64748b;margin:8px 0 0;font-size:11.5px;line-height:1.75}.pc-contact-dark{margin:34px 0 72px}.pc-contact-dark__inner{color:#fff;background:#0f172a;border-radius:16px;justify-content:space-between;align-items:center;gap:40px;padding:44px 42px;display:flex}.pc-contact-dark h2{letter-spacing:-.6px;margin:0;font-size:28px;font-weight:700;line-height:1.35}.pc-contact-dark p{color:#94a3b8;margin:12px 0 0;font-size:12px}.pc-contact-dark__mail{flex-direction:column;flex:none;align-items:flex-end;gap:12px;display:flex}.pc-contact-dark__mail strong{letter-spacing:-.4px;font-size:22px;font-weight:600}.pc-contact-dark__mail .pc-btn--ghost{color:#fff;background:0 0;border-color:#ffffff40}.pc-about__layout{grid-template-columns:minmax(0,1fr) 330px;gap:80px;padding:54px 0 76px;display:grid}.pc-about__main section{border-bottom:1px solid #e2e8f0;margin-bottom:34px;padding-bottom:34px}.pc-about__main section:last-child{border-bottom:0;margin-bottom:0}.pc-about__main h2{color:#15171c;margin:0 0 12px;font-size:17px;font-weight:700}.pc-about__main p{color:#64748b;margin:0;font-size:13px;line-height:1.9}.pc-about__side{flex-direction:column;gap:14px;display:flex}.pc-about-stats{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.pc-about-stats h3{color:#15171c;margin:0 0 12px;font-size:13px;font-weight:700}.pc-about-stats dl{margin:0}.pc-about-stats dl>div{border-top:1px solid #eef0f3;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;display:flex}.pc-about-stats dl>div:first-child{border-top:0}.pc-about-contact p,.pc-about-stats dt{color:#94a3b8;font-size:11px}.pc-about-stats dd{color:#334155;margin:0;font-size:12px;font-weight:600}.pc-about-contact{background:#f5f3ff;border:1px solid #ddd6fe;border-radius:12px;padding:20px}.pc-about-contact h3{color:#6d28d9;margin:0 0 10px;font-size:13px;font-weight:700}.pc-about-contact a{color:#6d28d9;font-size:15px;font-weight:600}.pc-about-contact p{margin:6px 0 0}@media (width<=1024px){.pc-scope-grid,.pc-step-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pc-about__layout{grid-template-columns:1fr;gap:34px}.pc-contact-dark__inner{flex-direction:column;align-items:flex-start}.pc-contact-dark__mail{align-items:flex-start}}@media (width<=860px){.pc-about-hero,.pc-custom-hero{padding:40px 0 32px}.pc-about-hero h1,.pc-custom-hero h1{font-size:32px}.pc-info-section{padding:42px 0}.pc-scope-grid,.pc-step-grid{grid-template-columns:1fr}.pc-contact-dark__inner{padding:28px 24px}.pc-contact-dark h2{font-size:22px}.pc-about__layout{padding:34px 0 48px}}.pc-detail__hero-main{flex-direction:column;min-height:420px;display:flex}.pc-detail__env{margin-top:auto;padding-top:34px}.pc-detail__env-row{align-items:flex-start;gap:16px;margin-top:12px;display:flex}.pc-detail__env-row>span{color:#94a3b8;flex:0 0 60px;padding-top:5px;font-size:10.5px}.pc-detail__env-row>div{flex-wrap:wrap;gap:6px;display:flex}.pc-detail__env-row em{color:#475569;background:#eef0f3;border-radius:6px;align-items:center;height:24px;padding:0 10px;font-size:10.5px;font-style:normal;display:inline-flex}.pc-detail__env-row em.is-framework{color:#6d28d9;background:#f5f3ff}.pc-detail-gallery{padding:4px 0 34px}.pc-detail-gallery__head{color:#94a3b8;justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:10.5px;display:flex}.pc-detail-gallery__head span{color:#334155;font-size:12.5px;font-weight:600}.pc-detail-gallery__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.pc-detail-shot{aspect-ratio:16/10;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:block;overflow:hidden}.pc-detail-shot img{-o-object-fit:cover;object-fit:cover;-o-object-position:top left;object-position:top left;width:100%;height:100%;transition:transform .2s;display:block}.pc-detail-shot:hover img{transform:scale(1.03)}@media (width<=1100px){.pc-detail-gallery__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.pc-detail-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.pc-detail-gallery--hero{padding:18px 0 0}.pc-detail-gallery--hero .pc-detail-gallery__grid{gap:8px}.pc-detail-gallery--hero .pc-detail-shot{aspect-ratio:16/10;cursor:zoom-in;border-radius:8px;padding:0}.pc-detail-gallery--hero .pc-detail-gallery__head{margin-bottom:8px}.pc-detail__env{margin-top:20px}.pc-lightbox{z-index:2000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080a10e0;place-items:center;padding:46px;display:grid;position:fixed;inset:0}.pc-lightbox img{background:#fff;border-radius:10px;max-width:88vw;max-height:82vh;box-shadow:0 30px 90px #00000073}.pc-lightbox__close{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;place-items:center;width:38px;height:38px;font-size:26px;line-height:1;display:grid;position:absolute;top:20px;right:26px}.pc-lightbox__close:hover{background:#ffffff38}.pc-lightbox__nav{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:9px;place-items:center;width:42px;height:56px;font-size:30px;line-height:1;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.pc-lightbox__nav:hover{background:#ffffff38}.pc-lightbox__nav--prev{left:24px}.pc-lightbox__nav--next{right:24px}.pc-lightbox__count{color:#ffffffb8;font-size:12px;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.pc-auth-btn,.pc-btn--dark{color:#fff;background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 10px 24px #6d28d93d}.pc-auth-btn:hover,.pc-btn--dark:hover{background:linear-gradient(135deg,#7c3aed,#5b21b6)}.pc-chip--active{color:#6d28d9;background:#f5f3ff;border-color:#ddd6fe;font-weight:600}.pc-pagination__pages button.pc-pagination__page--active{color:#fff;background:linear-gradient(135deg,#7c3aed,#6d28d9);border-color:#6d28d9}.pc-get-code__redeem button{background:linear-gradient(135deg,#7c3aed,#6d28d9)}.pc-how{background:radial-gradient(circle at 16% 12%,#7c3aed3d,#0000 36%),radial-gradient(circle at 78% 22%,#2563eb29,#0000 34%),linear-gradient(115deg,#1e1b4b,#312e81 52%,#4c1d95)}.pc-contact-dark__inner{background:radial-gradient(circle at 84% 16%,#7c3aed47,#0000 38%),linear-gradient(115deg,#1e1b4b,#312e81 52%,#4c1d95)}.detail-pc,.pc-home,.pc-home-projects,.pc-library{background:#f8fafc}.pc-about-hero,.pc-custom-hero,.pc-library-head{background:radial-gradient(circle at 14% 16%,#ffedd5b3,#0000 26%),radial-gradient(circle at 62% 0,#dbeafeb3,#0000 28%),radial-gradient(circle at 88% 40%,#ede9fecc,#0000 30%),linear-gradient(#fff,#f8fafc)}.pc-hero__inner{gap:56px;padding:28px 0 30px}.pc-hero__copy h1{letter-spacing:-1px;margin-top:14px;font-size:calc(clamp(36px,3.1vw,42px))}.pc-hero__desc{margin-top:14px;font-size:14px;line-height:1.7}.pc-hero__actions{margin-top:20px}.pc-hero .pc-hero__actions .pc-btn{height:42px}.pc-hero .pc-terminal__bar{height:40px}.pc-hero .pc-terminal__body{min-height:170px;padding:12px 20px;line-height:1.7}.pc-hero .pc-terminal__foot{height:38px}.pc-home-projects{padding-top:56px}@media (width<=1024px){.pc-hero__inner{gap:36px;padding:32px 0 36px}}.pc-library-head{padding:34px 0 24px}.pc-library-head h1{margin-top:12px;font-size:calc(clamp(36px,3.4vw,48px))}.pc-library-head p{margin-top:12px}.pc-library-body{padding:24px 0 64px}.pc-about-hero,.pc-custom-hero{padding:40px 0 30px}.pc-about-hero h1,.pc-custom-hero h1{margin-top:14px;font-size:calc(clamp(34px,3.1vw,44px))}.pc-about-hero>.pc-container>p,.pc-custom-hero>.pc-container>p{margin-top:14px}.pc-detail__crumbs{padding-top:16px}.pc-detail__hero{gap:44px;padding:16px 0 26px}.pc-get-code{padding:16px}.pc-get-code__stats{margin:12px 0}.pc-get-code__stats strong{font-size:20px}.pc-get-code__main{height:40px}.pc-get-code__sub{height:34px}.pc-get-code__price{margin-top:12px}.pc-get-code__price strong{font-size:19px}.pc-info-section{padding:48px 0}.pc-about__layout{padding:42px 0 66px}.pc-how__inner{gap:80px;padding:44px 0 48px}.pc-how__copy h2{margin-top:12px;font-size:calc(clamp(24px,2.3vw,30px))}.pc-how__copy p{margin-top:14px;font-size:12.5px;line-height:1.8}.pc-how__author{margin-top:20px}.pc-how__rows>div{border-bottom-color:#7c3aed1f;padding:12px 0}.pc-how__rows>div:first-child{padding-top:0}.pc-footer__main{grid-template-columns:minmax(260px,1.35fr) 216px minmax(0,1.3fr);align-items:start;gap:44px;padding:44px 0 34px}.pc-footer__qr{align-items:flex-start;gap:16px;display:flex}.pc-footer-qr{color:#64748b;white-space:nowrap;flex-direction:column;align-items:center;gap:8px;font-size:10.5px;display:flex}.pc-footer-qr img{-o-object-fit:contain;object-fit:contain;background:#fff;border:1px solid #eef0f3;border-radius:9px;width:92px;height:92px;padding:4px}.pc-footer__links{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;display:grid}@media (width<=1100px){.pc-footer__main{grid-template-columns:minmax(220px,1.2fr) 184px minmax(0,1.3fr);gap:28px}.pc-footer-qr img{width:80px;height:80px}.pc-footer__qr{gap:12px}}@media (width<=960px){.pc-footer__main{grid-template-columns:1fr 1fr;gap:28px}.pc-footer__links{grid-column:1/-1}}.pc-footer__main{grid-template-columns:minmax(260px,1.3fr) 276px minmax(0,1.3fr)}.pc-footer-qr img{width:120px;height:120px;padding:5px}.pc-footer-qr{gap:9px;font-size:11px}@media (width<=1100px){.pc-footer__main{grid-template-columns:minmax(220px,1.2fr) 236px minmax(0,1.3fr)}.pc-footer-qr img{width:100px;height:100px}}.pc-hero{background:radial-gradient(circle at 12% 18%,#ffedd5d9,#0000 24%),radial-gradient(circle at 62% 8%,#dbeafecc,#0000 26%),radial-gradient(circle at 88% 62%,#ede9fed9,#0000 24%),radial-gradient(circle at 38% 72%,#ccfbf180,#0000 22%),linear-gradient(#fff,#f8fafc)}.pc-hero__accent{background:linear-gradient(120deg,#7c3aed 8%,#2563eb 58%,#0d9488);color:#0000;-webkit-background-clip:text;background-clip:text}.pc-how{color:#15171c;background:radial-gradient(circle at 10% 20%,#8b5cf61a,#0000 40%),radial-gradient(circle at 88% 80%,#2563eb14,#0000 36%),linear-gradient(#faf5ff,#f8fafc);border-top:1px solid #eef0f3}.pc-how .pc-eyebrow{color:#6d28d9}.pc-how .pc-eyebrow:before{background:#7c3aed}.pc-how__copy h2{color:#15171c}.pc-how__copy p{color:#64748b}.pc-how__rows dt{color:#94a3b8}.pc-how__rows dd{color:#475569}.pc-library-head{border-bottom:1px solid #eef0f3;padding:0}.pc-library-head__inner{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);align-items:center;gap:48px;padding:34px 0 38px;display:grid}.pc-library-head__copy h1{color:#15171c;letter-spacing:-1.4px;margin:20px 0 0;font-size:calc(clamp(34px,3.5vw,46px));font-weight:800;line-height:1.2}.pc-library-head__copy p{color:#64748b;max-width:560px;margin:16px 0 0;font-size:14px;line-height:1.85}.pc-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px;display:grid}.pc-feature{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:9px;padding:11px 12px;display:flex;box-shadow:0 4px 14px #0f172a0a}.pc-feature__icon{color:#6d28d9;background:#f5f3ff;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;display:grid}.pc-feature__icon svg{width:16px;height:16px}.pc-feature__text{flex-direction:column;gap:2px;min-width:0;display:flex}.pc-feature__text b{color:#15171c;white-space:nowrap;font-size:13px;font-weight:700}.pc-feature__text i{color:#94a3b8;font-size:11.5px;font-style:normal;line-height:1.5}.pc-code .pc-terminal__body{min-height:0;padding:16px 22px 18px;font-size:12.5px;line-height:1.78}.pc-code .pc-terminal__body p{margin:0}.pc-code__cmt{color:#64748b}.pc-code__kw{color:#c4b5fd}.pc-code__str{color:#5eead4}.pc-code__indent{color:#93c5fd;padding-left:20px}@media (width<=1180px){.pc-library-head__inner{grid-template-columns:minmax(0,1fr) minmax(0,.86fr);gap:34px}.pc-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.pc-library-head__inner{grid-template-columns:minmax(0,1fr);padding:34px 0 38px}.pc-code{display:none}}.pc-upgrade{z-index:2100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f172a8f;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.pc-upgrade__panel{background:#fff;border-radius:18px;width:min(720px,100%);max-height:90vh;padding:30px;position:relative;overflow:auto;box-shadow:0 30px 80px #0f172a47}.pc-upgrade__close{color:#475569;cursor:pointer;background:#f1f5f9;border:0;border-radius:9px;place-items:center;width:32px;height:32px;font-size:20px;line-height:1;display:grid;position:absolute;top:14px;right:14px}.pc-upgrade__close:hover{color:#15171c;background:#e2e8f0}.pc-upgrade__eyebrow{color:#7c3aed;letter-spacing:1.4px;font-size:11px;font-weight:700}.pc-upgrade__title{color:#15171c;letter-spacing:-.3px;margin-top:8px;font-size:22px;font-weight:700}.pc-upgrade__desc{color:#64748b;margin-top:8px;font-size:13px;line-height:1.7}.pc-upgrade__options{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px;display:grid}.pc-upgrade__options--single{grid-template-columns:minmax(0,1fr)}.pc-upgrade__option{background:#fbfbfe;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:10px;padding:18px;display:flex;position:relative}.pc-upgrade__option--vip{background:linear-gradient(#f8f5ff,#fff);border-color:#ddd6fe}.pc-upgrade__option h3{color:#15171c;font-size:15px;font-weight:700}.pc-upgrade__tag{color:#fff;letter-spacing:.6px;background:linear-gradient(135deg,#8b5cf6,#6d28d9);border-radius:999px;padding:2px 9px;font-size:10px;position:absolute;top:-9px;left:16px}.pc-upgrade__price{align-items:baseline;gap:6px;display:flex}.pc-upgrade__price strong{color:#15171c;letter-spacing:-.4px;font-size:24px;font-weight:700}.pc-upgrade__price span{color:#94a3b8;font-size:11.5px}.pc-upgrade__original{text-decoration:line-through}.pc-upgrade__list{flex-direction:column;gap:6px;margin:2px 0 6px;padding:0;list-style:none;display:flex}.pc-upgrade__list li{color:#475569;padding-left:16px;font-size:12.5px;position:relative}.pc-upgrade__list li:before{content:"";background:#8b5cf6;border-radius:50%;width:5px;height:5px;position:absolute;top:7px;left:0}.pc-upgrade__option .pc-btn{width:100%;margin-top:auto}.pc-upgrade__foot{color:#94a3b8;text-align:center;margin-top:18px;font-size:11.5px}@media (width<=640px){.pc-upgrade__panel{padding:22px}.pc-upgrade__options{grid-template-columns:minmax(0,1fr)}}.detail-pc{background:#f8fafc}.pc-detail__banner{background:radial-gradient(420px at 6% 30%,#c4b5fd38,#0000 70%),radial-gradient(540px at 94% 4%,#ddd6fe52,#0000 70%),linear-gradient(#f9f7ff,#f4f1fd);border-bottom:1px solid #ebe6f9}.pc-detail__banner-inner{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:56px;padding:18px 0 20px;display:grid}.pc-detail__left{min-width:0}.pc-detail__crumbs{gap:10px;padding:0;font-size:12.5px}.pc-detail__crumb-sep{color:#cbd5e1}.pc-detail__hero-main{min-height:0;margin-top:24px}.pc-detail__heading{gap:18px;margin-top:0}.pc-detail__icon{background-image:linear-gradient(140deg,#ffffff4d,#0000 55%);border-radius:18px;width:64px;height:64px;font-size:17px;box-shadow:inset 0 1px #ffffff61,0 12px 26px #6d28d92e}.pc-detail__hero-main h1{margin:0;font-size:calc(clamp(38px,3.4vw,48px))}.pc-detail__hero-main>.pc-detail__tagline{color:#64748b;max-width:640px;margin:12px 0 0;font-size:15px;line-height:1.7}.pc-detail__env{flex-wrap:nowrap;gap:20px 48px;margin-top:24px;padding-top:0;display:flex}.pc-detail__env-group{flex-direction:column;gap:8px;display:flex}.pc-detail__env-label{color:#94a3b8;font-size:12px}.pc-detail__env-chips{flex-wrap:wrap;gap:6px;display:flex}.pc-detail__env-chips em{color:#475569;background:#eceef3;border-radius:9px;align-items:center;height:30px;padding:0 10px;font-size:12px;font-style:normal;display:inline-flex}.pc-detail__env-chips em.is-framework{color:#6d28d9;background:#f1ecfe}.pc-previews-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.pc-detail__shot{text-align:left;cursor:zoom-in;background:0 0;border:0;flex-direction:column;gap:8px;padding:0;display:flex}.pc-detail__shot img{aspect-ratio:16/10;-o-object-fit:cover;object-fit:cover;background:#f1f5f9;border:1px solid #e8e3f7;border-radius:10px;width:100%;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 20px #4c1d950f}.pc-detail__shot:hover img{transform:translateY(-2px);box-shadow:0 12px 26px #4c1d951f}.pc-detail__shot span{color:#64748b;font-size:11px;line-height:1.5}.pc-get-code{background:#fff;border:1px solid #ebe6f9;border-radius:16px;padding:16px 20px;box-shadow:0 18px 44px #4c1d9514}.pc-get-code__head{gap:10px}.pc-get-code__eyebrow{color:#8b85a6;letter-spacing:1.8px;font-size:11px}.pc-get-code__license{border-radius:7px;padding:5px 10px;font-size:12px}.pc-get-code__license--paid{color:#c2410c;background:#fff1e5}.pc-get-code__license--free{color:#0f7d5c;background:#e8f8f2}.pc-get-code__license--vip{color:#6d28d9;background:#f1ecfe}.pc-get-code__price{border-bottom:1px solid #f1edf9;align-items:baseline;gap:8px;margin:10px 0 0;padding-bottom:10px}.pc-get-code__price strong{letter-spacing:-.8px;font-size:34px;font-weight:800}.pc-get-code__price>span{font-size:14px}.pc-get-code__original{font-size:14.5px!important}.pc-get-code__owned{background:#e8f8f2;border-radius:999px;margin-left:auto;padding:5px 10px;font-weight:600;color:#0f7d5c!important;font-size:12px!important}.pc-get-code__main{height:46px;margin-top:10px}.pc-get-code__main,.pc-get-code__sub{border-radius:12px;width:100%;font-size:15px}.pc-get-code__sub{height:42px;margin-top:8px}.pc-btn--primary:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}@media (width<=1100px){.pc-previews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-detail__banner-inner{grid-template-columns:minmax(0,1fr) 300px;gap:34px;padding:26px 0 28px}.pc-detail__env{flex-wrap:wrap;gap:16px 24px}.pc-custom-card{flex-direction:column;padding:26px 24px}.pc-custom-card,.pc-custom-card__actions{align-items:flex-start}}:root{--admin-sidebar-width:210px;--admin-sidebar-collapsed:64px;--admin-sidebar-bg:#1b2434;--admin-sidebar-bg-gradient:linear-gradient(180deg, #232f45, #171f2e);--admin-sidebar-text:#a3b1c6;--admin-sidebar-text-hover:#fff;--admin-navbar-height:50px;--admin-content-bg:#f3f5f7;--admin-primary:#2f6bff;--admin-primary-light-2:#5989ff;--admin-primary-light-9:#eaf0ff;--admin-gradient-primary:linear-gradient(90deg, var(--admin-primary) 0%, var(--admin-primary-light-2) 100%);--admin-success:#17a673;--admin-warning:#e6a23c;--admin-danger:#f56c6c;--admin-text-primary:#1f2d3d;--admin-text-regular:#606266;--admin-text-secondary:#8a94a6;--admin-border:#ebeef5;--admin-border-lighter:#f0f2f5;--admin-bg-lighter:#f6f8fc;--admin-fill-light:#f5f7fa;--admin-radius-card:12px;--admin-radius-block:10px;--admin-radius-small:8px;--admin-radius-mini:6px;--admin-shadow-card:0 4px 16px #1f2d3d0d;--admin-shadow-card-deep:0 8px 24px #1f2d3d1a;--admin-shadow-navbar:0 1px 0 #1f2d3d0f;--admin-shadow-focus-ring:0 0 0 3px var(--admin-primary-light-9)}.admin-app{--el-color-primary:var(--admin-primary);--el-color-primary-light-2:var(--admin-primary-light-2);--el-color-primary-light-3:#6d97ff;--el-color-primary-light-5:#97b5ff;--el-color-primary-light-7:#c1d3ff;--el-color-primary-light-8:#d5e1ff;--el-color-primary-light-9:var(--admin-primary-light-9);--el-color-primary-dark-2:#2656cc;--el-text-color-primary:var(--admin-text-primary);--el-text-color-regular:var(--admin-text-regular);--el-text-color-secondary:var(--admin-text-secondary);--el-fill-color-light:var(--admin-fill-light);--el-border-radius-base:var(--admin-radius-small);--el-border-radius-small:var(--admin-radius-mini)}.cell-strong{color:var(--admin-text-primary);font-size:13px;font-weight:600}.cell-sub{color:var(--admin-text-secondary);margin-top:2px;font-size:11px}.status-text{font-size:13px;font-weight:500}.status-text--primary{color:var(--el-color-primary)}.status-text--success{color:#67c23a}.status-text--warning{color:#e6a23c}.status-text--danger{color:#f56c6c}.status-text--info{color:var(--el-text-color-placeholder)}.section-head{align-items:center;gap:8px;display:flex}.section-bar{background:var(--admin-gradient-primary);border-radius:2px;width:3px;height:14px}.section-name{color:var(--admin-text-primary);font-size:15px;font-weight:600}.section-extra{color:var(--admin-text-secondary);margin-left:auto;font-size:12px}.admin-inline-form{flex-wrap:wrap;gap:0 16px;display:flex}.admin-inline-form .el-form-item{margin-bottom:12px}.admin-nav.el-menu{--el-menu-item-height:42px;background:0 0;border-right:none;padding:8px 0 12px}.admin-nav .el-menu-item{border-radius:var(--admin-radius-small);height:42px;color:var(--admin-sidebar-text);align-items:center;gap:10px;margin:2px 10px;padding:0 12px;font-size:13px;line-height:1;transition:background-color .2s,color .2s;display:flex}.admin-nav .el-menu-item:hover{color:var(--admin-sidebar-text-hover);background:#ffffff12}.admin-nav .el-menu-item.is-active{background-image:var(--admin-gradient-primary);color:#fff;font-weight:600;box-shadow:0 2px 10px #2f6bff59}.admin-nav .el-menu-item svg{flex:none;width:16px;height:16px}.admin-nav .el-menu-item>span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.admin-source__actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.admin-pagination{justify-content:flex-end;margin-top:20px}.el-card{border-radius:var(--admin-radius-card);box-shadow:var(--admin-shadow-card);border:none}.el-card__header{border-bottom:1px solid var(--admin-border-lighter);color:var(--admin-text-primary);padding:14px 18px;font-weight:600}.el-card__body{padding:18px}.el-dialog{border-radius:var(--admin-radius-card)}.el-dialog__header{border-bottom:1px solid var(--admin-border-lighter);margin-right:0;padding:16px 20px}.el-dialog__title{color:var(--admin-text-primary);font-size:15px;font-weight:600;line-height:24px}.el-dialog__headerbtn{top:12px;right:12px}.el-dialog__body{padding:20px}.el-dialog__footer{border-top:1px solid var(--admin-border-lighter);padding:12px 20px}.el-table{--el-table-border-color:var(--admin-border-lighter);--el-table-header-bg-color:var(--admin-bg-lighter);--el-table-header-text-color:var(--admin-text-regular);--el-table-row-hover-bg-color:var(--admin-primary-light-9);font-size:13px}.el-table .cell-nowrap .cell,.el-table td.el-table__cell{white-space:nowrap}.el-table th.el-table__cell{background-color:var(--admin-bg-lighter);color:var(--admin-text-regular);padding:10px 0;font-weight:600}.el-table--border .el-table__cell{border-right-color:var(--admin-border-lighter)}.el-table__inner-wrapper:before{background-color:var(--admin-border-lighter)}.el-table+.el-pagination{margin-top:16px}.el-button{font-weight:500}.el-button--primary:not(.is-plain):not(.is-text):not(.is-link){box-shadow:0 2px 8px #2f6bff38}.el-button--primary:not(.is-plain):not(.is-text):not(.is-link):hover{box-shadow:0 4px 12px #2f6bff47}.el-input__wrapper,.el-select__wrapper,.el-textarea__inner{border-radius:var(--admin-radius-small)}.el-input__wrapper.is-focus,.el-select__wrapper.is-focused,.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--el-color-primary) inset,var(--admin-shadow-focus-ring)}.el-form-item__label{color:var(--admin-text-regular);font-weight:500}.el-pagination{--el-pagination-button-bg-color:transparent;font-weight:500}.el-pagination .el-pager li,.el-tag{border-radius:var(--admin-radius-mini)}.el-tag{font-weight:500}.el-popper.is-light{border-color:var(--admin-border);border-radius:var(--admin-radius-block);box-shadow:var(--admin-shadow-card-deep)}.el-dropdown-menu__item,.el-select-dropdown__item{border-radius:var(--admin-radius-mini);margin:0 6px}.el-message,.el-message-box,.el-notification{border-radius:var(--admin-radius-block);box-shadow:var(--admin-shadow-card-deep)}.el-drawer{border-radius:var(--admin-radius-card) 0 0 var(--admin-radius-card)}.project-drawer .el-drawer__body{padding:0;overflow:hidden}.el-loading-mask{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.admin-app *{scrollbar-width:thin;scrollbar-color:#909cb059 transparent}.admin-app ::-webkit-scrollbar{width:8px;height:8px}.admin-app ::-webkit-scrollbar-corner{background:0 0}.admin-app ::-webkit-scrollbar-track{background:0 0}.admin-app ::-webkit-scrollbar-thumb{background:#909cb052 padding-box content-box;border:2px solid #0000;border-radius:999px}@media (width<=720px){body{background:#f6f8fb}.container{width:calc(100% - 28px)}.btn{border-radius:9px;min-height:41px;padding:0 14px;font-size:13.5px}.btn--sm{border-radius:7px;min-height:32px;padding:0 11px;font-size:12px}.btn--lg{border-radius:10px;min-height:44px;padding:0 18px;font-size:14px}.chip{padding:6px 12px;font-size:11.5px}.tag{padding:2px 7px;font-size:10.5px;line-height:1.5}.empty{padding:32px 10px}.empty,.loading{font-size:12.5px}.loading{padding:40px 0}.section{padding:20px 0}.page-hero__stats,.section__eyebrow{display:none}.section__title{font-size:17px}.section__sub{font-size:12px;line-height:1.6}.prose-panel{border-radius:12px;padding:14px}.prose-panel h2{font-size:15.5px}.prose-panel p{font-size:12.5px}.page-hero{clip:auto;white-space:normal;background:radial-gradient(circle at 88% 8%,#8b5cf633,#0000 40%),linear-gradient(#fff,#faf9ff);border:0;border-bottom:1px solid #eef1f6;width:auto;height:auto;margin:0;padding:20px 0 18px;position:static;overflow:visible}.page-hero h1{letter-spacing:-.6px;font-size:24px;line-height:1.3}.page-hero__desc{margin-top:8px;font-size:12.5px;line-height:1.65}.home-mobile{padding:12px 0 18px}.hm-cat-card{border-radius:12px;margin-bottom:15px;padding:12px 7px 8px;box-shadow:0 4px 13px #0f172a08}.hm-cat-head{padding:0 6px 7px}.hm-cat-title{font-size:15.5px}.hm-cat-total{font-size:10.5px}.hm-cat{border-radius:10px;gap:5px;padding:4px 1px 6px}.hm-cat__icon{width:37px;height:37px;font-size:15px}.hm-cat__name{font-size:10.5px}.hm-cat__count{font-size:9px}.hm-list-head{margin:15px 2px 8px}.hm-list-head h2{font-size:17px}.hm-list-head span{font-size:10.5px}.hm-list,.hm-project__head{gap:9px}.hm-project{border-radius:14px;padding:14px;box-shadow:0 4px 13px #0f172a08}.hm-project__icon{border-radius:10px;width:37px;height:37px;font-size:10.5px}.hm-project__tag--access{flex:none;margin-left:auto;font-weight:600}.hm-project__name{font-size:16px}.hm-project__tagline{font-size:11.5px;line-height:1.6}.hm-project__tags{gap:5px;margin-top:8px}.hm-project__tag{padding:2px 7px;font-size:10.5px}.hm-project__foot{margin-top:9px;padding-top:9px;font-size:10.5px}.hm-project__go{font-size:11px}.library-mobile{padding:12px 0 10px}.libm-search{border-radius:11px;height:39px;margin-bottom:13px;padding:0 12px;box-shadow:0 4px 12px #0f172a08}.libm-search svg{width:17px;height:17px}.libm-search input{font-size:13px}.libm-layout{gap:10px}.libm-rail{flex:0 0 75px;gap:3px}.libm-cat{border-radius:9px;padding:11px 8px;font-size:12px}.libm-cat--active:before{width:3px;height:15px}.libm-head{margin:2px 1px 9px}.libm-head h2{font-size:17px}.libm-head span{font-size:10.5px}.libm-list,.md-head__title{gap:10px}.libm-list .hm-project{border-radius:13px;padding:12px}.libm-list .hm-project__name{font-size:14.5px}.libm-end{font-size:10.5px}.md-head{padding:15px max(14px,50vw - 50%) 17px}.md-head__icon{border-radius:12px;width:45px;height:45px;font-size:12px}.md-head__info h1{font-size:19px}.md-head__info p{margin-top:4px;font-size:12px}.md-head__tags{gap:5px;margin-top:10px}.md-tag{padding:2px 7px;font-size:10.5px}.md-card{border-radius:12px;padding:14px}.md-card__title{font-size:15.5px}.toolbar{flex-direction:column;align-items:stretch;gap:10px;margin:14px 0 16px}.toolbar>*{width:100%;min-width:0;max-width:100%}.toolbar .search-box{min-width:0;max-width:none;display:flex}.filters{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.filters::-webkit-scrollbar{display:none}.filters>*{flex:none}.result-count{font-size:12px}.blog-grid{grid-template-columns:minmax(0,1fr);gap:10px;padding-bottom:0}.blog-card,.roadmap-card{border-radius:12px}.blog-card__body{gap:6px;padding:12px 14px 14px}.blog-card__meta{font-size:10.5px}.blog-card__title{font-size:15px}.blog-card__summary{min-height:0;font-size:12px}.blog-card__foot{padding-top:9px;font-size:10.5px}.pagination{gap:8px;padding:16px 0 28px}.page-btn{height:32px;padding:0 12px;font-size:12px}.page-info{font-size:11px}.roadmap{gap:10px;padding:14px 0 24px}.roadmap-item{grid-template-columns:36px minmax(0,1fr);gap:10px}.roadmap-item__num{width:30px;height:30px;font-size:12px}.roadmap-item__line{width:2px;margin-top:6px}.roadmap-card{padding:14px;box-shadow:0 4px 14px #0f172a08}.roadmap-card__label{letter-spacing:1px;font-size:9.5px}.roadmap-card h2{margin:5px 0 6px;font-size:16px;line-height:1.4}.roadmap-card p{margin-bottom:10px;font-size:12px;line-height:1.7}.roadmap-card__links{gap:6px;margin-top:10px;padding-top:10px}.roadmap-link{padding:4px 9px;font-size:11px}.pc-container{width:calc(100% - 28px)}.pc-about-hero,.pc-custom-hero{background:radial-gradient(circle at 88% 8%,#8b5cf633,#0000 40%),linear-gradient(#fff,#faf9ff);border-bottom:1px solid #eef1f6;padding:20px 0 18px}.pc-eyebrow{font-size:10px}.pc-about-hero h1,.pc-custom-hero h1{letter-spacing:-.5px;margin-top:10px;font-size:24px;line-height:1.3}.pc-about-hero>.pc-container>p,.pc-custom-hero>.pc-container>p{margin-top:10px;font-size:12.5px;line-height:1.65}.pc-custom-hero .pc-hero__actions{gap:8px;margin-top:16px}.pc-btn{border-radius:9px;height:40px;padding:0 14px;font-size:13px}.pc-info-section{padding:20px 0}.pc-info-section+.pc-info-section{padding-top:4px}.pc-info-section h2{font-size:17px;line-height:1.4}.pc-info-sub{margin-top:8px;font-size:12px;line-height:1.65}.pc-scope-grid,.pc-step-grid{grid-template-columns:minmax(0,1fr);gap:8px;margin-top:12px}.pc-scope-grid article,.pc-step-grid article{border-radius:12px;padding:14px;box-shadow:0 4px 14px #0f172a08}.pc-about-contact h3,.pc-about-stats h3,.pc-scope-grid h3,.pc-step-grid h3{font-size:15px}.pc-scope-grid p,.pc-step-grid p{font-size:12px;line-height:1.7}.pc-contact-dark__inner{border-radius:12px;padding:20px 16px;display:block}.pc-contact-dark h2{font-size:17px}.pc-about-stats dl>div,.pc-contact-dark p{font-size:12px}.pc-about__layout{padding:14px 0 24px;display:block}.pc-about-contact,.pc-about-stats,.pc-about__main section{background:#fff;border:1px solid #eef1f6;border-radius:12px;margin-bottom:10px;padding:14px;box-shadow:0 4px 14px #0f172a08}.pc-about__main section:last-child{margin-bottom:0}.pc-about__main h2{margin-bottom:8px;font-size:15.5px}.pc-about__main p{font-size:12.5px;line-height:1.7}.pc-about__side,.vip-banner__inner{display:block}.vip-intro{padding:0}.vip-intro>.container{width:100%}.vip-banner{box-shadow:none;border-radius:0;padding:20px 14px 22px}.vip-banner__eyebrow{padding:3px 8px;font-size:10px}.vip-banner h1{letter-spacing:-.5px;margin-top:9px;font-size:24px}.vip-banner__desc{margin-top:9px;font-size:12px;line-height:1.7}.vip-benefits{gap:6px 10px;margin-top:14px}.vip-benefits li{font-size:11.5px}.vip-banner__actions{margin-top:16px}.vip-mini-plans{display:none}.section__head{margin-bottom:12px}.combo-grid{grid-template-columns:minmax(0,1fr);gap:8px}.combo-card{border-radius:12px;padding:12px 13px}.combo-card__body strong{font-size:14px}.combo-card__price span,.combo-card__tier{font-size:11px}.faq-item summary{padding:12px 0;font-size:13px}.faq-item p{font-size:12px}.account-page{padding:0 0 24px}.account-side{gap:10px;position:static}.account-side__profile{text-align:left;box-shadow:none;background:radial-gradient(circle at 88% 10%,#8b5cf633,#0000 40%),linear-gradient(#fff,#faf9ff);border:0;border-bottom:1px solid #eef1f6;border-radius:0;grid-template-columns:50px minmax(0,1fr);align-items:center;gap:4px 10px;margin:0 calc(50% - 50vw) 10px;padding:20px 14px 18px;display:grid}.avatar--lg{grid-row:span 2;width:50px;height:50px;font-size:18px}.account-side__profile h2{margin:0;font-size:18px}.account-side__email{margin:0;font-size:11px}.account-badge{grid-column:2;justify-self:start;margin-top:3px;padding:2px 8px;font-size:10.5px}.account-meta{display:none}.account-side__profile .btn{grid-column:1/-1;margin-top:12px}.account-side__profile .btn+.btn{margin-top:0}.account-nav{border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:8px;display:grid}.account-nav__item{text-align:center;border-radius:9px;flex-direction:column;gap:3px;padding:8px 2px;font-size:10.5px;position:relative}.account-nav__item svg{width:17px;height:17px}.account-nav__count{position:absolute;top:3px;right:4px}.account-logout{width:100%;min-height:38px;font-size:12.5px}.account-main{display:block}.account-panel{background:#fff;border:1px solid #eef1f6;border-radius:12px;margin-bottom:10px;padding:14px;box-shadow:0 4px 14px #0f172a08}.account-panel__head h2{font-size:16px}.account-panel__head p{font-size:11.5px}.account-stats{grid-template-columns:1fr 1fr;gap:8px}.account-stat{border-radius:10px;padding:12px 10px}.account-block,.account-status,.member-status{border-radius:10px;padding:12px}.account-block{margin-top:10px}.account-block h3{font-size:14px}.account-block__note,.account-links,.account-project,.account-record,.account-timeline{font-size:12px}.account-combo-bar,.account-record{border-radius:9px;padding:10px}.account-combo-bar__actions{gap:6px}.account-project{border-radius:10px;padding:12px}.auth-page{background:0 0;min-height:auto;padding:18px 0 24px}.auth-card{border-radius:14px;padding:20px 16px;box-shadow:0 6px 20px #0f172a0a}.auth-card__brand{margin-bottom:14px;font-size:14px}.auth-card h1{font-size:22px}.auth-card__desc{margin:6px 0 16px;font-size:12px}.input{border-radius:8px;min-height:39px;padding:8px 12px;font-size:13.5px}.form-note{font-size:11.5px}.h5-article-page{padding-top:0}.h5-article-page .article{box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.h5-article-page .article-hero{background:radial-gradient(circle at 88% 8%,#8b5cf633,#0000 40%),linear-gradient(#fff,#faf9ff);border-bottom:1px solid #eef1f6;margin:0 calc(50% - 50vw);padding:16px max(14px,50vw - 50%) 18px;display:block}.h5-article-page .article-back{color:#64748b;background:#fff;border:1px solid #e2e8f0;border-radius:999px;align-items:center;margin-bottom:10px;padding:3px 9px;font-size:11.5px;text-decoration:none;display:inline-flex}.h5-article-page .article__meta{gap:8px;font-size:10.5px}.h5-article-page .article__title{margin-top:8px;font-size:21px;line-height:1.35}.h5-article-page .article__summary{margin-top:8px;font-size:12.5px;line-height:1.7}.h5-article-page .article-content{background:#fff;border:1px solid #eef1f6;border-radius:12px;margin-top:10px;padding:14px}.h5-article-page .article-lock{border-radius:12px;margin-top:10px;padding:18px 14px}.h5-article-page .article-foot{text-align:center;padding:14px 2px 0;font-size:10.5px;line-height:1.6}.h5-article-page .series-nav{border-radius:12px;margin-top:10px;padding:14px}.h5-article-page .series-nav__title{font-size:15px}.h5-article-page .series-nav__sub{font-size:10.5px}.h5-article-page .series-nav__link{padding:8px 10px;font-size:12px}.h5-article-page .series-nav__cta p{font-size:11px}}
