:root{color-scheme:light dark;font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,system-ui,sans-serif;font-synthesis:none;--bg: oklch(.985 .004 180);--surface: oklch(.998 .002 180);--surface-subtle: oklch(.965 .012 178);--surface-strong: oklch(.93 .025 177);--ink: oklch(.25 .025 180);--muted: oklch(.48 .025 180);--faint: oklch(.62 .02 180);--border: oklch(.88 .018 180);--accent: oklch(.51 .105 177);--accent-hover: oklch(.43 .092 177);--accent-soft: oklch(.94 .035 177);--accent-ink: oklch(.34 .075 177);--danger: oklch(.53 .18 27);--radius: 12px;--header-height: 72px;--max-width: 1440px;--z-header: 30;--z-panel: 50}@media (prefers-color-scheme: dark){:root{--bg: oklch(.17 .016 180);--surface: oklch(.21 .018 180);--surface-subtle: oklch(.245 .025 180);--surface-strong: oklch(.29 .035 180);--ink: oklch(.93 .015 180);--muted: oklch(.73 .025 180);--faint: oklch(.62 .025 180);--border: oklch(.34 .025 180);--accent: oklch(.7 .115 177);--accent-hover: oklch(.77 .1 177);--accent-soft: oklch(.29 .055 177);--accent-ink: oklch(.84 .075 177)}}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;min-width:320px;background:var(--bg);color:var(--ink)}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{color:inherit}:focus-visible{outline:3px solid color-mix(in oklch,var(--accent) 36%,transparent);outline-offset:3px}.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skipLink{position:fixed;top:10px;left:10px;z-index:100;transform:translateY(-150%);padding:10px 14px;border-radius:8px;background:var(--accent);color:#fff}.skipLink:focus{transform:translateY(0)}.siteHeader{position:sticky;top:0;z-index:var(--z-header);height:var(--header-height);border-bottom:1px solid color-mix(in oklch,var(--border) 84%,transparent);background:color-mix(in oklch,var(--surface) 94%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.headerInner{display:flex;align-items:center;gap:clamp(16px,2vw,30px);width:min(var(--max-width),calc(100% - 40px));height:100%;margin-inline:auto}.wordmark{display:flex;align-items:center;gap:10px;min-width:max-content}.wordmarkSymbol{display:grid;width:38px;height:38px;place-items:center;border-radius:10px;background:var(--accent);color:#fff}.wordmarkLogo{width:38px;height:38px;flex:0 0 38px;border-radius:9px;object-fit:contain}.wordmark>span:last-child{display:grid;line-height:1.15}.wordmark strong{font-size:14px;letter-spacing:-.01em}.wordmark small{margin-top:4px;color:var(--muted);font-size:11px}.desktopNav{display:flex;align-items:center;gap:22px;min-width:max-content;font-size:14px}.desktopNav a{position:relative;color:var(--muted)}.desktopNav a:hover{color:var(--ink)}.desktopNav a:after{position:absolute;right:0;bottom:-8px;left:0;height:2px;content:"";transform:scaleX(0);background:var(--accent);transition:transform .18s ease-out}.desktopNav a:hover:after{transform:scaleX(1)}.headerSearch{display:flex;align-items:center;gap:8px;min-width:170px;max-width:320px;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-subtle);color:var(--muted)}.headerSearch:focus-within{border-color:var(--accent);background:var(--surface)}.headerSearch input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}.headerSearch input::placeholder{color:var(--muted);opacity:1}.headerActions{display:flex;align-items:center;gap:8px;margin-left:auto}.headerActions>a,.mobileMenuButton{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;border-radius:9px;padding:0 13px;font-size:13px;font-weight:700;white-space:nowrap;transition:transform .12s ease-out,background .16s ease-out}.headerActions>a:active,.mobileMenuButton:active{transform:translateY(1px)}.headerStore{background:var(--accent);color:#fff}.headerStore:hover{background:var(--accent-hover)}.headerContact{border:1px solid var(--border);background:var(--surface);color:var(--accent-ink)}.headerContact:hover{border-color:var(--accent);background:var(--accent-soft)}.mobileMenuButton{display:none;border:1px solid var(--border);background:var(--surface)}.pageContainer{width:min(var(--max-width),calc(100% - 40px));margin-inline:auto}.searchIntro{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(420px,1.15fr);align-items:end;gap:clamp(28px,5vw,80px);padding:clamp(42px,6vw,82px) 0 clamp(34px,4vw,58px)}.singleEyebrow{margin:0 0 12px;color:var(--accent-ink);font-size:12px;font-weight:800;letter-spacing:.12em}.searchIntro h1{max-width:16ch;margin:0;font-size:clamp(32px,4.2vw,58px);line-height:1.12;letter-spacing:-.035em;text-wrap:balance}.searchIntro>div>p:last-child{max-width:42ch;margin:18px 0 0;color:var(--muted);font-size:16px;line-height:1.75}.heroSearch{display:flex;align-items:center;min-height:64px;gap:13px;padding:8px 8px 8px 20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.heroSearch:focus-within{border-color:var(--accent)}.heroSearch svg{flex:0 0 auto;color:var(--accent)}.heroSearch input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:16px}.heroSearch input::placeholder{color:var(--muted);opacity:1}.heroSearch button{min-width:112px;min-height:48px;border:0;border-radius:9px;background:var(--accent);color:#fff;font-weight:800;cursor:pointer}.heroSearch button:hover{background:var(--accent-hover)}.heroSearch button:active{transform:translateY(1px)}.portalColumns{display:grid;grid-template-columns:232px minmax(0,1fr) 250px;align-items:start;gap:clamp(22px,2.5vw,36px);padding-bottom:84px}.categoryRail,.articleCategoryRail{position:sticky;top:calc(var(--header-height) + 24px);max-height:calc(100dvh - var(--header-height) - 48px);overflow:auto;padding-right:8px;scrollbar-width:thin}.railHeading{display:flex;align-items:center;justify-content:space-between;padding:0 8px 14px;border-bottom:1px solid var(--border)}.railHeading strong{font-size:15px}.railHeading span{color:var(--faint);font-size:11px}.categoryTree,.categoryTree ul{margin:0;padding:0;list-style:none}.categoryTree{padding-top:10px}.categoryTree ul{padding-left:12px}.categoryItem{display:flex;min-height:39px;align-items:center;border-radius:8px}.categoryItem:hover{background:var(--surface-subtle)}.categoryItem.active{background:var(--accent-soft);color:var(--accent-ink)}.categoryItem>button{display:grid;width:32px;height:39px;flex:0 0 auto;place-items:center;border:0;background:transparent;color:var(--muted);cursor:pointer}.categoryIndent{width:32px;flex:0 0 auto}.categoryItem>a{display:flex;min-width:0;min-height:39px;flex:1;align-items:center;justify-content:space-between;gap:8px;padding:0 10px 0 0;font-size:13px}.categoryItem.depth-1>a{font-weight:800}.categoryItem.depth-2>a{font-weight:650}.categoryItem.depth-3>a{color:var(--muted)}.categoryItem.depth-4>a{color:var(--muted);font-weight:550}.categoryItem.active>a{color:var(--accent-ink)}.categoryItem small{color:var(--faint);font-size:10px}.categoryTree.compact .categoryItem{min-height:36px}.categoryTree.compact .categoryItem>a{min-height:36px;font-size:12px}.contentColumn{min-width:0}.sectionHeading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.sectionHeading h2{margin:0;font-size:clamp(24px,2.4vw,34px);letter-spacing:-.025em;text-wrap:balance}.sectionHeading p{margin:7px 0 0;color:var(--muted);font-size:14px}.sectionHeading>a{display:inline-flex;align-items:center;gap:5px;color:var(--accent-ink);font-size:13px;font-weight:750;white-space:nowrap}.featuredTutorial{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(180px,.9fr);min-height:300px;overflow:hidden;border-radius:var(--radius);background:var(--accent-soft)}.featuredCopy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(28px,4vw,48px)}.featuredCopy h3{max-width:15ch;margin:14px 0 12px;font-size:clamp(27px,3vw,41px);line-height:1.16;letter-spacing:-.035em;text-wrap:balance}.featuredCopy>p{max-width:46ch;margin:0;color:var(--muted);line-height:1.75}.featuredTutorial>img{width:100%;height:100%;object-fit:cover}.featuredFallback{display:grid;min-height:260px;place-items:center;background:var(--surface-strong);color:var(--accent)}.readAction{display:inline-flex;min-height:44px;align-items:center;gap:7px;margin-top:24px;padding:0 17px;border-radius:9px;background:var(--accent);color:#fff;font-weight:800}.readAction:hover{background:var(--accent-hover)}.tutorialMeta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--muted);font-size:11px}.difficultyBadge{display:inline-flex;min-height:25px;align-items:center;padding:0 8px;border-radius:999px;background:var(--surface);color:var(--accent-ink);font-size:11px;font-weight:800}.difficulty-intermediate{background:color-mix(in oklch,var(--accent-soft) 60%,oklch(.88 .08 85));color:color-mix(in oklch,var(--accent-ink) 55%,oklch(.4 .1 85))}.difficulty-advanced{background:color-mix(in oklch,var(--accent-soft) 55%,oklch(.88 .08 28));color:color-mix(in oklch,var(--accent-ink) 50%,oklch(.42 .12 28))}.secondaryFeatureList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.secondaryFeatureList .tutorialRow{display:block;border:0;border-radius:var(--radius);padding:15px;background:var(--surface-subtle)}.secondaryFeatureList .tutorialRow>img,.secondaryFeatureList .rowImageFallback{width:100%;height:112px;margin-bottom:14px}.secondaryFeatureList .rowFooter{margin-top:12px}.latestSection{margin-top:clamp(52px,7vw,88px)}.tutorialList{border-top:1px solid var(--border)}.tutorialRow{display:grid;grid-template-columns:154px minmax(0,1fr);gap:20px;padding:22px 0;border-bottom:1px solid var(--border)}.tutorialRow>img,.rowImageFallback{width:154px;height:104px;border-radius:9px;object-fit:cover}.rowImageFallback{display:grid;place-items:center;background:var(--surface-strong);color:var(--accent)}.rowCopy{min-width:0}.rowCopy h3{margin:8px 0 7px;font-size:18px;line-height:1.38;letter-spacing:-.015em;text-wrap:pretty}.rowCopy h3 a:hover{color:var(--accent-ink)}.rowCopy>p{display:-webkit-box;overflow:hidden;margin:0;color:var(--muted);font-size:13px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:2}.rowFooter{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:10px;color:var(--faint);font-size:11px}.rowFooter a{display:inline-flex;align-items:center;gap:3px;margin-left:auto;color:var(--accent-ink);font-weight:750}.tutorialRow.compact{grid-template-columns:78px minmax(0,1fr);gap:12px;padding:14px 0}.tutorialRow.compact>img,.tutorialRow.compact>.rowImageFallback{width:78px;height:64px}.tutorialRow.compact h3{margin-top:5px;font-size:14px}.tutorialRow.compact .rowFooter time,.tutorialRow.compact .rowFooter span{display:none}.adRail{position:sticky;top:calc(var(--header-height) + 24px);display:grid;max-height:calc(100dvh - var(--header-height) - 48px);gap:14px;overflow:auto;padding-right:3px;scrollbar-width:thin}.advertisement,.conversionCard{position:relative;display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--border);border-radius:var(--radius);padding:16px;background:var(--surface)}.advertisement{min-height:168px}.advertisement:hover{border-color:var(--accent)}.advertisement img{width:calc(100% + 32px);max-width:none;height:120px;margin:-16px -16px 15px;border-radius:var(--radius) var(--radius) 0 0;object-fit:cover}.adLabel{align-self:flex-end;margin-bottom:10px;color:var(--faint);font-size:10px;letter-spacing:.08em}.advertisement img+.adLabel{position:absolute;top:8px;right:8px;padding:3px 6px;border-radius:5px;background:color-mix(in oklch,var(--surface) 90%,transparent)}.advertisement strong,.conversionCard strong{font-size:15px;line-height:1.4}.advertisement p,.conversionCard>span{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.65}.adAction,.conversionAction{display:inline-flex;align-items:center;gap:5px;margin-top:15px;color:var(--accent-ink);font-size:12px;font-weight:800}.conversionCard>svg{margin-bottom:14px;color:var(--accent)}.storeCard{background:var(--accent-soft)}.contactCard>div{width:100%;margin-top:10px}.contactCard p{display:grid;gap:2px;margin:0;padding:10px 0;border-top:1px solid var(--border)}.contactCard p b{font-size:12px}.contactCard p small{overflow-wrap:anywhere;color:var(--muted);font-size:11px}.listPage{padding-top:34px}.listSearch{max-width:840px;margin:0 auto 34px}.breadcrumbs{display:flex;min-height:32px;align-items:center;flex-wrap:wrap;gap:4px;margin-bottom:20px;color:var(--muted);font-size:12px}.breadcrumbs a:hover{color:var(--accent-ink)}.breadcrumbSegment{display:inline-flex;align-items:center;gap:4px}.resultsHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:1px solid var(--border)}.resultsHeader h1{margin:0;font-size:clamp(27px,3vw,42px);letter-spacing:-.03em;text-wrap:balance}.resultsHeader p{margin:9px 0 0;color:var(--muted);line-height:1.65}.resultsHeader>svg{color:var(--accent)}.filterBar{display:flex;flex-wrap:wrap;gap:12px;padding:16px 0}.filterBar label{display:flex;min-height:40px;align-items:center;gap:7px;color:var(--muted);font-size:12px}.filterBar select{min-height:40px;border:1px solid var(--border);border-radius:8px;padding:0 30px 0 11px;background:var(--surface);color:var(--ink)}.pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:30px}.pagination>a,.pagination>span:not(.pageGroup),.pageGroup a{display:inline-flex;min-width:42px;min-height:42px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:8px;padding:0 11px;background:var(--surface);font-size:12px}.pagination a:hover,.pagination a.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.pagination [aria-disabled=true]{opacity:.45}.pageGroup{display:inline-flex;align-items:center;gap:6px}.pageGroup i{color:var(--faint);font-style:normal}.articlePage{padding-top:26px}.articleBreadcrumbs{margin-bottom:18px}.articleColumns{display:grid;grid-template-columns:210px minmax(0,820px) 250px;justify-content:center;align-items:start;gap:clamp(24px,3vw,44px);padding-bottom:90px}.articleCategoryRail{padding-top:6px}.backToCategory{display:inline-flex;min-height:38px;align-items:center;gap:7px;margin-bottom:12px;color:var(--accent-ink);font-size:12px;font-weight:800}.tutorialArticle{min-width:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.articleHeader{padding:clamp(28px,5vw,64px) clamp(24px,6vw,72px) 34px;border-bottom:1px solid var(--border)}.articleHeader h1{margin:16px 0 15px;font-size:clamp(32px,4.4vw,58px);line-height:1.14;letter-spacing:-.038em;text-wrap:balance}.articleHeader>p{max-width:62ch;margin:0;color:var(--muted);font-size:16px;line-height:1.8;text-wrap:pretty}.articleByline{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;color:var(--faint);font-size:12px}.articleByline a{color:var(--accent-ink)}.tutorialContent{padding:clamp(30px,5vw,64px) clamp(24px,6vw,72px);font-size:16px;line-height:1.9;overflow-wrap:anywhere}.tutorialContent>:first-child{margin-top:0}.tutorialContent>:last-child{margin-bottom:0}.tutorialContent h1,.tutorialContent h2,.tutorialContent h3,.tutorialContent h4{margin:1.7em 0 .65em;line-height:1.35;letter-spacing:-.025em;text-wrap:balance}.tutorialContent h2{font-size:28px}.tutorialContent h3{font-size:22px}.tutorialContent p,.tutorialContent li{max-width:72ch}.tutorialContent a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px}.tutorialContent img{display:block;width:auto;max-width:100%;max-height:720px;margin:28px auto;border-radius:8px}.tutorialContent figure[data-tutorial-image]{width:100%;margin:30px 0}.tutorialContent figure[data-tutorial-image][data-size=small]{max-width:42%}.tutorialContent figure[data-tutorial-image][data-size=medium]{max-width:68%}.tutorialContent figure[data-tutorial-image][data-align=left]{margin-right:auto}.tutorialContent figure[data-tutorial-image][data-align=center]{margin-right:auto;margin-left:auto}.tutorialContent figure[data-tutorial-image][data-align=right]{margin-left:auto}.tutorialContent figure[data-tutorial-image] img{width:100%;max-height:none;margin:0}.tutorialContent figure[data-tutorial-image] figcaption{margin-top:9px;color:var(--muted);font-size:13px;line-height:1.55;text-align:center}.tutorialContent pre{overflow:auto;border-radius:9px;padding:18px;background:#0b1916;color:#dee7e5;font:13px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace}.tutorialContent :not(pre)>code{border-radius:5px;padding:2px 5px;background:var(--surface-subtle);color:var(--accent-ink);font-size:.9em}.tutorialContent blockquote{margin:24px 0;border:1px solid var(--border);border-radius:9px;padding:15px 18px;background:var(--surface-subtle);color:var(--muted)}.tutorialContent table{width:100%;border-collapse:collapse;font-size:14px}.tutorialContent th,.tutorialContent td{padding:11px 12px;border-bottom:1px solid var(--border);text-align:left}.relatedTutorials{padding:0 clamp(24px,6vw,72px) clamp(34px,6vw,70px)}.relatedTutorials h2{margin:0 0 12px;font-size:24px}.emptyState{display:grid;min-height:280px;place-items:center;align-content:center;border:1px solid var(--border);border-radius:var(--radius);padding:28px;background:var(--surface);text-align:center}.emptyState svg{color:var(--accent)}.emptyState h2{margin:14px 0 7px;font-size:22px}.emptyState p{max-width:44ch;margin:0;color:var(--muted);line-height:1.65}.emptyState a{display:inline-flex;min-height:42px;align-items:center;margin-top:17px;border-radius:8px;padding:0 14px;background:var(--accent);color:#fff;font-weight:800}.errorState{display:flex;max-width:760px;align-items:center;gap:16px;margin:60px auto;border:1px solid color-mix(in oklch,var(--danger) 35%,var(--border));border-radius:var(--radius);padding:22px;background:var(--surface)}.errorState svg{flex:0 0 auto;color:var(--danger)}.errorState h2{margin:0 0 4px;font-size:17px}.errorState p{margin:0;color:var(--muted);font-size:13px}.errorState button{min-height:42px;margin-left:auto;border:0;border-radius:8px;padding:0 14px;background:var(--accent);color:#fff;cursor:pointer}.portalSkeleton{padding-top:50px}.skeletonSearch,.skeletonColumns>div,.skeletonColumns section i,.listSkeleton i{background:linear-gradient(90deg,var(--surface-subtle),var(--surface-strong),var(--surface-subtle));background-size:200% 100%;animation:skeleton 1.4s ease-in-out infinite}.skeletonSearch{width:min(760px,100%);height:66px;margin:0 auto 36px;border-radius:var(--radius)}.skeletonColumns{display:grid;grid-template-columns:232px minmax(0,1fr) 250px;gap:30px}.skeletonColumns>div{min-height:360px;border-radius:var(--radius)}.skeletonColumns section{display:grid;gap:16px}.skeletonColumns section i,.listSkeleton i{display:block;height:130px;border-radius:var(--radius)}.listSkeleton{display:grid;gap:14px}@keyframes skeleton{to{background-position:-200% 0}}.siteFooter{border-top:1px solid var(--border);background:var(--surface)}.siteFooter>div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:36px;width:min(var(--max-width),calc(100% - 40px));min-height:140px;margin-inline:auto}.siteFooter>div>div{display:grid;gap:6px}.siteFooter span,.siteFooter small{color:var(--muted);font-size:12px}.siteFooter nav{display:flex;gap:20px;font-size:13px}.siteFooter nav a:hover{color:var(--accent-ink)}.mobileCategoryPanel{display:none}.submissionPage{width:min(920px,calc(100% - 40px));padding-top:72px;padding-bottom:96px}.submissionIntro{max-width:720px;margin-bottom:32px}.submissionIntro h1{margin:10px 0 14px;font-size:clamp(36px,5vw,64px);line-height:1.03;letter-spacing:-.035em;text-wrap:balance}.submissionIntro>p:last-child{max-width:68ch;margin:0;color:var(--muted);font-size:17px;line-height:1.8}.submissionForm{display:grid;gap:20px;border-top:1px solid var(--border);padding-top:28px}.submissionAssetSection{display:grid;gap:16px;border:1px solid var(--border);border-radius:12px;padding:20px;background:var(--surface)}.submissionAssetIntro{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.submissionAssetIntro h2,.submissionAssetIntro p{margin:0}.submissionAssetIntro h2{font-size:18px;letter-spacing:-.01em}.submissionAssetIntro p{max-width:65ch;margin-top:5px;color:var(--muted);font-size:14px}.submissionImportRow{display:flex}.submissionImportAction{display:flex!important;width:min(100%,620px);min-height:76px;cursor:pointer;grid-template-columns:none!important;align-items:center;gap:14px!important;border:1px solid var(--border);border-radius:10px;padding:13px 15px;background:var(--surface-subtle);transition:border-color .16s ease,background-color .16s ease}.submissionImportAction:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:color-mix(in srgb,var(--accent-soft) 42%,var(--surface))}.submissionImportAction:focus-within{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:2px}.submissionImportAction:has(input:disabled){cursor:not-allowed;opacity:.55}.submissionImportIcon{display:inline-flex;width:44px;height:44px;flex:0 0 44px;align-items:center;justify-content:center;border-radius:9px;background:var(--accent-soft);color:var(--accent-ink)}.submissionImportAction>span:last-of-type{display:grid;gap:3px}.submissionImportAction strong{color:var(--ink);font-size:14px}.submissionImportAction small{color:var(--muted);font-size:12px;font-weight:500}.submissionForm .submissionImportAction input,.submissionForm .tutorialComposerUpload input,.submissionForm .imageInspectorIcon input{position:absolute;width:1px;height:1px;overflow:hidden;border:0;padding:0;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.submissionAssetMessage{display:flex;align-items:center;gap:7px;margin:0;color:var(--accent-ink);font-size:14px;font-weight:700}.uploadSpinner{flex:none;animation:upload-spin .8s linear infinite;color:var(--accent)}.submissionImageGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.submissionImageGrid figure{overflow:hidden;margin:0;border:1px solid var(--border);border-radius:9px;background:var(--surface)}.submissionImageGrid figure.isCover{border-color:var(--accent);outline:2px solid color-mix(in srgb,var(--accent) 18%,transparent)}.submissionImageGrid img{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover}.submissionImageGrid figcaption{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:8px;padding:6px 7px 6px 10px}.submissionImageGrid button{display:inline-flex;min-height:36px;align-items:center;gap:5px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:800}.submissionImageGrid .coverChoice[aria-pressed=true]{color:var(--accent-ink)}.submissionImageGrid .removeSubmissionImage{width:36px;cursor:pointer;justify-content:center;border-radius:7px;color:var(--danger)}.submissionImageGrid .removeSubmissionImage:hover{background:color-mix(in srgb,var(--danger) 9%,transparent)}.submissionEditorField{display:grid;gap:8px;color:var(--ink);font-weight:750}.submissionImageLibrary{display:grid;gap:12px;border-top:1px solid var(--border);padding-top:16px}.submissionImageLibrary>div:first-child{display:grid;gap:3px}.submissionImageLibrary small{color:var(--muted);font-weight:500}.tutorialComposer{overflow:hidden;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-weight:500}.tutorialComposer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.tutorialComposerToolbar{display:flex;min-height:56px;flex-wrap:wrap;align-items:center;gap:5px;border-bottom:1px solid var(--border);padding:7px 9px;background:var(--surface-subtle)}.tutorialComposerToolbar>button,.tutorialComposerUpload{display:inline-flex;min-width:42px;min-height:42px;cursor:pointer;align-items:center;justify-content:center;gap:7px;border:0;border-radius:8px;padding:0 10px;background:transparent;color:var(--muted)}.tutorialComposerToolbar>button:hover,.tutorialComposerToolbar>button.active{background:var(--surface);color:var(--accent-ink)}.tutorialComposerToolbar>button:disabled{cursor:not-allowed;opacity:.35}.tutorialComposerToolbar>button:focus-visible,.tutorialComposerUpload:focus-within{outline:2px solid var(--accent);outline-offset:1px}.toolbarDivider{width:1px;height:24px;margin:0 3px;background:var(--border)}.tutorialComposerUpload{min-width:max-content;margin-left:auto;border:1px solid var(--border);background:var(--surface);color:var(--accent-ink);font-size:13px;font-weight:800}.tutorialComposerUpload:hover{border-color:var(--accent)}.tutorialComposerUpload.isBusy{cursor:progress;opacity:.7}.tutorialImageInspector{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-bottom:1px solid var(--border);padding:9px 12px;background:color-mix(in srgb,var(--accent-soft) 48%,var(--surface))}.tutorialImageInspector>strong{margin-right:4px;font-size:13px}.imageInspectorGroup{display:flex;gap:3px;border:1px solid var(--border);border-radius:8px;padding:3px;background:var(--surface)}.imageInspectorGroup button,.imageInspectorIcon{display:inline-flex;min-width:36px;min-height:36px;cursor:pointer;align-items:center;justify-content:center;border:0;border-radius:6px;padding:0 9px;background:transparent;color:var(--muted);font-size:12px;font-weight:750}.imageInspectorGroup button.active{background:var(--accent-soft);color:var(--accent-ink)}.tutorialImageInspector>input{width:min(210px,100%);min-height:42px;border-radius:8px;padding:8px 10px;font-size:13px}.imageInspectorIcon{border:1px solid var(--border);background:var(--surface)}.imageInspectorIcon.danger{color:var(--danger)}.tutorialComposerContent{min-height:390px;padding:28px;color:var(--ink);font-size:16px;line-height:1.8;outline:none}.tutorialComposerContent>:first-child{margin-top:0}.tutorialComposerContent>:last-child{margin-bottom:0}.tutorialComposerContent h2,.tutorialComposerContent h3,.tutorialComposerContent h4{margin:1.45em 0 .6em;line-height:1.35;text-wrap:balance}.tutorialComposerContent p{max-width:72ch}.tutorialComposerContent pre{overflow:auto;border-radius:8px;padding:15px;background:#0b1916;color:#dee7e5}.tutorialComposerContent blockquote{border:1px solid var(--border);border-radius:8px;padding:12px 15px;background:var(--surface-subtle);color:var(--muted)}.tutorialComposerContent figure[data-tutorial-image]{width:100%;margin:26px 0;cursor:grab}.tutorialComposerContent figure[data-tutorial-image][data-size=small]{max-width:42%}.tutorialComposerContent figure[data-tutorial-image][data-size=medium]{max-width:68%}.tutorialComposerContent figure[data-tutorial-image][data-align=left]{margin-right:auto}.tutorialComposerContent figure[data-tutorial-image][data-align=center]{margin-right:auto;margin-left:auto}.tutorialComposerContent figure[data-tutorial-image][data-align=right]{margin-left:auto}.tutorialComposerContent figure[data-tutorial-image].ProseMirror-selectednode{outline:3px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:4px}.tutorialComposerContent figure[data-tutorial-image] img{display:block;width:100%;height:auto;border-radius:8px}.tutorialComposerContent figure[data-tutorial-image] figcaption{margin-top:8px;color:var(--muted);font-size:13px;text-align:center}.tutorialComposerHint{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;border-top:1px solid var(--border);padding:10px 13px;color:var(--muted);font-size:12px}.tutorialComposerLoading{min-height:180px;border:1px solid var(--border);border-radius:10px;padding:20px;color:var(--muted)}@keyframes upload-spin{to{transform:rotate(360deg)}}.submissionForm label:not(.submissionConsent){display:grid;gap:8px;color:var(--ink);font-weight:750}.submissionForm input,.submissionForm textarea,.submissionForm select{width:100%;border:1px solid var(--border);border-radius:9px;padding:12px 14px;background:var(--surface);color:var(--ink);font:inherit;font-weight:500}.submissionForm input:focus,.submissionForm textarea:focus,.submissionForm select:focus{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent)}.submissionForm small{color:var(--muted);font-size:13px;font-weight:500;line-height:1.6}.submissionTwoColumns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.submissionContentInput{min-height:330px;resize:vertical;line-height:1.75}.submissionConsent{display:flex;align-items:flex-start;gap:11px;max-width:72ch;color:var(--muted);font-size:14px;line-height:1.65}.submissionConsent input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--accent)}.submissionForm>button,.submissionSuccess a{display:inline-flex;width:max-content;min-height:46px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;padding:0 20px;background:var(--accent);color:#fff;font-weight:800;text-decoration:none}.submissionForm>button:disabled{cursor:not-allowed;opacity:.55}.submissionError{margin:0;color:var(--danger);font-weight:700}.submissionSuccess{display:grid;justify-items:start;gap:12px;border-top:1px solid var(--border);padding-top:32px}.submissionSuccess svg{color:var(--accent)}.submissionSuccess h2,.submissionSuccess p{margin:0}.feedbackPage{width:min(920px,calc(100% - 40px));padding-top:72px;padding-bottom:96px}.feedbackIntro{max-width:720px;margin-bottom:34px}.feedbackIntro h1{max-width:760px;margin:10px 0 14px;font-size:clamp(38px,5vw,64px);line-height:1.03;letter-spacing:-.035em;text-wrap:balance}.feedbackIntro>p:last-child{max-width:66ch;margin:0;color:var(--muted);font-size:17px;line-height:1.8}.feedbackForm{display:grid;gap:24px;border-top:1px solid var(--border);padding-top:30px}.feedbackForm>label,.feedbackTwoColumns label{display:grid;gap:8px;color:var(--ink);font-weight:750}.feedbackForm input[type=text],.feedbackForm textarea,.feedbackTwoColumns input{width:100%;border:1px solid var(--border);border-radius:9px;padding:12px 14px;background:var(--surface);color:var(--ink);font:inherit;font-weight:500}.feedbackForm textarea{min-height:190px;resize:vertical;line-height:1.7}.feedbackForm input:focus,.feedbackForm textarea:focus{border-color:var(--accent);outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent)}.feedbackForm small{color:var(--muted);font-size:13px;font-weight:500;line-height:1.6}.feedbackForm>label>small{justify-self:end}.feedbackTypes{margin:0;padding:0;border:0}.feedbackTypes legend{margin-bottom:10px;color:var(--ink);font-weight:750}.feedbackTypes>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.feedbackTypes label{position:relative;display:flex;min-height:46px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:9px;padding:9px 12px;background:var(--surface);color:var(--muted);cursor:pointer;font-weight:700;text-align:center}.feedbackTypes label.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface));color:var(--accent-strong)}.feedbackTypes input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%)}.feedbackTypes label:focus-within{outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent);outline-offset:2px}.feedbackTwoColumns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.feedbackPrivacy{display:flex;align-items:flex-start;gap:8px;margin:-4px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.feedbackPrivacy svg{flex:0 0 auto;margin-top:2px}.feedbackError{margin:-8px 0 0;color:#b42318;font-weight:700}.feedbackForm>button,.feedbackSuccess button{display:inline-flex;width:max-content;min-height:46px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;padding:0 20px;background:var(--accent);color:#fff;font:inherit;font-weight:800;cursor:pointer}.feedbackForm>button:disabled{cursor:not-allowed;opacity:.55}.feedbackSuccess{display:grid;justify-items:start;gap:12px;border-top:1px solid var(--border);padding-top:32px}.feedbackSuccess svg{color:var(--accent)}.feedbackSuccess h2,.feedbackSuccess p{margin:0}.feedbackSuccess p{max-width:58ch;color:var(--muted);line-height:1.7}@media (max-width: 1180px){.desktopNav{display:none}.mobileMenuButton{display:inline-grid;width:44px;padding:0}.mobileCategoryPanel{position:fixed;inset:var(--header-height) 0 0;z-index:var(--z-panel);display:block;overflow:auto;padding:18px 20px 42px;background:var(--surface)}.mobileCategoryHeader{display:flex;min-height:48px;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.mobileCategoryHeader button{display:grid;width:44px;height:44px;place-items:center;border:0;background:transparent}.mobilePrimaryNav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border-bottom:1px solid var(--border);padding:16px 0}.mobilePrimaryNav a{display:flex;min-height:44px;align-items:center;border:1px solid var(--border);border-radius:8px;padding:0 12px;color:var(--ink);font-size:14px;font-weight:700}.mobilePrimaryNav a:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-ink)}.portalColumns{grid-template-columns:220px minmax(0,1fr)}.portalColumns>.adRail{display:none}.articleColumns{grid-template-columns:190px minmax(0,820px)}.articleColumns>.adRail{display:none}}@media (max-width: 900px){:root{--header-height: 64px}.headerInner{width:min(100% - 28px,var(--max-width))}.headerSearch,.headerContact{display:none!important}.pageContainer{width:min(100% - 28px,var(--max-width))}.searchIntro{grid-template-columns:1fr;align-items:start;gap:28px;padding-top:44px}.searchIntro h1{max-width:18ch;font-size:clamp(34px,7vw,52px)}.portalColumns{display:block}.categoryRail,.articleCategoryRail{display:none}.articleColumns{display:block}.articlePage{width:min(100% - 20px,var(--max-width))}.articleBreadcrumbs{padding-inline:4px}.tutorialArticle{border-radius:10px}.siteFooter>div{grid-template-columns:1fr;gap:20px;padding:32px 0}}@media (max-width: 640px){.wordmark>span:last-child small{display:none}.headerStore{width:44px;padding:0!important;font-size:0!important}.headerStore svg{width:18px;height:18px}.searchIntro{padding-top:34px}.searchIntro h1{font-size:36px;letter-spacing:-.03em}.heroSearch{flex-wrap:wrap;min-height:58px;padding:8px 8px 8px 15px}.heroSearch button{width:100%}.featuredTutorial{display:flex;flex-direction:column-reverse}.featuredTutorial>img,.featuredFallback{width:100%;height:190px;min-height:190px}.featuredCopy{padding:25px 22px 28px}.featuredCopy h3{font-size:28px}.secondaryFeatureList{grid-template-columns:1fr}.secondaryFeatureList .tutorialRow{display:grid;grid-template-columns:92px minmax(0,1fr)}.secondaryFeatureList .tutorialRow>img,.secondaryFeatureList .rowImageFallback{width:92px;height:74px;margin:0}.sectionHeading{align-items:flex-start}.sectionHeading>a{margin-top:5px}.tutorialRow{grid-template-columns:92px minmax(0,1fr);gap:13px;padding:18px 0}.tutorialRow>img,.rowImageFallback{width:92px;height:76px}.rowCopy h3{margin-top:6px;font-size:15px}.rowCopy>p,.rowFooter time,.rowFooter>span{display:none}.rowFooter{margin-top:6px}.rowFooter a{margin-left:0}.listPage{padding-top:22px}.resultsHeader h1{font-size:29px}.filterBar label{flex:1}.filterBar select{min-width:0;flex:1}.articleHeader{padding:27px 20px}.articleHeader h1{font-size:34px}.tutorialContent{padding:30px 20px}.tutorialContent h2{font-size:24px}.relatedTutorials{padding:0 20px 36px}.breadcrumbs{overflow:hidden;flex-wrap:nowrap;white-space:nowrap}.breadcrumbs>span:last-child{overflow:hidden;text-overflow:ellipsis}.errorState{align-items:flex-start;flex-wrap:wrap;margin-top:30px}.errorState button{width:100%;margin-left:0}.pagination{flex-wrap:wrap}.siteFooter nav{flex-wrap:wrap}.submissionPage{padding-top:44px;padding-bottom:64px}.submissionIntro h1{font-size:38px}.submissionTwoColumns{grid-template-columns:1fr}.feedbackPage{padding-top:44px;padding-bottom:64px}.feedbackIntro h1{font-size:38px}.feedbackTypes>div{grid-template-columns:repeat(2,minmax(0,1fr))}.feedbackTwoColumns{grid-template-columns:1fr}.submissionAssetSection{padding:16px}.submissionImportAction{width:100%}.tutorialComposerToolbar{gap:3px}.tutorialComposerUpload{width:100%;margin-left:0}.tutorialImageInspector>input{width:100%}.tutorialComposerContent{min-height:320px;padding:20px 16px}.tutorialComposerContent figure[data-tutorial-image][data-size=small]{max-width:68%}.tutorialComposerContent figure[data-tutorial-image][data-size=medium]{max-width:86%}.tutorialContent figure[data-tutorial-image][data-size=small]{max-width:68%}.tutorialContent figure[data-tutorial-image][data-size=medium]{max-width:86%}.submissionImageGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
